Flows by payment type
Understand the flows by payment type.
Each payment method must follow a specific payment flow to ensure a seamless payment process. The payment flows and corresponding payment methods outlined below follow Digital River's recommended best practices.
Standard payment flow
Use the following flow for standard payments: Apple Pay, credit cards, and Google Pay.
Create a source using DigitalRiver.js. The source
state
ischargeable
.
Delayed payment flow
Submit a Konbini payment flow
Use the following flow for delayed payments, such as Konbini.
Get the store details.
Create a source using DigitalRiver.js. The source
state
ispending_funds
.The customer transfers the funds to the Konbini payment provider.
The source
state
changes tochargeable
when the funds are received.
Submit a Boleto payment flow
To use Boleto as a payment method:
Optional. Set the locale and currency.
curl --location --request GET 'https://{host}/v1/shoppers/me.json? locale=pt_BR¤cy=BRL' --header 'Content-Type: application/json'--header 'authorization: bearer ***\
Optional. Set the cart address to the
BR
address.Attach the tax ID to the cart. The action inserts the tax ID into the payment session.
Create a source using DigitalRiver.js with a payment session ID. Note that the tax ID is required when creating the Boleto source. The payment session ID provides the tax ID.
Submit a Wire Transfer payment flow
Use the following flow for delayed payments, such as Wire Transfer.
Create a source using DigitalRiver.js. The source
state
ischargeable
.The shopper receives the payment details and completes the payment. After the shopper finalizes the payment, the updated order status will appear in Global Commerce.
Redirect, then submit payment flow
Use the following flow for redirect and submit payment methods, such as PayPal, PayPal Billing Agreement, PayPal Credit, PayPal Pay in 3, PayPal Pay in 4, and PayPal RatenZahlung (Installment Payment)
Create a source using DigitalRiver.js. The source
state
ispending_redirect
.Attach the source to the cart. The session
state
isrequires_confirmation
.
Submit, then redirect payment flow
Use the submit, then redirect flow for Afterpay, Alipay (domestic), Alipay+ (cross-border), Amazon Pay Express Checkout, Bancontact, BLIK, CCAvenue, Clearpay, iDEAL, Klarna Financing, Klarna Pay in 3, Klarna Pay in 4, Klarna Pay in 30 days, Online Banking (IBP), Online Banking (FPX), Online Banking (Korea Bank Transfer), PayCo, SEPA Direct Debit, and TreviPay, and Trustly.
Create a source using DigitalRiver.js with a session identifier (paymentSessionId). The source state is
pending_redirect
.Attach the source to the cart. The session
state
isrequires_confirmation
.Submit the cart. The session
state
ispending_redirect
.Complete redirect authorization. The session
state
ischargeable
.Resume cart to complete post-order processing.
Express checkout payment flow
Use the express checkout payment flow for Amazon Pay Express Checkout.
Submit an Amazon Pay flow
The following image shows Amazon Pay's Express Checkout flow for Commerce API.

The following Amazon Pay flow represents how your shoppers experience the payment process.
The shopper adds the product to the shopping cart
The shopper clicks the Shopping Cart
The shopper clicks the Amazon Pay button.
The shopper is redirected to Amazon Pay to sign in and select the shipping address (if required) and the payment method.
The shopper clicks the Submit button to place the order.
The shopper gets a second redirect to the Amazon Pay - Spinning page or Multi-factor Authentication (MFA) page. (Amazon Pay determines if the transaction requires MFA). The order will be in a
source_pending_redirect
state. You can get an order by its identifier to check the state of the order.Optional. When you resume the cart, the order will be in an
accepted
state.
curl --location --request GET 'https://api.digitalriver.com/orders/189917880336' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <API_key>' \
...
curl --location -g --request POST ' https://api.digitalriver.com/v1/shoppers/me/carts/active/resume-cart' \
--header 'Authorization: bearer {{access_token}}' \
...
Last updated
Was this helpful?