Saltar al contenido principal
Esta guía crea un plan de tarifas con una comisión de transacción y una comisión de servicio, y lo usa en una cuenta. Planes de tarifas da las reglas que siguen los pasos.

Antes de empezar


Necesitas:
  • Un ledger y una cuenta para el cliente final, aquí con el alias @customer_001.
  • Una cuenta que recibe las comisiones, aquí con el alias @fee_revenue.
  • Los permisos account-plans y fee-charges en Midaz. Consulta Permisos.
Los ejemplos usan un ledger sin validación de rutas, donde una comisión de transacción selecciona transacciones por scheme. En un ledger con validación de rutas, da también un bloque accounting a cada comisión. Consulta Rutas contables. Los ejemplos usan estas variables de shell. Cada UUID es un valor de ejemplo. Usa los valores de tu propio entorno.
1

Crea el plan de tarifas

Envía el plan a Crear un plan de tarifas. La comisión tedSent cobra 7.90 por cada TED que envía la cuenta, después de 2 TED gratuitas en el mes. La comisión paperStatement cobra 3 por cada extracto en papel, después de 1 extracto gratuito en el mes.
Midaz responde 201 con el plan y su versión 1. Completa los valores predeterminados de referenceAmount y period:
Guarda el id del plan:
2

Asigna el plan a la cuenta

Envía el plan a Asignar un plan de tarifas a una cuenta:
Midaz responde 200 con la asignación activa:
A partir de ahora, los paquetes de comisiones del ledger no cobran a @customer_001 en las transacciones /v2 que envía.
3

Envía una transacción y lee su comisión

Envía una TED desde la cuenta con Crear una transacción con el modelo directo v2. El scheme es TED, así que la comisión tedSent coincide:
La respuesta 201 tiene accountPlanFees. La primera TED del mes usa una unidad gratuita:
La tercera TED del mes supera la cuota gratuita. Su elemento tiene "outcome": "charged", "unit": 3 y "amount": "7.9". La cuenta envía 107.9: los 100 de la TED y la comisión, que va a @fee_revenue.Una transacción con otro scheme, o sin ninguno, recibe "outcome": "no_match". La cuenta no paga comisión en ella.Guarda accountPlanFees de la respuesta de creación. Las lecturas de la transacción no lo devuelven.
4

Lee el uso del mes

Lee las unidades de la cuenta con Obtener el uso del plan de tarifas de una cuenta:
Después de tres TED, la respuesta es:
period.start y period.end son el mes en la zona horaria del plan, en UTC.
5

Cobra comisiones de servicio

Cobra dos extractos en papel con Cobrar comisiones de servicio a una cuenta. Envía una clave X-Idempotency, y envía la misma clave cuando reintentes el mismo cobro:
Midaz responde 201. El primer extracto usa la unidad gratuita, y el segundo cuesta 3:
La transacción de comisión debita 3 de @customer_001 y los acredita en @fee_revenue. Para deshacer el cobro en el mismo mes, revierte esa transacción.
6

Crea una nueva versión

Sube las TED gratuitas a 5 desde noviembre. Envía solo el campo que cambia a Actualizar un plan de tarifas:
Midaz crea la versión 2 con las dos comisiones, y tedSent tiene freeQuota: 5. Antes del 1 de noviembre en la zona horaria del plan, la respuesta y las transacciones usan la versión 1, y currentVersion es 2.
7

Termina la asignación

Para quitar la cuenta del plan, usa Terminar la asignación de plan de tarifas de una cuenta:
Midaz responde 204. Los paquetes de comisiones del ledger vuelven a aplicarse a la cuenta.