BuckspaySigner) from what account signs (AccountAdapter).
They are orthogonal: you can pair any signer with any account type. The two account models
ship in v1.
Comparison
| Classic | Passkey / contract | |
|---|---|---|
| User prerequisite | A Stellar wallet (Freighter / xBull / LOBSTR) | A device with WebAuthn support |
| Address | G... account | C... contract account |
| Materialization | Sponsored onboarding (account + trustline) | Sponsored OZ Smart Account deploy |
| Signature verified by | The network (Ed25519) | The contract’s __check_auth (secp256r1) |
| Best for | Existing Stellar users | New users and passwordless onboarding |
Classic account (G...)
For users who already have a Stellar wallet (Freighter, xBull, LOBSTR). Calling connect()
resolves the G... address and runs sponsored onboarding - it creates the account and adds the
USDC trustline - if either is missing.
The network verifies the user’s signature via standard Ed25519 authentication. No contract is
involved.
The classicAccount() adapter is imported from @buckspay/accounts/classic; the matching
signer is walletsKit from @buckspay/signers/wallets-kit.
Passkey / contract account (C...)
The hero flow for new users. connect() creates a WebAuthn credential, derives the
deterministic C... address, and deploys the OpenZeppelin Smart Account sponsored by the
facilitator. The user only taps an authenticator prompt - no seed phrase, no XLM balance
required.
Signing happens in the device authenticator (secp256r1). The contract’s __check_auth
verifies the signature on-chain. See Gasless on Stellar for
the mechanics.
The ozContractAccount() adapter is imported from @buckspay/accounts/oz-contract;
sponsorAddress is the facilitator’s public sponsor G... address, needed to derive the C...
address offline.
The AccountAdapter seam
AccountAdapter is the interface both models implement. OZ Smart Accounts is the only
contract implementation in v1, but the interface is open - you can wire in any conforming
adapter without changing the rest of the client.
Next
Prepare -> Sign -> Send
The three-phase flow every Buckspay payment follows.
Gasless on Stellar
The native Stellar mechanisms behind sponsored and contract accounts.

