API:   https://api.adminfact.com/

GET

Input

curl --location --request GET 'https://api.adminfact.com/ruc/{ruc}' \
--header 'APIKey: {API SECRET}'

Output

{
    "state": "OK",
    "message": "",
    "count": 1,
    "results": [
        {
            "Ruc": "20601633907",
            "RazonSocial": "SIF SISTEMAS DE INFORMACION FINANCIERA S.A.C.",
            "EstadoContribuyente": "ACTIVO",
            "CondicionDomicilio": "HABIDO",
            "Ubigeo": "130101",
            "TipoVia": "CAL.",
            "NombreVia": "MARISCAL JOSE LUIS DE ORB",
            "CodigoZona": "----",
            "TipoZona": "TRUJILLO",
            "Numero": "140",
            "Interior": "-",
            "Lote": "-",
            "Departamento": "-",
            "Manzana": "-",
            "Kilometro": "-"
        }
    ]
}
GET

Input

curl --location --request GET 'https://api.adminfact.com/razonsocial/{razon_social_a_buscar}' \
--header 'APIKey: {API SECRET}'

Output

{
    "state": "OK",
    "message": "",
    "count": 2,
    "results": [
        {
            "Ruc": "20601633907",
            "RazonSocial": "SIF SISTEMAS DE INFORMACION FINANCIERA S.A.C.",
            "EstadoContribuyente": "ACTIVO",
            "CondicionDomicilio": "HABIDO",
            "Ubigeo": "130101",
            "TipoVia": "CAL.",
            "NombreVia": "MARISCAL JOSE LUIS DE ORB",
            "CodigoZona": "----",
            "TipoZona": "TRUJILLO",
            "Numero": "140",
            "Interior": "-",
            "Lote": "-",
            "Departamento": "-",
            "Manzana": "-",
            "Kilometro": "-"
        },
        {
            "Ruc": "20601505275",
            "RazonSocial": "SIF SOLUCIONES INFORMATICAS FUNCIONALES S.A.C.",
            "EstadoContribuyente": "BAJA DE OFICIO",
            "CondicionDomicilio": "HABIDO",
            "Ubigeo": "150136",
            "TipoVia": "CAL.",
            "NombreVia": "INDEPENDENCIA",
            "CodigoZona": "URB.",
            "TipoZona": "PABLO VI",
            "Numero": "545",
            "Interior": "-",
            "Lote": "-",
            "Departamento": "-",
            "Manzana": "-",
            "Kilometro": "-"
        }
    ]
}
POST

Boleta (TipoDocumento = 03) y Factura (TipoDocumento = 01)

Input

curl --location --request POST 'https://api.adminfact.com/cpe/invoice'
--header 'APIKey: {API SECRET}'
--header 'token_empresa: {token de autorización}'
--header 'Content-Type: application/json'
--data-raw 
{
   "IdDocumento":"B001-00000005",
   "TipoDocumento":"03",
   "Emisor":{
      "NroDocumento":"20604614216",
      "TipoDocumento":"6",
      "NombreLegal":"DISTRIBUIDORA E.I.R.L.",
      "NombreComercial":"DISTRIBUIDORA E.I.R.L.",
      "Ubigeo":"130101",
      "Direccion":"JR. FRANCISCO PIZARRO NRO. 628 OTR. CENTRO TRUJILLO ",
      "Urbanizacion":"-",
      "Departamento":"LA LIBERTAD",
      "Provincia":"TRUJILLO",
      "Distrito":"TRUJILLO"
   },
   "Receptor":{
      "NroDocumento":"46073762",
      "TipoDocumento":"1",
      "NombreLegal":"MINCHAN TUCTO EDWIN LEANDRO",
      "NombreComercial":null,
      "Ubigeo":null,
      "Direccion":null,
      "Urbanizacion":null,
      "Departamento":null,
      "Provincia":null,
      "Distrito":null
   },
   "FechaEmision":"30/09/2021",
   "HoraEmision":"16:38:48",
   "FechaVencimiento":"30/09/2021",
   "Moneda":"PEN",
   "TipoOperacion":"0101",
   "Gravadas":119.50,
   "Gratuitas":0.00,
   "Inafectas":0.00,
   "Exoneradas":0.00,
   "DescuentoGlobal":0.00,
   "TotalValorVenta":119.50,
   "TotalImpuestos":21.50,
   "CodigoLeyenda":"1000",
   "CantidadItemsDocumentoDetalle":"2",
   "Items":[
      {
         "Id":1,
         "Cantidad":1.0000,
         "UnidadMedida":"NIU",
         "CodigoItem":"1",
         "Descripcion":"AUDIFONOS",
         "Carroceria":"",
         "Marca":"",
         "Modelo":"",
         "SerieChasis":"",
         "Motor":"",
         "Color":"",
         "AnioModelo":"0",
         "PrecioUnitario":84.745763,
         "PrecioReferencial":100.000000,
         "TipoPrecio":"01",
         "TipoImpuesto":"10",
         "Impuesto":15.25,
         "ImpuestoSelectivo":0.0,
         "OtroImpuesto":0.0,
         "Descuento":0.00,
         "PorcentajeImpuesto":18.0,
         "PlacaVehiculo":null,
         "TotalVenta":84.75,
         "Suma":0.0
      },
      {
         "Id":2,
         "Cantidad":1.0000,
         "UnidadMedida":"NIU",
         "CodigoItem":"2",
         "Descripcion":"PRODUCTO 123",
         "Carroceria":"",
         "Marca":"",
         "Modelo":"",
         "SerieChasis":"",
         "Motor":"",
         "Color":"",
         "AnioModelo":"0",
         "PrecioUnitario":34.745763,
         "PrecioReferencial":41.000000,
         "TipoPrecio":"01",
         "TipoImpuesto":"10",
         "Impuesto":6.25,
         "ImpuestoSelectivo":0.0,
         "OtroImpuesto":0.0,
         "Descuento":0.00,
         "PorcentajeImpuesto":18.0,
         "PlacaVehiculo":null,
         "TotalVenta":34.75,
         "Suma":0.0
      }
   ],
   "ItemsFormaPago":[
      {
         "Id":"FormaPago",
         "Item":1,
         "FormaPago":"Contado",
         "ImporteFormaPago":141.00,
         "FechaPago":"2021-09-30"
      }
   ],
   "TotalVenta":141.00,
   "TotalIgv":21.50,
   "TotalIsc":0.0,
   "TotalOtrosTributos":0.0,
   "MontoEnLetras":"CIENTO CUARENTA Y UNO CON 00/100",
   "PlacaVehiculo":null,
   "MontoPercepcion":0.0,
   "MontoDetraccion":0.0,
   "DatoAdicionales":[
      
   ],
   "TipoDocAnticipo":"",
   "DocAnticipo":"",
   "MonedaAnticipo":"PEN",
   "MontoAnticipo":0.0,
   "DatosGuiaTransportista":null,
   "Relacionados":[
      
   ],
   "OtrosDocumentosRelacionados":[
      
   ],
   "Discrepancias":[
      
   ],
   "CalculoIgv":0.18,
   "CalculoIsc":0.10,
   "CalculoDetraccion":0.04
}

Output

{
    "state": "OK",
    "message": "Se envío correctamente",
    "tokenCPE": "e9f2db1ddab04d2c0658f4b364d2922b",
    "sunat": {
        "CodigoRespuesta": "0",
        "MensajeRespuesta": "La Boleta numero B001-00000009, ha sido aceptada",
        "TramaZipCdr": "UEsDBBQAAgAIACFqQlMAAAAAAgAAA.....G1sUEsFBgAAAAACAAIAhAAAAKQEAAAAAA==",
        "NombreArchivo": "20604614211-03-B001-00000009",
        "Exito": true,
        "MensajeError": null,
        "Pila": null
    }
}
POST

Nota de Crédito (TipoDocumento = 07)

Input

curl --location --request POST 'https://api.adminfact.com/cpe/creditnote'
--header 'APIKey: {API SECRET}'
--header 'token_empresa: {token de autorización}'
--header 'Content-Type: application/json'
--data-raw 
{
   "IdDocumento":"BNC1-7",
   "TipoDocumento":"07",
   "Receptor":{
      "NroDocumento":"00000000",
      "TipoDocumento":"1",
      "NombreLegal":"VARIOS",
      "NombreComercial":null,
      "Ubigeo":null,
      "Direccion":null,
      "Urbanizacion":null,
      "Departamento":null,
      "Provincia":null,
      "Distrito":null
   },
   "FechaEmision":"07/10/2021",
   "HoraEmision":"08:35:20",
   "FechaVencimiento":"07/10/2021",
   "Moneda":"PEN",
   "TipoOperacion":"0101",
   "Gravadas":16.95,
   "Gratuitas":0.0,
   "Inafectas":0.0,
   "Exoneradas":0.0,
   "DescuentoGlobal":0.0,
   "TotalValorVenta":16.95,
   "TotalImpuestos":3.05,
   "CodigoLeyenda":"1000",
   "CantidadItemsDocumentoDetalle":"1",
   "Items":[
      {
         "Id":1,
         "Cantidad":1.0,
         "UnidadMedida":"NIU",
         "CodigoItem":"00001",
         "Descripcion":"POLO SD ALGODÖN MODELO ",
         "Carroceria":"",
         "Marca":"",
         "Modelo":"",
         "SerieChasis":"",
         "Motor":"",
         "Color":"",
         "AnioModelo":"0",
         "PrecioUnitario":16.95,
         "PrecioReferencial":20.0,
         "TipoPrecio":"01",
         "TipoImpuesto":"10",
         "Impuesto":3.05,
         "ImpuestoSelectivo":0.0,
         "OtroImpuesto":0.0,
         "Descuento":0.0,
         "PorcentajeImpuesto":18.0,
         "PlacaVehiculo":"",
         "TotalVenta":16.95,
         "Suma":20.0
      }
   ],
   "ItemsFormaPago":null,
   "TotalVenta":20.0,
   "TotalIgv":3.05,
   "TotalIsc":0.0,
   "TotalOtrosTributos":0.0,
   "MontoEnLetras":"Veinte  con 00/100 soles",
   "PlacaVehiculo":"",
   "MontoPercepcion":0.0,
   "MontoDetraccion":0.0,
   "DatoAdicionales":[
      
   ],
   "TipoDocAnticipo":"",
   "DocAnticipo":"",
   "MonedaAnticipo":"PEN",
   "MontoAnticipo":0.0,
   "DatosGuiaTransportista":null,
   "Relacionados":[
      {
         "NroDocumento":"B005-15",
         "TipoDocumento":"03"
      }
   ],
   "OtrosDocumentosRelacionados":[
      
   ],
   "Discrepancias":[
      {
         "NroReferencia":"B005-15",
         "Tipo":"01",
         "Descripcion":"ERROR"
      }
   ],
   "CalculoIgv":0.18,
   "CalculoIsc":0.1,
   "CalculoDetraccion":0.04
}

Output

{
   "state":"OK",
   "message":"Se envío correctamente",
   "tokenCPE":"ae6c246dabee2e5c113acfc4e918e761",
   "sunat":{
      "CodigoRespuesta":"0",
      "MensajeRespuesta":"La Nota de Credito numero BNC1-7, ha sido aceptada",
      "TramaZipCdr":"UEsDBBQAAgAIALW+R1MAAAAAAgAAAA.........G1sUEsFBgAAAAACAAIAfQAAAP8EAAAAAA==",
      "NombreArchivo":"20604614211-07-BNC1-7",
      "Exito":true,
      "MensajeError":null,
      "Pila":null
   }
}
POST
  • Resumen Diario (TipoDocumento = RC)

  • Para los casos de envio de boletas anuladas, se debe primero informar las boletas creadas (1) y luego en un segundo resumen se envian las anuladas. De lo contrario se presentará el error 'El documento indicado no existe no puede ser modificado/eliminado'

  • "codigoEstadoItem" => 1:Agregar   2:Modificar   3:Eliminar

Input

curl --location --request POST 'https://api.adminfact.com/cpe/summarydocuments'
--header 'APIKey: {API SECRET}'
--header 'Content-Type: application/json'
--data-raw 
{
   "token": "{token}",
   "IdDocumento":"RC-20201211-001",
   "TipoDocumento":"RC",
   "FechaEmision":"2020-12-11",
   "FechaReferencia":"2020-12-10",
   "Resumenes":[
      {
         "Id":1,
         "TipoDocumento":"03",
         "IdDocumento":"BB14-33386",
         "NroDocumentoReceptor":"41614074",
         "TipoDocumentoReceptor":"1",
         "codigoEstadoItem":1,
         "Moneda":"PEN",
         "TotalVenta":190.9,
         "TotalIGV":29.12,
         "Gravadas":161.78
      },
      {
         "Id":2,
         "TipoDocumento":"03",
         "IdDocumento":"BB14-33387",
         "NroDocumentoReceptor":"41614074",
         "TipoDocumentoReceptor":"1",
         "codigoEstadoItem":2,
         "Moneda":"PEN",
         "TotalVenta":190.9,
         "TotalIGV":29.12,
         "Gravadas":161.78
      },
      {
         "Id":3,
         "TipoDocumento":"03",
         "IdDocumento":"BB30-33384",
         "NroDocumentoReceptor":"08506678",
         "TipoDocumentoReceptor":"1",
         "codigoEstadoItem":1,
         "Moneda":"USD",
         "TotalVenta":9580.0,
         "TotalIGV":1411.36,
         "Gravadas":8168.64
      }
   ]
}

Output

{
    "state": "OK",
    "message": "Ticket ::: 1607701992184",
    "codeSunat": "1607701992184",
    "messageSunat": "1607701992184",
    "hashCDR": "",
    "hashCPE": "",
    "tokenCPE": "db58c7aa7d15d0b484555514dbf075a9"
}
POST

En las comunicaciones de Baja ya no se colocan boletas, ya que la anulación de las mismas se realiza el resumen diario.

Input

curl --location --request POST 'https://api.adminfact.com/cpe/voideddocuments'
--header 'APIKey: {API SECRET}'
--header 'Content-Type: application/json'
--data-raw 
{
   "token": "{token}",
   "IdDocumento":"RA-20201231-001",
   "TipoDocumento":"RA",
   "FechaEmision":"2020-12-31",
   "FechaReferencia":"2020-12-30",
   "Bajas":[
      {
         "Id":1,
         "Correlativo":"33386",
         "TipoDocumento":"01",
         "Serie":"FA50",
         "MotivoBaja":"Anulación por otro tipo de documento"
      },
      {
         "Id":2,
         "Correlativo":"86486",
         "TipoDocumento":"01",
         "Serie":"FF14",
         "MotivoBaja":"Anulación por otro datos erroneos"
      }
   ]
}

Output

{
    "state": "OK",
    "message": "Ticket ::: 1609434464381",
    "codeSunat": "1609434464381",
    "messageSunat": "1609434464381",
    "hashCDR": "",
    "hashCPE": "",
    "tokenCPE": "db58c7aa7d15d0b484555514dbf075a9"
}
POST

En las comunicaciones de Baja ya no se colocan boletas, ya que la anulación de las mismas se realiza el resumen diario.

Input

curl --location --request POST 'https://api.adminfact.com/consultcdr/{tipoDocumento}/{serie}/{numero}'
--header 'APIKey: {API SECRET}'
--header 'token_empresa: {token de autorización}'
--header 'Content-Type: application/json'

Output

{
    "state": "OK",
    "message": "Ticket ::: 1609434464381",
    "codeSunat": "1609434464381",
    "messageSunat": "1609434464381",
    "hashCDR": "",
    "hashCPE": "",
    "tokenCPE": "db58c7aa7d15d0b484555514dbf075a9"
}
Formatos de impresión del CPE

Para obtener la boleta, factura o nota de crédito/débito para la impresión, se puede extraer en 2 formatos: HTML o en archivo PDF, para lo cual se debe armar la siguiente estructura:

https://api.adminfact.com/cpe/[token CPE]?format=[formato]&size=[tamaño]

Donde:

[token CPE] es el token de respuesta al enviar un comprobante a SUNAT

[formato] es la estructura en la cual se mostrará el CPE, pueden ser: html o pdf

[tamaño] es el tamaño de la impresión, solo acepta 2 valores: ticket o A4

Ejemplos:

  • https://api.adminfact.com/cpe/d266008369dfe7adc0bac24781b62619?format=html&size=ticket
  • https://api.adminfact.com/cpe/d266008369dfe7adc0bac24781b62619?format=html&size=A4
  • https://api.adminfact.com/cpe/d266008369dfe7adc0bac24781b62619?format=pdf&size=ticket
  • https://api.adminfact.com/cpe/d266008369dfe7adc0bac24781b62619?format=pdf&size=A4

Formato ticket

Formato A4