Cards inside your app
Give your wallet users a virtual card. They spend their balance anywhere cards work — your ledger decides every purchase.
- A card per user
- Your ledger approves
- No card data on your servers
Live in three steps.
- Day 1Map your users
Every card carries your own user id.
· external_user_id: user_42POST /cards 201 - Every purchaseYour ledger decides
Guara asks your endpoint before the money moves.
⇢ authorization.request← APPROVE ✓ - AfterReconcile
Signed webhooks for every card event.
⇢ transaction.posted ✓⇢ card.issued ✓
Fintech & wallets, end to end.
A card for every user
external_user_id ties each card and transaction to the user in your app.
Your ledger decides
Approve from the user's balance in 1.2 s.
No card data on your servers
Card numbers open in our secure frame.
Signed, retried
HMAC-SHA256, 7 retries for every webhook.
Any currency
USD Visa or Mastercard, spent worldwide.
A few lines
to start.
Same REST API, same keys and limits for every program. Docs open in the console after sign-up.
// your ledger decides: the card spends the user's balance in your app app.post("/guara/authorize", express.raw({ type: "application/json" }), (req, res) => { if (!verify(req)) return res.status(401).end(); const { data } = JSON.parse(req.body); const balance = ledger.available(data.external_user_id); if (data.amount_cents > balance) { return res.json({ decision: "DECLINE", reason: "INSUFFICIENT_BALANCE" }); } ledger.hold(data.external_user_id, data.amount_cents); res.json({ decision: "APPROVE" }); });
Tell us what you're building.
Three steps from here to live cards.
- We reply within a business dayPricing for your volume, by email or your contact.
- You connect the APIKeys, webhooks and MCP for your agents.
- You go liveSwitch to live keys and issue cards to your users.
Fintech & wallets: FAQ
Do I need PCI DSS?
Card numbers open in our secure frame and never reach your servers.
Whose balance does a purchase use?
Your user's balance lives in your ledger; you approve the purchase, and it is paid from your USDT balance with Guara.
Can I issue a card on sign-up?
Yes — one API call per user, with an idempotency key so a retry never issues twice.
Is Guara a bank?
No. Guara does not accept deposits; cards are issued by a licensed issuing partner.