Webhooks allow you to receive real-time notifications about various events that occur in your integration. When an event happens, we’ll send an HTTP POST request to the webhook URL you’ve configured.Documentation Index
Fetch the complete documentation index at: https://docs.dollarpe.xyz/llms.txt
Use this file to discover all available pages before exploring further.
To configure your webhook URL please refer to the Webhook Configuration guide.
Webhook Validation
Each webhook request will include the following headers for validation:- X-TIMESTAMP: Unix timestamp when the webhook was generated.
- X-SIGNATURE: HMAC-SHA256 signature, Base64 encoded.
You should verify every incoming webhook by validating the signature using your
api_key&api_secret. Below is a sample Python code snippet for generating and verifying webhook signatures:
Always verify the signature and timestamp before processing any webhook data.
Webhook Structure
All webhook notifications follow this consistent structure:Metadata Fields
Themetadata object in webhook payloads contains additional context-specific information based on the event type and state. Below are the potential fields that may appear in metadata:
Payin Events
-
failure_reason(string): Present when the payin event isFAILED. Contains the specific reason for the failure (e.g.,INCORRECT_UTR,PAYMENT_NOT_RECEIVEDetc). See Failure Reason Reference for all possible values. -
refund_reason(string): Present when the payin event isREFUND_INITIATEDorREFUNDED. Contains the reason why the refund was initiated. Possible values include:INCORRECT_AMOUNT,PAYMENT_FROM_NON_WHITELISTED_ACCOUNT,THIRD_PARTY_PAYMENT. See Failure Reason Reference for all possible values.
Customer Events
failure_reason(string): Present when the customer event isFAILED. Contains the specific reason for KYC verification failure (e.g.,DOCUMENT_VERIFICATION_FAILED,TAX_VERIFICATION_FAILED,KYC_FAILED). See Failure Reason Reference for all possible values.
Bank Events
failure_reason(string): Present when the bank event isFAILED. Contains the specific reason for bank verification failure (e.g.,ACCOUNT_TYPE_NRE,PENNY_DROP_FAILED,NAME_MISMATCH,BANK_RISK_CHECK_FAILEDetc). See Failure Reason Reference for all possible values.
Metadata fields are only included when relevant to the event. For successful
events or events without additional context, the metadata object may be empty
{}.Webhook Events
Customer Events
Customer webhooks are triggered when a customer’s verification status changes. Below are the possible customer states:| Event | Description |
|---|---|
VERIFIED | Customer has completed KYC verification |
FAILED | Customer verification failed or account suspended |
| Example customer webhook payload: |
Bank Events
Bank webhooks are triggered when a customer’s bank account details or UPI ID is verified. Below are the possible states:| Event | Description |
|---|---|
VERIFIED | Bank Account or UPI ID is verified successfully and can be used to place orders |
FAILED | Bank Account or UPI ID verification failed and the bank account cannot be used to place orders |
Payout Events
Payout webhooks are triggered when the status of a payout changes. Below are the possible payout states:| Event | Description |
|---|---|
SUCCESS | The payout has been successfully completed |
FAILED | The payout has failed (e.g., AML Screening failed) |
REFUNDED | The payout amount has been reversed |
CANCELLED | The payout has been cancelled |
| Example payout webhook payload: |
Payin Events
Payin webhooks are triggered when the status of a payin changes. Below are the possible payin states:| Event | Description |
|---|---|
SUCCESS | The payin has been successfully completed |
FAILED | The payin has failed (e.g., AML Screening failed) |
REFUND_INITIATED | The refund has been initiated for this payin |
REFUNDED | The payin amount has been reversed |
ON_HOLD | The payin is put on hold |
EDD Events
EDD webhooks are triggered when a customer’s enhanced due diligence verification status changes. Below are the possible states:| Event | Description |
|---|---|
VERIFIED | Customer’s EDD is verified successfully and customer will now have enhanced onramp limits |
FAILED | Customer’s EDD verification failed. The payin limits will remain unchanged |
| Example customer webhook payload: |

