Skip to main content

Installation

Terminal

Quickstart

Create an organization access token (Settings > Developers) and store it in CROSSPOINT_ACCESS_TOKEN. The client reads it from there:
main.py
You can also pass the token yourself: Crosspoint("cxp_oat_..."). Requests wait up to 30 seconds (Polar’s SDK waits 5). Change it with Crosspoint(timeout=60.0), in seconds.

API versions

crosspoint uses API version 2026-10. Pin a version with its import path:
Versions 2026-04 (v2026_04), 2026-10 (v2026_10) and 2027-01 (v2027_01) are available.

Async client

async_main.py
Both clients work as context managers (with / async with) and close their connections when the block ends.

Transaction splits

crosspoint.splits and crosspoint.split_recipients are Crosspoint’s own: they share each sale with partners or vendors. See Transaction splits. Like the rest of the SDK, they take keyword arguments with the API’s field names (crosspoint.splits.create(name=..., shares=[...]), crosspoint.splits.update(id, is_default=True)) and return objects (split.id, recipient.owed).
Errors from these raise CrosspointAPIError, with status_code and body.

Verifying webhooks

Sandbox

Use the sandbox while you build: set CROSSPOINT_ENVIRONMENT=sandbox with a sandbox access token, or pass the server:

Local development

Point the client at a local API with base_url:

Next steps