# 2. Yeni Kart/Tokenizasyon

## Yeni Kart Sakla / Tokenizasyon

<mark style="color:green;">`POST`</mark> `{{Base Adres}}/paywall/card/tokenization`

{% hint style="info" %}
Önemli: Kart işlemleri yüksek güvenlikli işlemlerdir. Bu nedenle 'Header' alanında '**apikeyprivate**' ve '**apiclientprivate**' parametrelerini göndermeniz gerekmektedir.\
\
[<mark style="color:green;">**CardWallAPI Adresi**</mark>](https://developer.paywall.one/ortam)
{% endhint %}

#### Servise gönderilmesi gereken (HEADERS) parametreler şu şekildedir :

<table><thead><tr><th width="162">Parametre</th><th width="79">Tip</th><th width="107">Zorunlu</th><th width="403">Açıklama</th></tr></thead><tbody><tr><td>apikeyprivate</td><td>string</td><td>Evet</td><td>Üye işyeri panelinden temin etmiş olduğunuz Private Key.</td></tr><tr><td>apiclientprivate</td><td>string</td><td>Evet</td><td>Üye işyeri panelinden temin etmiş olduğunuz Private Client.</td></tr></tbody></table>

#### Servise gönderilmesi gereken (BODY) parametreler şu şekildedir :

<table><thead><tr><th width="244">Parametre</th><th width="92">Tip</th><th width="127">Zorunlu</th><th width="336">Açıklama</th></tr></thead><tbody><tr><td>PartnerBased</td><td>bool</td><td>Hayır</td><td>Eğer kartlar Partner'lik yönetimi kapsamında ortak bir havuzda kayıt edilecekse kullanılmalıdır</td></tr><tr><td>PartnerIdentity</td><td>string</td><td>Evet/Hayır</td><td>Partnerlik kapsamında kayıt edilecek ise Partner hesabınızın kimlik bilgisi</td></tr><tr><td>RelationalId1</td><td>string</td><td>Evet</td><td>Kart'ın ilişkilendirilmesi istenen unique bilgi</td></tr><tr><td>RelationalId2</td><td>string</td><td>Hayır</td><td>Kart'ın ilişkilendirilmesi istenen unique ikinci bilgi (listeleme anında tüm bilgiler gönderilmelidir)</td></tr><tr><td>RelationalId3</td><td>string</td><td>Hayır</td><td>Kart'ın ilişkilendirilmesi istenen unique üçüncü bilgi (listeleme anında tüm bilgiler gönderilmelidir)</td></tr><tr><td>Nickname</td><td>string</td><td>Evet</td><td>Kart'ın takma ismi (Örnek: Yüksek limitli kartım)</td></tr><tr><td>CardToken</td><td>Guid</td><td>Evet</td><td>İstemci (Client) tarafından tokenize edilmiş kart bilgisinin kendisidir</td></tr><tr><td>IncludeDetails</td><td>boolean</td><td>Hayır</td><td>Kartın detay bilgileri (Bin, Tip, Marka, Banka vs) dönsün istiyorsanız <code>TRUE</code>olarak göndermelisiniz</td></tr></tbody></table>

Servise gönderilecek örnek bir JSON dosyası şu şekildedir :

{% tabs %}
{% tab title="JSON" %}

<pre class="language-json5" data-line-numbers><code class="lang-json5"><strong>{
</strong>    "PartnerBased": false,
    "PartnerIdentity": "",
    "RelationalId1": "1000923",
    "RelationalId2": "",
    "RelationalId3": "",
    "Card": {
        "CardToken": "580a3866-0055-4486-8c4b-96c8ac173e32",
        "Nickname": "Test Nickname"
    },
    "IncludeDetails": true
}
</code></pre>

{% endtab %}
{% endtabs %}

Servisten dönen parametreler şu şekildedir:

<table><thead><tr><th width="189">Parametre</th><th width="100.33333333333331">Tip</th><th>Açıklama</th></tr></thead><tbody><tr><td>ErrorCode</td><td>int</td><td>Hata kodu. İşlem başarılı ise '0' değerini döner.</td></tr><tr><td>Result</td><td>bool</td><td>True ya da false değeri döner. İşlem başarılı iste 'true' değerini döner.</td></tr><tr><td>Message</td><td>string</td><td>İşlem hatalıysa, bu hataya dair belirtilen mesajdır, locale parametresine göre dil desteği sunar.</td></tr><tr><td>Body</td><td>nesne</td><td>İşlem hatalıysa, bu hataya dair detay nesne</td></tr></tbody></table>

{% tabs %}
{% tab title="JSON" %}
{% code lineNumbers="true" %}

```json
{
    "ErrorCode": 4,
    "Result": false,
    "Message": "Card already exists",
    "Body": {
        "Scope": 0,
        "Name": "Test Card",
        "CardBin": "55287900",
        "CardLastFour": "0008",
        "CardHolderName": "Kart Sahibi İsmi",
        "CardNumber": "55287900****0008",
        "Expired": false,
        "CardTypeId": 1,
        "CardType": "Credit",
        "Month": 12,
        "Year": 2030,
        "UniqueCode": "ZtuCwuJWMD+Jqju+ZRnw/X92WNSqFEo97slEjPZD6+5M40L75cT4+g==",
        "Details": {
            "CardBankId": 55,
            "CardBank": "T.HALK BANKASI A.Ş.",
            "CardBrandId": 1,
            "CardBrand": "Master Card",
            "CardFamilyId": 5,
            "CardFamily": "Paraf",
            "CardKindId": 1,
            "CardKind": "Bireysel Kart",
            "CardTypeId": 1,
            "CardType": "Credit"
        }
    }
}
```

{% endcode %}
{% endtab %}
{% endtabs %}
