Smartlink Applications
  • ESCROW PAYMENT GATEWAY
    • Buyer's Guide
      • Onboarding with Smartlink
      • Step-by-Step Buying Guide
      • Buyer transaction Status
      • Why Choose Smartlink?
      • Advantages for Buyers
    • Merchant's Guide
      • Merchant Onboarding
      • Step-by-Step Merchant Guide
      • Configure Your Payment Gateway
      • Single Payment Button & Link
      • Why Choose Smartlink?
      • Merchant transaction Status
      • Advantages for Merchants
    • Key features
      • Profile Management
      • User Dashboard
      • Merchant Dashboard
      • Referral Affiliation program
  • smartlink marketplace
    • Connect your wallet
    • List an item
    • Escrow Payment
    • Message sellers
    • Add to Favorites
  • Token Locker
    • What is Smartlink Locker?
    • Connect your wallet
    • Create a vesting contract
    • My Vesting Contracts
    • How to claim my tokens?
    • How to revoke a contract?
    • FAQs
  • FOR THIRD PARTIES (Tezos)
    • Start Transaction (Token)
    • Start Transaction (XTZ)
    • Cancel transaction
    • Confirm transaction
  • FOR THIRD PARTIES (ETH)
    • Start Transaction (Token)
    • Start Transaction (ETH)
    • Cancel transaction
    • Confirm transaction
    • Get All Stored Transactions
  • Links
    • Audit
    • Website
    • Github
  • Staking, LP & Farm SMAK
    • 🛠 LP & FARMS Contracts ⚙️
    • Unstake SMAK from old staking
Powered by GitBook
On this page
  1. FOR THIRD PARTIES (ETH)

Start Transaction (ETH)

Start Transaction (Ether)

To start a transaction with a native token, there is no need to allow the Escrow contract to spend a certain amount. The user just has to send the total (price+fees) with the transaction.

In this example we have an ad with the following information:

  • Marketplace id : marketplaceId1

  • Ad id : adId2

  • Price of the ad (excluding fees) : 2 ETH

  • Seller's address : 0x70997970C51812dc3A010C7d01b50e0d17dc79C8

The fees for this token is 2%, the user must send the total amount (price+fees) which is : 2*1,02 = 2,04 ETH

//New transaction
await escrow.startTransaction(
    "marketplaceId1", //Marketplace id
    "adId2", //Ad id
    ethers.utils.parseEther("2"), //Ad price
    "0x0000000000000000000000000000000000000000", //ETH address
    "0x70997970C51812dc3A010C7d01b50e0d17dc79C8", //Seller's address
    {
      value: ethers.utils.parseEther("2.04"), //Price+fees in ETH
    }
);

Even if it's an ETH transaction you must specify a token address that matches the ETH address in the whitelist : 0x0000000000000000000000000000000000000000Nothing is sent/received on this address, it's used internally for mapping purposes.

PreviousStart Transaction (Token)NextCancel transaction

Last updated 2 years ago