---
title: "Create a payout with FX"
method: POST
path: "/fx/payouts"
---

# Create a payout with FX

`POST /fx/payouts`

[Available in Production/Sandbox environment] Execute a previously created FX quote to initiate a FX payout.

## Headers

- `X-XFERS-APP-API-KEY` string, required
- `X-PUBLIC-KEY-ID` string
- `X-TIMESTAMP` string
- `X-NONCE` string
- `X-SIGNATURE` string

## Request body

- object
  - `data` object
    - `attributes` object
      - `initiator` object — Initiator of the payout. If omitted, defaults to the authenticated user (self). Provide to act on behalf of a customer profile.
        - `mode` string, required — Initiation mode. Only `onBehalfOf` is supported.
        - `customerProfileId` string, required — Customer profile ID of the initiator.
      - `payoutDetails` object, required — Details of the payout.
        - `idempotencyId` string, required — Unique reference number provided by you to prevent double transaction, this cannot be repeated.<br>Regex: `/^\s*.{1,191}\s*$/`
        - `payoutType` string, required — Type of payout. e.g. `fxPayout`.
        - `recipientId` string, required — UUID of the payout recipient.
        - `fxQuoteId` string, required — UUID of the FX quote to execute.
        - `reference` object — Reference details for the payout.
          - `internalReference` string — Internal reference string for tracking.
          - `externalReference` string — External reference visible to the recipient.

## Response `201`

201 Created

- object
  - `data` object
    - `id` string — Payout ID, prefixed with `contract_`.
    - `type` string — Resource type. Always `fxPayout`.
    - `attributes` object
      - `initiator` object — Initiator information. Present when acting on behalf of a customer profile.
        - `mode` string — Initiator mode. Currently only `onBehalfOf`.
        - `customerProfileId` string — UUID of the customer profile.
      - `status` string — Transaction status. One of: `pending`, `completed`, `failed`.
      - `quoteId` string — UUID of the quote used.
      - `recipientId` string — ID of the payout recipient used.
      - `rate` number — FX rate applied.
      - `from` object — Source currency and amount.
        - `currency` string — Source currency.
        - `amount` string — Amount in source currency.
      - `to` object — Target currency and amount.
        - `currency` string — Target currency.
        - `amount` string — Computed amount in target currency.
      - `fee` object — Fee charged. Contains `currency` and `amount`.
        - `currency` string — Fee currency.
        - `amount` string — Fee amount.
      - `createdAt` string — ISO 8601 timestamp of transaction creation (Singapore timezone).
      - `updatedAt` string — ISO 8601 timestamp of last status change (Singapore timezone).
      - `references` object — Reference identifiers for the payout.
        - `externalReference` string — External reference provided by the merchant.
        - `internalReference` string — Internal reference provided by the merchant.

## Other responses

- `400` — Bad Request
- `404` — Not Found

---

[API](https://skmtc.net/straitsx/apis/straitsx-sandbox-base-url.md) · [All operations](https://skmtc.net/straitsx/apis/straitsx-sandbox-base-url/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/straitsx/straitsx-sandbox-base-url/revisions/9ceee2969aeb/schema)
