Skip to content

viur-framework/viur-shop

Repository files navigation

A hexagonal logo of Shop

viur-shop

Badge showing current PyPI version Documentation Status Badge displaying the license
A modular e-commerce extension for the ViUR framework.

📦 Features

  • Fully integrated Shop logic via the central shop.Shop class: cart handling, order management, API routing, bootstrapping with custom article_skel, and payment/shipping modules.
  • Extensible Modules: Address, Api, Cart, Discount, Shipping, VatRate, Order, etc. — all provided as abstract base implementations.
  • Payment Providers: Amazon Pay, PayPal Plus, Prepayment, Invoice, and Unzer integrations (Credit Card, PayPal, SOFORT, Bancontact, iDEAL). Can be extended with custom implementations.
  • Event & Hook System: Customize checkout and order flow with hooks for events like ORDER_PAID, CART_CHANGED, and CHECKOUT_STARTED.
  • Pricing & Discounts: Automated calculation of unit and bulk prices, gross/net handling, VAT rates, savings, and discount combinations via the Price class.

🚀 Requirements


🧩 Installation & Integration

pipenv install viur-shop

Integrate into your ViUR application:

# deploy/modules/shop.py
from viur.shop import Shop
from skeletons.article import ArticleSkel  # your custom article skeleton

shop = Shop(
    name="myshop",
    article_skel=ArticleSkel,
    payment_providers=[
        # e.g. PayPalPlus(), Invoice(), ... ,
    ],
    suppliers=[
        # optional Shop.types.Supplier(...),
    ],
)

🔍 Additional Resources

Packages

No packages published

Contributors 8

Languages