Saltar al contenido principal

Procesar operaciones

Al realizar una consulta de operaciones a través de la API REST, la respuesta del servidor presenta la siguiente estructura:

{
"new_clients": [...],
"orders": [...],
"orders_items": [...],
"payment_collections": [...],
"payment_collections_debts": [...],
"payment_collections_methods": [...]
}

new_clients Nuevos clientes

Cada elemento del array new_clients representa un nuevo cliente.

aviso

Se debe priorizar el procesamiento de nuevos clientes antes de pedidos o cobranzas, dado que dichas operaciones podrían corresponder a nuevos clientes aún no registrados en su sistema.

Ejemplo JSON - [Expandir]
[
{
"new_client_id": 1,
"created_by_sales_agent_id": 1,
"first_name": "PABLO",
"last_name": "ALVAREZ",
"legal_name": "PABLO ALVAREZ",

"tax_condition_code": "consumidor_final",
"is_a_legal_person": false,
"identification": "20000000",

"state_id": 1,
"state": "Santa Fe",
"locality_id": 1,
"locality": "ROSARIO",
"postal_code": "2000",
"street_address": "CORDOBA",
"street_number": "100",
"address": "CORDOBA 100",

"phone_country_code": "549",
"phone_prefix": "341",
"phone_line_number": "5555555",
"phone": "5493415555555",

"first_opening_time": "09:00:00",
"first_closing_time": "18:00:00",
"second_opening_time": null,
"second_closing_time": null,

"email": "[email protected]",
"discount": 25,

"sales_agent_id": 1,
"price_list_id": 1,
"payment_term_id": null,
"zone_id": 1,

"created_at": "2026-01-01T00:00:00.000Z",
"observations": "Nuevo cliente de ejemplo",
}
]
new_clients.forEach((new_client) => {
const {
new_client_id, // Integer
created_by_sales_agent_id, // Integer
first_name, // String
last_name, // String
legal_name, // String

tax_condition_code, // String
is_a_legal_person, // Boolean
identification, // String

state_id, // Integer
state, // String
locality_id, // Integer
locality, // String
postal_code, // String
street_address, // String
street_number, // String
address, // String

phone_country_code, // String
phone_prefix, // String
phone_line_number, // String
phone, // String

first_opening_time, // String
first_closing_time, // String
second_opening_time, // String
second_closing_time, // String

email, // String
discount, // Number

sales_agent_id, // Integer
price_list_id, // Integer
payment_term_id, // Integer (Nullable)
zone_id, // Integer (Nullable)

observations, // String
created_at, // String (ISO 8601)
} = new_client;

// Procesar nuevo cliente
// ...
});

Propiedades

PropiedadTipoDescripciónObservaciones
new_client_idIntegerID único del nuevo cliente (en nuestro sistema).
created_by_sales_agent_idIntegerID único del agente de ventas que creo el nuevo cliente
first_nameStringNombre.⚠️ Si is_a_legal_person es true, este valor será un string vacío. Usar legal_name en su lugar.
last_nameStringApellido.⚠️ Si is_a_legal_person es true, este valor será un string vacío. Usar legal_name en su lugar.
legal_nameStringRazón social.Si is_a_legal_person es false, este valor se genera a partir de first_name y last_name.
tax_condition_codeStringCódigo que representa la condición fiscal.Valores posibles: iva_responsable_inscripto, iva_responsable_monotributo, iva_sujeto_exento, consumidor_final
is_a_legal_personBooleanIndica si el cliente es una persona jurídica (true) o una persona física (false).
identificationStringIdentificación.Si es persona jurídica: CUIT (sin guion medio). Si es persona física: DNI.
state_idIntegerID único del estado/provincia en que reside.
stateStringNombre del estado/provincia en que reside.
locality_idIntegerID único de la localidad en que reside.
localityStringNombre de la localidad en que reside.
postal_codeStringCódigo postal.
street_addressStringNombre de la calle.
street_numberStringNúmero de la calle.
addressStringDirección completa, combinando street_address y street_number.
phone_country_codeStringCódigo de país del número de teléfono.
phone_prefixStringPrefijo del número de teléfono.
phone_line_numberStringNúmero de teléfono sin prefijo.
phoneStringNúmero de teléfono completo.
first_opening_timeStringPrimer horario de apertura
first_closing_timeStringPrimer horario de cierre
second_opening_timeStringSegundo horario de apertura
second_closing_timeStringSegundo horario de cierre
emailStringDirección de correo electrónico.
discountNumberPorcentaje de descuento global del cliente.
sales_agent_idIntegerID único del agente de ventas asignado.
price_list_idIntegerID único de la lista de precios asignada.
payment_term_idIntegerID único de la condición de venta.Puede ser null.
zone_idIntegerID único de la zona a la que pertenece.Puede ser null.
observationsStringObservaciones adicionales.
created_atStringFecha y hora de creación (ISO 8601).

orders Pedidos

Cada elemento del array orders representa un pedido realizado.

aviso

Si is_a_new_client es TRUE, el valor de client_id corresponde al ID de un nuevo cliente (new_client_id) y debe reemplazarse por el identificador correcto en su sistema.

Ejemplo JSON - [Expandir]
[
{
"order_id": 1,
"client_id": 1,
"is_a_new_client": false,
"sales_agent_id": 1,
"deadline": "2026-01-02T00:00:00.000Z",

"final_price_with_iva": 475.48,
"final_price_without_iva": 392.96,

"items_total_discounts_with_iva": 58.70,
"items_total_discounts_without_iva": 46.37,

"global_adjustment_type": "discount-percentage",
"global_adjustment_value": 10.00,
"global_adjustment_total_with_iva": 52.83,
"global_adjustment_total_without_iva": 43.66,

"payment_term_id": null,
"payment_term_adjustment_type": "discount-percentage",
"payment_term_adjustment_value": 0.00,
"payment_term_adjustment_total_with_iva": 0.00,
"payment_term_adjustment_total_without_iva": 0.00,

"transaction_type": null,

"observations": "Pedido de ejemplo",
"created_at": "2026-01-01T00:00:00.000Z"
}
]
orders.forEach((order) => {
const {
order_id, // Integer
client_id, // Integer
is_a_new_client, // Boolean
sales_agent_id, // Integer
deadline, // String (Nullable, ISO 8601)

final_price_with_iva, // Number
final_price_without_iva, // Number

items_total_discounts_with_iva, // Number
items_total_discounts_without_iva, // Number

global_adjustment_type, // String
global_adjustment_value, // Number
global_adjustment_total_with_iva, // Number
global_adjustment_total_without_iva, // Number

payment_term_id, // Integer (Nullable)
payment_term_adjustment_type, // String
payment_term_adjustment_value, // Number
payment_term_adjustment_total_with_iva, // Number
payment_term_adjustment_total_without_iva, // Number

transaction_type, // String (Nullable)

observations, // String
created_at, // String (ISO 8601)
} = order;

// Procesar pedido
// ...
});

Propiedades

PropiedadTipoDescripciónObservaciones
order_idIntegerID único del pedido (en nuestro sistema).
client_idIntegerID único del cliente asociado al pedido.
is_a_new_clientBooleanIndica si el pedido corresponde a un nuevo cliente.
sales_agent_idIntegerID del agente de ventas.
deadlineStringFecha de entrega (ISO 8601).Puede ser null.
final_price_with_ivaNumberTotal final (con IVA).
final_price_without_ivaNumberTotal final (sin IVA).
items_total_discounts_with_ivaNumberMonto total de descuento en ítems (con IVA).
items_total_discounts_without_ivaNumberMonto total de descuento en ítems (sin IVA).
global_adjustment_typeStringTipo de ajuste global: recargo o descuento.Valores posibles: surcharge-percentage, discount-percentage
global_adjustment_valueNumberPorcentaje de recargo o descuento global.
global_adjustment_total_with_ivaNumberTotal equivalente al recargo o descuento global aplicado al pedido.
global_adjustment_total_without_ivaNumberTotal equivalente al recargo o descuento global aplicado al pedido.
payment_term_idIntegerID de condición de venta.Puede ser null.
payment_term_adjustment_typeStringTipo de ajuste por condición de venta: recargo o descuento.Valores posibles: surcharge-percentage, discount-percentage
payment_term_adjustment_valueNumberPorcentaje de recargo o descuento por condición de venta.
payment_term_adjustment_total_with_ivaNumberTotal equivalente al recargo o descuento aplicado al pedido según la condición de venta.
payment_term_adjustment_total_without_ivaNumberTotal equivalente al recargo o descuento aplicado al pedido según la condición de venta.
transaction_typeStringTipo de transacción.Puede ser null. Valores posibles: type-A, type-B
observationsStringObservaciones del pedido.
created_atStringFecha y hora de creación (ISO 8601).

orders_items Ítems de pedidos

Cada elemento del array orders_items representa un ítem de un pedido.

Ejemplo JSON - [Expandir]
[
{
"order_item_id": 1,
"order_id": 1,
"product_id": 1,
"quantity": 1,
"discount": 10,
"price_list_id": 1,
"price_multiplier": 1,

"unit_price_with_iva": 587.01,
"unit_price_without_iva": 485.13,

"final_price_with_iva": 528.31,
"final_price_without_iva": 436.62,

"observations": "Item de ejemplo"
}
]
orders_items.forEach((order_item) => {
const {
order_item_id, // Integer
order_id, // Integer
product_id, // Integer
quantity, // Number
discount, // Number
price_list_id, // Integer
price_multiplier, // Number

unit_price_with_iva, // Number
unit_price_without_iva, // Number

final_price_with_iva, // Number
final_price_without_iva, // Number

observations, // String
} = order_item;

// Procesar ítem de pedido
// ...
});

Propiedades

PropiedadTipoDescripciónObservaciones
order_item_idIntegerID único del ítem de un pedido (en nuestro sistema).
order_idIntegerID único del pedido al que pertenece el ítem.
product_idIntegerID único del producto asociado.
quantityNumberCantidad seleccionada.
discountNumberPorcentaje de descuento.
price_list_idIntegerID único de la lista de precios aplicada.
price_multiplierNumberMultiplicador de precio.
unit_price_with_ivaNumberPrecio unitario con IVA del producto.
unit_price_without_ivaNumberPrecio unitario sin IVA del producto.
final_price_with_ivaNumberPrecio final con IVA.
final_price_without_ivaNumberPrecio final sin IVA.
observationsStringObservaciones adicionales.Este campo se encuentra desactivado por defecto en la App.

payment_collections Cobranzas

Cada elemento del array payment_collections representa una cobranza.

Ejemplo JSON - [Expandir]
[
{
"payment_collection_id": 1,
"client_id": 1,
"payment_collections_agent_id": 1,

"debts_total_amount": 1500,
"methods_total_amount": 1500,

"observations": "Cobranza de ejemplo",
"created_at": "2026-01-01T00:00:00.000Z"
}
],
payment_collections.forEach((payment_collection) => {
const {
payment_collection_id, // Integer
client_id, // Integer
payment_collections_agent_id, // Integer

debts_total_amount, // Number
methods_total_amount, // Number

observations, // String
created_at, // String (ISO 8601)
} = payment_collection;

// Procesar cobranza
// ...
});

Propiedades

PropiedadTipoDescripciónObservaciones
payment_collection_idIntegerID único de la cobranza (en nuestro sistema).
client_idIntegerID único del cliente asociado a la cobranza.
payment_collections_agent_idIntegerID único del cobrador.
debts_total_amountNumberMonto total de las deudas.
methods_total_amountNumberMonto total de los pagos.
observationsStringObservaciones adicionales.
created_atStringFecha y hora de creación (ISO 8601).

payment_collections_debts Deudas de cobranzas

Cada elemento del array payment_collections_debts representa una deuda seleccionada en una cobranza.

Ejemplo JSON - [Expandir]
[
{
"payment_collection_debt_id": 1,
"payment_collection_id": 1,
"client_debt_id": null,
"invoice_code": "COT 0001-00000001",

"paid_amount": 1500,
"unpaid_amount": 0
}
],
payment_collections_debts.forEach((debt) => {
const {
payment_collection_debt_id, // Integer
payment_collection_id, // Integer
client_debt_id, // Integer
invoice_code, // String

paid_amount, // Number
unpaid_amount, // Number
} = debt;

// Procesar deuda de cobranza
// ...
});

Propiedades

PropiedadTipoDescripciónObservaciones
payment_collection_debt_idIntegerID único de la deuda (en nuestro sistema).
payment_collection_idIntegerID único de la cobranza a la que pertenece.
client_debt_idIntegerID único de la deuda del cliente.
invoice_codeStringCódigo de factura asociado a la deuda.
paid_amountNumberMonto pagado.
unpaid_amountNumberMonto pendiente de pago.

payment_collections_methods Pagos de cobranzas

Cada elemento del array payment_collections_methods representa un pago realizado en una cobranza.

Ejemplo JSON - [Expandir]
[
{
"payment_collection_method_id": 1,
"payment_collection_id": 1,
"payment_method_code": "cash",

"bank_id": null,
"bank_account_id": null,

"check_issuance_date": null,
"check_expiration_date": null,

"identification": null,
"wire_date": null,

"description": null,
"amount": 1500,
"observations": "Pago en efectivo"
}
]
payment_collections_methods.forEach((method) => {
const {
payment_collection_method_id, // Integer
payment_collection_id, // Integer
payment_method_code, // String

bank_id, // Integer (Nullable)
bank_account_id, // Integer (Nullable)

check_issuance_date, // String (Nullable, ISO 8601)
check_expiration_date, // String (Nullable, ISO 8601)

identification, // String
wire_date, // String (Nullable, ISO 8601)

description, // String
amount, // Number

observations, // String
} = method;

// Procesar método de pago
// ...
});

Propiedades

PropiedadTipoDescripciónObservaciones
payment_collection_method_idIntegerID único del pago (en nuestro sistema).
payment_collection_idIntegerID de la cobranza a la que pertenece el pago.
payment_method_codeStringCódigo que identifica el tipo de método de pago utilizado.Valores posibles: cash, wire_transfer, securities, others
bank_idIntegerID único del banco seleccionado.Puede ser null. Aplica para: wire_transfer, securities
bank_account_idIntegerID único de la cuenta bancaria seleccionada.Puede ser null. Aplica para: wire_transfer
check_issuance_dateStringFecha de emisión de un cheque (ISO 8601).Puede ser null. Aplica para: securities
check_expiration_dateStringFecha de vencimiento de un cheque (ISO 8601).Puede ser null. Aplica para: securities
identificationStringIdentificación (ej: N° de cheque o referencia de transferencia).Aplica para: wire_transfer, securities
wire_dateStringFecha de una transferencia bancaria (ISO 8601).Puede ser null. Aplica para:
descriptionStringDescripción del pago realizado.Aplica para: others
amountNumberMonto del pago.
observationsStringObservaciones adicionales.