# Prueba tu integración de Billing Aprende a probar tu integración de Billing para asegurarte de que esté lista para producción. - Usa [tarjetas](https://docs.stripe.com/testing.md#cards) de prueba y [números de cuenta](https://docs.stripe.com/testing.md#test-account-numbers) para activar diferentes escenarios, como errores en los pagos o una autenticación obligatoria. - Usa [clocks de prueba](https://docs.stripe.com/billing/testing/test-clocks.md) para simular objetos de Billing a lo largo del tiempo y probar eventos en diferentes momentos clave, como el final de una prueba gratuita o plan anual. - Consulta la [documentación general sobre pruebas](https://docs.stripe.com/testing.md) para informarte sobre las pruebas fundamentales que son comunes a todo Stripe. Prueba de manera minuciosa tu integración antes de exponerla a los clientes o usarla para una actividad en modo activo. Utiliza los recursos de esta página y las pautas organizacionales (por ejemplo, manuales de operación, mediciones de calidad o listas de verificación de desarrollo) a fin de determinar si tu integración está lista para la producción. ## Principios del modo activo Antes de llevar tu integración a modo activo, revisa estas listas de verificación de Stripe: - [Lista de verificación de cuentas](https://docs.stripe.com/get-started/account/checklist.md) - [Lista de verificación de desarrollo](https://docs.stripe.com/get-started/checklist/go-live.md) - [Lista de verificación del sitio web](https://docs.stripe.com/get-started/checklist/website.md) Así es cómo se ve un flujo de integración típico. Una integración básica de Billing (See full diagram at https://docs.stripe.com/billing/testing) > #### 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). Para integraciones de suscripciones e ingresos recurrentes, asegúrate de que, como mínimo, los siguientes componentes funcionen según lo previsto. La tabla contiene las notificaciones de eventos para cada componente. Puedes configurar tu integración para escuchar estos eventos con el *webhook* (A webhook is a real-time push notification sent to your application as a JSON payload through HTTPS requests). Lee esta guía para obtener más información sobre las [notificaciones de eventos](https://docs.stripe.com/billing/testing.md#webhooks) y las pruebas. | Componente | Descripción | Eventos | | ------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | **Creación de la cuenta del cliente** | Asegúrate de que tu integración pueda recopilar correctamente la información necesaria para crear un registro de cliente en Stripe. Tus clientes pueden ingresar esa información mediante Payment Links, Checkout, *Elements* (A set of UI components for building a web checkout flow. They adapt to your customer's locale, validate input, and use tokenization, keeping sensitive customer data from touching your server) o un formulario de pago completamente personalizado creado con la [API de Stripe](https://docs.stripe.com/api.md). Independientemente del formulario que uses, asegúrate de que el objeto `Account` configurado por el cliente o el `Customer` Object quede guardado en Stripe. Puedes usar el Dashboard o la API para ver y [gestionar clientes](https://docs.stripe.com/billing/customer.md#manage-customers). | - `v2.core.account.created` - `v2.core.account[configuration.customer].updated` - `customer.created` - `customer.subscription.created` | | **Invoicing** | Las suscripciones generan *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) al final de cada período de facturación. En función de tu método de cobro, puedes enviar una factura para cobrar el pago a plazo vencido o para confirmar un cargo automático. Asegúrate de que la integración genere y permita enviar las facturas como esperas. Lee la guía para obtener más información sobre cómo crear y administrar las [facturas de las suscripciones](https://docs.stripe.com/billing/invoices/subscription.md). Puedes usar clocks de prueba para simular los períodos de facturación, lo que incluye generar y enviar facturas. Lee la guía de clocks de prueba para obtener información sobre los [casos de uso](https://docs.stripe.com/billing/testing/test-clocks/api-advanced-usage.md#use-cases) específicos de prueba. | - `invoice.created` - `invoice.finalized` - `invoice.finalization_failed` - `invoice.paid` - `invoice.payment_action_required` - `invoice.payment_failed` - `invoice.upcoming` - `invoice.updated` | | **Gestión de suscripciones** | Configura el *portal de clientes* (The customer portal is a secure, Stripe-hosted page that lets your customers manage their subscriptions and billing details) para que tus clientes puedan administrar sus *subscripciones* (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) e información de pago. Para probarlo, crea una suscripción 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). Luego, inicia sesión en el portal como el usuario de prueba y actualiza la suscripción. Consulta el Dashboard o la API para ver si la suscripción refleja el cambio del cliente. Lee la [guía de integración](https://docs.stripe.com/customer-management.md) para obtener información sobre cómo configurar el portal de clientes. | - `customer.subscription.deleted` - `customer.subscription.paused` - `customer.subscription.resumed` - `customer.subscription.updated` | | **Pruebas** | Ofrece a los clientes un período de prueba de tu servicio. Para probar que tu período de prueba esté configurado correctamente, puedes crear un clock de prueba. La suscripción debe generar una factura de valor cero para el período de prueba. [Cómo probar los períodos de prueba con clocks de prueba](https://docs.stripe.com/billing/testing.md#trials). Para obtener más información sobre cómo funcionan los perídos de prueba, lee la [guía de períodos de pruebas de la suscripción](https://docs.stripe.com/billing/subscriptions/trials.md). | - `customer.subscription.trial_will_end` - `customer.subscription.updated` | | **Pagos fallidos** | Los pagos de tus clientes pueden fallar por muchos motivos. Asegúrate de que la integración pueda gestionar las fallas, incluidos los reintentos de pago. [Aprende a hacer pruebas con pagos fallidos](https://docs.stripe.com/billing/testing.md#payment-failures). | - `invoice.finalization_failed` - `invoice.payment_failed` - `invoice.payment_action_required` | ## Clocks de prueba Los clocks de prueba te permiten simular objetos de Billing, como *subscripciones* (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), a lo largo del tiempo en el *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). De esta manera, no tienes que esperar un año para ver cómo tu integración gestiona un pago que no se realizó correctamente para obtener una renovación anual. Los clocks de prueba no requieren programación: puedes crear simulaciones en el Dashboard. También puedes acceder a ellos a través de la API. Obtén más información sobre los [clocks de prueba](https://docs.stripe.com/billing/testing/test-clocks.md) y sus [casos de uso](https://docs.stripe.com/billing/testing/test-clocks.md) habituales. ## Probar períodos de prueba de suscripciones Imaginemos que deseas que los clientes prueben tu producto de forma gratuita durante siete días antes de empezar a pagar y quieres recopilar la información de pago por adelantado. Para simular esta situación mediante el uso del clock de prueba, sigue estos pasos: - Crea una nueva simulación y configura la `frozen_time` al 1 de enero. - Agrega un cliente e incluye su método de pago. En este caso, usa una [tarjeta de prueba](https://docs.stripe.com/testing.md#cards) 4242424242424242. - Crea una suscripción y agrega un período de prueba gratuita de siete días: #### Dashboard Para agregar un período de prueba a una suscripción existente a través del Dashboard: Busca la suscripción que deseas cambiar. 1. Haz click en **Acciones**. 1. Haz click en **Actualizar suscripción**. 1. Haz click en **Agregar período de prueba** e ingresa “siete” en el campo **Días de prueba gratuita**. 1. Haz click en **Actualizar suscripción**. #### API Para iniciar la suscripción de un cliente con un período de prueba gratuito, especifica un argumento `trial_period_days=7` al crear la suscripción: #### Accounts v2 ```curl curl https://api.stripe.com/v1/subscriptions \ -u "<>:" \ -d "customer_account={{CUSTOMERACCOUNT_ID}}" \ -d "items[0][price]={{PRICE_ID}}" \ -d trial_end=1610403705 ``` #### Customers v1 ```curl curl https://api.stripe.com/v1/subscriptions \ -u "<>:" \ -d "customer={{CUSTOMER_ID}}" \ -d "items[0][price]={{PRICE_ID}}" \ -d trial_end=1610403705 ``` - Después de crear una suscripción con un período de prueba gratuita de siete días, se crea una suscripción en estado `trialing` y se genera una factura de USD 0.00 debido a la prueba gratuita. - Adelanta la fecha al 5 de enero para ver la notificación del evento [customer.subscription.trial_will_end](https://docs.stripe.com/api/events/types.md#event_types-customer.subscription.trial_will_end). Stripe envía la notificación tres días antes de que finalice la prueba. Puedes usar este evento de webhook para informar a tus clientes que el periodo de prueba finalizará pronto. - Adelanta la fecha hasta el 8 de enero para verificar que la suscripción ahora aparezca como `paid`. Se crea una factura por 50 USD. - Adelanta la fecha de a un ciclo (por ejemplo, hasta el 8 de febrero para una suscripción mensual) para verificar que la suscripción se renueve correctamente. ### Probar períodos de prueba sin clocks de prueba Para probar cómo tu integración gestiona los períodos de prueba y ver los resultados sin tener que esperar a que se complete un período de prueba real, crea una *subscripción* (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) nueva con un valor `trial_end` establecido en unos minutos después. Si usas Checkout, establece el valor de [trial_end](https://docs.stripe.com/api/subscriptions/create.md#create_subscription-trial_end) en al menos dos días. Con este método, no verás la notificación del evento `customer.subscription.trial_will_end` (que se produce tres días antes de que finalice la prueba). En todos los demás aspectos, se comporta igual que en una suscripción con un período de prueba más largo. ## Probar las notificaciones de webhooks relacionadas con suscripciones Las integraciones de suscripciones dependen ampliamente de los *webhooks* (A webhook is a real-time push notification sent to your application as a JSON payload through HTTPS requests). Configura un punto de conexión de webhook en tu servidor y especifica qué notificaciones de eventos deseas escuchar. Stripe emite notificaciones para eventos como una actualización o una cancelación de suscripción. Para poner a prueba los webhooks, crea suscripciones de prueba reales o activa notificaciones de eventos con la [CLI de Stripe](https://docs.stripe.com/stripe-cli.md) o a través del [Dashboard](https://dashboard.stripe.com/test/account/webhooks). Después de configurar la CLI de Stripe y vincularla a tu cuenta de Stripe, puedes activar eventos del [ciclo de vida de la suscripción](https://docs.stripe.com/billing/subscriptions/overview.md#subscription-lifecycle) para probar la integración de tu webhook. Si utilizas la CLI de Stripe para activar eventos, puedes ver las notificaciones de eventos en tu servidor a medida que llegan, lo que te permite verificar la integración de tu webhook directamente sin túneles de red ni firewalls. Cuando utilizas la CLI de Stripe o el Dashboard para activar eventos, el evento que recibe tu webhook contiene datos falsos que no se corresponden con los datos de la suscripción. La forma más confiable de probar las notificaciones de webhooks consiste en crear suscripciones de prueba reales y gestionar los eventos correspondientes. La siguiente tabla describe los eventos más comunes relacionados con las suscripciones y, cuando corresponda, sugiere qué medidas tomar para gestionar los eventos. > La API Accounts v2 está en GA para los usuarios de Connect y en versión preliminar pública para otros usuarios de Stripe. > > Independientemente de si usas objetos de [Accounts v2](https://docs.stripe.com/accounts-v2/use-accounts-as-customers.md) o [Customer](https://docs.stripe.com/api/customers.md) para representar a tus clientes, usa los eventos `customer.subscription` para realizar el seguimiento de los eventos de suscripción. | Evento | Descripción | | ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | `v2.core.account.created` | Se envía cuando se crea correctamente una [Account v2](https://docs.stripe.com/api/v2/core/accounts/object.md). | | `customer.created` | Se envía cuando se crea correctamente un objeto [Customer](https://docs.stripe.com/api/customers/object.md). | | `customer.subscription.created` | Se envía cuando se crea la suscripción. El `status` de la suscripción puede ser `incomplete` si se necesita la autenticación del cliente para completar el pago o si se establece `payment_behavior` en [default_incomplete](https://docs.stripe.com/api/subscriptions/create.md#create_subscription-payment_behavior). | | `customer.subscription.deleted` | Se envía cuando se termina la suscripción de un cliente. | | `customer.subscription.paused` | Se envía cuando el `estado` de una suscripción cambia a `pausado`. Por ejemplo, cuando [configuras](https://docs.stripe.com/api/subscriptions/create.md#create_subscription-trial_settings-end_behavior-missing_payment_method) una suscripción en pausa cuando finaliza una [prueba sin cargo sin un método de pago](https://docs.stripe.com/billing/subscriptions/trials/free-trials.md#create-free-trials-without-payment). La facturación no se producirá hasta que se [reanude la suscripción (/API/suscriptions/resume). No enviamos este evento si [suspendes el cobro de pagos](https://docs.stripe.com/billing/subscriptions/pause-payment.md) porque se siguen creando facturas durante ese período. | | `customer.subscription.resumed` | Se envía cuando reanudas una suscripción en estado `suspendido`. Esto no se aplica cuando [despausas el cobro de pagos](https://docs.stripe.com/billing/subscriptions/pause-payment.md#unpausing). | | `customer.subscription.trial_will_end` | Se envía tres días antes de que [finalice el período de prueba](https://docs.stripe.com/billing/subscriptions/trials.md). Si el periodo de prueba es menor de tres días, este evento se activa. | | `customer.subscription.updated` | Se envía cuando se inicia o [cambia](https://docs.stripe.com/billing/subscriptions/change.md) una suscripción. Por ejemplo, este evento se activa cuando se renueva una suscripción, se agrega un cupón, se aplica un descuento, se agrega una partida de factura o se cambia de plan. | | `entitlements.active_entitlement_summary.updated` | Se envía cuando se actualizan los derechos activos de un cliente. Cuando recibas este evento, puedes proporcionar o anular el acceso a las funciones de tu producto. Lee más sobre [integración con derechos](https://docs.stripe.com/billing/entitlements.md). | | `invoice.created` | Se envía cuando se crea una factura para una suscripción renovada o una nueva. Si Stripe no recibe una respuesta correcta al evento `invoice.created`, la finalización de todas las facturas con [cobro automático](https://docs.stripe.com/invoicing/integration/automatic-advancement-collection.md) se retrasará hasta 72 horas. Obtén más información sobre [cómo finalizar facturas](https://docs.stripe.com/invoicing/integration/workflow-transitions.md#finalized). - Para responder a la notificación, envía una solicitud a la API [Finalize an invoice](https://docs.stripe.com/api/invoices/finalize.md). | | `invoice.finalized` | Se envía cuando una factura se finaliza correctamente y está lista para pagarse. - Puedes enviar la factura al cliente. Consulta la [finalización de la factura](https://docs.stripe.com/invoicing/integration/workflow-transitions.md#finalized) para obtener más información. - Según tu configuración, cobramos automáticamente al método de pago predeterminado o intentamos el cobro. Consulta los [correos electrónicos posteriores a la finalización](https://docs.stripe.com/invoicing/integration/workflow-transitions.md#emails) para obtener más información. | | `invoice.finalization_failed` | No se pudo finalizar la factura. Obtén más información sobre [cómo gestionar los errores en la finalización de facturas](https://docs.stripe.com/tax/customer-locations.md#finalizing-invoices-with-finalization-failures) y la [finalización de facturas](https://docs.stripe.com/invoicing/integration/workflow-transitions.md#finalized). - Inspecciona el [last_finalization_error](https://docs.stripe.com/api/invoices/object.md#invoice_object-last_finalization_error) de la factura para determinar la causa del error. - Si usas Stripe Tax, marca el campo [automatic_tax](https://docs.stripe.com/api/invoices/object.md#invoice_object-last_finalization_error) del objeto `Factura`. - Si `automatic_tax[status]=requires_location_inputs`, la factura no puede finalizarse y los pagos no se pueden cobrar. Notifica al cliente y cobra la [ubicación del cliente](https://docs.stripe.com/tax/customer-locations.md) requerida. - Si `automatic_tax[status]=failed`, reintenta la solicitud más tarde. | | `invoice.paid` | Se envía cuando la factura se paga correctamente. Puedes brindar acceso a tu producto cuando recibas este evento y el `status` de la suscripción sea `active`. | | `invoice.payment_action_required` | Se envía cuando la factura requiere la autenticación del cliente. Aprende a gestionar la suscripción cuando la factura [requiere intervención](https://docs.stripe.com/billing/subscriptions/overview.md#requires-action). | | `invoice.payment_failed` | Falló el pago de una factura. El estado del PaymentIntent cambia a `requires_action`, mientras que el de la suscripción sigue siendo `incomplete` *only* en la primera factura de la suscripción. Si falla un pago, puedes tomar varias medidas: - Notifica al cliente. - Realiza la [configuración de la suscripción](https://dashboard.stripe.com/settings/billing/automatic) en el Dashboard para habilitar [Smart Retries](https://docs.stripe.com/billing/revenue-recovery/smart-retries.md) y otras funcionalidades de recuperación de ingresos. - Si estás usando PaymentIntents, recopila la nueva información de pago y [confirma el PaymentIntent](https://docs.stripe.com/api/payment_intents/confirm.md). - Actualiza el [método de pago predeterminado](https://docs.stripe.com/api/subscriptions/object.md#subscription_object-default_payment_method) en la suscripción. | | `invoice.upcoming` | Se envía unos días antes de la renovación de la suscripción. La cantidad de días se basa en el número establecido en **Próximos eventos de renovación** en el [Dashboard](https://dashboard.stripe.com/settings/billing/automatic). Para las suscripciones existentes, el cambio del número de días entrará en vigencia en el siguiente período de facturación. De ser necesario, aún puedes agregar [más partidas de factura](https://docs.stripe.com/billing/invoices/subscription.md#adding-upcoming-invoice-items). | | `invoice.updated` | Se envía tanto cuando un pago falla como cuando se efectúa correctamente. Si sucede esto último, el atributo `paid` se establece en `true` y el `status` será `paid`. Si el pago falla, `paid` se establece en `false` y el `status` permanecerá `open`. Los pagos fallidos también activan el evento `invoice.payment_failed`. | | `payment_intent.created` | Se envía cuando se crea una [PaymentIntent](https://docs.stripe.com/api/payment_intents.md). | | `payment_intent.succeeded` | Se envía cuando un PaymentIntent ha completado correctamente un pago. | | `subscription_schedule.aborted` | Se envía cuando se cancela un calendario de suscripciones porque el retraso en el pago canceló la suscripción relacionada. | | `subscription_schedule.canceled` | Se envía cuando se cancela un calendario de suscripciones, lo que también cancela las suscripciones asociadas activas. | | `subscription_schedule.completed` | Se envía cuando se completan todas las [fases](https://docs.stripe.com/billing/subscriptions/subscription-schedules.md#subscription-schedule-phases) de un calendario de suscripciones. | | `subscription_schedule.created` | Se envía cuando se crea un nuevo calendario de suscripciones. | | `subscription_schedule.expiring` | Se envía siete días antes de que expire el calendario de suscripción. | | `subscription_schedule.released` | Se envía cuando se [lanza](https://docs.stripe.com/api/subscription_schedules/release.md) un calendario de suscripción, o cuando se pausa y desvincula dicho calendario de la suscripción. La suscripción permanece. | | `subscription_schedule.updated` | Se envía cuando se actualiza un calendario de suscripciones. | ## Probar pagos fallidos Utiliza [números de tarjetas de crédito de prueba](https://docs.stripe.com/testing.md#cards) específicos para activar pagos fallidos de suscripciones y *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). Algunas actualizaciones de suscripciones inducen a Stripe a facturar la suscripción e intentar el pago de inmediato (este intento sincrónico de pago puede darse en la factura inicial o en ciertas actualizaciones de facturas). Si este intento falla, el estado de la suscripción creada es `incomplete`. Para probar los efectos de un pago fallido en una suscripción activa, adjunta la tarjeta [**4000 0000 0000 0341**](https://docs.stripe.com/testing.md#cards) como método de pago predeterminado del cliente, pero usa un período de prueba para diferir el intento (basta un período de prueba que dure unos segundos o unos minutos). La suscripción se activa de inmediato, con un [borrador](https://docs.stripe.com/invoicing/overview.md#draft) de factura creada cuando finaliza el período de prueba. Se tarda aproximadamente una hora en abrir los cambios de estado de la factura. En ese momento, se intenta el cobro y el pago falla. Usa los [clocks de prueba](https://docs.stripe.com/billing/testing/test-clocks.md) para simular el avance del tiempo en el *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), lo que hace que los recursos de Billing, como las suscripciones, cambien de estado y activen *eventos de webhook* (A webhook is a real-time push notification sent to your application as a JSON payload through HTTPS requests). Esto te permite ver cómo tu integración maneja un pago que no se pudo realizar para una renovación trimestral o anual sin esperar un año. ## Probar pagos que exigen 3D Secure Usa la tarjeta [**4000 0027 6000 3184**](https://docs.stripe.com/testing.md#three-ds-cards) para simular la activación de 3D Secure para suscripciones y facturas. Cuando se desencadena el flujo de autenticación con 3D Secure, puedes probar la autenticación de un intento de pago o un intento de autenticación fallido en el cuadro de diálogo de 3D Secure que se abre. Si el pago se autentica correctamente, se concreta el pago de la factura. Si la factura pertenece a una suscripción cuyo estado es `incomplete`, se activa la suscripción. Cuando el intento de pago falla, el intento de autenticación da error y la factura sigue `open`. ## Prueba los pagos de facturas mediante transferencia bancaria Para probar los pagos manuales de facturas mediante transferencia bancaria, haz lo siguiente: 1. En el entorno de prueba, crea una factura, establece el método de cobro en `send_invoice` y establece la matriz `payment_settings[payment_method_types]` en `[customer_balance]`. 1. Busca la factura en el Dashboard y haz click en **Enviar**. 1. A tu cliente se le asignó un número de cuenta bancaria virtual único que puedes recuperar a través de la [API de instrucciones financieras](https://docs.stripe.com/payments/customer-balance/funding-instructions.md#create-funding-instructions). Los datos bancarios virtuales también aparecen en la página de facturas alojadas y en el PDF. ## Probar el método de pago predeterminado para facturas y suscripciones Utiliza [identificadores de tarjetas de prueba](https://docs.stripe.com/testing.md?testing-method=payment-methods#cards) específicos para simular los métodos de pago predeterminados que se utilizan para suscripciones y facturas. El método de pago proporcionado debe adjuntarse a la suscripción o al cliente de la factura configurándolo como `default_payment method`. Por ejemplo, si usas `pm_card_visa` para crear un método de pago Visa de prueba: 1. Llama al punto de conexión [PaymentMethod Attach](https://docs.stripe.com/api/payment_methods/attach.md) con `pm_card_visa` y al cliente previsto para la suscripción o factura 1. Con el ID del método de pago resultante, crea la suscripción o factura con este ID como `default_payment_method`. Ahora, la suscripción o factura cargará este método de pago. Obtén más información sobre cómo usar [métodos de pago predeterminados](https://docs.stripe.com/testing.md?testing-method=payment-methods#cards) para suscripciones y facturas. ## Probar la verificación de la identificación fiscal del cliente Usa estas identificaciones de impuestos mágicas para activar ciertas condiciones de verificación en entornos de prueba. El tipo de identificación fiscal debe ser el número de empresa australiana (ABN), número de IVA comunitario o número de impuesto al valor agregado (IVA GB) del Reino Unido. | Número | Tipo | | ----------- | -------------------------------------------------------- | | `000000000` | Verificación correcta | | `111111111` | Verificación incorrecta | | `222222222` | La verificación queda pendiente por un tiempo indefinido | ## Pruebas automatizadas Puedes configurar [pruebas automatizadas](https://docs.stripe.com/automated-testing.md) para tu integración. Para optimizar las pruebas, haz lo siguiente: - Ten en cuenta la [política de retención de datos](https://support.stripe.com/questions/test-mode-subscription-data-retention) para los datos relacionados con la suscripción en el entorno de prueba. - Evita reutilizar recursos como [Cupones](https://docs.stripe.com/api/coupons.md) y [Códigos de promoción](https://docs.stripe.com/api/promotion_codes.md) en todas las pruebas. - Usa el servidor HTTP [stripe-mock](https://github.com/stripe/stripe-mock), que se basa en la API de Stripe y refleja fielmente el comportamiento de la API. ## See also - [Entornos de prueba](https://docs.stripe.com/sandboxes.md) - [Varias cuentas](https://docs.stripe.com/get-started/account/multiple-accounts.md)