The specific fulfillment related APIs that you use, and the sequence that you use them in, depends on whether Digital River coordinates an order's fulfillment or whether you've delegated that responsibility to a third party.
Once you've done that, and received the appropriate events, you'll need to use the Fulfillments API to inform us which products are fulfilled or cancelled. This notification then prompts Digital River to capture or cancel the customer's payment.
If you have a third-party fulfillment system in place, meaning Digital River does not orchestrate the delivery of your goods, then the Fulfillments API is all you'll need to handle an order's fulfillment.
By submitting one or more create fulfillment requests for every order, you're informing Digital River which products, and in what quantity, have been fulfilled or cancelled. Depending on the data you provide, we then attempt to capture or cancel the appropriate payment charge.
For third-party coordinated fulfillments, the following diagram outlines the major steps in creating, processing, and delivering orders to customers that contain physical and digital goods.