Facturas de compra

Registra una factura de compra

post/purchases/invoices

Request

  • Base URL: https://api.datil.com (the document declares no server; this is the origin it was published from)
  • URL: https://api.datil.com/purchases/invoices
  • Auth: none declared

Request body

issue_datestring required

Fecha de emisión en formato Epoch o ISO 8601.

due_datestring

Fecha máxima de pago. Debe ser igual o mayor al parámetro issue_date

seriesstring required

Serie del documento.

sequencestring required

Secuencia numérica del documento.

currencystring required

Código ISO 4217 de la moneda.

operation_typestring

Tipo de operación SUNAT.

vendor_legal_namestring required

Nombre del proveedor.

vendor_commercial_namestring

Nombre comercial del proveedor.

vendor_tax_idstring required

Identificación tributaria del proveedor.

vendor_tax_id_typestring required

Tipo de identificación tributaria del proveedor.

vendor_emailstring

Email del proveedor al cual Dátil envía notificaciones sobre la factura. Si no lo envías, Dátil no enviará ninguna notificación.

vendor_telephonestring

Teléfono del proveedor.

vendor_codestring

Código de proveedor.

waybill_numberstring

Número de guía de remisión.

waybill_codestring

Código de guía de remisión.

sales_order_numberstring

Número de orden de venta.

purchase_order_numberstring

Número de orden de compra.

subtotalstring required

Subtotal de la factura, sin incluir impuestos.

taxstring required

Total de impuestos de la factura.

totalstring required

Total incluido impuestos y descuentos.

notestring

Nota con información adicional para la factura.

auto_advanceboolean

Indica si el documento debe avanzar automáticamente en el flujo de autorización. Por defecto es true.

Example request

{
  "issue_date": "1791394186",
  "due_date": "1791394186",
  "series": "F001",
  "sequence": "1",
  "currency": "PEN",
  "operation_type": "01",
  "vendor_legal_name": "Jose Mario",
  "vendor_commercial_name": "Jose Mario",
  "vendor_tax_id": "20601595665",
  "vendor_tax_id_type": "pe-ruc",
  "vendor_email": "prueba@prueba.com",
  "vendor_address": {
    "line_1": "Calle A",
    "locality": "Lima",
    "administrative_district_level_1": "Miraflores",
    "administrative_district_level_2": "Lima",
    "city": "Lima",
    "province": "Lima",
    "tax_code": "0000",
    "country": "PE"
  },
  "vendor_telephone": "1234567890",
  "vendor_code": "1234",
  "waybill_number": "1234",
  "waybill_code": "1234",
  "sales_order_number": "1234",
  "purchase_order_number": "1234",
  "line_items": [
    {
      "sku": "A001",
      "item_classification_code": "1234",
      "tariff_heading": "1234",
      "description": "Servicio ABC",
      "price_type_code": "01",
      "unit_of_measurement": "KG",
      "unit_code": "1",
      "tax_included_unit_price": "118.00",
      "unit_price": "100.00",
      "quantity": "1",
      "discount": "0.00",
      "subtotal_without_discount": "100.00",
      "subtotal": "100.00",
      "tax": "18.00",
      "total": "118.00",
      "tax_lines": [
        {
          "tax_rate": "pe-igv",
          "amount": "18.00",
          "taxable_amount": "100.00",
          "exemption_reason_code": "10"
        }
      ],
      "custom_fields": [
        {
          "name": "Cedula del Pasajero",
          "value": "1234556",
          "code": "3001"
        }
      ]
    }
  ],
  "tax_lines": [
    {
      "tax_rate": "pe-igv",
      "amount": "18.00",
      "taxable_amount": "100.00",
      "exemption_reason_code": "10"
    }
  ],
  "subtotal": "100.00",
  "tax": "18.00",
  "total": "118.00",
  "note": "Gracias por tu compra.",
  "payment_terms": [
    {
      "code": "Contado",
      "currency": "PEN",
      "amount": "100.00",
      "due_date": "2021-08-01",
      "description": "Pago a 90 días."
    }
  ],
  "detraction": {
    "bank_account": "123",
    "code": "001",
    "rate": "9.00",
    "amount": "1000.00"
  },
  "export": {
    "incoterm": "EXW",
    "freight_charge": "100.00",
    "insurance_charge": "100.00",
    "other_charges": "100.00",
    "shipping_method": "Marítimo",
    "port_of_loading": "Callao - Perú",
    "port_of_destination": "Barranquilla - Colombia",
    "country_of_origin": "Perú",
    "gross_weight": "0.0",
    "net_weight": "0.0",
    "gross_weight_unit": "Kg",
    "total_discount": "100.00"
  },
  "custom_fields": [
    {
      "name": "Cedula del Pasajero",
      "value": "1234556",
      "code": "3001"
    }
  ],
  "tax_clearance": {
    "void_requests": [
      {
        "id": "81wxc0qk5cgz4a7z3550a3art3",
        "type": "pe/void-request",
        "series": "RA-20210315",
        "sequence": 1,
        "number": "RA-20210315-3",
        "tax_clearance": {
          "status": "cleared",
          "status_description": "ACEPTADO",
          "status_code": "0",
          "ticket": "1234567890",
          "date": "1791394186",
          "message": "El documento ha sido aceptado.",
          "ack_xml": "<xml></xml>",
          "qr_data": "20602224886|6|F002|F002-29|1800.00|11800.00|02/10/2020|6|20877294591|",
          "xml": "https://api.datil.com/documents/1234/xml",
          "pdf": "https://api.datil.com/p/1234",
          "warnings": [
            {
              "status_code": "0000",
              "message": "Documento de pruebas"
            }
          ]
        }
      }
    ],
    "status": "cleared",
    "status_description": "ACEPTADO",
    "status_code": "0",
    "ticket": "1234567890",
    "date": "1791394186",
    "message": "El documento ha sido aceptado.",
    "ack_xml": "<xml></xml>",
    "qr_data": "20602224886|6|F002|F002-29|1800.00|11800.00|02/10/2020|6|20877294591|",
    "xml": "https://api.datil.com/documents/1234/xml",
    "pdf": "https://api.datil.com/p/1234",
    "warnings": [
      {
        "status_code": "0000",
        "message": "Documento de pruebas"
      }
    ]
  },
  "notes": [
    {
      "text": "Documento tributario",
      "code": "2008"
    }
  ],
  "auto_advance": true
}

Response

OK

idstring required

Identificador único del documento, generado por Dátil. Te sugerimos guardarlo en tu base de datos para que luego puedas consultar su estado.

issue_datestring date-time required

Fecha de emisión del documento, en formato RFC3339.

numberstring required

Número de documento, generado en el siguiente formato: series-sequence

environment'live' | 'test' required

Tipo de ambiente del documento.

live: Ambiente de producción. test: Ambiente de pruebas.

status'draft' | 'active' | 'void' required

Estatus del documento

draft: Borrador active: Activo void: Anulado.

typestring required

Tipo de documento.

operation_typestring

Tipo de operación SUNAT.

due_datestring date-time

Fecha máxima de pago. Debe ser igual o mayor al parámetro issue_date

seriesstring required

Serie del documento

sequencenumber double required

Secuencia numérica del documento.

customer_legal_namestring required

Nombre del cliente.

customer_commercial_namestring

Nombre comercial del cliente.

customer_tax_idstring required

Identificación tributaria del cliente.

customer_emailstring

Email del cliente al cual Dátil envía notificaciones sobre la factura. Si no lo envías, Dátil no enviará ninguna notificación.

customer_telephonestring

Teléfono del cliente.

customer_codestring

Código de cliente.

waybill_numberstring

Número de guía de remisión.

waybill_codestring

Código de guía de remisión.

sales_order_numberstring

Número de orden de venta.

purchase_order_numberstring

Número de orden de compra.

vendor_legal_namestring required

Nombre legal del vendedor.

vendor_commercial_namestring required

Nombre comercial del vendedor.

vendor_tax_idstring required

Identificación tributaria del vendedor.

amount_duenumber double

Monto pendiente de pago de la factura.

subtotalnumber double required

Subtotal de la factura, sin incluir impuestos.

taxnumber double required

Total de impuestos de la factura.

totalnumber double required

Total incluido impuestos y descuentos.

total_in_wordsstring required

Total incluido impuestos y descuentos, en palabras.

notestring

Nota con información adicional para la factura.

Example response

{
  "id": "81wxc0qk5cgz4a7z3550a3art3",
  "issue_date": "2026-10-07T17:29:46Z",
  "number": "F001-1",
  "currency": {
    "code": "PEN",
    "name": "Soles Peruanos",
    "symbol": "S/."
  },
  "country": {
    "code": "PE",
    "name": "Perú"
  },
  "type": "pe/sales-invoice",
  "operation_type": "01",
  "tax_clearance": {
    "void_requests": [
      {
        "id": "81wxc0qk5cgz4a7z3550a3art3",
        "type": "pe/void-request",
        "series": "RA-20210315",
        "sequence": 1,
        "number": "RA-20210315-3",
        "tax_clearance": {
          "status": "cleared",
          "status_description": "ACEPTADO",
          "status_code": "0",
          "ticket": "1234567890",
          "date": "1791394186",
          "message": "El documento ha sido aceptado.",
          "ack_xml": "<xml></xml>",
          "qr_data": "20602224886|6|F002|F002-29|1800.00|11800.00|02/10/2020|6|20877294591|",
          "xml": "https://api.datil.com/documents/1234/xml",
          "pdf": "https://api.datil.com/p/1234",
          "warnings": [
            {
              "status_code": "0000",
              "message": "Documento de pruebas"
            }
          ]
        }
      }
    ],
    "status": "cleared",
    "status_description": "ACEPTADO",
    "status_code": "0",
    "ticket": "1234567890",
    "date": "1791394186",
    "message": "El documento ha sido aceptado.",
    "ack_xml": "<xml></xml>",
    "qr_data": "20602224886|6|F002|F002-29|1800.00|11800.00|02/10/2020|6|20877294591|",
    "xml": "https://api.datil.com/documents/1234/xml",
    "pdf": "https://api.datil.com/p/1234",
    "warnings": [
      {
        "status_code": "0000",
        "message": "Documento de pruebas"
      }
    ]
  },
  "due_date": "2026-10-07T17:29:46Z",
  "series": "F001",
  "sequence": 1,
  "customer_legal_name": "Jose Mario",
  "customer_commercial_name": "Jose Mario",
  "customer_tax_id": "20601595665",
  "customer_tax_id_type": {
    "type": "pe-ruc",
    "code": "6",
    "name": "RUC"
  },
  "customer_email": "prueba@prueba.com",
  "customer_telephone": "1234567890",
  "customer_address": {
    "line_1": "Calle A",
    "locality": "Lima",
    "administrative_district_level_1": "Miraflores",
    "administrative_district_level_2": "Lima",
    "city": "Lima",
    "province": "Lima",
    "tax_code": "0000",
    "country": {
      "code": "PE",
      "name": "Perú"
    }
  },
  "customer_code": "1234",
  "waybill_number": "1234",
  "waybill_code": "1234",
  "sales_order_number": "1234",
  "purchase_order_number": "1234",
  "vendor_legal_name": "Jose Mario",
  "vendor_commercial_name": "Jose Mario",
  "vendor_tax_id": "20601595665",
  "vendor_tax_id_type": {
    "type": "pe-ruc",
    "code": "6",
    "name": "RUC"
  },
  "vendor_address": {
    "line_1": "Calle A",
    "locality": "Lima",
    "administrative_district_level_1": "Miraflores",
    "administrative_district_level_2": "Lima",
    "city": "Lima",
    "province": "Lima",
    "tax_code": "0000",
    "country": {
      "code": "PE",
      "name": "Perú"
    }
  },
  "line_items": [
    {
      "tax": 18,
      "tax_included_unit_price": 118,
      "unit_price": 100,
      "quantity": 1,
      "subtotal": 100,
      "subtotal_without_discount": 100,
      "tax_lines": [
        {
          "exemption_reason_code": "10",
          "taxable_amount": 18,
          "amount": 18,
          "tax_rate": {
            "type": "pe-igv",
            "name": "IGV",
            "category-code": "VAT",
            "code": "1000",
            "percentage": 18
          }
        }
      ],
      "sku": "A001",
      "item_classification_code": "1234",
      "tariff_heading": "1234",
      "description": "Servicio ABC",
      "price_type_code": "01",
      "unit_of_measurement": "KG",
      "unit_code": "1",
      "custom_fields": [
        {
          "name": "Cedula del Pasajero",
          "value": "1234556",
          "code": "3001"
        }
      ]
    }
  ],
  "tax_lines": [
    {
      "exemption_reason_code": "10",
      "taxable_amount": 18,
      "amount": 18,
      "tax_rate": {
        "type": "pe-igv",
        "name": "IGV",
        "category-code": "VAT",
        "code": "1000",
        "percentage": 18
      }
    }
  ],
  "subtotal": 100,
  "tax": 18,
  "total": 118,
  "total_in_words": "Ciento dieciocho soles.",
  "note": "Gracias por tu compra.",
  "payment_terms": [
    {
      "code": "Contado",
      "currency": {
        "code": "PEN",
        "name": "Soles Peruanos",
        "symbol": "S/."
      },
      "amount": 100,
      "due_date": "1791394186",
      "description": "Pago a 90 días."
    }
  ],
  "credit_notes": [
    {
      "total": 10,
      "id": "123456",
      "number": "NC001-1",
      "issue_date": "1791394186",
      "tax_clearance_status": "cleared"
    }
  ],
  "void_requests": [
    {
      "id": "81wxc0qk5cgz4a7z3550a3art3",
      "issue_date": "2022-01-01T00:00:00Z",
      "series": "F001",
      "number": "F001-1",
      "currency": {
        "code": "PEN",
        "name": "Soles Peruanos",
        "symbol": "S/."
      },
      "country": {
        "code": "PE",
        "name": "Perú"
      },
      "type": "pe/sales-invoice",
      "recipient_legal_name": "Jose Mario",
      "recipient_tax_id": "20601595665",
      "recipient_tax_id_type": {
        "type": "pe-ruc",
        "code": "6",
        "name": "RUC"
      },
      "recipient_email": "prueba@prueba.com",
      "recipient_address": {
        "line_1": "Calle A",
        "locality": "Lima",
        "administrative_district_level_1": "Miraflores",
        "administrative_district_level_2": "Lima",
        "city": "Lima",
        "province": "Lima",
        "tax_code": "0000",
        "country": {
          "code": "PE",
          "name": "Perú"
        }
      },
      "vendor_legal_name": "Jose Mario",
      "vendor_commercial_name": "Jose Mario",
      "vendor_tax_id": "20601595665",
      "vendor_tax_id_type": {
        "type": "pe-ruc",
        "code": "6",
        "name": "RUC"
      },
      "vendor_address": {
        "line_1": "Calle A",
        "locality": "Lima",
        "administrative_district_level_1": "Miraflores",
        "administrative_district_level_2": "Lima",
        "city": "Lima",
        "province": "Lima",
        "tax_code": "0000",
        "country": {
          "code": "PE",
          "name": "Perú"
        }
      },
      "tax_clearance": {
        "void_requests": [
          {
            "id": "81wxc0qk5cgz4a7z3550a3art3",
            "type": "pe/void-request",
            "series": "RA-20210315",
            "sequence": 1,
            "number": "RA-20210315-3",
            "tax_clearance": {
              "status": "cleared",
              "status_description": "ACEPTADO",
              "status_code": "0",
              "ticket": "1234567890",
              "date": "1791394186",
              "message": "El documento ha sido aceptado.",
              "ack_xml": "<xml></xml>",
              "qr_data": "20602224886|6|F002|F002-29|1800.00|11800.00|02/10/2020|6|20877294591|",
              "xml": "https://api.datil.com/documents/1234/xml",
              "pdf": "https://api.datil.com/p/1234",
              "warnings": [
                {
                  "status_code": "0000",
                  "message": "Documento de pruebas"
                }
              ]
            }
          }
        ],
        "status": "cleared",
        "status_description": "ACEPTADO",
        "status_code": "0",
        "ticket": "1234567890",
        "date": "1791394186",
        "message": "El documento ha sido aceptado.",
        "ack_xml": "<xml></xml>",
        "qr_data": "20602224886|6|F002|F002-29|1800.00|11800.00|02/10/2020|6|20877294591|",
        "xml": "https://api.datil.com/documents/1234/xml",
        "pdf": "https://api.datil.com/p/1234",
        "warnings": [
          {
            "status_code": "0000",
            "message": "Documento de pruebas"
          }
        ]
      },
      "void_reason": "Error al emitir el documento."
    }
  ],
  "detraction": {
    "bank_account": "123",
    "code": "001",
    "rate": 9,
    "amount": 1000
  },
  "export": {
    "freight_charge": 100,
    "insurance_charge": 100,
    "other_charges": 100,
    "shipping_method": "Marítimo",
    "port_of_loading": "Callao - Perú",
    "port_of_destination": "Barranquilla - Colombia",
    "country_of_origin": "Perú",
    "gross_weight_unit": "Kg"
  },
  "custom_fields": [
    {
      "name": "Cedula del Pasajero",
      "value": "1234556",
      "code": "3001"
    }
  ],
  "notes": [
    {
      "text": "Documento tributario",
      "code": "2008"
    }
  ]
}

Changes

No recorded changes to this operation across all 1 revision of this API.