# Mintlify Starter Kit - [Welcome to PrimeVault](https://docs.primevault.com/index.md): A stablecoin-native global money movement platform that helps fintechs, PSPs and global corporations move money across their corridors better, faster and cheaper. - [Coverage](https://docs.primevault.com/coverage.md): Countries, currencies and payment methods supported for payins and payouts on PrimeVault. - [Use Cases](https://docs.primevault.com/use-cases/overview.md): Find the flow that matches where your money starts and where it needs to go. - [Deposit fiat](https://docs.primevault.com/use-cases/deposit-fiat.md): Fund a vault by bank transfer. - [Deposit crypto](https://docs.primevault.com/use-cases/deposit-crypto.md): Fund a vault with a stablecoin or other crypto asset. - [Pay out to a bank account](https://docs.primevault.com/use-cases/payout-bank-account.md): Send fiat to a bank account, in the same currency or converted from another asset. - [Pay out to a wallet](https://docs.primevault.com/use-cases/payout-wallet.md): Send crypto to an external wallet, in the same asset or converted from another currency. - [Sell crypto for fiat](https://docs.primevault.com/use-cases/sell-crypto.md): Sell a stablecoin for fiat with a liquidity provider. - [Buy crypto with fiat](https://docs.primevault.com/use-cases/buy-crypto.md): Buy a stablecoin with fiat from a liquidity provider. - [Deposit into the LP vault](https://docs.primevault.com/use-cases/deposit-into-lp-vault.md): Fund a liquidity provider vault so you can trade. - [Withdraw from the LP vault](https://docs.primevault.com/use-cases/withdraw-from-lp-vault.md): Move funds out of a liquidity provider vault to a contact, one of your vaults, or a bank account. - [Setting up API User](https://docs.primevault.com/getting-started/setting-up-api-user.md): Set up a PrimeVault API user with a public-private key pair, store the private key securely, sign every request, and follow key management best practices. - [Setting up API user for testing](https://docs.primevault.com/getting-started/api-user-testing.md): Create a dedicated PrimeVault test API user to safely try key generation, onboarding, and SDK integration before you move to production. - [Setting up API user for production](https://docs.primevault.com/getting-started/api-user-production.md): Set up a PrimeVault production API user: generate keys manually or with AWS KMS, register your public key, assign roles, and activate your API key. - [Generate Public-Private key pair for API User](https://docs.primevault.com/getting-started/generate-key-pair.md) - [Setting up API user for AWS](https://docs.primevault.com/getting-started/api-user-aws.md) - [Permissions for API User](https://docs.primevault.com/getting-started/permissions-for-api-user.md): Compare the Admin and User roles for PrimeVault API users, including vault access and creation rights, and follow least-privilege best practices. - [Restrict API access with IP whitelisting](https://docs.primevault.com/ip-whitelisting.md): Use IP whitelisting to allow API requests only from trusted IP addresses. PrimeVault rejects any request that comes from an IP not on your list. - [API Fundamentals](https://docs.primevault.com/api-basics/api-fundamentals.md): Base URL, shared request conventions, example format, and a production checklist for the PrimeVault API. - [Authentication](https://docs.primevault.com/api-basics/authentication.md): Authenticate PrimeVault API requests with an API-user key and a short-lived ES256 bearer token bound to the exact request path and JSON body. - [Status Codes](https://docs.primevault.com/api-basics/status-codes.md): HTTP status codes returned by the PrimeVault API, the matching JavaScript SDK error classes, and retry guidance for each failure type. - [Custom Error Codes](https://docs.primevault.com/api-basics/custom-error-codes.md) - [Filtering and Pagination](https://docs.primevault.com/api-basics/filtering-and-pagination.md): Page through PrimeVault list endpoints with opaque cursors and resource-specific query filters for transactions, vaults, contacts, and bank accounts. - [Webhooks](https://docs.primevault.com/api-basics/webhooks.md): Receive TRANSACTION_STATUS_CHANGED notifications, understand retry behavior, and verify PrimeVault webhook signatures with HMAC-SHA256. - [Data Models](https://docs.primevault.com/api-basics/data-models.md): TypeScript data models used by the PrimeVault API and JavaScript SDK, including vaults, contacts, bank accounts, transactions, intents, quotes, and webhooks. - [Approvals](https://docs.primevault.com/approvals/overview.md): Transactions, vaults, contacts, and bank accounts you create or change through the API wait for your API user's approval. Get the approval message, sign it, and submit the action. - [Get an Approval Message](https://docs.primevault.com/approvals/get-approval-message.md): Get the message to sign for a change request waiting for approval: a transaction, vault, contact, or bank account. - [Submit an Approval Action](https://docs.primevault.com/approvals/submit-approval-action.md): Approve or reject a change request waiting for approval (a transaction, vault, contact, or bank account) with a signed approval message. - [Vaults](https://docs.primevault.com/accounts-and-wallets/vault.md): List, retrieve, and create vaults, and read their balances and deposit instructions. - [List Vaults](https://docs.primevault.com/accounts-and-wallets/list-vaults.md): Retrieve a paginated list of vaults in your organization, optionally filtered by vault name. - [Retrieve a Vault](https://docs.primevault.com/accounts-and-wallets/retrieve-vault.md): Retrieve a single vault by ID, including its wallets, asset, and sub-org. - [Create a Vault](https://docs.primevault.com/accounts-and-wallets/create-vault.md): Create a new vault in your organization. The vault needs your API user's approval before it takes effect. - [Get Vault Balances](https://docs.primevault.com/accounts-and-wallets/vault-balances.md): Read a vault's balance per asset, including symbol, chain, token address, and optional USD value and price. - [Get Vault Deposit Instructions](https://docs.primevault.com/accounts-and-wallets/vault-deposit-instructions.md): Get the bank or crypto details used to fund a vault. Send an asset plus exactly one payment rail or chain, and use the returned details exactly. - [List Contacts](https://docs.primevault.com/accounts-and-wallets/address-book/list-contacts.md): Retrieve a paginated list of contacts, optionally filtered by name, status, or external ID. - [Retrieve a Contact](https://docs.primevault.com/accounts-and-wallets/address-book/retrieve-contact.md): Retrieve a single contact by ID, including its blockchain, address, status, tags, and assets. - [Create a Contact](https://docs.primevault.com/accounts-and-wallets/address-book/create-contact.md): Save a blockchain address as a contact. The contact needs your API user's approval before it takes effect. - [Update a Contact](https://docs.primevault.com/accounts-and-wallets/address-book/update-contact.md): Update a contact's asset list and contact groups. You can't change its name or address. The update needs your API user's approval. - [List Bank Accounts](https://docs.primevault.com/accounts-and-wallets/address-book/list-bank-accounts.md): Retrieve a paginated list of your saved bank accounts. - [Retrieve a Bank Account](https://docs.primevault.com/accounts-and-wallets/address-book/retrieve-bank-account.md): Retrieve a single bank account by ID, including its status, account details, and address. - [Create a Bank Account](https://docs.primevault.com/accounts-and-wallets/address-book/create-bank-account.md): Save a bank account. Required fields depend on the country, payment method, and provider. The account needs your API user's approval. - [Assets and Chains](https://docs.primevault.com/accounts-and-wallets/assets-and-chains.md): Find the assets and blockchain networks enabled for your organization. - [List Assets](https://docs.primevault.com/accounts-and-wallets/list-assets.md): Retrieve every asset enabled for your organization, with its symbol, blockchain, and chain-specific details. - [List Supported Chains](https://docs.primevault.com/accounts-and-wallets/list-supported-chains.md): Retrieve the blockchain networks enabled for your organization, with the identifiers to use in other API calls. - [Sub-Orgs](https://docs.primevault.com/accounts-and-wallets/sub-orgs.md): Group users and resources under sub-orgs within your organization. - [Create a Sub-Org](https://docs.primevault.com/accounts-and-wallets/sub-orgs/create-sub-org.md): Create a sub-org with a unique name. Requires the ADMIN or OWNER role. - [List Sub-Orgs](https://docs.primevault.com/accounts-and-wallets/sub-orgs/list-sub-orgs.md): Retrieve a paginated list of sub-orgs, optionally filtered by name. - [Transactions](https://docs.primevault.com/transactions/overview.md): Track transfers, on-chain operations, ramps, FX, and trades through the transaction lifecycle. - [List Transactions](https://docs.primevault.com/transactions/list-transactions.md): Retrieve a paginated list of transactions, filtered by status, category, vault, asset, or external ID. - [Retrieve a Transaction](https://docs.primevault.com/transactions/retrieve-transaction.md): Retrieve a single transaction by ID, including its balance changes and status. - [Ramps](https://docs.primevault.com/transactions/ramps.md): Ramps convert fiat to crypto (on-ramp) or crypto to fiat (off-ramp). Request a quote, execute it, then track the transaction to completion. - [Get a Ramp Quote](https://docs.primevault.com/transactions/ramps/get-quote.md): Request priced quotes for an on-ramp or off-ramp by describing the source, destination, assets, and exactly one amount. - [Execute a Ramp Quote](https://docs.primevault.com/transactions/ramps/execute-quote.md): Create a ramp transaction from a selected quoteId. Returns HTTP 201 with the full Transaction. - [FX](https://docs.primevault.com/transactions/fx.md): FX converts one fiat currency to another, such as NGN to USD or GBP to EUR. Request a quote, execute it, then track the transaction to completion. - [Get an FX Quote](https://docs.primevault.com/transactions/fx/get-quote.md): Request priced quotes to convert one fiat currency to another by describing the source, destination, assets, and exactly one amount. - [Execute an FX Quote](https://docs.primevault.com/transactions/fx/execute-quote.md): Create an FX transaction from a selected quoteId. Returns HTTP 201 with the full Transaction, including deposit instructions when funding is required. - [Trade](https://docs.primevault.com/transactions/trade.md): Buy or sell USDT or USDC for USD, EUR, GBP or AED into your own account. Request a quote, execute it, then track the transaction to completion. - [Get a Trade Quote](https://docs.primevault.com/transactions/trade/get-quote.md): Request priced quotes to buy or sell a stablecoin against fiat by giving the input asset, output asset, and exactly one amount. Source and destination are optional. - [Execute a Trade Quote](https://docs.primevault.com/transactions/trade/execute-quote.md): Create a trade transaction from a selected quoteId before the quote expires. Returns HTTP 201 with the full Transaction object. - [Create a Transfer](https://docs.primevault.com/transactions/create-transfer.md): Send assets from a source to a destination. - [Create a Contract Call](https://docs.primevault.com/transactions/create-contract-call.md): Submit an arbitrary contract call from a vault, such as EVM call data, an ICP canister call, a raw-signing message, or an Alephium method. - [Stake a Resource](https://docs.primevault.com/transactions/stake-resource.md): Stake an asset from a vault to obtain a chain resource, such as staking TRX on TRON for energy or bandwidth. - [Delegate a TRON Resource](https://docs.primevault.com/transactions/delegate-resource.md): Delegate TRON energy or bandwidth from a vault to a destination party, such as a contact, and get back a pending transaction. - [Replace a Transaction](https://docs.primevault.com/transactions/replace-transaction.md): Replace a submitted transaction on a supported chain, if it doesn't already have an active replacement. This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.