> For the complete documentation index, see [llms.txt](https://developers.doku.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developers.doku.com/get-started-with-doku-api/signature-component/snap.md).

# SNAP

### Introduction

Before you hit API on DOKU side, you need to understand how to generate a `X-Signature`. &#x20;

`X-Signature` is a security parameter that must be generated on the merchant's backend to verify the authenticity of the request.

Here is the case the `X-Signature` is used:

1. When merchant hits DOKU endpoints
   1. Merchant generate `X-Signature` in Request Header : Merchant must generate the x-signature in request header and DOKU will verify the authenticity.
   2. For Register the virtual Account you have to use Symmetric Signature. [Learn how to generate Symmetric Signature](/get-started-with-doku-api/signature-component/snap/symmetric-signature.md).
2. When DOKU hits merchant endpoints (HTTP Notification / Inquiry Request).\
   Merchant must also verify the `X-Signature` that DOKU sends on the request header when DOKU Notification hits merchant `Merchant domain URL`, to verify the notification request is coming from DOKU.  [Learn how to generate Symmetric Signature](/get-started-with-doku-api/signature-component/snap/symmetric-signature.md).

### **Signature Type**

1. **Symmetric Signature**

{% hint style="info" %}
When to use ?&#x20;

For  transaction request such as Create VA, Account Binding, OTP Verification, Check Balance Inquiry, Payment, Refund, Account Unbinding,  and Transfer Bank
{% endhint %}

2. **Asymmetric Signature**

{% hint style="info" %}
When to use ?&#x20;

For Get Token B2B and Get Token B2B2C
{% endhint %}

***
