Saltar al contenido
Payment Emulator LabDocumentaciónEntrar a la consola
En esta página

Pasarelas e iconos

Pasarelas emuladas: Mercado Pago, Stripe y PayPal

Los proveedores son plugins, nunca ramas en el núcleo. La interfaz está enapps/api/src/core/providers/provider-plugin.ts; el registro, enplugin-registry.ts.

2 min de lectura

Índice / Index · English

Traducción de docs/en/providers/overview.md, que es el original. Si discrepan, manda el inglés.

Los proveedores son plugins, nunca ramas en el núcleo. La interfaz está en apps/api/src/core/providers/provider-plugin.ts; el registro, en plugin-registry.ts.

#Estado actual

Proveedor Estado en ejecución Superficie Fidelidad
Mercado Pago Implementado Operaciones concretas de Orders Detalle
Stripe Implementado Operaciones concretas de PaymentIntents y Refunds Detalle
PayPal Implementado Orders v2, Payments v2, OAuth y checkout de aprobación Detalles

«Implementado» se calcula: un plugin tiene que tener rutas y pasar la conformidad estática. No se puede teclear en la tabla gateways. Quien opera puede encender o apagar un proveedor, marcarlo como planeado, esqueleto o obsoleto, y sobrescribir números contables, pero no puede editar el enrutado, la validación ni el comportamiento de toWire.

#Responsabilidades del plugin

Asunto Lo pone el plugin Lo pone el núcleo
HTTP rutas reales y validación del contrato entrada comodín y orden de la petición
Traducción petición del proveedor → orden canónica; vista canónica → cable operaciones y estados canónicos
Credenciales formato, reconocimiento y negativa con su forma búsqueda por digest y resolución del inquilino
Idempotencia nombre de la cabecera y operaciones que la exigen huella, lock, repetición y conflicto
Estados y errores vocabulario total del proveedor la decisión de que un estado o una negativa existen
Contabilidad declaración de comisión, plazo y monedas apuntes cuadrados y liquidación
Webhooks asunto, cuerpo, firma y verificación outbox, cola, reintentos e intentos
Checkout plantilla de URL y catálogo de métodos API pública de checkout y armazón compartido

Los plugins son objetos planos, sin dependencias inyectadas. Eso impide que un proveedor cree una segunda implementación de las transacciones, la idempotencia, el libro mayor o la entrega.

#Las dos mitades de un proveedor

El comportamiento del backend vive en apps/api/src/providers/<id>/. La identidad de cara al comprador vive aparte, en apps/checkout/providers/<id>/. No se importan. Las capacidades del checkout cruzan la frontera por las respuestas de la API.

Para el flujo completo de alta, ver Añadir un proveedor.

Payment Emulator Lab · RonuSoftwareMIT