# Non-SNAP

To get the status of a transaction, you can send a request to DOKU Check Status API. It will response with the transaction status. This method requires the transaction `order.invoice_number` (or `Request-Id`) as the identifier.

{% hint style="danger" %}
**Hit Check status after 60 seconds after payment completion!**

To get the status for the transaction, please ensure your application is already hit after 60 seconds after payment completion.
{% endhint %}

### Transaction Status Mapping[​](https://dashboard.doku.com/docs/docs/technical-references/status-mapping#transaction-status-mapping) <a href="#api-request" id="api-request"></a>

Here is the list of status that DOKU will provide for the `transaction.status`:

| Name       | Description                                       | Final Status | Merchant Action                                                         | Applicable for Channels                                                              |
| ---------- | ------------------------------------------------- | ------------ | ----------------------------------------------------------------------- | ------------------------------------------------------------------------------------ |
| `PENDING`  | Transaction is waiting to be paid by the customer | NO           | Wait for HTTP Notification or Call Check Status API to get final status | `VIRTUAL_ACCOUNT`, `ONLINE_TO_OFFLINE`, `CREDIT_CARD_AUTHORIZE`, `PAYLATER, EWALLET` |
| `SUCCESS`  | Transaction is paid by the customer               | YES          | -                                                                       | All Channels                                                                         |
| `FAILED`   | Transaction is failed to be paid                  | NO           | Generate new payment request to DOKU                                    | `VIRTUAL_ACCOUNT`,`CREDIT_CARD`, `DIRECT_DEBIT`, `E_MONEY`, `PAYLATER`               |
| `EXPIRED`  | Transaction due date is exceeded                  | YES          | Generate new payment request to DOKU                                    | `VIRTUAL_ACCOUNT`, `ONLINE_TO_OFFLINE` , `PAYLATER`                                  |
| `REFUNDED` | Transaction fund is refunded to merchant          | YES          | -                                                                       | `CREDIT CARD`, `EMONEY`, `PAYLATER`                                                  |
| `TIMEOUT`  | Transaction is timeout                            | NO           | Call Check Status API to get final status                               | `E_MONEY`                                                                            |
| `REDIRECT` | Transaction is waiting for acquirer verification  | NO           | Wait for HTTP Notification or Call Check Status API to get final status | `CREDIT_CARD`                                                                        |

### API Request <a href="#api-request" id="api-request"></a>

| Type                          | Value                                                                                  |
| ----------------------------- | -------------------------------------------------------------------------------------- |
| **HTTP Method**               | GET                                                                                    |
| **API endpoint (Sandbox)**    | `https://api-sandbox.doku.com/orders/v1/status/{{order.invoice_number OR Request-Id}}` |
| **API endpoint (Production)** | `https://api.doku.com/orders/v1/status/{{order.invoice_number OR Request-Id}}`         |

Here is the sample of notification request header:

```
Client-Id: MCH-0001-10791114622547
Request-Id: e71fe02a-bfef-4af9-a6f6-2cf1f03b00e7
Request-Timestamp: 2020-11-18T08:45:42Z
Signature: HMACSHA256=vl9DBTX5KhEiXmnpOD0TSm8PYQknuHPdyHSTSc3W6Ps=
```

#### Request Header Explanation

<table><thead><tr><th width="199">Parameter</th><th>Description</th></tr></thead><tbody><tr><td><strong><code>client-id</code></strong></td><td>Client ID retrieved from DOKU Back Office</td></tr><tr><td><strong><code>request-id</code></strong></td><td>Unique random string (max 128 characters) generated from merchant side to protect duplicate request</td></tr><tr><td><strong><code>request-timestamp</code></strong></td><td>Timestamp request on UTC time in ISO8601 UTC+0 format. It means to proceed transaction on UTC+7 (WIB), merchant need to subtract time with 7. Ex: to proceed transaction on September 22th 2020 at 08:51:00 WIB, the timestamp should be 2020-09-22T01:51:00Z</td></tr><tr><td><strong><code>signature</code></strong></td><td>Security parameter that needs to be generated on merchant Backend and placed to the header request to ensure that the request is coming from valid merchant. Please refer to <a href="https://dashboard.doku.com/docs/docs/technical-references/generate-signature">this section</a> to generate the signature</td></tr></tbody></table>

**Signature Generation for GET Method**

For GET Method, you don't need to generate a Digest. Learn more on this section.

### API Response <a href="#api-response" id="api-response"></a>

The response will be similar to HTTP notification. Some parameters might not be presented in certain status cases, please check our Postman Collection to try it out yourself.

### Virtual Account

The response will be similar to HTTP notification. Some parameters might not be presented in certain status cases, please check our Postman Collection to try it out yourself.

* BCA VA
* Mandiri VA
* BSI VA
* DOKU VA
* BRI VA
* CIMB VA
* Permata VA
* BNI VA

{% tabs %}
{% tab title="BCA VA" %}

```json
{
    "service": {
        "id": "VIRTUAL_ACCOUNT"
    },
    "acquirer": {
        "id": "BCA"
    },
    "channel": {
        "id": "VIRTUAL_ACCOUNT_BCA"
    },
    "transaction": {
        "status": "SUCCESS",
        "date": "2021-01-27T03:24:23Z",
        "original_request_id": "15022aab-444f-4b04-afa8-ddfce89432ec"
    },
    "order": {
        "invoice_number": "INV-20210124-0001",
        "amount": 150000
    },
    "virtual_account_info": {
        "virtual_account_number": "1900600000000046"
    },
    "virtual_account_payment": {
        "identifer": [
            {
                "name": "REQUEST_ID",
                "value": "7892931"
            },
            {
                "name": "REFERENCE",
                "value": "6769200"
            },
            {
                "name": "CHANNEL_TYPE",
                "value": "6010"
            }
        ]
    }
}
```

{% endtab %}

{% tab title="Mandiri VA" %}

```json
{
    "service": {
        "id": "VIRTUAL_ACCOUNT"
    },
    "acquirer": {
        "id": "BANK_MANDIRI"
    },
    "channel": {
        "id": "VIRTUAL_ACCOUNT_BANK_MANDIRI"
    },
    "transaction": {
        "status": "SUCCESS",
        "date": "2021-01-27T07:24:50Z",
        "original_request_id": "cc682442-6c22-493e-8121-b9ef6b3fa728"
    },
    "order": {
        "invoice_number": "INV-20210124-0001",
        "amount": 150000
    },
    "virtual_account_info": {
        "virtual_account_number": "8889940000000213"
    },
    "virtual_account_payment": {
        "identifier": [
            {
                "name": "TRANSACTION_ID",
                "value": "8341422"
            },
            {
                "name": "CHANNEL_ID",
                "value": "001"
            }
        ]
    }
}
```

{% endtab %}

{% tab title="BSI VA" %}

```json
{
    "service": {
        "id": "VIRTUAL_ACCOUNT"
    },
    "acquirer": {
        "id": "BANK_SYARIAH_MANDIRI"
    },
    "channel": {
        "id": "VIRTUAL_ACCOUNT_BANK_SYARIAH_MANDIRI"
    },
    "transaction": {
        "status": "SUCCESS",
        "date": "2021-01-27T06:00:20Z",
        "original_request_id": "d24a5644-6078-4249-8740-4a6dcd92df5a"
    },
    "order": {
        "invoice_number": "INV-20210124-0001",
        "amount": 150000
    },
    "virtual_account_info": {
        "virtual_account_number": "6059000000000205"
    },
    "virtual_account_payment": {
        "identifier": [
            {
                "name": "PAY_TERMINAL_ID",
                "value": ""
            },
            {
                "name": "BANK_REFERENCE",
                "value": "1232990188"
            },
            {
                "name": "PAY_CHANNEL",
                "value": "6019"
            }
        ]
    }
}
```

{% endtab %}

{% tab title="DOKU VA" %}

```json
{
    "service": {
        "id": "VIRTUAL_ACCOUNT"
    },
    "acquirer": {
        "id": "DOKU"
    },
    "channel": {
        "id": "VIRTUAL_ACCOUNT_DOKU"
    },
    "transaction": {
        "status": "SUCCESS",
        "date": "2021-01-22T07:06:28Z",
        "original_request_id": "09e0defe-a071-45b3-9feb-ac134374628c"
    },
    "order": {
        "invoice_number": "INV-20210124-0001",
        "amount": 150000
    },
    "virtual_account_info": {
        "virtual_account_number": "8000100000000323"
    },
    "virtual_account_payment": {
        "identifier": [
            {
                "name": "TRACE_NUMBER",
                "value": "19832"
            },
            {
                "name": "TRANSACTION_NUMBER",
                "value": "d094700e379f0fb3b543e25c77f8e4b3e068f057"
            },
            {
                "name": "HOST_REFERENCE_NUMBER",
                "value": ""
            }
        ]
    }
}
```

{% endtab %}

{% tab title="BRI VA" %}

```json
{
    "service": {
        "id": "VIRTUAL_ACCOUNT"
    },
    "acquirer": {
        "id": "BRI"
    },
    "channel": {
        "id": "VIRTUAL_ACCOUNT_BRI"
    },
    "transaction": {
        "status": "SUCCESS",
        "date": "2020-08-11T09:06:18Z",
        "original_request_id": "e5a8a8b8-7eab-4be3-91d8-5e2d7ab7cc25"
    },
    "order": {
        "invoice_number": "INV-20210124-0001",
        "amount": 150000
    },
    "virtual_account_info": {
        "virtual_account_number": "1236260000000004"
    },
    "virtual_account_payment": {
        "identifier": [
            {
                "name": "TRANSAKSI_ID",
                "value": "127503812"
            },
            {
                "name": "TERMINAL_ID",
                "value": "1"
            }
        ]
    }
}
```

{% endtab %}

{% tab title="CIMB VA" %}

```json
{
    "service": {
        "id": "VIRTUAL_ACCOUNT"
    },
    "acquirer": {
        "id": "CIMB"
    },
    "channel": {
        "id": "VIRTUAL_ACCOUNT_BANK_CIMB"
    },
    "transaction": {
        "status": "SUCCESS",
        "date": "2020-08-11T09:06:18Z",
        "original_request_id": "e5a8a8b8-7eab-4be3-91d8-5e2d7ab7cc25"
    },
    "order": {
        "invoice_number": "INV-20210124-0001",
        "amount": 150000
    },
    "virtual_account_info": {
        "virtual_account_number": "1236260000000004"
    },
    "virtual_account_payment": {
        "identifier": [
            {
                "name": "TRANSAKSI_ID",
                "value": "127503812"
            },
            {
                "name": "TERMINAL_ID",
                "value": "1"
            }
        ]
    }
}
```

{% endtab %}

{% tab title="Permata VA" %}

```json
{
    "service": {
        "id": "VIRTUAL_ACCOUNT"
    },
    "acquirer": {
        "id": "BANK_PERMATA"
    },
    "channel": {
        "id": "VIRTUAL_ACCOUNT_BANK_PERMATA"
    },
    "transaction": {
        "status": "SUCCESS",
        "date": "2020-08-11T09:06:18Z",
        "original_request_id": "e5a8a8b8-7eab-4be3-91d8-5e2d7ab7cc25"
    },
    "order": {
        "invoice_number": "INV-20210124-0001",
        "amount": 150000
    },
    "virtual_account_info": {
        "virtual_account_number": "1236260000000004"
    },
    "virtual_account_payment": {
        "identifier": [
            {
                "name": "TRANSAKSI_ID",
                "value": "127503812"
            },
            {
                "name": "TERMINAL_ID",
                "value": "1"
            }
        ]
    }
}
```

{% endtab %}

{% tab title="BNI VA" %}

```json
{
    "order": {
        "invoice_number": "INV-1649674900",
        "amount": 20000
    },
    "transaction": {
        "status": "SUCCESS",
        "date": "2022-04-11T11:30:01Z",
        "original_request_id": "f1f95a6e-f2bf-4714-89c1-4f67a059c1f1"
    },
    "service": {
        "id": "VIRTUAL_ACCOUNT"
    },
    "acquirer": {
        "id": "BNI"
    },
    "channel": {
        "id": "VIRTUAL_ACCOUNT_BNI"
    },
    "virtual_account_info": {
        "virtual_account_number": "8803300000000388",
        "created_date": "20220411183001",
        "expired_date": "20220411190140",
        "reusable_status": false
    },
    "virtual_account_payment": {
        "identifier": [
            {
                "name": "TRX_ID",
                "value": "02871649035257909UNIQUE_00002"
            },
            {
                "name": "PAYMENT_NTB",
                "value": "577437"
            }
        ]
    }
}
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="VA Notification Explanation" %}

<table><thead><tr><th width="204.24609375">Parameter</th><th>Type</th><th>Mandatory</th><th>Description</th></tr></thead><tbody><tr><td><code>service.id</code></td><td>string</td><td>Mandatory</td><td>The service that is used for the transaction</td></tr><tr><td><code>acquirer.id</code></td><td>string</td><td>Mandatory</td><td>The acquirer that processed the transaction</td></tr><tr><td><code>channel.id</code></td><td>string</td><td>Mandatory</td><td>The channel of the transaction</td></tr><tr><td><code>transaction.status</code></td><td>string</td><td>Mandatory</td><td>The transaction status to be use to update the status on merchant side<br>Possible value: <code>PENDING</code>, <code>SUCCESS</code>, <code>EXPIRED</code>, <code>FAILED</code></td></tr><tr><td><code>transaction.date</code></td><td>string</td><td>Optional</td><td>The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)</td></tr><tr><td><code>transaction.original_request_id</code></td><td>string</td><td>Mandatory</td><td>The request ID that sent when initiate the payment</td></tr><tr><td><code>order.invoice_number</code></td><td>string</td><td>Mandatory</td><td>The invoice number that sent when initate the payment</td></tr><tr><td><code>order.amount</code></td><td>string</td><td>Mandatory</td><td>The amount of the transaction</td></tr><tr><td><code>virtual_account_info.</code><br><code>virtual_account_number</code></td><td>string</td><td>Optional</td><td>The virtual account number that used for the transaction</td></tr><tr><td><code>virtual_account_info.</code><br><code>created_date</code></td><td>string</td><td>Optional</td><td>Date time of VA generated with the format of <code>yyyyMMddHHmmss</code>.</td></tr><tr><td><code>virtual_account_info.</code><br><code>expired_date</code></td><td>string</td><td>Optional</td><td>Date time of VA generated with the format of <code>yyyyMMddHHmmss</code>.</td></tr><tr><td><code>virtual_account_info.</code><br><code>reusable_status</code></td><td>string</td><td>Optional</td><td>Reusable status when initiate the payment</td></tr><tr><td><code>virtual_account_payment.identifier</code></td><td>array</td><td>Optional</td><td>List of transaction identifier that coming from the acquiring. Merchant can save these data for reference</td></tr></tbody></table>
{% endtab %}
{% endtabs %}

### Convenience store

* Alfa
* Indomaret

The response will be similar to HTTP notification. Some parameters might not be presented in certain status cases, please check our Postman Collection to try it yourself.

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

```json
{
    "order": {
        "invoice_number": "INV-67220100000",
        "amount": 120000
    },
    "transaction": {
        "status": "SUCCESS",
        "date": "2021-12-29T02:37:35Z",
        "original_request_id": "INV-67220100000"
    },
    "service": {
        "id": "ONLINE_TO_OFFLINE"
    },
    "acquirer": {
        "id": "ALFA"
    },
    "channel": {
        "id": "ONLINE_TO_OFFLINE_ALFA"
    },
    "online_to_offline_info": {
        "created_date": "20211229093735",
        "expired_date": "20211229100732",
        "reusable_status": "false"
    },
    "online_to_offline_payment": {
        "identifier": [
            {
                "name": "AGENT_ID",
                "value": "ALFAMART"
            },
            {
                "name": "AGENT_STORE_ID",
                "value": "store"
            },
            {
                "name": "AGENT_TRX_ID",
                "value": "505045001763766906"
            }
        ]
    }
}
```

{% endtab %}

{% tab title="Indomaret" %}

```json
{
    "order": {
        "invoice_number": "INV-1640746942",
        "amount": 150000
    },
    "transaction": {
        "status": "SUCCESS",
        "date": "2021-12-28T20:03:37Z",
        "original_request_id": "91c65738-4148-4862-8147-009728097e17"
    },
    "service": {
        "id": "ONLINE_TO_OFFLINE"
    },
    "acquirer": {
        "id": "INDOMARET"
    },
    "channel": {
        "id": "ONLINE_TO_OFFLINE_INDOMARET"
    },
    "online_to_offline_info": {
        "created_date": "20211229030337",
        "expired_date": "20211229040224",
        "reusable_status": false
    },
    "online_to_offline_payment": {
        "identifier": [
            {
                "name": "AGENT_ID",
                "value": "s0337180"
            },
            {
                "name": "MESSAGE_ID",
                "value": "messageId0337180"
            },
            {
                "name": "TRACKING_REF",
                "value": "tracking0337180"
            }
        ]
    }
}
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Alfa" %}
Alfa O2O Notification Explanation

| Parameter                                | Type     | Mandatory | Description                                                                                                                                                      |
| ---------------------------------------- | -------- | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `order.invoice_number`                   | `string` | Mandatory | The invoice number that sent when initate the payment                                                                                                            |
| `order.amount`                           | `string` | Mandatory | The amount of the transaction                                                                                                                                    |
| `transaction.status`                     | `string` | Mandatory | <p>The transaction status to be use to update the status on merchant side<br>Possible value: <code>SUCCESS</code>, <code>FAILED</code>, <code>TIMEOUT</code></p> |
| `transaction.date`                       | `string` | Mandatory | The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)                                                                          |
| `transaction.original_request_id`        | `string` | Mandatory | The request ID that sent when initiate the payment                                                                                                               |
| `service.id`                             | `string` | Mandatory | The service that is used for the transaction                                                                                                                     |
| `acquirer.id`                            | `string` | Mandatory | The acquirer that processed the transaction                                                                                                                      |
| `channel.id`                             | `string` | Mandatory | The channel of the transaction                                                                                                                                   |
| `jdm.journey_id`                         | `string` | Mandatory | Journey id for transaction                                                                                                                                       |
| `online_to_offline_info.created_date`    | `string` | Mandatory | Created date for Transaction                                                                                                                                     |
| `online_to_offline_info.expired_date`    | `string` | Mandatory | Expired date for Transaction                                                                                                                                     |
| `online_to_offline_info.reusable_status` | `string` | Mandatory | Reusable status for Payment Code                                                                                                                                 |
| `online_to_offline_payment.identifier`   | `array`  | Mandatory | Identifier for Transaction                                                                                                                                       |
| {% endtab %}                             |          |           |                                                                                                                                                                  |

{% tab title="Indomaret" %}
Indomaret O2O Notification Explanation

| Parameter                                | Type     | Mandatory | Description                                                                                                                                                      |
| ---------------------------------------- | -------- | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `order.invoice_number`                   | `string` | Mandatory | The invoice number that sent when initate the payment                                                                                                            |
| `order.amount`                           | `string` | Mandatory | The amount of the transaction                                                                                                                                    |
| `transaction.status`                     | `string` | Mandatory | <p>The transaction status to be use to update the status on merchant side<br>Possible value: <code>SUCCESS</code>, <code>FAILED</code>, <code>TIMEOUT</code></p> |
| `transaction.date`                       | `string` | Mandatory | The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)                                                                          |
| `transaction.original_request_id`        | `string` | Mandatory | The request ID that sent when initiate the payment                                                                                                               |
| `service.id`                             | `string` | Mandatory | The service that is used for the transaction                                                                                                                     |
| `acquirer.id`                            | `string` | Mandatory | The acquirer that processed the transaction                                                                                                                      |
| `channel.id`                             | `string` | Mandatory | The channel of the transaction                                                                                                                                   |
| `jdm.journey_id`                         | `string` | Mandatory | Journey id for transaction                                                                                                                                       |
| `online_to_offline_info.created_date`    | `string` | Mandatory | Created date for Transaction                                                                                                                                     |
| `online_to_offline_info.expired_date`    | `string` | Mandatory | Expired date for Transaction                                                                                                                                     |
| `online_to_offline_info.reusable_status` | `string` | Mandatory | Reusable status for Payment Code                                                                                                                                 |
| `online_to_offline_payment.identifier`   | `array`  | Mandatory | Identifier for Transaction                                                                                                                                       |
| {% endtab %}                             |          |           |                                                                                                                                                                  |
| {% endtabs %}                            |          |           |                                                                                                                                                                  |

### e-Wallet

* DANA
* ShopeePay
* DOKU e-Wallet
* OVO Push Payment
* OVO Recurring
* Link Aja

The response will be similar to HTTP notification. Some parameters might not be presented in certain status cases, please check our Postman Collection to try it yourself.

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

```json
{
    "order": {
        "invoice_number": "INV-1724393502",
        "amount": 1.00
    },
    "transaction": {
        "status": "SUCCESS",
        "type": "SALE",
        "date": "2024-08-23T06:11:52Z",
        "original_request_id": "3348ca8d-f82b-41ce-aeb1-5d7efe8cf309",
        "service_code": "54"
    },
    "acquirer": {
        "id": "DANA",
        "name": "DANA Snap Direct Debit"
    },
    "channel": {
        "id": "EMONEY_DANA"
    },
    "additional_info": {
        "supportDeepLinkCheckoutUrl": "false",
        "origin": {
            "product": "CHECKOUT",
            "source": "direct",
            "system": "mid-jokul-checkout-system",
            "apiFormat": "JOKUL"
        },
        "line_items": [
            {
                "name": "Very Long Name Which Is Very Loooooong",
                "price": "1",
                "quantity": 1.0
            }
        ],
        "orderTitle": "INV-1724393502",
        "account": {
            "accountNo": "http://doku.com/",
            "accountName": "http://doku.com/"
        },
        "channelId": "http://doku.com/"
    },
    "emoney_payment": {
        "status": "PENDING",
        "date": "20240823131152",
        "approval_code": "v6GZT6pvyHh1basLKudYvkQbpVSs6dvvtbFijLdinbyBSgGdEpCsWmMdgsuYVoT7",
        "response_code": "2005400",
        "response_message": "Success"
    },
    "emoney_configuration": {
        "sub_merchant_id": "test"
    }
}
```

{% endtab %}

{% tab title="ShopeePay" %}

```json
{
    "order": {
        "invoice_number": "INV-testCheckStatusShopeepay",
        "amount": 80003
    },
    "transaction": {
        "status": "SUCCESS",
        "date": "2024-08-23T04:34:58Z",
        "original_request_id": "e9dacd5d-3a63-4776-ac4a-fec9eb4b71a6"
    },
    "acquirer": {
        "id": "SHOPEE_PAY",
        "name": "Shopee Pay"
    },
    "channel": {
        "id": "EMONEY_SHOPEE_PAY"
    },
    "additional_info": {
        "origin": {
            "source": "direct",
            "system": "mid-jokul-checkout-system",
            "product": "CHECKOUT",
            "apiFormat": "JOKUL"
        },
        "line_items": [
            {
                "sku": "FF01",
                "url": "http://item-url.domain/",
                "name": "Fresh flowers",
                "type": "ABC",
                "price": "40003",
                "category": "others",
                "quantity": 1.0,
                "image_url": "http://image-url.domain/"
            },
            {
                "sku": "T01",
                "url": "http://item-url.domain/",
                "name": "T-shirt",
                "type": "ABC",
                "price": "40000",
                "category": "others",
                "quantity": 1.0,
                "image_url": "http://image-url.domain/"
            }
        ],
        "allow_tenor": [
            0.0,
            3.0,
            6.0,
            12.0
        ],
        "doku_wallet_notify_url": "https://dw-notification.merchantdomain"
    },
    "shopeepay_payment": {
        "status": "SUCCESS",
        "date": "20240823113458",
        "identifier": [
            {
                "name": "PAYMENT_REFERENCE_ID",
                "value": "INV-testCheckStatusDANA"
            },
            {
                "name": "TRANSACTION_SN",
                "value": "7803086338142291260544613762532053068807260727842944261355953953"
            },
            {
                "name": "USER_ID_HASH",
                "value": "0272317754971626181110118654850459524546253866569833098069226095"
            }
        ]
    },
    "shopeepay_configuration": {
        "merchant_ext_id": "BRN-0234-1681288290275",
        "payment_return_url": "https://dashboard.doku.com/docs",
        "store_ext_id": "BRN-0234-1681288290275"
    }
}
```

{% endtab %}

{% tab title="OVO Push Payment" %}

```json
{
    "order": {
        "invoice_number": "INV-20210124-0001",
        "amount": 150000
    },
    "transaction": {
        "status": "SUCCESS",
        "date": "2021-08-24T06:55:37Z",
        "original_request_id": "6503362"
    },
    "service": {
        "id": "EMONEY"
    },
    "acquirer": {
        "id": "OVO"
    },
    "channel": {
        "id": "EMONEY_OVO"
    },
    "ovo_payment": {
        "status": "SUCCESS",
        "date": "20210824135537",
        "batch_number": 195,
        "trace_number": 6503362,
        "reference_number": 10,
        "approval_code": "4318514",
        "response_code": "00",
        "cash_used": 150000,
        "cash_balance": 9850000,
        "ovo_points_used": 0,
        "ovo_points_balance": 10000000,
        "ovo_points_earned": 0
    },
    "ovo_configuration": {
        "merchant_id": "123456",
        "tid": "4562019",
        "mid": "Doku20191241234",
        "store_code": "Doku2019"
    },
    "ovo_info": {
        "ovo_account_name": "testing Doku",
        "ovo_id": "081211111111"
    }
}
```

{% endtab %}

{% tab title="OVO Recurring" %}

```json
Coming Soon
```

{% endtab %}

{% tab title="Link Aja" %}

```json
Coming Soon
```

{% endtab %}
{% endtabs %}

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

| Parameter                              | Type     | Mandatory   | Description                                                                                                                                         |
| -------------------------------------- | -------- | ----------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| `order.invoice_number`                 | `string` | Mandatory   | Same as the request that merchant sent on the payment initiation                                                                                    |
| `order.amount`                         | `number` | Mandatory   | Same as the request that merchant sent on the payment initiation                                                                                    |
| `transaction.status`                   | `string` | Mandatory   | <p>The transaction status to be use to update the status on merchant side<br>Possible value: <code>SUCCESS, FAILED, PENDING,REFUNDED</code></p>     |
| `transaction.date`                     | `string` | Mandatory   | The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)                                                             |
| `transaction.service_code`             | string   | Optional    | Service Code                                                                                                                                        |
| `transaction.type`                     | `string` | Conditional | <p>Type for DANA transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br><br>Possible value: <code>SALE</code></p> |
| `transaction.original_request_id`      | `string` | Mandatory   | The request ID that sent when initiate the payment                                                                                                  |
| `service.id`                           | `string` | Mandatory   | The service that is used for the transaction                                                                                                        |
| `acquirer.id`                          | `string` | Conditional | <p>The acquirer that processed the transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS.<br></p>                              |
| `channel.id`                           | `string` | Mandatory   | The channel of the transaction                                                                                                                      |
| `additional_info`                      | array    | Optional    |                                                                                                                                                     |
| `emoney_payment.status`                | `string` | Optional    | Status of the Payment                                                                                                                               |
| `emoney_payment.date`                  | `string` | Optional    | Date of the order                                                                                                                                   |
| `emoney_payment.approval_code`         | `string` | Optional    | Approval Code from DOKU                                                                                                                             |
| `emoney_payment.response_code`         | `string` | Optional    | Response code for the order                                                                                                                         |
| `emoney_payment.response_message`      | `string` | Optional    | Response message for the Order                                                                                                                      |
| `emoney_configuration.sub_merchant.id` | `string` | Optional    | Sub merchant ID                                                                                                                                     |
| {% endtab %}                           |          |             |                                                                                                                                                     |

{% tab title="Shopeepay" %}

| Parameter                                    | Type     | Mandatory   | Description                                                                                                                                         |
| -------------------------------------------- | -------- | ----------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| `order.invoice_number`                       | `string` | Mandatory   | Same as the request that merchant sent on the payment initiation                                                                                    |
| `order.amount`                               | `number` | Mandatory   | Same as the request that merchant sent on the payment initiation                                                                                    |
| `transaction.status`                         | `string` | Mandatory   | <p>The transaction status to be use to update the status on merchant side<br>Possible value: <code>SUCCESS, FAILED, PENDING,REFUNDED</code></p>     |
| `transaction.date`                           | `string` | Mandatory   | The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)                                                             |
| `transaction.service_code`                   | string   | Optional    | Service Code                                                                                                                                        |
| `transaction.type`                           | `string` | Conditional | <p>Type for DANA transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br><br>Possible value: <code>SALE</code></p> |
| `transaction.original_request_id`            | `string` | Mandatory   | The request ID that sent when initiate the payment                                                                                                  |
| `service.id`                                 | `string` | Mandatory   | The service that is used for the transaction                                                                                                        |
| `acquirer.id`                                | `string` | Conditional | <p>The acquirer that processed the transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS.<br></p>                              |
| `channel.id`                                 | `string` | Mandatory   | The channel of the transaction                                                                                                                      |
| `additional_info`                            | array    | Optional    |                                                                                                                                                     |
| `shopeepay_payment.status`                   | `string` | Optional    | Status of the Payment                                                                                                                               |
| `shopeepay_payment.date`                     | `string` | Optional    | Date of the order                                                                                                                                   |
| `shopeepay_payment.identifier`               | `string` | Optional    | Identifier for ShopeePay                                                                                                                            |
| `shopeepay_configuration.merchant_ext_id`    | `string` | Optional    | Merchant Ext Id                                                                                                                                     |
| `shopeepay_configuration.payment_return_url` | `string` | Optional    | Payment return URL                                                                                                                                  |
| `shopeepay_configuration.store_ext_id`       | `string` | Optional    | Store ext id                                                                                                                                        |
| {% endtab %}                                 |          |             |                                                                                                                                                     |

{% tab title="DOKU e-Wallet" %}

```
Coming Soon
```

{% endtab %}

{% tab title="OVO Push Payment" %}
OVO E-Money Check Status Explanation

| Parameter                         | Type     | Mandatory | Description                                                                                                                                                      |
| --------------------------------- | -------- | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `order.invoice_number`            | `string` | Mandatory | The invoice number that sent when initate the payment                                                                                                            |
| `order.amount`                    | `string` | Mandatory | The amount of the transaction                                                                                                                                    |
| `transaction.status`              | `string` | Mandatory | <p>The transaction status to be use to update the status on merchant side<br>Possible value: <code>SUCCESS</code>, <code>FAILED</code>, <code>TIMEOUT</code></p> |
| `transaction.date`                | `string` | Mandatory | The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)                                                                          |
| `transaction.original_request_id` | `string` | Mandatory | The request ID that sent when initiate the payment                                                                                                               |
| `service.id`                      | `string` | Mandatory | The service that is used for the transaction                                                                                                                     |
| `acquirer.id`                     | `string` | Mandatory | The acquirer that processed the transaction                                                                                                                      |
| `channel.id`                      | `string` | Mandatory | The channel of the transaction                                                                                                                                   |
| `ovo_payment.status`              | `string` | Mandatory | Payment status generated by DOKU                                                                                                                                 |
| `ovo_payment.date`                | `string` | Mandatory | Payment date generated by DOKU with the format of yyyyMMddHHmmss UTC+7 time                                                                                      |
| `ovo_payment.batch_number`        | `number` | Mandatory | Batch number of transaction for settlement. Value increment on daily basis, except if the Reference Number already reached maximum value                         |
| `ovo_payment.trace_number`        | `number` | Mandatory | <p>Generated by OVO<br>Max length: <code>6</code></p>                                                                                                            |
| `ovo_payment.reference_number`    | `number` | Mandatory | <p>Transaction ID for every transaction generated by OVO. Increment for each Push to Pay Transaction<br>Maximum value: <code>999999</code></p>                   |
| `ovo_payment.approval_code`       | `string` | Mandatory | Generated by OVO                                                                                                                                                 |
| `ovo_payment.response_code`       | `string` | Mandatory | Generated by OVO. Please refer to the section below for the `response_code` mapping                                                                              |
| `ovo_payment.cash_used`           | `number` | Optional  | OVO Cash that being charged for the transaction                                                                                                                  |
| `ovo_payment.cash_balance`        | `number` | Optional  | OVO Cash remaining balance after the transaction                                                                                                                 |
| `ovo_payment.ovo_points_used`     | `number` | Optional  | OVO Points that being charged for the transaction                                                                                                                |
| `ovo_payment.ovo_points_balance`  | `number` | Optional  | OVO Points remaining balance after the transaction                                                                                                               |
| `ovo_payment.ovo_points_earned`   | `number` | Optional  | OVO Points earned after the transaction                                                                                                                          |
| `ovo_configuration.merchant_id`   | `string` | Optional  | <p>Merchant ID by OVO<br>Allowed chars: <code>numeric</code><br>Max length: <code>7</code></p>                                                                   |
| `ovo_configuration.tid`           | `string` | Optional  | <p>TID by OVO<br>Allowed chars: <code>numeric</code><br>Max length: <code>8</code></p>                                                                           |
| `ovo_configuration.mid`           | `string` | Optional  | <p>MID by OVO<br>Allowed chars: <code>alphabetic, numeric</code><br>Max length: <code>15</code></p>                                                              |
| `ovo_configuration.store_code`    | `string` | Optional  | <p>Store code by OVO Allowed chars: <code>alphabetic, numeric</code><br>Max length: <code>15</code></p>                                                          |
| `ovo_info.ovo_account_name`       | `string` | Optional  | Name of the OVO customer                                                                                                                                         |
| `ovo_info.ovo_id`                 | `string` | Mandatory | ID for OVO phone number to do payment                                                                                                                            |
| {% endtab %}                      |          |           |                                                                                                                                                                  |

{% tab title="OVO Recurring" %}

```
Coming Soon
```

{% endtab %}

{% tab title="Link Aja" %}

```
Coming Soon
```

{% endtab %}
{% endtabs %}

### Direct Debit

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

```json
{
    "order": {
        "amount": 500000,
        "invoice_number":"INV-20210217-0003"
    },
    "channel":{
        "id":"DIRECT_DEBIT_BRI"
    },
    "service":{
        "id":"DIRECT_DEBIT"
    },
    "acquirer":{
        "id":"BRI"
    },
    "transaction":{
        "date":"2021-02-17T09:50:17.235078",
        "status":"SUCCESS",
        "original_request_id":"20210217095009645"
    },
    "card_payment":{
        "payment_id":"432828221538",
        "response_code":"0000",
        "response_message":"SUCCESS",
        "masked_card_number":"************8232"
    }
}
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="BRI" %}
Direct Debit Notification Explanation

| Parameter                         | Type     | Mandatory | Description                                                                                                                   |
| --------------------------------- | -------- | --------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `order.invoice_number`            | `string` | Mandatory | Same as the request that merchant sent on the payment initiation                                                              |
| `order.amount`                    | `number` | Mandatory | Same as the request that merchant sent on the payment initiation                                                              |
| `transaction.status`              | `string` | Mandatory | <p>The transaction status to be use to update the status on merchant side<br>Possible value: <code>SUCCESS, FAILED</code></p> |
| `transaction.date`                | `string` | Mandatory | The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)                                       |
| `transaction.original_request_id` | `string` | Mandatory | The request ID that sent when initiate the payment                                                                            |
| `service.id`                      | `string` | Mandatory | The service that is used for the transaction                                                                                  |
| `acquirer.id`                     | `string` | Mandatory | The acquirer that processed the transaction                                                                                   |
| `channel.id`                      | `string` | Mandatory | The channel of the transaction                                                                                                |
| `card_payment.masked_card_number` | `string` | Optional  | The masked card number that charged for this transaction                                                                      |
| `card_payment.payment_id`         | `string` | Optional  | The token that will be use for this transaction                                                                               |
| `card_payment.response_code`      | `string` | Optional  | <p>DOKU / Acquirer response code<br>Possible value: see here</p>                                                              |
| `card_payment.response_message`   | `string` | Optional  | <p>DOKU / Acquirer response code<br>Possible value: see here</p>                                                              |
| {% endtab %}                      |          |           |                                                                                                                               |
| {% endtabs %}                     |          |           |                                                                                                                               |

### Cards

* Sale
* Recurring
* Authorize
* Capture

The response will be similar to HTTP notification. Some parameters might not be presented in certain status cases, please check our Postman Collection to try it yourself.

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

```json
{
    "order": {
        "invoice_number": "INV-1645668870",
        "amount": 90000
    },
    "transaction": {
        "status": "SUCCESS",
        "date": "2022-02-24T02:15:05Z",
        "type": "RECURRING",
        "original_request_id": "091773eb-a482-408d-949d-73281d91f610"
    },
    "service": {
        "id": "CREDIT_CARD"
    },
    "acquirer": {
        "id": "BANK_MANDIRI"
    },
    "channel": {
        "id": "CREDIT_CARD"
    },
    "card_payment": {
        "card_masked": "461700*******6656",
        "approval_code": "194462",
        "response_code": "00",
        "response_message": "PAYMENT APPROVED",
        "type": "RECURRING",
        "acquiring_off_us_status": "FALSE",
        "request_id": "091773eb-a482-408d-949d-73281d91f610",
        "card_type": "Debit",
        "three_dsecure_status": "TRUE",
        "issuer": "PT. BANK MANDIRI (PERSERO), Tbk",
        "transaction_status": "SUCCESS",
        "brand": "VISA",
        "date": "2022-02-24T02:15:05Z"

    }
}
```

{% endtab %}

{% tab title="Recurring" %}

```json
{
    "order": {
        "invoice_number": "INV-1645668870",
        "amount": 90000
    },
    "transaction": {
        "status": "SUCCESS",
        "date": "2022-02-24T02:15:05Z",
        "type": "RECURRING",
        "original_request_id": "091773eb-a482-408d-949d-73281d91f610"
    },
    "service": {
        "id": "CREDIT_CARD"
    },
    "acquirer": {
        "id": "BANK_MANDIRI"
    },
    "channel": {
        "id": "CREDIT_CARD"
    },
    "card_payment": {
        "card_masked": "461700*******6656",
        "approval_code": "194462",
        "response_code": "00",
        "response_message": "PAYMENT APPROVED",
        "type": "RECURRING",
        "acquiring_off_us_status": "FALSE",
        "request_id": "091773eb-a482-408d-949d-73281d91f610",
        "card_type": "Debit",
        "three_dsecure_status": "TRUE",
        "issuer": "PT. BANK MANDIRI (PERSERO), Tbk",
        "transaction_status": "SUCCESS",
        "brand": "VISA",
        "date": "2022-02-24T02:15:05Z"

    }
}
```

{% endtab %}

{% tab title="Authorize" %}

```json
{
    "order": {
        "invoice_number": "INV-1645668870",
        "amount": 90000
    },
    "transaction": {
        "status": "PENDING",
        "date": "2022-02-24T02:15:05Z",
        "type": "AUTHORIZE",
        "original_request_id": "091773eb-a482-408d-949d-73281d91f610"
    },
    "service": {
        "id": "CREDIT_CARD"
    },
    "acquirer": {
        "id": "BANK_MANDIRI"
    },
    "channel": {
        "id": "CREDIT_CARD"
    },
    "card_payment": {
        "card_masked": "461700*******6656",
        "approval_code": "194462",
        "response_code": "00",
        "response_message": "PAYMENT APPROVED",
        "type": "AUTHORIZE",
        "acquiring_off_us_status": "FALSE",
        "request_id": "091773eb-a482-408d-949d-73281d91f610",
        "card_type": "Debit",
        "three_dsecure_status": "TRUE",
        "issuer": "PT. BANK MANDIRI (PERSERO), Tbk",
        "transaction_status": "SUCCESS",
        "brand": "VISA",
        "date": "2022-02-24T02:15:05Z",
        "authorize_id": "16837980314548456",
        "authentication_id": "baf706e020fa7cf89be687dbac665f1657def6629331716555974ff926013acb",

    }
}
```

{% endtab %}

{% tab title="Capture" %}

```json
{
    "order": {
        "invoice_number": "INV-1645668870",
        "amount": 90000
    },
    "transaction": {
        "status": "SUCCESS",
        "date": "2022-02-24T02:15:05Z",
        "type": "CAPTURE",
        "original_request_id": "091773eb-a482-408d-949d-73281d91f610"
    },
    "service": {
        "id": "CREDIT_CARD"
    },
    "acquirer": {
        "id": "BANK_MANDIRI"
    },
    "channel": {
        "id": "CREDIT_CARD"
    },
    "card_payment": {
        "card_masked": "461700*******6656",
        "approval_code": "194462",
        "response_code": "00",
        "response_message": "PAYMENT APPROVED",
        "type": "CAPTURE",
        "acquiring_off_us_status": "FALSE",
        "request_id": "091773eb-a482-408d-949d-73281d91f610",
        "card_type": "Debit",
        "three_dsecure_status": "TRUE",
        "issuer": "PT. BANK MANDIRI (PERSERO), Tbk",
        "transaction_status": "SUCCESS",
        "brand": "VISA",
        "date": "2022-02-24T02:15:05Z"
        "authorize_id": "16837980314548456",
    }
}
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Sale" %}
Credit Card Notification Explanation

| Parameter                              | Type     | Mandatory   | Description                                                                                                                                                                                                          |
| -------------------------------------- | -------- | ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `order.invoice_number`                 | `string` | Mandatory   | Same as the request that merchant sent on the payment initiation                                                                                                                                                     |
| `order.amount`                         | `number` | Mandatory   | Same as the request that merchant sent on the payment initiation                                                                                                                                                     |
| `transaction.status`                   | `string` | Mandatory   | <p>The transaction status to be use to update the status on merchant side<br>Possible value: <code>SUCCESS, FAILED, PENDING, REFUNDED</code></p>                                                                     |
| `transaction.date`                     | `string` | Mandatory   | The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)                                                                                                                              |
| `transaction.type`                     | `string` | Conditional | <p>Type for Credit Card Transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br><br>Possible value: <code>SALE, INSTALLMENT, MOTO, AUTHORIZE, CAPTURE, RECURRING, REFUND</code></p> |
| `transaction.original_request_id`      | `string` | Mandatory   | The request ID that sent when initiate the payment                                                                                                                                                                   |
| `service.id`                           | `string` | Mandatory   | The service that is used for the transaction                                                                                                                                                                         |
| `acquirer.id`                          | `string` | Conditional | <p>The acquirer that processed the transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS.<br></p>                                                                                               |
| `channel.id`                           | `string` | Mandatory   | The channel of the transaction                                                                                                                                                                                       |
| `card_payment.card_masked`             | `string` | Conditional | <p>The masked card number that charged for this transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                        |
| `card_payment.approval_code`           | `string` | Conditional | <p>Acquirer approval code for this transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                     |
| `card_payment.response_code`           | `string` | Conditional | <p>Acquirer response code.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                                          |
| `card_payment.response_message`        | `string` | Conditional | <p>Acquirer response code<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                                           |
| `card_payment.type`                    | `string` | Conditional | <p>Type for Credit Card Transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br><br>Possible value: <code>SALE, INSTALLMENT, MOTO, AUTHORIZE, CAPTURE, RECURRING, REFUND</code></p> |
| `card_payment.acquiring_off_us_status` | `string` | Mandatory   | <p>Payment acquiring\_off\_us\_status<br>Possible value: <code>true, false</code></p>                                                                                                                                |
| `card_payment.request_id`              | `string` | Mandatory   | Request ID for transaction                                                                                                                                                                                           |
| `card_payment.card_type`               | `string` | Conditional | <p>Card type.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br><br>Possible value: <code>CREDIT, DEBIT</code></p>                                                                         |
| `card_payment.three_dsecure_status`    | `string` | Optional    | <p>Three dsecure status<br>Possible value: <code>TRUE, FALSE</code></p>                                                                                                                                              |
| `card_payment.issuer`                  | `string` | Conditional | <p>Card issuer.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                                                     |
| `card_payment.transaction_status`      | `string` | Mandatory   | <p>Transaction status<br>Possible value: <code>SUCCESS, FAILED, PENDING</code></p>                                                                                                                                   |
| `card_payment.brand`                   | `string` | Conditional | <p>Card brand.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                                                      |
| `card_payment.date`                    | `string` | Optional    | Transaction card date                                                                                                                                                                                                |
| `card_payment.authorize_id`            | `string` | Optional    | Transaction authorize ID                                                                                                                                                                                             |
| `card_payment.authentication_id`       | `string` | Optional    | Transaction authentication ID                                                                                                                                                                                        |

| Parameter                              | Type     | Mandatory   | Description                                                                                                                                                                                                          |
| -------------------------------------- | -------- | ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `order.invoice_number`                 | `string` | Mandatory   | Same as the request that merchant sent on the payment initiation                                                                                                                                                     |
| `order.amount`                         | `number` | Mandatory   | Same as the request that merchant sent on the payment initiation                                                                                                                                                     |
| `transaction.status`                   | `string` | Mandatory   | <p>The transaction status to be use to update the status on merchant side<br>Possible value: <code>SUCCESS, FAILED, PENDING</code></p>                                                                               |
| `transaction.date`                     | `string` | Mandatory   | The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)                                                                                                                              |
| `transaction.type`                     | `string` | Conditional | <p>Type for Credit Card Transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br><br>Possible value: <code>SALE, INSTALLMENT, MOTO, AUTHORIZE, CAPTURE, RECURRING, REFUND</code></p> |
| `transaction.original_request_id`      | `string` | Mandatory   | The request ID that sent when initiate the payment                                                                                                                                                                   |
| `service.id`                           | `string` | Mandatory   | The service that is used for the transaction                                                                                                                                                                         |
| `acquirer.id`                          | `string` | Conditional | <p>The acquirer that processed the transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS.<br></p>                                                                                               |
| `channel.id`                           | `string` | Mandatory   | The channel of the transaction                                                                                                                                                                                       |
| `card_payment.card_masked`             | `string` | Conditional | <p>The masked card number that charged for this transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                        |
| `card_payment.approval_code`           | `string` | Conditional | <p>Acquirer approval code for this transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                     |
| `card_payment.response_code`           | `string` | Conditional | <p>Acquirer response code.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                                          |
| `card_payment.response_message`        | `string` | Conditional | <p>Acquirer response code<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                                           |
| `card_payment.type`                    | `string` | Conditional | <p>Type for Credit Card Transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br><br>Possible value: <code>SALE, INSTALLMENT, MOTO, AUTHORIZE, CAPTURE, RECURRING, REFUND</code></p> |
| `card_payment.acquiring_off_us_status` | `string` | Mandatory   | <p>Payment acquiring\_off\_us\_status<br>Possible value: <code>true, false</code></p>                                                                                                                                |
| `card_payment.request_id`              | `string` | Mandatory   | Request ID for transaction                                                                                                                                                                                           |
| `card_payment.card_type`               | `string` | Conditional | <p>Card type.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br><br>Possible value: <code>CREDIT, DEBIT</code></p>                                                                         |
| `card_payment.three_dsecure_status`    | `string` | Optional    | <p>Three dsecure status<br>Possible value: <code>TRUE, FALSE</code></p>                                                                                                                                              |
| `card_payment.issuer`                  | `string` | Conditional | <p>Card issuer.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                                                     |
| `card_payment.transaction_status`      | `string` | Mandatory   | <p>Transaction status<br>Possible value: <code>SUCCESS, FAILED, PENDING</code></p>                                                                                                                                   |
| `card_payment.brand`                   | `string` | Conditional | <p>Card brand.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                                                      |
| `card_payment.date`                    | `string` | Optional    | Transaction card date                                                                                                                                                                                                |
| `card_payment.authorize_id`            | `string` | Optional    | Transaction authorize ID                                                                                                                                                                                             |
| `card_payment.authentication_id`       | `string` | Optional    | Credit Card Notification Explanation                                                                                                                                                                                 |
| {% endtab %}                           |          |             |                                                                                                                                                                                                                      |

{% tab title="Recurring" %}
Credit Card Notification Explanation

| Parameter                              | Type     | Mandatory   | Description                                                                                                                                                                                                          |
| -------------------------------------- | -------- | ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `order.invoice_number`                 | `string` | Mandatory   | Same as the request that merchant sent on the payment initiation                                                                                                                                                     |
| `order.amount`                         | `number` | Mandatory   | Same as the request that merchant sent on the payment initiation                                                                                                                                                     |
| `transaction.status`                   | `string` | Mandatory   | <p>The transaction status to be use to update the status on merchant side<br>Possible value: <code>SUCCESS, FAILED, PENDING</code></p>                                                                               |
| `transaction.date`                     | `string` | Mandatory   | The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)                                                                                                                              |
| `transaction.type`                     | `string` | Conditional | <p>Type for Credit Card Transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br><br>Possible value: <code>SALE, INSTALLMENT, MOTO, AUTHORIZE, CAPTURE, RECURRING, REFUND</code></p> |
| `transaction.original_request_id`      | `string` | Mandatory   | The request ID that sent when initiate the payment                                                                                                                                                                   |
| `service.id`                           | `string` | Mandatory   | The service that is used for the transaction                                                                                                                                                                         |
| `acquirer.id`                          | `string` | Conditional | <p>The acquirer that processed the transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS.<br></p>                                                                                               |
| `channel.id`                           | `string` | Mandatory   | The channel of the transaction                                                                                                                                                                                       |
| `card_payment.card_masked`             | `string` | Conditional | <p>The masked card number that charged for this transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                        |
| `card_payment.approval_code`           | `string` | Conditional | <p>Acquirer approval code for this transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                     |
| `card_payment.response_code`           | `string` | Conditional | <p>Acquirer response code.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                                          |
| `card_payment.response_message`        | `string` | Conditional | <p>Acquirer response code<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                                           |
| `card_payment.type`                    | `string` | Conditional | <p>Type for Credit Card Transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br><br>Possible value: <code>SALE, INSTALLMENT, MOTO, AUTHORIZE, CAPTURE, RECURRING, REFUND</code></p> |
| `card_payment.acquiring_off_us_status` | `string` | Mandatory   | <p>Payment acquiring\_off\_us\_status<br>Possible value: <code>true, false</code></p>                                                                                                                                |
| `card_payment.request_id`              | `string` | Mandatory   | Request ID for transaction                                                                                                                                                                                           |
| `card_payment.card_type`               | `string` | Conditional | <p>Card type.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br><br>Possible value: <code>CREDIT, DEBIT</code></p>                                                                         |
| `card_payment.three_dsecure_status`    | `string` | Optional    | <p>Three dsecure status<br>Possible value: <code>TRUE, FALSE</code></p>                                                                                                                                              |
| `card_payment.issuer`                  | `string` | Conditional | <p>Card issuer.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                                                     |
| `card_payment.transaction_status`      | `string` | Mandatory   | <p>Transaction status<br>Possible value: <code>SUCCESS, FAILED, PENDING</code></p>                                                                                                                                   |
| `card_payment.brand`                   | `string` | Conditional | <p>Card brand.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                                                      |
| `card_payment.date`                    | `string` | Optional    | Transaction card date                                                                                                                                                                                                |
| `card_payment.authorize_id`            | `string` | Optional    | Transaction authorize ID                                                                                                                                                                                             |
| `card_payment.authentication_id`       | `string` | Optional    | Transaction authentication ID                                                                                                                                                                                        |
| {% endtab %}                           |          |             |                                                                                                                                                                                                                      |

{% tab title="Authorize" %}
Credit Card Notification Explanation

| Parameter                              | Type     | Mandatory   | Description                                                                                                                                                                                                          |
| -------------------------------------- | -------- | ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `order.invoice_number`                 | `string` | Mandatory   | Same as the request that merchant sent on the payment initiation                                                                                                                                                     |
| `order.amount`                         | `number` | Mandatory   | Same as the request that merchant sent on the payment initiation                                                                                                                                                     |
| `transaction.status`                   | `string` | Mandatory   | <p>The transaction status to be use to update the status on merchant side<br>Possible value: <code>SUCCESS, FAILED, PENDING</code></p>                                                                               |
| `transaction.date`                     | `string` | Mandatory   | The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)                                                                                                                              |
| `transaction.type`                     | `string` | Conditional | <p>Type for Credit Card Transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br><br>Possible value: <code>SALE, INSTALLMENT, MOTO, AUTHORIZE, CAPTURE, RECURRING, REFUND</code></p> |
| `transaction.original_request_id`      | `string` | Mandatory   | The request ID that sent when initiate the payment                                                                                                                                                                   |
| `service.id`                           | `string` | Mandatory   | The service that is used for the transaction                                                                                                                                                                         |
| `acquirer.id`                          | `string` | Conditional | <p>The acquirer that processed the transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS.<br></p>                                                                                               |
| `channel.id`                           | `string` | Mandatory   | The channel of the transaction                                                                                                                                                                                       |
| `card_payment.card_masked`             | `string` | Conditional | <p>The masked card number that charged for this transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                        |
| `card_payment.approval_code`           | `string` | Conditional | <p>Acquirer approval code for this transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                     |
| `card_payment.response_code`           | `string` | Conditional | <p>Acquirer response code.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                                          |
| `card_payment.response_message`        | `string` | Conditional | <p>Acquirer response code<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                                           |
| `card_payment.type`                    | `string` | Conditional | <p>Type for Credit Card Transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br><br>Possible value: <code>SALE, INSTALLMENT, MOTO, AUTHORIZE, CAPTURE, RECURRING, REFUND</code></p> |
| `card_payment.acquiring_off_us_status` | `string` | Mandatory   | <p>Payment acquiring\_off\_us\_status<br>Possible value: <code>true, false</code></p>                                                                                                                                |
| `card_payment.request_id`              | `string` | Mandatory   | Request ID for transaction                                                                                                                                                                                           |
| `card_payment.card_type`               | `string` | Conditional | <p>Card type.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br><br>Possible value: <code>CREDIT, DEBIT</code></p>                                                                         |
| `card_payment.three_dsecure_status`    | `string` | Optional    | <p>Three dsecure status<br>Possible value: <code>TRUE, FALSE</code></p>                                                                                                                                              |
| `card_payment.issuer`                  | `string` | Conditional | <p>Card issuer.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                                                     |
| `card_payment.transaction_status`      | `string` | Mandatory   | <p>Transaction status<br>Possible value: <code>SUCCESS, FAILED, PENDING</code></p>                                                                                                                                   |
| `card_payment.brand`                   | `string` | Conditional | <p>Card brand.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                                                      |
| `card_payment.date`                    | `string` | Optional    | Transaction card date                                                                                                                                                                                                |
| `card_payment.authorize_id`            | `string` | Optional    | Transaction authorize ID                                                                                                                                                                                             |
| `card_payment.authentication_id`       | `string` | Optional    | Transaction authentication ID                                                                                                                                                                                        |
| {% endtab %}                           |          |             |                                                                                                                                                                                                                      |

{% tab title="Capture" %}
Credit Card Notification Explanation

| Parameter                              | Type     | Mandatory   | Description                                                                                                                                                                                                          |
| -------------------------------------- | -------- | ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `order.invoice_number`                 | `string` | Mandatory   | Same as the request that merchant sent on the payment initiation                                                                                                                                                     |
| `order.amount`                         | `number` | Mandatory   | Same as the request that merchant sent on the payment initiation                                                                                                                                                     |
| `transaction.status`                   | `string` | Mandatory   | <p>The transaction status to be use to update the status on merchant side<br>Possible value: <code>SUCCESS, FAILED, PENDING</code></p>                                                                               |
| `transaction.date`                     | `string` | Mandatory   | The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)                                                                                                                              |
| `transaction.type`                     | `string` | Conditional | <p>Type for Credit Card Transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br><br>Possible value: <code>SALE, INSTALLMENT, MOTO, AUTHORIZE, CAPTURE, RECURRING, REFUND</code></p> |
| `transaction.original_request_id`      | `string` | Mandatory   | The request ID that sent when initiate the payment                                                                                                                                                                   |
| `service.id`                           | `string` | Mandatory   | The service that is used for the transaction                                                                                                                                                                         |
| `acquirer.id`                          | `string` | Conditional | <p>The acquirer that processed the transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS.<br></p>                                                                                               |
| `channel.id`                           | `string` | Mandatory   | The channel of the transaction                                                                                                                                                                                       |
| `card_payment.card_masked`             | `string` | Conditional | <p>The masked card number that charged for this transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                        |
| `card_payment.approval_code`           | `string` | Conditional | <p>Acquirer approval code for this transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                     |
| `card_payment.response_code`           | `string` | Conditional | <p>Acquirer response code.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                                          |
| `card_payment.response_message`        | `string` | Conditional | <p>Acquirer response code<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                                           |
| `card_payment.type`                    | `string` | Conditional | <p>Type for Credit Card Transaction.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br><br>Possible value: <code>SALE, INSTALLMENT, MOTO, AUTHORIZE, CAPTURE, RECURRING, REFUND</code></p> |
| `card_payment.acquiring_off_us_status` | `string` | Mandatory   | <p>Payment acquiring\_off\_us\_status<br>Possible value: <code>true, false</code></p>                                                                                                                                |
| `card_payment.request_id`              | `string` | Mandatory   | Request ID for transaction                                                                                                                                                                                           |
| `card_payment.card_type`               | `string` | Conditional | <p>Card type.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br><br>Possible value: <code>CREDIT, DEBIT</code></p>                                                                         |
| `card_payment.three_dsecure_status`    | `string` | Optional    | <p>Three dsecure status<br>Possible value: <code>TRUE, FALSE</code></p>                                                                                                                                              |
| `card_payment.issuer`                  | `string` | Conditional | <p>Card issuer.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                                                     |
| `card_payment.transaction_status`      | `string` | Mandatory   | <p>Transaction status<br>Possible value: <code>SUCCESS, FAILED, PENDING</code></p>                                                                                                                                   |
| `card_payment.brand`                   | `string` | Conditional | <p>Card brand.<br>Mandatory if <code>transaction.status</code> value SUCCESS or FAILED.<br></p>                                                                                                                      |
| `card_payment.date`                    | `string` | Optional    | Transaction card date                                                                                                                                                                                                |
| `card_payment.authorize_id`            | `string` | Optional    | Transaction authorize ID                                                                                                                                                                                             |
| `card_payment.authentication_id`       | `string` | Optional    | Transaction authentication ID                                                                                                                                                                                        |
| {% endtab %}                           |          |             |                                                                                                                                                                                                                      |
| {% endtabs %}                          |          |             |                                                                                                                                                                                                                      |

### Paylater

The response will be similar to HTTP notification. Some parameters might not be presented in certain status cases, please check our Postman Collection to try it yourself.

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

```json
{
    "order": {
        "invoice_number": "invoice-000001014123sdd4",
        "amount": 110000
    },
    "transaction": {
        "status": "PENDING",
        "date": "2024-07-12T06:47:40Z",
        "original_request_id": "93337206-946b-4949-b0c9-15cd04556e09"
    },
    "service": {
        "id": "PEER_TO_PEER"
    },
    "acquirer": {
        "id": "AKULAKU",
        "name": "Akulaku"
    },
    "channel": {
        "id": "PEER_TO_PEER_AKULAKU"
    },
    "peer_to_peer_payment": {
        "status": "PENDING",
        "date": "2024-07-12T06:47:40Z",
        "identifier": [
            {
                "name": "merchant_unique_reference",
                "value": "TEST-ABC-000104"
            },
            {
                "name": "akulaku_unique_reference",
                "value": "MCH-0008-1218873017641TEST-ABC-000104"
            },
            {
                "name": "order_id",
                "value": "MCH-0008-1218873017641TEST-ABC-000104"
            }
        ]
    }
}
```

{% endtab %}

{% tab title="Kredivo" %}

```json
{
    "order": {
        "invoice_number": "invoice-000001014123sdd4",
        "amount": 110000
    },
    "transaction": {
        "status": "PENDING",
        "date": "2024-07-12T06:47:40Z",
        "original_request_id": "93337206-946b-4949-b0c9-15cd04556e09"
    },
    "service": {
        "id": "PEER_TO_PEER"
    },
    "acquirer": {
        "id": "KREDIVO",
        "name": "Kredivo"
    },
    "channel": {
        "id": "PEER_TO_PEER_KREDIVO"
    },
    "peer_to_peer_payment": {
        "status": "PENDING",
        "date": "2024-07-12T06:47:40Z",
        "identifier": [
            {
                "name": "merchant_unique_reference",
                "value": "TEST-ABC-000104"
            },
            {
                "name": "kredivo_unique_reference",
                "value": "MCH-0008-1218873017641TEST-ABC-000104"
            },
            {
                "name": "order_id",
                "value": "MCH-0008-1218873017641TEST-ABC-000104"
            }
        ]
    }
}
```

{% endtab %}

{% tab title="Indodana" %}

<pre class="language-json"><code class="lang-json"><strong>{
</strong>    "order": {
        "invoice_number": "invoice-000001014123sdd4",
        "amount": 110000
    },
    "transaction": {
        "status": "PENDING",
        "date": "2024-07-12T06:47:40Z",
        "original_request_id": "93337206-946b-4949-b0c9-15cd04556e09"
    },
    "service": {
        "id": "PEER_TO_PEER"
    },
    "acquirer": {
        "id": "INDODANA",
        "name": "Indodana"
    },
    "channel": {
        "id": "PEER_TO_PEER_INDODANA"
    },
    "peer_to_peer_payment": {
        "status": "PENDING",
        "date": "2024-07-12T06:47:40Z",
        "identifier": [
            {
                "name": "merchant_unique_reference",
                "value": "TEST-ABC-000104"
            },
            {
                "name": "indodana_unique_reference",
                "value": "MCH-0008-1218873017641TEST-ABC-000104"
            },
            {
                "name": "order_id",
                "value": "MCH-0008-1218873017641TEST-ABC-000104"
            }
        ]
    }
}
</code></pre>

{% endtab %}
{% endtabs %}

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

| Parameter                                                                | Type     | Mandatory | Description                                                                                                                    |
| ------------------------------------------------------------------------ | -------- | --------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `service.id`                                                             | `string` | Mandatory | The service that is used for the transaction                                                                                   |
| `acquirer.id`                                                            | `string` | Mandatory | The acquirer that processed the transaction                                                                                    |
| `channel.id`                                                             | `string` | Mandatory | The channel of the transaction                                                                                                 |
| `order.invoice_number`                                                   | `string` | Mandatory | Same as the request that merchant sent on the payment initiation                                                               |
| `order.amount`                                                           | `number` | Mandatory | Same as the request that merchant sent on the payment initiation                                                               |
| `transaction.status`                                                     | `string` | Mandatory | <p>The transaction status to be use to update the status on merchant side<br>Possible value: <code>SUCCESS, PENDING</code></p> |
| `transaction.date`                                                       | `string` | Mandatory | The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)                                        |
| `transaction.original_request_id`                                        | `string` | Mandatory | The request ID that sent when initiate the payment                                                                             |
| <p><code>payment.</code><br><code>merchant\_unique\_reference</code></p> | `string` | Mandatory | The merchant unique reference that sent when initiate the payment                                                              |
| {% endtab %}                                                             |          |           |                                                                                                                                |

{% tab title="Kredivo" %}

| Parameter                                                                | Type     | Mandatory | Description                                                                                                                    |
| ------------------------------------------------------------------------ | -------- | --------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `service.id`                                                             | `string` | Mandatory | The service that is used for the transaction                                                                                   |
| `acquirer.id`                                                            | `string` | Mandatory | The acquirer that processed the transaction                                                                                    |
| `channel.id`                                                             | `string` | Mandatory | The channel of the transaction                                                                                                 |
| `order.invoice_number`                                                   | `string` | Mandatory | Same as the request that merchant sent on the payment initiation                                                               |
| `order.amount`                                                           | `number` | Mandatory | Same as the request that merchant sent on the payment initiation                                                               |
| `transaction.status`                                                     | `string` | Mandatory | <p>The transaction status to be use to update the status on merchant side<br>Possible value: <code>SUCCESS, PENDING</code></p> |
| `transaction.date`                                                       | `string` | Mandatory | The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)                                        |
| `transaction.original_request_id`                                        | `string` | Mandatory | The request ID that sent when initiate the payment                                                                             |
| <p><code>payment.</code><br><code>merchant\_unique\_reference</code></p> | `string` | Mandatory | The merchant unique reference that sent when initiate the payment                                                              |
| {% endtab %}                                                             |          |           |                                                                                                                                |

{% tab title="Indodana" %}
Response Explanation

| Parameter                                                                | Type     | Mandatory | Description                                                                                                                    |
| ------------------------------------------------------------------------ | -------- | --------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `service.id`                                                             | `string` | Mandatory | The service that is used for the transaction                                                                                   |
| `acquirer.id`                                                            | `string` | Mandatory | The acquirer that processed the transaction                                                                                    |
| `channel.id`                                                             | `string` | Mandatory | The channel of the transaction                                                                                                 |
| `order.invoice_number`                                                   | `string` | Mandatory | Same as the request that merchant sent on the payment initiation                                                               |
| `order.amount`                                                           | `number` | Mandatory | Same as the request that merchant sent on the payment initiation                                                               |
| `transaction.status`                                                     | `string` | Mandatory | <p>The transaction status to be use to update the status on merchant side<br>Possible value: <code>SUCCESS, PENDING</code></p> |
| `transaction.date`                                                       | `string` | Mandatory | The date when the transaction is completed by the customer in ISO 8601 format (UTC + 0)                                        |
| `transaction.original_request_id`                                        | `string` | Mandatory | The request ID that sent when initiate the payment                                                                             |
| <p><code>payment.</code><br><code>merchant\_unique\_reference</code></p> | `string` | Mandatory | The merchant unique reference that sent when initiate the payment                                                              |
| {% endtab %}                                                             |          |           |                                                                                                                                |
| {% endtabs %}                                                            |          |           |                                                                                                                                |
