Trust infrastructure
for AI commerce.
Every AI-agent purchase is evaluated before money moves — and every attempt, approved or not, is recorded. Embassy is the governance workspace that sits between your agents and the merchants they buy from.
Purchase Requests
LiveStock Photo License
Shutterstock
SEO Tool Renewal
Ahrefs
Logo Design Package
99designs
Approval Center
Meta Ads top-up
Exceeds per-charge limit
2 requests waiting
Calendar
Audit Ledger — every attempt recorded, signed, and queryable
View ledgerLive pipeline
Primitives
Five calls between an agent and a purchase
Embassy isn't a dashboard you configure once — it's a small set of primitives your agent calls at the moment it needs to spend.
Policy()
Define what an agent is allowed to spend, on what, and where — a mandate the policy engine can evaluate in real time.
const policy = embassy.Policy({ name: "Employee-Laptop", dailyLimit: 25000, category: "Electronics", merchants: ["amazon.in"],})Verify()
Check a purchase request against the active policy — amount, category, and merchant are all evaluated before anything proceeds.
const result = await embassy.Verify({ policy: "Employee-Laptop", amount: 8999, merchant: "amazon.in",})// -> { allowed: true, reason: null }IssueCredential()
Generate a short-lived, signed credential that proves this specific purchase was authorized under mandate.
const credential = await embassy.IssueCredential({ requestId: result.requestId, ttl: "5m",})Approve()
Escalate to a human when a request needs a real-time decision, and resolve it with a single call.
await embassy.Approve({ requestId: result.requestId, decision: "approved",})Audit()
Every purchase leaves a signed, queryable record — what was bought, under which policy, and at what price.
const receipt = await embassy.Audit({ requestId: result.requestId,})// -> signed receipt, ready to store or exportOne call to check out
Your agent just calls purchase()
Embassy handles policy checks, credential issuance, and merchant verification behind a single call — your agent gets a clean approve or deny, plus a receipt either way.
const result = await embassy.purchase({ merchant: "Amazon", amount: 2499, policy: "Employee-Laptop",}) ✓ Approved