Skip to main content

Choosing an integration

Use the Widget for the fastest launch with a link or an iframe. Use the SDK when you also want browser events, open/close control or a React hook. Use Intent when you want to build the pre-checkout screens yourself and create orders from your backend. See Integrations Overview.
The SDK is a JavaScript wrapper around the widget. Both run the same flow and take the same parameters. The SDK adds events and commands, overlay and embedded display modes, and TypeScript types.
No. Every integration covers both. Set orderType to buy (onramp) or sell (offramp) per order.

Keys and environments

The widget and SDK only need your public partner key, passed as apiKey. It is safe in client-side code. The Intent API uses an API key and secret to sign server-to-server requests. Never expose the secret. See Authentication.
No. Keys are environment-scoped. Use sandbox keys with *.sandbox.rampnow.io hosts and production keys with production hosts. See Authentication.

Testing

Use the sandbox. It runs the same flow with simulated payments and testnet tokens. See Sandbox Testing and the Payment Simulator.
Sandbox has no self-serve way to force a KYC outcome yet. Email [email protected]. See Sandbox Testing.

Orders and webhooks

Use webhooks: Rampnow sends one on every status change. Intent integrations can also poll the order. SDK events are useful for your UI, but confirm on your backend. See Order Status for which statuses are final.
Yes. A failed delivery is retried up to 10 times over roughly 24 hours. De-duplicate on eventUid, which stays the same across retries. See Delivery and retries.
No. Rampnow operations either retries it or blocks and refunds it. Wait for the next webhook. See Order Status.
No. Confirm the status from a webhook or by polling the order. See Handling rules.
Pass your own order ID: externalOrderId on the widget or SDK, externalOrderUid on the Intent API. Either way it comes back as externalOrderUid on webhooks.
No. Sending the same Create Order request twice creates two orders. On a timeout or 5xx, look the order up by externalOrderUid first and retry only if none exists. See Create the Order.

Customising the order

Yes. Pass them as widget parameters or SDK config, for example dstCurrency, dstChain, srcAmount and walletAddress. Make them read-only with lockFields. See URL parameters.
Your account has a partner fee agreed with Rampnow, applied to every order. With Intent you can also override it per request. See Partner fee.

Coverage and compliance

See Supported Crypto Currencies, Supported Fiat Currencies, Blockchain List, Payment Methods & Limits and Supported Countries. Live data on those pages comes from the Rampnow config API.
Offramp payouts are currently live for EUR via SEPA. See Payment Methods & Limits.
Rampnow does, inside the widget or hosted checkout. Users who are already verified skip it. See User Flow.

Still stuck?

Email [email protected] with your partner account and, for order issues, the order ID.