Overview
Pay Out refers to a money-out transaction type where you send funds to your customer. Our payout system currently supports bank transfer to nearly 200 banks. View the full list here.
Process Flow
Understanding the lifecycle of a Pay Out helps you manage and track your transactions effectively. The diagram illustrates the state transitions of a Pay Out transaction, from creation to completion or failure.

Status | When does this status occur? |
---|---|
Pending | The Pay Out has been created via APIs and is in progress. Funds are being processed for disbursement. |
Success | The Pay Out has been successfully paid. Funds have been sent and received by the recipient. |
Failed | The Pay Out has failed. This could be due to incorrect recipient details, insufficient funds, or network errors. |
Getting Started
To create and track Pay Out transactions, refer to the API Reference. The documentation includes code samples, request parameters, and response examples for each state transition.
Key Features
The Pay Outs section in the Xenith Dashboard provides tools for managing and analyzing your outgoing transactions where you send funds to your customer:

-
Search: Locate specific transactions using Pay Out ID, Reference, Payment Method, and Payment Channel.
-
Filter: Narrow down results based on Currency, Requested Amount, Requested Date, Payment Method, Payment Channel, Payment Date, Payment Amount, and Status.
-
Sort: Organize transactions in ASC or DESC value.
-
Export: Download transaction data as a CSV file for custom reporting and analysis (up to 6 months per export). You can export your Pay Ins transaction with these following steps:
- Export: Click "Download CSV" in the top-right corner.
- Set Period: Enter desired transaction period (max 6 months).
- Receive File: The CSV file will be sent to your email.
- Download: Check your email (including spam) for the file.
-
Failure Reason: When a Pay Out transaction fails, you can view the failure reason through two methods:
-
Viewing Failure Reason in the Dashboard
- Navigate to the Transaction Listing Page.
- Select the specific transaction to open the Details Page.
- The failure reason will be displayed in the Transaction Timeline section.
-
Viewing Failure Reason in the Webhook Payload
For integration purposes, the failure reason is included in the webhook payload sent to your system. Below is an example payload for a failed Pay Out transaction:{ "schemaVersion": "1.0.1", "timestamp": "2024-12-18T04:17:20.817876392Z", "data": { "id": "pyout-01JFBZNKQ2AES6CYCWMSK7HTVB", "initiatedAmount": "10000", "sentAmount": "10000", "feeAmount": "6500", "currency": "IDR", "destinationPayoutChannel": "CENAIDJA", "destinationPayoutMethod": "BANK_TRANSFER", "referenceCode": "referenceCode - 1716098555", "customerReference": "test-customerReference-123", "status": "FAILED", "createdTime": "2024-12-18T04:15:58.718498Z", "updatedTime": "2024-12-18T04:17:20.556645298Z", "description": "Sending Money-1716098555", "errorCode": "INVALID_ACCOUNT_NAME", "errorMessage": "Account name mismatch: The provided bank account name is 'Testing Name', but the bank records show 'JONATHAN HAMONANGAN SILA'." } }
-
The system automatically refreshes data with every key action. However, to ensure youโre viewing the latest Pay In data, please manually refresh your browser to update any recent transactions. The refresh will retain any search, filter, and sort settings youโve applied, allowing you to continue working seamlessly.
Updated 4 months ago