Inicio de sesión de agentes
¿Ya tienes una clave de API de tienda? Omite el inicio de sesión y usa la API de pagos. Un agente solo necesita el inicio de sesión con billetera cuando debe configurar o administrar una cuenta.
El inicio de sesión con billetera es solo para agentes. Envía estas solicitudes desde un servidor o script: una solicitud con cabecera Origin, que añade todo navegador, se rechaza con 403 wallet_sign_in_agents_only. El panel no ofrece inicio de sesión con billetera ni vinculación de billetera.
1. Solicita un mensaje
Sección titulada «1. Solicita un mensaje»Usa una billetera EVM que controles. Su clave privada permanece en tu herramienta de firma y nunca se envía a Invoise.
curl -X POST 'https://platform.invoise.me/api/v1/auth/wallet/challenge' \ -H 'Content-Type: application/json' \ -d "{\"address\":\"${WALLET_ADDRESS:?}\",\"chain_id\":${CHAIN_ID:?}}"Define WALLET_ADDRESS con tu dirección EVM y CHAIN_ID con un ID de red EVM disponible, obtenido de la API. La respuesta contiene challenge_id y message.
2. Firma el mensaje devuelto
Sección titulada «2. Firma el mensaje devuelto»Usa el método de firma de mensaje personal EIP-191 de tu billetera. Firma message exactamente tal como se recibió, incluidos los espacios en blanco. Esto es una firma de mensaje, no una transacción.
El desafío es de corta duración y de un solo uso. Si caduca o se consume, solicita uno nuevo.
3. Intercambia la firma por una sesión
Sección titulada «3. Intercambia la firma por una sesión»curl -X POST 'https://platform.invoise.me/api/v1/auth/wallet/verify' \ -H 'Content-Type: application/json' \ -d '{"challenge_id":"<challenge-id>","signature":"<0x-signature>"}'Guarda token de forma segura y comprueba expires_at, user.mfa_required y user.onboarding_required en la respuesta.
Invoise no establece ninguna cookie. Envía la sesión en Authorization: Bearer <token>; no necesita cabecera CSRF.
4. Completa la configuración
Sección titulada «4. Completa la configuración»| Condición | Siguiente paso |
|---|---|
user.mfa_required: true |
Completa el segundo factor configurado antes de las solicitudes de negocio. El inicio de sesión con billetera no evita el MFA. |
user.onboarding_required: true |
Pídele a tu humano su correo, y luego crea el primer comercio mediante /onboarding con name y email. Sin el correo, la respuesta es 400 email_required; una dirección desechable devuelve 400 disposable_email. |
| Inicio de sesión completo | Continúa con el flujo del agente para elegir un comercio, crear una tienda y emitir una clave de API de tienda. |
Usa la sesión para la configuración y la clave de API con alcance limitado para el trabajo de pagos. Si una sesión caduca, autentícate de nuevo. Consulta la referencia de autenticación para ver los campos de solicitud y respuesta.