stx_transferSip10Ft
Request a transfer of a SIP-010 fungible token to a specified recipient.
Method name
stx_transferSip10Ft
Leather builds a call to the token contract's transfer function and attaches its own post-condition: the sender sends exactly amount of asset. The request's postConditions and postConditionMode are not applied. The transfer carries no memo.
Parameters
recipient
Stacks c32-encoded address of the recipient
✅
string
asset
Fully qualified token identifier, as <contract address>.<contract name>::<token name>
✅
string
amount
Amount in the token's smallest unit
✅
number | string
address
Stacks address to send from. Defaults to the active account
❌
string
network
Network identifier
❌
string
fee
Transaction fee in microSTX
❌
number | string
nonce
Transaction nonce
❌
number | string
sponsored
Build a sponsored transaction
❌
boolean
Example request
try {
// Request an sBTC transfer
const response = await window.LeatherProvider.request("stx_transferSip10Ft", {
recipient: "SP3TB3AJ0XMZ9S6CGY2CQ6R06H1Z6DJQ1SH15ZP2H",
asset: "SM3VDXK3WZZSA84XXFKAFAF15NNZX32CTSG82JFQ4.sbtc-token::sbtc-token",
amount: "1000", // 1,000 sats (sBTC has 8 decimals)
});
console.log("Response:", response);
} catch (error) {
console.log("Request error:", error);
}Example Response
When the active account is a multisig policy, the transaction is proposed to the co-signers rather than broadcast. The result then carries status: "proposed" and a proposalId, and txid stays empty until the co-signers complete and broadcast it.
Was this helpful?