Two create modes
You can create a wallet either:- from a policy template with
policyId/policy_id - from an inline
initialUser/initial_user
ed25519, secp256k1,
and secp256r1.
Basic create flow
TypeScript
secp256r1 public key for a passkey-backed
authority. Credential creation and signing stay outside the Developer SDK:
TypeScript
secp256k1:
TypeScript
What you get back
The result is not just one transaction. It is a categorized create plan:
For a plain create, this usually collapses to one creation transaction whose
only required transaction signer is the fee payer. Policy-driven follow-up
instructions can add other signer requirements.
Networks
Both SDKs resolve the network from the call and then the client default. Wallet creation requires one of those values to be set.What to submit
Always submit the preparedtransactions exactly in the returned order.
If the client-authority collection is not empty, your application must obtain
and patch each requested embedded signature outside the server SDK before
submission. An empty collection does not prove that the transaction needs no
application signature; inspect each serialized transaction’s required signer
set as well. The field name comes from the hosted API schema; it is not a
browser SDK surface.
What to read next
Signers
Basic signing support for application-owned wallets and passkeys
Add Roles
Attach a scoped role to an existing wallet
Transfer SOL and Tokens
Wallet actions after create
Read Wallet State
Balances, token activity, and roles
Sponsor & Submit
Swig-backed fee sponsorship

