POST /checkouts

POST /checkouts

A /checkouts request signifies a new transaction via zip. It allows you to initiate a purchase transaction and obtain the URL you need to generate the QR code that should be displayed on the terminal.

API Endpoint:
Sandbox: https://api.sand.au.edge.zip.co/checkouts
Production: https://api.prod.au.edge.zip.co/checkouts

Sample API Request

{ 
   "media":{ 
      "include_qr_code":true
   },
   "originator":{ 
      "location_id":"5000",
      "device_ref_code":"123123",
      "staff_actor":{ 
         "ref_code":"123123",
         "name":"123123"
      }
   },
   "order":{ 
      "id":"2740CDE8-9560-4BC3-9DF3-11989AF6120B",
      "currency":"aud",
      "shipping":null,
      "amount":"18",
      "updated":null,
      "selected_shipping_methods":null,
      "items":[ 
         { 
            "amount":"18.00",
            "quantity":1,
            "product_code":"ABC123",
            "sku":"ABC123",
            "description":null,
            "type":"sku",
            "name":"Cool Lego man"
         }
      ],
      "reference":"123-P1233"
   },
   "reference":"5000",
   "type":"standard"
}
{
    "id": "15b46c71-ba69-4680-b1e4-ae098a91c55a",
    "order": {
        "reference": "123-P1233",
        "amount": "18",
        "currency": "aud",
        "created": 0,
        "id": "2740CDE8-9560-4BC3-9DF3-11989AF6120B",
        "items": [
            {
                "name": "Cool Lego man",
                "amount": "18.00",
                "sku": "ABC123",
                "quantity": 1,
                "type": "sku",
                "product_code": "ABC123"
            }
        ],
        "metadata": {}
    },
    "status": "new",
    "metadata": {
        "partner": "Platform name"
    },
    "media": {
        "include_qr_code": true,
        "qr_code": "https://api.sand.au.edge.zip.co/checkouts/15b46c71-ba69-4680-b1e4-ae098a91c55a"
    },
    "_links": {
        "checkout": {
            "href": "https://api.sand.au.edge.zip.co/checkouts/15b46c71-ba69-4680-b1e4-ae098a91c55a"
        }
    }
}

Partner Identifier

❗️

Partner Identifier

This field is mandatory for channel partners (generally with possibly large numbers of merchants using the same integration).

As a part of all in-store channel partner certifications, Zip require a piece of metadata to be sent in all requests that identifies the 'Platform' that is processing a transaction.

This is simply passed in all POST /checkouts requests inside the payload within the 'metadata' object.

Below is an isolated example:

"metadata": {
    "partner": "Example Channel Partner"
}