Plataforma

Infraestructura contable

Hostra mantiene un libro contable de partida doble como fuente única de verdad del movimiento de dinero. Cada transacción es un conjunto balanceado de cargos y abonos, los asientos no cambian una vez escritos y los saldos se calculan a partir de ellos, no se guardan ni se editan.

Por qué partida doble

Un saldo en una sola columna puede estar mal sin que nadie lo note: una actualización se aplica dos veces, se registra un reembolso pero no la comisión, y el número en la base ya no se explica solo. La partida doble vuelve inválido un estado incorrecto: una transacción que no cuadra no se confirma. Además, la respuesta a «por qué este saldo es así» siempre es la lista de asientos que lo formaron.

El modelo

Cuenta
Una posición del catálogo de cuentas: saldo del comercio, compensación con el proveedor, ingreso por comisiones, costo de red.
Asiento
Un solo cargo o abono en una cuenta, con monto, moneda y precisión en unidades mínimas.
Transacción
Un conjunto de asientos cuyos cargos y abonos deben sumar cero antes de confirmarse.
Reglas de registro
Relación determinista entre un evento de liquidación y sus asientos: el mismo evento siempre se registra igual.
Saldo
Un valor calculado a partir de los asientos, no un contador editable que pueda alejarse del historial.
Registro de auditoría
Un eslabón de la cadena de hashes del cambio de estado, verificable en el endpoint de auditoría.

Propiedades

  • Balanceado: en cada transacción confirmada los cargos son iguales a los abonos.
  • Inmutable: los asientos solo se agregan, nunca se editan. Una corrección es una nueva transacción compensatoria.
  • Saldos calculados: el saldo se obtiene de los asientos, así que historial y estado nunca se contradicen.
  • Unidades mínimas: los montos se guardan como enteros en centavos para evitar errores de redondeo.
  • Determinista: el mismo evento de liquidación genera siempre los mismos asientos, por eso los reintentos son seguros.
  • Auditable: cada cambio de estado extiende una cadena de hashes que se puede verificar de forma independiente.

Relación con la liquidación

El libro contable no llama a proveedores y el motor de liquidación no inventa la contabilidad. El motor controla el ciclo de vida de una instrucción —pendiente, en curso, exitosa, fallida o revertida— y cada transición genera los asientos definidos para ella. Como el motor confirma exactamente una vez, el libro nunca recibe un asiento duplicado; y como los asientos son deterministas, repetir un evento no puede dar otro resultado contable.

Conciliación

La conciliación compara tres fuentes: lo que dice el libro contable, el estado final que registró el motor de liquidación y lo que reporta el proveedor o la red. Como los asientos son inmutables y están encadenados, cualquier diferencia apunta a una transacción concreta y no a un saldo inexplicable. Las diferencias se resuelven con una transacción compensatoria, sin tocar el historial original.

Ver también