Skip to main content
An Onramp converts fiat (USD today) into stablecoins, landing in a HIFI Wallet or External Wallet. It’s a quote-then-accept flow: creating an onramp returns a quote without moving any funds; accepting it generates the deposit instructions (or kicks off an ACH pull) and starts the settlement process.

Two ways to fund an onramp

Get indicative rates

Returns an informational conversion rate - not a quote, not persisted, and unrelated to the quote you get from actually creating an onramp. Request
Response

Create an onramp (quote)

Creates the onramp in OPEN_QUOTE status. Requires an Idempotency-Key header and a requestId. Either source.amount or destination.amount can drive the conversion, not both. Request
Response
For an exact sending amount, set source.amount; for an exact received stablecoin amount, set destination.amount.

Accept an onramp quote

Moves the onramp into AWAITING_FUNDS. For a user deposit, this generates the bank deposit instructions; for an ACH pull, this initiates the debit against the external account. Request
Response
depositInstructions is only populated for the user-deposit path - not for ACH pulls, since HIFI initiates those itself. Once a matching deposit is detected, depositTracking fills in with the originating bank’s details (sender name, routing/account number, reference) so you can reconcile who actually sent the funds.
Always deposit with the reference provided under depositInstructions; a missing or incorrect reference can lead to failed reconciliation. Reach out to HIFI if the deposit is made but the onramp status hasn’t transitioned.

Microdeposits

microDeposits populates once an onramp reaches AWAITING_FUNDS, surfacing small (under $1.00) verification deposits sent by the user’s bank. Some banks require the account holder to confirm these amounts in their own banking app before releasing the real payment - if you see this field populated, pass the amount(s) along to your user so they can complete that verification step with their bank.
A microdeposit never counts toward the expected deposit amount and never changes the onramp’s status - the full amount still needs to arrive in one matching payment for the onramp to proceed.

Status

A transaction in COMPLETED status can transition to FIAT_RETURNED if a post-payment-completion return is requested and succeeds. A transaction in FIAT_FAILED status can transition to FIAT_RETURNED if the deposited funds have already landed but are rejected by our compliance review.

Cancel an onramp

Only allowed while status is IN_REVIEW - after accepting the quote, before a deposit has been detected. Any other status returns RESOURCE_NOT_ELIGIBLE (422). Request
Response

Simulate deposits (sandbox only)

Mock an inbound deposit hitting the onramp’s dedicated bank sub-account, so you can progress an onramp past AWAITING_FUNDS in sandbox without a real bank transfer. Request
use RTP as the transferType for faster simulation
Response

Getting Help

  • 📧 Email: support@hifi.com
  • 💬 Slack: Message us in our shared Slack channel