Descripción general

Endpoint /invoices

Según la configuración de tu empresa y la versión de la aplicación, las facturas de venta pueden estar identificadas en la aplicación web con otro nombre, por ejemplo: cuenta de cobro (Colombia), recibo de honorarios (México), recibo de arrendamiento (México), detalle de venta (Panamá), entre otros.

Las facturas en Alegra deben estar asociadas a un contacto y deben contener mínimo un producto o servicio.

Una factura de venta contiene los siguientes atributos:

Nombre

Tipo

Descripción

Ejemplo

id

Integer

Identificador único que representa una factura específica. La aplicación lo asigna automáticamente.

15

date

String. Formato yyyy-MM-dd

Fecha de la factura.

2016-02-27

dueDate

String. Formato yyyy-MM-dd

Fecha de vencimiento de la factura.

2016-03-27

datetime

String. Formato yyyy-MM-dd HH:mm:ss

Fecha de creacion de la factura en el sistema.

2019-10-16 13:46:50

observations

String

Observaciones de la factura. No visibles en el documento impreso o PDF.

Estas son las observaciones de mi factura.

anotation

String

Notas de la factura, visibles en el documento impreso o PDF.

Favor consignar a la cuenta XXXXX.

termsConditions

String

Términos y condiciones aplicables a la factura. Visibles en el documento impreso o PDF.

Limite garantía de 1 año

status

String

Estado de la factura, las opciones posibles son:

  • open : La factura no se ha pagado completamente.
  • draft : La factura se encuentra en estado borrador.
  • closed: La factura se ha pagado completamente
  • void: La factura está anulada.

Para más información en los estados de las facturas haz clic aquí.

open

client

Object

Objeto que contiene la información del cliente asociado a la factura.

{
"id": 1,
"name": "Coorporación Alegrate",                        "identification": "159.549.847",
"email": "[email protected]",                      "phonePrimary": "999-99-99",
"phoneSecondary": "",
"fax": "",
"mobile": "(333) 555-55-55",
"address" : {
   "address" : "Calle principal #45",
    "city" : "Barcelona"
  }
}

numberTemplate

Object

Objeto que contiene la información de la numeración de la factura. Contiene los siguientes atributos:

  • id : Identificador del numberTemplate.
  • prefix : Prefijo de la Factura.
  • number: Número de la factura.
  • text: Texto de la numeración. En versión Alegra Colombia este atributo equivale a la resolución de facturación de la factura de venta.
{
"id" : 1,
"prefix" : "A-",
"number" : 520,
"text" : "Resolución de la DIAN # 45112"
}

total

Double

Total de la factura. Se debe tener en cuenta que el total de la factura es calculado según la precisión decimal que tenga configurada la empresa al momento de crear la factura.

12500.45

totalPaid

Double

Total pagado a la factura.

500.00

balance

Double

Saldo pendiente por pagar a la factura.

12000.45

decimalPrecision

Integer

Precisión decimal de la factura

2

items

Array

Array de objetos Item, que contiene los productos o servicios asociados a factura.
Cada objeto contiene los siguientes atributos:

  • id: Identificador del producto o servicio vendido.
  • name: Nombre del producto o servicio.
  • description: Descripción del producto o servicio.
  • reference: Referencia del producto o servicio
  • discount: Porcentaje de descuento aplicado al producto.
  • tax: Array de objetos tax que indican los impuestos aplicados al producto o servicio al momento de la venta.
  • price: Precio de venta del producto o servicio.
  • quantity: Cantidad vendida del producto o servicio.
  • total: Total del producto (no incluye impuestos).
  • importRequest (Solo Mexico): Número de pedimento. Este debe contener 21 caracteres y debe seguir el formato: 99 99 9999 9999999. Utilizando 2 espacios para separar cada conjunto de caracteres
  • remission: En caso que el item provenga de la asociacion de una remisión con la factura se muestra el identificador de la remision a la cual pertence el item.

En la versión de Costa Rica se puede exonerar el primer impuesto para facturación electrónica, agregando un objeto 'exoneración' dentro del objeto 'tax'. Para ver información de como se forma el objeto exoneración, clic aquí.

[
{
"id": 1,
"name": "Billetera",
"description": "Billetera de cuero negro",
"reference": "REF-005",
"discount" : 10,
"tax" : [
{
"id" : 6,
"name" : "IVA",
"percentage" : 16,
"description" : "Impuesto de valor agregado",
"type": "IVA",
"status": "active"
}
],
"price" : 80,
"quantity" : 5
},
"total" : 360,
"importRequest": "12  23  2422  1122421",
"remission": 10
]

seller

Object

Objeto que indica el vendedor asociado a la factura. Éste contiene los siguientes atributos:

  • id: Identificador del vendedor.
  • name : Nombre del vendedor.
  • identification: Identificación (Nit, RFC, cédula, etc) del vendedor.
  • observations: Observaciones del vendedor.
{
"id" : "12",
"name" : "Diana Giraldo",
"identification" : "520.526.21",
"observations" : "Líder de Ventas"
}

priceList

Object

Objeto PriceList que indica la lista de precios asociada a la factura de venta. Ésta contiene los siguientes atributos:

  • id: Identificador de la lista de precios.
  • name: Nombre de la lista de precios.
{
"id" : 5,
"name" : "Distribuidor"
}

retentions

Array

Array de objetos retention que indican las retenciones aplicadas a la factura. Cada objeto contiene los siguientes atributos:

  • id: Identificador de la retención.
  • name : Nombre de la retención.
  • percentage: Porcentaje retenido.
  • amount: Valor retenido.
[
{
"id": 1,
"name" : "Compras",
"percentage" : 3,5,
"amount" : 21.315
}
]

currency

Object

Objeto que incluye la información de la moneda asociada a la factura.
Solo se incluye si la compañía tiene activo multimoneda y la factura está en una moneda diferente de la principal de la compañía.

Este objeto contiene:

  • code : Código ISO de la moneda asociada a la empresa.
  • exchangeRate: Tasa de cambio.
{
"code" : "USD",
"symbol" : "$",
"exchangeRate" : 2950
}

payments

Array

Incluye la información de pagos realizados a la factura.
Cada objeto contiene los siguientes atributos:

  • id: Identificador único del pago
  • number: Número del recibo de pago.
  • date: Fecha del pago.
  • amount: Valor pagado.
  • paymentMethod: Método de pago.
  • observations: Observaciones del pago
  • anotation: Notas del pago
  • status: Estado del pago. Las opciones posibles son "open" para un pago activo, y "void" para un pago que se encuentra anulado.
{
id: "123",
number: "5000",
date: "2016-02-27",
amount: "1000",
paymentMethod: "transfer",
observations: "",
anotation: "",
status: "open"
}

stamp (México)

Object

Solo para versión Alegra México.
Incluye la información del timbre de la factura.

Este objeto contiene:

  • uuid: Identificador entregado por el SAT de la factura.
  • satSeal: Sello del SAT.
  • stampDate: Fecha de timbre.
  • cfdSeal: Sello del CFDI.
  • satCertificateNumber: Número de certificado del SAT.
  • expeditionPlace: Lugar de expedición de la factura.
  • certificateNumber: Número serial del certificado utilizado para timbrar la factura.
  • datetime: Fecha y hora de generación de la factura.
  • paymentMethod: Método de pago de la factura
  • accountNumber: Número de cuenta.
{
"uuid":"FFBCDF3E-29AC-4AA6-A361-F6366240C86B",
"satSeal":"SNTfGm0gpPn6GLiDb",
"stampDate":"2016-02-02 08:58:36",
"cfdSeal":"2YRTP14R1xOewGNRIJu",
"satCertificateNumber":"20001000000100005761",
"expeditionPlace":"Ixmiquilpan, Hidalgo",
"certificateNumber":12221000000100005761,
"datetime":"2016-02-02 08:58:34",
"paymentMethod":"credit-card",
"accountNumber": "123456"
}

stamp (Perú)

Object

Solo para versión Alegra Perú.
Incluye la información de la emisión de la factura.

Este objeto contiene:

  • generateStamp: Indica si se desea emitir la factura.
  • legalStatus: Indica el estado legal ante la
    entidad reguladora
  • date: Fecha en la que se emitió la factura.
  • entityResponse: Respuesta de SUNAT
  • electronicInvoicingVersion: Versión de facturación electrónica con la que se emitió la factura.
  • barCodeContent: Contenido del código QR
{
"legalStatus": "Comprobante aceptado",
"date": "2019-06-13 17:10:41",
"entityResponse": "La Factura numero F025-00000048, ha sido aceptada ",         "electronicInvoicingVersion": "2.1",
"barCodeContent": ""
}

stamp (Costa Rica)

Object

Solo para versión Alegra Costa Rica.
Incluye la información de la emisión de la factura.

Este objeto contiene:

  • legalStatus: Indica el estado legal ante la
    entidad reguladora. Consulta el catálogo de parámetros correspondiente a cada país haciendo clic aquí.
  • uuid: Indica la clave del comprobante emitido.
  • date: Fecha en la que se emitió la factura.
  • entityResponse: Respuesta de Hacienda
  • electronicInvoicingVersion: Versión de facturación electrónica con la que se emitió la factura.
  • barCodeContent: Contenido del código QR
  • generateStamp: Indica si se desea emitir la factura.
{
"legalStatus":"ACCEPTED",
"uuid":"50623071900011319081300100001010000030106198617620",
"date": "2019-07-23 15:08:39",
"entityResponse": "Este comprobante fue aceptado en el ambiente de pruebas, por lo cual no tiene validez para fines tributarios\n\ncodigo, mensaje, fila, columna\n-37, \"Estimado obligado tributario los datos suministrados en provincia, cantón y distrito del 'emisor' no concuerdan con la información registrada en la Dirección General de Tributación, favor proceder actualizar sus datos.\", 0, 0\n",
"electronicInvoicingVersion": "4.3",
"barCodeContent": ""
}

stamp (Colombia)

Object

Solo para versión Alegra Colombia.

Incluye la información de la expedición de la factura.

Este objeto contiene:

  • legalStatus: Indica el estado legal ante la
    entidad reguladora. Consulta el catálogo de parámetros correspondiente a cada país haciendo clic aquí.
  • cufe: Indica el CUFE del comprobante emitido.
  • date: Indica la fecha de emisión del comprobante.
  • generateStamp: Indica si se desea expedir la factura.
{
 "legalStatus": "ACCEPTED",
 "cufe": "3cce4690bdfa5a7de0986438aa6c077793c6274d",
"date": "2019-10-15 15:46:35"
}

stamp (Argentina)

Object

Solo para versión Alegra Argentina.

Incluye la información de la emisión de la factura.

Este objeto contiene:

  • date: Indica la fecha de emisión del comprobante.
  • entityResponse: Respuesta AFIP.
  • cae: Código de autorización electrónico.
  • caeDueDate: Fecha de vencimiento del cae.
{
"date": "2019-11-17 19:43:12",
"entityResponse": "10017 - Factura individual, DocTipo: 80, DocNro 30111111118 no se encuentra registrado en los padrones de AFIP o se encuentra inactivo.",
"cae": "69466799098047",
"caeDueDate": "2019-11-27"
}

stamp (Chile)

Object

Solo para versión Alegra Chile.

Indica si se debe emitir la factura.

Este objeto contiene:

  • generateStamp: Indica si se debe emitir el documento.

{
"generateStamp": true
}

stamp (Panamá)

Object

Solo para versión Alegra Panamá.

Indica si se debe emitir la factura.

Este objeto contiene:

  • generateStamp: Indica si se debe emitir el documento.

{
"generateStamp": true
}

paymentMethod (México)

String

Solo para versión Alegra México.

Indica el método de pago de la factura. Las opciones posibles son: cash Efectivo, debit-card Tarjeta débito, credit-card Tarjeta de crédito, service-card Tarjeta de servicio, transfer Transferencia electónica, check Cheque nominativo, electronic-wallet Monedero electrónico, electronic-money Dinero electrónico, grocery-voucher Vale de despensa, other Otros

cash

paymentMethod (Costa Rica)

String

Solo para versión Alegra Costa Rica.

Indica el método de pago de la factura. Las opciones posibles son:

  • cash: Para efectivo.
  • card: Para tarjeta crédito/débito,
  • check: Para cheque.
  • transfer: Para transferencia - deposito bancario.
  • collection-by-third: Para recaudo por terceros.
  • other: Para otros medios de pago.

cash

paymentMethod (Colombia)

String

Solo para versión Alegra Colombia.
Indica el medio de pago de la factura. Consulta el catálogo de parámetros correspondiente a cada país haciendo clic aquí.

DEBIT_CARD

paymentForm (Colombia)

String

Solo para versión Alegra Colombia.
Indica la forma de pago de la factura. Las opciones posibles son:

  • CASH: Para efectivo.
  • CREDIT: Para crédito.

CASH

paymentForm (Chile)

Object

Solo para versión Alegra Chile.

Objeto que Indica la forma de pago de la factura.

Este objeto puede contener:

  • id: string que indica el id de la forma de pago.

  • value: string que indica el nombre de la forma de pago.

En caso de enviar los dos atributos se la dará prioridad al id

Consulta el listado de actividades económicas aquí.

"paymentForm": {
"id": "02",
"value": "crédito"
},

accountNumber (México)

String

Solo para versión Alegra México.
Indica el número de cuenta o tarjeta de pago. Debe tener mínimo 4 caracteres.

1234

cfdiUse (México)

String

Solo para versión Alegra México.
Indica la clave del Uso CFDI asociado a la factura.

G01

saleCondition (Costa Rica)

String

Solo para versión Alegra Costa Rica

Indica la condición de la venta.

Consulta el catálogo de parámetros correspondiente a cada país haciendo clic aquí.

CASH

saleCondition (Argentina)

String

Solo para versión Alegra Argentina.

Indica la condición de la venta, los valores posibles son:
CASH (Efectivo), DEBIT_CARD (Tarjeta Debito, CREDIT_CARD (Tarjeta Crédito),
DEPOSIT (Depósito),
TRANSFER (Transferencia)

CASH

saleCondition (Panamá)

String

Solo para versión Alegra Panamá.

Indica la forma de pago, los valores posibles son:
CREDIT(Crédito), CASH(Contado), CREDIT_CARD (Tarjeta Crédito),
DEBIT_CARD (Tarjeta Débito),
LOYALTY(Tarjeta de Fidelización),
VOUCHER(Vale),
GIFT_CARD(Tarjeta de Regalo), OTHER (Otra).

Si se envía OTHER se debe enviar adicionalmente otro parámetro llamado saleConditionDescription donde se indique la descripción de la otra forma de pago.

CASH

operationType (Perú)

String

Solo para versión Alegra Perú

Indica el tipo de operación de la venta.

Consulta el catálogo de parámetros correspondiente a cada país haciendo clic aquí.

INTERNAL_SALE

operationType (Colombia)

String

Solo para versión Alegra Colombia
Indica el tipo de operación de la factura de venta.

standard

operationType (Panamá)

String

Solo para versión Alegra Panamá
Indica el tipo de operación de la factura de venta. Los valores posibles son:

  • SALE (Venta)
  • EXPORTATION (Exportación)
  • TRANSFER (Transferencia)
  • CONSIGNMENT (Consignación)
  • REMITTANCE (Remisa)
  • FREE_DELIVERY (Entrega gratuita)

SALE

saleType (Panamá)

String

Solo para versión Alegra Panamá y si operationType es SALE
Indica el tipo de venta de la factura. Los valores posibles son:

  • ORDER (Giro del negocio)
  • FIXED_ASSET (Activo fijo)
  • REAL_ASSET (Bienes raíces)
  • SERVICE (Prestación de servicios)

ORDER

economicActivity (Costa Rica)

Integer

Solo para versión Alegra Costa Rica

Indica el código de la actividad económica asociada a la factura. Si no se envía, se asignará por defecto el código de la actividad económica de la compañía.

11218

economicActivity (Chile)

Object

Solo para versión Alegra Chile.

Objeto donde se envía la actividad económica. Si no se envía, se asignará por defecto la actividad económica principal de la compañía.

Este objeto puede contener:

  • id: string que indica el id de la forma de pago.

  • value: string que indica el nombre de la forma de pago.

En caso de enviar los dos atributos se la dará prioridad al id

Consulta el listado de actividades económicas aquí.

{
"id": "011103",
"value": "Cultivo de avena"
}

saleConcept (Argentina)

String

Solo para versión Alegra Argentina

Indica el concepto de venta asociado a la factura. Las opciones posibles son:

PRODUCTS (Productos), SERVICES (Servicios), PRODUCTS_SERVICES (Productos y Servicios). Si se desea emitir la factura, este atributo se vuelve obligatorio.

PRODUCTS

startDateService (Argentina)

Date

Solo para versión Alegra Argentina

Indica la fecha de inicio de la factura. Si se desea emitir la factura, este atributo se vuelve obligatorio.

2018-09-09

endDateService (Argentina)

Date

Solo para versión Alegra Argentina

Indica la fecha final de la factura. Si se desea emitir la factura, este atributo se vuelve obligatorio.

2018-10-09

type (Colombia, Costa Rica, Chile y Panamá )

String

Solo para versión Alegra Colombia, Alegra Costa Rica, Alegra Chile y Alegra Panamá

Indica el tipo de factura.

Consulta el catálogo de parámetros correspondiente:

Colombia, aquí.

Costa Rica, aquí.

Chile, aquí.

Panamá, aquí.

EXPORT

costCenter

Object

Objeto costCenter que indica el centro de costo asociado a la factura de venta. Éste contiene los siguientes atributos:

  • id: Identificador del centro de costo
  • code: Código del centro de costo
  • name: Nombre del centro de costo
  • description: Descripción del centro de costo
  • status: Estatus del centro de costo (activo o inactivo)

...
{
"id": "2",
"code": "CC01",
"name": "Centro de costo ventas general",
"description": "Ingresos y gastos de ventas generales",
"status": "active"
}
...

comments

Array

Arreglo comments con la información de cada uno de los comentarios de la factura de venta.

{
"id": 1,
"idCompany": "2",
"idUser": "2",
"userName": "Usuario",
"comment": "mi primer comment",
"createdAt": "02/09/2020 10:01:13",
 "updatedAt": "02/09/2020 10:01:13",
"publishedAt": "02/09/2020 10:01"
}