After you submit a refund request on asynchronous payment methods, such as Wire Transfer, bPay, Online Banking, and Konbini, payment providers usually need to collect information from the customer before the refund can be issued.
When creating refunds on these types of payment methods, the Refund object is returned in a
pending_information and contains the
tokenInformation dictionary, which consists of a
token and an
expiresTime value. You can use the
token in subsequent refund requests to first
GET the schema that defines the data fields the customer must provide and then
POST the collected data.
Digital River creates an Event object that persists for 30 days when a Refund transitions to a
pending_information. The Event has a
data attribute that contains the Refund object itself.
The following steps explain, at a high-level, the process for handling refunds for an asynchronous payment method:
Submit a create refund request.
Payment services return a Refund with a
pending_information and a new
DigitalRiver.js then sends the
tokenInformationto payment services, requesting the schema that defines the required fields, which are then displayed to the customer.
The customer enters their data.
DigitalRiver.js submits the customer provided data to payment services.
Digital River triggers a new webhook when the Refund
state changes from