vrtx Docs
Core APIs
  • Start
  • Onboarding
  • Wallet
  • Payouts
  • Cards
  • Transactions
Closed loop APIsCard Simulator
SDK APIs
  • Coming Soon!
Core APIs
  • Start
  • Onboarding
  • Wallet
  • Payouts
  • Cards
  • Transactions
Closed loop APIsCard Simulator
SDK APIs
  • Coming Soon!
  1. Money Movement
  • Welcome ๐Ÿ‘‹
  • Get Started
  • Authentication
  • Responses
  • Pagination
  • Auth
    • Token
      POST
  • Businesses
    • List businesses
      GET
    • Create business
      POST
  • Money Movement
    • Create fund
      POST
    • Create payout
      POST
    • Get payout
      GET
    • Create refund
      POST
    • Create transfer
      POST
    • Create withdrawal
      POST
  • Labels
    • List labels
      GET
    • Create label
      POST
  • Transactions
    • List transactions
      GET
    • Get transaction
      GET
    • List wallet transactions
      GET
  • Wallets
    • List wallets
      GET
    • Create wallet
      POST
    • Lookup wallet
      GET
    • Update wallet
      PATCH
    • Get wallet
      GET
    • Get wallet balance
      GET
    • Remove label
      DELETE
    • Assign label
      PUT
  • Wallet Statements
    • Retrieve wallet statement (preview)
  • Webhooks
    • Register webhook endpoint (preview)
    • List webhook endpoints (preview)
  1. Money Movement

Create withdrawal

POST
https://api.staging.vrtx.sa/cl/v1/withdrawals
Last modified:2025-12-03 07:59:44
Withdraw funds from a business operational account or a wallet to the clearance wallet, representing settlement or reconciliation outside the closed-loop system.
This operation is a virtual ledger adjustment and is typically used to align internal balances with real-world settlement movements or bank reconciliations.

Transaction Flow#

StepDescriptionAccountDirection
1Debit the source account (wallet or operational)Business / WalletDEBIT (โˆ’)
2Credit the WORLD pseudo-account to reflect money leaving the ecosystemClearance WalletCREDIT (+)

Request

Authorization
JWT Bearer
Add the parameter
Authorization
to Headers
Example:
Authorization: ********************
or
Header Params

Body Params application/jsonRequired

Example
{
    "source_account_number": "088400008012",
    "amount": "100.00",
    "currency": "SAR",
    "external_reference": "WD-00123452222",
    "purpose": "Cash-out",
    "notes": "Send to settlement account"
}

Request Code Samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://api.staging.vrtx.sa/cl/v1/withdrawals' \
--header 'Idempotency-Key: withdraw-req-123' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data-raw '{
    "source_account_number": "088400008012",
    "amount": "100.00",
    "currency": "SAR",
    "external_reference": "WD-00123452222",
    "purpose": "Cash-out",
    "notes": "Send to settlement account"
}'

Responses

๐ŸŸข201Created
application/json
Created
Body

Example
{
    "id": "630a552d-97e3-4ae0-8dc9-c373ee1fd86a",
    "source_account_number": "054200001011",
    "amount": "10.00",
    "currency": "SAR",
    "external_reference": "WD-0012345",
    "purpose": "Cash-out",
    "notes": "Send to settlement account",
    "status": "SUCCESS",
    "created_at": "2025-10-25T14:42:27.201Z"
}
๐ŸŸ 400Bad Request
๐ŸŸ 401Unauthorized
๐ŸŸ 403Forbidden
Modified atย 2025-12-03 07:59:44
Previous
Create transfer
Next
List labels
Built with