# Simple Tokenization

### Simple Tokenization <a href="#toc135036448" id="toc135036448"></a>

You can tokenize any valid credit card. The Tokenization process receives a credit card number and other additional fields via attributes.

{% tabs %}
{% tab title="cUrl" %}
**POST /v1/tokenization/simple**

```
curl -X POST https://api.firstoken.co/v1/tokenization/simple
-H 'x-api-key: YOUR_API_KEY'
-H "Content-Type: application/json"
```

{% endtab %}

{% tab title="Attributes of the request" %}
**chd** *\[{object}]*

> Required: true
>
> Cards value represents an array of credit cards JSON object. Each object has the attributes:
>
> * **card:** *int*\
>   Represents a Luhm compliant credit card value.\
>   Example: 4242424242424242\
>   \&#xNAN;*Required: true*
> * **name:** *string* \
>   Represents the cardholder name\
>   Example: Steve Jobs\
>   \&#xNAN;*Required: true*
> * **exp:** *string* \
>   Represents the expiration date of the card.\
>   Example: 01/27\
>   \&#xNAN;*Required: true*

**tags:** *\[string]*

> *Required: true*
>
> The `tags` parameter is an array of strings that allows you to associate additional information with the tokenized cards.
>
> * If you don't need to include any tags, you must still provide an empty array `[]`.
> * Examples of tags could include:
>   * Invoice ID
>   * Member ID
>   * Transaction reference
>   * Any other relevant identifiers or metadata

**scheme:** *integer*

> *Required: true*
>
> Scheme value represents what format do you want to use for the tokenization process for all cards in the request.

**isEightDigitsBin:** *boolean*

> *Required: false*
>
> When set to `true`, it indicates that the input card number has an 8-digit BIN instead of the standard 6-digit BIN.
>
> * This parameter only works with schemes 1, 3, and 8.
> * The resulting token will contain the first 8 digits and the last 4 digits of the original card number. The middle digits will be replaced with random digits or characters.

**type:** *string*

> *Required: false*
>
> When set to `"persistent"`, it ensures that the same input card number always results in the same token.
>
> * This creates a 1:1 relationship between the card number and the token.
> * Can be used with all schemes.
>   {% endtab %}

{% tab title="Attributes of the response" %}
**status\_code:** *int*

> The status code represents the result of the operation that was performed. For successful transactions a code 200 is always returned for the others another code is returned.

**status:** *string*

> The status is a string result that only has two possible values. "Success" or "Fail".

**desc**: *string*

> The desc value represents a short description about the status code.

**data**: *{object}*

> The value of the data represents a set of JSON objects of tokenized credit cards. Each object has the following attributes:
>
> * **tokens:** *\[{object}]*
>   * **card**: *string*
>
>     The truncated value of the credit card numbers.
>   * **token**: *string*
>
>     The token value.
>   * **tags**: *\[string]*
>
>     The tags associated to the credit card.
>   * **scheme**: *int*
>
>     The scheme used to tokenize the card.
>   * **status**: *int*
>
>     Value 1 if it was possible to tokenize the credit card. Value 0 if it was not possible to tokenize the credit card.
>   * **created\_by**: *string*
>
>     The username that tokenized the card.
>   * **createdAt**: *ISODate*
>
>     The ISODate of the tokenization.
>     {% endtab %}
>     {% endtabs %}

<details>

<summary>Example JSON Request Body</summary>

```jsonp
{
    "chd": [{
            "card": "4242424242424242",
            ”name":"Steve Jobs",
            "exp":"01/27"
        },
        {
            "card": "5555555555554444",
            "name":"Bill Gates",
            "exp":"10/28"
        }
    ],
    "tags": ["OS","2020"],
    "scheme":"1"
}
```

</details>

<details>

<summary>Example JSON Response</summary>

```json
{
    "status_code": 200,
    "status": "success",
    "desc": "Success",
    "data": {
        "tokens": [{
                "card": "424242******4242",
                "token": "4242428805134242",
                "tags": ["OS","2020" ],
                "scheme": 1,
                "status": 1,
                "created_by": { "name": "Jhon Smith" },
                "createdAt": "2020-02-07T14:22:58.015Z"
            },
            {
                "card": "555555******4444",
                "token": "5555557860534444",
                "tags": ["OS","2020"],
                "scheme": "1",
                "status": 1,
                "created_by": { "name": "Jhon Smith"},
                "createdAt": "2020-02-07T14:43:18.405Z"
            }]
        }
}
```

</details>
