Skip to main content
A payment intent represents one amount owed to your business. It carries your order reference, accepted payment method, settlement preference, customer context, expiry, and payment lifecycle state. Use a server-side API key with payment_intents:read, payment_intents:write, and treasury:read.
Direct stablecoin collection to a unique payment-intent address is not yet certified for live use. Deposit monitoring, confirmation, treasury crediting, and sweeping must be enabled by NorthFond before you display such an address to a real customer. Use sandbox for this flow until NorthFond confirms live readiness for your business.

Sandbox end-to-end example

1

Create a payment intent

Use a durable order identifier as external_reference. Send the same idempotency key when retrying this exact request.
2

Complete the sandbox payment

Simulation is accepted only by sandbox credentials and never moves funds.
3

Verify the payment

Retrieve the intent and require status to equal completed before granting access to the purchased resource.
4

Reconcile the treasury

Confirm that the payment appears in deposits and that the treasury balance reflects the completed settlement.

Production collection

For the current controlled beta, use a NorthFond-hosted payment link for live mobile-money collection. The hosted checkout gathers the customer phone and network, starts the provider request, and updates the underlying payment intent. Do not fulfill from a checkout redirect, awaiting_payment, approved, or processing. Fulfill only after a signed payment_intent.completed webhook, then retrieve the payment intent and reconcile its treasury deposit using your own durable external_reference.

Status handling

See Webhooks, Idempotency, and Operational readiness before enabling live traffic.