FNCY Chain
FNCY 2.0.2 (ENG)
FNCY 2.0.2 (ENG)
  • Introduction
  • Getting Started
  • Design
    • Structure
    • Three Main Sets of Participants
    • PoSA Consensus
    • Governance
    • Staking
    • Mining Reward
    • Gas Fee
    • Runtime Upgrade
    • Cross-Chain Bridge
    • Security
  • Build On FNCY Chain
    • RPC Endpoints
    • Testnet Faucet
    • Block Explorer
      • Token Listing
    • BEP20 Token
    • NFT
    • Validator Requirements
    • NFT Market
      • FNCY Marketplace
  • For Developers
    • JSON-RPC
    • FNCY Chain API
      • Wallet API
      • Transaction API
      • Blockchain API
    • Wallet
      • FNCY Wallet
      • Use MetaMask for FNCY Chain
      • SDK
        • Android
          • Install
          • Guide
            • Initialize
            • Create/Restore Wallet
            • Wallet Search
            • Execute SendCoin/Contract
            • Transaction Search
            • Other Features
          • Methods
          • Domain
          • ETC
        • iOS
          • Install
          • Guide
            • Initialize
            • Create/Restore Wallet
            • Wallet Search
            • Execute SendCoin/Contract
            • Transaction Search
            • Other Features
          • Methods
          • Domain
          • ETC
    • Smart Contract
      • Deployment
        • Truffle
        • Hardhat
        • Remix IDE
      • Verify Your Contract on FncyScan
    • Gasless Transaction
    • with FNCY
      • FNCY Login
      • GAME AUTH Login
  • Tokenomics
  • Ecosystem Partner
  • FNCY Governance Partner
Powered by GitBook
On this page
  • Steps
  • Search Gas Fee
  • Search Ticket Information
  • Transfer Coin
  • Transfer Token(Contract Execution)
  • WalletConnect
  • Create Ticket
  • Transfer Coin
  • Transfer Token(Contract Execution)
  • WalletConnect
  • Check Ticket Information
  • Transfer Ticket
  1. For Developers
  2. Wallet
  3. SDK
  4. Android
  5. Guide

Execute SendCoin/Contract

This document describes how to 'Send Coins' and 'Execute Smart Contract'.

PreviousWallet SearchNextTransaction Search

Steps

  1. Check Transaction Result

Search Gas Fee

Retreives the current network fee (gas fee) information for the network (blockchain) corresponding to the ChainID.

val gas = fncyWallet.(
    chainId = 3
)

See Also

Search Ticket Information

Before creating a ticket, it checks for transferability, nonce, gasLimit, etc.

There are three types of ticket transfers.

  • AssetTransfer : CoinTransfer

  • SmartContract : TokenTransfer & Contract Execution

  • WalletConnect : Used when connecting to WalletConnect

See Also

Transfer Coin

val info = fncyWallet.estimateTicket(
    walletId = 10000L, //Wallet ID
    chainId = 3L, // bsc: 1, eth: 2, fncy: 3
    signatureType = TicketType.AssetTransfer, 
    toAddress = "0x1234...", //Address to Receive Coins
    transferVal = "1000000000000000000".toBigInteger(), //Quantity to Send (in wei)
    txGasPrice = "10000000000".toBigInteger(), //Gas Price (in wei)
    assetId = 6L, //Transfer Asset's Asset ID
    maxPriorityPerGas = BigInteger.ZERO, //For ETH Transfers
    maxFeePerGas = BigInteger.ZERO //For ETH Transfers
)

Transfer Token(Contract Execution)

val info = fncyWallet.estimateTicket(
    walletId = 10000L, //Wallet ID
    chainId = 3L, // bsc: 1, eth: 2, fncy: 3
    signatureType = TicketType.SmartContract, //
    toAddress = "0x1234...", //Address to Receive Coins
    transferVal = "0".toBigInteger(), //Quantity to Send (in wei)
    txGasPrice = "10000000000".toBigInteger(), //Gas Price (in wei)
    contractAddress = "0x1234...", //Contract Address
    txInput = "0x123456....", //Data
    assetId = 6L, //Transfer Asset's Asset ID
    maxPriorityPerGas = BigInteger.ZERO, //For ETH Transfers
    maxFeePerGas = BigInteger.ZERO //For ETH Transfers
)

WalletConnect

val info = fncyWallet.estimateTicket(
    walletId = 10000L, //Wallet ID
    chainId = 3L, // bsc: 1, eth: 2, fncy: 3
    signatureType = TicketType.WalletConnect, //
    toAddress = "0x1234...", //Address to Receive Coins
    transferVal = "1000000000000000000".toBigInteger(), //Quantity to Send (in wei)
    txGasPrice: "10000000000".toBigInteger(), //Gas Price (in wei)
    contractAddress: "0x1234...", //Contract Address
    txInput: "0x123456....", //Data
    assetId: 6L, //Transfer Asset's Asset ID
    maxPriorityPerGas = BigInteger.ZERO, //For ETH Transfers
    maxFeePerGas = BigInteger.ZERO //For ETH Transfers
)

Create Ticket

Registers ticket (transaction information) in the server to send to the network, and reterieves the UUID information for that ticket.

See Also

Transfer Coin

val info = fncyWallet.makeTicket(
    walletId = 10000L, //Wallet ID
    chainId = 3L, // bsc: 1, eth: 2, fncy: 3
    signatureType = TicketType.AssetTransfer, 
    toAddress = "0x1234...", //Address to Receive Coinss
    transferVal = "1000000000000000000".toBigInteger(), //Quantity to Send (in wei)
    txGasPrice = "10000000000".toBigInteger(), //Gas Price (in wei)
    assetId = 6L, //Transfer Asset's Asset ID
    maxPriorityPerGas = BigInteger.ZERO, //For ETH Transfers
    maxFeePerGas = BigInteger.ZERO, //For ETH Transfers
    txGasLimit = "21000".toBigInteger() // Gas Limit
)

Transfer Token(Contract Execution)

val info = fncyWallet.makeTicket(
    walletId = 10000L, //Wallet ID
    chainId = 3L, // bsc: 1, eth: 2, fncy: 3
    signatureType = TicketType.SmartContract, 
    toAddress = "0x1234...", //Address to Receive Coins
    transferVal = "1000000000000000000".toBigInteger(), //Quantity to Send (in wei)
    txGasPrice = "10000000000".toBigInteger(), //Gas Price (in wei)
    contractAddress: "0x1234...", //Contract Address
    txInput: "0x123456....", //Data
    assetId = 6L, //Transfer Asset's Asset ID
    maxPriorityPerGas = BigInteger.ZERO, //For ETH Transfers
    maxFeePerGas = BigInteger.ZERO, //For ETH Transfers
    txGasLimit = "21000".toBigInteger() // Gas Limit
)

WalletConnect

val info = fncyWallet.makeTicket(
    walletId = 10000L, //Wallet ID
    chainId = 3L, // bsc: 1, eth: 2, fncy: 3
    signatureType = TicketType.WalletConnect, 
    toAddress = "0x1234...", //Address to Receive Coins
    transferVal = "1000000000000000000".toBigInteger(), //Quantity to Send (in wei)
    txGasPrice = "10000000000".toBigInteger(), //Gas Price (in wei)
    contractAddress: "0x1234...", //Contract Address
    txInput: "0x123456....", //Data
    assetId = 6L, //Transfer Asset's Asset ID
    maxPriorityPerGas = BigInteger.ZERO, //For ETH Transfers
    maxFeePerGas = BigInteger.ZERO, //For ETH Transfers
    txGasLimit = "21000".toBigInteger() // Gas Limit
)

Check Ticket Information

Use TicketUuid to get the ticket information corresponding to that Uuid.

val info = fncyWallet.getTicketInfo(
    ticketUuid = "ticketUuid", // Ticekt UUID
)

See Also

Transfer Ticket

Ticket transfer requests the actual execution of a transaction using the ticket information registered on the server.

If the ticket transfer is successful, the transaction history is permanently included in the blockchain and cannot be changed or canceled.

Passes the issued ticket UUID and wallet password to execute an actual transaction with that ticket information.

val result = fncyWallet.sendTicket(
    ticketUuids = "ticketUuid", // Ticekt UUID
    pinNumber = "000000" // Wallet Password
)

See Also

To learn how to request a ticket UUID, read .

Create a ticket
Search Gas Fee
Search Ticket information
Create Ticket
Transfer Ticket
TicketType
estimateTicket
makeTicket
getTicketInfo
sendTicket
getGasPrice
FncyGasPrice
FncyTicket
FncyTicketResult
FncyTicket