Using Phone Number and Beneficiary Name

What is 'PayToPhone' using the phone number and beneficiary anme?

‘PayToPhone’ is a capability that empowers merchants to directly process payouts to end beneficiaries via their phone numbers. This will not only reduce the dependency on end-users to share details (account number/IFSC/VPA), but it will also make their onboarding/refund/disbursal journeys shorter and less complex leading to a better conversion rates.

How does this capability work?

You need to collect the beneficiary's name and phone number to process the payouts. Once you initiate a payout through Cashfree Payments using this feature, we analyse the entered name matches with the record in the respective bank's database. This helps us automatically block payouts initiated to incorrect beneficiaries.

The funds are transferred to the latest modified VPA linked to the mobile number. The latest modification could mean addition of a new VPA or details changed of the existing VPA linked to the mobile number.

Transfer APIs

Use our APIs to initiate payouts to end beneficiaries with only their phone number and name.

curl --location 'https://payout-api.cashfree.com/payout/v1.2/directTransfer' \
--header 'Authorization: Bearer [TOKEN]' \
--header 'Content-Type: application/json' \
--data-raw '{
    "amount": "1.00",
    "transferId": "Test123d11q6",
    "transferMode": "phone",
    "remarks": "test",
    "beneDetails" : {
        "name": "Ranjiths",
        "email": "[email protected]",
        "phone": "9415258595",
        "address1": "any_dummy_value"
    }
}'
curl --location 'https://payout-api.cashfree.com/payout/v1/requestTransfer' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer [TOKEN]' \
--data '{
  "beneId": "B_Test123dedd11q6_0R5W2K",
  "amount": "1.2",
  "transferId": "test_sdssdssbsunilt34",
  "transferMode": "phone"
}
'

Once you trigger the Standard Transfer API, we immediately attempt to transfer the amount to the beneficiary account wherein the bank's reference number is returned in the API response. The median time for the response is 2 to 5 seconds.

Response Codes

View the 200 related response codes below:

{
  "status": "SUCCESS",
  "subCode": "200",
  "message": "Transfer completed successfully",
  "data": {
    "referenceId": "10023",
    "utr": "P16111765023806",
    "acknowledged": 1
  }
}

View the 201 response code below:

{
    "status": "PENDING",
    "subCode": "201",
    "message": "Transfer request pending at the bank",
    "data": {
        "referenceId": "1387592652",
        "utr": "",
        "acknowledged": 0
    }
}

View the 4XX response codes below:

{
    "status": "ERROR",
    "subCode": "400",
    "message": "Phone number invalid or not linked to a VPA."
}
{
  "status": "ERROR",
  "subCode": "422",
  "message": "Remarks can have only numbers, alphabets and whitespaces."
}
{
  "status": "ERROR",
  "subCode": "404",
  "message": "Beneficiary does not exist"
}

Check Status APIs

Use our APIs to initiate payouts to end beneficiaries with only their phone number and name.

Response Codes

View the 200 related response codes below:

{
  "status": "SUCCESS",
  "subCode": "200",
  "message": "Transfer completed successfully",
  "data": {
    "referenceId": "10023",
    "utr": "P16111765023806",
    "acknowledged": 1
  }
}

Name Match Verification

Name match verification is a critical component of ensuring the correct beneficiary receives the transferred amount. There are four possible outcomes of this name match verification:

Direct Match

Name 1Name 2Score
Rohan Mathew ThomasRohan Mathew Thomas100.00

Since the above names are exactly the same, we get a perfect score. In this case, we initiate the payouts to the respective beneficiary.

Good Partial Match

Name 1Name 2Score
Rohan Mathew ThomasRoshan Thomas85.00

In the above example, Mathew is missing but the rest of the names match perfectly. We initiate the payouts to the respective beneficiary since we are most definitely sure that it is the same person.

Moderate Partial Match

Name 1Name 2Score
Rohan Mathew ThomasRoshan Thomas61.00

In the above example, Thomas and a partial _han_is present in both the names. Even though these similarities help increase the score, we do not initiate the payouts since the names match only moderately.

Poor Partial Match

Name 1Name 2Score
Rohan Mathew ThomasRohan Mathew K55.00

In the above example, although the first and the middle name seem to be the same, the initial K could mean a different person. We do not initiate the payouts since it is a poor partial match of the names.

No Match

Name 1Name 2Score
Rohan Mathew ThomasRajeev14.00

It is obvious from the above example that we do not initiate payouts since they both are different names.