Hey! These docs are for version 3.2, which is no longer officially supported. Click here for the latest version, 1.0!

Outgoing webhook/callback

For notification:

For every notification status update, we will provide a callback to the configured webhook URL.

Callback Parameters for notification status update.    (click to view)
ParameterTypeDescription
idStringUnique ID of callback
i.e.   "evt_V2_bc933a28ee5948be9f2939caac09d9"
date_createdStringCurrent date - i.e. "2020-07-24T10:42:25Z"
event_nameStringMust be either "NOTIFICATION_SUCCEEDED"
or "NOTIFICATION_FAILED".
content.notification:ww
     {param1, param2....}
Object
String
Content Notification parameters
(Listed in table below - click to open)
  Callback Object: (content.notification)
Note:
This object is similar to the response for the Notification and Notification Status API.
ParameterTypeDescription
idStringUnique identifier provided by Juspay.
i.e. “"nt_123456""
source_objectStringSource object for notification.   i.e. “mandate”
source_object_idStringSource object for notification. mandate_id in this case.     i.e. "92025"
This should be removed from the list, since it is not shown as a callback parameter.
objectStringMust be set to "notification"
This should be removed from the list, since it not shown as a callback parameter.
object_reference_idStringUnique Identifier passed in the request.
I.e. "Merchant_id1"
provider_nameStringName of the provider. Gateway name in this case
I.e. "PAYTM_V2"
notification_typeStringType of notification.   I.e. “SMS”
descriptionStringReason for debit passed in the request
statusStringStatus of Notification. Must be one of these four states:
CREATED/PENDING/SUCCESS/FAILURE
CREATED- Created and not yet initiated to gateway
PENDING- Initiated to gateway
SUCCESS- Success from gateway
FAILURE- Failed from gateway
date_createdStringDate-time of notification created in UNIX EPOCH timestamp (UTC timezone) format.
i.e. "1598960071"
last_updatedStringDate-time of notification updated in UNIX EPOCH timestamp (UTC timezone) format.
i.e. "1598960071"
metadataStringMetadata passed in the request
This should be removed from the list, since it not shown as a callback parameter.
mandate:
   {mandate_id}
Object
String
 Same as mandate id provided in the request:
 i.e. "mandate_id": "mandate_id123"
source_info:wwiwww
   {amount, txn_date}
Object
String
 Same as amount and txn_date passed in the
 request
 i.e. "amount": "2000",'txn_date": "1598464466"
provider_response:
   {provider_ref_id,
   notificationDate}
Object
String
String
provider_ref_id: Reference Number provided by
 downstream gateway
 i.e. "provider_ref_id": "31413"
notificationDate: Date on which notification was
 sent.       I.e. "notificationDate": "1598464466"
 Specific to PAYTM_V2

{
  "id": "evt_V2_bc933a28ee5948be9f2939caac09d9",
  "date_created": "2020-07-24T10:42:25Z" -- CURRENT_DATE,
  "event_name": "NOTIFICATION_SUCCEEDED", // NOTIFICATION_FAILED
  "content": {
    "notification": {      
        "id": "nt_123456"
        "source_object": "mandate"
        "mandate" : {"mandate_id": "mandate_id123"}
        "object_reference_id": "Merchant_id1"
        "provider_name": "PAYTM_V2"
        "notification_type": "SMS"
        "source_info": {
            "amount": "2000"
            "txn_date": "1598464466"
        }
        "provider_response": {
            "provider_ref_id": "1234"
            "notificationDate": "1598464466"
        }
        "description": "Reason for debit"
        "status": "SUCCESS"
        "date_created": "1598464466"
        "last_updated": "1598464466"
  }
  }
}

For mandate status:

For every mandate status update, we will provide a callback to the configured webhook URL.

Callback Parameters for mandate status update.       (click to view)
ParameterTypeDescription
idStringUnique ID of callback
i.e.   "evt_V2_bc933a28ee5948be9f2939caac09a"
date_createdStringCurrent date - i.e. "2020-07-24T10:42:25Z"
event_nameStringMust be one of the following:
MANDATE_CREATED / MANDATE_ACTIVATED / MANDATE_REVOKED / MANDATE_PAUSED / MANDATE_EXPIRED / MANDATE_FAILED.
content.mandate:wwwwi
     {param1, param2....}
iObjecti
String
Content Mandate parameters
(Listed in table below - click to open)
  Callback Object: (content.mandate)
Note:
This object is similar to the Mandate Object responses, but also includes a Payment Info Object
FieldTypeDescription
payment_info:wwwwn
   {param1, param2,...}
Object
nStringn
This contains the payment instrument details entered when the mandate was created
(Parameters listed in table below - click to open)
  Payment Info Object Parameters:
FieldTypeDescription
payment_method_typeStringPayment method type used when creating the mandate. Must be either CARD, NB, WALLET, or UPI.
payment_methodStringPayment method used when creating the mandate. Found in the given tables for the corresponding Payment API and transaction type.
auth-typeStringType of authentication used.
This should be removed from the list, since it is not shown as a callback parameter.
upi_details:
      {payer_vpa}

w
w
Object
String
w
w
UPI details related to customer.
Payer VPA used during setting up mandate.
This should be removed from the list, since it is not shown as a callback parameter.

statuswwwtnStringnCurrent status of the mandate. Must be one of the states listed in this table:
ENUM. CREATED / ACTIVE / PAUSED / REVOKED / FAILURE / PENDING / EXPIRED
This should be changed to mandate_status, since that's how it's shown in other mandate APIs.
mandate_idStringMandate ID is a unique identifier generated and sent by Juspay after mandate creation. Must be sent with Notification and Revoke Mandate APIs. For the Mandate Execution API, either mandate_id or mandate_token can be used.
mandate_debit_tokenStringMandate token is a unique identifier generated and sent by Juspay for one-time use. This is a 32 digit alphanumeric unique value. Can can be sent with the Mandate Execution API along with customer_id for recurring mandate execution. Allows a charge without a 2nd factor.
This should be changed to mandate_token, since that's how it's shown in other mandate APIs.
max_amountwwwwwiStringMaximum amount of mandate while setting a mandate. Mandatory only if mandate.amount_rule = VARIABLE.
currencyStringISO string of the currency. Default value: INR (Indian Rupee). Among other accepted values are EUR, USD, GBP.
activated_atStringTime stamp of mandate activation
start_dateStringMandate start date in UNIX EPOCH timestamp (UTC timezone) format. In case of UPI mandate, the start date has to be today’s date. Mandatory only for UPI Mandate
end_dateStringMandate end date in UNIX EPOCH timestamp (UTC timezone) format, when a mandate will move to EXPIRED state, and recurring mandate execution will not be allowed. Mandatory only for UPI Mandate.
amount_ruleStringData type ENUM
Possible values: FIXED, VARIABLE.
By Default, it is considered as VARIABLE.
In case of FIXED, max amount will be equal to amount
This should be removed from the list, since it is not shown as a callback parameter.
mandate_type--StringEMANDATE in case of UPI/NB/Wallet payment
MANDATE in case of Card payment
block_fundsBooleanSet to TRUE if funds have to be blocked while a mandate is being created. Should be TRUE for ONETIME and FALSE for Recurring. By default, value will be TRUE for ONETIME and FALSE for Recurring.
frequencyStringDefines the frequency of mandate execution, or how often a customer should be charged.
(see description for mandate.frequency here.)
Default: ASPRESENTED
rule_typeStringON / BEFORE / AFTER
For Razorpay, rule_type will be updated to BEFORE.
For Paytm, rule_type will be updated to AFTER
rule_valueIntegerDetermines the day of week or month that a mandate will be executed, depending on mandate.frequency.
(see description for mandate.rule_value here.)
revokable_by_customerBooleanIf FALSE, the mandate cannot be revoked by the customer once set. Applicable only for UPI mandates. It should be TRUE for Recurring and TRUE/FALSE for ONETIME. By default, value will be TRUE

{
  "id": "evt_V2_bc933a28ee5948be9f2939caac09a",
  "date_created": "2020-07-24T10:42:25Z",
  "event_name": "MANDATE_CREATED/MANDATE_ACTIVATED/MANDATE_REVOKED/MANDATE_PAUSED/MANDATE_EXPIRED/MANDATE_FAILED"
  "content": {
    "mandate" : {
      "status": "ACTIVE",
      "payment_info": {
        "payment_method_type": "UPI",
        "payment_method": "COLLECT/PAY"
        },
      "max_amount": 5,
      "mandate_id": "bVY8tfkLanvb8vXMpGGsvK",
      "mandate_debit_token": "tkn_53eba3e74d5c44cabd96f5447125edf5",
      "mandate_type"   : "EMANDATE",
      "start_date"     : "1598464466",
      "end_date"       : "2598464466",
      "revokable_by_customer" : true
      "block_fund" : false,
      "frequency"  : "ONETIME",
      "rule_type"  : "ON",
      “rule_value”   : "1",
      "currency": "INR",
      "activated_at": "2020-04-18T10:16:02Z"
       }
       }
}