Saltar al contenido
Payment Emulator Lab

TU SANDBOX. TUS REGLAS.

Pagos de prueba.
Posibilidades
reales.

Tu laboratorio local para integrar pagos con Vector, Harbor y Plaza, perfiles propios compatibles con flujos seleccionados de Stripe, PayPal y Mercado Pago.

Sin depender del sandbox de un proveedor.

ENTORNO LOCALListo para experimentar

POST → 200Vista ilustrativa · sin dinero real

Sin credenciales realesSin tarjetas realesSin dinero realEjecución local

PERFILES DE COMPATIBILIDAD

Tres identidades propias. Un entorno que controlas.

Vector, Harbor y Plaza exponen vocabularios compatibles con flujos seleccionados de proveedores conocidos, sin adoptar sus marcas como identidad del producto.

Flujos seleccionadosPlaza

Del pedido al reembolso

Orders · compatibilidad Mercado Pago

Creación, transacciones, procesamiento, captura, cancelación y reembolso en el perfil Plaza.

  1. Crear
  2. Procesar
  3. Capturar
  4. Reembolsar
Ver flujos y límites
Flujos seleccionadosVector

Control sobre la captura

PaymentIntents · Refunds · compatibilidad Stripe

Create/confirm, captura manual y reembolsos con formas wire compatibles con Stripe.

  1. Crear
  2. Confirmar
  3. Capturar
  4. Reembolsar
Ver flujos y límites
Flujos seleccionadosHarbor

Aprobación incluida

Orders v2 · Payments v2 · compatibilidad PayPal

OAuth local, aprobación, autorización, captura, anulación y reembolso en el perfil Harbor.

  1. Crear
  2. Aprobar
  3. Capturar
  4. Reembolsar
Ver flujos y límites

Flujos seleccionados, no catálogos completos. Consulta los informes de fidelidad para conocer la cobertura y sus límites.

CÓMO FUNCIONA

Cambia el destino. Conserva tu integración.

Registra una aplicación, configura sus credenciales locales y apunta tu integración al emulador. Cada petición recorre un flujo observable.

Explorar la arquitectura
PeticiónHTTP → Contrato → Resultado
  1. Tu aplicaciónEnvía la petición
  2. Emulator APIValida el contrato
  3. Emulador de proveedorTraduce la operación
  4. Banco falso + ledgerRegistra el movimiento
  5. WebhookNotifica el resultado
  6. Tu aplicaciónProcesa el evento

Un recorrido compartido. El contrato de cada proveedor en los extremos.

ESCENARIOS DETERMINISTAS

El caso difícil. A un cambio de escenario.

Un pago aprobado, un rechazo o una acción pendiente. Elige el resultado para reproducir el caso que necesitas depurar, una y otra vez.

Mismo escenario. Mismo resultado.

Asigna el escenario a tu aplicación o usa X-Emulator-Scenario por petición.

Diseñar escenarios
escenario de creación
Contratopayment.createWebhook habilitado

vector/payment-approved.json

{
  "provider": "vector",
  "version": 1,
  "when": {
    "operation": "payment.create"
  },
  "then": {
    "outcome": "captured",
    "webhook": {
      "enabled": true,
      "delayMs": 50
    }
  }
}
Resultado canónicocaptured

Ejemplo interactivo · no envía peticiones

Traza ilustrativatrace_demo

Una petición. Su historial completo.

  1. Entradarequest.received
  2. Validacióncontract.validated
  3. Escenarioscenario.matched
  4. Respuestaresponse.sent
Entrega de webhook

Worker · firma · reintentos · historial

WEBHOOKS + TRAZAS

Sigue el pago. Entiende el porqué.

Inspecciona qué contrato se validó y qué escenario coincidió. Consulta las entregas y reintentos de webhook, y relaciona la petición con tus logs mediante su correlation ID.

BANCO FALSO. CONTABILIDAD REALISTA.

Cada movimiento tiene su contrapartida.

Los pagos no son estados mágicos. El banco falso registra asientos de partida doble para seguir capturas, comisiones, reservas, liquidaciones y reembolsos.

Saldos derivados de los movimientos. Importes en unidades menores. Ningún dinero real.

Conocer el banco falso
Diferencia entre debe y haber0,00 USDUna moneda · partida doble
Ejemplo simplificado · captura externa
CuentaDebeHaber
Caja del sistema100,00 USD—
Fondos en tránsito—100,00 USD

Debe = haber

UN LABORATORIO, TRES SUPERFICIES

Integra. Simula. Inspecciona.

Tres aplicaciones separadas, conectadas mediante la API.

Vista ilustrativa
PeticiónPOST /v1/payment_intents
{
  "amount": 10000,
  "currency": "usd",
  "confirm": true
}
Local · API

API

Para tu integración

Contratos de proveedor, escenarios y operaciones de pago sobre NestJS.

Contratos y API
Vista ilustrativa
Aplicaciones
demo-storeVector
Pagos
payment_demoCapturado

Console

Para quien desarrolla

Aplicaciones, credenciales locales, pagos, ledger, webhooks y trazas.

Abrir la consola
Vista ilustrativa
Tarjeta de prueba100,00 USD
•••• 4242
Pago simulado

Checkout

Para quien paga

Prueba la experiencia de compra con la identidad propia y el flujo de cada perfil del emulador.

Explorar el checkout

DEL REPOSITORIO A TU PRIMER PAGO

Tu próximo sandbox vive en tu máquina.

Clona el repositorio y ejecuta el instalador. Comprueba Node, prepara el entorno, instala, compila, migra y crea tu administrador.

Guía de instalación
Terminal · raíz del repositorio
npm run setup

Lo que prepara el instalador

  • 01Versión de Node y entorno
  • 02Dependencias y compilación
  • 03Migraciones de la base de datos
  • 04Cuenta de administrador

Node ≥ 22.17 · Docker Compose o PostgreSQL local

Docker deja la pila en marcha. En modo local, inicia los procesos siguiendo la guía.

  1. 01Clonar
  2. 02Preparar
  3. 03Ejecutar
  4. 04Integrar
  5. 05Simular
  6. 06Inspeccionar

DOCUMENTACIÓN SIN ATAJOS

Menos suposiciones. Más respuestas.

Guías en español e inglés, desde el primer arranque hasta los límites de cada contrato.

Ver toda la documentación

PREGUNTAS FRECUENTES

Lo que conviene saber antes de empezar.

Respuestas cortas, con el documento que las desarrolla.

Ver toda la documentación

¿Qué es Payment Emulator Lab?

Un emulador local de pasarelas de pago: una API, una consola, un checkout y un banco falso con contabilidad por partida doble. Se ejecuta entero en tu máquina.

Descripción del proyecto

¿Necesito credenciales o tarjetas reales?

No. Registras tu aplicación en el emulador y él emite las credenciales locales con las que firmas cada petición. Ninguna tarjeta ni cuenta real interviene.

Primeros pasos

¿Sustituye al sandbox de Stripe, PayPal o Mercado Pago?

No, y no es un producto oficial de esos proveedores. Emula flujos seleccionados con su vocabulario; los informes de fidelidad describen qué está cubierto y qué no.

Funciones y límites

¿Qué flujos están soportados?

Plaza cubre Orders compatibles con Mercado Pago; Vector cubre PaymentIntents y Refunds compatibles con Stripe; Harbor cubre Orders v2 y Payments v2 compatibles con PayPal. Cada informe de fidelidad delimita el alcance.

Informe de Vector

¿Puedo probar webhooks y depurar lo que ocurre?

Sí. El emulador emite los eventos de cada operación, registra sus entregas y guarda la traza de la petición que los originó.

Webhooks y trazas

¿Puedo forzar un rechazo o un caso concreto?

Sí. Los escenarios deterministas asocian una condición a un resultado, de modo que el mismo caso se reproduce igual cada vez que lo necesites.

Escenarios deterministas

EL SIGUIENTE PAGO ES DE PRUEBA

Deja de probar integraciones de pago con dinero y credenciales reales.

Tu código, tus escenarios y un entorno para entender cada resultado.