API Docs

Latest release version: 2.1
Released date: 7th Feb 2019

Change logs:

  • 1. Corporate DMT: "Beneficiary Registration Verify" API is added. OTP is mandatory for adding Beneficiary
  • 2. Simple DMT: OTP will now be mandatory on Agent Signup. OTP is required when the status of agent signup is 0 at time of signup
  • 3. Simple DMT: OTP on beneficiary registration will not be mandatory. Beneficiary OTP is required only when the status of beneficiary is 0 at time of registration.
  • 3. Simple DMT: surname parameter is added in "Agent Signup"
  • 4. Corporate & Simple DMT: Passing "userid" value in all api calls is optional. Replace joloapi.com to jolosoft.com in all api links.

API Key

We assume, you have created free account on jolosoft.com, if not then please create account now. It will take hardly 5 minute. Now to get your api key, do this:

  • Login -> click on API Setup -> click on API Key
On right side, you can see your Active key. If you want to change this api key in future then you have to click on "Change key" button. You can also enable/disable key anytime to pause services for maintenace work.

API Security

To secure your api account, you need to white list your server ip in api dashboard. We will accept incoming request from your server only. If you are using multiple servers then you need to white list all server ip. Maximum 5 different server allowed per api account. To white list your server ip, do this:

  • Login -> click on API Setup -> click on API Server IP
On right side, you can see your live server ip. To add/update server ip, enter ip address on right side. You can see 5 input boxes for 5 server ip. If you want to use api only on 1 server then enter only 1 ip in first input box and click on "Save" button. Refresh the page to view the updates.

API Sandbox (for testing)

During integration of api, you don't have to add balance in api account. You will get success response but actual transfer will not process. To use sandbox, do this:

  • Pass value of "mode" parameter as 0.
    0 = sandbox mode (test mode)
    1 = live mode

Work Flow

This diagram explain how money transfer works. Your customer first create account as agent. OTP will sent on agent mobile number to confirm signup. Add beneficary before using money transfer. Once beneficary is added then agent can start using money transfer service to its beneficary.

API Balance Check

To check your api balance, setup this:

JSON REQUEST
  • https://jolosoft.com/api/balance.php?key=xx

JSON RESPONSE
Request Parameters Description Type
key your api account key numeric
Agent Signup

Join your customer as agent for free. We do not take any fee for this api call but you can take small fee from your customer as joining fee. An OTP will sent if "otp" flag is 1. If "otp" flag is 0 then OTP not required. Call agent signup verification api if otp is sent. In test mode=0, otp will not sent to mobile in any case. Use 1234 as fixed otp in verify otp call.
otp=0 (OTP validation not required)
otp=1 (OTP validation required)

JSON REQUEST
  • https://jolosoft.com/dmr/cdmr_signup.php?mode=xx&key=xx&service=xx&name=xx&address=xx&email=xx

JSON RESPONSE JSON RESPONSE
Request Parameters Description Type
key your api account key numeric
mode set 1 for live & 0 for test numeric
service mobile number of agent numeric
name name of agent characters
address address of agent Alphanumeric
email email of agent Alphanumeric
Agent Signup Verification

Call this api only if otp is sent in agent signup api call. i.e if otp is 1 in agent signup api response. In test mode=0, otp will not sent to mobile in any case. Use 1234 as fixed otp. Pass otp like this:

JSON REQUEST
  • https://jolosoft.com/dmr/cdmr_signup_verify.php?mode=xx&key=xx&service=xx&otp=xxxx

JSON RESPONSE
Request Parameters Description Type
key your api account key numeric
mode set 1 for live & 0 for test numeric
service mobile number of agent numeric
otp otp received on mobile numeric
Agent Detail

Agent can view his account detail. Setup this api for fetching agent detail:

JSON REQUEST
  • https://jolosoft.com/dmr/cdmr_detail.php?mode=xx&key=xx&service=xx

JSON RESPONSE
Request Parameters Description Type
key your api account key numeric
mode set 1 for live & 0 for test numeric
service mobile number of agent numeric
Beneficiary Registration

Agent can add unlimited Beneficiary bank account. We do not take any fee for this api call but you can take small fee from your customer as beneficary addition fee. Before a agent can transfer money to a beneficiary, he has to register beneficiary first.
An OTP will sent if "otp" flag is 1. If "otp" flag is 0 then OTP not required. Call Beneficiary Registration Verify api if otp is sent. In test mode=0, otp will not sent to mobile in any case. Use 1234 as fixed otp in verify otp call.
otp=0 (OTP validation not required)
otp=1 (OTP validation required)
Setup this api for adding Beneficiary:

JSON REQUEST
  • https://jolosoft.com/dmr/cdmr_beneficiary_reg.php?mode=xx&key=xx&service=xx&beneficiary_name=xx&beneficiary_ifsc=xx&beneficiary_account_no=xx

JSON RESPONSE (case 1: otp not required, otp=0) JSON RESPONSE (case 1: otp required, otp=1)
Request Parameters Description Type
key your api account key numeric
mode set 1 for live & 0 for test numeric
service mobile number of agent numeric
beneficiary_name Beneficiary name characters
beneficiary_ifsc Beneficiary bank ifsc code Alphanumeric
beneficiary_account_no Beneficiary bank account number Alphanumeric
Beneficiary Registration Verify

Call this api only if otp is sent in Beneficiary Registration api call. i.e if otp was 1 in response. In test mode=0, otp will not sent to mobile in any case. Use 1234 as fixed otp. Pass otp like this:

JSON REQUEST
  • https://jolosoft.com/dmr/cdmr_beneficiary_reg_verify.php?mode=xx&key=xx&service=xx&beneficiaryid=xx&otp=xx

JSON RESPONSE
Request Parameters Description Type
key your api account key numeric
mode set 1 for live & 0 for test numeric
service mobile number of agent numeric
beneficiaryid Beneficiary ID characters
otp otp received on mobile numeric
Transfer Money

This API is used to Transfer the money to the beneficiary. In case transaction goes timeout then use cdmr_transfer_status call to get updated status of transaction after some time. We take small fee for this transfer api call on SUCCESS transaction only.

JSON REQUEST
  • https://jolosoft.com/dmr/cdmr_transfer.php?mode=xx&key=xx&service=xx&beneficiaryid=xx&orderid=xx&amount=xx&remarks=xx

JSON RESPONSE
Request Parameters Description Type
key your api account key numeric
mode set 1 for live & 0 for test numeric
service mobile number of agent numeric
beneficiaryid unique beneficiary id Alphanumeric
orderid unique order generated by your script Alphanumeric
amount amount range is 100 to 5000 numeric
remarks pass any text character
Beneficiary Detail

This API call is used to get the beneficiary detail.

JSON REQUEST
  • https://jolosoft.com/dmr/cdmr_beneficiary_detail.php?mode=xx&key=xx&beneficiaryid=xxxxx_xxxxx

JSON RESPONSE
Request Parameters Description Type
key your api account key numeric
mode set 1 for live & 0 for test numeric
beneficiaryid unique beneficiary id Alphanumeric
Beneficiary Delete

This API call is used to remove the beneficiary added by the Agent.

JSON REQUEST
  • https://jolosoft.com/dmr/cdmr_beneficiary_del.php?mode=xx&key=xx&beneficiaryid=xxxxx_xxxxx

JSON RESPONSE
Request Parameters Description Type
key your api account key numeric
mode set 1 for live & 0 for test numeric
beneficiaryid unique beneficiary id Alphanumeric
Transfer Status Check

This API is call to check the status of the transaction whether it successful or failed in case you did not get response during transaction or it was timeout.

JSON REQUEST
  • https://jolosoft.com/dmr/cdmr_transfer_status.php?mode=xx&key=xx&txn=xx

JSON RESPONSE
Request Parameters Description Type
key your api account key numeric
mode set 1 for live & 0 for test numeric
txn Jolo order id Alphanumeric
Bank Account Check

This API is call to check bank account is correct or not along with IFSC. Bank will transfer Re.1 to bank account to check its valid or not. Jolo will charge small fee per account check.

JSON REQUEST
  • https://jolosoft.com/dmr/cdmr_account_check.php?mode=xx&key=xx&service=xx&beneficiary_account_no=xx&beneficiary_ifsc=xx&orderid=xx

JSON RESPONSE
Request Parameters Description Type
key your api account key numeric
mode set 1 for live & 0 for test numeric
service mobile number of agent numeric
beneficiary_account_no bank account number alphanumeric
beneficiary_ifsc bank ifsc alphanumeric
orderid Unique order generated by your script alphanumeric
Work Flow

This diagram explain how money transfer works. Your customer first create account as agent. OTP will sent on agent mobile number to confirm signup. Add beneficary before using money transfer. OTP will sent on agent mobile number to confirm beneficary addition. We do not send any sms to your agent. This sms is sent by service provider and its white label (no third party company promotion). Once beneficary is validated then agent can start using money transfer service to its beneficary.

Agent Signup

Join your customer as agent for free. We do not take any fee for this api call but you can take small fee from your customer as joining fee. Call agent signup verification api if otp is sent. In test mode=0, otp will not sent to mobile in any case. Use 1234 as fixed otp in verify otp call in test mode.
otp_status=0 (OTP validation required)
otp_status=1 (OTP validation not required)

JSON REQUEST
  • https://jolosoft.com/api/dmr_signup.php?mode=xx&key=xx&service=xx&name=xx&pincode=xx&surname=xx

JSON RESPONSE (case 1: Agent is verified by otp, otp_status=1) JSON RESPONSE (case 2: Agent is not verified by otp, otp_status=0)
Request Parameters Description Type
key your api account key numeric
mode set 1 for live & 0 for test numeric
service mobile number of agent numeric
name name of agent characters
pincode address pincode of agent numeric
Agent Signup Verification

Call this api only if otp is sent in agent signup api call. i.e if otp is 1 in agent signup api response. In test mode=0, otp will not sent to mobile in any case. Use 1234 as fixed otp. Pass otp like this:

JSON REQUEST
  • https://jolosoft.com/api/dmr_signup_validate.php?mode=xx&key=xx&service=xx&agentid=xxxx&otp=xxxx

JSON RESPONSE
Request Parameters Description Type
key your api account key numeric
mode set 1 for live & 0 for test numeric
service mobile number of agent numeric
agentid unique number allotted to agent numeric
otp otp received on mobile numeric
Agent Detail

Agent can view his account detail. We do not take any fee for this api call. Setup this api for fetching agent detail:
is_verified=0 (OTP validation required)
is_verified=1 (OTP validation not required)

JSON REQUEST
  • https://jolosoft.com/api/dmr_detail.php?mode=xx&key=xx&service=xx

JSON RESPONSE (case 1: Agent is verified by otp, is_verified=1) JSON RESPONSE (case 2: Agent is not verified by otp, is_verified=0)
Request Parameters Description Type
key your api account key numeric
mode set 1 for live & 0 for test numeric
service mobile number of agent numeric
Beneficiary Registration

Agent can add upto 25 Beneficiary bank account. We do not take any fee for this api call but you can take small fee from your customer as beneficary addition fee. Before a agent can transfer money to a beneficiary, he has to register beneficiary first. Beneficiary is to be validated using dmr_beneficiary_reg_validate call (see next). This API call send OTP to agent mobile which needs to be passed in dmr_beneficiary_reg_validate call to complete beneficary registration ONLY if otp_status=0
otp_status=0 (OTP validation required)
otp_status=1 (OTP validation not required)
Setup this api for adding Beneficiary:

JSON REQUEST
  • https://jolosoft.com/api/dmr_beneficiary_reg.php?mode=xx&key=xx&agentid=xx&beneficiary_name=xx&beneficiary_mobile=xx&beneficiary_ifsc=xx&beneficiary_account_no=xx

JSON RESPONSE (case 1: Beneficiary is verified by otp, otp_status=1) JSON RESPONSE (case 2: Beneficiary is not verified by otp, otp_status=0)
Request Parameters Description Type
key your api account key numeric
mode set 1 for live & 0 for test numeric
agentid Unique agent id generated during agent signup numeric
beneficiary_name Beneficiary name characters
beneficiary_ifsc Beneficiary bank ifsc code Alphanumeric
beneficiary_account_no Beneficiary bank account number Alphanumeric
beneficiary_mobile Beneficiary mobile number numeric
Beneficiary Registration Verification

This api call will validate the beneficiary. You need to pass otp that was sent during Beneficiary registration api call.

JSON REQUEST
  • https://jolosoft.com/api/dmr_beneficiary_reg_validate.php?mode=xx&key=xx&agentid=xx&beneficiary_id=xx&otp=xx

JSON RESPONSE
Request Parameters Description Type
key your api account key numeric
mode set 1 for live & 0 for test numeric
agentid Unique agent id generated during agent signup numeric
beneficiary_id Unique beneficiary id numeric
otp Otp received on agent mobile numeric
Beneficiary Registration Resend OTP

In case, OTP for beneficiary validate is not received or expired, use this api call to resend otp to agent mobile.

JSON REQUEST
  • https://jolosoft.com/api/dmr_beneficiary_reg_otp.php?mode=xx&key=xx&agentid=xx&beneficiary_id=xx

JSON RESPONSE
Request Parameters Description Type
key your api account key numeric
mode set 1 for live & 0 for test numeric
agentid Unique agent id generated during agent signup numeric
beneficiary_id Unique beneficiary id numeric
Transfer Money

This API is used to Transfer the money to the beneficiary. Only bank which support IMPS are allowed. In case due to some reason if transaction goes timeout then use dmr_transfer_status call to get updated status of transaction after some time. We take small fee for this api call on SUCCESS transaction only.

JSON REQUEST
  • https://jolosoft.com/api/dmr_transfer.php?mode=xx&key=xx&service=xx&beneficiary_id=xx&orderid=xx&amount=xx

JSON RESPONSE
Request Parameters Description Type
key your api account key numeric
mode set 1 for live & 0 for test numeric
service mobile number of agent numeric
beneficiary_id unique beneficiary id Alphanumeric
orderid unique order generated by your script Alphanumeric
amount amount range is 100 to 5000 numeric
Beneficiary Delete

This API call is used to remove the beneficiary added by the Agent. This will send an OTP on agent mobile, which needs to be sent in next api call to complete Beneficiary deletion. Kindly note that OTP is not required if beneficiary status is 0 (inactive).

JSON REQUEST
  • https://jolosoft.com/api/dmr_beneficiary_del.php?mode=xx&key=xx&agentid=xx&beneficiary_id=xx

JSON RESPONSE
Request Parameters Description Type
key your api account key numeric
mode set 1 for live & 0 for test numeric
agentid Unique agent id generated during agent signup numeric
beneficiary_id unique beneficiary id numeric
Beneficiary Delete Verification

Pass OTP that received to validate beneficiary Delete action. Run this api only if beneficiary status is 1 (active) else ignore this api call.

JSON REQUEST
  • https://jolosoft.com/api/dmr_beneficiary_del_validate.php?mode=xx&key=xx&agentid=xx&beneficiary_id=xx&otp=xx

JSON RESPONSE
Request Parameters Description Type
key your api account key numeric
mode set 1 for live & 0 for test numeric
agentid Unique agent id generated during agent signup numeric
beneficiary_id unique beneficiary id numeric
otp Otp received on mobile numeric
Transfer Status Check

This API is call to check the status of the transaction whether it successful or failed.

JSON REQUEST
  • https://jolosoft.com/api/dmr_transfer_status.php?mode=xx&key=xx&txn=xx

JSON RESPONSE
Request Parameters Description Type
key your api account key numeric
mode set 1 for live & 0 for test numeric
txn Jolo order id Alphanumeric
Bank Account Check

This API is call to check bank account is correct or not along with IFSC. Bank will transfer Re.1 to bank account to check its valid or not. Jolo will charge small fee per account check.

JSON REQUEST
  • https://jolosoft.com/api/dmr_account_check.php?mode=xx&key=xx&service=xx&beneficiary_account_no=xx&beneficiary_ifsc=xx&orderid=xx

JSON RESPONSE
Request Parameters Description Type
key your api account key numeric
mode set 1 for live & 0 for test numeric
service mobile number of agent numeric
beneficiary_account_no bank account number alphanumeric
beneficiary_ifsc bank ifsc alphanumeric
orderid Unique order generated by your script alphanumeric