Autenticación
Claves API de producción y de prueba, y cómo enviarlas.
Cada petición se autentica con una clave API del workspace. Envíala en uno de estos headers:
Si envías los dos, se usa X-API-Key.
Tipos de clave
La clave decide el modo, y cada RUC pertenece a un modo: una clave solo ve y usa los RUC de su modo. El mismo número de RUC puede registrarse una vez en cada modo. Ver Emisores.
| Prefijo | Ambiente | Qué puede hacer |
|---|---|---|
asu_test_ | SUNAT beta | Ver, crear y usar solo los RUC de prueba. Cada RUC de prueba necesita solo su certificado y la validación en beta. Emite pruebas sin consumir tu plan. No hace la prueba real ni habilita producción (409 TEST_MODE_ISSUER). |
asu_live_ | SUNAT real | Ver, crear y usar solo los RUC de producción. Emite comprobantes con validez tributaria cuando el RUC tiene producción habilitada; si no, responde 403 PRODUCTION_NOT_ENABLED. |
Sandbox
Con una clave asu_test_ los comprobantes van siempre a SUNAT beta, sin validez tributaria:
- Solo ves y usas tus RUC de prueba.
GET /issuerscon la clave test no lista los RUC de producción, y pedir uno de ellos responde404 ISSUER_NOT_FOUND. - Cada RUC de prueba necesita solo su certificado y la validación en beta. SUNAT beta firma con tu certificado y el usuario genérico
MODDATOS: no se piden usuario ni clave SOL. - Usan una numeración propia que empieza en
90000001(por ejemploF001-90000001): no consumen los correlativos reales de tus series ni chocan con ellos en SUNAT beta. - No descuentan operaciones de tu plan.
GET /documentscon la clave test lista solo los documentos de prueba ("test": true); con la clave live, solo los reales.- Las lecturas por id también están separadas por modo:
GET /documents/{id}y sus descargas (XML, CDR, PDF) con una clave test solo encuentran documentos de prueba, y con una clave live solo los reales. Si pides un documento del otro modo, la API responde404 NOT_FOUND, como si no existiera. - Una nota o una anulación de un documento de prueba se hace con la clave test, y la de un documento real con la clave live. Si las mezclas responde
403 TEST_KEY_IN_PRODUCTION. - SUNAT no tiene beta para guías de remisión: las guías requieren clave live y un RUC con producción habilitada.
Con una clave asu_live_ se emite siempre en SUNAT real. Solo ves y usas tus RUC de producción. Si el RUC todavía no tiene producción habilitada, la API responde 403 PRODUCTION_NOT_ENABLED: usa una clave asu_test_ con un RUC de prueba para probar o completa la prueba real y la habilitación. Las operaciones que exigen una clave de producción responden 403 LIVE_KEY_REQUIRED.
Crear, rotar y revocar claves
Las claves se administran desde el panel de apisunat.net, en tu workspace en modo API. Solo el propietario y los administradores pueden hacerlo. Al rotar una clave, la anterior deja de funcionar de inmediato.
Una clave no tiene permisos parciales: da acceso completo al workspace y a todos los RUC de su modo.
Nunca pongas una clave en el código de una app web, una app móvil o un repositorio. Si se filtra, revócala desde el panel.
Comprobar una clave
Una clave ausente o inválida responde:
Request ID
Todas las respuestas incluyen el header X-Request-Id. Si envías tu propio X-Request-Id, la API lo usa. Compártelo con soporte cuando reportes un problema.
