Skip to main content
The official synchronous SDK supports Python 3.9 and newer. It covers every operation in the public v1 API and is suited to Odoo modules, POS middleware, scheduled syncs, and backend services.

Install

Install the verified release from PyPI:
The wheel has no compiled extensions, so the same file works on Linux, macOS, and Windows.
Releases are built and tested in GitHub Actions, published with PyPI Trusted Publishing, and accompanied by digital attestations. No long-lived PyPI password or upload token is stored in the repository.

Create a client

Pass oauth_access_token= instead of api_key= when your integration uses OAuth. Pass exactly one credential type.

Post a POS transaction

The SDK generates an idempotency key for a new POST and preserves it across automatic retries. Supply your own stable key when a durable job may restart in a different process.

Pagination

Requests are lazy and follow next_cursor until the API reports no more rows. An empty or repeated cursor stops with an error instead of looping forever.

Typed errors

Network failures, 408, 429, and retryable 5xx responses are retried up to three times by default. The client honours Retry-After and keeps the API error code, HTTP status, request ID, and API version on the raised exception.

Verify webhooks

Pass the exact raw str or bytes body. The helper uses constant-time HMAC comparison and rejects timestamps outside a five-minute replay window.

Verify the hosted fallback

Partners operating in locked-down environments can use the matching Perkstar-hosted release and checksum:
The source distribution is also available for inspection and local builds.