Withdrawing Funds

Withdrawing refers to sending fiat or crypto to external entities.

In general, there are 4 steps to performing a withdrawal from an account:

  1. Create a Counterparty for the external entity receiving the funds.
  2. Create a Withdrawal using counterparty id from step 1.
  3. Provide additional details and/or upload documents to withdrawal if required.
  4. Accept the Withdrawal with id from step 2.

Documents and Details

Often Rail will require clients to provide additional context on a withdrawal and/or upload documents to a withdrawal.

  • Documents - Clients may be asked to uploaded documents relating to a withdrawal. These documents often inform the purpose of a withdrawal. E.g. an invoice.
  • Details - Clients may be asked to provide additional details on a withdrawal. E.g. for trade financing payments you must provide 'underlying_buyer'.

Get Withdrawal Status

The Get Withdrawal Status endpoint provides you with a summary of a particular withdrawal. It provides a breakdown of all mandatory + optional fields and documents. It also highlights any errors associated with information / documents provided i.e. if any information is missing, if the information is invalid.

  • Fields
  • Documents
  • Field_errors
  • Document_errors

Withdrawal Lifecycle

Withdrawal lifecycle refers to the steps and status changes a withdrawal undergoes in order to send funds to a counterparty. The lifecycle may change depending on:

  • Customer making the withdrawal.
  • Counterparty receiving the withdrawal.
  • Purpose of withdrawal.
  • If documents are required to be uploaded.
  • If any additional details are required.

Below are some example lifecycles:

Scenario 1 Scenario 2 Scenario 3
No additional details or documents required. Additional details and/or documents required for withdrawal BEFORE accept. Additional details and/or documents requested while withdrawal AFTER accept i.e. while withdrawal is processing.

Scenario 1

No additional details or documents required.

Action Status
Request withdrawal REQUESTED
Get withdrawal status READY_FOR_SUBMISSION
Accept withdrawal ACCEPTED
Withdrawal waiting for approval AUTHORIZED
Withdrawal is approved APPROVED
Withdrawal begins processing PROCESSING
Withdrawal successfully sent EXECUTED

Scenario 2

Additional details and/or documents required for withdrawal BEFORE accept.

Scenario 1
Action Status
Request withdrawal REQUESTED
Get withdrawal status CHANGES_REQUESTED
Update withdrawal CHANGES_REQUESTED
Upload documents to withdrawal CHANGES_REQUESTED
Get withdrawal status READY_FOR_SUBMISSION
Accept withdrawal ACCEPTED
Withdrawal waiting for approval AUTHORIZED
Withdrawal is approved APPROVED
Withdrawal begins processing PROCESSING
Withdrawal successfully sent EXECUTED

Scenario 3

Additional details and/or documents requested while withdrawal AFTER accept i.e. while withdrawal is processing.

Action Status
Request withdrawal REQUESTED
Get withdrawal status READY_FOR_SUBMISSION
Accept withdrawal ACCEPTED
Withdrawal waiting for approval AUTHORIZED
Withdrawal is approved APPROVED
Withdrawal begins processing PROCESSING
Rail requires additional information / documents CHANGES_REQUESTED
Get withdrawal status CHANGES_REQUESTED
Update withdrawal CHANGES_REQUESTED
Upload documents to withdrawal CHANGES_REQUESTED
Get withdrawal status READY_FOR_SUBMISSION
Accept withdrawal ACCEPTED
Withdrawal successfully sent EXECUTED
© 2024 Rail. All Rights Reserved.