Datos de facturación

Guardar, listar, editar y borrar los datos con los que el cliente quiere recibir su comprobante.

3 min de lecturaActualizado el 30 de setiembre de 2026

Antes de empezar

  • Son los datos para el comprobante: razón social, DNI o RUC y dirección fiscal.
  • Solo puede haber un registro por defecto. Al marcar uno, los demás dejan de serlo.
  • La ubicación se indica con los códigos de ubigeo de departamento (2 cifras), provincia (4) y distrito (6), y tienen que encajar entre sí: la provincia empieza por el código del departamento y el distrito por el de la provincia. Por ejemplo: 15, 1501, 150101.
  • Envía los códigos como texto. Como número, pierden los ceros iniciales (01 pasa a 1) y la validación los rechaza.

Listar datos de facturación

GET /api/v1/ecommerce/billings

Respuesta

{
  "success": true,
  "message": "Listado de Facturación mostrados de forma correcta.",
  "data": [
    {
      "id": 3,
      "business_name": "Comercial Andina S.A.C.",
      "tax_identifier": "20123456789",
      "fiscal_address": "Jr. Junín 450, Cercado",
      "department": { "id": "15", "description": "LIMA" },
      "province": { "id": "1501", "description": "LIMA" },
      "district": { "id": "150101", "description": "LIMA" },
      "default": 1
    }
  ]
}
Campo Tipo Qué es
business_name texto Nombre o razón social
tax_identifier texto DNI o RUC
fiscal_address texto Dirección fiscal
department, province, district objeto Código y nombre de cada nivel
default 0 o 1 Si es el registro por defecto. Al listar llega como entero, 0 o 1. Al guardar o editar llega tal como lo enviaste (true, 1 o "1"), porque la respuesta no se vuelve a leer de la base. Trátalo como verdadero o falso en vez de compararlo con 1

Guardar datos de facturación

POST /api/v1/ecommerce/billings/register

Cuerpo

Campo Tipo Obligatorio Reglas
business_name texto Sí Máximo 200 caracteres
tax_identifier texto Sí DNI de 8 cifras o RUC de 11
fiscal_address texto Sí Máximo 200 caracteres
department_id texto Sí 2 cifras y debe existir
province_id texto Sí 4 cifras, debe existir y empezar por department_id
district_id texto Sí 6 cifras, debe existir y empezar por province_id
default booleano Sí true para que sea el registro por defecto
{
  "business_name": "Comercial Andina S.A.C.",
  "tax_identifier": "20123456789",
  "fiscal_address": "Jr. Junín 450, Cercado",
  "department_id": "15",
  "province_id": "1501",
  "district_id": "150101",
  "default": true
}

Respuesta

Devuelve el registro guardado, con los mismos campos que el listado.

Si algo sale mal

HTTP code Cuándo Qué hacer
422 VALIDATION_ERROR Documento que no es DNI ni RUC, ubigeo inexistente o que no encaja Corrige el campo que indica errors. Por ejemplo: «La provincia no pertenece a ese departamento.»

Editar datos de facturación

PUT /api/v1/ecommerce/billings/update/{billingId}

  • billingId: identificador del registro.
  • El cuerpo es el mismo que al guardarlo, con todos los campos.

Si algo sale mal

HTTP code Cuándo Qué hacer
422 VALIDATION_ERROR Algún dato no cumple las reglas Corrige el campo que indica errors
404 BILLING_NOT_FOUND El registro no existe o no es del cliente Vuelve a listar los registros

Borrar datos de facturación

DELETE /api/v1/ecommerce/billings/delete/{billingId}

{ "success": true, "message": "Datos de facturación eliminados de forma correcta.", "data": null }

Si se borra el registro por defecto, no se elige otro automáticamente.

Si algo sale mal

HTTP code Cuándo
404 BILLING_NOT_FOUND El registro no existe o no es del cliente