API endpoints for receiving payment deposits
A Pay-in is when funds are sent from a payer to a merchant’s Orbital account. These can be made in supported cryptocurrencies: USDT, US DC, ETH, BTC, LTC, BCH
Merchants can choose to receive funds:
- In the same cryptocurrency sent by the payer (no conversion), or
- In a supported fiat currency: USD, GBP, EUR (crypto–fiat conversion)
At Orbital, we offer five flexible methods for receiving cryptocurrency deposits ("Pay-Ins") from your customers. Each method is designed for different use cases, levels of integration, and end-user experiences.
1. Rapid Deposit (Reusable Wallet Address)
Rapid Deposit allows you to generate a reusable wallet address for a specific currency and network. Once created via API, this wallet address remains valid indefinitely. Your customers can save this address in their wallet app and send crypto directly at any time, no need to generate a new address or create a new invoice for each transaction.
Features
- Generates a static deposit address that doesn’t expire.
- Supports variable deposit amount at any time.
- No executable rate is attached, so users aren’t limited to time-bound rates.
- Compatible with independent user payments, even when not logged in.
- You can optionally use Orbital’s indicative rate API to display conversion estimates.
- Configurable
notifyUrl
for webhook callbacks when a deposit is received
Advantages
- Users can bookmark or save the address in their wallet apps for future use.
- No redirection, payments go directly to the deposit address.
- Simplifies recurring deposits and wallet top-ups.
- Reduces payment friction for returning or high-frequency users.
Limitations
- The merchant is responsible for saving the deposit wallet address and linking it to the correct customer in their system.
- May requires the merchant to build the frontend UI to show the wallet address
- Since no executable rate is used, on-chain value can fluctuate before confirmation.
Best suited for
- Wallet apps, trading platforms, and exchanges that store user balances
- Gaming, betting, or DeFi services where users top up balances regularly
- Enterprise systems that already track user IDs and wallet mapping internally
- Merchants needing low-maintenance, always-on deposit infrastructure
Always generate one unique deposit address per user so that every on-chain transaction maps directly to that user.
2. Hosted Payment Page (HPP)
The Hosted Payment Page (HPP) is a pre-built, Orbital-hosted payment flow that handles everything from wallet selection, QR code generation and transaction confirmation. You simply redirect your user to the HPP, where they complete their crypto deposit securely, with no frontend work required on your side.
Features
- Pre-built and fully hosted by Orbital
- Supports major wallets (Binance Pay, WalletConnect, MetaMask, TronLink, etc.)
- Automatically displays deposit instructions, wallet address, and QR code
- Accepts a fixed deposit amount you specify
- Configurable
returnUrl
andnotifyUrl
for post-payment handling - One-time-use deposit link that expires after 15 minutes
Advantages
- Fastest integration, no frontend development needed
- Hosted and secured by Orbital’s infrastructure
- Out-of-the-box multi-wallet support
- Server-side conversion logic, no amount calculations on your end
- Easy status tracking via returnUrl/notifyUrl
Limitations
- Redirects users away from your platform to complete payment
- UI customization limited to logo and brand colors only
- Not embedded and may not suit merchants who prefer in-page experiences
Best suited for
- Merchants who want to go live quickly with minimal dev effort.
- E-commerce platforms with variable cart totals and fixed-value checkouts
- Teams that want Orbital to handle the entire UI and wallet logic.
3. Embedded Payment Page (EPP)
The Embedded Payment Page (EPP) allows you to embed Orbital’s HPP interface on your platform using a lightweight JavaScript widget. This is a good option if you need to keep your customers on your site while still using our hosted flow. ital still handles the backend logic, wallet address creation, invoice generation, and status tracking, but the user never has to leave your platform. This is ideal for merchants who want a native feel without building their own frontend from scratch.
Features
- Uses Orbital’s official JavaScript widget.
- Generates a new invoice wallet address per deposit.
- Accepts fixed deposit amounts.
- Loads as an iframe directly on your site (inline or modal).
- Supports QR code display, payment status polling, and error handling.
- Includes limited visual customisation (logo, colors, and font).
- One-time-use deposit link with 15-minute expiry.
Advantages
- Keeps users on your site, no redirects.
- Easy integration using Orbital’s widget.
- Less dev effort than building your own UI (like Self-Hosted).
- Still benefits from Orbital’s hosted reliability and compliance.
- Clean, responsive UI for desktop and mobile.
Limitations
- Requires you to install and configure the JS widget.
- Limited customisation compared to a fully self-hosted UI.
- Still based on iframe, which may limit some advanced UX integrations.
- Each deposit still generates a new wallet address with a 15-minute expiry.
Best suited for
- Platforms that want to avoid redirecting users but don’t have time to build a full UI.
- Merchants that need a fast, reliable way to accept crypto while keeping users on-platform.
- Dashboards, wallets, games, and apps where continuity of user experience is important.
- Teams that want minimal frontend work but better UX than HPP.
4. Self-Hosted Invoice UI (Custom UI)
This invoice-based deposit method gives you full control over how the payment experience looks and feels on your platform. Instead of redirecting users to Orbital’s hosted pages (HPP or EPP), you call Orbital’s APIs to generate an invoice and build your own UI to display the details. You handle all frontend implementation, while enjoying complete design and UX freedom.
Features
- Generates an invoice via Orbital’s API, including a unique wallet address, QR code, fixed deposit amount, and 15-minute expiry
- Issues a new, 15 mins time-bound wallet address for each transaction
- Accepts only the exact deposit amount specified in the invoice
- Frontend UI is fully built and hosted by you
- Supports custom behaviors (e.g., deposit timers, retry logic, tailored instructions)
- Can include overpayment and underpayment handling logic.
Advantages
- Full frontend ownership and branding control.
- No iframe or redirect, everything happens natively on your platform.
- Supports integration into existing deposit flows or dashboards.
- Ideal for platforms needing custom UX (e.g., retries, partial payments, user instructions).
- Developer flexibility to innovate or optimise based on your needs.
Limitations
- Requires full frontend development effort.
- You must implement wallet/QR display logic and UX instructions.
- You are responsible for compliance with Orbital’s invoice flow and UI requirements.
- No hosted fallback, if your frontend fails, no deposit can be made.
Best suited for
- Platforms with strong engineering teams and custom user flows.
- Businesses that want to embed crypto deposits directly into their dashboards or app UIs.
- Use cases where redirects or iframes are not acceptable.
- Enterprises, exchanges, or products with complex UX or KYC needs.
5. Receive-by-Link (RBL)
Receive-by-Link (RBL) lets you manually generate a deposit link from the Orbital Client Portal and send it directly to a user — via email, chat, or any other channel. When the user opens the link, they’re taken to a hosted invoice page (like HPP) where they can complete their crypto deposit.
There’s no API integration involved. It’s designed for manual or concierge-style deposits — perfect when you want to offer a more personal or one-off payment experience.
Features
- Generated manually via the Orbital Client Portal.
- Hosted invoice page with pre-configured currency and amount.
- User completes payment on Orbital’s hosted page.
- Status updates available in the Client Portal (not via webhook or API).
- One-time-use deposit link with 15-minute expiry.
Advantages
- No integration work and can be used immediately.
- Easy to share, just copy and send the link.
- Ideal for VIP, concierge, or manual deposit scenarios.
- Works well when merchants want full control over each transaction setup.
- Hosted page is secure and maintained by Orbital.
Limitations
- Created manually, its not scalable for high-volume or automated use cases.
- Not available via API, no programmatic control or webhook updates.
- Each link is single-use and expires after 15 minutes.
- Users are redirected off-site to complete payment.
Best suited for
- High-touch payments with VIPs, private clients, or institutional customers.
- Teams that want to manually review or configure every deposit.
- Merchants handling customer service-led payments (e.g., via live chat or email).
- Use cases where full API integration isn’t needed or desired.
Choosing the Right Pay-In Method
Before selecting the right suitable deposit method you need to consider your platform’s goals, user experience, and technical setup.
-
✅ Choose Rapid Deposit if:
- You want to assign each user a reusable wallet address.
- Your platform supports wallet top-ups, credit balances, or open-ended deposits.
- You want to allow users to deposit any amount, at any time, even without logging in.
-
✅ Choose Hosted Payment Page (HPP) if:
- You want to minimize development effort, the UI is fully handled by Orbital.
- You want Orbital to manage the invoice expiry, user journey, and design.
- You're building a checkout or eCommerce experience with fixed deposit values.
-
✅ Choose Embedded Payment Page (EPP) if:
- You want to embed Orbital’s UI directly within your platform (no redirects).
- You need a lightweight integration with a JS widget and minimal backend config.
- Your platform handles fixed-value deposits (like invoices or shopping carts).
-
✅ Choose Self-Hosted Invoice UI if:
- You want full control over the deposit flow, layout, branding, and UX.
- Your users must stay fully on-platform, and you want to avoid iframes or redirects.
- You’re okay building and maintaining your own invoice front-end.
-
✅ Choose Receive-by-Link (RBL) if:
- You want to manually generate invoices via the client portal.
- Your use case is concierge-style payments (e.g., account managers sending links).
- The user is not logged in, and you just need a quick, one-time payment request.
- You don't need a reusable wallet or custom integration, just fast one-off deposits.