openapi: 3.1.0 info: title: Augustus Banking Account Programs Payouts API description: Augustus Banking API version: 0.1.0 contact: name: Augustus url: https://docs.augustus.com email: developer@augustus.com servers: - url: https://api.augustus.com description: Production - url: https://api.sandbox.augustus.com description: Sandbox security: - BearerAuth: [] tags: - name: Payouts paths: /v1/payouts: get: description: Lists payouts for the merchant with cursor-based pagination. operationId: PayoutsController_list parameters: - name: limit required: false in: query description: Number of results per page (1-100). Defaults to 10. schema: minimum: 1 maximum: 100 exclusiveMaximum: false exclusiveMinimum: false default: 10 type: integer - name: cursor required: false in: query description: Opaque cursor from a previous next_cursor. schema: type: string - name: status required: false in: query description: Filter by payout status. schema: type: string enum: - pending - paid - failed - name: created_at.gte required: false in: query description: Include payouts whose created_at is greater than or equal to this ISO 8601 timestamp. schema: format: date-time type: string - name: created_at.lte required: false in: query description: Include payouts whose created_at is less than or equal to this ISO 8601 timestamp. schema: format: date-time type: string - name: currencies required: false in: query description: Filter to these currency codes. Use a separate `currencies` query parameter for each value (e.g. `?currencies=EUR¤cies=USD`). schema: minItems: 1 type: array items: type: string enum: - EUR - GBP - USD - USDC - BTC - ETH - SOL - POL responses: '200': description: Paginated list of payouts content: application/json: schema: $ref: '#/components/schemas/ListPayoutsResponseDto' summary: List payouts tags: - Payouts x-codeSamples: - lang: JavaScript source: "import Augustus from '@augustusbank/typescript-sdk';\n\nconst client = new Augustus({\n apiKey: process.env['AUGUSTUS_API_KEY'], // This is the default and can be omitted\n});\n\n// Automatically fetches more pages as needed.\nfor await (const payoutListResponse of client.payouts.list()) {\n console.log(payoutListResponse.id);\n}" post: description: Creates a new payout. operationId: PayoutsController_create parameters: - name: Idempotency-Key in: header description: Idempotency key for safe retries. Reusing a key with an identical request body returns the cached response. Reusing a key with a different body returns 409. required: false schema: type: string requestBody: required: true description: Payout creation parameters content: application/json: schema: $ref: '#/components/schemas/CreatePayoutBodyDto' responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/PayoutResourceDto' summary: Create payout tags: - Payouts x-codeSamples: - lang: JavaScript source: "import Augustus from '@augustusbank/typescript-sdk';\n\nconst client = new Augustus({\n apiKey: process.env['AUGUSTUS_API_KEY'], // This is the default and can be omitted\n});\n\nconst payout = await client.payouts.create({\n amount: 'amount',\n currency: 'EUR',\n destination: {\n account_holder_name: 'account_holder_name',\n iban: 'iban',\n type: 'iban',\n },\n reference: 'reference',\n source_account_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',\n});\n\nconsole.log(payout.id);" /v1/payouts/{id}: get: description: Retrieves a payout by ID. operationId: PayoutsController_retrieve parameters: - name: id required: true in: path description: Unique identifier of the payout. schema: format: uuid type: string responses: '200': description: The payout resource content: application/json: schema: $ref: '#/components/schemas/PayoutResourceDto' summary: Retrieve payout tags: - Payouts x-codeSamples: - lang: JavaScript source: "import Augustus from '@augustusbank/typescript-sdk';\n\nconst client = new Augustus({\n apiKey: process.env['AUGUSTUS_API_KEY'], // This is the default and can be omitted\n});\n\nconst payout = await client.payouts.retrieve('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e');\n\nconsole.log(payout.id);" components: schemas: CreatePayoutBodyDto: type: object properties: source_account_id: description: ID of the account to debit. type: string format: uuid amount: description: Amount as a string decimal (e.g. "100.50"). type: string currency: description: Currency for the payout. type: string enum: - EUR - GBP - USD - USDC - BTC - ETH - SOL - POL destination: description: Bank account or crypto wallet to send funds to. oneOf: - type: object properties: type: description: Discriminator for IBAN financial address. type: string enum: - iban iban: description: International Bank Account Number. type: string account_holder_name: description: Name of the account holder. type: string bic: description: Bank Identifier Code. type: string required: - type - iban - account_holder_name - type: object properties: type: description: Discriminator for UK sort code financial address. type: string enum: - sort_code sort_code: description: UK sort code (6 digits). type: string account_number: description: UK account number (8 digits). type: string account_holder_name: description: Name of the account holder. type: string required: - type - sort_code - account_number - account_holder_name - type: object properties: type: description: Discriminator for ABA wire financial address. type: string enum: - aba routing_number: description: ABA routing number (9 digits). type: string account_number: description: Bank account number. type: string account_holder_name: description: Name of the account holder. type: string required: - type - routing_number - account_number - account_holder_name - type: object properties: type: description: Discriminator for crypto wallet financial address. type: string enum: - crypto_wallet address: description: Wallet address on the specified blockchain. type: string blockchain: description: Blockchain network for the crypto wallet. type: string enum: - bitcoin - ethereum - solana - polygon - bitcoin_testnet4 - ethereum_sepolia - solana_devnet - polygon_amoy required: - type - address - blockchain rail: description: Payment rail. It is enforced when provided, otherwise auto-selected. type: string enum: - sepa_instant - sepa - faster_payments reference: description: Payment reference. type: string maxLength: 140 metadata: description: Key-value pairs stored with the payout. type: object additionalProperties: type: string required: - source_account_id - amount - currency - destination - reference ListPayoutsResponseDto: type: object properties: data: type: array items: type: object properties: id: description: Unique identifier of the payout. type: string type: description: Resource type discriminator. type: string enum: - payout status: description: Current status of the payout. type: string enum: - pending - paid - failed - returned source_account_id: description: ID of the account that was debited. type: string amount: description: Amount as a string decimal (e.g. "100.50"). type: string currency: description: Currency code (ISO 4217 currency code or crypto currency code). type: string enum: - EUR - GBP - USD - USDC - BTC - ETH - SOL - POL destination: description: Bank account or crypto wallet the payout was sent to. oneOf: - type: object properties: type: description: Discriminator for IBAN financial address. type: string enum: - iban iban: description: International Bank Account Number. type: string account_holder_name: description: Name of the account holder. type: string bic: description: Bank Identifier Code, or null if not provided. type: string nullable: true required: - type - iban - account_holder_name - bic - type: object properties: type: description: Discriminator for UK sort code financial address. type: string enum: - sort_code sort_code: description: UK sort code (6 digits). type: string account_number: description: UK account number (8 digits). type: string account_holder_name: description: Name of the account holder. type: string required: - type - sort_code - account_number - account_holder_name - type: object properties: type: description: Discriminator for ABA wire financial address. type: string enum: - aba routing_number: description: ABA routing number (9 digits). type: string account_number: description: Bank account number. type: string account_holder_name: description: Name of the account holder. type: string required: - type - routing_number - account_number - account_holder_name - type: object properties: type: description: Discriminator for crypto wallet financial address. type: string enum: - crypto_wallet address: description: Wallet address on the specified blockchain. type: string blockchain: description: Blockchain network for the crypto wallet. type: string enum: - bitcoin - ethereum - solana - polygon - bitcoin_testnet4 - ethereum_sepolia - solana_devnet - polygon_amoy required: - type - address - blockchain reference: description: Payment reference. type: string failure: description: Failure details when status is failed, otherwise null. type: object properties: code: description: Failure code. type: string enum: - account_closed - account_blocked - insufficient_funds - invalid_account_format - invalid_instruction - invalid_amount - invalid_time - duplicate_transaction - payee_verification_failed - system_error - provider_system_error - rejected_by_correspondent_bank - blocked_by_review - unknown x-enumNames: - ACCOUNT_CLOSED - ACCOUNT_BLOCKED - INSUFFICIENT_FUNDS - INVALID_ACCOUNT_FORMAT - INVALID_INSTRUCTION - INVALID_AMOUNT - INVALID_TIME - DUPLICATE_TRANSACTION - PAYEE_VERIFICATION_FAILED - SYSTEM_ERROR - PROVIDER_SYSTEM_ERROR - REJECTED_BY_CORRESPONDENT_BANK - BLOCKED_BY_REVIEW - UNKNOWN message: description: Human-readable description of the failure. type: string retry: description: Whether the payout can be retried. type: boolean required: - code - message - retry nullable: true metadata: description: Key-value pairs stored with the payout. type: object additionalProperties: type: string created_at: description: ISO 8601 UTC timestamp when the payout was created. type: string format: date-time updated_at: description: ISO 8601 UTC timestamp when the payout was last updated. type: string format: date-time required: - id - type - status - source_account_id - amount - currency - destination - reference - failure - metadata - created_at - updated_at has_more: type: boolean next_cursor: type: string nullable: true required: - data - has_more - next_cursor PayoutResourceDto: type: object properties: id: description: Unique identifier of the payout. type: string type: description: Resource type discriminator. type: string enum: - payout status: description: Current status of the payout. type: string enum: - pending - paid - failed - returned source_account_id: description: ID of the account that was debited. type: string amount: description: Amount as a string decimal (e.g. "100.50"). type: string currency: description: Currency code (ISO 4217 currency code or crypto currency code). type: string enum: - EUR - GBP - USD - USDC - BTC - ETH - SOL - POL destination: description: Bank account or crypto wallet the payout was sent to. oneOf: - type: object properties: type: description: Discriminator for IBAN financial address. type: string enum: - iban iban: description: International Bank Account Number. type: string account_holder_name: description: Name of the account holder. type: string bic: description: Bank Identifier Code, or null if not provided. type: string nullable: true required: - type - iban - account_holder_name - bic - type: object properties: type: description: Discriminator for UK sort code financial address. type: string enum: - sort_code sort_code: description: UK sort code (6 digits). type: string account_number: description: UK account number (8 digits). type: string account_holder_name: description: Name of the account holder. type: string required: - type - sort_code - account_number - account_holder_name - type: object properties: type: description: Discriminator for ABA wire financial address. type: string enum: - aba routing_number: description: ABA routing number (9 digits). type: string account_number: description: Bank account number. type: string account_holder_name: description: Name of the account holder. type: string required: - type - routing_number - account_number - account_holder_name - type: object properties: type: description: Discriminator for crypto wallet financial address. type: string enum: - crypto_wallet address: description: Wallet address on the specified blockchain. type: string blockchain: description: Blockchain network for the crypto wallet. type: string enum: - bitcoin - ethereum - solana - polygon - bitcoin_testnet4 - ethereum_sepolia - solana_devnet - polygon_amoy required: - type - address - blockchain reference: description: Payment reference. type: string failure: description: Failure details when status is failed, otherwise null. type: object properties: code: description: Failure code. type: string enum: - account_closed - account_blocked - insufficient_funds - invalid_account_format - invalid_instruction - invalid_amount - invalid_time - duplicate_transaction - payee_verification_failed - system_error - provider_system_error - rejected_by_correspondent_bank - blocked_by_review - unknown x-enumNames: - ACCOUNT_CLOSED - ACCOUNT_BLOCKED - INSUFFICIENT_FUNDS - INVALID_ACCOUNT_FORMAT - INVALID_INSTRUCTION - INVALID_AMOUNT - INVALID_TIME - DUPLICATE_TRANSACTION - PAYEE_VERIFICATION_FAILED - SYSTEM_ERROR - PROVIDER_SYSTEM_ERROR - REJECTED_BY_CORRESPONDENT_BANK - BLOCKED_BY_REVIEW - UNKNOWN message: description: Human-readable description of the failure. type: string retry: description: Whether the payout can be retried. type: boolean required: - code - message - retry nullable: true metadata: description: Key-value pairs stored with the payout. type: object additionalProperties: type: string created_at: description: ISO 8601 UTC timestamp when the payout was created. type: string format: date-time updated_at: description: ISO 8601 UTC timestamp when the payout was last updated. type: string format: date-time required: - id - type - status - source_account_id - amount - currency - destination - reference - failure - metadata - created_at - updated_at securitySchemes: BearerAuth: scheme: bearer bearerFormat: JWT type: http description: Bearer token for authentication with Augustus Banking API