Wallet API vs embedded SDK vs white-label: which fits?

Compare the three wallet integration models on control, launch time, engineering effort, security, lock-in, and cost, with a five-question decision tree.

Choose a wallet API if you have engineers and need full control of the product, an embedded wallet SDK if you want wallets inside a consumer app without building key flows, and a white-label wallet if speed to launch matters more than control. Most teams land on an API or an SDK, and plenty use both.

All three are forms of wallet as a service (WaaS): hosted wallet infrastructure where the provider runs key management, signing, and chain connectivity. What changes is how much of the product you build around it. If you're earlier in the project, what is crypto wallet integration covers the components first.

Wallet API, embedded SDK, or white-label: which should you choose?

The choice comes down to two questions: who signs transactions, and how much of the interface you want to own. If your backend signs, use an API. If your users sign inside your app, use an SDK. If you want someone else to own the whole app for now, use white-label.

ChooseWhenAvoid when
Wallet APIYour backend moves funds, you need custom flows, and you have engineers to build the interfaceYou need a consumer wallet live before you can staff the work
Embedded SDKYour users sign their own transactions inside your web or mobile appYou need deep control over key flows or unusual chains the SDK doesn't cover
White-labelYou're testing demand, or the wallet is a side featureThe wallet is the core of your product and roadmap

What is a wallet API and when does it fit?

A wallet API is a set of server-side endpoints for creating wallets, reading balances, requesting signatures, and receiving webhooks about on-chain activity. Your backend calls the provider, the provider signs under policies you configure, and you build every screen the user sees.

Providers usually protect keys behind a wallet API with MPC or a hardware security module (HSM), a tamper-resistant device that stores keys and signs without exposing them. You never handle raw keys. You do own the policy engine configuration: which destinations are allowed, which amounts need a second approver, and which API keys can request a signature.

A wallet API fits when:

  • Your backend initiates transfers: payouts, treasury moves, fee collection, refunds.
  • You need custom flows that no prebuilt UI supports.
  • You serve businesses, not consumers, and signing happens under company policy rather than a user's thumb.

Your responsibility is larger than it looks. API credentials become the keys to the kingdom, so they need rotation, scoping, and monitoring. Retries need idempotency so a network blip doesn't sign a transfer twice. And every state a transaction can be in needs a screen.

What is an embedded wallet SDK and when does it fit?

An embedded wallet SDK is a client library that creates a wallet for each user inside your web or mobile app. The user logs in with an email, a social account, or a passkey, and the SDK handles key creation, storage, and signing prompts. Nobody installs a separate wallet app.

Under the hood, embedded wallets usually split the key into MPC shares between the user's device and the provider, or keep it in the device's secure hardware. Passkey login builds on the W3C WebAuthn standard. Some SDKs deploy a smart-contract account for each user, following ERC-4337, which adds features like sponsored gas and spending limits. Custodial vs non-custodial vs MPC wallets explains how the share split decides who controls the funds.

An embedded SDK fits when:

  • Your users are consumers or small businesses who have never used a crypto wallet.
  • Users sign their own transactions, and you want the prompt inside your interface.
  • You want wallets tied to your existing login instead of a recovery phrase.

Check four things before you commit: platform coverage (web, iOS, Android, React Native), how far the prebuilt UI can be customized, which chains and signature schemes are supported, and whether users can export their key if you ever change providers.

What is a white-label wallet and when does it fit?

A white-label wallet is a finished wallet application that the provider runs and you brand as your own. You configure logos, colors, supported assets, and sometimes fees. The provider owns the code, the release schedule, and usually much of the user data.

A white-label wallet fits when:

  • You're running a pilot to see whether your users want a wallet at all.
  • The wallet is a side feature, not the product.
  • You have no engineering capacity for wallet work this year.

The trade-off shows up later. Features you need wait on the provider's roadmap. User data may live in the provider's systems under its terms. And moving users to your own wallet means new addresses for every one of them, which is a support campaign, not a deploy.

How do the three models compare?

The three models trade control for speed. A wallet API gives the most control and the most work, a white-label wallet the least of both, and an embedded SDK sits in the middle. There is no reliable public benchmark for launch times, so the table describes relative effort.

Wallet APIEmbedded SDKWhite-label
Control over UX and dataFullYour app, with prebuilt wallet flowsBranding and configuration
Time to launchLongestMediumShortest
Engineering effortHigh: backend, policies, every screenMedium: app integration, login, statesLow: configuration and support
Security responsibilityShared: provider protects keys, you own policies and credentialsShared: provider owns key flows, you own the app and session securityMostly the provider
Vendor lock-inMedium: addresses and policies tie you inMedium to high: user keys live in the provider's schemeHigh: the whole product lives with the provider
Cost driversPlatform fee, per-wallet or per-transaction fees, gasMonthly active wallets, per-transaction fees, gas sponsorshipLicensing or revenue share, per-user fees

Which model fits? Five yes/no questions

Answer these in order. Each answer either points to a model or sends you to the next question.

  1. Do you need a wallet in front of users before you can staff wallet engineering? Yes: start with a white-label pilot, and plan the migration now. No: go to question 2.
  2. Will end users sign transactions themselves inside your app? No, your backend moves the funds: use a wallet API. Yes: go to question 3.
  3. Do most of your users already have their own wallets? Yes: let them connect those wallets through the standard EIP-1193 provider interface, and skip the wallet vendor for them. No: use an embedded SDK.
  4. Does your company also move its own funds, such as treasury, fees, or payouts? Yes: add a wallet API with approval policies next to the SDK. No: the SDK alone may be enough.
  5. Does money have to reach bank accounts? Yes: add a payments layer for on-ramps and off-ramps. No wallet model solves that on its own. What is a crypto on-ramp and off-ramp explains the pieces.

How do wallet infrastructure and payments infrastructure work together?

Wallet infrastructure holds and signs. Payments infrastructure connects the wallet to bank accounts. They're separate layers, and keeping them separate lets you change one without rebuilding the other.

A typical stack looks like this:

text

Here's how the layers meet. The wallet address your provider creates is registered with BlindPay as a blockchain wallet. A virtual account gives the customer US bank details, and each deposit converts to USDC or USDT and lands at that address. For a payout, the wallet authorizes the quoted amount, and BlindPay converts it and pays out on the local rail.

BlindPay is not the wallet provider in this picture. It never holds the keys to that wallet, and the wallet provider never has to touch a bank. The integration model only changes who signs the payout authorization: the user in an embedded wallet, or your backend under policy with a wallet API. Nothing has to be pre-funded for an external-wallet payout, as what no pre-funding means explains.

What mistakes do teams make when choosing an integration model?

Most mistakes come from choosing on the demo instead of on the key architecture and the exit. Five that come up again and again:

  1. Picking on UI polish. A smooth demo says nothing about who can sign without the user. Ask for the key and share diagram first.
  2. Ignoring chain coverage until chain two. Ethereum and Tron sign with ECDSA, Solana and Stellar with Ed25519. A provider that supports one scheme well may not support the other, and your second chain becomes a second vendor.
  3. Treating the wallet as the payments stack. A wallet holds stablecoins. It doesn't collect ACH deposits, run KYC, or pay out over Pix. Budget the payments layer from the start (build vs buy shows what that layer contains).
  4. No exit plan. Key export, address export, and transaction history export belong in the contract before launch, not after a price increase.
  5. Leaving compliance for later. User verification and wallet address screening need hooks in the first version. Retrofitting them means re-onboarding users. How to automate KYC and KYB covers the verification side.

What to do next

Run the five questions above with your product and engineering leads in one meeting, and write down the model for each flow: end users, treasury, and payouts. Then ask each shortlisted provider the same thing: who can sign without the user, and how do we leave?

If bank accounts are in scope, check the blockchain wallet docs to see how a wallet from any of these models links to payins and payouts.

FAQ