TouAI

Billing

Billing APIs cover credit balances, packages, subscriptions, payment methods, invoices, and Stripe portal flows.

Credits

balance = client.billing.credits.balance()
print(balance.balance, balance.balance_in_usd)
 
overview = client.billing.credits.overview()
packages = client.billing.credits.packages()
pkg = client.billing.credits.package("pkg_1000")
costs = client.billing.credits.costs()
 
session = client.billing.credits.checkout(
    "pkg_1000",
    success_url="https://app.tou.ai/billing?success=1",
    cancel_url="https://app.tou.ai/billing",
)
 
txns = client.billing.credits.transactions(limit=50, offset=0, type="consumption")

Plans and Subscriptions

plans = client.billing.plans.list()
sub = client.billing.subscriptions.current()
preview = client.billing.subscriptions.upgrade_preview("plan_pro")
 
session = client.billing.subscriptions.upgrade(
    "plan_pro",
    success_url="https://app.tou.ai/billing?upgraded=1",
    cancel_url="https://app.tou.ai/billing",
)
 
pending = client.billing.subscriptions.downgrade("plan_free")
change = client.billing.subscriptions.pending_change()
client.billing.subscriptions.cancel_downgrade()
client.billing.subscriptions.cancel("sub_id", immediately=False)

Payment Methods and Invoices

methods = client.billing.payment_methods.list()
 
intent = client.billing.payment_methods.setup_intent(
    payment_method_types=["card", "alipay"],
)
 
client.billing.payment_methods.attach(
    "pm_stripe_id",
    set_as_default=True,
)
 
client.billing.payment_methods.delete("pm_id")
 
overview = client.billing.overview()
invoices = client.billing.invoices(limit=20)
portal_url = client.billing.portal("https://app.tou.ai/billing")

For upgrade and top-up flows, the SDK returns checkout URLs rather than performing payment inline. Redirect your user or operator to the returned Stripe URL.

StorageOrganizations