Ir a contenido
Crea una cuenta
o
inicia sesión
Logotipo de la documentación de Stripe
/
Pregúntale a la IA
Crear cuenta
Iniciar sesión
Empezar
Pagos
Ingresos
Plataformas y marketplaces
Gestión del dinero
Recursos para desarrolladores
Resumen
Acerca de Stripe Payments
Actualiza tu integración
Análisis de pagos
Pagos por Internet
ResumenEncuentra tu caso de usoManaged Payments
Utiliza Payment Links
Crear una página del proceso de compra
    Resumen
    Guías de inicio rápido
    Personaliza el estilo
    Recolecta información adicional
    Cobrar impuestos
    Actualiza forma dinámica el proceso de compra
    Gestiona tu catálogo de productos
    Suscripciones
    Gestiona los métodos de pago
    Permite que los clientes paguen en su divisa local
    Añade descuentos, ventas de productos de más valor y artículos opcionales
    Configurar pagos futuros
    Guardar datos de pago durante el pago
    Acepta pagos manualmente en tu servidor
    Después del pago
      Completar pedidos
      Envía recibos y facturas pagadas
      Personalizar el comportamiento de redireccionamiento
      Recuperar carritos abandonados
      Analizar la conversión de pagos
    Elements con registro de cambios beta de la API Checkout Sessions
    Migrar desde Checkout heredado
    Migrar Checkout para usar precios
Desarrolla una integración avanzada
Desarrolla una integración en la aplicación
Métodos de pago
Añadir métodos de pago
Gestiona los métodos de pago
Proceso de compra más rápido con Link
Interfaces de pago
Payment Links
Checkout
Elements para la web
Elements en la aplicación
Escenarios de pago
Administrar múltiples divisas
Flujos de pagos personalizados
Capacidad adquirente flexible
Orquestación
Pagos en persona
Terminal
Más allá de los pagos
Constituye tu empresa
Criptomonedas
Financial Connections
Climate
InicioPagosBuild a checkout pageAfter the payment

Personaliza el comportamiento de redireccionamiento

Muestra una página de confirmación con la información del pedido del cliente.

Si tienes una integración de pago que utiliza un formulario integrado, puedes personalizar cómo redirige Stripe a tus clientes (y si lo hace) después de que completen el pago. Puedes hacer que Stripe siempre redirija a los clientes, que solo redirija para algunos métodos de pago o que deshabilite completamente los redireccionamientos.

Para configurar los redireccionamientos, especifica la página de retorno en el parámetro return_url.

Como alternativa, puedes:

  • Redirigir a los clientes solo si el método de pago lo requiere (por ejemplo, una página de autorización bancaria para un método basado en el débito).
  • No utilizar una página de retorno y deshabilitar los métodos de pago basados en el redireccionamiento.

Redirige a los clientes a una página de retorno

Cuando creas la Checkout Session, especificas la URL de la página de retorno en el parámetro return_url. Incluye la variable de plantilla {CHECKOUT_SESSION_ID} en la URL. Cuando Checkout redirija a un cliente, reemplaza la variable con el ID real de la Checkout Session. Cuando muestres tu página de retorno, recupera el estado de la Checkout Session utilizando el ID de la Checkout Session en la URL.

server.js
app.get('/session_status', async (req, res) => { const session = await stripe.checkout.sessions.retrieve(req.query.session_id); const customer = await stripe.customers.retrieve(session.customer); res.send({ status: session.status, payment_status: session.payment_status, customer_email: customer.email }); });

Gestiona el resultado de acuerdo con el estado de la sesión de la siguiente manera:

  • complete: El pago se ha realizado correctamente. Usa la información de la Checkout Session para mostrar una página de pago efectuado correctamente.
  • open: El pago ha fallado o se ha cancelado. Vuelve a montar el proceso de pago para que tu cliente pueda volver a intentarlo.
client.js
const session = await fetch(`/session_status?session_id=${session_id}`) if (session.status == 'open') { // Remount embedded Checkout else if (session.status == 'complete') { // Show success page // Optionally use session.payment_status or session.customer_email // to customize the success page }

Métodos de pago basados en el redireccionamiento

Durante el pago, algunos métodos de pago redirigen al cliente a una página intermedia, como una página de autorización bancaria. Cuando completan esa página, Stripe los redirige a tu página de retorno.

Redirecciona solo en los métodos de pago basados en el redireccionamiento

Si no quieres redireccionar clientes después de pagos que no requieren un redireccionamiento, establece redirect_on_completion como if_required. Eso solo redirige a los clientes que finalizan su compra con métodos de pago basados en el redireccionamiento.

En los pagos con tarjeta, Checkout muestra un estado predeterminado de pago efectuado correctamente en lugar de redirigir. Para usar tu propio estado de pago efectuado correctamente, pasa una devolución de llamada onComplete que destruya la instancia de Checkout y muestre tu estado personalizado de pago efectuado correctamente.

Se llama a onComplete cuando la Checkout Session se completa correctamente o cuando se envía el evento de webhook checkout.session.completed.

return.js
const stripe = Stripe(
'pk_test_TYooMQauvdEDq54NiTphI7jx'
); initialize(); async function initialize() { const fetchClientSecret = async () => { const response = await fetch("/create-checkout-session", { method: "POST", }); const { clientSecret } = await response.json(); return clientSecret; }; // Example `onComplete` callback const handleComplete = async function() { // Destroy Checkout instance checkout.destroy() // Retrieve details from server (which loads Checkout Session) const details = await retrievePurchaseDetails(); // Show custom purchase summary showPurchaseSummary(details); } const checkout = await stripe.initEmbeddedCheckout({ fetchClientSecret, onComplete: handleComplete }); checkout.mount('#checkout'); }

Deshabilita los métodos de pago basados en el redireccionamiento

Si no quieres crear una página de retorno, crea tu Checkout Session con redirect_on_completion establecido en never.

De este modo se deshabilitan los métodos de pago basados en redireccionamientos:

  • Si utilizas métodos de pago dinámicos, puedes seguir gestionando los métodos de pago desde el Dashboard, pero los métodos de pago que requieran redireccionamientos no cumplen los requisitos.
  • Si especificas manualmente métodos de pago con payment_method_types, no puedes incluir ningún método de pago basado en el redireccionamiento.

Al configurar redirect_on_completion: never se elimina el requisito de return_url. Para estas sesiones, Checkout muestra un estado predeterminado de pago efectuado correctamente en lugar de redirigir. Puedes usar tu propio estado de pago efectuado correctamente pasando una devolución de llamada onComplete que destruye la instancia de Checkout y muestra tu estado personalizado de pago efectuado correctamente.

Se llama a onComplete cuando la Checkout Session se completa correctamente o cuando se envía el evento de webhook checkout.session.completed.

return.js
const stripe = Stripe(
'pk_test_TYooMQauvdEDq54NiTphI7jx'
); initialize(); async function initialize() { const fetchClientSecret = async () => { const response = await fetch("/create-checkout-session", { method: "POST", }); const { clientSecret } = await response.json(); return clientSecret; }; // Example `onComplete` callback const handleComplete = async function() { // Destroy Checkout instance checkout.destroy() // Retrieve details from server (which loads Checkout Session) const details = await retrievePurchaseDetails(); // Show custom purchase summary showPurchaseSummary(details); } const checkout = await stripe.initEmbeddedCheckout({ fetchClientSecret, onComplete: handleComplete }); checkout.mount('#checkout'); }
¿Te ha sido útil la página?
SíNo
¿Necesitas ayuda? Ponte en contacto con el equipo de soporte.
Únete a nuestro programa de acceso anticipado.
Echa un vistazo a nuestro registro de cambios.
¿Tienes alguna pregunta? Ponte en contacto con el equipo de ventas.
¿LLM? Lee llms.txt.
Con tecnología de Markdoc