Zip
Zip offers flexible buy now, pay later services in both Australia and the US, with a range of products tailored to each market. In Australia, consumers can choose from Zip Pay, Zip Plus, and Zip Money, allowing them to customise their repayment schedule with weekly, two-weekly, or monthly options. In the US, Zip is available as Zip Pay in 4, which offers consumers the ability to pay in four interest-free instalments, with the first payment made upfront and the remaining spread over six weeks. After selecting Zip as their payment method, consumers are redirected to Zip’s website to sign into their account. This page provides detailed information on how to integrate all Zip products available in both Australia and the US.
Payment Method Properties
Available country codes | AU, US |
Processing (Presentation) currencies | AUD, USD |
Settlement currencies | AUD, USD |
Consumer currencies | AUD, USD |
Channel member tag | AU: zip US: zipus |
Scheme name in the settlement file | ZIP |
Minimum transaction amount | AUD 0.01, USD 35 |
Maximum transaction amount | AU: Zip Pay: Credit limit up to AUD 1,000 Zip Plus: Credit limit from AUD 2,000 to AUD 4,000 Zip Money: Credit limit up to AUD 50,000 US: Pay in 4: Up to USD 1,500 *Note: The approved credit limit depends on the user's eligibility. |
Session timeout | 168 hours 20 minutes (AU), 1 hour 10 minutes (US) |
Refund | Full Partial Multiple partial |
Refund Validity | No time limit on refund |
Chargeback | Yes |
Integration Type | Asynchronous |
Sandbox | PPRO-hosted |
Chargebacks
A consumer could dispute a transaction when they are unable to resolve the situation directly with the merchant. A consumer files a chargeback with Zip who subsequently submits a request to PPRO inquiring about the transaction. PPRO notifies the PSP/merchant to provide full details and supporting documents for dispute/complaint. The PSP/merchant is required to provide a response to PPRO within 10 business days. If the dispute is confirmed as a legitimate chargeback by Zip, the funds for the chargeback will then be deducted from one of PPRO’s next settlements. For more information see the Zip Chargebacks.
Transaction Flow
- The consumer goes to the merchant's checkout page and selects ZIP as the payment method.
- The merchant or Payment Service Provider (PSP) sends a ZIP transaction request to PPRO.
- PPRO creates a checkout request to ZIP.
- ZIP returns the checkout response and the redirect URL.
- PPRO returns the redirect URL to the ZIP payment page.
- The merchant/PSP forwards the redirect URL to the consumer.
- Consumers use their account credentials to login, or sign up for a new ZIP account.
- ZIP returns the application result to PPRO.
- PPRO creates a charge request and sends it to ZIP.
- ZIP returns the charge status to PPRO.
- PPRO forwards the charge status to the PSP or the merchant.
- The consumer is redirected back to the merchant's return URL.
Note
In Step 11 above, if the transaction status is unknown, PPRO sends a check status call to ZIP. ZIP then checks the status and returns the result.
Integration
Specific input parameters for the TRANSACTION call
Field Name | M/O/C | Type | Regex | Description |
---|---|---|---|---|
specin.phone | O | String | Standard phone number validation | The consumer’s phone number. For USD, the phone number will be auto-populated on Zip’s checkout page which will be used for receiving OTP. |
specin.billingaddrline1 | O | String | ^.{0,255}$ | Line 1 of the billing address. Recommended field to pass as it may help in investigation, if any dispute arises. |
specin.billingaddrline2 | O | String | ^.{0,255}$ | Line 2 of the billing address. |
specin.billingaddrcity | O | String | ^.{0,255}$` | City of the billing address. Recommended field to pass as it may help in investigation, if any dispute arises. |
specin.billingaddrstate | O | String | ^.{0,255}$` | State of the billing address. Recommended field to pass as it may help in investigation, if any dispute arises. |
specin.billingaddrpostalcde | O | String | ^.{0,255}$ | Postal code of the billing address. Recommended field to pass as it may help in investigation, if any dispute arises. |
specin.billingcntrycde | O | String | ^.{0,255}$ | Country of the billing address. Only ISO 3166 alpha-2 format is accepted. Recommended field to pass as it may help in investigation, if any dispute arises. |
specin.billingaddrfirstname | O | String | ^.{0,255}$ | First name of the billing address. Recommended field to pass as it may help in investigation, if any dispute arises. |
specin.billingaddrlastname | O | String | ^.{0,255}$ | Last name of the billing address. Recommended field to pass as it may help in investigation, if any dispute arises. |
specin.shippingpickup | O | Boolean | ^(false|true)$ | Accepted value is true or false: true = item is for for pickup false = item is for shipping If this parameter is not passed, the default that will be passed to Zip is 'false' unless the consumer chooses self pickup. |
specin.shippingaddrline1 | O | String | ^.{0,255}$ | Line 1 of the shipping address. Recommended field to pass as it may help in investigation, if any dispute arises. |
specin.shippingaddrline2 | O | String | ^.{0,255}$ | Line 2 of the shipping address. |
specin.shippingaddrcity | O | String | ^.{0,255}$ | City of the shipping address. Recommended field to pass as it may help in investigation, if any dispute arises. |
specin.shippingaddrstate | O | String | ^.{0,255}$ | State of the shipping address. Recommended field to pass as it may help in investigation, if any dispute arises |
specin.shippingaddrpostalcde | O | String | ^.{0,255}$ | Postal code of the shipping address. Recommended field to pass as it may help in investigation, if any dispute arises. |
specin.shippingcntrycde | O | String | ^.{0,255}$ | Country of the shipping address. Only ISO 3166 alpha-2 format is accepted. Recommended field to pass as it may help in investigation, if any dispute arises. |
transientin.orderitems | O | String | Stringified JSON array ^.{0,255}$ | An array of items in the customer's cart that is being purchased, where each item has the following attributes: name : the name of the item amount: the amount being paid for this item in major units quantity: the quantity of the item type - one of sku, tax, discount or shipping [{"name":"pen","amount":2.00,"quantity":1,"type":"sku"},{"name":"pencil","amount":1.00,"quantity":1,"type":"sku"}] Note: amounts should be in major units, accepted values for type are sku, tax, shipping and discount. Recommended field to pass as it may help in investigation, if any dispute arises. |
For standard input parameters, see Input parameters for the TRANSACTION call.
Specific output parameters for the TRANSACTION call
Field Name | Type | Description |
---|---|---|
SPECOUT.RECEIPTNUMBER | String | Zip transaction receipt number |
SPECOUT.PRODUCT | String | Zip product name e.g. ZipPay, ZipMoney3, ZipMoney6, ZipMoney12, ZipMoney24, ZipMoney36 |
SPECOUT.CUSTOMEREMAIL | String | Customer's email address |
SPECOUT.CUSTOMERFIRSTNAME | String | Customer's first name |
SPECOUT.CUSTOMERID | String | Zip customer details |
SPECOUT.CUSTOMERLASTNAME | String | Customer's last name/surname |
For standard output parameters, see Output parameters for the TRANSACTION call.
Specific input parameters for the REFUND call
The refunded amount is credited to the consumer’s Zip balance who paid for the original transaction.
Field Name | M/O/C | Type | Regex | Description |
---|---|---|---|---|
specin.refundreason | O | String | \* | The reason for the refund. If this parameter is not passed, the default that will be passed to Zip is refund. |
TRANSACTION call input
tag=zip
&txtype=TRANSACTION
&countrycode=AU
¤cy=AUD
&amount=350
&merchanttxid=sale1001
&login=clientlogin
&password=pass123
&contractid=ZIPLTD
&channel=livechannel
&merchantredirecturl=https%3A%2F%2Fwww.example.org%2Ffeedback.php
¬ificationurl=https%3A%2F%2Fwww.example.org%2Fnotification.php
&accountholdername=jon+dow
&specin.email=test.tester%40testing.com%0A
&specin.phone=0400000000
&specin.shopperfirstname=jon
&specin.shopperlastname=dow
&specin.shippingpickup=true
&specin.shippingaddrline1=535+Geelong+Road
&specin.shippingaddrcity=Brooklyn
&specin.shippingaddrpostalcde=3141
&specin.shippingaddrstate=VIC
&specin.shippingcntrycde=AU
&specin.billingaddrline1=10+Spring+Street
&specin.billingaddrcity=Sydney
&specin.billingaddrpostalcde=2000
&specin.billingaddrstate=NSW
&specin.billingcntrycde=AU
&specin.billingaddrfirstname=jon
&specin.billingaddrlastname=dow
&transientin.orderitems=%5B%7B%22name%22%3A%22pen%22%2C%22amount%22%3A3.50%2C%22quantity%22%3A1%2C%22type%22%3A%22sku%22%7D%5D&returnmode=urlencodeexttag=zip
22pen%22%2C%22amount%22%3A3.50%2C%22quantity%22%3A1%2C%22type%22%3A%22sku%22%7D%5D
&returnmode=urlencodeext
TRANSACTION call output
STATUS=SUCCEEDED
&TXID=123887123
&ERRMSG=
&CHANNEL=livechannel
&MERCHANTTXID=sale1001
&TAG=zip
&SPECOUT.RECEIPTNUMBER=174123075
&REDIRECTSECRET=dcn94nd2oud8eedhg38dkhed
&FUNDSSTATUS=WAITING
Test Data
For test consumer account credentials, click here.
Updated 3 months ago