¿Cuál es la diferencia entre las denominaciones «durante la sesión» y «fuera de la sesión»? ¿Por qué esto es importante?

«Durante la sesión» es cuando el cliente realiza el pago en tu aplicación o sitio web, mientras que «fuera de la sesión» es cuando el pago se inicia de forma automática o lo inicia el comerciante. Esta terminología es específica de Stripe, y busca representar cómo se creó el intento de pago y comprender mejor qué acciones pueden tener lugar o no durante el proceso de pago.

Cuando se realiza un pago «durante la sesión», el cliente se encuentra presente en tu sitio web o aplicación móvil e intenta hacer un pago. Si no lo logra, puede volver a intentarlo con un otro método de pago. Si el pago requiere una medida adicional (el paso por 3D Secure, el redireccionamiento a un socio como Klarna, etc.), el cliente puede realizar estos pasos de inmediato para completar el pago.

De forma predeterminada, los pagos en nuestra API se realizan «durante la sesión». No es necesario que pases ningún parámetro específico para indicar esto. Sin embargo, si deseas hacerlo de forma explícita, puedes pasar el parámetro off_session establecido como falso (que es la opción predeterminada) al confirmar el objeto PaymentIntent.

Cuando se realiza un pago «fuera de la sesión», el cliente no se encuentra presente en tu sitio web o aplicación para confirmar el pago. Estos son algunos ejemplos de pagos «fuera de la sesión»:

Si se requiere alguna medida luego de la confirmación de un pago «fuera de la sesión», deberás hacer que el cliente regrese para realizar la siguiente acción «durante la sesión».

En el caso de un pago «fuera de la sesión», deberás pasar el parámetrooff_session establecido como verdadero al confirmar el objeto PaymentIntent. En el caso de los pagos de renovación relacionados con Billing, esto se establece de forma automática.

¿Por qué es importante indicar cuando un pago se realiza fuera de la sesión?

En el caso de un pago «fuera de la sesión», el cliente no se encuentra presente para confirmarlo. Por ejemplo, en los pagos con tarjeta, esto significa que no pueden pasar por 3D Secure. De manera similar, el cliente no podría completar un captcha ni realizar ningún tipo de verificación adicional o acción manual que le solicitáramos.

Al indicar que el pago que inicias se realizará «fuera de la sesión», permites que Stripe omita algunos de estos pasos o solicite una exención al socio (redes de tarjeta, «Compra ahora, paga después», etc.). Por ejemplo, Stripe puede solicitar una exención para transacciones con tarjeta al marcar la transacción de la siguiente manera:

Ten en cuenta que el parámetro de configuraciónoff_session: true podría generar que marquemos la transacción como recurrente con la red de tarjetas.