# Balance Inquiry

## **Method and URL**

`POST` \[BASE\_URL]/wallet-backend/snap/v1.0/balance-inquiry

Purpose:  View a user’s current wallet balance.<br>

Authorization:

* B2B Token&#x20;
* B2B2C Token

## **Request**

**Request Header**

<table><thead><tr><th>Header</th><th width="130.6015625">Requirement</th><th>Description</th></tr></thead><tbody><tr><td>Content-Type</td><td>Mandatory</td><td>application/json</td></tr><tr><td>Authorization</td><td>Mandatory</td><td>Bearer {B2B_access_token}</td></tr><tr><td>Authorization-Customer</td><td>Mandatory</td><td>Bearer {B2B2C_access_token}</td></tr><tr><td>X-SIGNATURE</td><td>Mandatory</td><td><p>HMAC signature generated as per SNAP specification</p><p><br></p><p>HMAC_SHA512 (clientSecret, stringToSign) </p><p>stringToSign = HTTPMethod +”:“+ EndpointUrl +":"+ AccessToken +":“+ Lowercase(HexEncode(SHA-256(minify(RequestBody))))+ ":“ + TimeStamp</p></td></tr><tr><td>X-TIMESTAMP</td><td>Mandatory</td><td>Request timestamp in yyyy-MM-dd'T'HH:mm:ssXXX (ISO 8601 with offset)</td></tr><tr><td>X-PARTNER-ID</td><td>Mandatory</td><td>Partner ID assigned by Pivot</td></tr><tr><td>X-EXTERNAL-ID</td><td>Mandatory</td><td>Unique ID per request for idempotency / tracing</td></tr><tr><td>CHANNEL-ID</td><td>Mandatory</td><td>Channel identifier (e.g., 12345)</td></tr></tbody></table>

**Request Body**

```json
{
  "additionalInfo": {}
}
```

**Request Parameter Detail**&#x20;

<table><thead><tr><th>Parameter</th><th width="103.3505859375">Data Type</th><th width="113.1044921875">Character Limit</th><th width="122.8203125">Requirement</th><th>Description</th></tr></thead><tbody><tr><td>additionalInfo</td><td>Object</td><td>-</td><td>Optional</td><td>Container for additional information.</td></tr></tbody></table>

<br>

## **Response**

**Response Body**

```json
{
  "accountInfos": [
    {
      "availableBalance": {
        "currency": "IDR",
        "value": "8463186.00"
      },
      "balanceType": "CASH"
    }
  ],
  "responseCode": "2001100",
  "responseMessage": "Successful"
}
```

**Response Parameter Detail**

<table><thead><tr><th>Parameter</th><th width="111.275390625">Data Type</th><th width="111.4609375">Character Limit</th><th width="127.900390625">Requirement</th><th>Description</th></tr></thead><tbody><tr><td>accountInfos</td><td>Array</td><td>-</td><td>Mandatory</td><td>List of balance information objects for the user’s account.</td></tr><tr><td>accountInfos[].availableBalance</td><td>Object</td><td>-</td><td>Mandatory</td><td>Object containing the available balance details.</td></tr><tr><td>accountInfos[].availableBalance.currency</td><td>String</td><td>3</td><td>Mandatory</td><td>Currency code of the balance, e.g., IDR.</td></tr><tr><td>accountInfos[].availableBalance.value</td><td>String</td><td>20</td><td>Mandatory</td><td>Available balance amount in decimal string format (e.g., "8463186.00").</td></tr><tr><td>accountInfos[].balanceType</td><td>String</td><td>20</td><td>Mandatory</td><td>Type of balance, e.g., CASH.</td></tr><tr><td>responseCode</td><td>String</td><td>7</td><td>Mandatory</td><td>Response status code. "2001100" indicates successful balance inquiry.</td></tr><tr><td>responseMessage</td><td>String</td><td>100</td><td>Mandatory</td><td>Description of the result, e.g., "Successful".</td></tr></tbody></table>

\ <br>
