# Start Transaction (Token)

To start a transaction with a token (FA1.2), the user must first make a transaction to authorize the Escrow smart contract to spend a certain amount of tokens.

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

* Marketplace id : `marketplaceId1`
* Ad id : `adId1`
* Price of the ad (excluding fees) : 1 token => 1000000000000000000&#x20;
* Seller's address : `tz1LfdftiaLDS1HePbuVFYVD3WZe3BFtA2qz`

The fee for this token is 1%, the user must first make a transaction to authorize the smart contact to spend the total amount (price+fees) `1,01 tokens => 1010000000000000000`

```javascript
//Approve escrow contract
await (await token.methods.approve(escrow.address, 1010000000000000000).send()).confirmation(1)

//New transaction
 await (await escrow.methodsObject.startTransaction({
        _marketPlaceId:"marketplaceId1",
        _adId:"adId1",
        _amount:1000000000000000000,
        _seller:"tz1LfdftiaLDS1HePbuVFYVD3WZe3BFtA2qz",
        _tokenAddress:token.address
    }).send()).confirmation(1)

```

{% hint style="success" %}
The token used has 18 decimal&#x20;
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.smartlink.so/for-third-parties-tezos/start-transaction-token.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
