Descripción general

Endpoint /payments

Los pagos pueden estar asociados a facturas de venta, facturas de compra o categorías.

Un ingreso o recibo de caja debe estar asociado a una factura de venta o a una categoría. Se identifican porque el atributo type es 'in' y representan un ingreso de dinero a la cuenta de Alegra.

Un comprobante de egreso debe estar asociado a una factura de compra o a una categoría. En este caso el atributo type es 'out' y representan una salida de dinero de la cuenta de Alegra.

Un pago representa un comprobante de egreso o un recibo de caja. Se puede identificar verificando el atributo type (in para ingresos y out para egresos) y por la asociación que tenga el pago (categories, invoices o bills), la cual indica las facturas de venta, las categorías o las facturas de compra que se pagaron con el documento. Por ejemplo un pago que sea de tipo 'in' y en sus atributos tenga invoices, representa un pago a facturas de venta. Si en cambio tiene categories, representa un ingreso asociado a una categoría.

Un pago contiene los siguientes atributos:

Nombre

Tipo

Descripción

Ejemplo

id

Integer

Identificador único que representa un pago. La aplicación lo asigna automáticamente.

12

bankAccount

Object

Objeto cuenta de banco que indica a dónde entró o de dónde salió el dinero para el pago.
Contiene los siguientes atributos:

  • id : Identificador del banco.
  • name: Nombre del banco.
  • type: Tipo de cuenta de banco, las opciones posibles son bank, cash, credit-card.
{
"id":"1",
"name": "Bancolombia",
"type":"bank"
}

number

String

Número del recibo de caja o comprobante de egreso.

5

date

String

Fecha de pago. Formato yyyy-MM-dd.

2015-12-10

paymentMethod

String

Método de pago, las opciones posibles son: transfer, cash, deposit, check, credit-card, debit-card.

transfer

observations

String

Observaciones del pago. No son visibles en el documento impreso.

Observaciones del pago

anotation

String

Notas del pago. Visibles en el documento impreso.

Notas de mi pago

type

String

Indica si el pago es de ingreso o egreso.

in

status

String

Estado del pago, las opciones posibles son:

open : Estado normal del pago
void: El pago se encuentra anulad.

open

client

Object

Indica el cliente asociado al pago.
Contiene los siguientes atirbutos:

  • id: Identificador del cliente.
  • name: Nombre del cliente.
  • phone: Teléfono del cliente.
{
"id" : "20",
"name" : "Juan Carlos",
"phone" : "310-58-58"
}

amount

Double

Valor total asociado en el pago

7500.85

bankAccountAmount

Double

Valor total que ingresó a la cuenta de banco asociada. Solo se incluye este parámetro en pagos que tengan la misma moneda principal de la compañía pero que la cuenta de banco tiene una moneda diferente. Este valor se da en la moneda configurada en la cuenta de banco.

230.6

invoices

Array

Array de objetos factura de venta que indica la(s) factura(s) de venta que se pagaron.
Todas las facturas de venta pagadas en el pago deben pertenecer al mismo cliente y deben tener la misma moneda.

Cada objeto tiene:

  • id: Identificador de la factura.
  • number: Número de la factura
  • date: Fecha de la factura
  • total: Monto total de la factura
  • amount: Valor pagado en el pago actual.
[
{
"id" : "6",
"number" : "AL-12",
"date" : "2015-12-01",
"total" : "150",
"amount" :  "100"
}
]

bills

Array

Array de objetos factura de compra que indica la(s) factura(s) de compra que se pagaron.

Todas las facturas de compra pagadas en el mismo pago deben ser del mismo cliente y deben tener la misma moneda

Cada objeto tiene:

  • id: Identificador de la factura.
  • number: Número de la factura
  • date: Fecha de la factura
  • total: Monto total de la factura
  • amount: Valor pagado en el pago actual.
[
{
"id" : "6",
"number" : "COMPRA-12",
"date" : "2016-02-01",
"total" : "9000",
 "amount" :  "8500Ç"
}
]

categories

Array

Array de objetos categoría que indica la(s) categoría(s) que se pagaron.

Cada objeto contiene los siguientes atributos:

  • id: Identificador de la categoría.
  • name: Nombre de la categoría.
  • price: Valor pagado
  • quantity: Cantidad de la categoría.
  • observations: Observaciones de la categoría.
  • tax : Array de objectos tax que contiene la información del impuesto de la categoría
  • total: Total de la categoría. (no incluye impuestos).
[
{
"id" : 6,
"name" : "Papelería",
"quantity" : 10,
"observations" : "Resma papel tamaño carta",
"price" : 15,
"tax" : [
{                                        "id" : 6,                                     "name" : "IVA",                             "percentage" : 16,                 "description" : "Impuesto de valor agregado"
}
],
"total" : 150
}
]

retentions

Array

Array de objetos retención que indica las retenciones aplicadas en el pago, este atributo se envía únicamente cuando el pago está asociado a categorías y se realizaron retenciones.

[
{
"id": 1,
"name" : "Compras",
"percentage" : 3,5,
"amount" : 21.315
}
]

currency

Object

Objeto moneda que indica la moneda del pago y la tasa de cambio.

Solo se incluye si la compañía tiene activa la funcionalidad de multimoneda y el pago está en una moneda diferente de la principal de la compañía.

Este objecto contiene:

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

appliedAdvances

Array

Arreglo con la información de los avances y anticipos aplicados a los pagos recibidos.

"appliedAdvances": [
 {
     "id": "234",
     "number": "234",
     "date": "2019-11-21",
     "dueDate": "2019-11- 
21",
     "total": 1110,
     "totalPaid": 40,
     "balance": 1070,
     "amount": 40
}
]

costCenter

Object

Objeto costCenter que indica el centro de costo asociado al pago. É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" 
}

voucherNumber (Colombia)

String

Indica el número del recibo de caja, valido solo para operaciones de tipo IN.
Solo para Colombia

"voucherNumber": "AB123456"

comments

Array

Arreglo comments con la información de cada uno de los comentarios del pago.

{
"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"
}