Create a Payout
Initiate a batch payout to multiple recipients using either PayID or BSB-enabled accounts. This API enables efficient bulk payment processing, allowing merchants to handle payouts to multiple recipients in a single request.
If a payout fails due to insufficient funds and the is_retry flag is set to true, the system will continue to attempt processing until sufficient funds become available, either through a balance top-up or new incoming payments.
Payment statuses:
- created: Payout created and pending further processing.
- processing: Payout has been topped up to the corresponding PayID and is currently being processed.
- scheduled: Waiting for funds to be debited from the payer’s account; the payout is scheduled but not yet executed.
- completed: Payout completed successfully for the entire batch. Note that individual transaction failures do not affect the completion status of the overall batch.
Important notes:
- If using a phone number as the PayID, prefix it with the country code, separated by a dash. For example:
+61-412345678. - PayIDs using email addresses must be in lowercase (e.g.,
johnwick@gmail.com). - Either
payidor bothbsbandaccount_numberare required. You cannot use bothpayidandbsb/account_numberin the same request for a single transaction.
Body
List of payout transaction details.
Scheduled date and time for the payout transaction. This date-time is in UTC.
"2024-01-01T10:00:00"
Brief description of the payout purpose.
5 - 140"Monthly payout for January"
URL that Hello Clever will invoke when the status of the transaction changes. The client must expose a TLS 1.2-secured endpoint with a certificate from a well-known commercial certificate authority. Self-signed or internally signed certificates are not accepted.
"https://merchant.example.com/payout_status_callback"
Indicates if the system should retry the payout in case of insufficient funds. Default is false. If set to true, the system will continue to try until the balance is sufficient, either through top-up or new payments.
true
A custom identifier provided by the merchant for tracking purposes.
"custom-payout-id-123"
Authorization header value for securing the callback request to the specified endpoint.
"Bearer your_secret_token"
Callbacks
POST{$request.body#/endpoint_url}payoutCallback
Body
PayoutObject
A unique identifier assigned to the payout payment, used for tracking and referencing purposes within the system.
12345
A unique UUID assigned to the payout payment, providing a globally unique reference for the transaction.
"550e8400-e29b-41d4-a716-446655440000"
A description of the payout payment, providing context or additional information such as the purpose of the payout.
"Payout for invoice #12345"
The PayID used for topping up the payout payment, allowing for easy routing of funds to the correct recipient.
"sample@payid.com"
The total amount of all transactions included in the payout, providing the complete value being paid out.
"1000.00"
The total amount that has been refunded to the payee, if applicable.
"100.00"
The total number of transactions within the payout that failed to complete successfully.
"2"
The date and time when the payout transaction is scheduled to occur, expressed in UTC.
"2024-12-31T23:59:59Z"
The current status of the payout payment. Possible values include:
created: The payout has been created but not yet processed.processing: The payout is currently being processed.scheduled: The payout is scheduled for a future date.completed: The payout has been completed successfully.expired: The payout has expired.
created, processing, scheduled, completed, expired "processing"
A URL for downloading an attachment related to the payout payment, such as a receipt or transaction details.
"https://example.com/download/payout_attachment"
Details regarding the merchant callback settings for payout status updates, including the endpoint URL and authorization header.
An error code associated with the payout, indicating any issues that occurred during processing.
"HC_PAYOUT1"
A description of the error encountered during the payout process, providing context for troubleshooting.
"Insufficient funds to payout. Please top up balance in the dashboard."
Indicates whether the payout is being retried after a previous failure.
false
A custom identifier for the payout, provided by the merchant for tracking and reference purposes.
"custom-payout-id-6789"
A list of individual transactions that are part of the payout, including details such as payee information and transaction status.
Response
Callback received successfully
Response
Payout batch created successfully.
A unique identifier assigned to the payout payment, used for tracking and referencing purposes within the system.
12345
A unique UUID assigned to the payout payment, providing a globally unique reference for the transaction.
"550e8400-e29b-41d4-a716-446655440000"
A description of the payout payment, providing context or additional information such as the purpose of the payout.
"Payout for invoice #12345"
The PayID used for topping up the payout payment, allowing for easy routing of funds to the correct recipient.
"sample@payid.com"
The total amount of all transactions included in the payout, providing the complete value being paid out.
"1000.00"
The total amount that has been refunded to the payee, if applicable.
"100.00"
The total number of transactions within the payout that failed to complete successfully.
"2"
The date and time when the payout transaction is scheduled to occur, expressed in UTC.
"2024-12-31T23:59:59Z"
The current status of the payout payment. Possible values include:
created: The payout has been created but not yet processed.processing: The payout is currently being processed.scheduled: The payout is scheduled for a future date.completed: The payout has been completed successfully.expired: The payout has expired.
created, processing, scheduled, completed, expired "processing"
A URL for downloading an attachment related to the payout payment, such as a receipt or transaction details.
"https://example.com/download/payout_attachment"
Details regarding the merchant callback settings for payout status updates, including the endpoint URL and authorization header.
An error code associated with the payout, indicating any issues that occurred during processing.
"HC_PAYOUT1"
A description of the error encountered during the payout process, providing context for troubleshooting.
"Insufficient funds to payout. Please top up balance in the dashboard."
Indicates whether the payout is being retried after a previous failure.
false
A custom identifier for the payout, provided by the merchant for tracking and reference purposes.
"custom-payout-id-6789"
A list of individual transactions that are part of the payout, including details such as payee information and transaction status.