An unofficial SDK for Paddle's billing API and webhooks.
Project description
Unofficial Paddle Billing Python SDK
A small Paddle Billing SDK. It uses pydantic for schemas derived from the Paddle Billing OpenAPI file.
Installation
To install the package, install it from pypi:
uv add python-paddle
# or
pip install python-paddle
Or your favorite package manager.
Usage
Currently, the SDK does not provide functions to call the API. It does provide two things:
- API schemas as Pydantic models
- Webhook validation
The schemas can be found under paddle.schemas, like paddle.schemas.Transaction.
Webhooks can be validated using paddle.webhooks.verify. For example:
from paddle import webhooks
webhooks.verify(
secret="YOUR_WEBHOOK_SECRET",
signature="YOUR_WEBHOOK_SIGNATURE", # Extract this value from the `Paddle-Signature` in the webhook request
body="THE_REQUEST_BODY",
)
It'll raise a paddle.webhooks.exceptions.ValidationError if the webhook could not be verified,
otherwise it'll return True.
To instead get a bool returned from the function, without an error raised on failure, pass the
error=False argument.
from paddle import webhooks
is_valid = webhooks.verify(
secret="YOUR_WEBHOOK_SECRET",
signature="YOUR_WEBHOOK_SIGNATURE", # Extract this value from the `Paddle-Signature` in the webhook request
body="THE_REQUEST_BODY",
error=False,
)
if is_valid:
print("Great!")
else:
print("Damn")
Exceptions
All exceptions raised by this library inherit from paddle.exceptions.PaddleException.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file python_paddle-0.1.0-py3-none-any.whl.
File metadata
- Download URL: python_paddle-0.1.0-py3-none-any.whl
- Upload date:
- Size: 55.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Arch Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
765f863f4b2f6e81cefb5f3dde2b3381a66eaa53c67782eb07fd7e508781c159
|
|
| MD5 |
fb34dda1f0992f7710941585aa7478cc
|
|
| BLAKE2b-256 |
b3f0655259eff3295f673dd2c7ff34cd4d62beed8e24b996176854ec334b323f
|