# Usar Boleto con suscripciones Descubre cómo usar Boleto con suscripciones. > #### Usa la API Accounts v2 para representar a los clientes > > La API Accounts v2 suele estar disponible para usuarios Connect y en versión preliminar pública para otros usuarios de Stripe. Si eres parte de la versión preliminar Accounts v2, debes especificar una [versión preliminar](https://docs.stripe.com/api-v2-overview.md#sdk-and-api-versioning) en tu código. > > Para solicitar el acceso a la versión preliminar Accounts v2, > > Para la mayoría de los casos de uso, te recomendamos que[modeles a tus clientes como objetos Account configurados por el cliente](https://docs.stripe.com/accounts-v2/use-accounts-as-customers.md) en lugar de usar objetos [Customer](https://docs.stripe.com/api/customers.md). Infórmate sobre cómo configurar [Boleto](https://docs.stripe.com/payments/boleto.md) como *método de pago* (PaymentMethods represent your customer's payment instruments, used with the Payment Intents or Setup Intents APIs). Boleto es un vale con un número que los *Customers* (Customer objects represent customers of your business. They let you reuse payment methods and give you the ability to track multiple payments) pueden obtener en un cajero automático, un banco, el portal en línea de un banco o una agencia autorizada. ## Habilitar Boleto Antes de que comiences con tu integración, ve a **Gestionar pagos que requieren confirmación** en la [configuración de suscripciones y correos electrónicos](https://dashboard.stripe.com/settings/billing/automatic) y habilita **Enviar un enlace alojado por Stripe para que los clientes confirmen sus pagos cuando sea necesario**. Ve a la configuración de tus [métodos de pago](https://dashboard.stripe.com/settings/payment_methods) y habilita Boleto como método de pago. Haz clic en **Configurar** para establecer la demora de la fecha de vencimiento del cupón. ## Decidir el método de cobro Puedes definir el método de cobro en el Dashboard o en la [API](https://docs.stripe.com/api/invoices/create.md#create_invoice-collection_method). Para las facturas, puedes elegir enviar una factura o cobrarle a tu cliente automáticamente. Si usas la API, los valores `send_invoice` y `charge_automatically` determinan el método de cobro. | | Enviar la factura | Cobrar automáticamente | | --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Cuándo usar | - Tu cliente no ha definido su método de pago preferido para pagar facturas o suscripciones. En este caso, lo conveniente es darle la opción de usar una tarjeta de crédito o Boleto. - Te faltan datos importantes del cliente que se necesitan para usar Boleto (nombre completo, dirección e identificación fiscal). | - Tu cliente ya ha elegido pagar sus facturas o suscripciones con Boleto. - Tienes los datos del cliente necesarios para crear una factura que utilice Boleto (nombre completo, dirección e identificación fiscal). | | Experiencia del cliente | - Tu cliente debe volver a ingresar sus datos personales (nombre completo, dirección e identificación fiscal) cada vez que envías una nueva factura o en cada período nuevo del servicio de suscripción. Este método de cobro no tiene en cuenta el método de pago predeterminado asociado a ese cliente. | - Tu cliente tiene configurado Boleto como método de pago predeterminado. El cliente recibe un correo electrónico con un vale de Boleto cada vez que le envías una factura o hay un período de servicio de suscripción. | | Fechas límite y vencimiento | - La factura debe contener una fecha de vencimiento. - Stripe crea el Boleto, independientemente de la fecha de vencimiento de la factura, tan pronto como tu cliente ingresa los datos necesarios. Debido a que cada Boleto tiene su propia fecha de vencimiento (el valor predeterminado es 3 días), la fecha de vencimiento de la factura y la fecha de vencimiento del Boleto no necesariamente coincidirán. El Boleto puede vencer antes o después de la factura. | - La factura no tiene fecha de vencimiento. - Stripe crea Boleto cuando el comerciante crea la factura con una fecha de vencimiento seleccionada (el valor predeterminado es 3 días). | ## Crear un cliente Crea un cliente por cada empresa o usuario nuevo al que le quieras facturar. Al crear un cliente nuevo, define un [perfil básico de cliente](https://docs.stripe.com/payments/boleto/set-up-subscription.md#customer-profile) que te ayude a generar facturas más útiles y habilita Smart Retries (si eres usuario de [Invoicing Plus](https://stripe.com/invoicing/pricing)). Después de configurar el cliente, podrás emitir facturas únicas o crear *suscripciones* (A Subscription represents the product details associated with the plan that your customer subscribes to. Allows you to charge the customer on a recurring basis). > Antes de crear un nuevo cliente, asegúrate de que el cliente no exista en el Dashboard. Si creas varias entradas de clientes para el mismo cliente, puedes tener problemas más adelante, por ejemplo, cuando necesites conciliar el historial de transacciones o coordinar los métodos de pago guardados. #### Dashboard Puedes crear y administrar clientes en la [página Clientes](https://dashboard.stripe.com/customers) cuando no quieras usar código para crear clientes o si quieres facturarle a un cliente de forma manual con una factura por única vez. También puedes crear un cliente en el Dashboard cuando se crea la factura. ### Crear un cliente Cuando creas un cliente nuevo, puedes definir los datos de facturación y de la cuenta, como el **correo electrónico**, el **nombre** y el **país**. También puedes establecer la moneda y el idioma preferidos del cliente, además de cualquier otro dato relevante. Para crear un cliente, sigue estos pasos: 1. Verifica que el cliente no exista. 1. En la página **Clientes**, haz click en **Agregar cliente** o presiona la tecla **N**. 1. Como mínimo, ingresa el **nombre** y el **correo electrónico de la cuenta** de tu cliente. 1. En el cuadro de diálogo, haz click en **Agregar cliente**. ### Editar un cliente Para editar el perfil de un cliente, sigue estos pasos: 1. En la página **Clientes**, busca el cliente que quieras modificar y haz click en su nombre. 1. En la página de datos de la cuenta, haz click en **Acciones** > **Editar información**. 1. Modifica el perfil del cliente. 1. Haz click en **Actualizar cliente**. ### Eliminar un cliente Para eliminar un cliente, sigue estos pasos: 1. En la página **Clientes**, busca el cliente que quieras eliminar. 1. Haz click en la casilla que se encuentra al lado del nombre del cliente y luego en **Eliminar**. También puedes ir a la página de datos del cliente y seleccionar **Acciones** > **Eliminar cliente**. #### API Antes de crear un nuevo cliente, verifica que no exista ese cliente. Por ejemplo, especifica una dirección de correo electrónico a la API para [enumerar todos los clientes](https://docs.stripe.com/api/customers/list.md). ```curl curl -G https://api.stripe.com/v1/customers \ -u "<>:" \ -d email={EMAIL_ADDRESS} ``` Aprende a crear un cliente nuevo que use el método de pago Boleto. Consulta [crear un cliente](https://docs.stripe.com/api/customers/create.md) para ver más detalles. #### Enviar una factura por correo electrónico ```curl curl https://api.stripe.com/v1/customers \ -u "<>:" \ --data-urlencode "email=joao@exemplo.com" \ -d "description=My first test customer" ``` #### Cobrar a los clientes automáticamente ### Configurar el cliente Para crear un cliente con `name`, `email` y `description`, agrega este código: ```curl curl https://api.stripe.com/v1/customers \ -u "<>:" \ -d "name=João da Silva" \ --data-urlencode "email=joao@exemplo.com" \ -d "description=My first test customer" ``` ### Crear el método de pago Boleto Para crear el método de pago Boleto, agrega este código: ```curl curl https://api.stripe.com/v1/payment_methods \ -u "<>:" \ -d type=boleto \ -d "boleto[tax_id]=000.000.000-00" \ -d "billing_details[name]=João da Silva" \ --data-urlencode "billing_details[email]=joao@exemplo.com" \ -d "billing_details[address][line1]=1234 Av. Paulista" \ -d "billing_details[address][city]=São Paulo" \ -d "billing_details[address][state]=SP" \ -d "billing_details[address][postal_code]=01310-000" \ -d "billing_details[address][country]=BR" ``` ### Asocia el método de pago Boleto a un cliente Para asociar el método de pago Boleto al cliente, agrega este código: ```curl curl https://api.stripe.com/v1/payment_methods/{{PAYMENT_METHOD_ID}}/attach \ -u "<>:" \ -d customer={{CUSTOMER_ID}} ``` ### Configura el método de pago predeterminado del cliente Para que Boleto sea el método de pago predeterminado de tu cliente, agrega este código: ```curl curl https://api.stripe.com/v1/customers/{{CUSTOMER_ID}} \ -u "<>:" \ -d "invoice_settings[default_payment_method]={{PAYMENT_ID}}" ``` ## Crear un producto y un precio Define todas tus ofertas comerciales y de productos en un solo lugar. Los *productos* (Products represent what your business sells—whether that's a good or a service) definen lo que vendes y los *precios* (Prices define how much and how often to charge for products. This includes how much the product costs, what currency to use, and the interval if the price is for subscriptions) indican cuánto y con qué frecuencia se debe cobrar. Esta es una entidad básica dentro de Stripe que funciona con *suscripciones* (A Subscription represents the product details associated with the plan that your customer subscribes to. Allows you to charge the customer on a recurring basis), *facturas* (Invoices are statements of amounts owed by a customer. They track the status of payments from draft through paid or otherwise finalized. Subscriptions automatically generate invoices, or you can manually create a one-off invoice) y [Checkout](https://docs.stripe.com/payments/checkout.md). Los precios habilitan los siguientes casos de uso: - Un proveedor de software que cobra el costo único de instalación siempre que un usuario crea una nueva suscripción. - Una tienda de comercio electrónico que hace envíos recurrentes de una caja de productos por USD 10 por mes y quiere ofrecerles a sus clientes la posibilidad de comprar complementos por única vez. - Una empresa de servicios profesionales que ahora puede crear una lista de servicios estándar desde donde escoger los ítems de cada factura en lugar de completar la factura a mano - Una organización sin fines de lucro que permite a los donantes definir un importe de donación recurrente por cliente. Puedes gestionar tu catálogo de productos con productos y precios. Los productos definen lo que vendes y los precios, cuánto y con qué frecuencia cobrar. Gestiona tus productos y sus precios en el Dashboard o a través de la API. #### Dashboard Si usaste el Dashboard en un *entorno de prueba* (A sandbox is an isolated test environment that allows you to test Stripe functionality in your account without affecting your live integration. Use sandboxes to safely experiment with new features and changes) para configurar tu empresa, puedes copiar cada uno de tus productos y pasarlos a modo activo usando **Copiar a modo activo** en la [página del Product catalog](https://dashboard.stripe.com/products). Usa nuestras bibliotecas oficiales para acceder a la API de Stripe desde tu aplicación. 1. Ve a la página **Catálogo de productos** y haz clic en **Agregar producto**. 1. Selecciona si quieres crear un **Producto único** o un **Producto recurrente**. 1. Dale un nombre a tu producto y asígnale un precio. #### API Aprende a crear [Productos](https://docs.stripe.com/api/products.md) y [Precios](https://docs.stripe.com/api/prices.md). > Para informarte sobre cómo empezar a usar la [CLI de Stripe](https://docs.stripe.com/stripe-cli.md) o la API, consulta la [Guía completa de integración de Invoicing](https://docs.stripe.com/invoicing/integration.md). ### Crear un producto Para crear un producto, ingresa su nombre: ```curl curl https://api.stripe.com/v1/products \ -u "<>:" \ -d "name=Gold Special" ``` ### Crear un precio [Precios](https://docs.stripe.com/api.md#prices) define cuánto cobrar por los productos y con qué frecuencia. Esto incluye cuánto cuesta el producto, qué moneda usar y el intervalo de facturación (cuando el precio es de una suscripción). Al igual que sucede con los productos, si tienes pocos precios, es preferible gestionarlos en el Dashboard. Usa el importe unitario para expresar los precios en la unidad más baja de la moneda, en este caso, centavos (USD 10 son 1,000 centavos, por lo que el importe unitario es 1000). Como alternativa, si no necesitas crear un precio para tu producto, puedes usar el parámetro [amount](https://docs.stripe.com/api/invoiceitems/create.md#create_invoiceitem-amount) durante la creación de la partida de factura. Para crear el precio y asignarlo al producto, especifica el ID de producto, el importe unitario y la moneda. En el siguiente ejemplo, el precio del producto “Gold Special“ es de USD 10: ```curl curl https://api.stripe.com/v1/prices \ -u "<>:" \ -d "product={{PRODUCT_ID}}" \ -d unit_amount=1000 \ -d currency=usd ``` > #### Precios localizados > > Cuando [creas partidas de factura](https://docs.stripe.com/api/invoiceitems/create.md) o cargos con la API, Stripe procesa el monto y las monedas que proporcionas de forma explícita. El precio localizado no se calcula automáticamente, y eres responsable de pasar el monto y las monedas correctas para la región de tu cliente. Recomendamos usar el parámetro [pricing.price](https://docs.stripe.com/api/invoiceitems/create.md#create_invoiceitem-pricing-price) con el fin de pasar el ID de precio. ## Crear una suscripción Puedes crear y actualizar suscripciones desde el Dashboard o la API. Usa la API si tienes un gran número de suscripciones que gestionar o si deseas gestionarlas mediante programación. > Consulta nuestra guía de integración para informarte sobre cómo [crear una integración de suscripciones completa](https://docs.stripe.com/billing/subscriptions/build-subscriptions.md). #### Dashboard ### Crear una suscripción Para crear una suscripción: 1. Ve a la página de **Pagos** > **Suscripciones**. 1. Haz click en **+Crear suscripción**. 1. Busca o agrega un cliente. 1. Ingresa el precio y los datos del producto, lo que te permite agregar varios productos, un cupón o una prueba a la suscripción. En la sección de opciones **Avanzadas**, puedes crear opcionalmente [umbrales para el consumo medido](https://docs.stripe.com/products-prices/pricing-models.md#usage-based-pricing) o agregar campos de [factura personalizada](https://docs.stripe.com/invoicing/customize.md). Cuando hayas terminado, haz clic en **Programar suscripción** o en **Iniciar suscripción**. Cuando programas una suscripción, puedes hacer que comience de inmediato, el próximo mes o en forma personalizada. Puedes finalizar la suscripción de inmediato, después de una serie de ciclos o personalizar una fecha. ### Editar una suscripción Para editar una suscripción: 1. Ve a la página de **Pagos** > **Suscripciones**. 1. Busca la suscripción que quieras modificar, haz clic en el menú de contenido adicional (⋯) y, a continuación, haz clic en **Actualizar suscripción**. También puedes hacer clic en el ✏ edit icon junto al nombre de la suscripción. Desde este menú, también puedes: - **Cancelar la suscripción**: Selecciona una fecha para cancelar la suscripción de inmediato, al final del período actual o en una fecha personalizada. También puedes seleccionar la opción de reembolsar el último pago de esta suscripción y crear una [nota de crédito](https://docs.stripe.com/invoicing/dashboard/credit-notes.md) para tus registros. - **Pausar el cobro del pago**: Selecciona la duración de la pausa (indefinida o con finalización en una fecha personalizada) y el comportamiento de las facturas durante la pausa. - **Compartir enlace de actualización de pago**: Genera un enlace que el cliente pueda usar para [actualizar el método de pago de la suscripción](https://docs.stripe.com/billing/subscriptions/payment-methods-setting.md#update-payment-method). 1. Haz los cambios a la suscripción. 1. Haz click en **Actualizar suscripción**. ### Eliminar una suscripción No puedes eliminar un objeto Subscription, pero puedes cancelarlo o suspender el cobro del pago. Consulta [cómo editar una suscripción](https://docs.stripe.com/payments/boleto/set-up-subscription.md#edit-subscription) para conocer esos detalles. #### API ### Crear una suscripción Cuando creas una [suscripción](https://docs.stripe.com/api/subscriptions.md), puedes enviar las facturas por correo electrónico al cliente o cobrarle automáticamente cada ciclo. #### Enviar una factura por correo electrónico Para crear una suscripción y enviar una factura por correo electrónico a tu cliente en cada período, ingresa el siguiente código: ```curl curl https://api.stripe.com/v1/subscriptions \ -u "<>:" \ -d customer={{CUSTOMER_ID}} \ -d "items[0][price]={{RECURRING_PRICE_ID}}" \ -d collection_method=send_invoice \ -d payment_behavior=default_incomplete \ -d "payment_settings[payment_method_types][0]=card" \ -d "payment_settings[payment_method_types][1]=boleto" \ -d days_until_due=3 ``` #### Cobrar a los clientes automáticamente Para crear una suscripción y cobrar automáticamente a tu cliente en cada período, ingresa el siguiente código: ```curl curl https://api.stripe.com/v1/subscriptions \ -u "<>:" \ -d customer={{CUSTOMER_ID}} \ -d "items[0][price]={{RECURRING_PRICE_ID}}" \ -d collection_method=charge_automatically \ -d payment_behavior=default_incomplete \ -d off_session=true ``` ### Usa las sesiones de Checkout También puedes crear una suscripción con las [sesiones de Checkout](https://docs.stripe.com/api/checkout/sessions.md). Stripe envía a tu cliente un Boleto generado previamente a su dirección de correo electrónico en cada ciclo de suscripción. ```curl curl https://api.stripe.com/v1/checkout/sessions \ -u "<>:" \ -d mode=subscription \ -d customer={{CUSTOMER_ID}} \ -d "line_items[0][price]={{RECURRING_PRICE_ID}}" \ -d "line_items[0][quantity]=1" \ -d "payment_method_options[boleto][expires_after_days]=3" \ --data-urlencode "success_url=https://example.com/success" ``` ### Usar calendarios de suscripciones Algunos clientes quieren programar su suscripción para que comience en el futuro o solo crear una cuenta por un año de servicio a la vez. Los [calendarios de suscripciones](https://docs.stripe.com/api/subscription_schedules.md) te permiten configurar fases con un precio recurrente para que comiencen en el futuro o configurarlas para que finalicen en una fecha concreta. Si quieres agrupar las compras únicas con el comienzo de una fase, puedes hacerlo usando `add_invoice_items` en una fase: #### curl ```bash curl https://api.stripe.com/v1/subscription_schedules \ -u <>: \ -d customer="{{CUSTOMER_ID}}" \ -d start_date=1780272000 \ -d "phases[0][items][0][price]={{RECURRING_PRICE_ID}}" \ -d "phases[0][add_invoice_items][0][price]={{PRICE_ID}}" ``` De esta manera, se programará una suscripción de USD 10 por mes que comenzará en el futuro, y la primera factura incluirá una comisión por única vez de USD 20. Si configuras `add_invoice_items` en fases futuras, no se generarán los ítems de factura hasta que comience esa fase. Si estableces `add_invoice_items` en la fase actual, los ítems de factura se generarán de inmediato. ## See also - [Cómo funcionan las suscripciones](https://docs.stripe.com/billing/subscriptions/overview.md)