Create an Internal Transfer Request

This endpoint allows a merchant to transfer funds between two wallets owned by the same merchant within the Tylt ecosystem.

Internal transfers are processed as ledger movements within Tylt and do not involve any on-chain blockchain transaction.

Endpoint

POSThttps://api.tylt.money/transactions/merchant/transferMerchantBalance

Name
Type
Example
Description

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.

circle-info

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

fromUUID

string

Unique identifier of the source wallet (debited wallet)

toUUID

string

Unique identifier of the destination wallet (credited wallet)

settledAmount

string

Amount to be transferred between wallets

settledCurrency

string

Currency of transfer (e.g., USDT, USDC)

comments

string

Optional remarks or internal reference for reconciliation

Code Snippet

import axios from "axios";
import crypto from "crypto";

const apiKey = "your-api-key";
const apiSecret = "your-api-secret";

function createSignature(apiSecret, bodyString) {
    return crypto
        .createHmac("sha256", apiSecret)
        .update(bodyString)
        .digest("hex");
}

const transferMerchantBalanceData = {
    fromUUID: "ybht35h-2a33-11f0-b2d9-42010a28011c",
    toUUID: "bkhe4tt-33cc-11f0-b2d9-42010a28011c",
    settledAmount: 2,
    settledCurrency: "USDT",
    comments: "",
};

try {
    const signature = createSignature(
        apiSecret,
        JSON.stringify(transferMerchantBalanceData),
    );
    console.log("Generated signature: ", signature);

    const apiDomain = "https://api.tylt.money/transactions/merchant";
    const res1 = await axios.request({
        method: "POST",
        url: `${apiDomain}/transferMerchantBalance`,
        headers: {
            "Content-Type": "application/json",
            "X-TLP-APIKEY": apiKey,
            "X-TLP-SIGNATURE": signature,
        },
        data: transferMerchantBalanceData,
    });

    console.log(`Response: ${JSON.stringify(res1.data)}`);
} catch (error) {
    console.log(error);
}

Response

Last updated