To process a refund you will need to make a request to the [/refund](🔗) endpoint. This request is made using the 'receipt_number' returned by Zip in your [/purchaserequests](🔗) API call.
The request endpoint will include the id returned in the original POST /purchaserequests call to identify the order for which we are refunding. An example of this is as below:
This API call will contain:
A unique refund reference
Amount
Store location information
The Zip API success response will contain no body.
This /refunds API call should be made from your server and not directly from the client front end. Generally this is triggered from your order management system. <br>

## Amount and order reference
The total amount to be paid via Zip should be passed in your request as the 'payAmount'. This value will be deducted from the customers available funds.
Your transaction reference for the payment should be passed as 'refCode' . This should be the reference that you would like to appear on your Zip Disbursement Report.
An example of passing these is below:
## Store location information
Each order must identify:
The transacting store
The staff reference
The device reference
The store 'Location ID' is a value provided by the Zip team for each store location.
The staff and device references are your own references for each and need not be communicated to Zip. These will simply be used to assist in troubleshooting any issues in the order logs:
This can be passed as below:
## The full request
An example payload can be found below: