Referencia de la API
Esta referencia se genera del documento OpenAPI de la API (versión 0.1.0), el mismo que sirve https://api.emitay.com/openapi.json: lo que dice aquí es lo que la API valida.
Cómo se llama
Todas las rutas cuelgan de https://api.emitay.com.
- Autenticación:
Authorization: Bearer sk_test_…osk_live_…. La llave decide la empresa y el modo: una de prueba envía al ambiente beta de SUNAT; una real, a producción. - Cuerpos: JSON (
Content-Type: application/json), campos ensnake_case. Un campo que la API no conoce se rechaza con422, no se ignora. - Errores:
application/problem+json(RFC 9457) contype,title,status,detaily, cuando el problema es de campos,errors[{field, message}]. Los mensajes están en español. - Idempotencia: todo
POSTque crea un recurso aceptaIdempotency-Key; repetir la llave devuelve el recurso original con200. - SUNAT es asíncrona: un comprobante nace
pendingy su veredicto llega por webhook o consultándolo.Prefer: wait=10espera la respuesta hasta ese número de segundos.
Comprobantes
| POST | /v1/invoices | Emitir una factura |
| POST | /v1/receipts | Emitir una boleta |
| POST | /v1/credit_notes | Emitir una nota de crédito |
| POST | /v1/debit_notes | Emitir una nota de débito |
| GET | /v1/documents | Listar comprobantes, del más nuevo al más antiguo |
| GET | /v1/documents/{id} | Consultar un comprobante |
| GET | /v1/documents/{id}/xml | Descargar el XML firmado de un comprobante |
| GET | /v1/documents/{id}/cdr | Descargar el CDR de un comprobante |
| GET | /v1/documents/{id}/pdf | Descargar el PDF de un comprobante |
| POST | /v1/documents/{id}/void | Anular un comprobante |
| POST | /v1/despatch_advices | Emitir una guía de remisión |
| POST | /v1/retentions | Emitir un comprobante de retención |
| POST | /v1/perceptions | Emitir un comprobante de percepción |
Correos
| GET | /v1/documents/{id}/emails | Listar los correos de un comprobante, del más nuevo al más antiguo |
| POST | /v1/documents/{id}/emails | Enviar un comprobante por correo |
Eventos
| GET | /v1/events | Listar eventos, del más nuevo al más antiguo |
| GET | /v1/events/stream | Seguir los eventos en vivo (server-sent events) |
| GET | /v1/events/{id} | Consultar un evento |
Webhooks
| GET | /v1/webhook_endpoints | Listar endpoints de webhook, del más nuevo al más antiguo |
| POST | /v1/webhook_endpoints | Crear un endpoint de webhook |
| GET | /v1/webhook_endpoints/{id} | Consultar un endpoint de webhook |
| PATCH | /v1/webhook_endpoints/{id} | Actualizar un endpoint de webhook |
| DELETE | /v1/webhook_endpoints/{id} | Eliminar un endpoint de webhook y sus entregas |
| POST | /v1/webhook_endpoints/{id}/rotate_secret | Reemplazar el secreto de firma de un endpoint de webhook |
| GET | /v1/webhook_endpoints/{id}/deliveries | Listar las entregas de un endpoint de webhook, de la más nueva a la más antigua |
| POST | /v1/webhook_deliveries/{id}/retry | Reenviar una entrega de webhook |
Layouts
| GET | /v1/layouts | Listar layouts, del más nuevo al más antiguo |
| POST | /v1/layouts | Crear un layout |
| GET | /v1/layouts/{id} | Consultar un layout |
| PATCH | /v1/layouts/{id} | Actualizar un layout |
| DELETE | /v1/layouts/{id} | Eliminar un layout y sus versiones |
| POST | /v1/layouts/{id}/preview | Previsualizar un layout como PDF |
Empresa
| GET | /v1/company | Consultar la empresa de quien llama |
| GET | /v1/series | Listar las series de numeración usadas en este modo |
| GET | /v1/request_logs | Listar las peticiones hechas a la API, de la más nueva a la más antigua |
Recursos
Lo que devuelven las operaciones, cada recurso una sola vez:Customer, Document, Email, Event, WebhookEndpoint, WebhookEndpointWithSecret, WebhookDelivery, Layout, Company, Series, RequestLog, Problem.