# Rezva > Wallet-agnostic payment-identifier resolution into crypto payment destinations. ## Start here - [Wallet quickstart](/docs/for-wallets/quickstart): integrate a wallet. - [SDKs and integration recipes](/docs/for-wallets/sdks): TypeScript-first examples and the end-to-end flow. - [Resolver API](/docs/for-wallets/api-reference): `POST /v1/resolve`. - [OpenAPI specification](/openapi.json): machine-readable API contract. - [Full LLM reference](/llms-full.txt): compact implementation context for AI agents. - [Free API and Test Merchant](/docs/dashboard/free-api): approval-free resolver testing. ## Core rules - Resolve an identifier before displaying or sending a payment. - Require `status: "active"` and `payment_ready: true`. - Display chain, asset, token contract, network identifier, amount constraints, and destination. - The wallet signs and broadcasts payments; Rezva does not custody funds. - Free API keys are resolver-only and rate-limited. - The shared Test Merchant uses one persistent identifier and destination for all developers. - The prototype flow is: dashboard key → shared QR → `POST /v1/resolve` → Base Sepolia USDC transfer → receipt and explorer verification. - Provider namespace, identifier, and complaint mutations require approved provider access; identifier mutations also require controller authorization.