Authentication Symmetric SNAP
To ensure secure and reliable communication between your system and DANA's SNAP API, Bank Indonesia mandates the use of Symmetric Signature Authentication combined with a B2B Access Token. This method leverages cryptographic keys to verify the identity of the sender and protect data integrity during transactions.
Overview
In the asymmetric signature scheme:
- Private Key: Used by you (the merchant) to digitally sign API requests.
- Public Key: Shared with DANA to verify the authenticity of your requests.
- B2B Access Token: A temporary token retrieved via the Authorization Token Request API, used to authorize transactional API requests.
By signing your request data with your private key, you provide a secure proof that the request originates from an authorized source. This process is critical to meeting the regulatory standards mandated by Bank Indonesia.
DANA Public Key
To obtain Production DANA Public Key, please contact the DANA integration team through our Discord channel .
Using the Credential
You will receive two credentials: a Private Key and a Public Key.
The Private Key is used to authenticate and communicate securely with DANA. Keep this key confidential and do not share it. The Public Key must be shared with DANA by uploading it through the Merchant Portal during form submission. After successful submission, you will receive other credentials, including Merchant ID, Client ID (also known as X-PARTNER-ID), and Client Secret.
Symmetric Digital Signatures (X-SIGNATURE)
SNAP APIs require a specific signature string to be generated for a field called X-SIGNATURE. This signature will be validated by DANA using your public key to confirm the authenticity of the request.
Validating Signatures
Here's a guideline for validating a digital signature in API requests. Follow these steps to ensure the authenticity and integrity of the request.