← All posts

Trustware: 5 Questions to Ask Before Integrating Any Deposit or Routing SDK

TL;DR: Most deposit SDK evaluations focus on chain count and stop there. The questions that actually predict whether an integration goes smoothly are about custody, configuration flexibility, error handling, wallet coverage, and integration style, the details that show up in production, not on a features page.

What should you actually evaluate in a deposit or routing SDK?

Beyond chain and asset coverage, the details that matter most in production are whether the infrastructure is custodial, how explicitly you can configure the destination, how errors and rate limits are surfaced, which wallets and ecosystems are actually detected, and whether the SDK offers more than one integration style for different app architectures.

5 questions to ask before integrating

1. Is the routing non-custodial, and can you verify where funds actually go?

Ask whether any step of the route sends funds to an address the provider controls, even briefly. A configuration model that lets you set an explicit destination, chain, token, and address, like Trustware's routes.toChain, routes.toToken, and optional routes.toAddress, gives you something concrete to verify rather than a general non-custodial claim to take on faith.

2. Does it offer more than one integration style?

A prebuilt widget suits apps without existing wallet management; a host-wallet bridge suits apps that already manage wallet state through Wagmi or similar; a headless core API suits fully custom interfaces. An SDK that only offers one of these forces your architecture to bend around the tool instead of the other way around.

3. How does it handle rate limits and errors?

Ask whether retry behavior is configurable, and whether failures surface as typed errors your app can handle programmatically, versus generic failures you have to guess at. Trustware's SDK exposes configurable auto-retry with backoff and throws a typed RateLimitError when retries are exhausted, which is the kind of detail that matters once you're past a proof of concept and into production traffic.

4. Which wallets and ecosystems are actually detected, not just theoretically supported?

"Multi-chain" can mean EVM-only in practice. Confirm wallet detection actually covers the ecosystems you need, for example whether Solana wallets like Phantom, Solflare, or Backpack are natively detected alongside EVM wallets, rather than requiring a separate integration.

5. Can you set guardrails on amounts, or does every deposit need custom validation in your own app?

Ask whether the SDK supports fixed-amount configurations, minimum and maximum output constraints, and adjustable route-refresh cadence natively, so your app isn't rebuilding amount validation logic the SDK could otherwise handle.

The Trustware view, most evaluations stop at the wrong layer

Chain count is the easiest thing to compare and the least predictive of integration difficulty. The questions above surface in week three of an integration, not in the first sales call, which is exactly why they're worth asking upfront rather than discovering them during implementation.

A contrarian take, "how many chains do you support" is often a proxy for a question nobody's actually asking

What people usually want to know is "will this cover what my users actually hold," which is a wallet-and-asset-detection question more than a chain-count question. A large chain list with thin wallet detection can still miss the majority of a real user base.

What to check before integrating

  • Is the destination explicitly configurable, chain, token, and optionally address?
  • Does the SDK offer a widget, a host-wallet bridge, and a headless API, or only one of these?
  • Are rate limits and errors surfaced as typed, catchable errors?
  • Are non-EVM wallets natively detected, or only EVM ones?
  • Can amount guardrails, fixed amounts, min/max output, be configured without custom app-side logic?

See the Trustware docs and @trustware/sdk on npm for current specifics.

FAQ

Why does chain count matter less than it seems?

A long chain list doesn't guarantee wallet detection actually covers those ecosystems in practice; wallet and asset coverage is the more predictive metric for whether your actual users are served.

What's the difference between a typed error and a generic failure?

A typed error, like a RateLimitError, lets your app handle a specific failure mode programmatically; a generic failure requires guessing at the cause before your app can respond appropriately.

Does Trustware support non-EVM wallets natively?

Yes, Solana wallets including Phantom, Solflare, and Backpack are part of the SDK's wallet detection layer alongside EVM wallets.

Can I configure a fixed deposit amount instead of letting users pick any amount?

Yes, the SDK's route options support a fixed input amount as well as minimum and maximum output constraints.

Do I have to use the prebuilt widget, or can I build a fully custom UI?

Both are supported; the same routing and configuration underlies the widget, a host-wallet bridge integration, and a headless core API.

Is retry behavior configurable, or fixed?

Configurable, including auto-retry, max retries, and base delay, with a typed error thrown once retries are exhausted.

How to decide

Walk through these five questions with any SDK you're evaluating, including Trustware, before committing to an integration. The answers predict production friction far better than a chain-count comparison does.

See trustware.io for current implementation details.