Blog
Una terminal de pago en miniatura dentro de una cámara de pruebas con lluvia y descargas eléctricas.

4 de septiembre de 20266 min de lecturaАдминистратор

El sandbox está en verde. Sus pagos todavía no están listos para el lanzamiento

Una matriz de escenarios de cobro, reembolsos y estados asíncronos que ayuda a entender qué demostraron realmente las pruebas de integración.

«El pago de prueba se aprobó» es fácil de escribir en un reporte. Es mucho más difícil demostrar que, tras perderse una respuesta, el producto se entregará una sola vez, el reembolso no se duplicará y la conciliación nocturna encontrará el mismo monto. La preparación de una integración de pagos se ve en esos escenarios incómodos. Armemos la verificación en torno al daño que el sistema debe evitar.

Escriba el resultado esperado antes de ejecutar la prueba

Para cada escenario, cree una fila con el método de pago, la acción del cliente, el evento simulado, el estado esperado de la plataforma y la forma de verificarlo. Agregue un responsable y un enlace al resultado. Decir «el pago funciona» es demasiado vago. Es mejor: «si se confirma dos veces una misma operación, aparece un solo asiento de abono; soporte ve ambos intentos y un único monto final».

Una plataforma hipotética permite a los vendedores recibir pagos y a los compradores solicitar reembolsos. El equipo prueba solo los métodos y operaciones que realmente están habilitados en su producto y que el proveedor permite. La autorización con tarjeta, la confirmación de una transferencia bancaria y el pago a un beneficiario deben tener etapas esperadas distintas. No traslade el estado «exitoso» de un proceso de pago a otro sin definir qué significa.

Arme la matriz en torno a la pérdida de dinero y la incertidumbre

  • Cierre normal. Verificar el monto, la moneda, el vínculo con el pedido, el asiento en el registro y una confirmación clara para el cliente.
  • Rechazo esperado. Usar el escenario de prueba previsto por el proveedor; comprobar que no se entreguen el producto ni saldo interno.
  • Acción adicional del cliente. Completar la verificación disponible para el método, cancelarla e interrumpirla a la mitad; comprobar cada resultado por separado.
  • Respuesta perdida. Simular un corte de red después del envío y comprobar que el sistema conserve la incertidumbre y la identidad de la operación.
  • Repetición y evento tardío. Entregar dos veces la misma notificación, retrasarla y alterar su orden respecto de otro evento.
  • Reembolso o anulación. Verificar las acciones totales y parciales permitidas, los errores de monto y el doble clic del operador.
  • Recuperación. Detener el procesador interno, acumular eventos de prueba y verificar que la cola se procese de forma controlada.
  • Conciliación. Seguir varias operaciones desde el pedido hasta el registro del proveedor y el reporte financiero interno.

Use los valores de prueba oficiales. Stripe describe cómo simular pagos, rechazos, autenticación y otros eventos sin mover dinero. La misma documentación desaconseja hacer pruebas de carga en el sandbox y probar en modo live con datos de pago reales. El método de verificación debe respetar las reglas del servicio elegido.

Un escenario debe cruzar los límites entre componentes

Imaginemos la prueba T-27: el comprador hace un pedido de 36 euros, cierra la página justo después de confirmar y la notificación llega más tarde. Quien verifica no se fija solo en la respuesta de la API. Vuelve a abrir el pedido y revisa el registro del pago, la cola de eventos, la acción de entrega del producto y el historial disponible para soporte. Al final debe existir un único resultado explicable, aunque el navegador no haya esperado la vistosa página de éxito.

Adyen recomienda probar el frontend y el backend junto con los webhooks, incluidos los métodos ofrecidos y los países de los compradores. La conclusión práctica para el equipo: divida la matriz según las combinaciones que realmente soporta, en lugar de limitarse a una tarjeta de prueba cómoda. Una combinación no soportada también debe probarse, pero el resultado esperado será que el acceso a ella se restrinja correctamente.

Guarde la evidencia de forma que otra persona pueda repetir la prueba: versión de la aplicación, configuración de la cuenta de prueba, identificadores de los objetos, resultado esperado y desviación real. Una captura del botón verde sin esa información ayuda poco en la próxima actualización de la integración.

Verifique la promesa del producto desde otra pantalla

Si la prueba crea un pago y verifica la respuesta de la misma API, puede estar repitiendo un supuesto erróneo de la integración. Agregue una observación independiente: el asiento financiero, la lista de tareas de cumplimiento, el historial del pedido en soporte. En la prueba hipotética se esperan 36 euros y un solo despacho. Compruebe al mismo tiempo que no haya un segundo despacho, un saldo inexplicable ni otro pedido «exitoso». La ausencia de un efecto sobrante es un resultado de la prueba tan válido como la presencia del efecto esperado.

Divida la evidencia en tres niveles: el contrato con el proveedor, el comportamiento de su propia aplicación y el trabajo del equipo de operaciones. La API de prueba solo confirma los escenarios disponibles en ella. Un simulacro con el turno muestra si un empleado encontrará un pago desconocido sin acceso de desarrollador. La revisión de la conciliación muestra si los asientos de dinero coinciden. Un nivel no sustituye a otro.

Una falla después de cada paso

Tome una cadena corta: guardar la intención, enviar la solicitud, recibir la respuesta, registrar el resultado, poner el despacho en cola. En el entorno de pruebas, interrumpa el proceso después de cada paso y reinícielo. Para cada punto, formule de antemano un invariante: un solo efecto financiero, un estado de espera explicable, ninguna tarea perdida. Esto aporta más información que decenas de pagos exitosos idénticos.

No convierta la matriz en una lista de todo lo imaginable. Cada error crítico debe tener una forma de detección, una prueba concreta y una decisión sobre el lanzamiento. Si un defecto conocido se deja para la siguiente versión, registre el escenario de uso limitado, el responsable y la condición de detención. Una firma de «riesgo aceptado» sin esos límites no le dice nada a la persona de guardia que se tope con el problema de noche.

Verifique por separado el paso a producción

El sandbox de PayPal usa cuentas virtuales y credenciales propias. Para el lanzamiento cambian los endpoints y las credenciales correspondientes. Por eso, un escenario exitoso con una cuenta de prueba no confirma que la configuración de producción de su plataforma esté bien armada. Es una conclusión sobre los límites de la verificación realizada, no una evaluación de la calidad del sandbox.

Antes del lanzamiento, revise las URL de producción de la API, la cuenta del beneficiario, las suscripciones a eventos, los permisos, la disponibilidad de los métodos, los contactos de escalamiento y una forma segura de detener las operaciones nuevas. No incluya secretos en los reportes de prueba. Designe a una persona capaz de distinguir un error de la aplicación de una configuración incompleta del proveedor.

Organice el seguimiento de las primeras operaciones reales autorizadas como un lanzamiento limitado bajo reglas acordadas. No lo reemplace con compras ficticias, carga sobre infraestructura ajena o la evasión de controles. Defina de antemano las condiciones de detención, en especial para abonos duplicados, resultados desconocidos y diferencias en el registro.

La preparación para el lanzamiento se confirma con un conjunto de evidencias: escenarios críticos superados, excepciones resueltas, configuración de producción verificada y un responsable del seguimiento. Un solo pago exitoso sigue siendo una prueba útil, pero no sustituye ese conjunto.

Fuentes

  1. 1.docs.stripe.com/testing
  2. 2.docs.adyen.com/development-resources/testing
  3. 3.developer.paypal.com/sandbox-testing/overview

Comentarios · 0

Aún no hay comentarios — sé el primero.

Entrar · inicia sesión para comentar.