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)
Parameter | Type | Description |
---|---|---|
id | String | Unique ID of callback i.e. "evt_V2_bc933a28ee5948be9f2939caac09d9" |
date_created | Time- stamp | Current date - i.e. "2020-07-24T10:42:25Z" |
event_name | String | Must be either "NOTIFICATION_SUCCEEDED" or "NOTIFICATION_FAILED". |
content.notification:ww {param1, param2....} | Object String | Content Notification parameters (Listed in table below) |
Callback Object: (content.notification) (click to open)
Note:
This object is similar to the response for the Notification and Notification Status API.
Parameter | Type | Description |
---|---|---|
id | String | Unique identifier provided by Juspay. i.e. “"nt_123456"" |
source_object | String | Source object for notification. i.e. “mandate” |
source_object_id | String | Source 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. |
object | String | Must be set to "notification" |
object_reference_id | String | Unique Identifier passed in the request. I.e. "Merchant_id1" |
provider_name | String | Name of the provider. Gateway name in this case I.e. "PAYTM_V2" |
notification_type | String | Type of notification. I.e. “SMS” |
description | String | Reason for debit passed in the request |
status | String | Status 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_created | String | Date-time of notification created in UNIX EPOCH timestamp (UTC timezone) format. i.e. "1598960071" |
last_updated | String | Date-time of notification updated in UNIX EPOCH timestamp (UTC timezone) format. i.e. "1598960071" |
metadata | String | Metadata 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:wwiwwww {amount, txn_date, mandate: {param1}} | Object Strings Object | Same parameter values as passed in the request: i.e. "amount" : "2000","txn_date" : "1598464466""mandate" object contains "display_invoice_number" . |
provider_response: {provider_ref_id, notificationDate} | Object String String | provider_ref_id : Reference Number provided bydownstream gateway i.e. "provider_ref_id" : "31413"notificationDate : Date on which notification wassent. I.e. "notificationDate" : "1598464466"Specific to PAYTM_V2 |
{
"id": "evt_V2_bc933a28ee5948be9f2939caac09d9",
"date_created": "2020-07-24T10:42:25Z",
"event_name": "NOTIFICATION_SUCCEEDED",
"content": {
"notification": {
"status": "SUCCESS",
"source_object": "MANDATE",
"source_info": {
"txn_date": "1634057114",
"mandate.display_invoice_number": "INVN67Mzd6wMX4xPVBC",
"amount": "1"
},
"provider_response": {
"provider_ref_id": "IN0DF815118772"
},
"provider_name": "BILLDESK",
"object_reference_id": "2QNPw8KSbpHL122bNPgAK07",
"object": "notification",
"notification_type": "SMS",
"mandate": {
"mandate_id": "4rKxSj3bNXs7RQcdtajAkb"
},
"last_updated": "1644071838",
"id": "1957069",
"description": "Notification for upcoming mandate",
"date_created": "1644071838"
}
}
}
{
"id": "evt_V2_bc933a28ee5948be9f2939caac09d9",
"date_created": "2020-07-24T10:42:25Z",
"event_name": "NOTIFICATION_FAILED",
"content": {
"notification": {
"status": "FAILURE",
"source_object": "MANDATE",
"source_info": {
"txn_date": "1634057114",
"mandate.display_invoice_number": "INVN67Mzd6wMX4xPVBC",
"amount": "1"
},
"provider_response": {
"provider_ref_id": "IN0DF815118772"
},
"provider_name": "BILLDESK",
"object_reference_id": "2QNPw8KSbpHL122bNPgAK07",
"object": "notification",
"notification_type": "SMS",
"mandate": {
"mandate_id": "4rKxSj3bNXs7RQcdtajAkb"
},
"last_updated": "1644071838",
"id": "1957069",
"description": "Notification for upcoming mandate",
"date_created": "1644071838"
}
}
}
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)
Parameter | Type | Description |
---|---|---|
id | String | Unique ID of callback i.e. "evt_V2_bc933a28ee5948be9f2939caac09a" |
date_created | Time- Stamp | Current date - i.e. "2020-07-24T10:42:25Z" |
event_name | String | Must be one of the following: MANDATE_CREATED / MANDATE_ACTIVATED / MANDATE_REVOKED / MANDATE_PAUSED / MANDATE_EXPIRED / MANDATE_FAILED. |
content.mandate:wwwwi {param1, param2....} | iObjecti Strings | Content Mandate parameters (Listed in table below) |
Callback Object: (content.mandate) (click to open)
Note:
This object is similar to the Mandate Object responses, but also includes a Payment Info Object and two parameters:
mandate_debit_token
and customer_id
.Parameter | Type | Description |
---|---|---|
payment_info:wwwwn {param1, param2,...} | Object nStringsn | This contains the payment instrument details entered when the mandate was created (Parameters listed in table below) |
Parameters for the payment_info
object: click to open)
Field | Type | Description |
---|---|---|
payment_method_type | String | Payment method type used when creating the mandate. Must be either CARD, NB, WALLET, or UPI. |
payment_method | String | Payment method used when creating the mandate. Found in the given tables for the corresponding Payment API and transaction type. |
auth-type | String | Type of authentication used. This should be removed from the list, since it is not shown as a callback parameter. |
upi: {payer_vpa} | Object String | Object contains one parameter: payer_vpa Payer VPA used during setting up mandate. |
statuswwwt | nStringn | Current status of the mandate. Must be one of the states listed in this table: (ENUM format) 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_token | String | Mandate token is a unique identifier generated and sent by Juspay for one-time use. This is a 32 digit alphanumeric unique value. Allows a charge without a 2nd factor. |
mandate_id | String | Mandate ID is a unique identifier generated and sent by Juspay after mandate creation. Must be sent with Notification, Revoke Mandate, and Mandate Execution APIs. |
mandate_debit_token | String | One time token for recurring mandate execution. Allows a charge without a 2nd factor. |
customer_id | String | Unique ID for a customer | ||||||
max_amountwwwwwi | String | Maximum amount of mandate while setting a mandate. Mandatory only if mandate.amount_rule = VARIABLE. | ||||||
currency | String | ISO string of the currency. Default value: INR (Indian Rupee). Among other accepted values are EUR, USD, GBP. | ||||||
last_activated_at | Date- Time | Time stamp of mandate activation | ||||||
start_date | String | Mandate 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_date | String | Mandate 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_rule | String | Data type ENUM Possible values: FIXED, VARIABLE. By Default, it is considered as VARIABLE. In case of FIXED, max amount will be equal to amount | ||||||
mandate_type-- | String | EMANDATE in case of UPI/NB/Wallet payment MANDATE in case of Card payment | ||||||
block_funds | Boolean | Set 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. | ||||||
frequency | String | Defines the frequency of mandate execution, or how often a customer should be charged.Description for mandate.frequencyPossible values (ENUM format):ONETIME, DAILY, WEEKLY, FORTNIGHTLY, MONTHLY, BIMONTHLY, QUARTERLY, HALFYEARLY, YEARLY, ASPRESENTEDDefault: ASPRESENTEDCheck here for additional rules on this value. | ||||||
rule_type | String | ON / BEFORE / AFTER For Razorpay, rule_type will be updated to BEFORE. For Paytm, rule_type will be updated to AFTER | ||||||
rule_value | Integer | Determines the day of week or month that a mandate will be executed, depending on the mandate.frequency.Description for rule.valuePossible values (Integer format):
Not required when frequency is ONETIME, DAILY, or ASPRESENTED. For Razorpay, rule_value will be considered as the last date of the week/month/year. For Paytm, rule_value will be considered as today’s date/day.Check here for additional rules on this value. |
revokable_by_customer | Boolean | If 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_a2f864be94fb4fde88cd1056cbf88beb",
"event_name": "MANDATE_CREATED",
"date_created": "2021-12-18T10:15:35Z",
"content": {
"mandate": {
"status": "CREATED",
"start_date": "1639802535",
"end_date": "3093465599",
"revokable_by_customer": "true",
"payment_info": {
"upi": {
"payer_vpa": "[email protected]"
},
"payment_method_type": "UPI",
"payment_method": "COLLECT/PAY/INAPP"
},
"order_id": "1631719633",
"max_amount": "399",
"mandate_type": "EMANDATE",
"mandate_token": "82eef1552bb840a980f76dc78d3991b1",
"mandate_id": "eBWQNiQgeG7fdrXPPXtVbL",
"mandate_debit_token": "82eef1552bb840a980f76dc78d3991b1",
"last_activated_at": "2020-04-18T10:16:02Z",
"frequency": "MONTHLY",
"customer_id": "cst_9uiehncjizlfcnps",
"currency": "INR",
"block_fund": false,
"amount_rule": "VARIABLE",
"activated_at": "2020-04-18T10:16:02Z"
}
}
}
{
"id": "evt_V2_a2f864be94fb4fde88cd1056cbf88beb",
"event_name": "MANDATE_ACTIVATED",
"date_created": "2021-12-18T10:15:35Z",
"content": {
"mandate": {
"status": "ACTIVE",
"start_date": "1639802535",
"end_date": "3093465599",
"revokable_by_customer": "true",
"payment_info": {
"upi": {
"payer_vpa": "[email protected]"
},
"payment_method_type": "UPI",
"payment_method": "COLLECT/PAY/INAPP"
},
"order_id": "1631719633",
"max_amount": "399",
"mandate_type": "EMANDATE",
"mandate_token": "82eef1552bb840a980f76dc78d3991b1",
"mandate_id": "eBWQNiQgeG7fdrXPPXtVbL",
"mandate_debit_token": "82eef1552bb840a980f76dc78d3991b1",
"last_activated_at": "2020-04-18T10:16:02Z",
"frequency": "MONTHLY",
"customer_id": "cst_9uiehncjizlfcnps",
"currency": "INR",
"block_fund": false,
"amount_rule": "VARIABLE",
"activated_at": "2020-04-18T10:16:02Z"
}
}
}
{
"id": "evt_V2_a2f864be94fb4fde88cd1056cbf88beb",
"event_name": "MANDATE_FAILED",
"date_created": "2021-12-18T10:15:35Z",
"content": {
"mandate": {
"status": "FAILURE",
"start_date": "1639802535",
"end_date": "3093465599",
"revokable_by_customer": "true",
"payment_info": {
"upi": {
"payer_vpa": "[email protected]"
},
"payment_method_type": "UPI",
"payment_method": "COLLECT/PAY/INAPP"
},
"order_id": "1631719633",
"max_amount": "399",
"mandate_type": "EMANDATE",
"mandate_token": "82eef1552bb840a980f76dc78d3991b1",
"mandate_id": "eBWQNiQgeG7fdrXPPXtVbL",
"mandate_debit_token": "82eef1552bb840a980f76dc78d3991b1",
"last_activated_at": "2020-04-18T10:16:02Z",
"frequency": "MONTHLY",
"customer_id": "cst_9uiehncjizlfcnps",
"currency": "INR",
"block_fund": false,
"amount_rule": "VARIABLE",
"activated_at": "2020-04-18T10:16:02Z"
}
}
}
{
"id": "evt_V2_a2f864be94fb4fde88cd1056cbf88beb",
"event_name": "MANDATE_PAUSED",
"date_created": "2021-12-18T10:15:35Z",
"content": {
"mandate": {
"status": "PAUSED",
"start_date": "1639802535",
"end_date": "3093465599",
"revokable_by_customer": "true",
"payment_info": {
"upi": {
"payer_vpa": "[email protected]"
},
"payment_method_type": "UPI",
"payment_method": "COLLECT/PAY/INAPP"
},
"order_id": "1631719633",
"max_amount": "399",
"mandate_type": "EMANDATE",
"mandate_token": "82eef1552bb840a980f76dc78d3991b1",
"mandate_id": "eBWQNiQgeG7fdrXPPXtVbL",
"mandate_debit_token": "82eef1552bb840a980f76dc78d3991b1",
"last_activated_at": "2020-04-18T10:16:02Z",
"frequency": "MONTHLY",
"customer_id": "cst_9uiehncjizlfcnps",
"currency": "INR",
"block_fund": false,
"amount_rule": "VARIABLE",
"activated_at": "2020-04-18T10:16:02Z"
}
}
}
{
"id": "evt_V2_a2f864be94fb4fde88cd1056cbf88beb",
"event_name": "MANDATE_EXPIRED",
"date_created": "2021-12-18T10:15:35Z",
"content": {
"mandate": {
"status": "EXPIRED",
"start_date": "1639802535",
"end_date": "3093465599",
"revokable_by_customer": "true",
"payment_info": {
"upi": {
"payer_vpa": "[email protected]"
},
"payment_method_type": "UPI",
"payment_method": "COLLECT/PAY/INAPP"
},
"order_id": "1631719633",
"max_amount": "399",
"mandate_type": "EMANDATE",
"mandate_token": "82eef1552bb840a980f76dc78d3991b1",
"mandate_id": "eBWQNiQgeG7fdrXPPXtVbL",
"mandate_debit_token": "82eef1552bb840a980f76dc78d3991b1",
"last_activated_at": "2020-04-18T10:16:02Z",
"frequency": "MONTHLY",
"customer_id": "cst_9uiehncjizlfcnps",
"currency": "INR",
"block_fund": false,
"amount_rule": "VARIABLE",
"activated_at": "2020-04-18T10:16:02Z"
}
}
}
{
"id": "evt_V2_a2f864be94fb4fde88cd1056cbf88beb",
"event_name": "MANDATE_REVOKED",
"date_created": "2021-12-18T10:15:35Z",
"content": {
"mandate": {
"status": "REVOKED",
"start_date": "1639802535",
"end_date": "3093465599",
"revokable_by_customer": "true",
"payment_info": {
"upi": {
"payer_vpa": "[email protected]"
},
"payment_method_type": "UPI",
"payment_method": "COLLECT/PAY/INAPP"
},
"order_id": "1631719633",
"max_amount": "399",
"mandate_type": "EMANDATE",
"mandate_token": "82eef1552bb840a980f76dc78d3991b1",
"mandate_id": "eBWQNiQgeG7fdrXPPXtVbL",
"mandate_debit_token": "82eef1552bb840a980f76dc78d3991b1",
"last_activated_at": "2020-04-18T10:16:02Z",
"frequency": "MONTHLY",
"customer_id": "cst_9uiehncjizlfcnps",
"currency": "INR",
"block_fund": false,
"amount_rule": "VARIABLE",
"activated_at": "2020-04-18T10:16:02Z"
}
}
}
For Transaction Status
For every transaction status update, we will provide a callback to the configured webhook URL.
Callback Parameters for transaction status update. (click to view)
Parameter | Type | Description |
---|---|---|
id | String | Unique ID of callback i.e. "evt_V2_4b83ba211443b53fc020d4c" |
date_created | Time- stamp | Current date - i.e. "2021-03-20T07:48:31Z" |
event_name | String | Must be either "ORDER_SUCCEEDED" or "ORDER_FAILED". |
content.order:ww {param1, param2....} | Object String | Content Order parameters (Listed in table below) |
Callback Object: (content.order) (click to open)
This object is similar to the Order Object returned for the Get Order Status API, except that it includes a Mandate Object. All objects contained within the Order Object are listed above table:
Parameter | Type | Description |
---|---|---|
mandate:wwwwwnwwwwww {param1, param2, ....} | Object String | Object containing mandate details. (Parameters listed in table below - click to open) |
Mandate Object Parameters:
Field | Type | Description | ||||||
---|---|---|---|---|---|---|---|---|
mandate_id | String | Mandate ID is a unique identifier generated and sent by Juspay after mandate creation. Must be sent with Notification, Revoke Mandate, and Mandate Execution APIs, | ||||||
mandate_token | String | Mandate token is another unique identifier generated and sent by Juspay after mandate creation. This is a 32 digit alphanumeric unique value. Allows a charge without a 2nd factor. | ||||||
mandate_status | String--- | Current status of the mandate. Must be one of the states listed in this table: (ENUM format) CREATED / ACTIVE / PAUSED / REVOKED / FAILURE / PENDING / EXPIRED | ||||||
mandate_type | String | EMANDATE in case of UPI/NB/Wallet payment MANDATE in case of Card payment | ||||||
max_amount | String | Maximum amount for a mandate. Mandatory only if mandate.amount_rule = VARIABLE. | ||||||
currency | String | ISO string of the currency. Default value: INR (Indian Rupee). Among other accepted values are EUR, USD, GBP. | ||||||
activated_at | String | Time stamp of mandate activation This should be included also. | ||||||
frequency | String | Defines the frequency of mandate execution, or how often a customer should be charged.Description for mandate.frequencyPossible values (ENUM format):ONETIME, DAILY, WEEKLY, FORTNIGHTLY, MONTHLY, BIMONTHLY, QUARTERLY, HALFYEARLY, YEARLY, ASPRESENTEDDefault: ASPRESENTEDCheck here for additional rules on this value. | ||||||
amount_rule | String | Data type ENUM Possible values: FIXED, VARIABLE. By Default, it is considered as VARIABLE. In case of FIXED, max amount will be equal to amount | ||||||
start_date | String | Mandate start date in UNIX EPOCH timestamp (UTC timezone). In case of UPI mandate, the start date has to be today’s date. Mandatory only for UPI Mandate | ||||||
end_date | String | Mandate end date in UNIX EPOCH timestamp (UTC timezone), from when a mandate will move to EXPIRED state and recurring mandate will not be allowed. Mandatory only for UPI Mandate. | ||||||
block_funds | Boolean | Set 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. | ||||||
rule_value | Integer | Determines the day of week or month that a mandate will be executed, depending on the mandate.frequency.Description for rule.valuePossible values (Integer format):
Not required when frequency is ONETIME, DAILY, or ASPRESENTED. For Razorpay, rule_value will be considered as the last date of the week/month/year. For Paytm, rule_value will be considered as today’s date/day.Check here for additional rules on this value. | ||||||
rule_type | String | ON / BEFORE / AFTER For Razorpay, rule_type will be updated to BEFORE. For Paytm, rule_type will be updated to AFTER |
revokable_by_customer | Boolean | If FALSE, the mandate cannot be revoked by the customer once set. Applicable only for UPI mandate. It should be TRUE for Recurring and TRUE/FALSE for ONETIME. By default, value will be TRUE |
bank_details:wwwwnwww {param1, param2,...} | Object String | Bank details. (This object was also found in the "Card" response for the List Mandate API.) |
Bank Details Object Parameters:
Field | Type | Description |
---|---|---|
bank_name | String | Name of bank |
account_number | String | Bank account number |
beneficiary_name | String | Name of the customer in a given bank account |
ifsc | String | IFSC code for a bank branch |
payment_links:wwwwwwwwwi {web, mobile, iframe} | Object String | Three links for a Desktop , Mobile, and iFrame checkout screen for the given order. (Parameters listed in table below - click to open) |
Payment Links Object Parameters:
Field | Type | Description |
---|---|---|
web | String | Link to checkout page that is optimized for Desktop for the given order. |
mobile | String | Link to Mobile optimized checkout page for the given order. |
iframe | String | Link to iFrame checkout screen. This is typically embedded inside of your own page. |
Payment Links
These links can directly be emailed or messaged to your customers. They will be redirected using a link to enter payment information. If you wish to use your own branding, then you can embed the iframe link into your page. Note that, these links are not valid perpetually. As soon as your order expires (this can be changed via our dashboard), the link will cease to work.
txn_detail:wwwwwnwwww {param1, param2, ....} | Object String | Object containing transaction details wwww |
Transaction Detail Object Parameters:
Field | Type | Description | Example |
---|---|---|---|
txn_uuid | String | Transaction UUID (available in Order Status API response) | "eulneT9JkaAPa1uv" |
txn_object_type | String | Transaction object type | "EMANDATE_REGISTER" |
txn_id | String | Transaction ID | "11327833" |
txn_amount | String | Amount of transaction | 1 |
tax_amount | String | Amount of tax applied | null |
surcharge_amount | String | Extra fee charged by merchant on payment | null |
status | String | Status of the order (see Status Mapping table.) | "CHARGED" |
source_object_id | String | ID of source object | "91887" |
source_object | String | Set to "MANDATE" | "MANDATE" |
redirect | boolean | If true, the user is redirected to the return_url configured for the order. | false |
order_id | String | Unique Identifier for the order. | "145678234" |
net_amount | String | Net amount of order | 1 |
gateway_id | String | Unique numeric identifier for your preferred gateway. (Refer to "Gateway Mapping" table.) | 19 |
gateway | String | Name or your preferred gateway | "PAYTM_V2" |
express_checkout | boolean | True if using Express Checkout | false |
error_message | String | Bank error message | "" |
error_code | String | Numeric code of bank error message | "" |
currency | String | ISO string of the currency. Use INR for Indian Rupee. Among other accepted values are EUR, USD, GBP. Default value: INR | "INR" |
created | Date- Time | Date time (ISO representation) when order was created | "2020-04-28T06:31:37Z" |
payment_gateway_response: {param1, param2, ....} | Object String | Object containing payment gateway details (Parameters listed in table below - click to open) |
Payment Gateway Response Object Parameters:
Field | Type | Description | Example |
---|---|---|---|
txn_id | String | Transaction ID | "11327833" |
rrn | String | Authorization Retrieval Reference Number | "502913366745" |
resp_message | String | Result of API action | "Payment Successful" |
resp_code | String | Numeric code of response message | "0" |
epg_txn_id | String | Electronic Payment Gateway transaction ID | "1532690566017" |
created | Date- Time | Date time (ISO representation) when order was created | "2020-04-28T06:31:37Z" |
auth_id_code | String | Authorization ID Code | "475926" |
card:wwwwwwwwnwwww {param1, param2, ....} | Object String | Object containing credit/debit card details |
Card Object Parameters:
Field | Type | Description |
---|---|---|
using_token | Boolean | True if using a token |
using_saved_card | Boolean | True if using a saved card |
saved_to_locker | Boolean | True if card has been saved to locker |
last_four_digits | String | Last four digits of card number |
name_on_card | String | Card holder name. Should contain alphabetical characters only. |
expiry_year | String | Expiry year of the card (Format: "yyyy") |
expiry_month | String | Expiry month of the card (Format: "mm") |
card_type | String | "CREDIT" or "DEBIT" |
card_reference | String | Unique reference ID for card (if any) |
card_issuer | String | Code for bank that issued the card (Example: "HDFC Bank") |
card_isin | String | International Securities Identification Number for card (Example: "545721") |
card_fingerprint | String | Card fingerprint |
card_brand | String | Brand of card ("MASTERCARD", "VISA", etc.) |
Refunds: [{...},{...},..] wwwwwwwwwwwnntwwwwww | Array of Objects | An array of Refund Objects with details of each refund (returned with the Refund Order API). Should be returned if refunded is set to true in response. |
Parameters for each object in the Refunds array:
Field | Type | Description |
---|---|---|
unique_request_id | String | The unique request ID that is passed during refund initiation. Do not pass any special characters. |
status | String | The status of the refund initiated. Initial status will always be PENDING Status codes and meaningSUCCESS This means that the refund has been successfully executed. PENDING This would mean that the refund has been queued withJusPay or with the downstream system. FAILURE We were unable to process the refund successfully. You have to try again with a new unique_request_id .MANUAL_REVIEW This would mean that the refund request was sent an ambigious response from the payment gateway and the merchant has to manually reconcile it with the payment gateway to get the proper response. Also, any refunds which are in pending for more than 10 days are sent for manual review. |
sent_to_gateway | Boolean | The flag denotes if the refund was initiated to gateway. The initial status is always false, as refunds are queued at Juspay for a maximum of 15 minutes. |
refund_type | String | The type of refund. Values can be STANDARD or INSTANT |
refund_source | String | The name of gateway |
ref | String | The refund ID provided by the PG |
initiated_by | String | The source of initiation |
id | String | The reference ID provided by PG, if not available then its mapped to the unique request ID. |
error_message | String | The error message provided by the PG |
error_code | String | The error code provided by the PG |
amount | Integer | The refund amount passed in the request |
created | Time- stamp | The timestamp when refund was created |
merchant_id | String | Unique identifier for the merchant. |
order_id | String | Unique Identifier for the order. It is suggested to keep the order id length at a maximum of 21 characters irrespective of payment methods and gateways. |
id | String | Unique ID generated by Juspay for the given order. |
customer_id | String | String that uniquely identifies the customer. Generated by Juspay when you created customer object. |
customer_email | String | Email address of the customer. Must be present if backend gateway requires it. |
customer_phone | String | Mobile number or fixed line number of the customer. Must be present if backend gateway requires it. |
product_id | String | An identifier for the product on the Lender side for which the payment is being done. This field is just echoed back in the response so that Lender can differentiate on their side. Fits well for impulse purchase usecases. |
status | String | Status of the order. If you receive “NEW”, then the order is successfully created (see order status table for status mapping). |
status_id | Integer | Status ID is a numeric id corresponding to the status value. (see order status table for code meaning). |
amount | Double | This is the amount that a customer will be charged in this transaction. Will accept double values with up to two decimal places. For example, 100.15 is valid input but 100.1532 is not valid. |
effective_amount | Double | Amount that the customer actually pays |
currency | String | ISO string of the currency. Use INR for Indian Rupee. Among other accepted values are EUR, USD, GBP. Default value: INR |
refunded | Boolean | Boolean value that determines if the amount was refunded or not. |
amount_refunded | Double | Amount that has been refunded so far for this order. |
date_created | Date- Time | Date-time of mandate order creation |
return_url | String | A fully qualified URL such as http://shop.merchant.com/ to which the customer will be redirected after payment completion. This URL shouldn’t contain any query parameters. This URL takes higher precedence over the common return URL configured in your account settings. |
udf1 | String | udf1 to udf10 - User defined field which will be echoed back in the response from Juspay with a Max character limit of 255. |
udf2 | String | |
udf3 | String | |
udf4 | String | |
udf5 | String | |
udf6 | String | |
udf7 | String | |
udf8 | String | |
udf9 | String | |
udf10 | String | |
txn_id | String | Transaction ID |
txn_uuid | String | Transaction UUID |
gateway_id | String | Unique numeric identifier for your preferred gateway. (Refer to "Gateway Mapping" table.) |
gateway_reference_id | String | Alphabetic reference to the payment gateway used |
bank_pg | String | Payment gateway for bank. |
metadata: {param1, param2,...} | Object | Used for sending custom parameters to the payment aggregators, irrespective of default parameters. Check here for parameter list. |
offers: [{...},{...},...] | Array of Objects | The mechanism of running offers is the responsibility of merchants in collaboration with PG/Banks. |
bank_error_code | String | Bank Error Code |
bank_error_message | String | Bank Error Message |
payment_method_type | String | Must be either CARD, NB, WALLET, or UPI. Entered when creating the order or mandate |
payment_method | String | Entered when creating the order or mandate. Found in the given tables for the corresponding API and transaction type. |
payer_vpa | String | Payer VPA used during setting up mandate |
auth_type | String | Type of authentication used |
{
"id": "evt_V2_4b83ba211443b53fc020d4c",
"event_name": "ORDER_SUCCEEDED",
"date_created": "2021-03-20T07:48:31Z",
"content": {
"order": {
"udf9": "",
"udf8": "",
"udf7": "",
"udf6": "",
"udf5": "",
"udf4": "",
"udf3": "",
"udf2": "",
"udf10": "",
"udf1": "",
"txn_uuid": "eulmy******y1Syy",
"txn_id": "juspay-2348******3498-1",
"txn_detail": {
"txn_uuid": "eulmy******y1Syy",
"txn_object_type": "EMANDATE_REGISTER",
"txn_id": "juspay-2348******3498-1",
"txn_amount": 1,
"tax_amount": null,
"surcharge_amount": null,
"status": "CHARGED",
"source_object_id": "91887",
"source_object": "MANDATE",
"redirect": true,
"order_id": "2348******3498",
"net_amount": 1,
"gateway_id": 19,
"gateway": "PAYTM_V2",
"express_checkout": false,
"error_message": "",
"error_code": "",
"currency": "INR",
"created": "2020-08-30T09:53:17Z"
},
"status_id": 21,
"status": "CHARGED",
"return_url": "https://sandbox.juspay.in",
"refunded": false,
"product_id": "",
"payment_method_type": "UPI",
"payment_method": "UPI",
"payment_links": {
"web": "https://sandbox.juspay.in/merchant/pay/ordeu_9a092980*******4d0206",
"mobile": "https://sandbox.juspay.in/merchant/pay/ordeu_9a092980*******4d0206?mobile=true",
"iframe": "https://sandbox.juspay.in/merchant/ipay/ordeu_9a092980*******4d0206"
},
"payment_gateway_response": {
"txn_id": "juspay-2348******3498-1",
"rrn": "4299662",
"resp_message": "Txn Success",
"resp_code": "01",
"epg_txn_id": "202008*******80189",
"created": "2020-08-30T09:54:10Z",
"auth_id_code": ""
},
"payer_vpa": "[email protected]",
"order_id": "2348******3498",
"metadata": {
"PAYTM_V2:gateway_reference_id": "upimandate"
},
"merchant_id": "juspay",
"mandate": {
"start_date": "1598745600",
"rule_value": 30,
"rule_type": "AFTER",
"revokable_by_customer": true,
"max_amount": 1000,
"mandate_type": "EMANDATE",
"mandate_token": "ad1d221******0f3",
"mandate_status": "ACTIVE",
"mandate_id": "3XMEcS******Ybzj",
"frequency": "MONTHLY",
"end_date": "160***10",
"block_fund": false,
"amount_rule": "VARIABLE"
},
"id": "ordeu_9a092980*******4d0206",
"gateway_reference_id": "upimandate",
"gateway_id": 19,
"date_created": "2020-08-30T09:47:46Z",
"customer_phone": "9999999999",
"customer_id": "cst_lz*****okv",
"customer_email": "[email protected]",
"currency": "INR",
"bank_error_message": "",
"bank_error_code": "",
"auth_type": "",
"amount_refunded": 0,
"amount": 1
}
}
}
{
"id": "evt_V2_6e76c650ff214edc87763234b958fabd",
"event_name": "ORDER_FAILED",
"date_created": "2021-12-27T12:42:37Z",
"content": {
"order": {
"udf9": "",
"udf8": "",
"udf7": "",
"udf6": "",
"udf5": "",
"udf4": "",
"udf3": "",
"udf2": "",
"udf10": "",
"udf1": "",
"txn_uuid": "eulc9Pbtedwqm5ByE3yFc",
"txn_id": "test-SEwfX7hcqZe-1",
"txn_detail": {
"txn_uuid": "eulc9Pbtedwqm5ByE3yFc",
"txn_object_type": "EMANDATE_REGISTER",
"txn_id": "test-SEwfX7hcqZe-1",
"txn_amount": 1,
"tax_amount": null,
"surcharge_amount": null,
"status": "CHARGED",
"source_object_id": "91887",
"source_object": "MANDATE",
"redirect": true,
"order_id": "SEwfX7hcqZe",
"net_amount": 1,
"gateway_id": 19,
"gateway": "BILLDESK",
"error_message": "payment_authentication_error. 3D Secure authentication failure",
"error_code": "0399",
"currency": "INR",
"created": "2021-12-27T12:42:08Z"
},
"status_id": "26",
"status": "AUTHENTICATION_FAILED",
"return_url": "https://sandbox.juspay.in/end",
"refunded": false,
"product_id": "",
"payment_method_type": "CARD",
"payment_method": "VISA",
"payment_links": {
"web": "https://sandbox.juspay.in/merchant/pay/ordeu_9a092980*******4d0206",
"mobile": "https://sandbox.juspay.in/merchant/pay/ordeu_9a092980*******4d0206?mobile=true",
"iframe": "https://sandbox.juspay.in/merchant/ipay/ordeu_9a092980*******4d0206"
},
"payment_gateway_response": {
"txn_id": "test_store-DW-SEfX7hcqZe-1",
"rrn": null,
"resp_message": "payment_authentication_error. 3D Secure authentication failure",
"resp_code": "0399",
"epg_txn_id": "U45600****9600",
"created": "2021-12-27T12:42:36Z",
"auth_id_code": null
},
"order_id": "SEwfX7hcqZe",
"offers": [],
"metadata": null,
"merchant_id": "test",
"mandate": {
"start_date": "1640608898",
"revokable_by_customer": "true",
"max_amount": "10",
"mandate_type": "MANDATE",
"mandate_token": "FILTERED",
"mandate_status": "FAILURE",
"mandate_id": "2K6Nap******5KWPjK15",
"frequency": "ASPRESENTED",
"end_date": "2134731745",
"block_fund": false,
"amount_rule": "VARIABLE"
},
"id": "ordeu_9a092980*******4d0206",
"gateway_reference_id": null,
"gateway_id": "27",
"effective_amount": "1",
"date_created": "2021-12-27T12:42:08Z",
"customer_phone": "FILTERED",
"customer_id": "FILTERED",
"customer_email": "FILTERED",
"currency": "INR",
"card": "FILTERED",
"bank_pg": null,
"bank_error_message": "payment_authentication_error. 3D Secure authentication failure",
"bank_error_code": "0399",
"auth_type": "THREE_DS",
"amount_refunded": 0,
"amount": "1"
}
}
}