Skip to main content

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.

Every object in DollarPe has a lifecycle. This page covers all possible statuses, how they transition, and what your integration should do when each one fires.

Color coding

All flow diagrams use the same color convention:
  • Green: success / completed
  • Red: failed / error
  • Orange: reversed / refunded
  • Yellow: on hold / cancelled

Customer status

StatusDescription
UNVERIFIEDInitial state after customer creation
PROCESSINGKYC submitted, automated checks running
VERIFIEDKYC passed. Customer can link banks and transact
FAILEDKYC failed or account suspended
What to do:
  • VERIFIED: unlock transaction flows for this customer
  • FAILED: check failure_reason in the CUSTOMER webhook. If recoverable (e.g., DOCUMENT_VERIFICATION_FAILED), prompt the user to retry. If terminal (e.g., KYC_FAILED), contact DollarPe support with the customer ID

Bank status

StatusDescription
PROCESSINGBank account or UPI ID submitted, verification running
VERIFIEDBank account or UPI ID verified and ready to use
FAILEDVerification failed
What to do:
  • VERIFIED: the bank account is ready for payout orders
  • FAILED: check failure_reason in the BANK webhook. Common reasons: ACCOUNT_TYPE_NRE, NAME_MISMATCH, PENNY_DROP_FAILED. Prompt the user to add a different account or correct the details

Quotation status

StatusDescription
UNLINKEDQuotation created, not yet tied to an order
LINKEDQuotation locked to an order and in use
EXPIREDQuotation validity period elapsed
What to do:
  • EXPIRED: fetch a new quotation and present the updated rate to the user before retrying

Payin status

StatusDescription
PROCESSINGPayin submitted, awaiting payment confirmation
SUCCESSPayment received and crypto released
FAILEDPayin failed
REFUND_INITIATEDRefund process started
REFUNDEDFiat returned to the userโ€™s source account
ON_HOLDPayment flagged and held for review
What to do:
  • SUCCESS: release crypto to the user. Record the id from the webhook as your reconciliation reference
  • FAILED: check failure_reason in the PAYIN webhook (e.g., INCORRECT_UTR, PAYMENT_NOT_RECEIVED). Notify the user. Do not release crypto
  • REFUND_INITIATED: wait for REFUNDED before updating the user
  • REFUNDED: notify the user that their fiat has been returned. Do not release crypto
  • ON_HOLD: do not release crypto. Contact DollarPe support with the payin ID

Payout status

StatusDescription
PROCESSINGPayout submitted, funds transfer in progress
SUCCESSFunds delivered to the beneficiary
FAILEDPayout failed
REFUNDEDPayout amount returned to source
CANCELLEDPayout cancelled before processing completed
What to do:
  • SUCCESS: confirm delivery to the user. Use metadata.utr from the webhook as the transfer reference
  • FAILED: check failure_reason in the PAYOUT webhook. Notify the user. Contact DollarPe support for reconciliation
  • REFUNDED / CANCELLED: notify the user. The transaction did not complete

EDD status

Enhanced Due Diligence applies to customers whose transaction volume triggers additional verification requirements.
StatusDescription
VERIFIEDEDD passed. Customer has enhanced payin limits
FAILEDEDD failed. Standard limits remain in place
What to do:
  • VERIFIED: update the customerโ€™s displayed limits in your UI
  • FAILED: inform the user their limits remain unchanged. They can resubmit EDD documents if the failure reason is correctable