# 1. Mutabakat Yap

## Mutabakat Yap

<mark style="color:green;">`POST`</mark> `{{Base Address}}/api/paywall/private/vpos/reconciliation/reconcile`

{% hint style="info" %}
Önemli: **Mutabakat Yap** servisini kullanabilmeniz için 'Header' alanında '**apikeyprivate**' ve '**apiclientprivate**' parametrelerini göndermeniz gerekmektedir.\
\
[<mark style="color:green;">**PaymentPrivateAPI 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>

{% hint style="info" %}
Her günün mutabakatı ilgili günün gece yarısı 00.30 sonrasında yapılabilmektedir. Örnek: 06.06.2024 tarihinin mutabakatı 07.06.2024 00:30 sonranda yapılabilir.
{% endhint %}

{% hint style="info" %}
Mutabakat emri verildikten sonra mutabakat başarılı olursa tekrar aynı gün için mutabakat emri verilemez. Mutabakatın başarısız olması durumunda aynı gün için başka değerlerle mutabakat emri verilebilir.
{% endhint %}

#### 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>Date</td><td>Date</td><td>Evet</td><td>Mutabakat'ın günü <mark style="color:yellow;">yyyy-MM-dd</mark> formatında</td></tr><tr><td>TotalCount</td><td>int</td><td>Evet</td><td>Sisteminizdeki toplam işlem adedi</td></tr><tr><td>TotalAmount</td><td>decimal</td><td>Evet</td><td>Sisteminizdeki toplam işlem tutarı</td></tr><tr><td>SuccessfulCount</td><td>int</td><td>Evet</td><td>Sisteminizdeki toplam <mark style="color:green;">başarılı</mark> işlem adedi</td></tr><tr><td>SuccessfulAmount</td><td>decimal</td><td>Evet</td><td>Sisteminizdeki toplam <mark style="color:green;">başarılı</mark> işlem tutarı</td></tr><tr><td>UnsuccessfulCount</td><td>int</td><td>Evet</td><td>Sisteminizdeki toplam <mark style="color:red;">başarısız</mark> işlem adedi</td></tr><tr><td>UnsuccessfulAmount</td><td>decimal</td><td>Evet</td><td>Sisteminizdeki toplam <mark style="color:red;">başarısız</mark> işlem tutarı</td></tr><tr><td>RefundCount</td><td>int</td><td>Evet</td><td>Sisteminizdeki toplam <mark style="color:orange;">iade</mark> adedi</td></tr><tr><td>RefundAmount</td><td>decimal</td><td>Evet</td><td>Sisteminizdeki toplam <mark style="color:orange;">iade</mark> tutarı</td></tr><tr><td>PartialRefundCount</td><td>int</td><td>Evet</td><td>Sisteminizdeki toplam <mark style="color:orange;">kısmi iade</mark> adedi</td></tr><tr><td>PartialRefundAmount</td><td>decimal</td><td>Evet</td><td>Sisteminizdeki toplam <mark style="color:orange;">kısmi iade</mark> tutarı</td></tr><tr><td>CancelCount</td><td>int</td><td>Evet</td><td>Sisteminizdeki toplam <mark style="color:orange;">iptal</mark> adedi</td></tr><tr><td>CancelAmount</td><td>decimal</td><td>Evet</td><td>Sisteminizdeki toplam <mark style="color:orange;">iptal</mark> tutarı</td></tr></tbody></table>

{% tabs %}
{% tab title="Json" %}
{% code overflow="wrap" lineNumbers="true" %}

```json5
{
    "Date": "2024-05-07",
    "TotalCount": 4,
    "TotalAmount": 46.00,
    "SuccessfulCount": 0,
    "SuccessfulAmount": 0.00,
    "UnsuccessfulCount": 1,
    "UnsuccessfulAmount": 13.00,
    "RefundCount": 0,
    "RefundAmount": 0.00,
    "PartialRefundCount": 0,
    "PartialRefundAmount": 0.00,
    "CancelCount": 0,
    "CancelAmount": 0.00
}
```

{% endcode %}
{% 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>object</td><td>Mutabakat işlemine ilişkin detay bilgileri dönmektedir. Aşağıdaki bilgilerle birlikte nesnelerinizi oluşturabilirsiniz</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>

{% tabs %}
{% tab title="Json" %}
{% code overflow="wrap" lineNumbers="true" %}

```json5
{
    "ErrorCode": 0,
    "Result": true,
    "Message": "Reconciliation result is success",
    "Body": {
        "IsReconciled": true,
        "IsSaved": true,
        "ExistsReconciliation": false,
        "OperationDateTime": "2024-06-07T20:11:55.3150056+03:00",
        "ReconciliationDate": "2024-06-07T20:11:55.3160313+03:00",
        "Merchant": {
            "TotalCount": 4,
            "TotalAmount": 46.00,
            "SuccessfulCount": 0,
            "SuccessfulAmount": 0.00,
            "UnsuccessfulCount": 1,
            "UnsuccessfulAmount": 13.00,
            "RefundCount": 0,
            "RefundAmount": 0.00,
            "PartialRefundCount": 0,
            "PartialRefundAmount": 0.00,
            "CancelCount": 0,
            "CancelAmount": 0.00
        },
        "Paywall": {
            "EndOfDayId": 3417,
            "TotalCount": 4,
            "TotalAmount": 46.00,
            "SuccessfulCount": 0,
            "SuccessfulAmount": 0.00,
            "UnsuccessfulCount": 1,
            "UnsuccessfulAmount": 13.00,
            "RefundCount": 0,
            "RefundAmount": 0.00,
            "PartialRefundCount": 0,
            "PartialRefundAmount": 0.00,
            "CancelCount": 0,
            "CancelAmount": 0.00
        }
    }
}
```

{% 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/mutabakat-servisi/sanal-pos/1.-mutabakat-yap.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.
