Estructura de comisiones: MDR, scheme, PSP
1) Mapa de conceptos y de qué se compone el MDR
MDR (Merchant Discount Rate) es el coste total de aceptación de pagos, generalmente expresado en% de la facturación + fix. Tarifa de transacción. Pila de cartas clásica:1. Interchange (banco emisor): porcentaje por tipo de tarjeta/región/categoría.
2. Scheme fees (sistemas de pago): assessment, processing, cross-border, brand usage, etc.
3. Acquirer/PSP markup: recargo de ecuador/proveedor (porcentaje + fix).
4. Dop. tarifas: chargeback fee, refund fee, presentment, retrieval, auth-fee, gateway-fee, rolling reserve (no comisión, pero afecta al cache flow), FX spread cuando se convierte.
Coste total para merchant = Interchange + Scheme + Markup + Tarifas fijas + Efectos FX ± Reserva.
2) Modelos de precios
2. 1. Blended (flat)
Uno por ciento + fix. colección «todo incluido». Simple, pero opaco: oculta el interchange/scheme y el spread FX.
2. 2. IC++ (Interchange++ / Interchange pass-through)
Interchange y scheme van «tal cual», arriba está el markup fijo del proveedor. Transparente, más fácil de conciliar, rentable con una cartera de tarjetas «barata».
2. 3. Tiered/Pricing buckets
Varias «cestas» (domestico, intra-EEA, inter-regional, comercial, premium). Conveniente para informar, puede enmascarar el costo real.
2. 4. Métodos alternativos (A2A/Wallet/Crypto)
Más a menudo flat-fee o% por debajo de las tarjetas; tarifas individuales de red/proveedor y efecto FX durante la conversión.
3) Dónde y cuándo surge la comisión
Auth/Validation: cargo por intento de autorización (usp ./nesp.) .
Capture/Settle: la mayor parte de MDR.
Refund/Parte Refund: las devoluciones a menudo se cobran por separado (+ re-cálculo de scheme).
Chargeback/Representment: фикс. cargos por caso/etapa.
Gateway/Platform: abono mensual, fee por webhooks, reporting, tokenización de tarjetas.
FX/Conversión: implícito el margen PSP/banco (spread) si la conversión está de su lado.
Calendario: minimum monthly fee, early termination, tarjeta PCI, 3DS-fee, fraud-suite fee.
4) Recargos y ajustes arancelarios
Cross-border (emisor ≠ país de equairer), CNP (tarjeta-no-presente), tarjeta premium/comercial.
Verticals de alto riesgo (iGaming) - Aumento de markup/reserva.
Sanciones/umbrales: superación del CBR → tasas adicionales.
SCA/3DS: fee independiente por transacción/intento.
Minimum ticket/Small ticket: fix mejorado. cargos con cheques pequeños.
5) Gross vs Net settlement y «donde han ido los porcentajes»
Gross settlement: el eje llega para el cálculo con PSP, las comisiones se eliminan por una cadena separada (más fácil de taladrar).
Net settlement: vienen net funding = volumen de negocios − interchange − scheme − markup − fix. cargos − reserva.
En los scripts net, es crítico importar un componente de partición, de lo contrario, «salta» la puntuación de toma.
6) Fórmulas y métricas «eficaces»
6. 1. take-rate effective (por método/PSP)
take_rate_effective_% = (Σ Fees_all_components) / (Σ Captured_Gross) 100
6. 2. Descomposición en componentes
Fees_all = Interchange + Scheme + Markup + Auth + Refund + Chargeback + Gateway
+ FX_spread_effect (if applicable)
6. 3. Costo de rebote (Decline cost)
Cost_per_approval = (Σ Auth_Fees + Σ Decline_Fees )/( Number of successful payments)
6. 4. Impact FX
FX_slippage = Σ (Settlement_amount_in_rep - Original_amount FX_reference_rate)
6. 5. Costo de los charjebacks
CB_cost_total = Σ (CB_fee + Representment_fee + Scheme_penalties) + Lost_principal (если не отбит)
7) Modelo de datos (simplificado)
ref. fee_components (
code PK, name, category, -- INTERCHANGE SCHEME MARKUP AUTH REFUND CHARGEBACK GATEWAY FX_SPREAD unit, -- PCT FIX MIXED is_variable, is_settlement_level
)
finance. psp_pricing (
provider, method, region, bin_range, card_type, card_category,
model, -- BLENDED IC++ TIERED pct_rate, --% rate (if applicable)
fix_fee, -- фикс за trx cross_border_bps, premium_bps, cnp_bps,
refund_fix, cb_fix, auth_fix, gateway_monthly,
valid_from, valid_to, meta
)
finance. settlement_fees (
batch_id, provider, mid, method, period_start_at, period_end_at,
interchange_amt, scheme_amt, markup_amt,
auth_amt, refund_amt, cb_amt, gateway_amt,
fx_spread_amt, reserve_delta, total_fees, currency
)
dw. transactions_flat (
tx_id, provider, method, status, bin, brand, category, region,
amount_original, currency_original, amount_reporting, reporting_currency,
settled_at, funded_at, is_refund, is_cb, fx_reference_rate, fx_effective_rate, meta
)
8) Conciliación: de las transacciones al archivo y de vuelta
8. 1. Tx → File (verificamos que contamos «como en el archivo»)
Agregue el volumen de negocios por cestas (BIN/región/tipo de tarjeta) × las reglas de pricing.
Aplicar tasas de interchange/scheme/markup/fix.
Consulte con 'settlement _ fees. total_fees` по batch. Delta> umbral → ticket.
8. 2. File → Tx (verificamos que no hay «extra» en el archivo)
Distribuir el batch-fee en proporción al volumen de negocios/cola-wu de las transacciones hasta el nivel tx (con blended/sin detalles).
Detecte posiciones inesperadas (línea extra fee, penalty, minimum monthly top-up).
9) Ejemplos de plantillas SQL
9. 1. Cálculo de la tasa de toma efectiva por método/PSP
sql
SELECT provider, method,
SUM(amount_reporting) AS volume_rep,
SUM(f. interchange_amt + f. scheme_amt + f. markup_amt +
f. auth_amt + f. refund_amt + f. cb_amt + f. gateway_amt + f. fx_spread_amt) AS fees_rep,
100. 0 SUM(f. interchange_amt + f. scheme_amt + f. markup_amt +
f. auth_amt + f. refund_amt + f. cb_amt + f. gateway_amt + f. fx_spread_amt)
/ NULLIF(SUM(amount_reporting),0) AS take_rate_effective_pct
FROM dw. transactions_flat t
JOIN finance. settlement_fees f
ON f. provider = t. provider
AND t. settled_at BETWEEN f. period_start_at AND f. period_end_at
GROUP BY 1,2
ORDER BY take_rate_effective_pct DESC;
9. 2. Redistribución de batch-fee a transacciones (blended)
sql
WITH vol AS (
SELECT provider, batch_id, SUM(amount_reporting) AS batch_volume
FROM dw. transactions_flat
GROUP BY 1,2
)
SELECT t. tx_id, t. provider, t. batch_id,
(f. total_fees t. amount_reporting / NULLIF(v. batch_volume,0)) AS fee_allocated
FROM dw. transactions_flat t
JOIN finance. settlement_fees f USING (provider, batch_id)
JOIN vol v USING (provider, batch_id);
9. 3. Costo de rebote y costo de aprobación
sql
SELECT provider, method,
SUM(CASE WHEN status='DECLINED' THEN auth_fee ELSE 0 END) AS decline_cost,
SUM(CASE WHEN status='APPROVED' THEN auth_fee ELSE 0 END) AS approval_auth_cost,
COUNT() FILTER (WHERE status='APPROVED') AS approvals,
(SUM(auth_fee) / NULLIF(COUNT() FILTER (WHERE status='APPROVED'),0)) AS cost_per_approval
FROM dw. auth_events;
9. 4. Selección de spread FX (si hay una tasa efectiva)
sql
SELECT provider, DATE(settled_at) AS d,
SUM((fx_effective_rate - fx_reference_rate) amount_original) AS fx_slippage_rep
FROM dw. transactions_flat
WHERE fx_effective_rate IS NOT NULL
GROUP BY 1,2;
10) KPI y dashboards
Take-Rate% sobre PSP/método/MID/país.
Pila de componentes: Interchange%, Scheme%, Markup%, Fixed per trx.
Costo-per-Approval y Decline-burden (cuánto cuestan los fallos).
FX Slippage (bps y en la moneda del informe).
Refund/CB Cost en 1000 transacciones.
Penalty/Minimum-monthly incidentes.
Reserva como% de GMV (para entender el impacto en el caché flow).
11) Alertas y umbrales
Take-rate spike: crecimiento> X bps d/d o> Y bps w/w.
Scheme delta: discrepancia de scheme-fees calculados con el archivo> 0. 3–0. 5%.
FX slippage:> 80 bps para mayores o> 150 bps para menores.
Decline cost surge: un aumento en el costo de aprobación con una reducción de AR.
Línea sin formato: nueva cadena en el archivo sin mapear el componente.
Minimum monthly shortfall: falta de volumen de negocios al mínimo (por delante del recargo).
12) Negociación y reducción de valor
1. Ir a IC++ si la cartera es favorable (domestic, consumer debit).
2. BIN-routing/Smart-routing: desglose los flujos por geo/tipo de mapa a ecuaires «baratos».
3. A2A/Open Banking/Local Methods para reducir la proporción de tarjetas caras.
4. Discursos de volumen perdido: fijar los umbrales y rugir trimestralmente.
5. Cap en fixed-fees para segmentos micro-ticket.
6. Transparencia FX: nota de referencia + spread_bps fija, informes de FX efectiva.
7. Penalty shields: especificar los límites/condiciones de las multas scheme y su base probatoria.
8. MIDs individuales para carteras de alto riesgo/bajo riesgo - no «infectar» las tarifas.
9. Performance-clauses: SLA por autorizaciones/3DS, de lo contrario es una reducción del markup.
13) Edge-cases
Fan-out autorizaciones (reintentos) → auth-fees despegan. Habilitar estrategias rate-limit/soft-decline.
Capture parcial: los cálculos del diagrama se recalculan; es importante agregarlo correctamente.
Reparación ex-post: retroactivamente, el proveedor ha vuelto a calcular fees - almacenar versiones de archivos y revisiones de batch.
Refundidos más tarde cutoff: en el siguiente ciclo - ajustar los informes.
Tarjetas corporativas/premium: seguir la proporción - «tirar» medio interchange.
14) Mejores prácticas (corto)
1. Motor de cálculo fees en su lado + mapping todas las líneas de archivo a los componentes.
2. IC++ y FX transparente donde sea rentable; blended - sólo con descuento real.
3. Smart-routing por BIN/geo/tipo de mapa; Pruebas A/B de PSP.
4. Contabilidad por separado de las tasas fijas y los intereses; no mezclar con ganancias/pérdidas FX.
5. Versionar el pricing y los archivos; retrocess determinista.
6. Semanal "variance-reports' por componentes take-rate.
7. Negociaciones trimestrales con el paquete métrico: CBR, 3DS pass-rate, AR, fraud-rate, share of domestic.
15) Lista de verificación de implementación
- Referencia 'fee _ components' y 'psp _ pricing' con versiones y periodos de acción.
- Importar 'settlement _ fees' con detalles de Interchange/Scheme/Markup/Fixed.
- ETL calcular nuestra versión fee por tx y conciliar con el archivo.
- Dashboards take-rate y stack componente.
- Алерты: spike, mismatch, FX slippage, minimum monthly.
- Procedimientos de negociación: revisión trimestral y roadmap para la reducción.
Resumen
MDR no es un «uno por ciento», sino un conjunto de capas: interchange, scheme, markup, fix boards y FX. El modelo de datos transparente, el cálculo propio de las comisiones «de referencia», la conciliación regular con los archivos PSP y el enrutamiento significativo de los pagos convierten el coste de admisión en un KPI gestionado. Con esta disciplina, usted ve una tasa de toma real, encuentra «fugas» en FX y cargos de fix y reduce con confianza los pagos TCO.