> For the complete documentation index, see [llms.txt](https://docs.digitalriver.com/digital-river-api/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.digitalriver.com/digital-river-api/general-resources/standards-and-certifications/integration-checklists/fulfillments-and-cancellations.md).

# Fulfillments and cancellations

This section's [checklist items](#integration-checklist) and [standards](#integration-standards) cover when and how to notify Digital River that you have [fulfilled or cancelled](/digital-river-api/order-management/informing-digital-river-of-a-fulfillment.md) all or part of a transaction.

## Integration checklist

Click any checklist item to see more detail on how to meet the integration standard.

* [ ] [After your system confirms a line item is fulfilled, do you use the Fulfillments API to supply Digital River with the required fulfillment data?](#provide-required-fulfillment-data)
* [ ] [After your system confirms a line item is cancelled, do you use the Fulfillments API to supply Digital River with the required cancellation data?](#provide-required-cancellation-data)

## Integration standards

These integration standards relate to fulfillments and cancellations:

### Provide required fulfillment data

Once you either [synchronously](/digital-river-api/order-management/creating-and-updating-an-order.md#accepted) or [asynchronously](/digital-river-api/order-management/creating-and-updating-an-order.md#listening-for-the-order-accepted-event) receive an order in an `accepted` state, your integration can use the [Fulfillments API](https://docs.digitalriver.com/digital-river-api-reference/2021-12-13/fulfillments) to submit a [`POST/fulfillments`](/digital-river-api/order-management/informing-digital-river-of-a-fulfillment.md) with a fulfilled quantity.

When all the items in an order are fulfilled, the [order transitions](https://docs.digitalriver.com/digital-river-api-reference/2021-12-13/orders/order-basics#the-order-lifecycle) to a `state` of `complete` and an `order.complete` event is emitted. After you receive this event, you should update the order status in your system to match its `state` in our system.

### Provide required cancellation data

To cancel items, your integration must use the [Fulfillments API](https://docs.digitalriver.com/digital-river-api-reference/2021-12-13/fulfillments) to submit a [`POST /fulfillments`](https://docs.digitalriver.com/digital-river-api-reference/2021-12-13/fulfillments#fulfillments-1) with a cancel quantity.

## API interfaces

| Documentation                                                                                        | Direct API                                                                                        | PHP SDK                                                                                               |
| ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- |
| [Fulfillments](/digital-river-api/order-management/fulfillments.md)                                  | [Fulfillments](https://docs.digitalriver.com/digital-river-api-reference/2021-12-13/fulfillments) | [Fulfillments](https://github.com/DigitalRiver/digital-river-php/blob/main/docs/Model/Fulfillment.md) |
| [Events](/digital-river-api/order-management/events-and-webhooks-1/events-1.md): fulfillment.created | [Events](https://docs.digitalriver.com/digital-river-api-reference/2021-12-13/events)             |                                                                                                       |
