Pull via Subscriptions App
Pull payments via Subscriptions App
Use the Subscriptions App when you want to collect customer-authorised payments directly from a customer’s bank account using PayTo.
The Subscriptions App supports two main agreement-based collection models:
- Subscription
- Pay & Subscribe
Establish a PayTo agreement for once-off or recurring collections.
Collect an upfront payment now and set up recurring payments for later.
Choose the right PayTo model
| Payment model | Best for | Key behaviour |
|---|---|---|
| Subscription | Once-off or recurring authorised collections | Customer sets up a PayTo agreement that can be used for one-off or repeat payments |
| Pay & Subscribe | Upfront payment plus repeat payments | Customer makes an initial payment and also establishes an ongoing agreement |
Payment patterns
Subscription
Use the Subscription flow when you want to establish a PayTo agreement that can be used for either a once-off authorised payment or recurring collections.
Best for:
- subscriptions
- memberships
- instalment plans
- repeat service payments
- one-time authorised collections where a PayTo agreement is preferred
What to expect:
- the customer authorises a PayTo agreement
- the agreement can support either once-off or recurring payment collection depending on how it is configured
- the hosted UX supports agreement setup, review, and approval
- where enabled, passkeys can streamline the return payment experience
Configure it like this:
- create a
PaymentAgreementRequest - for a once-off agreement, set
agreementStartDateandagreementEndDateto the same date and useagreementFrequency=ADHOC - for a recurring agreement, set different
agreementStartDateandagreementEndDatevalues - set
agreementMaximumAmountwhere required for future recurring collections
Pay & Subscribe
Use Pay & Subscribe when you want to collect an initial payment now and also establish a recurring PayTo agreement for future payments.
Best for:
- subscription sign-up flows
- memberships with an upfront payment
- services that begin immediately and continue on a recurring basis
What to expect:
- the customer completes an upfront payment during checkout
- the customer also authorises an ongoing PayTo agreement
- the flow combines immediate collection with future recurring billing
Configure it like this:
- set
amountfor the payment collected immediately - include a
PaymentAgreementRequestfor future recurring payments - set the recurring
agreementFrequency - set
agreementMaximumAmountfor future recurring collections
Customer identification options
Customers can set up their PayTo agreement using either their PayID or their bank account details, depending on the payment flow and available configuration.
PayID
- suited to customers who prefer to identify their bank account using their PayID
- can simplify the agreement setup experience for returning or familiar users
BSB and account number
- suited to customers who prefer to use their bank account details directly
- supports agreement setup where bank account details are the preferred identifier
Regardless of how the customer identifies their account, the end result is the same: an authorised PayTo agreement ready for payment collection.
How it works
sequenceDiagram
participant MB as Merchant Backend
participant API as Azupay API
participant UX as Subscriptions App
participant BANK as Customer Bank
participant WH as Webhook Endpoint
MB->>API: Create Payment Agreement Request
API-->>MB: Return checkoutUrl / sessionUrl
MB->>UX: Redirect customer to hosted experience
UX->>BANK: Customer reviews and approves agreement
BANK-->>API: Agreement approved
API-->>WH: Send agreement status update
WH-->>MB: Mark agreement active
MB->>API: Initiate payment when required
API-->>WH: Send payment status update
WH-->>MB: Update billing / fulfilment workflow
What the customer sees
The hosted Subscriptions App guides the customer through the full agreement setup journey, including:
- entering their PayID or bank account details
- reviewing the payment or agreement terms
- approving the agreement in their banking environment
- seeing payment or agreement status updates in the hosted experience
Use the checkoutUrl
Once your Payment Agreement Request has been created, use the returned checkoutUrl or sessionUrl to direct the customer into the hosted Subscriptions App experience.
The hosted experience will:
- present the agreement or payment details to the customer
- guide them through the PayTo authorisation flow
- support subscription or Pay & Subscribe journeys depending on configuration
- return agreement and payment status updates through API responses and webhooks
Updated 1 day ago
