> ## Content Index
> Fetch the complete content index at: https://stablecoininsider.org/llms.txt
> Use this file to discover other available public pages before exploring further.

# How to Send a Noah Stablecoin Payout (2026)
- URL: https://stablecoininsider.org/how-to-send-a-noah-stablecoin-payout/
- Published: 2026-10-05T06:01:00.000Z
- Updated: 2026-10-05T06:21:10.000Z
- Description: Turn USDC into local fiat with Noah's payout API: channels, JSON Schema forms, prepare pricing, Nonce idempotency, and webhook tracking, step by step.
- Author: Alexandra
- Tags: Fintech, Stablecoins

Most stablecoin offramps stop at a US bank account. Noah's payout API is built for the harder job: turning USDC into local currency in markets where the recipient expects a SEPA credit, a Fedwire, or a mobile money wallet.

The named object here is the **Noah stablecoin payout**: a sell transaction on Noah's Business API that converts stablecoins from your balance into fiat and pays a recipient through a runtime-selected **channel**. This guide walks the five API calls in order, shows a worked Fedwire example with the real numbers from Noah's sandbox docs, and ends with Stablecoin Insider's take on when Noah is the right payout rail.

### Key Takeaways

- A Noah stablecoin payout is five calls: countries, channels, form, prepare, sell.
- Read channel IDs at runtime; Noah says they change and must not be cached.
- Prepare returns a fee, a crypto estimate, a ceiling, and a FormSessionID.
- Every sell needs a unique Nonce, which never expires, so retries stay safe.
- Production requires an ES384 or ES256 signed JWT in the Api-Signature header.

📌

Stablecoin Insider's framing: use this guide when your platform holds USDC (or another supported stablecoin) and must pay recipients in many local currencies through one integration. If you only need a US bank offramp, start with How to Off-Ramp USDC to ACH or Wire. If the payout lands as a stablecoin in a wallet, Modern Treasury or Circle payout guides fit better.

Facts in this guide come from Noah's public documentation as of October 5, 2026: the [Global Payout product page](https://docs.noah.com/products/global-payouts-api), the [Direct Payout to US Business recipe](https://docs.noah.com/recipes/payout/global-payouts-business), and the [Channels](https://docs.noah.com/api-concepts/channels), [Idempotence](https://docs.noah.com/api-concepts/idempotence), and [Transaction webhook](https://docs.noah.com/api-concepts/webhooks/transactions) concept pages. Noah does not publish a fixed fee schedule, so no fee in this article is a price quote.

## What a Noah stablecoin payout actually is

Noah describes Global Payout as converting crypto into over 120 fiat currencies and delivering through local methods across 60+ countries, per its [Global Payout page](https://docs.noah.com/products/global-payouts-api). Delivery methods listed there include bank transfers, mobile money, digital wallets, and cash pickup.

Under the hood, a payout is a **sell** transaction. Your business balance funds it, Noah converts the stablecoin, and the fiat leg goes out on the channel you picked. The transaction record shows **Direction: Out** and **Network: OffNetwork** for a fiat payout to a bank, according to the [Transaction webhook reference](https://docs.noah.com/api-concepts/webhooks/transactions).

That distinction matters. You aren't sending USDC to a wallet. You're spending USDC to buy a fiat payment.

## Who should use Noah for stablecoin payouts

Noah's product page names five fits: crypto exchanges handling fiat withdrawals, remittance services, gig platforms paying contractors, marketplaces settling sellers, and gaming payouts. All five share one trait: recipients live in many countries and expect local rails.

Skip Noah if your recipients are mostly US businesses on ACH and wire. A narrower offramp is simpler (see [How to Off-Ramp USDC to ACH or Wire](https://stablecoininsider.org/how-to-off-ramp-usdc-to-ach-or-wire/)). Skip it too if recipients want stablecoins, not fiat; [How to Send a Modern Treasury Stablecoin Payout](https://stablecoininsider.org/how-to-send-a-modern-treasury-stablecoin-payout/) and [How to Send a Circle Stablecoin Payout](https://stablecoininsider.org/how-to-send-a-circle-stablecoin-payout/) cover wallet delivery.

## Prerequisites before your first payout

Noah's [payout recipe](https://docs.noah.com/recipes/payout/global-payouts-business) lists the setup: register interest at business@noah.com, sign up for a sandbox account, and ask Noah to upgrade it to a business account. Then generate a sandbox API key in the Business Dashboard.

- Base URLs: **https://api.sandbox.noah.com/v1** for sandbox and **https://api.noah.com/v1** for production, per Noah's [developer index](https://docs.noah.com/llms.txt).
- Auth: every request carries an **X-Api-Key** header.
- Request signing: an **Api-Signature** JWT is mandatory in production, signed with ES384 (ES256 also accepted) and audience https://api.noah.com, per the [Request Signing page](https://docs.noah.com/api-concepts/authentication/signing).
- Sandbox assets carry a **\_TEST** suffix, so you'll send USDC\_TEST, not USDC.
- Webhooks: subscribe to the **Transaction** event before you send anything.

## Choose a compliance model first

Noah supports two models, explained on its [Compliance Overview](https://docs.noah.com/getting-started/kyc). The choice changes how you create customers, so make it before writing code.

| Model    | Who it fits                                     | How customers get onboarded                                                                                 |
| -------- | ----------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| Reliance | Regulated businesses that already run KYC       | You share simplified KYC data via PUT /customers/{CustomerID}; Noah spot-checks full KYC packs              |
| Standard | Technology providers without their own licenses | Noah runs KYC through hosted onboarding or prefill; customers still accept Noah's terms in a hosted session |

Stablecoin Insider's read: most startups land on Standard. Reliance is only open to regulated entities, and Noah says those customers must hold valid, unexpired KYC in your system every time they transact ([source](https://docs.noah.com/getting-started/kyc)).

## Step 1: Create or update the customer

Call **PUT /customers/{CustomerID}** with your own CustomerID. For a business recipient, Noah's [recipe](https://docs.noah.com/recipes/payout/global-payouts-business) sends Type Business, RegisteredName, RegistrationNumber, RegistrationCountry, RegisteredAddress, and IncorporationDate.

```
PUT https://api.sandbox.noah.com/v1/customers/acme-contractor-001
X-Api-Key: <sandbox key>

{
  "Type": "Business",
  "RegisteredName": "Acme Corporation",
  "RegistrationNumber": "12-3456789",
  "RegistrationCountry": "US",
  "RegisteredAddress": { "Street": "123 Main Street", "City": "San Francisco",
    "PostCode": "94105", "State": "CA", "Country": "US" },
  "IncorporationDate": "2010-03-15"
}
```

Store the CustomerID against the same compliance profile in your system. Every later payout references it.

## Step 2: Find the payout channel at runtime

A channel is Noah's term for a payment route with fixed details: country, fiat currency, and payment method type, plus its own fees and limits. The [Channels page](https://docs.noah.com/api-concepts/channels) says a Country code of XX marks a channel usable across multiple countries.

First call **GET /channels/sell/countries**. Then call **GET /channels/sell** with Country, CryptoCurrency, FiatCurrency, and optionally FiatAmount to get price calculations back.

```
GET https://api.sandbox.noah.com/v1/channels/sell?Country=US&CryptoCurrency=USDC_TEST&FiatCurrency=USD
X-Api-Key: <sandbox key>
```

Noah's sandbox demo response in the [recipe](https://docs.noah.com/recipes/payout/global-payouts-business) returns three US channels. The values below are illustrative sandbox output, not a price list:

| PaymentMethodType | Demo TotalFee                                                                             | Demo limits       | Demo ProcessingSeconds |
| ----------------- | ----------------------------------------------------------------------------------------- | ----------------- | ---------------------- |
| TokenizedCard     | 4.5                                                                                       | 1.2 to 1,000,000  | 60                     |
| BankFedwire       | 0.03                                                                                      | 0 to 15,000       | 86400                  |
| BankAch           | 0.03                                                                                      | 0 to 15,000       | 86400                  |
| Source            | [Noah Direct Payout recipe](https://docs.noah.com/recipes/payout/global-payouts-business) | Sandbox demo body | Not an SLA             |

⚠️

Hard rule from Noah's docs: channel IDs must be read from GET /channels/sell at runtime. They are not stable enough to hardcode or cache, and their limits change. Treat the channel list like a live quote, not a config file.

## Step 3: Render or fill the dynamic form

Each channel needs different recipient data. Call **GET /channels/{ChannelID}/form** to get a JSON Schema **FormSchema**. For the US BankFedwire channel in Noah's [recipe](https://docs.noah.com/recipes/payout/global-payouts-business), the required fields are AccountHolderAddress, BankDetails (AccountNumber and a 9-digit routing BankCode), and PaymentPurpose.

Outside the US the schema changes. Noah's [Channels page](https://docs.noah.com/api-concepts/channels) shows a German EUR channel whose AccountNumber field is a 22-character IBAN validated against the pattern ^DE\[0-9\]{2}\[A-Z0-9\]{18}$. That's the point of the dynamic form: your UI doesn't hardcode per-country bank rules.

Returning recipients are cheaper to handle. If you pass an existing **PaymentMethodID**, Noah requests only the fields it doesn't already hold, per the [recipe's prepare notes](https://docs.noah.com/recipes/payout/global-payouts-business).

## Step 4: Prepare the transaction

Call **POST /transactions/sell/prepare** with ChannelID, CryptoCurrency, FiatAmount, and the Form. Prepare does two jobs: it returns the freshest pricing estimate and pre-validates the form data.

```
POST https://api.sandbox.noah.com/v1/transactions/sell/prepare

{
  "ChannelID": "<BankFedwire channel ID from Step 2>",
  "CryptoCurrency": "USDC_TEST",
  "FiatAmount": "1000.0",
  "Form": {
    "AccountHolderAddress": { "Address": "123 Main Street", "City": "New York",
      "State": "NY", "PostalCode": "10001" },
    "BankDetails": { "AccountNumber": "12345678", "BankCode": "123456789" },
    "PaymentPurpose": "Contractor invoice"
  }
}
```

The response carries four fields you must persist:

- **CryptoAmountEstimate**: estimated stablecoin spent.
- **CryptoAuthorizedAmount**: the maximum Noah may charge you. Noah suggests sizing it from GET /prices plus a slippage buffer that matches your risk appetite.
- **FormSessionID**: the handle you submit in Step 5.
- **TotalFee**: the channel fee, always in the fiat currency of the payout.

Field definitions come from Noah's [Direct Payout recipe](https://docs.noah.com/recipes/payout/global-payouts-business). If you settle with an end customer, debit them in your own ledger using FiatAmount as the reference for absorbing or passing on fees.

## Step 5: Submit the sell with a Nonce

Call **POST /transactions/sell** with CryptoCurrency, FiatAmount, CryptoAuthorizedAmount, FormSessionID, a unique **Nonce**, and your own ExternalID for reconciliation.

```
POST https://api.sandbox.noah.com/v1/transactions/sell

{
  "CryptoCurrency": "USDC_TEST",
  "FiatAmount": "1000.0",
  "CryptoAuthorizedAmount": "1010.03",
  "FormSessionID": "<from prepare>",
  "Nonce": "<new UUID per payout>",
  "ExternalID": "invoice-2026-10-0042"
}
```

Noah's [Idempotence page](https://docs.noah.com/api-concepts/idempotence) explains why the Nonce matters. It guarantees transaction idempotency, not request idempotency, and it has no expiration. Typical idempotency keys expire after 24 hours, which leaves a gap if a response never arrives.

Balance behavior is specific. On creation, your AvailableBalance drops immediately. If price moves past your ceiling, Noah cancels and refunds AvailableBalance. On settlement, TotalBalance drops by the final amount and AvailableBalance is adjusted for any gap versus CryptoAuthorizedAmount, per the [recipe](https://docs.noah.com/recipes/payout/global-payouts-business).

## Step 6: Track the payout with webhooks

The Transaction webhook fires on creation and whenever Status, SubStatus, Refunds, or RFI changes. Status is one of three values: Pending, Failed, or Settled, per Noah's [Transaction Event reference](https://docs.noah.com/api-concepts/webhooks/transactions).

| SubStatus (while Pending) | Meaning per Noah                                              |
| ------------------------- | ------------------------------------------------------------- |
| AmlScreening              | Automatic compliance, KYT, or travel-rule screening in flight |
| UnderReview               | Payment held for transaction-monitoring review                |
| Submitted                 | Outbound payment sent to the external provider                |
| Confirming                | Provider processing, awaiting final confirmation              |

Plan for RFIs too. When Noah opens a request for information, the RFI object moves through AwaitingCustomer, UnderReview, Closed, and Completed. Noah's [compliance freeze page](https://docs.noah.com/api-concepts/compliance-freezes-refunds-reversals) says a customer has 10 days to supply requested documents before the transaction is rejected and refunded. For a payout funded from a prefunded dashboard balance, the refund goes back to the Custodian Stablecoin Account.

## Worked example: a $1,000 Fedwire payout funded with USDC

Here's the full sandbox run using the numbers in Noah's [Direct Payout recipe](https://docs.noah.com/recipes/payout/global-payouts-business). A SaaS platform pays a US contractor's business account by wire.

- PUT the business customer (acme-contractor-001).
- GET /channels/sell for US, USDC\_TEST, USD; pick the BankFedwire channel ID returned today.
- GET the channel form; fill AccountHolderAddress, BankDetails, PaymentPurpose.
- Prepare with FiatAmount 1000.0\. Demo response: TotalFee 0.03, CryptoAmountEstimate 1000.03, CryptoAuthorizedAmount 1010.03.
- Submit the sell with the FormSessionID, a fresh Nonce, and ExternalID set to the invoice number.
- Wait for the Transaction webhook to move from Pending to Settled before marking the invoice paid.

Stablecoin Insider's math on those [documented demo values](https://docs.noah.com/recipes/payout/global-payouts-business): the ceiling (1010.03) sits 10.00 USDC above the estimate (1000.03), a buffer of about 1.0%. The fee itself is 0.03 on a 1,000 payout, or 0.003%. In production, size your buffer from live GET /prices data rather than copying 1%.

## Global Payout vs Automated Payout: pick the right Noah product

Noah ships a second payout product. The [Automated Payout recipe](https://docs.noah.com/recipes/payout/automated-payouts) uses POST /workflows/onchain-deposit-to-payment-method to trigger a fiat payout whenever a crypto deposit is detected, which removes the need to pre-fund.

| Question     | Global Payout (sell)                                   | Automated Payout (workflow)                               |
| ------------ | ------------------------------------------------------ | --------------------------------------------------------- |
| Who funds it | Your prefunded Noah balance                            | A customer's onchain deposit                              |
| Trigger      | Your API call per payout                               | Deposit detected on a designated address                  |
| Best for     | Contractor runs, marketplace settlements, B2B invoices | Offramp-on-deposit flows where users send USDC themselves |
| Key endpoint | POST /transactions/sell                                | POST /workflows/onchain-deposit-to-payment-method         |

Noah also offers a hosted offramp interface and manual dashboard payouts, per the [product page](https://docs.noah.com/products/global-payouts-api). The same page puts white-label integration at 2 to 3 weeks from contract to go-live.

## How Noah compares with other stablecoin payout rails

| Question                | Noah                                                                      | BlindPay                                                                                   | Modern Treasury                                                                                          |
| ----------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------- |
| What the recipient gets | Local fiat on a runtime channel (bank, mobile money, wallet, cash pickup) | Bank fiat on documented rails                                                              | Stablecoin wallet credit via Payment Orders                                                              |
| Pricing handle          | Prepare: estimate plus CryptoAuthorizedAmount ceiling                     | Short-lived payout quote                                                                   | Payment Order amount                                                                                     |
| Retry safety            | Non-expiring Nonce                                                        | Single-use quote ID                                                                        | Platform idempotency                                                                                     |
| SCI guide               | This post                                                                 | [BlindPay how-to](https://stablecoininsider.org/how-to-send-a-blindpay-stablecoin-payout/) | [Modern Treasury how-to](https://stablecoininsider.org/how-to-send-a-modern-treasury-stablecoin-payout/) |

Other sibling guides: [How to Send a zerohash Stablecoin Payout](https://stablecoininsider.org/how-to-send-a-zerohash-stablecoin-payout/), [How to Send a Ripple Payments Direct USDC Payout](https://stablecoininsider.org/how-to-send-a-ripple-payments-direct-usdc-payout/), and [How to Create a Bridge Liquidation Address for Tempo USDC](https://stablecoininsider.org/how-to-create-a-bridge-liquidation-address-for-tempo-usdc/). For the market view, see [Best Stablecoin On/Off-Ramps Compared](https://stablecoininsider.org/stablecoin-on-off-ramps/), [stablecoin payouts on Tron vs Solana](https://stablecoininsider.org/stablecoin-payouts/), [stablecoin transfers for cross-border payroll](https://stablecoininsider.org/stablecoin-transfers/), and [cross-border payments on stablecoin rails](https://stablecoininsider.org/cross-border-payments-on-stablecoin-rails/).

## Where Noah payouts break

- Hardcoded channel IDs. Noah says they change; cache them and payouts fail.
- Thin CryptoAuthorizedAmount. Too tight a ceiling and price moves cancel the sell.
- Unsigned production calls. Sandbox tolerates a missing Api-Signature; production doesn't.
- Ignoring RFIs. A 10-day document window can stall a contractor run if nobody owns it.
- Assuming a fee schedule. Noah publishes no fixed price list; the channel response is the quote.

💡

Stablecoin Insider's take: Noah is the strongest fit when the hard part of your payout is breadth, not the stablecoin leg. The runtime channel model plus JSON Schema forms means one integration can reach mobile money in Ghana and SEPA in Germany without per-country code. The trade-off is operational: you must treat channels as live data, size slippage ceilings yourself, and staff RFI handling. Teams paying a handful of US vendors should pick a simpler offramp; teams paying contractors in 20 countries should prototype Noah in sandbox first.

---

Shipping a Noah stablecoin payout? Run one sandbox customer, one runtime channel lookup, one prepare, one Nonce-protected sell, and one Settled webhook before you touch production keys.

[Read Noah's payout recipe](https://docs.noah.com/recipes/payout/global-payouts-business)

Need a bank offramp with a short-lived quote instead? Compare the BlindPay flow next.

[Send a BlindPay Stablecoin Payout ](https://stablecoininsider.org/how-to-send-a-blindpay-stablecoin-payout/) 

[How to Send a BlindPay Stablecoin Payout (2026)Sibling operator guide for quote-locked stablecoin to bank payouts on BlindPay.![](https://stablecoininsider.org/favicon.ico)Stablecoin Insider](https://stablecoininsider.org/how-to-send-a-blindpay-stablecoin-payout/)

## FAQ

#### What is a Noah stablecoin payout?

It's a sell transaction on Noah's Business API that converts stablecoins from your balance into local fiat and pays a recipient through a channel such as Fedwire, ACH, SEPA, or mobile money.

#### How many currencies does Noah pay out in?

Noah says over 120 fiat currencies across 60+ countries on its [Global Payout page](https://docs.noah.com/products/global-payouts-api). Check GET /channels/sell/countries for what your account can reach today.

#### Which API calls does a Noah payout need?

Five, in order: GET /channels/sell/countries, GET /channels/sell, GET /channels/{ChannelID}/form, POST /transactions/sell/prepare, and POST /transactions/sell.

#### Can you cache Noah channel IDs?

No. Noah's docs say channel IDs must be read at runtime because they aren't stable and their limits change.

#### How does Noah prevent duplicate payouts?

Every transactional call requires a unique Nonce. Noah's nonce guarantees the transaction runs once and doesn't expire, unlike 24-hour idempotency keys.

#### What does CryptoAuthorizedAmount do?

It caps how much stablecoin Noah can spend on the payout. If the price moves beyond it, Noah cancels the sell and refunds your available balance.

#### Do you need your own license to use Noah?

Not necessarily. Unlicensed technology providers use the Standard model, where Noah runs KYC. Regulated firms can use the Reliance model and share their own KYC data.

#### How do you know a Noah payout landed?

Listen for the Transaction webhook. Status moves from Pending to Settled on success or Failed otherwise, with SubStatus detail while pending.

---

This content is provided for informational and educational purposes only and does not constitute financial, investment, legal, or tax advice; no material herein should be interpreted as a recommendation, endorsement, or solicitation to buy or sell.