Domestic acceptance. Dollar-denominated settlement.
NineRivers acts as principal across domestic acceptance rails, assumes the currency exposure at the elected fixing point, and discharges the resulting obligation to the merchant in USD over stablecoin or correspondent rails.
Single point of integration. Sandbox acceptance from first call, with test-mode obligations segregated at account level.
- Method
- PromptPay
- Rate
- 35.280000000000
- Fee
- 25.00 THB
- Net
- 27.63 USD
- CollectedLocal rail08:14
- ConvertedRate locked08:14
- SettlesUSDCT + 3 days
Quoted
Quoted

- SWIFTCorrespondent
A single integration across the acceptance-to-settlement chain.
Acceptance, conversion, obligation and disbursement resolve against one journal, which removes the inter-system reconciliation layer a multi-vendor stack necessarily carries.
Acceptance
A conventional REST surface. One instruction creates the intent; a repeated idempotency key resolves to the original response rather than to a second debit of the payer.
Documentation → CheckoutHosted acceptance page
Present a page carrying the merchant of record's identity, or take the next action directly: a redirect instruction or a domestic QR credential.
Documentation → Foreign exchangeRate formation and fixing
Multi-source aggregation with outlier rejection and a stated spread over mid. The snapshot is immutable and the exposure references its identifier, never a detached numeric value.
Documentation → SettlementDisbursement
Obligations remain restricted until channel statement confirmation, release on the contracted value date, and discharge to a beneficiary account amendable only under dual control.
Documentation → LedgerPosition and journal
Double-entry and append-only. Per-currency balance is enforced at commit, and the aggregate position is proved to zero on an hourly cycle.
Documentation → ReconciliationReconciliation
Channel statement, internal record and banking movement are matched on four pillars. Unmatched items are raised as breaks and are never absorbed into a suspense position.
Documentation →Transaction detail and journal position, from one record.
Operational view and accounting view are projections of a single record. No secondary store is maintained, so no divergence between the two is possible.
| Amount | Method | Status | Net | Created |
|---|---|---|---|---|
| 1,000.00 THB | PromptPay pi_AGQH…G6Y | Paid | 27.63 USD | 08:14 |
| 2,450.00 PHP | GCash pi_7KWQ…2XB | Paid | 41.88 USD | 08:11 |
| 560.00 THB | PromptPay pi_M4TB…J9L | Requires payment | — | 08:09 |
| 18,900.00 PHP | Bank transfer pi_QZ2E…R4V | Paid | 323.07 USD | 07:58 |
| 3,120.00 THB | PromptPay pi_XH8N…T7C | Refund pending | 86.20 USD | 07:41 |
J1 · payment succeeded · THB
| channel receivable | 1,000.00 | — |
| merchant pending | — | 975.00 |
| fee revenue | — | 25.00 |
| Journal | 1,000.00 | 1,000.00 |
Per-currency balance enforced at commit, written in the same transaction as the state it records, and immutable thereafter.
Deployed where the border sits inside every transaction.
A common ledger substrate. What differs by counterparty is the surface of it that the institution operates against.
Sub-merchant balance segregation
- SplitAcceptance, commission and sub-merchant entitlement post as entries within one journal, rather than as discrete transfers reconciled downstream.
- HoldEntitlement remains restricted pending channel statement confirmation, which precludes disbursement against unconfirmed receipts.
- PayoutBeneficiary amendment requires dual control and imposes a twenty-four hour hold on the succeeding settlement cycle.
Embedded acceptance for downstream accounts
- KeysCredentials are scoped per account and per environment, with sandbox obligations segregated at account level.
- NotificationSigned, retried and idempotent on the record identifier, so redelivery cannot duplicate a downstream effect.
- RetrievalEvery object is exposed as a cursor-paginated read, removing any requirement to derive state by enumeration.
Single-currency treasury position
- FixingElection of fixing at instruction permits a USD price to be quoted in advance of payer authorisation.
- TariffCommission resolves against the schedule in force at instruction, not against the schedule current at disbursement.
- ReportingRunning balances are derived at read time, so the counterparty figure and ours are the same figure by construction.
The economics of a single acceptance, decomposed.
Figures are as produced by the system under exact integer arithmetic. No rounding has been applied for presentation.
Denominated in minor units throughout the interface and the store. No decimal type is present at any layer.
Commission at 250 basis points, resolved against the tariff schedule in force at instruction.
Aggregated mid of 35.00 with an 80 basis point spread applied, carried to twelve decimal places.
Floored against the fixed rate. Conversion residuals are booked to a designated account and are not retained as unallocated gain.
Illustrative decomposition, per our published documentation. Applicable rates are those stated in the counterparty agreement. Tariff schedule →
Control environment, and the mechanism behind each control.
Each control below is enforced at the persistence layer and evidenced by a query or a test, rather than asserted in marketing material such as this.
Immutability under four layers
Privilege grant, explicit revocation, a row-level trigger and a statement-level trigger. Each addresses a distinct actor class, including the object owner.
Single-arbiter claim
The idempotency claim is a single atomic insert. Concurrent presentations of one key cannot both proceed, which precludes duplicate debit of the payer.
Held solely by the counterparty
Credentials carry 130 bits of entropy, are disclosed once and retained only as a digest. Request authentication by HMAC, or by Ed25519, under which the private half is never in our possession.
Derived, not retained
No secret issued by the platform is retained. Each is derived from a single master under purpose separation, and channel credentials at rest are sealed under a purpose-derived key.
Dual control, without exception
Tariff amendment, spread amendment, manual adjustment and beneficiary amendment each require a second authoriser. The maker is refused as their own checker at the persistence layer.
No amendment without record
Every administrative write commits its audit record, prior and resulting state, within the same transaction as the amendment.
This is an old business.
NineRivers is Jiuchuan, the nine watercourses of the Yu Gong, which Yu the Great cleared so that the water reached the sea. It is a name about channelling a flow to where it must arrive.
The piaohao of Shanxi did one thing above all: huidui, remittance between distant cities. Money paid in at one house was paid out at another, and the two houses settled between themselves later.
That is this business. A payer hands local currency to a channel in one place; the merchant is paid elsewhere, in another currency; a network settles in between. What we do is that network, with better clocks.
Remittance that reaches everywhere.Ri Sheng Chang, Pingyao, from about 1823. That house was founded then; we were not. What we take from it is the form of the book.
Coverage and onboarding are established in the discussion.
Acceptance coverage, disbursement rails and value dating are set per counterparty. The position below is indicative; what applies to a given entity is confirmed by our sales desk before any agreement is executed.
| Acceptance | Thailand and the Philippines are integrated. Indonesia and Vietnam are quoted. Ask the desk about a market. |
| Disbursement | Stablecoin and correspondent rails. Instruction frequency and value dating are set in the agreement. |
| Onboarding | Counterparty due diligence precedes credentials. The desk will state what is required for your entity. |
| Integration | The full specification is published and may be read before any contact. Documentation. |
Contact the sales desk for a written statement of coverage, tariff and timeline against your own markets and volumes.
Release notes, by date.
Notification signing, version one
Each counterparty endpoint is provisioned with a discrete secret. The signature covers timestamp and payload as one canonical string.
Beneficiary amendment imposes a settlement hold
Amendment of a beneficiary account defers the succeeding settlement cycle by twenty-four hours, and the amendment itself requires dual authorisation before that period commences.
First production channel integration
The Philippines integration resolved the outstanding specification question by measurement against the provider, rather than by internal determination.
Acceptance page carries merchant of record identity
The hosted page discloses the receiving party and enumerates available methods, localised to the payer.
Engage us before the first line is written.
We will state what is in place, what is not, and which of the two your intended integration depends upon. The documentation discloses both without request.