Why OpenAI’s Model is the Standard
La facturación SaaS tradicional no gestiona bien el coste variable del uso de la IA. El modelo de OpenAI resuelve tres problemas a la vez:- Ingresos predecibles y bajo riesgo: Como el uso de la API se paga por adelantado, los usuarios no pueden acumular facturas que no puedan pagar. OpenAI recibe el dinero por adelantado y el usuario lo consume a medida que utiliza el servicio.
- Escalabilidad para desarrolladores: Una recarga de $5 ofrece una barrera de entrada baja. A medida que crece una aplicación, los desarrolladores pueden automatizar las recargas o comprar paquetes más grandes. Empezar es económico y el uso puede crecer sin cambiar de plan.
- Psicología del usuario: Los créditos denominados en dólares estadounidenses, en lugar de “tokens” o “puntos” abstractos, dejan claro el valor. El saldo funciona como una cuenta prepaga para servicios de IA, lo que facilita la elaboración de presupuestos para las empresas.
How OpenAI Bills
OpenAI utiliza dos modelos de facturación para distintos usuarios.- API (Pay-as-you-go): La API utiliza créditos prepagados denominados en dólares. Los usuarios recargan sus cuentas con $5, $10, $50 o más. Los créditos muestran un valor en dólares, pero no pueden utilizarse fuera de OpenAI. OpenAI factura por token, con diferentes tarifas para los tokens de entrada y de salida. Los créditos comprados caducan un año después de la compra y no son reembolsables (Centro de ayuda de OpenAI). Cuando el saldo llega a $0, las llamadas a la API fallan.
- ChatGPT Plus, Business y Enterprise: Son suscripciones de tarifa fija. ChatGPT Plus cuesta $20 al mes, y el plan Business (anteriormente Team) cuesta $25 por usuario al mes cuando se factura mensualmente. Tienen límites de uso flexibles: los usuarios intensivos pasan a un modelo más pequeño en lugar de ser bloqueados.
- Niveles de tarifas basados en el gasto: A medida que el gasto total aumenta con el tiempo, la cuenta desbloquea límites de frecuencia de la API más altos. El acceso aumenta según el historial de facturación.
Qué lo hace único
Cuatro características hacen que la facturación de OpenAI sea eficaz para los servicios de IA:- Créditos denominados en moneda fiduciaria: Los créditos están en dólares estadounidenses, por lo que se perciben como dinero. Los desarrolladores pueden consultar directamente el precio de una solicitud.
- Caducidad prolongada: Los créditos comprados duran un año, lo que reduce la presión de «úsalo o piérdelo». Los usuarios se sienten cómodos recargando cantidades mayores.
- Medición multidimensional: Los tokens de entrada y de salida se registran por separado, pero se descuentan del mismo saldo. OpenAI puede establecer un precio más alto para los tokens de salida, que son más costosos que los de entrada.
- Niveles de confianza: Los límites de frecuencia que aumentan con el gasto total recompensan a los clientes a largo plazo y los animan a permanecer.
Ventajas estratégicas
El modelo se refuerza a sí mismo. Los bajos costes de entrada atraen a los desarrolladores. Los créditos prepagados proporcionan un flujo de caja inmediato. La tarificación basada en el uso significa que OpenAI gana más a medida que los desarrolladores tienen éxito. Las suscripciones añaden una base estable de ingresos procedentes de personas que no son desarrolladores.Crea esto con Dodo Payments
Puedes crear el modelo de facturación de OpenAI con Dodo Payments. Usa Credit-Based Billing para la parte de la API y suscripciones estándar para la parte de ChatGPT Plus.1
Create a Fiat Credit Entitlement
En el dashboard de Dodo Payments, ve a Products → Credits y haz clic en Create Credit. Este crédito es el saldo central de cada usuario.
- Credit Type: Fiat Credits, con Unit Currency establecido en USD
- Credit Expiry: Custom, 365 días (coincide con la caducidad de un año de OpenAI) o Never
- Rollover: No es necesario (los créditos no se restablecen en cada ciclo)
- Allow Overage: Desactivado
2
Create Top-Up Products
Crea productos de pago únicos para distintos paquetes de créditos, como $5, $10, $50 y $100. Asocia tu crédito fiduciario a cada producto.Establece el número de créditos emitidos en el valor en dólares del paquete. Un paquete de $50 emite 50 créditos.
3
Create Usage Meters
Crea dos medidores para registrar el uso de tokens:
llm.input_tokens: Agregación de suma en la propiedadtokens.llm.output_tokens: Agregación de suma en la propiedadtokens.
Cálculo de las unidades del medidor por crédito
Para igualar los precios de GPT-4o de OpenAI, calcula cuántos tokens cuestan $1, que equivale a un crédito fiduciario:- Tokens de entrada: 1.000.000 tokens / $2,50 = 400.000 tokens por $1.
- Tokens de salida: 1.000.000 tokens / $10,00 = 100.000 tokens por $1.
4
Send Usage Events
Después de cada solicitud al LLM, envía el uso a Dodo Payments. Una solicitud puede incluir tanto el evento de entrada como el de salida. Este fragmento reutiliza
client del paso anterior.5
Handle Balance Depletion
Comprueba el saldo del usuario antes de procesar una solicitud a la API. Si el saldo es cero o negativo, rechaza la solicitud, por ejemplo con un estado
402.Gestión de los webhooks de saldo bajo
Notifica a los usuarios antes de que lleguen a $0. Establece un Low Balance Threshold al asociar el crédito y, después, envía un correo electrónico o una notificación dentro de la aplicación cuando llegue el webhookcredit.balance_low.6
Build the ChatGPT Subscription Side (Optional)
Para ofrecer un plan de suscripción como ChatGPT Plus, crea un producto de suscripción independiente en Dodo Payments. No necesita un entitlement de crédito.Para un plan Team, utiliza la facturación basada en puestos: un complemento por puesto cuya cantidad es el número de usuarios.
Implementación de límites flexibles
Para crear límites flexibles, registra el uso de los usuarios con suscripción utilizando los mismos medidores, pero sin vincularlos a un crédito. En tu aplicación, comprueba el uso del periodo de facturación actual.Acelera con el LLM Ingestion Blueprint
Los pasos anteriores crean y envían eventos de uso manualmente. El LLM Ingestion Blueprint, en cambio, envuelve tu cliente de OpenAI y registra los tokens automáticamente.inputTokens, outputTokens y totalTokens de cada respuesta de la API y los envía, junto con model, como metadatos del evento. Establece Over Property del medidor en la clave de token que quieras facturar.
Implementación de niveles de tarifas basados en el gasto
Los niveles de tarifas de OpenAI gestionan la capacidad en función de la confianza. Para crearlos, registra el gasto acumulado de cada cliente.- Registra el gasto acumulado: Escucha los webhooks
payment.succeededy añade el importe del pago a un campototal_spendpara ese cliente en tu base de datos. Los importes están en la unidad monetaria más pequeña, por lo que 5000 equivalen a $50,00. - Define los niveles: Asocia los importes de gasto con límites de frecuencia:
- Nivel 1: gasto de $0 a $50 -> 3 RPM
- Nivel 2: gasto de $50 a $250 -> 10 RPM
- Nivel 3: gasto de más de $250 -> 50 RPM
- Aplica los límites: En tu middleware de la API, consulta el nivel del cliente y aplica su límite de frecuencia.
Ejemplo completo de implementación: el proxy de la API
En producción, un proxy de la API suele situarse entre tus usuarios y el proveedor del LLM. El proxy autentica la solicitud, comprueba los créditos e informa del uso. El controlador siguiente implementa el proxy:Gestión de casos extremos
Un sistema de facturación como el de OpenAI tiene varios casos extremos que deben planificarse.Condiciones de carrera
Un usuario con un saldo bajo puede enviar varias solicitudes a la vez y superar el saldo antes de que se procese cualquier evento. Para evitarlo, mantén un pequeño margen o utiliza un bloqueo distribuido sobre el saldo del cliente durante cada solicitud.Latencia de ingesta de eventos
Dodo Payments descuenta los créditos de forma asíncrona. Un worker en segundo plano procesa los eventos nuevos aproximadamente una vez por minuto, por lo que el descuento puede producirse después de la llamada a la API. Para aplicar restricciones estrictas en tiempo real, mantén una caché local del saldo de cada usuario y actualízala mientras atiendes las solicitudes.Gestión de reembolsos
Reembolsar la compra de un paquete de créditos no elimina los créditos que concedió. Al realizar un reembolso, descuenta tú mismo esos créditos mediante un débito: utiliza Apply Credit/Debit en la pestaña Credits del cliente o la API Create Ledger Entry. Después, actualiza la vista que tiene tu aplicación del saldo para que los usuarios no puedan gastar créditos que ya no poseen.Compatibilidad con varios modelos
Para admitir varios modelos con precios diferentes, elige una de estas dos opciones:- Medidores independientes: Crea un conjunto de medidores por modelo, por ejemplo
gpt-4o.input_tokensygpt-4o-mini.input_tokens, cada uno con sus propios Meter units per credit. - Eventos ponderados: Utiliza un medidor y multiplica
tokenspor un peso antes de enviar el evento. Por ejemplo, si GPT-4o cuesta 10 veces más que GPT-4o-mini, envía 10 veces más tokens para las solicitudes de GPT-4o.
Descripción general de la arquitectura
El flujo siguiente muestra el proceso prepagado, desde la compra hasta el bloqueo de las llamadas: Los medidores registran los tokens y descuentan su valor en dólares del saldo de créditos del usuario según las tarifas configuradas. Tu aplicación bloquea las llamadas cuando el saldo llega a cero.Conclusión
Con Dodo Payments, puedes combinar la facturación basada en el uso con la previsibilidad de los créditos prepagados, como hace OpenAI. Los clientes pagan por adelantado, gastan a medida que utilizan el servicio y recargan cuando necesitan más. Los mismos componentes sirven tanto para una plataforma de LLM grande como para una herramienta de IA pequeña: un crédito fiduciario, productos de recarga, medidores de tokens y una comprobación del saldo antes de cada solicitud.Funciones principales de Dodo utilizadas
Estas funciones de Dodo Payments permiten implementar la solución:Credit-Based Billing
Gestiona créditos fiduciarios prepagados y entitlements para tus usuarios.
Usage-Based Billing
Registra un uso detallado, como los tokens, y factura por él.
One-Time Payments
Vende paquetes de créditos y recargas mediante checkout.
Event Ingestion
Envía datos de uso de gran volumen a Dodo Payments.
Webhooks
Mantente al día sobre los cambios en el saldo de créditos y las alertas de saldo bajo.
LLM Ingestion Blueprint
Registro automático de tokens para OpenAI y otros proveedores de LLM.