Session Keys
Session keys are ephemeral signing keys with built-in spending limits and expiration times. They allow you to authorize automated transactions without exposing your primary credentials — perfect for recurring billing, subscription renewals, and programmatic payments.Session keys are only available for merchants using MPC wallets. If you are using an external wallet, you will need to migrate to MPC first.
Create a Session Key
Your merchant ID.
Maximum spending limit for this session key in USDC. Must be between 1,000,000.
Number of days until the session key expires. Must be between 1 and 90.
WebAuthn passkey authentication data. Required in production for security. In development/test mode, session keys can be created without passkey verification.Fields:
credential_id(string): WebAuthn credential IDauthenticator_data(string): Base64-encoded authenticator datasignature(string): Base64-encoded signatureclient_data_json(string): Base64-encoded client data JSON
Example
Response
List Session Keys
Your merchant ID.
Get a Session Key
Merchant ID.
Session key ID.
Revoke a Session Key
Merchant ID.
Session key ID to revoke.
Security Features
Session keys include several built-in security mechanisms:| Feature | Description |
|---|---|
| Spending Limit | Maximum USDC that can be spent before the key is exhausted |
| Time Expiry | Automatic expiration after the configured duration |
| Rate Limiting | Maximum 10 transactions per minute per session key |
| Device Fingerprinting | Requests from a different device than the one that created the key are rejected |
| Impossible Travel Detection | Geolocation checks flag requests from implausible locations |
| Anomaly Detection | Unusual transaction patterns trigger automatic key revocation |