GET /banks
List the supported banks and choose a valid bankCode for a new bank account.
The list comes from the bank data in the system and is sorted by code. It includes PROMPTPAY for PromptPay accounts. TrueWallet is handled separately and is not part of this list.
Endpoint
http
GET /banksFull URL: https://api.easyslip.com/v2/banks
Authentication
Required. See Authentication Guide.
http
Authorization: Bearer YOUR_API_KEYRequest
This request does not need a body or query parameters.
Type Definitions
typescript
// Response Types
interface BanksResponse {
success: true;
data: Bank[];
}
interface Bank {
code: string; // Bank code - use as `bankCode` when creating an account
nameTh: string; // Bank name (Thai)
nameEn: string; // Bank name (English)
shortCode: string; // Short code / abbreviation
swiftCode: string; // SWIFT/BIC code
extraVerify: ExtraVerifyOption[] | null; // supported verify options, or null
}
interface ExtraVerifyOption {
value: string; // send as `extraVerify` when creating/updating an account
label: string; // human-readable description
}
// Error Response
interface ErrorResponse {
success: false;
error: {
code: string;
message: string;
};
}Examples
bash
curl -X GET https://api.easyslip.com/v2/banks \
-H "Authorization: Bearer YOUR_API_KEY"javascript
const response = await fetch('https://api.easyslip.com/v2/banks', {
headers: {
'Authorization': 'Bearer YOUR_API_KEY'
}
});
const result = await response.json();
console.log(result.data);php
$ch = curl_init();
curl_setopt_array($ch, [
CURLOPT_URL => 'https://api.easyslip.com/v2/banks',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer YOUR_API_KEY'
]
]);
$response = curl_exec($ch);
curl_close($ch);
$result = json_decode($response, true);
print_r($result['data']);python
import requests
import os
response = requests.get(
'https://api.easyslip.com/v2/banks',
headers={'Authorization': f'Bearer {os.environ["EASYSLIP_API_KEY"]}'}
)
result = response.json()
print(result['data'])Response
Success Response (200)
json
{
"success": true,
"data": [
{
"code": "002",
"nameTh": "ธนาคารกรุงเทพ",
"nameEn": "Bangkok Bank",
"shortCode": "BBL",
"swiftCode": "BKKBTHBK",
"extraVerify": [
{ "value": "NAME", "label": "ตรวจจาก ชื่อบัญชี อย่างเดียว (ไม่แนะนำ)" },
{ "value": "NUMBER", "label": "ตรวจจาก เลขบัญชี อย่างเดียว" },
{ "value": "NAME_NUMBER", "label": "ตรวจจาก เลขบัญชีและชื่อบัญชีธนาคาร" }
]
},
{
"code": "014",
"nameTh": "ธนาคารไทยพาณิชย์",
"nameEn": "Siam Commercial Bank",
"shortCode": "SCB",
"swiftCode": "SICOTHBK",
"extraVerify": [
{ "value": "NAME", "label": "ตรวจจาก ชื่อบัญชี อย่างเดียว (ไม่แนะนำ)" },
{ "value": "NUMBER", "label": "ตรวจจาก เลขบัญชี อย่างเดียว" },
{ "value": "NAME_NUMBER", "label": "ตรวจจาก เลขบัญชีและชื่อบัญชีธนาคาร" }
]
}
]
}Response Fields
| Field | Type | Description |
|---|---|---|
code | string | Bank code to use as bankCode when creating an account |
nameTh | string | Bank name (Thai) |
nameEn | string | Bank name (English) |
shortCode | string | Short code / abbreviation |
swiftCode | string | SWIFT/BIC code |
extraVerify | ExtraVerifyOption[] | null | Verify options this bank supports, or null if it has none |
extraVerify[].value | string | The value to send as extraVerify when creating/updating an account |
extraVerify[].label | string | Human-readable description of the option |
Error Responses
Unauthorized (401)
json
{
"success": false,
"error": {
"code": "MISSING_API_KEY",
"message": "Authorization header is required"
}
}Notes
- This endpoint does not consume quota.
- The
codevalue is what you pass asbankCodetoPOST /bank-accounts. extraVerifylists the verify options a bank supports. Not every bank has options; some returnextraVerify: null. When creating or updating an account, read this list and send one of the optionvalues as the account'sextraVerify.- For the full reference table of bank codes, see Bank Codes.