---
title: "US Wire Domestic Payments Checkout (New Account)"
method: POST
path: "/checkout/wire"
tags: ["checkout"]
---

# US Wire Domestic Payments Checkout (New Account)

`POST /checkout/wire`

Initiates a US Domestic Wire Payments payment order with a new account. Returns destination account info.
Must be paid before the returned expiration date (5 minutes).

## Headers

- `x-coinflow-auth-session-key` string, required

## Request body

- NewWireCheckoutArgs
  - `customPayInFees` CustomPayInFeeConfig[]
    - `fee` union, required
      - CustomPayInFeeValue0
        - `cents` number, double, required
        - `currency` 'USD' | 'AED' | 'AFN' | 'ALL' | 'AMD' | 'ANG' | 'AOA' | 'ARS' | 'AUD' | 'AWG' | 'AZN' | 'BAM' | 'BBD' | 'BDT' | 'BGN' | 'BHD' | 'BIF' | 'BMD' | 'BND' | 'BOB' | 'BRL' | 'BSD' | 'BTN' | 'BWP' | 'BYN' | 'BZD' | 'CAD' | 'CHF' | 'CLF' | 'CLP' | 'CNY' | 'COP' | 'CRC' | 'CUP' | 'CVE' | 'CZK' | 'DJF' | 'DKK' | 'DOP' | 'DZD' | 'EGP' | 'ETB' | 'EUR' | 'FJD' | 'GBP' | 'GEL' | 'GHS' | 'GMD' | 'GNF' | 'GTQ' | 'GYD' | 'HKD' | 'HNL' | 'HTG' | 'HUF' | 'IDR' | 'ILS' | 'INR' | 'IQD' | 'IRR' | 'ISK' | 'JMD' | 'JOD' | 'JPY' | 'KES' | 'KGS' | 'KHR' | 'KMF' | 'KRW' | 'KWD' | 'KYD' | 'KZT' | 'LAK' | 'LBP' | 'LKR' | 'LRD' | 'LSL' | 'LYD' | 'MAD' | 'MDL' | 'MGA' | 'MKD' | 'MMK' | 'MNT' | 'MOP' | 'MRU' | 'MUR' | 'MWK' | 'MVR' | 'MXN' | 'MYR' | 'MZN' | 'NAD' | 'NGN' | 'NIO' | 'NOK' | 'NPR' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PGK' | 'PHP' | 'PKR' | 'PLN' | 'PYG' | 'QAR' | 'RON' | 'RSD' | 'RWF' | 'SAR' | 'SCR' | 'SDG' | 'SEK' | 'SGD' | 'SLE' | 'SLL' | 'SOS' | 'SRD' | 'STN' | 'SVC' | 'SYP' | 'SZL' | 'THB' | 'TJS' | 'TMT' | 'TND' | 'TOP' | 'TRY' | 'TTD' | 'TWD' | 'TZS' | 'UAH' | 'UGX' | 'UYU' | 'UZS' | 'VND' | 'VUV' | 'WST' | 'XAF' | 'XCD' | 'XOF' | 'XPF' | 'YER' | 'ZAR' | 'ZMW' | 'ZWL' | 'CDF' | 'ERN' | 'FKP' | 'KPW' | 'RUB' | 'SBD' | 'SHP' | 'SSP' | 'VES', required
        - `percent` number, double, nullable, required
        - `isFixed` boolean, required
      - CustomPayInFeeValue1
        - `cents` number, double, nullable, required
        - `currency` number, double, nullable, required
        - `percent` number, double, required
        - `isFixed` boolean, required
    - `lineItemLabel` string, required
  - `customerInfo` union
    - SplitNameCustomerInfo
      - `verificationId` string
      - `displayName` string
      - `address` string
      - `city` string
      - `state` string
      - `zip` string
      - `country` string
      - `ip` string
      - `lat` string
      - `lng` string
      - `dob` string — Date of birth in YYYY-MM-DD format
      - `email` string
      - `firstName` string, required
      - `lastName` string, required
    - NameCustomerInfo
      - `verificationId` string
      - `displayName` string
      - `address` string
      - `city` string
      - `state` string
      - `zip` string
      - `country` string
      - `ip` string
      - `lat` string
      - `lng` string
      - `dob` string — Date of birth in YYYY-MM-DD format
      - `email` string
      - `name` string
  - `webhookInfo` AnyObject
    - `example` string
  - `feePercentage` number, double — If this purchase is for a seller/submerchant where the marketplace takes a fee, this is the % fee which is taken from the subtotal amount.
  - `fixedFee` Cents
    - `cents` integer, required
  - `subtotal` union, required
    - CurrencyCents
      - `cents` integer, required
      - `currency` 'USD' | 'AED' | 'AFN' | 'ALL' | 'AMD' | 'ANG' | 'AOA' | 'ARS' | 'AUD' | 'AWG' | 'AZN' | 'BAM' | 'BBD' | 'BDT' | 'BGN' | 'BHD' | 'BIF' | 'BMD' | 'BND' | 'BOB' | 'BRL' | 'BSD' | 'BTN' | 'BWP' | 'BYN' | 'BZD' | 'CAD' | 'CHF' | 'CLF' | 'CLP' | 'CNY' | 'COP' | 'CRC' | 'CUP' | 'CVE' | 'CZK' | 'DJF' | 'DKK' | 'DOP' | 'DZD' | 'EGP' | 'ETB' | 'EUR' | 'FJD' | 'GBP' | 'GEL' | 'GHS' | 'GMD' | 'GNF' | 'GTQ' | 'GYD' | 'HKD' | 'HNL' | 'HTG' | 'HUF' | 'IDR' | 'ILS' | 'INR' | 'IQD' | 'IRR' | 'ISK' | 'JMD' | 'JOD' | 'JPY' | 'KES' | 'KGS' | 'KHR' | 'KMF' | 'KRW' | 'KWD' | 'KYD' | 'KZT' | 'LAK' | 'LBP' | 'LKR' | 'LRD' | 'LSL' | 'LYD' | 'MAD' | 'MDL' | 'MGA' | 'MKD' | 'MMK' | 'MNT' | 'MOP' | 'MRU' | 'MUR' | 'MWK' | 'MVR' | 'MXN' | 'MYR' | 'MZN' | 'NAD' | 'NGN' | 'NIO' | 'NOK' | 'NPR' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PGK' | 'PHP' | 'PKR' | 'PLN' | 'PYG' | 'QAR' | 'RON' | 'RSD' | 'RWF' | 'SAR' | 'SCR' | 'SDG' | 'SEK' | 'SGD' | 'SLE' | 'SLL' | 'SOS' | 'SRD' | 'STN' | 'SVC' | 'SYP' | 'SZL' | 'THB' | 'TJS' | 'TMT' | 'TND' | 'TOP' | 'TRY' | 'TTD' | 'TWD' | 'TZS' | 'UAH' | 'UGX' | 'UYU' | 'UZS' | 'VND' | 'VUV' | 'WST' | 'XAF' | 'XCD' | 'XOF' | 'XPF' | 'YER' | 'ZAR' | 'ZMW' | 'ZWL' | 'CDF' | 'ERN' | 'FKP' | 'KPW' | 'RUB' | 'SBD' | 'SHP' | 'SSP' | 'VES', required
    - Cents
      - `cents` integer, required
    - TokenSubtotal
      - `address` string, required — The tokens address Solana - Token Mint Address Evm - Token Contract Address
      - `amount` union, required — Number of tokens
        - number, double
        - string
      - `decimals` number, double — Number of decimals for the token
  - `jwtToken` string — This is a token encoding the parameters for the request. Allows purchase parameters to be verified to prevent manipulation when the checkout page is presented to the user.
  - `rent` NewWireCheckoutArgsRent — (Solana only) if your transaction requires a known amount of Rent to be paid, you can pass it here.
    - `lamports` union, required
      - string
      - number, double
  - `transactionData` union — (EVM only) if you want to execute an EVM transaction on a successful purchase, you can pass a transaction request here. Gas fees for the transaction will be automatically calculated and added to the total charged to the customer. Optionally the merchant can opt to pay for these gas fees.
    - SafeMintRedeem — (EVM only) If your contract mints an NFT via a OpenZeppelin Safe Mint Call, then utilize this object. The contract mints the NFT to msg.sender (which is the Coinflow contract), the Coinflow contract picks up the SafeMint event, and fwd's the NFT to the end user's wallet.
      - `waitForHash` boolean — Whether the UI should wait for the transaction to be sent and the hash to be returned.
      - `transaction` SafeMintRedeemTransaction, required — Transaction to be called.
        - `data` string, required — The data to call this contract with, HEX encoded. The coinflow contract calls the "to" contract, contract pulls USDC from msg.sender, and transfers the NFT/item to the "receiver" address defined in the contract function arguments.
        - `to` string, required — The merchant's whitelisted contract
      - `type` 'safeMint', required
      - `nftContract` string
    - ReturnedTokenIdRedeem — (EVM only) If your contract returns the NFT ID, then utilize this object. The contract mints the NFT to msg.sender (which is the Coinflow contract), the Coinflow contract picks up the returned NFT ID, and fwd's the NFT to the end user's wallet.
      - `waitForHash` boolean — Whether the UI should wait for the transaction to be sent and the hash to be returned.
      - `transaction` ReturnedTokenIdRedeemTransaction, required — Transaction to be called.
        - `data` string, required — The data to call this contract with, HEX encoded. The coinflow contract calls the "to" contract, contract pulls USDC from msg.sender, and transfers the NFT/item to the "receiver" address defined in the contract function arguments.
        - `to` string, required — The merchant's whitelisted contract
      - `type` 'returned', required
      - `nftContract` string
    - KnownTokenIdRedeem — (EVM only) If your know the ID of the NFT being purchased, then utilize this object. The contract transfers the NFT to msg.sender (which is the Coinflow contract), the Coinflow contract fwd's the NFT to the end user's wallet.
      - `waitForHash` boolean — Whether the UI should wait for the transaction to be sent and the hash to be returned.
      - `transaction` KnownTokenIdRedeemTransaction, required — Transaction to be called.
        - `data` string, required — The data to call this contract with, HEX encoded. The coinflow contract calls the "to" contract, contract pulls USDC from msg.sender, and transfers the NFT/item to the "receiver" address defined in the contract function arguments.
        - `to` string, required — The merchant's whitelisted contract
      - `nftContract` string, required — The address of the Nft's Contract
      - `nftId` string, required — The ID of the NFT being purchased. Will be forwarded by the Coinflow contract to the customer's wallet.
    - NormalRedeem — (EVM only) If your contract sends the item/service being purchased via a custom "receiver" field, then utilize this object. The coinflow contract calls the "to" contract, which transfers the NFT/item to the "receiver" address defined in the contract function arguments.
      - `waitForHash` boolean — Whether the UI should wait for the transaction to be sent and the hash to be returned.
      - `transaction` NormalRedeemTransaction, required — Transaction to be called.
        - `data` string, required — The data to call this contract with, HEX encoded. The coinflow contract calls the "to" contract, contract pulls USDC from msg.sender, and transfers the NFT/item to the "receiver" address defined in the contract function arguments.
        - `to` string, required — The merchant's whitelisted contract
    - TokenRedeem
      - `waitForHash` boolean — Whether the UI should wait for the transaction to be sent and the hash to be returned.
      - `type` 'token', required
      - `destination` string, required
    - DecentRedeem — If your contract exists on a chain supported by Decent, pass this object in order to call it.
      - `waitForHash` boolean — Whether the UI should wait for the transaction to be sent and the hash to be returned.
      - `type` 'decent', required
      - `dstChainId` number, double, required — ID of the destination chain you will be using Find your chain ID here: https://chainlist.org/
      - `dstToken` string, required — Address on that chain of the token you will be receiving
      - `contractAddress` string, required — The contract address which will be called on the destination chain
      - `contractData` string, required
      - `cost` DecentRedeemCost, required — Amount of the token on the destination chain you will be receiving
        - `isNative` boolean, required — Whether or not the token is the native token for the chain (ex: Ethereum - ETH, Polygon - POL). If native dstToken should be the 0 address (0x00...)
        - `amount` string, required — This is the raw amount of the token ex: 50000000000000n
  - `stellarTransaction` string — (Stellar only) Base64 XDR transaction string for executing a merchant contract call on a successful purchase. For transaction purchases, pass the base64 XDR string created using `.toXDR()` on a transaction built with generated TypeScript bindings (e.g., `NftClientWrapper.buildNftPurchaseTx`). For direct USDC transfers (no merchant transaction), omit this field or pass undefined. Gas fees for the transaction will be automatically calculated and added to the total charged to the customer.
  - `settlementType` 'Credits' | 'USDC'
  - `destinationAuthKey` string — If utilizing USDC settlement to addresses other than your main merchant settlement address. Utilize this destinationAuthKey which is a JWT encoded with the information for which address to send the USDC to.
  - `customerUsdcTransferData` CustomerUsdcTransferData — Customer signed USDC transferWithAuthorization data for dual-source payments Used for combined USDC + Credit Card payments on EVM chains
    - `from` string, required
    - `to` string, required
    - `value` string, required
    - `validAfter` union, required
      - string
      - number, double
    - `validBefore` union, required
      - string
      - number, double
    - `nonce` string, required
    - `v` number, double, required
    - `r` string, required
    - `s` string, required
  - `customerUsdcTransferDataV2` CustomerUsdcTransferDataV2 — V2 of CustomerUsdcTransferData — replaces the (v, r, s) triple with a single `signature` bytes string, matching USDC FiatTokenV2_2's bytes-overload `transferWithAuthorization`. All other fields unchanged from V1.
    - `from` string, required
    - `to` string, required
    - `value` string, required
    - `validAfter` union, required
      - string
      - number, double
    - `validBefore` union, required
      - string
      - number, double
    - `nonce` string, required
    - `signature` string, required
  - `userLocation` IUserLocation — End-user geographic coordinates captured at the moment of the withdrawal request. Consumed by `BlockingRuleMethod.GEOLOCATION` enforcement. Replay-of-different-coords bypass is prevented server-side: the first resolved {country, state} for a given (merchant, user) pair is pinned in Redis, and subsequent requests are evaluated against that pinned value regardless of the lat/lng they submit.
    - `lat` number, double, required
    - `lng` number, double, required
  - `overrideChargebackProtectionDecision` boolean
  - `doNotReviewChargebackProtection` boolean
  - `merchantId` string, required — Merchant Identifier
  - `data` AddUSWireBankAccountData, required
    - `account_number` string, required — Must be the raw bank account number, not a Plaid tokenized number.
    - `alias` string, required
    - `email` string, required
    - `firstName` string, required
    - `lastName` string, required
    - `address1` string, required
    - `address2` string
    - `city` string, required
    - `state` string, required
    - `zip` string, required
    - `country` string
    - `businessName` string
    - `plaidAccountId` string
    - `plaidAccessToken` string
    - `plaidAccountType` string
    - `plaidAccountSubtype` string
    - `rtpEligible` boolean
    - `isTokenized` boolean
    - `wireRoutingNumber` string, required

## Response `200`

Ok

- USWirePaymentDetails
  - `address` Address, required
    - `address1` string, required
    - `address2` string
    - `city` string, required
    - `state` string, required
    - `zip` string, required
    - `country` string, required
  - `account_number` string, required — The bank account number that funds should be directed to.
  - `wireRoutingNumber` string, required — The wire routing number that funds should be directed to.
  - `paymentId` string, required
  - `recipientName` string, required
  - `memo` string, required
  - `amount` CurrencyCents, required
    - `cents` integer, required
    - `currency` 'USD' | 'AED' | 'AFN' | 'ALL' | 'AMD' | 'ANG' | 'AOA' | 'ARS' | 'AUD' | 'AWG' | 'AZN' | 'BAM' | 'BBD' | 'BDT' | 'BGN' | 'BHD' | 'BIF' | 'BMD' | 'BND' | 'BOB' | 'BRL' | 'BSD' | 'BTN' | 'BWP' | 'BYN' | 'BZD' | 'CAD' | 'CHF' | 'CLF' | 'CLP' | 'CNY' | 'COP' | 'CRC' | 'CUP' | 'CVE' | 'CZK' | 'DJF' | 'DKK' | 'DOP' | 'DZD' | 'EGP' | 'ETB' | 'EUR' | 'FJD' | 'GBP' | 'GEL' | 'GHS' | 'GMD' | 'GNF' | 'GTQ' | 'GYD' | 'HKD' | 'HNL' | 'HTG' | 'HUF' | 'IDR' | 'ILS' | 'INR' | 'IQD' | 'IRR' | 'ISK' | 'JMD' | 'JOD' | 'JPY' | 'KES' | 'KGS' | 'KHR' | 'KMF' | 'KRW' | 'KWD' | 'KYD' | 'KZT' | 'LAK' | 'LBP' | 'LKR' | 'LRD' | 'LSL' | 'LYD' | 'MAD' | 'MDL' | 'MGA' | 'MKD' | 'MMK' | 'MNT' | 'MOP' | 'MRU' | 'MUR' | 'MWK' | 'MVR' | 'MXN' | 'MYR' | 'MZN' | 'NAD' | 'NGN' | 'NIO' | 'NOK' | 'NPR' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PGK' | 'PHP' | 'PKR' | 'PLN' | 'PYG' | 'QAR' | 'RON' | 'RSD' | 'RWF' | 'SAR' | 'SCR' | 'SDG' | 'SEK' | 'SGD' | 'SLE' | 'SLL' | 'SOS' | 'SRD' | 'STN' | 'SVC' | 'SYP' | 'SZL' | 'THB' | 'TJS' | 'TMT' | 'TND' | 'TOP' | 'TRY' | 'TTD' | 'TWD' | 'TZS' | 'UAH' | 'UGX' | 'UYU' | 'UZS' | 'VND' | 'VUV' | 'WST' | 'XAF' | 'XCD' | 'XOF' | 'XPF' | 'YER' | 'ZAR' | 'ZMW' | 'ZWL' | 'CDF' | 'ERN' | 'FKP' | 'KPW' | 'RUB' | 'SBD' | 'SHP' | 'SSP' | 'VES', required
  - `expires` string, required

## Other responses

- `412` — Additional Account Details Are Required - Please provide the required fields in body.bankAccountDetails.wireRoutingNumber and/or body.bankAccountDetails.accountNumber
- `423` — Customer is Blocked
- `428` — User must re-verify account
- `451` — Must Complete Additional Verification

---

[API](https://skmtc.net/coinflow/apis/api-reference.md) · [All operations](https://skmtc.net/coinflow/apis/api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/coinflow/api-reference/versions/7eea51c8775d/schema)
