Cards
Give your users a credit card backed by the USDC in their Pollar wallet. The platform runs the identity steps you configure (Didit, registry checks, forms), registers the user with the card provider from the verified identity, issues a virtual card and funds it from the wallet over CCTP, all inside one modal.
Providers and their steps are configured in your dashboard
The modal only offers the card providers you enable under Integrations → Cards. The identity steps each provider asks for (KYC with Didit, a registry check, a form, the registration itself) are configured by Pollar per provider, exactly like a ramp route, and the SDK reads them at runtime via getCardRequirements(). The provider's own verification (document and selfie) runs after those steps, on its hosted page.
GET /v2/cards/providers →
{
"content": {
"providers": [{
"id": "…", "name": "Coral Finance", "adapter": "CORAL",
"cardTypes": ["VIRTUAL"], "fundingAssets": ["USDC"],
"supports": { "revealSecrets": true, "freeze": false },
"requirement": { "type": "KYC", "optionId": "…", "status": "none" },
"available": true
}]
},
"code": "SDK_CARDS_PROVIDERS",
"success": true
}Drop-in button that opens a prebuilt modal — identity steps, provider sign-up, the card, its activity, funding and the encrypted reveal of the number are rendered for you.
openCardModal() takes no arguments — the provider, its steps and the funding amount are handled inside the modal.
What the hook gives you
From usePollar() in @pollar/react.
openCardModal()syncparams: No arguments.
returns: Opens the modal: the platform's steps, the provider sign-up and KYC, the card with balance and activity, funding and reveal.
getClient()syncparams: No arguments.
returns: The PollarClient, for every card method listed under Core.
import { usePollar } from '@pollar/react'; export function CardButton() { const { openCardModal, isAuthenticated } = usePollar(); // openCardModal renders the whole flow: the platform's steps, // the provider sign-up and KYC, the card, its activity, funding // and the end-to-end encrypted reveal of the number. return ( <button onClick={openCardModal} disabled={!isAuthenticated} > Get a card </button> ); }