Skip to main content

Payouts

Send money to registered beneficiaries using supported payment rails. Generate a payout quote first to determine the applicable fees and exchange rate, then execute the payout using the valid quote.

Payout Quote

Generates a quote for a payout, including applicable fees and the FX rate when currency conversion is required.

{{baseUrl}}/hashdt/banking/api/v1/payouts/quote

Description

This API is used to calculate the expected payout cost before executing a payout. The quote includes applicable fees and, when the payout currency differs from the funding currency, the exchange rate and conversion details. The quote remains valid for approximately 75 seconds and should be used promptly for payout execution.

📩 Request Headers

x-api-key string required

Shared X-API key

x-product-id string required

Shared Product ID

x-request-id string required

Idempotency key for request tracking

x-user-id string required

User identification key

Content-Type string required

Must be application/json

Authorization string required

Bearer access token

📦 Request Body

companyCode string required

Shared Company Code.

beneficiaryId string required

Unique identifier of the registered beneficiary receiving the payout.

destinationRail string required

Payment rail used to deliver the payout to the beneficiary.

sourceAssetCode string required

Currency or asset code from which the payout amount is funded.

destinationAssetCode string

Currency or asset code in which the beneficiary receives the payout.

sourceAccountId string required

Identifier of the source account from which the payout is funded, when applicable.

amount double required

Amount to be used for the payout.

side string required

Specifies whether the amount represents the source amount or the destination amount. Allowed values: SOURCE or TARGET.

Request Example

curl --location --request POST \
--url '{{baseUrl}}/hashdt/banking/api/v1/payouts/quote' \
--header 'x-api-key: {{Shared X-API key}}' \
--header 'x-product-id: {{Shared ProductID}}' \
--header 'x-request-id: {{IdempotencyKey}}' \
--header 'x-user-id: {{UserID}}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{AccessToken}}' \
--data '{
"companyCode": "{{Shared Company Code}}",
"beneficiaryId": "{{BeneficiaryID}}",
"destinationRail": "SWIFT",
"sourceAssetCode": "USD",
"sourceAccountId": "ACC_1234567890",
"amount": 10,
"side": "SOURCE"
}'

Response Example

{
"code": 200,
"status": "SUCCESS",
"message": "Success",
"data": {
"quoteId": "7dbf1ca7-7c44-4cbf-b806-169a8bdbc9e3",
"sourceAssetCode": "USD",
"destinationAssetCode": "USD",
"sourceAmount": 10,
"destinationAmount": 10,
"fxRate": 1,
"processingFee": null,
"networkFee": null,
"feeAssetCode": "USD",
"platformFee": 36.00000,
"totalDebitAmount": 46.00000,
"expiresAt": "2026-08-25T07:38:29.323014969Z"
}
}

Create Payout

Executes a payout to a registered beneficiary.

{{baseUrl}}/hashdt/banking/api/v1/payouts

Description

This API is used to initiate a payout to a registered beneficiary. A successful request returns 202 Accepted, indicating that the payout has been accepted for processing but is not yet settled. Use the returned payoutId with the Payout Status API to track the payout outcome.

📩 Request Headers

x-api-key string required

Shared X-API key

x-product-id string required

Shared Product ID

x-request-id string required

Idempotency key for request tracking

x-user-id string required

User identification key

Content-Type string required

Must be application/json

Authorization string required

Bearer access token

📦 Request Body

companyCode string required

Shared Company Code.

quoteId string required

Identifier of the previously generated and valid payout quote to be used for the payout.

purposeCode string required

Purpose of the payout. Must be one of:
- AUDIO_VISUAL_SERVICES - Audiovisual services.
- BILL_PAYMENT - Bill payment.
- BUSINESS_EXPENSES - Business expenses.
- CONSTRUCTION - Construction.
- DONATION_CHARITABLE_CONTRIBUTION - Donation/charitable contribution.
- EDUCATION_TRAINING - Education/training.
- FAMILY_SUPPORT - Family support.
- FREIGHT - Freight.
- GOODS_PURCHASED - Goods purchased.
- INVESTMENT_CAPITAL - Investment capital.
- INVESTMENT_PROCEEDS - Investment proceeds.
- LIVING_EXPENSES - Living expenses.
- LOAN_CREDIT_REPAYMENT - Loan/credit repayment.
- MEDICAL_SERVICES - Medical services.
- PENSION - Pension.
- PERSONAL_REMITTANCE - Personal remittance.
- PROFESSIONAL_BUSINESS_SERVICES - Professional/business services.
- REAL_ESTATE - Real estate.
- TAXES - Taxes.
- TECHNICAL_SERVICES - Technical services.
- TRANSFER_TO_OWN_ACCOUNT - Transfer to own account.
- TRAVEL - Travel.
- WAGES_SALARY - Wages/salary.

reference string

Bank payment reference displayed in the beneficiary's bank transaction records. Sent to the recipient (e.g. For Further Credit, For Benefit of, or a custom message).

clientReference string

Optional reference.

Request Example

curl --location --request POST \
--url '{{baseUrl}}/hashdt/banking/api/v1/payouts' \
--header 'x-api-key: {{Shared X-API key}}' \
--header 'x-product-id: {{Shared ProductID}}' \
--header 'x-request-id: {{IdempotencyKey}}' \
--header 'x-user-id: {{UserID}}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{AccessToken}}' \
--data '{
"companyCode": "{{Shared Company Code}}",
"quoteId": "payout-quote-id",
"purposeCode": "PERSONAL_REMITTANCE",
"reference": "PAYOUT-20260819-001",
"clientReference": "ORDER-001"
}'

Response Example

{
"code": 202,
"status": "SUCCESS",
"message": "Accepted",
"data": {
"payoutId": "7f2a7c91-3d64-4b18-9e52-71c5a8d04f36",
"externalReference": "c1e9b472-6a35-4d87-bf20-93e5c7a14862",
"status": "PENDING"
}
}

Payout Status

Retrieves the current details of an initiated payout.

{{baseUrl}}/hashdt/banking/api/v1/payouts/:payoutID

Description

This API is used to retrieve the latest information for a payout using its payoutID. The response provides the payout details and its current processing information.

🔗 Path Parameters

payoutID string required

Unique identifier for payout.

📩 Request Headers

x-api-key string required

Shared X-API key

x-product-id string required

Shared Product ID

x-request-id string required

Idempotency key for request tracking

x-user-id string required

User identification key

Content-Type string required

Must be application/json

Authorization string required

Bearer access token

Request Example

curl --location --request GET \
--url '{{baseUrl}}/hashdt/banking/api/v1/payouts/:payoutID' \
--header 'x-api-key: {{Shared X-API key}}' \
--header 'x-product-id: {{Shared ProductID}}' \
--header 'x-request-id: {{IdempotencyKey}}' \
--header 'x-user-id: {{UserID}}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{AccessToken}}'

Response Example

{
"code": 200,
"status": "SUCCESS",
"message": "Success",
"data": {
"payoutId": "7f2a7c91-3d64-4b18-9e52-71c5a8d04f36",
"externalReference": "c1e9b472-6a35-4d87-bf20-93e5c7a14862",
"status": "PENDING"
}
}