Skip to main content

Sumvin API

Sumvin is a whitelabel financial platform API. It handles user accounts, multi-chain wallets, banking, cards, KYC, and configurable onboarding — so you can build financial products without the infrastructure.

Base URL

https://api.sumvin.com/v0
Your platform may use a custom domain. Check with your administrator for the correct base URL.

What You Can Build

DomainCapabilities
Accounts & IdentityUser registration, multi-provider auth, phone verification, KYC
WalletsEOA and Safe (multisig) wallets across EVM chains
BankingLinked bank accounts via Plaid, transaction sync
CardsVirtual card issuance, spending controls, card funding
TransactionsUnified feed across crypto, bank, and card sources
AutomationConfigurable strategies, rules, and AI-powered insights
OnboardingStep-based flows with per-platform configuration

API Conventions

Every response includes _links with navigation and available actions:
{
  "user": { "...": "..." },
  "_links": {
    "self": { "href": "/v0/user/me", "method": "GET" },
    "wallets": { "href": "/v0/wallets", "method": "GET" },
    "kyc": { "href": "/v0/user/me/kyc", "method": "PUT", "description": "Submit KYC information" }
  }
}
Links include the HTTP method, so clients can discover available actions without hardcoding URLs.

Expand Parameters

Fetch related resources in a single request to avoid round-trips:
GET /v0/user/me?expand=wallets&expand=onboarding
Each endpoint documents its supported expand options. Unknown expand values are silently ignored.

Error Responses

All errors follow RFC 7807 Problem Details:
{
  "type": "https://api.sumvin.com/errors/wal-404-001",
  "title": "Wallet Not Found",
  "status": 404,
  "detail": "No wallet found with ID 12345",
  "instance": "/v0/wallets/12345",
  "error_code": "WAL-404-001",
  "trace_id": "abc-123-def"
}
Error codes follow the format {DOMAIN}-{STATUS}-{SEQUENCE} (e.g. USR-409-001, KYC-403-001). The trace_id can be shared with support for debugging.

Timestamps

Timestamps are epoch milliseconds by default. To receive ISO 8601 strings instead, include the header:
X-Timestamp-Format: iso8601
This affects all timestamp fields (created_at, updated_at, etc.).

Async Operations

Some operations (Safe wallet deployment, KYC processing) happen asynchronously. These return 202 Accepted with a current snapshot and _links to poll for the result.

Next Steps