Skip to main content

Refunds

All clients should send a new refund Order that is unattached from any original order it may be related to. I.e. a refund is modelled in the Loaded API as an independent Order that, where necessary in reports within the Loaded system, will effectively cancel out any earlier Order that represents the original item being purchased.

Create a refund order

A refund is sent to Loaded as an Order with the status of Refunded. Each item that is being refunded also has a settlementStatus of Refunded too. The unitPrice of the items remains positive representing what was originally paid for the items being refunded.

tip

Any Tenders that were processed are expected to have a negative invoiceAmount value to represent the money being returned to the customer.

Example

curl \
-X POST \
-d '{ "externalId": "refund:my-order-id-1", "createdAt": "2023-07-02T20:10:00Z", "completedAt": "2023-07-02T20:10:00Z", "status": "Refunded", "items": [ { "externalId": "my-espresso-item-id", "requestedTime": "2023-07-02T11:30:00Z", "quantity": 1, "unitPrice": 5, "unitTax": 0.65, "settlementStatus": "Refunded" } ], "tenders": [ { "externalId": "my-tender-id-5", "tenderedAt": "2023-07-02T20:10:00Z", "type": "Cash", "invoiceAmount": -5 } ] }' \
-H "Content-Type: application/json" \
-H '"Authorization=Bearer {token}"' \
https://api.loadedreports.com/v1/pos/orders
info

For a full worked example of a refund order see the Refund an order section of the Tutorial.