GET Get Cashier Methods¶
Endpoint¶
GET /cashier/methods?login={login}&type={deposit|withdrawal}
Command¶
GetCashierMethods
Authorization¶
Requires SESSION_CUSTOMER.
Description¶
Returns the payment methods that are currently available for a customer-owned trading account.
The server resolves the account group, brand, account currency, and customer country. Cashier then checks enabled brand-level provider configs, operation direction, country/currency filters, amount limits, execution mode, and customer-level provider overrides. Module-backed methods require an available payment module; manual methods do not.
Customer overrides can explicitly allow or deny a provider/method for one customer. Overrides do not bypass hard checks: the provider module must be loaded, the provider config must be enabled, the brand must match, and the account must belong to the authenticated customer.
Query Parameters¶
| Name | Type | Required | Description |
|---|---|---|---|
login |
int | Yes | Customer-owned trading account login |
type |
string | Yes | Method direction: deposit or withdrawal |
Request Example¶
GET /cashier/methods?login=2000009&type=withdrawal
Authorization: <CUSTOMER_JWT>
Response Fields¶
| Name | Type | Description |
|---|---|---|
rows |
array | Eligible payment methods |
count |
int | Number of rows |
rows[]¶
| Name | Type | Description |
|---|---|---|
provider_config_id |
int | Brand-level provider config id |
provider |
string | Provider code |
method |
string | Provider method marker |
brand |
string | Brand code resolved from account group |
currency |
string | Supported account/payment currency |
country |
string | Country filter from provider config |
transaction_type |
int | 0 deposit, 1 withdrawal, 2 both |
execution_mode |
int | 0 payment module, 1 manual processing |
payment_mode |
string | UI mode, for example redirect or details |
display_name |
string | Configured method display name |
description |
string | Configured method description |
form_schema |
object | Server-enforced dynamic form schema for details |
min_amount |
double | Minimum allowed amount |
max_amount |
double | Maximum allowed amount, 0 means no limit |
sandbox |
int | 1 sandbox config, 0 production config |
sort_index |
int | Sorting priority |
override_id |
int | Customer override id, 0 when no override applied |
override_mode |
int | 0 allow, 1 deny |
Response Example¶
{
"rows": [
{
"provider_config_id": 12,
"provider": "manual",
"method": "crypto",
"brand": "ion4",
"currency": "USD",
"country": "",
"transaction_type": 1,
"execution_mode": 1,
"payment_mode": "details",
"display_name": "Cryptocurrency",
"description": "Manual cryptocurrency withdrawal",
"form_schema": {
"fields": [
{"name":"asset","type":"select","required":true,"options":["USDT","BTC"]},
{"name":"network","type":"select","required":true,"depends_on":"asset","options_by":{"USDT":["TRC20","ERC20"],"BTC":["Bitcoin"]}},
{"name":"address","type":"string","required":true,"min_length":10,"max_length":256},
{"name":"memo","type":"string","required":false,"max_length":128}
]
},
"min_amount": 50.0,
"max_amount": 10000.0,
"sandbox": 0,
"sort_index": 100,
"override_id": 0,
"override_mode": 0
}
],
"count": 1
}
Errors¶
| HTTP | Error | Description |
|---|---|---|
400 |
INVALID_DATA |
Request validation failed |
400 |
INVALID_TRANSACTION_TYPE |
type is not deposit or withdrawal |
400 |
ACCOUNT_NOT_AVAILABLE |
Account does not exist or is disabled |
400 |
GROUP_NOT_AVAILABLE |
Account group does not exist or is disabled |
403 |
PERMISSION_DENIED |
Account does not belong to the customer |
404 |
CUSTOMER_NOT_FOUND |
Customer record was not found |