Skip to main content
WalletEn vivo

Una wallet por agente.Un mandato sobre ella.

Un agente que cobra y un agente que gasta necesitan un lugar para guardar el dinero. Cada uno tiene su propia wallet, no custodial, con un slot por riel: los dólares siguen siendo dólares y los reales siguen siendo reales, sin FX sintético en el medio.

wallet · agente: checkout-bot
slot BRL · riel PixR$4,285.10En vivo
slot USDC · Base / CDP$612.40En vivo
gate settle · /agent-ready-$0.04hace 2min
pix out · factura de proveedor-R$180.00hace 1h

no custodial · las claves nunca son nuestras
mandato cm_7f3a · tope $50/día · gobierna ambos slots · cada movimiento sellado

El problema

Una cuenta compartida no es un límite. Una sola moneda no sale gratis.

Darle dinero a un agente para trabajar suele terminar en uno de dos atajos: una cuenta compartida sin límite entre agentes, o convertir todo a través de una sola moneda y pagar spread de FX en rieles que nunca lo necesitaron.

A mano, como siempre
  • Una cuenta de tesorería compartida — cualquier agente con acceso puede gastar lo que todos los demás contaban tener
  • Cada pago convertido a través de una sola moneda, pagando spread de FX en rieles que nunca lo necesitaron
  • Los límites de gasto viven en un documento de política o un mensaje de Slack, no en algo que realmente detenga una transferencia
  • Después del hecho, una sola línea de ledger compartida — sin respuesta clara de qué agente movió qué R$ o $
Con Wallet
  • Una wallet por agente — un límite que un agente comprometido o con errores no puede sobrepasar
  • BRL sigue siendo BRL, USDC sigue siendo USDC — un slot por riel, sin FX sintético en el medio
  • Un mandato firmado limita cada movimiento, verificado antes de que la transferencia se ejecute, no después
  • Cada movimiento — entrada o salida — sella un recibo vinculado al agente y al mandato que lo autorizó
Cómo funciona

El mandato gobierna los dos slots.

Qué puede gastar el agente, y dónde, se decide antes de que el dinero se mueva, no después. El mismo mandato firmado que limita una liquidación en USDC en el gateway también limita un pago Pix — una política, los dos slots, siempre.

RecibirTransferirAgregar fondosPix outBridge

Saldos ilustrativos de un agente de sandbox, los mismos del panel de arriba. Lo que importa: la wallet pertenece al agente, el mandato te pertenece a ti, y en ningún caso somos nosotros quienes retenemos tu dinero.

En código

Dos llamadas: una wallet, luego el mandato que la gobierna.

Crear la wallet y vincular su mandato son dos llamadas, no dos sistemas. El tope se firma una sola vez, antes de ser verificado, y gobierna el slot BRL y el slot USDC de la misma manera — subir un límite en un riel nunca lo sube en el otro por añadidura.

create-agent-wallet.ts
const session = await codespar.sessions.create();

// one wallet per agent — non-custodial, a slot per rail
const wallet = await codespar.wallets.create({ agentId: "checkout-bot" });

// the cap is signed once, before any money can move on either slot
const mandate = await codespar.mandates.create({
  walletId: wallet.id,
  caps: [
    { rail: "pix", currency: "BRL", perTxCap: 18000, dailyCap: 500000 },
    { rail: "usdc-onchain", currency: "USDC", perTxCap: 5000, dailyCap: 20000 },
  ],
});

await session.execute("codespar_wallet", {
  walletId: wallet.id,
  mandateId: mandate.id,
  op: "pix_out",
  amount: 18000, // minor units — inside the BRL per-tx cap above
});
wallet_7f3a · mandato cm_7f3a sellado · pix_out liberado

El mismo mandato, aplicado

wallet · verificación del mandato
Pix out · factura de proveedorR$180,00liberado
USDC settle · llamada al gateway$0,04liberado
Pix out · pedido puntualR$620,00bloqueado · sobre el tope
Transferencia · ingeniería → wallet de opsR$0,00sin costo

Mismo agente de sandbox que el panel de arriba. La tercera línea es el punto: un pedido que supera el tope por transacción del mandato se rechaza antes de llegar al riel, no se marca después.

Arquitectura

Dos rieles en vivo hoy. Hecha para llevar más.

La wallet está dividida en slots por riel, no en un saldo único — cada riel queda en su propio slot para que nada se convierta a tus espaldas. Hoy eso es una subcuenta en BRL y un slot en USDC en Base. La arquitectura está construida para que un riel nuevo se convierta en otro slot bajo el mismo mandato, no en un caso especial parchado encima.

Rieles en vivo ahora

BRL
Riel Pix
USDC
Base · CDP
En vivo ahora
  • Subcuenta en BRL sobre el riel Pix
  • Slot en USDC en Base vía Coinbase CDP
  • Un mandato firmado limita ambos slots — sin configuración por riel
Lista para la arquitectura
  • Más slots por riel a medida que entran nuevos rieles
  • El mismo modelo de mandato se extiende a cada uno automáticamente
  • Todavía sin lista cerrada ni fecha — así es como se construye la wallet, no una promesa de lo que viene
Precio

La wallet en sí es gratis. Sacar dinero de ella no.

Crear una wallet, mantener saldo, correr tantas wallets como agentes tengas, transferencias dentro de la misma org — todo R$0, siempre. Lo único que se cobra es el dinero que sale de la wallet bajo mandato, y se cobra una vez, en la línea Pay: 10 bps, piso R$0,05, tope R$2,00 por transacción.

R$0
Crear y mantener
Wallet más saldo, siempre
R$0
Transferencias en la org
Entre tus propios agentes
10bps
Tasa de la línea Pay
Solo salida, bajo mandato
R$2.00
Tope por transacción
Piso R$0,05
Estado honesto

En vivo, en producción, no custodial.

En vivoEsto no es un preview. Las wallets son el mismo mecanismo que agentes reales usan hoy para guardar fondos entre una liquidación en Gate y un pago Pix — abre el dashboard y verás una real, no una maqueta.

Primeros pasos

Dale una wallet a tu agente

Sin configuración separada por riel: el mandato que firmas gobierna el slot en USDC y el slot en BRL de la misma manera.

  1. Crea una wallet para el agente
  2. Firma un mandato que limite lo que puede gastar
  3. Cada movimiento — entrada o salida — sella un recibo automáticamente
Dónde aparece esto

Míralo dentro de un caso de negocio real

Wallet no es un producto de demostración. Es el mandato detrás del dinero que ya se mueve en producción, como en este caso.

FAQ

Wallet, respondido

No. Las claves nunca son nuestras. La wallet pertenece a la org del agente; nosotros gobernamos el movimiento a través del mandato, no retenemos los fondos.

Sin FX sintético. Cada riel queda en su propio slot — los dólares siguen siendo dólares, los reales siguen siendo reales.

R$0 para crear, mantener o correr tantas como necesites. Solo el movimiento de salida bajo mandato se cobra, en la línea Pay.

El mandato — una autoridad firmada, con tope, revocable, verificada antes de cada movimiento, no después.

Una wallet por agente es el formato por defecto; habla con nosotros si tu configuración necesita algo distinto.

Sí — es el mismo mecanismo de wallet que agentes reales usan en producción, no un preview.

Todavía no. Dos están en vivo hoy — una subcuenta en BRL sobre Pix y un slot en USDC en Base. La arquitectura está construida para llevar más slots por riel a medida que entran nuevos rieles; todavía no nombramos ni ponemos fecha a lo que sigue.

Se rechaza antes de moverse. El tope se verifica contra el mandato en el momento en que se pide la transferencia — un intento bloqueado nunca llega al riel, así que no hay nada que revertir.

Sí — abre /dashboard/wallets en tu org y verás los slots BRL y USDC en vivo de cada agente, no una cuenta de demostración.

Dale una wallet a tu agente.

No custodial, multi-slot, un mandato sobre todo lo que puede mover.

wallet: En vivo.

Wallet — una wallet por agente, un mandato sobre ella | CodeSpar | CodeSpar