Wallet Accounts

Learn about user wallet accounts with Zai.

Overview

User wallet accounts serve as a holding account for receiving payments within your platform. Any amount being paid out to a seller in Zai will pass through the main wallet account of that seller. They have a one-to-one relationship with a user, and each user has a main wallet account that's generated by default. Main wallet accounts can also be used as a payment source should your platform workflow require this.

To comply with regulatory requirements, funds received would ordinarily transition through user wallets quite rapidly, often exiting the Zai ecosystem within minutes or hours of their entry. Approved customers are able to hold such funds with Zai for as long as they're a customer, using a stored value account.
This capability supports many different use cases, some of which may also benefit from our optional stored value, sub-wallet accounts feature.

Contact Zai support if you want to manually payout funds, and by implication, allow the wallet account to be used as a payment funding source.

Terminology used

The following terminology is used throughout this guide:

  • Platform​ refers to you as a Zai customer, or your website, application, marketplace, etc.
  • User​ refers to your customer who has a User record in Zai.
  • Item​ is the mechanism for moving funds between users in the API.
  • Payin​ is money being paid into the Zai ecosystem from a bank account.
  • Payout​ is money being paid out of the Zai ecosystem to a bank account.
  • Card account is an account attached to a user that contains a token linked to card details.

Prerequisites

As a prerequisite to using the wallet APIs, please ensure that you have:

  • implemented and migrated over to our OAuth authentication framework.
  • implemented and migrated over to our webhook APIs.

Payin capabilities

You can directly fund your user’s main wallet accounts using:

📘

Please note

Zai only supports using a bank account as a source for funds to be added to a wallet account. If paying using direct debit, a bank account and direct debit authority needs to exist before depositing funds.

Card payments

Subject to Zai approval, you can also arrange to accept online, card-not-present (CNP) payments. Refer to the Cards Payin Workflow for API steps and details on how to enable users / cardholders to purchase goods and/or services using a Visa, Mastercard or American Express card.

Payout capabilities

Use Withdraw Funds to withdraw funds from a wallet account. Funds can be withdrawn from a wallet account by specifying which account the funds should be paid out to and the amount (in cents). Zai supports using a bank account as a payout destination. The full or partial balance can be withdrawn and disbursed to the bank account associated with the user.

Your users can use their funds to facilitate a payout from their wallet and send the funds via their nominated bank accounts in real-time (NPP) or direct credit processing.

📘

Please note

The bank account needs to be linked to the user before attempting a withdrawal of funds.

BPAY

The balance held in a wallet can be used to fund a BPAY payment to a nominated BPAY Biller using the Pay a Bill API. See the BPAY Payout Workflow guide for more details.

Make payments using a wallet account

When making a payment within your platform, the ID of the wallet simply needs to be passed through to Make Payment. Note that this requires the wallet to have a sufficient amount of funds available.


Did this page help you?