Skip to main content

Checkout engine for Django: carts, orders, payment intents (PayU, PayPal, Autopay, Przelewy24, Paynow, Stripe), shipping, discounts and sale offers

Project description

entirius-django-checkout

Checkout engine for Django.

django_checkout handles the full checkout flow of a multi-channel storefront: cart lifecycle, order creation and splitting, payment intents with pluggable providers (PayU, PayPal, Autopay, Przelewy24, Paynow, Stripe), shipping and payment method selection, discount codes and rules, sale offers and per-supplier stock reservation. Two API generations coexist: v1 (function-based views, marshmallow DTOs) and v2 (DRF + Pydantic, sub-resource PATCH pattern).

Installation

pip install entirius-django-checkout

Add django_checkout to INSTALLED_APPS. The checkout attaches to django_accounts, django_pim, django_pricemanager and django_regional; optional integrations are exposed as extras:

pip install "entirius-django-checkout[qms,vault,vat,pricetuner]"

To use the django_accounts auth system, add its backend in the host service settings (the list works FIFO — first entry is checked first):

AUTHENTICATION_BACKENDS = [
    "django_accounts.backends.JWTAccessBackend",
    "django.contrib.auth.backends.ModelBackend",  # default django auth - important for /admin
]

Development

uv sync --all-extras
make check test

Tests require PostgreSQL — point DATABASE_URL at any postgres 15+. See AGENTS.md for architecture, settings and integration points.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

entirius_django_checkout-9.1.0.tar.gz (871.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

entirius_django_checkout-9.1.0-py3-none-any.whl (317.6 kB view details)

Uploaded Python 3

File details

Details for the file entirius_django_checkout-9.1.0.tar.gz.

File metadata

  • Download URL: entirius_django_checkout-9.1.0.tar.gz
  • Upload date:
  • Size: 871.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for entirius_django_checkout-9.1.0.tar.gz
Algorithm Hash digest
SHA256 b2250c1c9bddf4b4f5f31fa32aef641b924866acc7c276345a8767ae7a1c13c7
MD5 32cad6c4e8a70f60ed3b76997cc13228
BLAKE2b-256 6bc8cf83e41e5922e21b6949bf5f8c2a014a9bb235629557f092815747769084

See more details on using hashes here.

File details

Details for the file entirius_django_checkout-9.1.0-py3-none-any.whl.

File metadata

  • Download URL: entirius_django_checkout-9.1.0-py3-none-any.whl
  • Upload date:
  • Size: 317.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for entirius_django_checkout-9.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 910ad4eb75b8fa7a0e8c38e3743759dfa56422c8eaad84b24e7d0fa2236ef73a
MD5 4983276307fa01ade23a10868e5d1497
BLAKE2b-256 f0c73f4e45c00644b16f0d5288a80b5f0d3f5f65d277c218f5ef5dc97dbaee00

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page