Skip to content

Latest commit

 

History

History
366 lines (252 loc) · 25.7 KB

File metadata and controls

366 lines (252 loc) · 25.7 KB

Checkouts

(checkouts)

Overview

Available Operations

list

List checkout sessions.

Scopes: checkouts:read checkouts:write

Example Usage

from polar_sdk import Polar


with Polar(
    access_token="<YOUR_BEARER_TOKEN_HERE>",
) as polar:

    res = polar.checkouts.list(organization_id="1dbfc517-0bbf-4301-9ba8-555ca42b9737", page=1, limit=10)

    while res is not None:
        # Handle items

        res = res.next()

Parameters

Parameter Type Required Description
organization_id OptionalNullable[models.CheckoutsListQueryParamOrganizationIDFilter] Filter by organization ID.
product_id OptionalNullable[models.CheckoutsListQueryParamProductIDFilter] Filter by product ID.
customer_id OptionalNullable[models.CheckoutsListQueryParamCustomerIDFilter] Filter by customer ID.
external_customer_id OptionalNullable[models.CheckoutsListQueryParamExternalCustomerIDFilter] Filter by customer external ID.
status OptionalNullable[models.QueryParamStatusFilter] Filter by checkout session status.
query OptionalNullable[str] Filter by customer email.
page Optional[int] Page number, defaults to 1.
limit Optional[int] Size of a page, defaults to 10. Maximum is 100.
sorting List[models.CheckoutSortProperty] Sorting criterion. Several criteria can be used simultaneously and will be applied in order. Add a minus sign - before the criteria name to sort by descending order.
retries Optional[utils.RetryConfig] Configuration to override the default retry behavior of the client.

Response

models.CheckoutsListResponse

Errors

Error Type Status Code Content Type
models.HTTPValidationError 422 application/json
models.SDKError 4XX, 5XX */*

create

Create a checkout session.

Scopes: checkouts:write

Example Usage

import polar_sdk
from polar_sdk import Polar


with Polar(
    access_token="<YOUR_BEARER_TOKEN_HERE>",
) as polar:

    res = polar.checkouts.create(request={
        "customer_name": "John Doe",
        "customer_billing_address": {
            "country": polar_sdk.AddressInputCountryAlpha2Input.US,
        },
        "locale": "en",
        "products": [
            "<value 1>",
            "<value 2>",
            "<value 3>",
        ],
    })

    # Handle response
    print(res)

Parameters

Parameter Type Required Description
request models.CheckoutCreate ✔️ The request object to use for the request.
retries Optional[utils.RetryConfig] Configuration to override the default retry behavior of the client.

Response

models.Checkout

Errors

Error Type Status Code Content Type
models.HTTPValidationError 422 application/json
models.SDKError 4XX, 5XX */*

get

Get a checkout session by ID.

Scopes: checkouts:read checkouts:write

Example Usage

from polar_sdk import Polar


with Polar(
    access_token="<YOUR_BEARER_TOKEN_HERE>",
) as polar:

    res = polar.checkouts.get(id="<value>")

    # Handle response
    print(res)

Parameters

Parameter Type Required Description
id str ✔️ The checkout session ID.
retries Optional[utils.RetryConfig] Configuration to override the default retry behavior of the client.

Response

models.Checkout

Errors

Error Type Status Code Content Type
models.ResourceNotFound 404 application/json
models.HTTPValidationError 422 application/json
models.SDKError 4XX, 5XX */*

update

Update a checkout session.

Scopes: checkouts:write

Example Usage

import polar_sdk
from polar_sdk import Polar


with Polar(
    access_token="<YOUR_BEARER_TOKEN_HERE>",
) as polar:

    res = polar.checkouts.update(id="<value>", checkout_update={
        "customer_name": "John Doe",
        "customer_billing_address": {
            "country": polar_sdk.AddressInputCountryAlpha2Input.US,
        },
        "locale": "en",
    })

    # Handle response
    print(res)

Parameters

Parameter Type Required Description
id str ✔️ The checkout session ID.
checkout_update models.CheckoutUpdate ✔️ N/A
retries Optional[utils.RetryConfig] Configuration to override the default retry behavior of the client.

Response

models.Checkout

Errors

Error Type Status Code Content Type
models.AlreadyActiveSubscriptionError 403 application/json
models.NotOpenCheckout 403 application/json
models.PaymentNotReady 403 application/json
models.TrialAlreadyRedeemed 403 application/json
models.ResourceNotFound 404 application/json
models.HTTPValidationError 422 application/json
models.SDKError 4XX, 5XX */*

client_get

Get a checkout session by client secret.

Example Usage

from polar_sdk import Polar


with Polar() as polar:

    res = polar.checkouts.client_get(client_secret="<value>")

    # Handle response
    print(res)

Parameters

Parameter Type Required Description
client_secret str ✔️ The checkout session client secret.
retries Optional[utils.RetryConfig] Configuration to override the default retry behavior of the client.

Response

models.CheckoutPublic

Errors

Error Type Status Code Content Type
models.ResourceNotFound 404 application/json
models.ExpiredCheckoutError 410 application/json
models.HTTPValidationError 422 application/json
models.SDKError 4XX, 5XX */*

client_update

Update a checkout session by client secret.

Example Usage

from polar_sdk import Polar


with Polar() as polar:

    res = polar.checkouts.client_update(client_secret="<value>", checkout_update_public={
        "customer_name": "John Doe",
        "customer_billing_address": None,
        "locale": "en",
        "allow_trial": False,
    })

    # Handle response
    print(res)

Parameters

Parameter Type Required Description
client_secret str ✔️ The checkout session client secret.
checkout_update_public models.CheckoutUpdatePublic ✔️ N/A
retries Optional[utils.RetryConfig] Configuration to override the default retry behavior of the client.

Response

models.CheckoutPublic

Errors

Error Type Status Code Content Type
models.AlreadyActiveSubscriptionError 403 application/json
models.NotOpenCheckout 403 application/json
models.PaymentNotReady 403 application/json
models.TrialAlreadyRedeemed 403 application/json
models.ResourceNotFound 404 application/json
models.ExpiredCheckoutError 410 application/json
models.HTTPValidationError 422 application/json
models.SDKError 4XX, 5XX */*

client_confirm

Confirm a checkout session by client secret.

Orders and subscriptions will be processed.

Example Usage

import polar_sdk
from polar_sdk import Polar


with Polar(
    access_token="<YOUR_BEARER_TOKEN_HERE>",
) as polar:

    res = polar.checkouts.client_confirm(client_secret="<value>", checkout_confirm_stripe={
        "customer_name": "John Doe",
        "customer_billing_address": {
            "country": polar_sdk.AddressInputCountryAlpha2Input.US,
        },
        "locale": "en",
        "allow_trial": False,
    })

    # Handle response
    print(res)

Parameters

Parameter Type Required Description
client_secret str ✔️ The checkout session client secret.
checkout_confirm_stripe models.CheckoutConfirmStripe ✔️ N/A
retries Optional[utils.RetryConfig] Configuration to override the default retry behavior of the client.

Response

models.CheckoutPublicConfirmed

Errors

Error Type Status Code Content Type
models.PaymentError 400 application/json
models.AlreadyActiveSubscriptionError 403 application/json
models.NotOpenCheckout 403 application/json
models.PaymentNotReady 403 application/json
models.TrialAlreadyRedeemed 403 application/json
models.ResourceNotFound 404 application/json
models.ExpiredCheckoutError 410 application/json
models.HTTPValidationError 422 application/json
models.SDKError 4XX, 5XX */*