Callbacks

Decentro uses callbacks to intimate the platform about the change in the balance of a virtual account. This change can be because of an incoming transaction made by a customer or an outgoing transaction made from a virtual account.

Decentro can configure custom endpoints (URLs) that you can share with our team on [email protected] or with your assigned RM, you can receive callbacks for any changes in the balance for your virtual accounts, or status updates for any transaction.

Account Balance

This callback is used by Decentro to intimate the platform about the change in balances of a specific Virtual Account, be it credit or a debit. Try Account Balance API.

Salient points:

  • 3 times maximum retry, post which the explicit Get account balance call has to be made for obtaining the current account balance.
  • It is mandatory to adhere to the response structure as specified in the examples.
  • It is recommended that you whitelist Decentro's originating IP.
  • It is recommended that you share your auth of preference with us, which will then be propagated as part of the callback request.
  • The type parameter can either be credit or debit.
  • The keys in the request will be in snake/ camel case based on the company configuration (defaulting to camel case if nothing has been opted for). Response, however, has to be in snake case always.
  • The keys payeeAccountNumber, payeeAccountIfsc, payeeVpa, payerAccountNumber, payerAccountIfsc, payerVpa,payerName, payerMobileNumber will be present when the corresponding values are available, i.e. they are optional.
curl --location --request POST '<your_custom_endpoint>' \
--header 'your_custom_key_1: custom_value_1' \
--header 'your_custom_key_2: custom_value_2' \
--data-raw '{
    "attempt": 1,
    "timestamp": "2020-09-16 23:23:23",
    "callbackTxnId": "CLBACKxx",
    "originalCallbackTxnId": "CLBACKxx",
    "accountNumber": "XXXXXXXXXXXXXXXXXX",
    "balance": 345,
    "transactionMessage": "message denoting the origination of balance update",
    "type": "credit",
    "transferType": "IMPS",
    "transactionAmount": 5.0,
    "decentroTxnId": "DCTRTXxx",
    "payerAccountNumber": "<payer account number>",
    "payerAccountIfsc": "<payer account ifsc>",
    "payeeAccountIfsc": "YESBXXXXXXXX",
    "providerCode": "YESB",
    "bankReferenceNumber": "<bank reference number>"
}'
{
  "response_code": "CB_S00000"
}

📘

Note

Transaction related callbacks are covered in detail here.