Skip to content

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