# Almond Payout API The Almond Payout API enables clients to execute domestic payouts by leveraging local banking partners and payout networks. As a client, you need to: - Authenticate to obtain an access token. - Discover payout providers by querying supported providers by country and retrieving provider-specific field requirements. - Check payout rates and fees for full transparency on send/receive amounts. - Create a payout with the required beneficiary and payment details. Almond then orchestrates the process — verifying balance availability, executing the payout through the chosen payout partner, and updating the payout status — while providing clients with real-time status updates and notifications.

System Flow
Figure: Payout Flow

Version: 1.1.0 License: Copyright © 2025 Almond FinTech. All rights reserved. ## Servers Sandbox ``` https://api.sandbox.almondfintech.com ``` Production ``` https://api.almondfintech.com ``` ## Download OpenAPI description [Almond Payout API](https://almondfintechapi.redocly.app/_bundle/apis/payouts.yaml) ## Member ### Get Destination Members - [GET /v2/destination-members](https://almondfintechapi.redocly.app/apis/payouts/member/getdestinationmembers.md): Retrieves a list of destination members available for the authenticated source member. Response Details: - Returns information about all destination members that have active corridors with the member. - Each destination member includes: - memberId: Unique identifier for the destination member - name: Display name of the destination member/payout partner - supportedCcyList: List of currencies supported by this destination member - prefundBalance: Current prefund balances for each supported currency Use Cases: - Discover available payout partners for the member - Check prefund balances before initiating payouts - View supported currencies for each destination member Business Context: - Destination members are payout partners that can receive and disburse funds in their respective countries - Prefund balances represent funds already transferred to the destination member for faster payouts ## Payout Providers ### Get Payout Providers - [GET /v2/payout-providers](https://almondfintechapi.redocly.app/apis/payouts/payout-providers/getpayoutproviders.md): Returns a list of supported payout providers. If countryCode is provided, only payout providers for the specified country are returned. Without countryCode, all supported payout providers are returned. ### Get Payout Provider - [GET /v2/payout-providers/{payout-provider-id}](https://almondfintechapi.redocly.app/apis/payouts/payout-providers/getpayoutprovider.md): This API provides a comprehensive list of fields, including their respective data types and validation specifications, necessary for initiating a payout API request. ## Static Fields ### Get Source Of Funds Codes - [GET /v2/source-of-funds-codes](https://almondfintechapi.redocly.app/apis/payouts/static-fields/getsourceoffundscodes.md): Returns a list of source of funds codes that can be used when initiating payouts. These codes indicate where the sender's funds originated from and are used for compliance and regulatory purposes. ### Get Purpose Codes - [GET /v2/purpose-codes](https://almondfintechapi.redocly.app/apis/payouts/static-fields/getpurposecodes.md): Returns a list of purpose codes that can be used when initiating payouts. These codes indicate the purpose or reason for the payout and are required for regulatory compliance and reporting. ### Get Relationship Codes - [GET /v2/relationship-codes](https://almondfintechapi.redocly.app/apis/payouts/static-fields/getrelationshipcodes.md): Returns a list of relationship codes that can be used when initiating payouts. These codes define the relationship between the sender and the beneficiary and are used for compliance verification. ## Payout ### Get Payout Limits - [GET /v2/payout-limits](https://almondfintechapi.redocly.app/apis/payouts/payout/getpayoutlimits.md): Retrieves the minimum and maximum payout limits for payout providers based on the specified country code and/or payout provider ID. Query Parameters: - At least one of countryCode or payoutProviderId must be provided. Response: - Returns a list of payout limits, each containing the currency code, minimum limit, and maximum limit. Use Cases: - Check payout limits before initiating a payout - Display available payout limits to end users - Validate payout amounts against configured limits ### Initiate Payout - [POST /v2/payouts](https://almondfintechapi.redocly.app/apis/payouts/payout/initiatepayout.md): Creates a new payout with the provided request details. - On success, the response includes: * payoutId – Unique identifier for the initiated payout. This ID must be used for subsequent operations (e.g., status checks, cancellation). * payoutStatus – Will return "ACCP" if the payout request is received successfully. This endpoint is the entry point for executing a payment or transfer, and serves as the foundation for all subsequent payout lifecycle operations. ### Get Payouts - [GET /v2/payouts](https://almondfintechapi.redocly.app/apis/payouts/payout/getpayouts.md): Get payouts with filter and pagination support. Example Request: GET /v2/payouts?page=0&size=10&payoutStatus=ACCP&senderCountry=US&beneficiaryCountry=PH Query Parameters: - page - Page number (default: 0) - size - Number of records per page (default: 10) - sortField - Field to sort by - sortDirection - Sort direction (ASC/DESC) - sourceMemberPayoutId - Filter by source member payout ID (your unique payout identifier) - payoutId - Filter by system payout ID (UUID format) - creationTime - Filter by creation date (YYYY-MM-DD) - completionTime - Filter by completion date (YYYY-MM-DD) - senderName - Filter by sender name - senderCountry - Filter by sender country code - beneficiaryName - Filter by beneficiary name - beneficiaryCountry - Filter by beneficiary country code - payoutProviderId - Filter by payout provider id - payoutStatus - Filter by payout status (ACCP, PNDG, PRCD, etc.) ### Process Payout - [POST /v2/payouts/{payout-id}/process](https://almondfintechapi.redocly.app/apis/payouts/payout/processpayout.md) ### Get Payout Details - [GET /v2/payouts/{payout-id}](https://almondfintechapi.redocly.app/apis/payouts/payout/getpayout.md): Fetches detailed information about a specific payout using its unique payoutId. Returns comprehensive payout information including: - Payout details (amount, transfer fee) - Sender and beneficiary information - Current payout status - Timestamps (creation, completion) - Compliance information ### Get Payout Status - [GET /v2/payouts/{payout-id}/status](https://almondfintechapi.redocly.app/apis/payouts/payout/getpayoutstatus.md): Retrieves the current status of a specific payout using its unique payoutId. Payout Status Values: - RCVD - Received: Payout request has been received - ACCP - Accepted: Payout has been accepted for processing - PNDG - Pending: Payout is pending processing - PRCD - Processed: Payout has been successfully processed - RJCT - Rejected: Payout was rejected - CNCL - Cancelled: Payout was cancelled - EXPD - Expired: Payout has expired - FAIL - Failed: Payout processing failed - RVSD - Reversed: Payout was reversed Cancellation Status Values (when applicable): - ACCP - Cancellation accepted - PNDG - Cancellation pending - PRCD - Cancellation processed - RJCT - Cancellation rejected ### Cancel Payout - [POST /v2/payouts/{payout-id}/cancel](https://almondfintechapi.redocly.app/apis/payouts/payout/cancelpayout.md): Submits a cancellation request for a specific payout identified by its unique payoutId.