# 1. Oluştur

## LinkQr Ödeme Emri Oluştur

<mark style="color:green;">`POST`</mark> `{{Base Adres}}/api/paywall/linkqr/generate`

{% hint style="info" %}
Önemli: Ödeme başlatma servisini kullanabilmeniz için 'Header' alanında '**apikeypublic**' ve '**apiclientpublic**' parametrelerini göndermeniz gerekmektedir.\
\
[<mark style="color:green;">**PaymentAPI Adresi**</mark>](/ortam.md)
{% endhint %}

<table><thead><tr><th width="194">Parametre</th><th width="98">Tip</th><th width="107">Zorunlu</th><th width="403">Açıklama</th></tr></thead><tbody><tr><td>apikeypublic</td><td>string</td><td>Evet</td><td>Üye işyeri panelinden temin etmiş olduğunuz Public Key.</td></tr><tr><td>apiclientpublic</td><td>string</td><td>Evet</td><td>Üye işyeri panelinden temin etmiş olduğunuz Public Client.</td></tr></tbody></table>

#### Servise gönderilmesi gereken parametreler şu şekildedir :

<table><thead><tr><th width="209">Parametre</th><th width="118">Tip</th><th width="117">Zorunlu</th><th width="336">Açıklama</th></tr></thead><tbody><tr><td>SalesType</td><td>int</td><td>Evet</td><td>Satış tipi.<br>1 -> Ürün<br>2 -> Hizmet</td></tr><tr><td>PhotoBase64</td><td>string</td><td>Evet/Hayır</td><td>Tüm satış tipleri için desteklenir. Ürün için zorunludur, Hizmet için zorunlu değildir<br><mark style="color:red;">Maks 4MB</mark></td></tr><tr><td>ItemName</td><td>string</td><td>Evet</td><td>Ürün/Hizmet adı</td></tr><tr><td>ItemDescription</td><td>string</td><td>Evet</td><td>Ürün/Hizmet açıklaması</td></tr><tr><td>ItemAmount</td><td>decimal</td><td>Evet</td><td>Ürün/Hizmet tutarı</td></tr><tr><td>LanguageId</td><td>int</td><td>Hayır</td><td>LinkQr ödeme sayfasının dil ayarını kullanıcı segmentinize göre değiştirebilirsiniz.<br><br>Bkz: <a href="/pages/zqqIsXsXP4dw7u3h7GLg">Dil Seçenekleri</a></td></tr><tr><td>CurrencyId</td><td>int</td><td>Evet</td><td>Para birimi<br><br><a href="https://paywall.gitbook.io/tr/sistem-verileri/para-birimleri">https://paywall.gitbook.io/tr/sistem-verileri/para-birimleri</a></td></tr><tr><td>StockTrack</td><td>bool</td><td>Evet</td><td>Stok desteğinin olup olmayacağı belirlenir</td></tr><tr><td>StockCount</td><td>int</td><td>Hayır</td><td>Stok adedi</td></tr><tr><td>CallbackSupport</td><td>bool</td><td>Evet</td><td>Başarılı ödeme sonuçları bir adrese geribildirim olarak POST atılır</td></tr><tr><td>CallbackAddress</td><td>string</td><td>Hayır</td><td>Başarılı ödeme sonuçlarının geribildirim atılacağı adres</td></tr><tr><td>InstallmentSupport</td><td>bool</td><td>Evet</td><td>Taksit seçenekleri ekranda görünsün mü?</td></tr><tr><td>InstallmentDynamic</td><td>int</td><td>Hayır</td><td>Taksit seçenekleri aktif sağlayıcılarınız arasındaki aktif taksitleriniz kullanılarak listelenebilir. Bu listeleme kullanıcının girdiği kart ailesi bağlı olarak yapılacaktır.</td></tr><tr><td>NotificationSupport</td><td>bool</td><td>Evet</td><td>Ödeme linki bildirim atınsın mı?</td></tr><tr><td>NotificationEmail</td><td>string</td><td>Hayır</td><td>Ödeme linkinin bildirim atılacağı E-Posta</td></tr><tr><td>NotificationPhone</td><td>string</td><td>Hayır</td><td>Ödeme linkinin bildirim atılacağı telefon numarası</td></tr><tr><td>MerchantOrderId</td><td>string</td><td>Hayır</td><td>Başarılı ödemeler için gönderilecek geribildirim içerisinde yer alacak sipariş bilgisi</td></tr><tr><td>MerchantTrackId</td><td>string</td><td>Hayır</td><td>Başarılı ödemeler için gönderilecek geribildirim içerisinde yer alacak takip bilgisi</td></tr></tbody></table>

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

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

```json5
{
    "SalesType": 2,
    "PhotoBase64": "",
    "ItemName": "Test ürünü",
    "ItemDescription": "Test ürün açıklaması",
    "ItemAmount": 100.50,
    "CurrencyId": 1,
    "StockTrack": true,
    "StockCount": 10,
    "CallbackSupport": true,
    "CallbackAddress": "https://callback.paywall.one/method",
    "InstallmentSupport": false,
    "NotificationSupport": true,
    "NotificationEmail": "support@itspaywall.com",
    "NotificationPhone": "5554443322",
    "MerchantOrderId": "UAMDIURUAE24",
    "MerchantTrackId": "ADKFIAXKZ8895AA"
}
```

{% endcode %}
{% 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>string</td><td>Link parametresi altında ödeme linkini döner</td></tr></tbody></table>

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

```json
{
    "ErrorCode": 0,
    "Result": true,
    "Message": "",
    "Body": {
        "Link": "https://dev-link.itspaywall.com/?SaleId=cb6955c8-e1cf-47d2-bf4c-66f010e8c30f"
    }
}
```

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


---

# 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://developer.paywall.one/linkqr-servisi/1.-olustur.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.
