Payments tokenisation

Plugin icon

Web checkout API

Payments tokenisation

Give your shoppers the option to pay with Zip on your web platform with our web checkout solution.

Tokenisation is a powerful feature that allows a Zip partner to retain a 'Token' that can be used to perform:

  • Automated subscription charges
  • Streamlined web checkout charges

There are several flows associated with this functionality that allow the customer to approve the features use for a given period of time.

The most common scenario for the use of this feature is for subscription services that charge customers on a scheduled basis.

📘

Available in Australia Only

This is not a feature that is currently globally available.


📘

Adding Zip from payment settings

Zip support a $0 checkout amount in the /checkouts request payload to trigger a 'linking only' login flow for customers. This should be used when customers are adding Zip from payment settings on as part of your onboarding flow, when no immediate payment amount is involved in the customer experience.



A token links a specific Zip customer account to your merchant account, meaning this token can be stored against the customer record and used in place of a checkout_id to make [/charges](/reference/create-charges) API calls.

This allows /charges to be placed against that customer account with no further interaction from the customer themselves.

To create the initial token you will first have had to make your /checkouts API call, being sure to include the below tokenisation feature flag (without this the checkout_id will no work to create a token).

"features": {
    "tokenisation": {
        "required": true
    }
}

If you wish to create a token and there is not initial amount being charged to the customer, make your /checkouts API call with a $0 order amount

{
    "order": {
        "currency": "AUD",
        "amount": "0",
        "reference": "{customer reference}"
    }
}

The /tokens API call will contain:

  • Authority Type
  • Value

The Zip API response will contain:

  • Token Id - a unique reference for your token
  • Token value - the actual token to be used for processing /charges
  • Token active status - true or false
  • Created date

This /charges API call should be made from your server and not directly from the client front end.

The below shows the full token creation flow (including checkout approval and initial charges):

The below shows the flow for subsequent charges using the token:

Authority

Zip require an authority to create a token. This will be:

  • The checkout Id obtained from the first API call to Zip

Here is an example of how this information can be passed:

"authority": {
    "type": "checkout_id",
    "value": "au-co_xxxxxxxxxxxxxxxxxxx"
}

The full request

An example payload can be found below:

{
  "authority": {
    "type": "checkout_id",
    "value": "au-co_xxxxxxxxxxxxxxxxx"
  }
}

With a successful response from Zip, you have now created your token! You can now use this to process /charges.