Por que o modelo da OpenAI é o padrão
O faturamento SaaS tradicional não lida bem com o custo variável do uso de IA. O modelo da OpenAI resolve três problemas de uma só vez:- Receita previsível e baixo risco: como o uso da API é pré-pago, os usuários não podem acumular contas que não conseguem pagar. A OpenAI recebe o dinheiro antecipadamente, e o usuário o gasta conforme utiliza o serviço.
- Escalabilidade para desenvolvedores: uma recarga de $5 é uma barreira de entrada baixa. Conforme um aplicativo cresce, os desenvolvedores podem automatizar recargas ou comprar pacotes maiores. Começar é barato, e o uso pode crescer sem alterar o plano.
- Psicologia do usuário: créditos denominados em dólares americanos, em vez de “tokens” ou “pontos” abstratos, tornam o valor claro. O saldo funciona como uma conta pré-paga para serviços de IA, o que facilita o orçamento das empresas.
Como a OpenAI cobra
A OpenAI usa dois modelos de faturamento para diferentes usuários.- API (Pay-as-you-go): A API usa créditos pré-pagos denominados em dólares. Os usuários adicionam $5, $10, $50 ou mais às suas contas. Os créditos exibem um valor em dólares, mas não podem ser usados fora da OpenAI. A OpenAI cobra por token, com tarifas diferentes para tokens de entrada e de saída. Os créditos adquiridos expiram um ano após a compra e não são reembolsáveis (Central de Ajuda da OpenAI). Quando o saldo chega a $0, as chamadas da API falham.
- ChatGPT Plus, Business e Enterprise: Esses são planos de assinatura com preço fixo. O ChatGPT Plus custa $20 por mês, e o plano Business (anteriormente Team) custa $25 por usuário por mês quando cobrado mensalmente. Eles têm limites flexíveis de uso: usuários intensivos passam para um modelo menor em vez de serem bloqueados.
- Níveis de tarifa baseados em gastos: À medida que o gasto total aumenta ao longo do tempo, a conta desbloqueia limites de taxa de API mais altos. O acesso aumenta de acordo com o histórico de cobrança.
O que o torna único
Quatro características tornam a cobrança da OpenAI eficaz para serviços de IA:- Créditos denominados em moeda fiduciária: Os créditos são em dólares americanos, então parecem dinheiro. Os desenvolvedores podem ler diretamente o preço de uma solicitação.
- Validade longa: Os créditos adquiridos duram um ano, reduzindo a pressão de “use ou perca”. Os usuários se sentem confortáveis ao adicionar quantias maiores.
- Medição multidimensional: Os tokens de entrada e saída são rastreados separadamente, mas descontados do mesmo saldo. A OpenAI pode cobrar mais pelos tokens de saída, que são mais caros, do que pelos tokens de entrada.
- Níveis de confiança: Limites de taxa que aumentam com o gasto total recompensam clientes de longo prazo e os incentivam a permanecer.
Vantagens estratégicas
O modelo se reforça. Os baixos custos de entrada atraem desenvolvedores. Os créditos pré-pagos fornecem fluxo de caixa imediato. A precificação baseada em uso significa que a OpenAI ganha mais à medida que os desenvolvedores têm sucesso. As assinaturas adicionam uma base estável de receita proveniente de não desenvolvedores.Crie isso com Dodo Payments
Você pode criar o modelo de cobrança da OpenAI com Dodo Payments. Use Credit-Based Billing para o lado da API e assinaturas padrão para o lado do ChatGPT Plus.1
Create a Fiat Credit Entitlement
No dashboard do Dodo Payments, acesse Products → Credits e clique em Create Credit. Esse crédito é o saldo central de cada usuário.
- Credit Type: Fiat Credits, com Unit Currency definido como USD
- Credit Expiry: Custom, 365 dias (corresponde à validade de um ano da OpenAI) ou Never
- Rollover: Não é necessário (os créditos não são redefinidos a cada ciclo)
- Allow Overage: Desativado
2
Create Top-Up Products
Crie produtos de pagamento únicos para diferentes pacotes de créditos, como $5, $10, $50 e $100. Anexe seu crédito fiduciário a cada produto.Defina o número de créditos emitidos como o valor em dólares do pacote. Um pacote de $50 emite 50 créditos.
3
Create Usage Meters
Crie dois medidores para acompanhar o uso de tokens:
llm.input_tokens: agregação de soma na propriedadetokens.llm.output_tokens: agregação de soma na propriedadetokens.
Calculando Meter Units per Credit
Para corresponder à precificação do GPT-4o da OpenAI, calcule quantos tokens custam $1, que equivale a um crédito fiduciário:- Tokens de entrada: 1.000.000 tokens / $2,50 = 400.000 tokens por $1.
- Tokens de saída: 1.000.000 tokens / $10,00 = 100.000 tokens por $1.
4
Send Usage Events
Após cada solicitação de LLM, envie o uso ao Dodo Payments. Uma solicitação pode conter tanto o evento de entrada quanto o de saída. Este trecho reutiliza o
client da etapa anterior.5
Handle Balance Depletion
Verifique o saldo do usuário antes de processar uma solicitação da API. Se o saldo for zero ou negativo, rejeite a solicitação, por exemplo, com um status
402.Lidando com webhooks de saldo baixo
Notifique os usuários antes que cheguem a $0. Defina um Low Balance Threshold ao anexar o crédito e envie um e-mail ou uma notificação no aplicativo quando o webhookcredit.balance_low chegar.6
Build the ChatGPT Subscription Side (Optional)
Para oferecer um plano de assinatura como o ChatGPT Plus, crie um produto de assinatura separado no Dodo Payments. Ele não precisa de um entitlement de crédito.Para um plano Team, use cobrança baseada em usuários: um complemento por usuário cuja quantidade corresponde ao número de usuários.
Implementando limites flexíveis
Para criar limites flexíveis, acompanhe o uso dos usuários da assinatura com os mesmos medidores, mas sem vinculá-los a um crédito. Na sua aplicação, verifique o uso do período de cobrança atual.Acelere com o LLM Ingestion Blueprint
As etapas acima criam e enviam eventos de uso manualmente. O LLM Ingestion Blueprint, por outro lado, encapsula seu cliente OpenAI e acompanha os tokens automaticamente.inputTokens, outputTokens e totalTokens de cada resposta da API e os envia, junto com model, como metadados do evento. Defina Over Property do seu medidor como a chave de token que você deseja cobrar.
Implementando níveis de tarifa baseados em gastos
Os níveis de tarifa da OpenAI gerenciam a capacidade com base na confiança. Para criá-los, acompanhe o gasto acumulado de cada cliente.- Acompanhe o gasto acumulado: Escute os webhooks
payment.succeedede adicione o valor do pagamento a um campototal_spenddesse cliente no seu banco de dados. Os valores estão na menor unidade monetária, portanto 5000 equivale a $50,00. - Defina os níveis: Mapeie os valores de gasto para os limites de taxa:
- Nível 1: gasto de $0 a $50 -> 3 RPM
- Nível 2: gasto de $50 a $250 -> 10 RPM
- Nível 3: gasto de $250 ou mais -> 50 RPM
- Aplique os limites: No middleware da sua API, consulte o nível do cliente e aplique seu limite de taxa.
Exemplo completo de implementação: o proxy da API
Em produção, um proxy de API geralmente fica entre seus usuários e o provedor de LLM. O proxy autentica a solicitação, verifica os créditos e informa o uso. O handler abaixo implementa o proxy:Lidando com casos extremos
Um sistema de cobrança como o da OpenAI tem vários casos extremos para os quais é necessário se preparar.Condições de corrida
Um usuário com saldo baixo pode enviar várias solicitações ao mesmo tempo e exceder o saldo antes que qualquer evento seja processado. Para evitar isso, mantenha um pequeno buffer ou use um lock distribuído no saldo do cliente durante cada solicitação.Latência de ingestão de eventos
O Dodo Payments desconta créditos de forma assíncrona. Um worker em segundo plano processa novos eventos aproximadamente uma vez por minuto, portanto um desconto pode sofrer atraso em relação à chamada da API. Para uma aplicação rigorosa em tempo real, mantenha um cache local do saldo de cada usuário e atualize-o conforme você processa as solicitações.Tratamento de reembolsos
Reembolsar a compra de um pacote de créditos não remove os créditos concedidos. Ao reembolsar, desconte esses créditos manualmente com um débito: use Apply Credit/Debit na aba Credits do cliente ou a API Create Ledger Entry. Em seguida, atualize a visualização do saldo na sua aplicação para que os usuários não possam gastar créditos que já não possuem.Suporte a vários modelos
Para oferecer suporte a vários modelos com preços diferentes, escolha uma destas opções:- Medidores separados: Crie um conjunto de medidores por modelo, por exemplo
gpt-4o.input_tokensegpt-4o-mini.input_tokens, cada um com seu próprio Meter units per credit. - Eventos ponderados: Use um medidor e multiplique
tokenspor um peso antes de enviar o evento. Por exemplo, se o GPT-4o custar 10 vezes mais que o GPT-4o-mini, envie 10 vezes mais tokens para as solicitações do GPT-4o.
Visão geral da arquitetura
O fluxo abaixo mostra o processo pré-pago, desde a compra até o bloqueio das chamadas: Os medidores acompanham os tokens e descontam seu valor em dólares do saldo de crédito do usuário, de acordo com as tarifas configuradas. Sua aplicação bloqueia as chamadas quando o saldo chega a zero.Conclusão
Com o Dodo Payments, você pode combinar a cobrança baseada em uso com a previsibilidade dos créditos pré-pagos, como a OpenAI faz. Os clientes pagam antecipadamente, gastam conforme usam e adicionam créditos quando precisam de mais. Os mesmos componentes funcionam para uma grande plataforma de LLM ou uma pequena ferramenta de IA: um crédito fiduciário, produtos de recarga, medidores de tokens e uma verificação de saldo antes de cada solicitação.Principais recursos do Dodo usados
Estes recursos do Dodo Payments viabilizam a implementação:Credit-Based Billing
Gerencie créditos fiduciários pré-pagos e entitlements para seus usuários.
Usage-Based Billing
Acompanhe o uso detalhado, como tokens, e faça a cobrança correspondente.
One-Time Payments
Venda pacotes de créditos e recargas por meio do checkout.
Event Ingestion
Envie dados de uso em alto volume ao Dodo Payments.
Webhooks
Mantenha-se atualizado sobre alterações no saldo de créditos e alertas de saldo baixo.
LLM Ingestion Blueprint
Acompanhamento automático de tokens para OpenAI e outros provedores de LLM.