# Create transfer order **POST /accounts/{accountId}/orders** Create a transfer order from an account to a recipient. Requires Ed25519 signature for security. See the 'Ed25519 Signature' topic for implementation details. ## Servers - Sandbox - Banking Operations: https://bank.bank.place (Sandbox - Banking Operations) - Sandbox - Authentication: https://auth.bank.place (Sandbox - Authentication) ## Authentication methods - Bearer auth ## Parameters ### Headers - **Workspace-ID** (integer) The workspace ID - to identify the sub-user - **X-Nonce** (string) Unix timestamp in milliseconds (for deduplication and replay protection) - **X-Signature** (string) Ed25519 signature of the request hash See the 'Ed25519 Signature'. ### Path parameters - **accountId** (integer) Source account ID ### Body: application/json (object) Transfer order details - **amount** (string) Amount in smallest currency unit (e.g., cents for USD). The 'decimals' field in the Currency model tells you how many decimal places the currency uses. For example, if decimals = 2 for USD, all amounts are stored in cents (the smallest unit), so 2000 means 2000 cents, or $20.00 - **description** (string) Optional transfer description (max 512 chars, alphanumeric only) - **purposeCode** (string) Purpose code from /orders/purposes - **recipientID** (integer) Recipient ID from /recipients endpoint - **repeatUnit** (string) For recurring transfers - **repeatValue** (integer) Repeat interval value (for recurring) - **startAt** (string) ISO 8601 timestamp for scheduled/recurring transfers - **stopAt** (string) ISO 8601 timestamp to stop recurring transfers - **type** (string) Order type ## Responses ### 200 Order created successfully #### Body: application/json (object) - **amount** (string) Transfer amount (in smallest unit, e.g. cents for USD) - **createdAt** (string) Creation timestamp - **description** (string) Transfer description - **edges** (object) - **id** (integer) Order ID - **purposeCode** (string) Transfer purpose code - **repeatUnit** (string) Repeat unit (daily/weekly/monthly) - **repeatValue** (integer) Repeat interval value - **startAt** (string) Start timestamp - **status** (string) Order status - **stopAt** (string) Stop timestamp (for recurring orders) - **type** (string) Order type (instant/scheduled/recurring) - **updatedAt** (string) Last update timestamp ### 400 Invalid request or insufficient funds #### Body: application/json (object) - **errorCode** (string) Error code - **message** (string) Error message ### 401 Unauthorized #### Body: application/json (object) - **errorCode** (string) Error code - **message** (string) Error message ### 403 Invalid signature #### Body: application/json (object) - **errorCode** (string) Error code - **message** (string) Error message [Powered by Bump.sh](https://bump.sh)