# Partial Transaction Callback

In partial payment transactions, if one or more payments fail and the `AutoRollback` parameter is set to **`true`** for the <mark style="color:green;">`successful`</mark> payments, a <mark style="color:red;">`cancellation`</mark> process is triggered.\
Once the cancellations are completed, the payment results are sent to the specified **Callback** address, and the final status is reported.

**Example:** If 9 out of 10 split payments are <mark style="color:green;">`successful`</mark> and 1 fails, and `AutoRollback` is set to **`true`**, the 9 <mark style="color:green;">`successful`</mark> payments will be <mark style="color:red;">`canceled`</mark>.\
Once all operations are completed, the system sends the payment statuses to the specified **Callback** address.

<table><thead><tr><th>Key</th><th>Description</th></tr></thead><tbody><tr><td><pre><code>Type
</code></pre></td><td>Notification Type<br><br>See: <a href="broken-reference">Review</a></td></tr><tr><td><pre><code>SplitPaymentId
</code></pre></td><td>Partial payment/transaction ID</td></tr><tr><td><pre><code>ErrorMessage
</code></pre></td><td>Descriptive message of the error that occurred during the partial transaction</td></tr><tr><td><pre><code>DateTime
</code></pre></td><td>Final action date of the partial transaction</td></tr><tr><td><pre><code>FinishedAt
</code></pre></td><td>Completion date of the partial transaction</td></tr><tr><td><pre><code>CreatedAt
</code></pre></td><td>Creation date of the partial transaction</td></tr><tr><td><p></p><pre><code>MerchantUniqueCode
</code></pre></td><td>Transaction number defined by you at the time of the partial payment order</td></tr><tr><td><pre><code>Hash
</code></pre></td><td><p><strong>The Hash value used to verify that the notification was sent from Paywall.</strong><br>It is generated using the <strong>System Webhook Hash Key</strong> activated in the Paywall panel.</p><p></p><p>The key mentioned above may vary depending on the value of the <code>HashKeyType</code> parameter. A dynamic structure should be implemented.</p></td></tr><tr><td><pre><code>HashFormat
</code></pre></td><td><p>The format type used to generate the hash value</p><p><br>See: <a href="broken-reference">Hash Formats</a></p></td></tr><tr><td><pre><code>HashKeyType
</code></pre></td><td>The type of key used in generating the hash value<br><br>See: <a href="broken-reference">Key Types</a></td></tr><tr><td><p></p><pre><code>List&#x3C;Payments>
</code></pre></td><td>Detailed list of payments</td></tr></tbody></table>

**List**<mark style="color:orange;">**\<Payments>**</mark>**&#x20;Details:**

<table><thead><tr><th>Key</th><th>Description</th></tr></thead><tbody><tr><td><pre><code>PaymentId
</code></pre></td><td>Payment transaction ID</td></tr><tr><td><pre><code>Amount
</code></pre></td><td>Amount information</td></tr><tr><td><pre><code>UniqueCode
</code></pre></td><td><p><strong>Tracking number assigned to the transaction by Paywall</strong></p><p><br><mark style="color:purple;">*</mark><em><mark style="color:purple;">Should be stored for successful transactions.</mark></em></p></td></tr><tr><td><pre><code>MerchantUniqueCode
</code></pre></td><td><p><strong>This parameter is also automatically assigned by Paywall</strong></p><p><br><mark style="color:purple;">*</mark><em><mark style="color:purple;">Should be stored for successful transactions.</mark></em></p></td></tr><tr><td><pre><code>CurrencyId
</code></pre></td><td>Currency<br><br>See: <a href="../system-data/currency">Currencys</a></td></tr><tr><td><pre><code>Installment
</code></pre></td><td>Installment value</td></tr><tr><td><p></p><pre><code>ActivityTypeId
</code></pre></td><td>Transaction type<br><br>See: <a href="broken-reference">Transaction Types </a></td></tr><tr><td><pre><code>ActivityStatusId
</code></pre></td><td>Transaction status<br><br>See: <a href="broken-reference">Transaction Statues</a></td></tr></tbody></table>

**Example JSON:**

```json
{
    "Type": 1,
    "SplitPaymentId": 2881,
    "Payments": [
        {
            "PaymentId": 3705770,
            "Amount": 1.00,
            "UniqueCode": "E86FFB24-CCA4-4F8B-A3B5-BC6A328C0F3B",
            "MerchantUniqueCode": "9f23c7df-f798-4c52-b38a-0d7b52e76f8b",
            "CurrencyId": 1,
            "Installment": 1,
            "ActivityTypeId": 1,
            "ActivityStatusId": 5
        },
        {
            "PaymentId": 3705771,
            "Amount": 1.00,
            "UniqueCode": "56CBA995-1B4B-4B83-BFA1-056715F42B83",
            "MerchantUniqueCode": "d09d5ff2-ba8d-48bc-8a66-9c2ffd47e23b",
            "CurrencyId": 1,
            "Installment": 1,
            "ActivityTypeId": 1,
            "ActivityStatusId": 5
        },
        {
            "PaymentId": 3705772,
            "Amount": 1.00,
            "UniqueCode": "1FBC95B5-F811-4BCE-A216-F9B799F53E97",
            "MerchantUniqueCode": "5b10063c-f715-4644-bf59-dd85b0c59afe",
            "CurrencyId": 1,
            "Installment": 1,
            "ActivityTypeId": 1,
            "ActivityStatusId": 4
        },
        {
            "PaymentId": 3705773,
            "Amount": 1.00,
            "UniqueCode": "0F6B0BAA-FA66-4E62-8EE2-3AFACF3CEABE",
            "MerchantUniqueCode": "56d7bcb0-4434-4584-8586-3b86186d92bb",
            "CurrencyId": 1,
            "Installment": 1,
            "ActivityTypeId": 1,
            "ActivityStatusId": 4
        },
        {
            "PaymentId": 3705774,
            "Amount": 1.00,
            "UniqueCode": "4A6926AD-C340-4283-ADB8-0EDB57123213",
            "MerchantUniqueCode": "d7fdfbda-3173-48d4-8d12-8964867174f7",
            "CurrencyId": 1,
            "Installment": 1,
            "ActivityTypeId": 1,
            "ActivityStatusId": 5
        },
        {
            "PaymentId": 3705775,
            "Amount": 1.00,
            "UniqueCode": "77AC004E-E641-43B7-952B-F932EBCCF5F9",
            "MerchantUniqueCode": "d5ec3bd9-9596-49da-9d6a-519c2d75574c",
            "CurrencyId": 1,
            "Installment": 1,
            "ActivityTypeId": 1,
            "ActivityStatusId": 4
        },
        {
            "PaymentId": 3705776,
            "Amount": 1.00,
            "UniqueCode": "5BE6E448-E675-422D-8D73-1DF025D72660",
            "MerchantUniqueCode": "d3d3ad91-ebea-41b3-80dd-77977ffac2e6",
            "CurrencyId": 1,
            "Installment": 1,
            "ActivityTypeId": 1,
            "ActivityStatusId": 4
        }
    ],
    "ErrorMessage": "",
    "DateTime": "2025-04-03T23:53:33.018504+03:00",
    "CreatedAt": "2025-04-03T22:01:05.357",
    "FinishedAt": "2025-04-03T22:01:12.0185082+03:00",
    "Hash": "95126cbeba7efabdda705d24568f2f4edc17c986b1022603cff4c99bfc4b9a8b"
}
```
