Skip to content
Last updated

Using the Hosted URL without the SDK

You can open the Cashier without the Web SDK by redirecting to, or embedding, the URLs returned when you create a session: checkoutUrl, depositUrl or withdrawalUrl.

ℹ️ Note: Use the Web SDK unless a technical constraint prevents it. It is the recommended way to open the Cashier.

Pass the checkout token

When you open the hosted URL yourself, you must append the token from the create-session response as the ct query parameter (URL-encoded). The SDK does this for you; without it, the Cashier adds it automatically on open. Opening the session without the token is rejected once checkout token verification is enabled for your account. See The checkout token.

https://checkout.omno.com/payments/cashier/{sessionId}?ct=<url-encoded-token>

The Cashier reads ct on load, stores the token server-side, and strips it from the address bar — so it does not linger in browser history or Referer headers. Treat the token as a credential and never log it.

Redirect

window.location.href = `${checkoutUrl}?ct=${encodeURIComponent(token)}`;
// or depositUrl / withdrawalUrl, with the same ?ct= param

Embed in an iframe

<iframe
  src="https://checkout.omno.com/payments/cashier/25aee2fd-fd2a-4a1c-a127-df26206b2a30?ct=<url-encoded-token>"
  width="900"
  height="800">
</iframe>

[TBD: required iframe attributes / allowed origins / CSP requirements]

[TBD: redirect behavior after the customer completes or cancels in the hosted cashier]

What you lose without the SDK

Opening the raw URL works but drops the SDK functions listed in Integrating the Cashier → Why the SDK is recommended — payment/KYC/analytics events, close and overlay handling, dynamic language, device detection, styling, paymentAction, containerId, and the utility methods.

Final status

⚠️ Warning: The hosted cashier's redirect or on-screen result is not authoritative. Determine the final status from webhooks or Get Transaction Info.