Skip to content

Decide whether an agent may spend — before it does. Decide si un agente puede gastar — antes de que lo haga.

The problemEl problema

Agents can spend. You still lack a control plane. Los agentes pueden gastar. Aún no tienes un plano de control.

AI SaaS teams are wiring payment tools into agents. The usual safeguard is a human approving every charge — and approving every charge by hand ends in approving everything without reading. Without a policy layer, every spend call is either a silent pass-through or a rubber stamp.Los equipos de AI SaaS están conectando herramientas de pago a agentes. La salvaguarda habitual es un humano aprobando cada cargo — y aprobar cada cargo a mano termina en aprobar todo sin leer. Sin una capa de políticas, cada gasto es un pass-through silencioso o un sello automático.

  1. 01

    Approval fatigue: one prompt per charge until nobody reads themApproval fatigue: una aprobación por cargo hasta que nadie las lee

  2. 02

    The approval screen shows amount and merchant — not why the agent chose itLa pantalla de aprobación muestra monto y comercio — no por qué el agente lo eligió

  3. 03

    Security and SRE cannot prove why a decision happenedSecurity y SRE no pueden probar por qué ocurrió una decisión

How it worksCómo funciona

Three steps to an auditable spend decisionTres pasos a una decisión de gasto auditable

  1. Step 01

    Declare policy in YAMLDeclara la política en YAML

    Spend rules as code: reviewable, diffable, owned by Security or Platform.Reglas de gasto como código: revisables, diffables, propiedad de Security o Platform.

    version: 1defaults:  mode: deny          # fail-closed  dry_run: truerules:  - id: deny-crypto    match: { merchant_in: [binance, coinbase] }    action: deny    reason_code: DENY_HIGH_RISK_MERCHANT  - id: allow-small-saas    match: { amount_lte: 25, merchant_in: [notion, openai] }    action: allow    reason_code: ALLOW_SMALL_SAAS  - id: ask-large    match: { amount_gt: 25 }    action: ask_human    reason_code: ASK_AMOUNT_OVER_THRESHOLD
  2. Step 02

    Intercept the spend toolIntercepta la herramienta de gasto

    A self-hostable policy sidecar sits in front of agent payment tools — no silent pass-through.Un policy sidecar self-hostable se coloca frente a las herramientas de pago del agente — sin pass-through silencioso.

    agent.spend()agente.cash sidecarpayment tool
  3. Step 03

    Allow, deny, or ask a human — leave the trailPermitir, denegar o pedir a un humano — dejar el rastro

    Every decision carries a reason code and an OpenTelemetry span. Optional Slack approve when humans must decide.Cada decisión lleva un reason code y un span de OpenTelemetry. Aprobación por Slack opcional cuando debe decidir un humano.

    • allowALLOW_SMALL_SAAS
    • denyDENY_HIGH_RISK_MERCHANT
    • ask_humanASK_AMOUNT_OVER_THRESHOLD
    • span: agente.decision · otel ✓

BoundariesLímites

What it is NOTQué NO es

Explicitly not: a wallet, bank, custodian, or PSP.Explícitamente no es: una wallet, banco, custodio ni PSP.

  • Wallet / bank / custodian / PSP — it never holds fundsWallet / banco / custodio / PSP — nunca custodia fondos

  • Real money rails in the MVP — dry-run + fake payment tool onlyRieles de dinero real en el MVP — solo dry-run + herramienta de pago falsa

  • Full evidence dashboard — that comes in a later phaseDashboard completo de evidencia — llega en una fase posterior

InteractiveInteractivo

Policy decision preview (dry-run)Vista previa de decisión de política (dry-run)

Enter a merchant and amount. See whether policy would allow, deny, or ask-human — with a reason code. No email required. No real money.Introduce un comercio e importe. Mira si la política haría allow, deny o ask-human — con reason code. Sin email. Sin dinero real.

Example dry-run policy — illustrative only. No real money. No custody.Política dry-run de ejemplo — solo ilustrativa. Sin dinero real. Sin custodia.

policy.decisionask_human
POST /v1/spend
{
  "merchant": "OpenAI",
  "amount": 50.00,
  "currency": "USD"
}
action
ask_human
reason_code
ASK_AMOUNT_OVER_THRESHOLD
message
Spend would pause for human approval (ask-human).El gasto se pausaría para aprobación humana (ask-human).
Want this gate in your stack? Join the waitlist →¿Quieres este gate en tu stack? Únete a la lista →

FeaturesFunciones

What you get out of the boxLo que obtienes de entrada

YAML policies. Three clear paths. Reason codes. Optional Slack approve. OTel spans. compose up in ≤10 min.Políticas YAML. Tres caminos claros. Reason codes. Aprobación Slack opcional. Spans OTel. compose up en ≤10 min.

  • 01

    YAML policiesPolíticas YAML

    Declare spend rules as code. Reviewable, diffable, ownable by Security/Platform.Declara reglas de gasto como código. Revisables, diffables, propiedad de Security/Platform.

  • 02

    allow / deny / ask-humanallow / deny / ask-human

    Every decision is one of three paths — no silent pass-through.Cada decisión es uno de tres caminos — sin pass-through silencioso.

  • 03

    Reason codes + trailReason codes + rastro

    Auditable outcomes with reason codes and OpenTelemetry spans for SRE.Resultados auditables con reason codes y spans OpenTelemetry para SRE.

  • 04

    Optional Slack approveAprobación Slack opcional

    When policy says ask-human, route the decision to Slack — without making Slack mandatory.Cuando la política dice ask-human, enruta la decisión a Slack — sin hacer Slack obligatorio.

  • 05

    OpenTelemetry spansSpans OpenTelemetry

    Decisions emit OTel spans so Platform and SRE can follow the trail in existing tooling.Las decisiones emiten spans OTel para que Platform y SRE sigan el rastro en su tooling actual.

  • 06

    ≤10 min to first decision≤10 min a la primera decisión

    Docker Compose: stand up the sidecar and hit a dry-run spend path fast.Docker Compose: levanta el sidecar y pega un dry-run de gasto rápido.

Coming soonPróximamente

Not built yet — on the wayAún no está construido — en camino

These are on the roadmap, not in the MVP. We list them so you know where it is going, not to claim they exist.Están en el roadmap, no en el MVP. Las listamos para que sepas hacia dónde va, no para decir que ya existen.

  • SoonPronto

    Drift signalSeñal de desvío

    Flag when what the agent is about to buy no longer matches what it was asked for.Avisa cuando lo que el agente va a comprar ya no coincide con lo que se le pidió.

  • SoonPronto

    Hash-chained audit logAudit log encadenado con hashes

    Each decision linked to the previous one, so the record cannot be quietly edited.Cada decisión enlazada con la anterior, para que el registro no se pueda editar en silencio.

  • SoonPronto

    Post-charge reconciliationConciliación post-cargo

    Compare what was charged against what was approved.Compara lo cobrado contra lo aprobado.

  • SoonPronto

    Revoke the agent's cardRevocar la tarjeta del agente

    If a charge does not match, cut the agent's access so it cannot spend again.Si un cargo no cuadra, le corta el acceso al agente para que no pueda volver a gastar.

Early accessEarly access

Join the waitlistÚnete a la lista

Get notified when the control plane is ready for early access. Built for Security / Platform / SRE or CTO of AI SaaS (5–50) who already have agents with payment tools and need an auditable gate before production.Te avisamos cuando el plano de control esté listo para early access. Hecho para Security / Platform / SRE o CTO de AI SaaS (5–50) que ya tienen agentes con herramientas de pago y necesitan un gate auditable antes de producción.

We store only your email, timestamp, and source. No custody. No payments.Solo guardamos tu email, timestamp y fuente. Sin custodia. Sin pagos.

MVP is dry-run only — try the policy preview.El MVP es solo dry-run — prueba la vista previa de política.

FAQFAQ

Common questionsPreguntas frecuentes

Does agente.cash hold or move money?¿agente.cash custodia o mueve dinero?

No. It is not a wallet, bank, custodian, or PSP. It is a policy control plane that decides whether an agent may spend — and leaves the trail. Funds stay with whatever payment tools you already use.No. No es wallet, banco, custodio ni PSP. Es un plano de control de políticas que decide si un agente puede gastar — y deja el rastro. Los fondos permanecen en las herramientas de pago que ya uses.

What if the agent already paid?¿Y si el agente ya pagó?

The payment rail does not allow reversing the charge, and agente.cash does not promise to. It will compare what was charged against what was approved and, if it does not match, revoke the agent's card so it cannot spend again. (Coming soon.)El rail no permite reversar el cargo, y agente.cash no promete hacerlo. Comparará lo cobrado contra lo aprobado y, si no cuadra, revocará la tarjeta del agente para que no pueda volver a gastar. (Próximamente.)

Can I use it with real money in production today?¿Puedo usarlo con dinero real en producción hoy?

Not in the MVP. The current release is dry-run plus a fake payment tool so you can evaluate policy decisions safely. Real money rails are out of scope for this phase.No en el MVP. La versión actual es dry-run más una herramienta de pago falsa para evaluar decisiones de política con seguridad. Los rieles de dinero real quedan fuera de esta fase.

Who is this for?¿Para quién es?

Security / Platform / SRE or CTO of AI SaaS companies (about 5–50 people) who already have agents with payment tools and need an auditable control plane before production.Security / Platform / SRE o CTO de empresas AI SaaS (unas 5–50 personas) que ya tienen agentes con herramientas de pago y necesitan un plano de control auditable antes de producción.

Is it self-hosted?¿Es self-hosted?

Yes. The MVP ships as a self-hostable Docker Compose sidecar. Target time to first decision: ≤10 minutes after compose up.Sí. El MVP se entrega como un sidecar Docker Compose self-hostable. Tiempo objetivo a la primera decisión: ≤10 minutos tras compose up.

Is Slack required?¿Slack es obligatorio?

No. Slack approve is optional for the ask-human path. Core decisions (allow / deny / ask-human) work without it.No. La aprobación por Slack es opcional para el camino ask-human. Las decisiones centrales (allow / deny / ask-human) funcionan sin él.

Aren't native Stripe / Ramp controls enough?¿No bastan los controles nativos de Stripe / Ramp?

If one rail’s native controls cover your whole agent stack, you may not need a sidecar. agente.cash is for teams that want shared policy-as-code and an audit trail across agent spend tools.Si los controles nativos de un solo rail cubren todo tu stack de agentes, puede que no necesites un sidecar. agente.cash es para equipos que quieren policy-as-code compartido y un rastro de auditoría entre tools de gasto de agentes.