This webhook is currently available through the Zip Custom Integration API.

Order Status Callback

The order status callback webhook is triggered whenever any updates are made to the status of an order. These statuses are defined as: Approved, Abandoned, or Declined.

You may want to integrate this webhook if you need more direct insight in to the status of an order without having to poll our api for updates.

In order to receive this webhook a StatusCallbackUrl must be provided during the creation of the order. This endpoint must have a secured HTTPS URI.

Refer to the Create Order documentation.

curl -X post https://api.quadpay.com/order
  -H 'content-type: application/json' 
  -H 'authorization: Bearer [access_token]'
  -d '{
  "amount": 105.00,
  "consumer": {
    "phoneNumber": "9175551234",
    "givenNames": "Alycia",
    "surname": "Washington",
    "email": "[email protected]"
  },
  "merchant": {
    "redirectConfirmUrl": "https://merchantsite.com/confirm",
    "redirectCancelUrl": "https://merchantsite.com/cancel",
    "statusCallbackUrl": "https://merchantsite.com/status"
  },
  "merchantReference": "order-98765",
  "taxAmount": 0,
  "shippingAmount": 5
}'

Once the status of an order has changed, a HTTPS POST request will be made to the endpoint provided. The payload of that request will be the entire Order object. This endpoint must respond with a 200 response code within 10 seconds or the webhook request will be retried up to 20 times with an exponential backoff.
Please ensure that any operations that occur from this webhook are idempotent.

{
  "orderId": "8eb068f..",
  "orderStatus": "Approved",
  "amount": 105,
  "consumer": {
    "phoneNumber": "9175551234",
    "givenNames": "Alycia",
    "surname": "Washington",
    "email": "[email protected]"
  },
  "merchant": {
    "redirectConfirmUrl": "https://merchantsite.com/confirm",
    "redirectCancelUrl": "https://merchantsite.com/cancel",
    "statusCallbackUrl": "https://merchantsite.com/status"
  },
  "merchantReference": "order-98765",
  "taxAmount": 0,
  "shippingAmount": 5,
  "token": "1eea52..."
}