Create a Refund associated with an existing Purchase.


POST https://<environment><purchase_id>/refunds

Variable nameDescriptionPossible values
<environment>The Catch environment in which you’re making the request.See Authentication.
<purchase_id>The Catch-provided unique identifier for a given purchase.See POST Purchase where the id (string) gets created.

Top Level Parameters

The POST Refund request includes four top-level parameters:

Parameter NameNecessityFormatDescription
refund_amountrequiredobjectThe total amount being refunded.
merchant_refund_idrequiredstringThe ID of this refund in the merchant's system which Catch will store for reporting purposes.

Note: This value must be unique per refund request.
itemsrequiredarrayThe item(s) involved in the refund.
appeasement_detailsoptionalobjectIf the refund includes an appeasement, provide details about the appeasement amount.

Refund Amount object

Parameter nameNecessityFormatDescription
amountrequiredintegerMust be less than or equal to the original total specified on the checkout.
currencyrequiredstring (ISO 4217)The currency in which the amounts are represented.

Items array

Parameter nameNecessityFormatDescription
namerequiredstringThe name of the item.
skurequiredstringThe SKU of the item.
pricerequiredobjectThe price of item.
quantityrequiredintegerThe quantity of the item.

Price object

Parameter nameNecessityFormatDescription
amountrequiredintegerThe unit price of the item.
currencyrequiredstring (ISO 4217)The currency that the price of the item is in.

Appeasement Details object

Parameter NameNecessityFormatDescription
total_amount optionalobjectWithin appeasement_details, Contains details on total appeasement amount and currency

Total Amount Object

Total Amount object

Parameter NameNecessityFormatDescription
amountoptionalintegerThe sum of all appeasements, in cents.
currencyoptionalstring (ISO 4217)The currency in which the amounts are represented.

Example request

    "refund_amount": {
    "merchant_refund_id": "rKBzEQPLc8J-3375760",
    "items":    [ {
    "appeasement_details": {
                "total_amount": {
                    "amount": 0,
                    "currency": "USD"

Example response

idstringCatch-provided unique identifier for a particular refund request.
201 Created