title: Spend Controls source_url: /developer-api/v1/spend-controls summary: The policy layer behind every dollar spent on Ramp — budgets, templates, and approval workflows that apply equally to cards, reimbursements, bills, and agent purchases. content: The policy layer behind every dollar spent on Ramp — budgets, templates, and approval workflows that apply equally to cards, reimbursements, bills, and agent purchases. Three primitives compose every spend control on Ramp. They're independent objects with their own APIs, but they're designed to plug into each other. Funds. A budget with restrictions — amount, interval (daily, monthly, total), allowed merchant categories, allowed merchants, allowed countries. A fund issues a virtual card automatically and can be attached to physical cards. Funds also gate reimbursements when no card is in play. Create and manage them with the Funds API. Spend programs. Templates that mass-produce funds with consistent policy. Use one when the same shape of budget recurs — quarterly offsites, per-employee SaaS allowances, contractor stipends, monthly travel funds. Mint a fund from a program and the policy comes along for free. Approvals. The review path a spend action travels before it's allowed. Approvals route bills, reimbursements, purchase orders, and fund-creation requests through configured policy. Reviews can stay Ramp-native or hop to your own system via Blank Canvas approvals. A spend control is rarely a single primitive — it's a composition. A typical "team travel budget" is a spend program template producing funds, with optional approvals for amounts above a threshold. A "vendor SaaS allowance" is a single fund with no template. A "$50K capex approval" is an approvals workflow with no budget object yet. Spend controls cut across every Product that puts money in motion. Surface What spend controls do Cards Funds define the budget every virtual card draws against. Multiple cards can share the same fund; a primary physical card can draw from multiple active, linkable funds through automatic routing (when primary card spending is enabled). Spend programs stamp out consistent policy for groups. Reimbursements Funds gate reimbursable spend by category and amount. Approvals route submissions to the right reviewer. Bill Pay Approvals route bills through configured policy before payment. Reviewers can sign off in Ramp or in your system via Blank Canvas. Procurement Approvals gate intake requests. Spend programs back the request templates that capture what's being bought. AI Agents Funds constrain what an agent can spend, per merchant and per amount. Approvals can route agent purchases above a threshold to a human. Spend programs — compose funds, programs, transactions, and webhooks to manage a recurring budget end-to-end. Virtual cards — issue cards backed by funds, expose them to your servers (Vault) or to the user's browser (iframe). AI Agents — constrain agent spend with funds and route high-value purchases through approvals. Procurement Intake — receive intake requests, return external approval decisions via Blank Canvas, and sync downstream PO data. Bill Payments — create approved bills via API and pay vendors. Approvals gate bills before payment. Cards — every card draws against a fund. Reimbursements — gated by funds, routed through approvals. Bill Pay — bills route through approvals before payment. Procurement — intake requests gated by approvals; spend programs back the request templates. Funds — create, update, suspend, and terminate funds. Virtual cards are issued here. Spend Programs — templates that drive consistent fund creation and back configured approval workflows. Blank Canvas Approvals — participate in approvals from your own system. Upload documents, store metadata, approve or reject. Spend Requests — sync reviewer comments back to Ramp. Webhooks — subscribe to unified_requests.external_approval_request and transactions.cleared for spend-control events. Authorization — funds:read / funds:write, spend_programs:read / spend_programs:write, blank_canvas:write scopes.