Wallet Direct Debit Flow

The wallet direct debit flow enables customers to conveniently make payments by directly deducting the amount from their linked wallet accounts. When initiating the payment, if the customer's wallet has sufficient funds, the payment is immediately successful. However, if the wallet balance is insufficient, the payment status will be marked as "PENDING," and the response will include a top-up URL to facilitate adding funds to the wallet. This ensures a seamless and efficient payment experience for customers using wallet direct debit.

Integration Architecture

New Wallet - First time linking

  1. Call “Create Wallet” API link icon- Wallet account can be created only for an existing customer. Creating the wallet with command=authenticate parameter will trigger an OTP which will be used for linking the wallet thereby enabling direct debit authorization. You also have the option of deferring the authentication to a later point of time by omitting the command=authenticate parameter. In case you decide to defer it, Please use the authenticate APIlink icon, followed by the link API to authenticate and link the wallet.

  2. Call “Link Wallet” APIlink icon - Completes the authentication and linking process of the wallet with the customer account. OTP received from the customer is forwarded to Juspay using this API for linking the wallet. On successful verification of the OTP, the wallet is linked with the customer object. If failed, then linked attribute will remain to be false.

Now a transaction can be initiated by following the linked wallet flow described below.

Wallet Direct Debit Transaction - Linked Wallet

  1. Call “Refresh Wallet” APIlink icon - Refresh wallet API can be used to get the wallet with updated balance from wallet provider. This API is applicable only for linked wallets. Alternatively, use the “Refresh All Wallets” APIlink icon to fetch all wallets linked to a customer along with updated wallet balances.

  2. Call “List Wallet” APIlink icon - Wallets can be listed only in the context of a customer. This API will return the list of wallets which are linked.

  3. Call “Wallet Direct Debit” APIlink icon - Directly debit the amount from a Wallet that is linked to a Customer’s account. If the status in the response is CHARGED, then the payment is immediatley successful. If the status in the response is PENDING, then the user wallet doesn’t have sufficient balance for the payment and the topup URL is returned in the response

Last updated 2 years ago