Ir a contenido
Crea una cuenta
o
Inicia sesión
Logotipo de Stripe Docs
/
Pregúntale a la IA
Crear una cuenta
Iniciar sesión
Empieza ahora
Pagos
Ingresos
Plataformas y marketplaces
Gestión del dinero
Developer resources
Resumen
Acerca de Stripe Payments
Actualiza tu integración
Análisis de pagos
Pagos electrónicos
ResumenEncuentra tu caso de usoPagos administrados
Usa Payment Links
Crea una página del proceso de compra
    Resumen
    Guías de inicio rápido
    Personaliza el estilo
    Recopila información adicional
    Cobrar impuestos
    Actualiza en 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 moneda local
    Agrega descuentos, ventas adicionales y artículos opcionales
    Configurar pagos futuros
    Guardar los datos de pago durante el pago
      Clientes invitados
    Aprueba pagos manualmente en tu servidor
    Después del pago
    Elements con registro de cambios beta de la API Checkout Sessions
    Migrar desde un proceso de compra heredado
    Migrar Checkout para usar Prices
Desarrolla una integración avanzada
Desarrolla una integración en la aplicación
Métodos de pago
Agrega métodos de pago
Gestiona los métodos de pago
Finalización de compra más rápida con Link
Interfaces de pago
Payment Links
Checkout
Elements para la web
Elements en la aplicación
Escenarios de pago
Administrar varias monedas
Flujos de pago personalizados
Capacidad adquirente flexible
Orquestación
Pagos en persona
Terminal
Beyond payments
Incorporate your company
Criptomonedas
Financial Connections
Climate
InicioPagosBuild a checkout page

Guarda datos de pago durante el pago

Aprende a aceptar un pago y guardar los datos de pago de tu cliente para futuras compras.

Copiar página

Utiliza Stripe Checkout para lograr una integración rápida y con poca programación que permita a tus clientes guardar sus datos de pago para futuras compras.

Configurar Stripe
Lado del servidor

Primero, inscríbete para obtener una cuenta de Stripe.

Usa nuestras bibliotecas oficiales para acceder a la API de Stripe desde tu aplicación:

Command Line
Ruby
# Available as a gem sudo gem install stripe
Gemfile
Ruby
# If you use bundler, you can add this line to your Gemfile gem 'stripe'

Crear un cliente
Lado del servidor

Para configurar una tarjeta para pagos futuros, debes adjuntarla a un Customer. Crea el objeto Customer cuando tu cliente cree una cuenta en tu empresa. Los objetos Customer permiten reutilizar métodos de pago y hacer el seguimiento de varios pagos.

Command Line
cURL
curl https://api.stripe.com/v1/customers \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d name="Jenny Rosen" \ --data-urlencode email="jennyrosen@example.com"

La creación correcta devuelve el objeto Customer. Puedes inspeccionar el objeto en busca de la id del cliente y almacenar el valor en tu base de datos para recuperarlo más tarde.

Puedes encontrar a estos clientes en la página Clientes del Dashboard.

Crea una sesión de Checkout
Lado del cliente
Lado del servidor

Agrega un botón de confirmación de compra a tu sitio web que llame a un punto de conexión del lado del servidor para crear una sesión de Checkout.

También puedes crear una Checkout Session para un cliente existente, lo que te permite completar previamente los campos de Checkout con información de contacto conocida y unificar tu historial de compras para ese cliente.

checkout.html
<html> <head> <title>Buy cool new product</title> </head> <body> <!-- Use action="/create-checkout-session.php" if your server is PHP based. --> <form action="/create-checkout-session" method="POST"> <button type="submit">Checkout</button> </form> </body> </html>

Una sesión de Checkout es la representación programática de lo que ve tu cliente cuando es redirigido al formulario de pago. Puedes configurarla con opciones como estas:

  • Partidas a cobrar
  • Monedas que se utilizarán

Debes compeltar success_url con el valor de la URL de una página en tu sitio web a la que Checkout redirige al cliente después de que efectúa el pago. Opcionalmente, también puedes proporcionar un valor cancel_url de una página en tu sitio web a la que Checkout redirige al cliente si finaliza el proceso de pago antes de que se complete.

Nota

Las Checkout Sessions vencen 24 horas después de su creación de forma predeterminada.

Después de crear una sesión de Checkout, redirige a tu cliente a la URL devuelta en la respuesta.

Ruby
# This example sets up an endpoint using the Sinatra framework. require 'json' require 'sinatra' require 'stripe' # Set your secret key. Remember to switch to your live secret key in production. # See your keys here: https://dashboard.stripe.com/apikeys Stripe.api_key =
'sk_test_BQokikJOvBiI2HlWgH4olfQ2'
post '/create-checkout-session' do session = Stripe::Checkout::Session.create({ line_items: [{ price_data: { currency: 'usd', product_data: { name: 'T-shirt', }, unit_amount: 2000, }, quantity: 1, }], mode: 'payment', # These placeholder URLs will be replaced in a following step. success_url: 'https://example.com/success', cancel_url: 'https://example.com/cancel', }) redirect session.url, 303 end

Métodos de pago

De forma predeterminada, Stripe habilita las tarjetas y otros métodos de pago comunes. Puedes activar o desactivar métodos de pago individuales en el Dashboard de Stripe. En Checkout, Stripe evalúa la moneda y las restricciones y, a continuación, presenta al cliente de forma dinámica los métodos de pago admitidos.

Para ver cómo se muestran tus métodos de pago a los clientes, introduce una ID de transacción o establece el importe y la moneda de un pedido en el Dashboard.

Puedes habilitar Apple Pay y Google Pay en tu configuración de métodos de pago. De forma predeterminada, Apple Pay está habilitado y Google Pay está deshabilitado. Sin embargo, en algunos casos, Stripe los filtra incluso cuando están habilitados. Filtramos Google Pay si habilitas el cálculo automático de impuestos sin recopilar una dirección de envío.

Las páginas alojadas en Stripe de Checkout no necesitan cambios de integración para habilitar Apple Pay o Google Pay. Stripe gestiona estos pagos de la mima manera que otros pagos con tarjeta.

Confirma tu punto de conexión

Confirma que tu punto de conexión es accesible iniciando tu servidor web (por ejemplo, localhost:4242) y ejecutando el siguiente comando:

Command Line
curl -X POST -is "http://localhost:4242/create-checkout-session" -d ""

Debes ver una respuesta en tu terminal parecida a esta:

Command Line
HTTP/1.1 303 See Other Location: https://checkout.stripe.com/c/pay/cs_test_... ...

Pruebas

Ya deberías tener un botón de confirmación de compra para redirigir al cliente a Stripe Checkout.

  1. Haz clic en el botón de confirmación de compra.
  2. Serás redirigido al formulario de pago de Stripe Checkout.

Si tu integración no funciona:

  1. Abre la pestaña Red en las herramientas de desarrollador de tu navegador.
  2. Haz click en el botón de confirmación de compra y confirma que se le haya enviado una solicitud XHR a tu punto de conexión de lado del servidor (POST /create-checkout-session).
  3. Verifica que la solicitud devuelva un código de estado 200.
  4. Usa console.log(session) dentro del oyente de click del botón para confirmar que se devolvieron los datos correctos.

Para obtener más información sobre cómo configurar y probar tu integración de Checkout alojado, consulta Aceptar un pago.

Guardar método de pago
Lado del servidor

Después de configurar tu integración de Checkout alojado, elige una configuración para tu integración con el fin de guardar los métodos de pago utilizados por tus clientes.

De forma predeterminada, los métodos de pago utilizados para realizar pagos únicos con Checkout no están disponibles para su uso futuro.

Guarda los métodos de pago para cargarlos fuera de sesión

Puedes configurar Checkout para que guarde los métodos de pago utilizados para realizar un pago único especificando el argumento payment_intent_data.setup_future_usage. Esta opción es útil si necesitas capturar un método de pago en el archivo para usarlo en comisiones futuras, como comisiones de cancelación o de no presentación.

Command Line
cURL
curl https://api.stripe.com/v1/checkout/sessions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d customer_creation=always \ -d "line_items[0][price_data][currency]"=usd \ -d "line_items[0][price_data][product_data][name]"=T-shirt \ -d "line_items[0][price_data][unit_amount]"=2000 \ -d "line_items[0][quantity]"=1 \ -d mode=payment \ --data-urlencode success_url="https://example.com/success.html" \ --data-urlencode cancel_url="https://example.com/cancel.html" \ -d "payment_intent_data[setup_future_usage]"=off_session

Si utilizas Checkout en modo subscription, Stripe guarda automáticamente el método de pago para usarlo en pagos posteriores. Los métodos de pago con tarjeta guardados en los clientes que utilizan el modo setup_future_usage o subscription no aparecen en caso de devolución en Checkout (más información a continuación). Te recomendamos que utilices texto personalizado para vincular los términos relevantes relacionados con el uso de la información de pago guardada.

Precaución

Las leyes mundiales sobre privacidad son complicadas y están llenas de matices. Te recomendamos que te comuniques con tu equipo legal y de privacidad antes de implementar setup_future_usage ya que podría afectar a tu marco existente de cumplimiento de la normativa de privacidad. Consulta la guía emitida por la Junta Europea de Protección para obtener más información sobre cómo guardar los datos de pago.

Guarda los métodos de pago para completarlos previamente en Checkout

De forma predeterminada, Checkout utiliza Link para ofrecer a tus clientes la opción de guardar y reutilizar de forma segura su información de pago. Si prefieres administrar los métodos de pago tú mismo, usa saved_payment_method_options.payment_method_save al crear una sesión de Checkout para que tus clientes puedan guardar sus métodos de pago para futuras compras en Checkout.

Command Line
cURL
curl https://api.stripe.com/v1/checkout/sessions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d customer_creation=always \ -d "line_items[0][price_data][currency]"=usd \ -d "line_items[0][price_data][product_data][name]"=T-shirt \ -d "line_items[0][price_data][unit_amount]"=2000 \ -d "line_items[0][quantity]"=1 \ -d mode=payment \ --data-urlencode success_url="https://example.com/success.html" \ --data-urlencode cancel_url="https://example.com/cancel.html" \ -d "saved_payment_method_options[payment_method_save]"=enabled

Si pasas este parámetro ya sea en modo de pago o suscripción, se muestra una casilla de verificación opcional que les permite a los clientes guardar explícitamente su método de pago para futuras compras. Cuando los clientes marcan esta casilla, Checkout guarda el método de pago con allow_redisplay: always. Checkout usa este parámetro para determinar si un método de pago puede completarse previamente en futuras compras. Al usar saved_payment_method_options.payment_method_save, no necesitas especificar setup_future_usage para guardar el método de pago.

El uso de saved_payment_method_options.payment_method_save requiere un Customer. Para guardar a un nuevo cliente, configura la customer_creation de la sesión de Checkout en always. De lo contrario, la sesión no guardará el cliente ni el método de pago.

Si no se especifica payment_method_save o si el cliente no acepta guardar el método de pago, Checkout aún guardará los métodos de pago creados en modo subscription o con setup_future_usage. Estos métodos de pago tienen un valor allow_redisplay de limited, lo que evita que se completen previamente para la devolución de compras y te permite cumplir con las reglas de la red de tarjetas y las normativas de protección de datos. Aprende a cambiar el comportamiento predeterminado habilitado por estos modos y a cambiar o anular el comportamiento allow_redisplay.

Nota

Puedes usar Checkout para guardar tarjetas y otros métodos de pago para cargarlos fuera de la sesión, pero Checkout solo completa automáticamente las tarjetas guardadas. Obtén información sobre cómo completar automáticamente las tarjetas guardadas. Para guardar un método de pago sin un pago inicial, usa Checkout en modo de configuración.

¿Te fue útil esta página?
SíNo
¿Necesitas ayuda? Ponte en contacto con soporte.
Únete a nuestro programa de acceso anticipado.
Echa un vistazo a nuestro registro de cambios.
¿Tienes alguna pregunta? Contacto.
¿LLM? Lee llms.txt.
Con tecnología de Markdoc