Prefere não migrar? Você pode continuar usando sua integração atual, mas os novos recursos não estarão presentes. Os novos planos ou preços recorrentes que você criar podem ser usados no parâmetro plan das chamadas de API existentes.
Visão geral de produtos e preços
Preços formam uma entidade nova e básica da Stripe que funciona em assinaturas, faturas e no Checkout. Cada preço fica vinculado a um único produto, e cada produto pode ter diversos preços. Diferentes mercadorias ou níveis de um serviço podem ser representados por produtos. Os preços desse produto devem ser representados pela entidade preços.
Os preços definem o preço inicial, a moeda e, no caso de produtos recorrentes, o ciclo de faturamento. Dessa forma, você pode alterar ou acrescentar preços sem mudar os detalhes do produto vendido. Por exemplo, você pode ter um só preço, em categoria “ouro”, de US$ 10/mês, US$ 100/ano, € 9/mês e € 90/ano. Ou talvez você venda uma camiseta azul, que custa US$ 20 e € 15.
Planos e SKUs (somente para cliente) podem ser usados na nova integração sempre que a API Prices for aceita. Crie um produto e preço pela API ou pelo Dashboard.
Pagamentos avulsos
A integração de servidor e cliente mudou nos seguintes pontos para pagamentos avulsos:
Em vez de itens de linha específicos (ou seja, nome, valor e moeda), a criação de uma Sessão do Checkout exige um produto e, geralmente, um preço.
Em vez de definir cada campo em line_items, o Checkout usa os objetos de produto e preço correspondentes para definir o nome, descrição, valor, moeda e imagens. Você pode criar produtos e preços com a API ou o Dashboard.
Sem preços
Com preços
line_items.name
product.name
line_items.description
product.description
line_items.amount
price.unit_amount
price_data.unit_amount (se definido quando a Sessão do Checkout for criada)
line_items.currency
price.currency
price_data.currency (se definido quando a Sessão do Checkout for criada)
line_items.images
product.images (exibe a primeira imagem enviada)
Código do lado do servidor para itens em linha
Antes, só era possível criar itens para uso avulso em linha. Com o sistema de preços, você pode continuar configurando seus itens em linha, mas também pode definir preços dinamicamente com price_data ao criar a Sessão do Checkout.
Ao criar a Sessão do Checkout com price_data, indique um ID de produto existente com price_data.product ou defina os dados do produto dinamicamente, com price_data.product_data. O exemplo a seguir demonstra o fluxo de criação de um item avulso.
Com esta nova integração, você pode criar um catálogo de produtos e preços logo no início, sem precisar definir valor, moeda e nome, sempre que criar uma sessão do Checkout.
Você pode criar um produto e preço com a API Prices ou pelo Dashboard. Será preciso usar o ID do preço para criar a Sessão do Checkout. O exemplo a seguir mostra como criar um produto e um preço pela API:
A integração de servidor e cliente mudou nos seguintes pontos para pagamentos recorrentes:
Todos os itens são passados em um só campo line_items, em vez de em subscription_data.items.
modo agora é obrigatório. Defina mode=subscription se houver itens recorrentes na sessão.
O código do lado do cliente continua igual. Planos existentes podem ser usados sempre que forem aceitos preços recorrentes.
Código do lado do servidor com planos
Veja um exemplo de antes e depois da Sessão do Checkout com uma avaliação gratuita em um plano existente, que pode ser usado também com um preço. O plano agora é passado para line_items em vez de subscription_data.items.
O código do lado do servidor para preços recorrentes com tarifa de configuração
Se você tiver planos recorrentes com uma tarifa de configuração avulsa, crie o produto e o preço representando a tarifa avulsa antes de criar a Sessão do Checkout. Consulte a tabela de mapeamento para saber como os antigos campos line_items aparecem na nova integração. Você pode criar um produto e preço pela API Prices ou pelo Stripe Dashboard. Você tambem pode criar o item avulso em linha. O exemplo a seguir usa uma ID de preço existente:
Em vez de listar itens com display_items, o objeto da Sessão do Checkout usa line_items. O campo line_items não renderiza por padrão como display_items, mas você pode incluí-lo com expand ao criar a Sessão do Checkout:
Como line_items pode ser incluído, a resposta do webhookcheckout.session.completed já não lista os itens por padrão. O objeto de resposta menor permite que você receba os webhooks do Checkout mais rápido. Você pode recuperar itens com o novo endpoint de line_items:
Welcome to the Stripe Shell!
Stripe Shell is a browser-based shell with the Stripe CLI pre-installed. Log in to your
Stripe account and press Control + Backtick (`) on your keyboard to start managing your Stripe
resources in test mode.
- View supported Stripe commands:
- Find webhook events:
- Listen for webhook events:
- Call Stripe APIs: stripe [api resource] [operation] (e.g., )
O Stripe Shell oferece uma melhor experiência em desktops.