Sell Flow¶
Get an internal client account¶
query = { "legal_entity_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "client_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" }Orders will be linked to this account.
Add an external bank account¶
POST /v1/external-bank-accounts/
query = { "legal_entity_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "client_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" }data = { "name": "string", "iban": "string", "bank_code": "string", "bank_name": "string", "holder_name": "string" }Or get the client’s external bank account if it has already been added:
GET /v1/external-bank-accounts/
query = { "legal_entity_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "client_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" }The withdrawal will be sent to this client account.
Add an external crypto account¶
This requires some confirmation.
POST /v1/external-crypto-accounts/
Confirmation via WalletConnect is available on the Ethereum and Polygon networks. The following JSON fields must be added to the request to add client external crypto account:
data = { ..., "address": "string", "wallet_message": "string", "wallet_signature": "string" }Algorand, Ripple, Xinfin, Stellar networks will require additional verification of Satoshi. Get the address for Satoshi test:
GET /v1/external-crypto-accounts/satoshitest/
query = { "legal_entity_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "client_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "network_type": "algorand" }Here you may need information about available network types:
query = { "legal_entity_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "type": ["network_types"] }Note: Satoshi test must be done before adding request. Confirmation is not required when adding an external crypto account in the sandbox.
Add a client’s external crypto account:
POST /v1/external-crypto-accounts/
query = { "legal_entity_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "client_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" }data = { "name": "string", "network_type": "ethereum", "address": "string" }Or get the client’s external crypto account if it has already been added:
GET /v1/external-crypto-accounts/
query = { "legal_entity_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "client_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" }The deposit must be sent from this client account.
Get commissions¶
GET /v1/sellbuy/orders/calculate-trade/
query = { "legal_entity_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "client_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "incoming_provider_type": "crypto", "incoming_provider_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "incoming_amount": 100, "outgoing_provider_type": "bank" }Make the following request to select an incoming_provider_uuid:
query = { "legal_entity_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "type": "crypto" }
Create an order¶
query = { "legal_entity_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "client_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" }data = { "account_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "incoming_provider_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "incoming_asset_code": "EURS", "incoming_amount": 100, "outgoing_provider_type": "bank", "outgoing_asset_code": "EUR", "outgoing_client_account_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" }In step Get an internal client account you got account_uuid. In step Add an external crypto account you got outgoing_client_account_uuid.
Make the following request to select an incoming_provider_uuid:
query = { "legal_entity_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "type": "crypto" }
Make a deposit¶
The client needs to make a crypto deposit from the account specified in step Add an external bank account, using the
deposit_address
value received in step Create an order.
Get order status¶
query = { "legal_entity_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "client_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" }