depositOS Docs

depositOS lets your users fund your app from anywhere — any chain, any wallet, an exchange withdrawal, or no wallet at all.

There are two ways to integrate.

npm install @gizmolab/depositos

Drop in the prebuilt widget, or build your own UI on the headless hooks. The package ships its own styles — no Tailwind or CSS setup required.

You need an API key (dos_live_…) from the portal. Pass it as config.apiKey; the SDK sends it as an x-api-key header so your volume and transactions are attributed to your app.

2. Iframe

No npm install, no React. Host the embed, send config with postMessage, listen for success/close/resize events.

  • Iframe Embed — parent setup, postMessage protocol, origin validation
  • Script Tag — zero-dependency drop-in for static sites

The backend

depositOS runs the API. There is nothing to deploy and no infrastructure to manage — upstream provider keys live on our servers and never reach the browser.

If you need to call it directly from your own backend, see the API Reference.

Deposit addresses are persistent

A returning user is shown the same deposit address they saw last time, for the same source chain, token and destination. Pass config.userId — your own id for that user — and depositOS stores and re-verifies their address. See Funding Sources.