Side-by-side
| Dimension | Embed (iframe) | Headless API |
|---|---|---|
| Time to first deposit | ~30 minutes | 1–2 days |
| Where the UI runs | Our domain (app.barker.money), inside your iframe | Your domain, your code |
| Wallet connection | We handle it (Reown / WalletConnect) | You handle it (Wagmi / RainbowKit / your existing connector) |
| Transaction signing | We construct, your user signs in their wallet | You construct, your user signs in their wallet |
| Custom layout / multi-step flow | Limited (iframe is one self-contained surface) | Full control |
| Native mobile UI | Works in WebView, not native | Native (you build it) |
| Multi-tier display (3 APY options on one screen) | One iframe = one product, so 3 iframes side-by-side OR a tabbed wrapper | Single React/Vue component, your call |
| Brand consistency with rest of app | Themeable (color / logo / name), but layout is ours | Pixel-identical to your product |
| Engineering ownership | We ship UI updates, you get them automatically | You own the deposit/withdraw UI lifecycle |
| Security review surface | iframe + CSP frame-src allowlist | Wallet integration + contract calls in your codebase |
| Both modes share | Same BarkerEngine contract · Same partner API key · Same APY · Same fee split · Same webhooks · Same compliance posture |
Decision tree
Pick Embed if any of the following:- You want to ship in a sprint, not a quarter
- You don’t have a frontend engineer with on-chain experience available
- The deposit flow is a self-contained “Earn” tab, not interleaved with other steps
- You’re A/B testing whether yield even belongs in your product before committing engineering time
- The deposit must be one step inside a longer flow (KYC → deposit → top-up → confirmation)
- Your product has a custom design system that an iframe would break
- You want native mobile (iOS / Android) UI, not WebView
- You want to display multiple Barker products (e.g. 3 risk tiers) on one screen with custom comparison UI
- Regulatory or InfoSec posture requires that the deposit UI runs on your origin only
Can I mix both?
Yes. They’re not mutually exclusive — same partner account, same engine, same key. Common patterns:- Embed for web, headless for mobile — fastest desktop launch, native iOS/Android in v2
- Embed in onboarding, headless in dashboard — quick “Try yield” CTA, deeper portfolio view later
- Headless for primary, embed as fallback — internal “Open in Barker” debug link
What’s next
- Embed iframe →
- Headless API end-to-end →
- Multi-tier products → — offer 3 risk profiles in either mode