> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lerian.studio/llms.txt
> Use this file to discover all available pages before exploring further.

# Liquidar la deuda de comisión (API)

> Conserva la parte no pagada de una comisión diferible como deuda de comisión y liquídala con el próximo crédito o con un cobro, por la API de Midaz.

Deja pasar un pago cuando el pagador no puede pagar la comisión completa y liquida el resto de la comisión después.

## Participantes

***

* **Tu institución.** Tu sistema. Registra los pagos y los créditos, y puede cobrar la deuda de comisión.
* **Midaz.** El ledger. Abre la deuda de comisión y la liquida, de la deuda más antigua a la más reciente.

## Antes de empezar

***

* La comisión es diferible: su paquete de comisiones define `deferrable` como `true` en ella. Solo una comisión con `isDeductibleFrom` en `false` puede ser diferible.

## Diagrama

***

![Liquidar la deuda de comisión](https://mintcdn.com/lerian-49cb71fc/MbifquGny5fsdtVy/images/es/d2/id-midaz-settle-fee-debt.svg?fit=max\&auto=format\&n=MbifquGny5fsdtVy\&q=85\&s=452b11ec3bf3df5f7d53140d320f118f)

## Pasos por la API

***

| # | Origen | Destino | Mensaje | API de Lerian | Qué ocurre |
| - | - | - | - | - | - |
| 1 | Tu institución | Midaz | Llamada a la API | [`POST /v2/transactions/direct`](https://docs.lerian.studio/es/reference/products/midaz/v2/create-transaction-direct) | Registra un pago. El pagador tiene lo suficiente para el pago, pero no para la comisión completa. |
| 2 | Midaz | Midaz | Paso interno | | Midaz mueve el pago y la parte de la comisión que el pagador puede pagar. El resto de la comisión se convierte en deuda de comisión. |
| 3 | Midaz | Tu institución | Respuesta de la API | | Midaz responde `201`. El metadato `feeDebtOpenings` lista la deuda de comisión que abrió la transacción. |
| 4 | Tu institución | Midaz | Llamada a la API | [`POST /v2/transactions/direct`](https://docs.lerian.studio/es/reference/products/midaz/v2/create-transaction-direct) | Después, registra una transacción que acredita al pagador. |
| 5 | Midaz | Midaz | Paso interno | | Midaz usa el crédito para liquidar la deuda de comisión abierta de ese saldo, de la deuda más antigua a la más reciente. Paga la cuenta de comisión de cada deuda. |
| 6 | Midaz | Tu institución | Respuesta de la API | | Midaz responde `201`. El metadato `feeDebtSettlements` lista las deudas que liquidó el crédito. |
| 7 | Tu institución | Midaz | Llamada a la API | [`POST /v2/organizations/{organization_id}/ledgers/{ledger_id}/fee-debts/collect`](https://docs.lerian.studio/es/reference/products/midaz/v2/collect-a-balance-s-open-fee-debts) | O cobra la deuda de comisión abierta sin un crédito. Envía el `accountAlias` del pagador y, si quieres, un `balanceKey` y un `maxAmount`. Envía el header `X-Idempotency`. |
| 8 | Midaz | Tu institución | Respuesta de la API | | Midaz responde con el monto `collected` y el `transactionId` del cobro. |
| 9 | Tu institución | Midaz | Llamada a la API | [`GET /v2/organizations/{organization_id}/ledgers/{ledger_id}/fee-debts`](https://docs.lerian.studio/es/reference/products/midaz/v2/list-the-fee-debts-of-a-ledger-oldest-first) | Lee las deudas de comisión del pagador con `account_alias`. |
| 10 | Midaz | Tu institución | Respuesta de la API | | Midaz lista las deudas, de la más antigua a la más reciente. `openTotal` es el total que el saldo todavía debe. |

## Reglas

***

* Solo una transacción directa `/v2` abre deuda de comisión.
* Un crédito al pagador por la API `/v2` puede liquidar su deuda de comisión abierta, de la deuda más antigua a la más reciente, hasta el monto del crédito.
* Un cobro no cobra comisión, y no puedes revertirlo.

## Cómo saber que terminó

***

[Lista las deudas de comisión](https://docs.lerian.studio/es/reference/products/midaz/v2/list-the-fee-debts-of-a-ledger-oldest-first.md) del pagador con `account_alias` y `status=open`. La lista está vacía.

## Qué puede salir mal

***

| Situación | Qué ves | Qué hacer |
| - | - | - |
| El saldo del pagador ya tiene 256 deudas de comisión abiertas | `422` con `0018` | Midaz rechaza el pago completo. Cobra la deuda de comisión abierta o acredita al pagador, y registra el pago otra vez. |
| Un cobro no liquida nada | `collected` es `0`, y no hay `transactionId` | El saldo no tiene deuda abierta o no tiene monto disponible, o Midaz no puede mover el monto entre el saldo y una cuenta de comisión. Lee las deudas de comisión, como en el paso 9, y el saldo. |
| Intentas revertir un cobro | `422` con `0089` | Un cobro es definitivo. Registra una nueva transacción si debes devolver un monto. |
| La respuesta de un cobro no llega | Ninguna respuesta, o un timeout | Dentro del tiempo del header `X-TTL` (300 segundos por defecto), envía el mismo cobro con la misma clave `X-Idempotency`. Después de un `409` con `0084`, o después de ese tiempo, lee las deudas de comisión del pagador, como en el paso 9, antes de cobrar otra vez. |

## Relacionados

***

* [Cobrar una comisión en una transacción](https://docs.lerian.studio/es/diagrams/lerian-products/midaz-charge-a-fee.md)
* [Revertir una transacción](https://docs.lerian.studio/es/diagrams/lerian-products/midaz-reverse-a-transaction.md)
* [Lista de errores de Midaz](https://docs.lerian.studio/es/reference/products/midaz/error-list.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.