Create a Pay-out Instance
This endpoint allows you to create a new Pay-out ( USDT to INR) instance. Using this API the merchant can make a pay-out to their customer. The API is designed such that it can support a payout to a single beneficiary and also to multiple beneficiaries ( bulk payout).
Endpoint
POST
https://api.tylt.money/fiatPayout/h2h/create
Request Headers
X-TLP-APIKEY
string
93ee3c5e133697251b5362bcf9cc8532476785t8768075616f58d88
Your Tylt API Key, used to identify your account in API requests.
X-TLP-SIGNATURE
string
d0afef3853dfc8489c8b9affa5825171fdd7y7685675e4966a05f66ed2b3eaf9462b3c9c0
HMAC SHA-256 signature generated using the API Secret Key to secure the request.
When using the API, ensure to include your API Key and generate the signature for the request payload using your API Secret. The tables provided above contain example values for illustration purposes only. Please refer to the code snippets for detailed instructions on how to sign the request and generate the signature properly.
Request Body
Field Name
Type
Description
currency
string
Must be set to "INR" for INR payouts.
payoutRequests
Array of JSON Objects
An array of JSON objects, where each JSON object represents a payment request / transaction
beneficiary_name
string
The bank of the beneficiary as it appears on the bank account.
beneficiary_IFSC
string
The beneficiary bank IFSC Code.
beneficiary_account_number
string
The bank account number of the beneficiary. Please ensure that the Type is string to accommodate bank account numbers starting with 0.
amount
number
The amount that needs to be paid out to the beneficiary. Please ensure the amount field is set to a number data type and restricted to whole numbers only, with no decimal places allowed.
reference_id
string
A UUID used by the merchant to reference each payout request.
Keep in Mind
beneficiary_account_number
:Please ensure the data type is set to string, as bank account numbers that begin with 0 may be misinterpreted or truncated if stored as a number. Using a numeric data type can lead to errors or loss of critical digits—particularly for account numbers starting with zero.
amount
: Please ensure the amount field is set to a number data type and restricted to whole numbers only, with no decimal places allowed.
Code Snippet
const axios = require('axios');
const crypto = require('crypto');
// Replace with your API Key and Secret
const apiKey = 'your-api-key';
const apiSecret = 'your-api-secret';
// Request body
const requestBody = {
"currency": "INR",
"payoutRequests": [
{
"beneficiary_name": "Jon Doe",
"beneficiary_account_number": "001245728274589",
"beneficiary_IFSC": "IFSC000008",
"amount": 100,
"reference_id": "payoutid_12345"
},
{
"beneficiary_name": "Mary Jane",
"beneficiary_account_number": "001245788774589",
"beneficiary_IFSC": "IFSC000010",
"amount": 1000,
"reference_id": "payoutid_12346"
}
]
}
// Convert request body to JSON
const raw = JSON.stringify(requestBody);
// Function to create HMAC SHA-256 signature
const createSignature = (secret, data) => {
return crypto.createHmac('sha256', secret)
.update(data)
.digest('hex');
};
// Generate signature
const signature = createSignature(apiSecret, raw);
// Define headers
const headers = {
"X-TLP-APIKEY": apiKey,
"X-TLP-SIGNATURE": signature
};
// Send the request
axios.post('https://api.tylt.money/fiatPayout/h2h/create', raw, { headers })
.then(response => console.log("Success:", response.data))
.catch(error => console.error("Error:", error));
Response
{
"msg": "Fiat payout request created and submitted successfully",
"data": {
"requestId": "uuid",
"totalPayouts": "number",
"totalFiatAmount": "number",
"totalCryptoAmount": "number",
"fiatCurrencySymbol": "string",
"requestFileUrl": "string",
"status": "submitted"
}
}
Payout Instance Status IDs
How do I check the status of my Payout-Instance
The requestId
returned in the response can be used to query the status of the payout-instance.
How do I check the status of an individual payout request? The reference_id sent in the requestBody can be used to query the status of each individual payout- request.
created
Payout Instance created but not submitted for processing
submitted
Payout Instance submitted for processing
processing
Payout Instance is being processed. Each request within the instance is processed in queue
completed
Payout Instance processing is completed
failed
Failed to process the payout instance
deleted
Request deleted. Requests cannot be deleted once it is in "submitted" or "processing" state
Payout Request Status IDs
created
Payout request created
initiated
Payout request has been initiated and awaiting further processing
processing
Payout request is being processed. Transaction is currently in progress and being handled by the system.
pending
Payout request has completed processing and is awaiting status confirmation
completed
Payout request has completed processing successfully and the UTR confirmation is returned.
failed
Payout request could not be processed and the transaction failed.
deleted
Payout deleted
Last updated