¿Qué campos BT admite la API de faktoora?
Resumen de los términos de negocio (campos BT) de EN 16931 que refleja la API de facturas de faktoora, con el campo de la API y su carácter obligatorio.
La API de faktoora genera facturas electrónicas (XRechnung, ZUGFeRD, Peppol) conforme a la norma europea EN 16931. Esta norma describe cada dato posible de una factura como un "término de negocio" (Business Term), abreviado BT, con un número fijo; por ejemplo, BT-1 para el número de factura. En la referencia de la API de faktoora, en la descripción de cada campo que corresponde a uno de estos términos de negocio se indica el número BT correspondiente.
Dónde se encuentran los campos BT en la API
Al crear una factura mediante POST /invoices, se envía un objeto Invoice. En él, los campos BT se reparten en varias secciones:
- Cabecera de la factura: directamente en el objeto
Invoice(número de factura, fecha, tipo de factura, moneda, referencias) seller: datos del vendedor (nombre, dirección, NIF-IVA (USt-IdNr.))buyer: datos del comprador (nombre, dirección, NIF-IVA, referencias)invoiceItems: líneas de factura, cada una con un objetoproduct(descripción, cantidad, precio unitario, tipo impositivo)
Campos BT de uso frecuente
Esta selección abarca los campos que suelen ser necesarios para una factura completa. "Obligatorio" se refiere al objeto de la API correspondiente, siempre que lo envíe; en el propio objeto Invoice, según el esquema, solo son obligatorios en principio format, issueDate, invoiceNumber, invoiceTypeCode, invoiceItems y buyer.
| Número BT | Significado | Campo de la API | Obligatorio |
|---|---|---|---|
| BT-1 | Número de factura | invoiceNumber | Sí |
| BT-2 | Fecha de factura | issueDate | Sí |
| BT-3 | Tipo de factura (p. ej., 380 = factura comercial) | invoiceTypeCode | Sí |
| BT-5 | Moneda | currency | No |
| BT-9 | Fecha de vencimiento | dueDateTime (en specifiedTradePaymentTerms) | No |
| BT-10 | Referencia del comprador / Leitweg-ID | buyerReference.buyerReferenceId | No |
| BT-13 | Referencia del pedido del comprador | buyerReference.IssuerAssignedID | No |
| BT-14 | Referencia al pedido | orderNumber | No |
| BT-27 | Nombre del vendedor | seller.name | Sí, dentro de seller |
| BT-31 | NIF-IVA del vendedor | seller.vatId | No |
| BT-35 / BT-37 / BT-38 / BT-40 | Calle, localidad, código postal y país del vendedor | seller.street / seller.city / seller.postcode / seller.country | Sí, dentro de seller |
| BT-46 | Número de cliente asignado por el vendedor | buyer.id | No |
| BT-47 | Nombre del comprador | buyer.name | Sí, dentro de buyer |
| BT-48 | NIF-IVA del comprador | buyer.vatId | No |
| BT-50 / BT-52 / BT-53 / BT-55 | Calle, localidad, código postal y país del comprador | buyer.street / buyer.city / buyer.postcode / buyer.country | Sí, dentro de buyer |
| BT-72 | Fecha de entrega | deliveryDate | No |
| BT-126 | Número de línea | invoiceItems[].id | Sí, dentro de la línea |
| BT-129 | Cantidad | invoiceItems[].product.quantity | Sí, dentro de product |
| BT-130 | Unidad de medida (p. ej., HUR, C62, KGM) | invoiceItems[].product.unitCode | Sí, dentro de product |
| BT-146 | Precio unitario | invoiceItems[].product.price | Sí, dentro de product |
| BT-153 | Descripción de la línea | invoiceItems[].product.name | Sí, dentro de product |
| BT-155 | Número de artículo (asignado por el vendedor) | invoiceItems[].product.productId | No |
Además, cada línea de factura necesita un dato fiscal (taxes) con el tipo de impuesto, la categoría fiscal (p. ej., S para el tipo general o Z para el tipo cero) y el tipo impositivo; estos tres datos son obligatorios en cada línea.
Referencia completa
La tabla anterior muestra una selección de los campos que se necesitan con más frecuencia. En total, la documentación de la API recoge bastantes más campos BT, entre otros para condiciones de pago, descuentos/recargos, direcciones de entrega, referencias de contrato y de proyecto, así como identificadores únicos globales (GLN/GTIN). Encontrará la lista completa y vinculante con todas las descripciones de campos y ejemplos en la referencia de la API de su cuenta de faktoora.
¿Le ha resultado útil?