> For the complete documentation index, see [llms.txt](https://developer.paywall.one/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.paywall.one/masterpass-entegrasyonu/1.-oturum-olustur.md).

# 1. Oturum Oluştur

## Oturum Oluştur

<mark style="color:green;">`POST`</mark> `{{Base Address}}/api/paywall/masterpass/session`

Yukarıda verilmiş olan adrese istek atmanız yeterli olacaktır. Test ortamı ve Gerçek ortam için 'Base Address' istediğiniz gibi kullanabilirsiniz.

{% hint style="info" %}
Önemli: **Masterpass - Oturum Oluştur** servisini kullanabilmeniz için 'Header' alanında '**apikeyprivate**' ve '**apiclientprivate**' parametrelerini göndermeniz gerekmektedir.\
\
[<mark style="color:green;">**PaymentAPI Adresi**</mark>](/ortam.md)
{% endhint %}

<table><thead><tr><th width="182">Parametre</th><th width="106.33333333333331">Tip</th><th width="97">Zorunlu</th><th>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 parametreler şu şekildedir:

<table><thead><tr><th width="228">Parametre</th><th width="106">Tip</th><th width="175">Zorunlu</th><th>Açıklama</th></tr></thead><tbody><tr><td>ReferenceCode</td><td>string</td><td>Evet</td><td>İlgili oturumun tekil takip numarası</td></tr><tr><td>UserId</td><td>string</td><td>Evet</td><td>Ödeme ekranındaki kullanıcının sisteminizdeki tekil kimlik numarası</td></tr><tr><td>UserPhone</td><td>string</td><td>Evet</td><td>Ödeme ekranındaki kullanıcının doğrulanmış telefon numarası</td></tr><tr><td>Force3D</td><td>bool</td><td>Hayır</td><td>İlgili parametrenin true gönderilmesi durumunda, tüm ödeme süreçleri 3D olarak ilerleyecektir</td></tr><tr><td>PhoneVerifiedByMerchant</td><td>bool</td><td>Hayır</td><td>İlgili telefon numarasını sisteminizde doğruladıysanız, bu parametre <code>true</code> olarak gönderilmelidir. Böylece Masterpass, telefon numarası doğrulamasını tekrar yapmaz</td></tr></tbody></table>

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

```json5
{
    "ReferenceCode": "{{$guid}}",
    "UserId": "72812393211", // Kullanıcının sisteminizdeki tekil kimlik bilgisi
    "UserPhone": "905123456710", // Kullanıcının sisteminizdeki doğrulanmış telefon numarası
    "Force3D": false, // Kullanıcı tüm ödeme akışında 3D'ye zorlansın mı?
    "PhoneVerifiedByMerchant": true // Telefon doğrulaması yapıldı mı?
}
```

{% endtab %}

{% tab title="C#" %}

```csharp
// Soon
```

{% endtab %}

{% tab title="GO" %}

```go
// Soon
```

{% endtab %}

{% tab title="Java" %}

```java
// Soon
```

{% endtab %}

{% tab title="PHP" %}

```php
// Soon
```

{% endtab %}

{% tab title="Python" %}

```python
// Soon
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
// Soon
```

{% endtab %}

{% tab title="TypeScript" %}

```typescript
// Soon
```

{% endtab %}

{% tab title="Curl" %}

```sh
// Soon
```

{% endtab %}
{% endtabs %}

**Servisten dönen cevap:**

<table><thead><tr><th width="156">Parametre</th><th width="83.33333333333331">Tip</th><th>Açılama</th></tr></thead><tbody><tr><td>Body</td><td><mark style="color:blue;">Body</mark></td><td>Ödemeye ilişkin detay içeren JSON (opsiyonel)</td></tr><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></tbody></table>

**Servisten dönen cevap (**<mark style="color:blue;">**Body**</mark>**):**

<table><thead><tr><th width="181">Parametre</th><th width="83.33333333333331">Tip</th><th>Açılama</th></tr></thead><tbody><tr><td>SessionId</td><td><mark style="color:$primary;">Guid</mark></td><td>İlgili oturumun kimlik bilgisidir. Tüm süreçte yetkilendirme için kullanılmaktadır. Bu bilgi süreç tamamlanana kadar tarafınızda saklanmalıdır</td></tr><tr><td>SessionExpiryDate</td><td>DateTime</td><td>Oturumun son kullanılma tarihidir. Otomatik olarak yenilendiğinde diğer Masterpass servislerinin cevap nesneleri içinde yeni SessionId ve yeni SessionExpiryDate bilgileri dönmektedir</td></tr></tbody></table>

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

```json5
{
    "ErrorCodeType": 1,
    "ErrorMessage": null,
    "ErrorCode": 0,
    "Result": true,
    "Message": "",
    "Body": {
        "SessionId": "9b27433e-f36b-1410-80e5-004205aa382d",
        "SessionExpiryDate": "2025-07-27T11:24:57"
    }
}
```

{% endtab %}
{% endtabs %}
