{"id":21675,"library":"paid-python","title":"Paid AI Python SDK","description":"Official Python SDK for the Paid API (https://paid.ai). Provides sync and async clients to manage subscriptions, orders, checkouts, webhooks, customer portal sessions, credit balances, and more. Currently at version 1.8.0, with frequent releases adding new sub-clients. Requires Python >=3.10 <3.14.","status":"active","version":"1.8.0","language":"python","source_language":"en","source_url":"https://github.com/paid-ai/paid-python","tags":["paid","api","sdk","payments","subscriptions","checkout"],"install":[{"cmd":"pip install paid-python","lang":"bash","label":"Install from PyPI"}],"dependencies":[],"imports":[{"note":"Paid is a class in the paid package, not a module to import directly.","wrong":"import paid","symbol":"Paid","correct":"from paid import Paid"},{"note":"AsyncPaid is exported from the top-level paid package.","wrong":"from paid.async_client import AsyncPaid","symbol":"AsyncPaid","correct":"from paid import AsyncPaid"}],"quickstart":{"code":"from paid import Paid\n\nclient = Paid(\n    api_key=os.environ.get('PAID_API_KEY', ''),\n)\n\n# List products\nproducts = client.products.list()\nprint(products)","lang":"python","description":"Initialize the sync client and list products. Async client is `from paid import AsyncPaid` with same instantiation."},"warnings":[{"fix":"Use `client.products.list()` instead of `Products(client).list()`.","message":"The SDK uses fern-generated client patterns. Do not instantiate sub-clients directly (e.g., `client.products` not `Products(client)`). Always access sub-resources via the main client.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Set `PAID_API_KEY` environment variable or pass `api_key='sk-...'` to the client constructor.","message":"API key must be passed explicitly or via environment variable `PAID_API_KEY`. The SDK does not automatically read from environment.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Upgrade to >=1.7.2 and pass `currency='usd'` to `client.checkouts.create()`.","message":"The `create_checkout` method on the Checkouts client now accepts an optional `currency` parameter (added in 1.7.2). Previous versions may ignore currency.","severity":"deprecated","affected_versions":"<1.7.2"}],"env_vars":null,"last_verified":"2026-04-27T00:00:00.000Z","next_check":"2026-07-26T00:00:00.000Z","problems":[{"fix":"Use `from paid import Paid`.","cause":"Importing incorrectly, e.g., `import paid` instead of `from paid import Paid`.","error":"AttributeError: module 'paid' has no attribute 'Paid'"},{"fix":"Ensure `api_key` is set correctly via constructor or environment variable `PAID_API_KEY`.","cause":"Missing or invalid API key.","error":"PaidAPIError: Unauthorized"},{"fix":"Pass `api_key='sk-...'` or set `PAID_API_KEY` environment variable.","cause":"Instantiating client without an API key.","error":"TypeError: Client.__init__() missing 1 required positional argument: 'api_key'"},{"fix":"Run `pip install paid-python` in the correct Python environment.","cause":"Package not installed or installed in wrong environment.","error":"ModuleNotFoundError: No module named 'paid'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}