Handling delayed payment methods
In Direct Integrations, gain a better understanding of how to handle transactions funded with a delayed payment method
If customers opt to fund a transaction with a payment method whose resulting source has a flow of receiver, such as Konbini or Wire Transfer, they must be given instructions on how to push the funds to the payment provider.
This page applies only to those who build their checkout experience using the Direct Integrations approach. If you implement a low-code checkout option, Digital River displays the delayed payment instructions to customers.
To provide customers with these instructions, first submit the create order request. If you get back a 201 Created and state is pending_payment, then check the value of payment.session.nextAction.action.
{
"id": "239809940336",
"createdTime": "2022-09-16T21:16:18Z",
"currency": "USD",
"email": "[email protected]",
"shipTo": {
"address": {
"line1": "1234 Any Road W",
"city": "Minneapolis",
"postalCode": "10115",
"state": "MN",
"country": "DE"
},
"name": "Chase Marshall"
},
"shipFrom": {
"address": {
"country": "CA"
}
},
"billTo": {
"address": {
"line1": "10380 Bren Road West",
"line2": "Ichikawa-shi",
"city": "Minnetonka",
"postalCode": "55346",
"state": "MN",
"country": "US"
},
"name": "Fred Flintstone",
"phone": "000-000-0000",
"email": "[email protected]"
},
"totalAmount": 29.75,
"subtotal": 25.0,
"totalFees": 0.0,
"totalTax": 4.75,
"totalImporterTax": 0.0,
"totalDuty": 0.0,
"totalDiscount": 0.0,
"totalShipping": 5.0,
"items": [
{
"id": "167661230336",
"skuId": "face64e4-2017-431e-93e6-30ca951e1f5a",
"productDetails": {
"id": "face64e4-2017-431e-93e6-30ca951e1f5a",
"name": "Test Product",
"countryOfOrigin": "US",
"partNumber": "face64e4-2017-431e-93e6-30ca951e1f5a"
},
"amount": 10.0,
"quantity": 1,
"state": "created",
"stateTransitions": {
"created": "2022-09-16T21:16:18Z"
},
"tax": {
"rate": 0.19,
"amount": 1.9
},
"importerTax": {
"amount": 0.0
},
"duties": {
"amount": 0.0
},
"availableToRefundAmount": 0.0,
"fees": {
"amount": 0.0,
"taxAmount": 0.0
},
"sellerTaxIdentifier": "DE246495190",
"shipping": {
"amount": 5.0,
"taxAmount": 0.95
}
},
{
"id": "167661240336",
"skuId": "c3e15ba7-d44a-43e9-83c2-99a20b90be3a",
"productDetails": {
"id": "c3e15ba7-d44a-43e9-83c2-99a20b90be3a",
"name": "SaaS",
"countryOfOrigin": "US"
},
"amount": 10.0,
"quantity": 1,
"state": "created",
"stateTransitions": {
"created": "2022-09-16T21:16:18Z"
},
"tax": {
"rate": 0.19,
"amount": 1.9
},
"importerTax": {
"amount": 0.0
},
"duties": {
"amount": 0.0
},
"availableToRefundAmount": 0.0,
"fees": {
"amount": 0.0,
"taxAmount": 0.0
},
"sellerTaxIdentifier": "IE6426071C",
"shipping": {
"amount": 0.0,
"taxAmount": 0.0
}
}
],
"shippingChoice": {
"amount": 5.0,
"description": "standard",
"serviceLevel": "SG",
"taxAmount": 0.95
},
"updatedTime": "2022-09-16T21:16:18Z",
"locale": "en_US",
"customerType": "business",
"sellingEntity": {
"id": "DR_IRELAND-ENTITY",
"name": "Digital River Ireland Ltd."
},
"liveMode": false,
"payment": {
"sources": [
{
"id": "9c00d78c-dbad-4303-b366-7e0a49c322e7",
"type": "wireTransfer",
"amount": 29.75,
"owner": {
"firstName": "Fred",
"lastName": "Flintstone",
"email": "[email protected]",
"address": {
"line1": "10380 Bren Road West",
"line2": "Ichikawa-shi",
"city": "Minnetonka",
"postalCode": "55346",
"state": "MN",
"country": "US"
}
},
"wireTransfer": {
"accountHolder": "Global Collect BV",
"bankName": "Rabobank N.A.",
"city": "Ontario",
"country": "US",
"referenceId": "890701505439",
"accountNumber": "0487369908",
"swiftCode": "RABOUS66XXX"
}
}
],
"session": {
"id": "afaed310-419f-4ced-912c-6830a98c7384",
"amountContributed": 29.75,
"amountRemainingToBeContributed": 0.0,
"state": "pending_funds",
"clientSecret": "afaed310-419f-4ced-912c-6830a98c7384_be3c1baa-5120-4739-8d5c-602966bff8df",
"nextAction": {
"action": "show_payment_instructions",
"data": {
"sourceId": "9c00d78c-dbad-4303-b366-7e0a49c322e7",
"sourceClientSecret": "9c00d78c-dbad-4303-b366-7e0a49c322e7_246ed54a-0dfc-41f0-9e98-14036adf642e"
}
}
}
},
"state": "pending_payment",
"stateTransitions": {
"pending_payment": "2022-09-16T21:16:20Z"
},
"requestToBeForgotten": false,
"capturedAmount": 0.0,
"cancelledAmount": 0.0,
"availableToRefundAmount": 0.0,
"checkoutId": "b9be1d80-fe76-4df0-bb43-a58e35f1e766"
}If action is show_payment_instructions, then retrieve sourceId and sourceClientSecret from nextAction.data and use them to configure the create delayed payment instructions element method.
Next call mount() to display the element on your order confirmation page. Alternatively, you may want to include a link on the order confirmation page that redirects customers to another page and displays the element there.
When on ready executes, the instructions are displayed to customers.
Once the instructions are loaded in the designated container, they usually contain the number of days that customers have to push payment.

If customers follow the instructions and payment is successfully authorized, you'll need to handle the event with a type of order.accepted. Otherwise, if they don't make payment within the allotted time, make sure you're set up to handle order.cancelled.
Last updated