Endpoints DTE

Referencia completa de endpoints para generar documentos tributarios electrónicos

Factura Electrónica (01)

POST
/factura/emitir
Genera una factura electrónica (Tipo 01)
https://api.atto.sv/factura/emitir

Ejemplo de Petición

POST /factura/emitir
1{
2  "items": [
3    {
4      "cantidad": 2,
5      "descripcion": "Laptop Dell XPS 15",
6      "precioUni": 850.00,
7      "tipoItem": 1,  // 1=Bien, 2=Servicio, 3=Ambos, 4=Otros
8      "codigo": "LAPTOP-001",
9      "uniMedida": 59  // 59=Unidad, 99=Otros
10    }
11  ],
12  "pagos": [
13    {
14      "codigo": "01",  // 01=Efectivo, 02=Cheque, 03=Transferencia, etc.
15      "montoPago": 1700.00,
16      "referencia": "Pago completo"
17    }
18  ],
19  "receptor": {
20    "tipoDocumento": "36",  // 36=NIT, 13=DUI, etc.
21    "numDocumento": "0614-010190-103-1",
22    "nombre": "Empresa Cliente S.A. de C.V.",
23    "correo": "[email protected]",
24    "telefono": "2222-2222",
25    "direccion": {
26      "departamento": "06",  // 06=San Salvador
27      "municipio": "14",     // 14=San Salvador
28      "complemento": "Col. Escalón, Calle Principal #123"
29    }
30  }
31}

Respuesta Exitosa

Respuesta 200 OK
1{
2  "estado": "PROCESADO",
3  "tipoDte": "Factura Electrónica",
4  "selloRecibido": "MINISTERIO DE HACIENDA - SELLO DIGITAL",
5  "numeroControl": "DTE-01-0001-00000001",
6  "codigoGeneracion": "A1B2C3D4-E5F6-7890-ABCD-EF1234567890",
7  "fecEmi": "2025-01-16",
8  "horEmi": "10:30:00",
9  "fhProcesamiento": "2025-01-16T10:30:05.000Z",
10  "clasificaMsg": null,
11  "codigoMsg": "001",
12  "descripcionMsg": "Procesado correctamente",
13  "observaciones": [],
14  "dteJson": {
15    "identificacion": { ... },
16    "emisor": { ... },
17    "receptor": { ... },
18    "cuerpoDocumento": [ ... ],
19    "resumen": { ... }
20  },
21  "dteFirmado": "eyJhbGciOiJSUzUxMiJ9..."
22}
ℹ️

Campos auto-generados: No necesitas enviar folio, tipoMoneda, ambiente, ni emisor. Estos se generan automáticamente según tu API key.

Crédito Fiscal (03)

POST
/credito-fiscal/emitir
Genera un crédito fiscal (Tipo 03)
https://api.atto.sv/credito-fiscal/emitir

Ejemplo de Petición

POST /credito-fiscal/emitir
1{
2  "items": [
3    {
4      "cantidad": 10,
5      "descripcion": "Servicio de consultoría empresarial",
6      "precioUni": 200.00,
7      "tipoItem": 2,  // 2=Servicio
8      "codigo": "CONS-001",
9      "uniMedida": 99,  // 99=Otros
10      "ivaItem": 260.00  // IVA 13%
11    }
12  ],
13  "pagos": [
14    {
15      "codigo": "03",  // 03=Transferencia bancaria
16      "montoPago": 2260.00,
17      "referencia": "Transferencia #12345",
18      "plazo": "01",  // 01=Al contado
19      "periodo": null
20    }
21  ],
22  "receptor": {
23    "tipoDocumento": "36",
24    "numDocumento": "0614-020394-103-5",
25    "nrc": "2468-1",
26    "nombre": "EMPRESA PRUEBA S.A. DE C.V.",
27    "codActividad": "62010",
28    "correo": "[email protected]",
29    "telefono": "2555-5555",
30    "direccion": {
31      "departamento": "06",
32      "municipio": "14",
33      "complemento": "Centro Comercial, Local 45"
34    }
35  }
36}

Respuesta Exitosa

Respuesta 200 OK
1{
2  "estado": "PROCESADO",
3  "tipoDte": "Crédito Fiscal",
4  "selloRecibido": "MINISTERIO DE HACIENDA - SELLO DIGITAL",
5  "numeroControl": "DTE-03-0001-00000001",
6  "codigoGeneracion": "B2C3D4E5-F6G7-8901-BCDE-FG1234567890",
7  "fecEmi": "2025-01-16",
8  "horEmi": "11:00:00",
9  "fhProcesamiento": "2025-01-16T11:00:05.000Z",
10  "clasificaMsg": null,
11  "codigoMsg": "001",
12  "descripcionMsg": "Procesado correctamente",
13  "observaciones": [],
14  "dteJson": { ... },
15  "dteFirmado": "eyJhbGciOiJSUzUxMiJ9..."
16}
⚠️

Requisito: Para Crédito Fiscal, el receptor debe tener nrc (Número de Registro de Contribuyente) obligatorio.

Nota de Remisión (04)

POST
/nota-remision/emitir
Genera una nota de remisión (Tipo 04)
https://api.atto.sv/nota-remision/emitir

Ejemplo de Petición

POST /nota-remision/emitir
1{
2  "items": [
3    {
4      "cantidad": 50,
5      "descripcion": "Cajas de producto para traslado",
6      "precioUni": 15.00,
7      "tipoItem": 1,  // 1=Bien
8      "codigo": "CAJA-001",
9      "uniMedida": 59
10    }
11  ],
12  "receptor": {
13    "tipoDocumento": "36",
14    "numDocumento": "0614-030495-103-2",
15    "nombre": "ALMACÉN DESTINO S.A. DE C.V.",
16    "correo": "[email protected]",
17    "telefono": "2666-6666",
18    "direccion": {
19      "departamento": "08",  // 08=La Libertad
20      "municipio": "02",     // 02=Antiguo Cuscatlán
21      "complemento": "Bodega Industrial #5, Zona Franca"
22    }
23  },
24  "apendice": [
25    {
26      "campo": "Conductor",
27      "etiqueta": "Nombre del conductor",
28      "valor": "Juan Carlos Pérez"
29    },
30    {
31      "campo": "Placa",
32      "etiqueta": "Placa del vehículo",
33      "valor": "P123456"
34    },
35    {
36      "campo": "Origen",
37      "etiqueta": "Punto de partida",
38      "valor": "Bodega Central, San Salvador"
39    }
40  ]
41}

Respuesta Exitosa

Respuesta 200 OK
1{
2  "estado": "PROCESADO",
3  "tipoDte": "Nota de Remisión",
4  "selloRecibido": "MINISTERIO DE HACIENDA - SELLO DIGITAL",
5  "numeroControl": "DTE-04-0001-00000001",
6  "codigoGeneracion": "C3D4E5F6-G7H8-9012-CDEF-GH1234567890",
7  "fecEmi": "2025-01-16",
8  "horEmi": "12:00:00",
9  "fhProcesamiento": "2025-01-16T12:00:05.000Z",
10  "clasificaMsg": null,
11  "codigoMsg": "001",
12  "descripcionMsg": "Procesado correctamente",
13  "observaciones": [],
14  "dteJson": { ... },
15  "dteFirmado": "eyJhbGciOiJSUzUxMiJ9..."
16}

Apéndice: Puedes incluir datos adicionales como conductor, placa del vehículo, y origen/destino en el campo apendice.

Otros Endpoints Disponibles

POST
/consulta/dte
Consulta el estado de un DTE en el Ministerio de Hacienda
https://api.atto.sv/consulta/dte
POST /consulta/dte
{
  "tdte": "01",  // Tipo de DTE
  "codigoGeneracion": "A1B2C3D4-E5F6-7890-ABCD-EF1234567890"
}
POST
/invalidar
Invalida (anula) un DTE previamente emitido
https://api.atto.sv/invalidar
POST /invalidar
1{
2  "documento": {
3    "tipoDte": "01",
4    "codigoGeneracion": "A1B2C3D4-E5F6-7890-ABCD-EF1234567890",
5    "fecEmi": "2025-01-16"
6  },
7  "motivo": {
8    "tipoAnulacion": 2,  // 1=Sustitución, 2=Error en papel, 3=Otro
9    "motivoAnulacion": "Error en datos del cliente"  // Requerido si tipoAnulacion=3
10  }
11}
GET
/stats
Obtiene estadísticas de uso y cuotas disponibles
https://api.atto.sv/stats

Campos Comunes

Tipos de Documento del Receptor

36NIT (Número de Identificación Tributaria)
13DUI (Documento Único de Identidad)
02Carnet de Residente
37Otro

Métodos de Pago

01Efectivo
02Cheque
03Transferencia Bancaria
04Tarjeta de Crédito
05Tarjeta de Débito

Tipos de Item

1Bien (gravado con IVA 13%)
2Servicio (gravado con IVA 13%)
3Exento (sin IVA)
4No gravado (sin IVA)