expenses
La compra v2 es la misma de v1 (mismos campos, centros de costo y tipos de documento) más moneda (currency_code, exchange_rate) y tax_ids obligatorio por línea. Sus errores llevan code; ver API v2: qué cambia.
Los campos que no se describen aquí (
observation, is_credit, credit_days, number_control, generation_code, stamp, centros de costo, etc.) son los de Registrar compra en v1. Los tipos de línea siguen siendo goods (bien) y services (servicio).Registrar compra
0.128.
netTotals + totalTax + charge_1 + charge_2 − totalRetein − totalRent: 937.50 + 97.50 + 15.63 + 7.81 − 7.50 − 10.00 = 1,040.94.
Campos nuevos o distintos de v1
totals.expenseTotalTax es la base gravada, totalTax el IVA y charge_1 / charge_2 los cargos especiales (en El Salvador, COTRANS y FOVIAL). Si la línea lleva esos impuestos fijos en tax_ids, los montos quedan registrados por impuesto. Ver totals en v1.
Retención y renta
totalRetein (IVA retenido) y totalRent (renta retenida) restan del total a pagar. Ejemplo en USD con IVA 26.00, retención 2.00 y renta 5.00 sobre 200.00: expenseTotalToPayment = 200.00 + 26.00 − 2.00 − 5.00 = 219.00.
Respuesta 200
Para una compra en moneda base:
currency_code es la moneda base, exchange_rate "1.00000000" y foreign_total null.
Errores
Se validan antes de guardar; ningún error crea la compra.Consultar compra
totals y products están en moneda base; el total en la moneda del documento está en foreign_total.
404 con { "status": false, "message": "..." }.