All Collections
Australia Help Articles
Transactions - Payments & Payment Requests
[AU] Integrating Direct Debit via Unassigned Agreements
[AU] Integrating Direct Debit via Unassigned Agreements

A high-level guide to integrating our Unassigned Agreements to support your direct debit requirements.

Updated over a week ago

Note: This article is relevant to merchants integrating with Zepto in Australia.

Utilising Open Banking technology, Zepto is able to provide a direct debit solution that can be utilised like credit card processing.  With visibility over a customers bank account, Zepto can process and report on transactions in real-time, allowing merchants to effectively structure business rules.  

We deliver our Unassigned Agreements via an iFrame that can be easily customised and embedded in your application.

The following high-level integration scope is suggested for the following use cases: 

  • Recurring payment schedules 

  • E-commerce platforms for repeat purchases

  • Applications that store customer profiles and offer payment method options

  • Variable one-off payments to the same customer

  • Variable recurring payments to the same customer

Sample businesses: Marketplace platforms, lending platforms, e-commerce, collections, invoice financing, payment plan providers.

Direct debit using Zepto is a 2 step process:

  1. Step 1: Have an Agreement authorised by the customer effectively 'on-boarding' them into Zepto. 

  2. Step 2: Issue Payment Requests as per the customer payment schedule. 

Embed our agreements iframe within a registration form, application, check-out page, or customer profile. This is a 1-time process that accomplishes the following: 

  • Acceptance of DDR and DDRSA with Zepto on behalf of your company for ongoing repayments

  • Captures BSB and Account number with 100% data accuracy

  • Establishes an ongoing bank connection with the customer enabling available funds pre-check

  • Creates an Agreement and Contact within Zepto to whom your application can submit Payment Requests to

Optional: Add limits to the agreement that will mirror the repayment schedule the customer has agreed to, such as, max and min amounts for a single debit, as well as the total amount that can be debited over time.Leaving the limits blank puts no restrictions on Payment Request amounts.

Developer Pro-tips: for more information on our unassigned agreements and how to implement them, please refer to our help guide article:

Direct Debits are created through our Payment Requests. Create a new Payment Request each time you want to Direct Debit your customer.

If you need to Direct Debit your customer on a recurring basis, you will need to create a scheduler within your application that creates a Payment Request via our API each time a payment is due.

You can submit Payment Requests in real-time and up until the 19:05 pm cut off time for same-day processing. You can also submit Payment Requests prior to the due date by setting the ‘maturation date’ to reflect when you would like the payment to be processed. 

Available balance checks: These are all performed by our system and the status of the transaction will be delivered to you via webhooks. In the event that a customer has insufficient funds, you will receive a status of Prefail. The Payment Request will remain in the Prefail state until either voided or retried.

Developer Pro-tips: For more information on our available funds pre-check and how to manage pre-fails please see the following article: 


Need a helping hand? From technical questions to integration strategy and support we are here for you 9 to 5, Monday to Friday. We’re also happy to schedule a call to help you plan your integration.

The easiest way to get in touch with us is via in-app messaging. When you log in to your sandbox or production account, click on the chat bubble on the bottom-right side of the screen. Alternatively, you can send us an email at and we’ll get right back to you.

Did this answer your question?