Calcular montos
POST /api/documents/calculate/v4
Sección titulada «POST /api/documents/calculate/v4»Este endpoint permite recibir los detalles del documento, sus otros cargos y el resumen para luego calcular de los montos correspondientes al JSON de entrada y devolver los montos y totales correspondientes, sino hay ninguna validación que anotar se devolverá un HTTP 200 OK con la siguiente respuesta de éxito:
Solamente se procesarán las validaciones de cálculos, las validaciones regulares de estructura se ignorán por cuestiones de simplicidad y rendimiento.
Aquí se especifica la clase de entrada: AmountsCalculateDocumentRequest
Aquí se especifica la clase de salida: AmountsCalculateDocumentResponse
Ejemplo de respuesta exitosa:
{ "detalleServicio": [ { "numeroLinea": 1, "cantidad": 12, "precioUnitario": 1000, "montoTotal": 12000, "descuento": [ { "porcentajeDescuento": 10, "montoDescuento": 1200.0 } ], "subTotal": 10800.0, "baseImponible": 10800.0, "impuesto": [ { "tarifa": 13, "factorCalculoIVA": -1, "datosImpuestoEspecifico": null, "monto": 1404.000, "exoneracion": null } ], "impuestoAsumidoEmisorFabrica": 0, "impuestoNeto": 1404.000, "montoTotalLinea": 12204.000 } ], "otrosCargos": null, "resumenFactura": { "codigoTipoMoneda": { "codigoMoneda": "CRC", "tipoCambio": 1 }, "totalServGravados": 0, "totalServExentos": 0, "totalServNoSujeto": 0, "totalMercanciasGravadas": 12000, "totalMercanciasExentas": 0, "totalMercExonerada": 0, "totalMercNoSujeta": 0, "totalGravado": 12000, "totalExento": 0, "totalExonerado": 0, "totalNoSujeto": 0, "totalVenta": 12000, "totalDescuentos": 1200.0, "totalVentaNeta": 10800.0, "totalDesgloseImpuesto": [ { "codigo": "01", "codigoTarifaIVA": "08", "totalMontoImpuesto": 1404.000 } ], "totalImpuesto": 1404.000, "totalImpAsumEmisorFabrica": 0, "totalIVADevuelto": 0, "totalOtrosCargos": 0, "medioPago": [ { "tipoMedioPago": "06", "medioPagoOtros": null, "totalMedioPago": 1130 } ], "totalComprobante": 12204.000 }}Si existen errores y se debe prestar atención a corregir alguna situación en el documento, el endpoint responderá con el estándar de validaciones, puede verlo aquí.