Skip to main content
Money reaches an account in one of three ways.

Bank transfers to the trading account

List Deposit Instructions returns the bank details used to fund your trading account. An account can have multiple deposit instructions for the same currency. Select an instruction for the currency and payment rail you need.

Payment references

Check the selected instruction’s memo field before sharing the bank details: When memo contains a value, display it as a required payment reference alongside the bank details. A missing or altered reference can delay crediting the deposit. The instruction’s id identifies the API record. The payment reference is the returned memo value. A dedicated-account entry (abridged; the full object is on List Deposit Instructions):
A shared-account entry; the memo identifies you:

One currency at a time

Get Deposit Instruction returns the account’s default entry for one currency. A currency that is not enabled for the account comes back with status: "unavailable"; contact Hop to enable it.

Rails

Which rails a payer can use depends on the currency: For the exact methods one bank account accepts, use supported_rails from the selected deposit instruction. The field uses these values: For outgoing payments, use the separate payment_rail parameter on Create Payout.

The flow

  1. Read the deposit instructions and pick the entry for the currency you want.
  2. Give the payer the beneficiary name, the bank details and, when memo is set, the memo.
  3. When the money arrives you receive a payin.received webhook and the trading account updates.

Bank transfers to a virtual account

A virtual account has its own bank details, returned on the virtual account object once it is provisioned: beneficiary_name, bank_name, account_number or iban, swift_bic and routing_number. The deposit credits the virtual account’s own balance and raises payin.received with deposit_destination.type set to virtual_account. Opening virtual accounts is covered in Virtual accounts.

Crypto deposits

  1. Create Wallet with the currency and network. The response carries the deposit address.
  2. Share the address. The payer sends some amount of the currency on the wallet network to the address.
  3. When the transaction confirms you receive a payin.received webhook and the trading account updates.
Networks available in production: Sandbox networks and test funds are covered on Testing.