Search by

bnomei / kirby-kart

bnomei

Streamlined E-Commerce Shopping Cart Solution

Package info

github.com/bnomei/kirby-kart

Type:kirby-plugin

pkg:composer/bnomei/kirby-kart

Statistics

Installs: 535

Dependents: 0

Suggesters: 0

Stars: 37

Open Issues: 2


README

Kirby 5 PHP 8.2 Release Downloads Unittests PHPStan Discord Buy License

Streamlined E-Commerce Shopping Cart Solution

Installation

  • unzip master.zip as folder site/plugins/kirby-kart or
  • git submodule add https://github.com/bnomei/kirby-kart.git site/plugins/kirby-kart or
  • composer require bnomei/kirby-kart

Licensing

Kirby Kart is a commercial plugin that requires a license. You can install and test the plugin locally without a license. However, production environments require a valid license. You can purchase a license here.

Quickstart

  1. ⬇️ Download the ZIP or, for easier updates later on, use composer require bnomei/kirby-kart.
  2. 🏎️ Access the /kart-route on your local setup to initialize Kart and start the demo.
  3. 🪞 Copy the snippets and templates from the plugin into your project site-folder.
  4. 🎨 Modify the copied snippets and templates to match your projects style and site structure.
  5. 🔗 Link Kart to a Provider (like Stripe or Paypal) and fetch your products from them. Alternativly use Kirby to manage the products and the provider only for checkout.
  6. 💅 Enhance your products within Kirby with additional text, images and downloadable files.
  7. 🪪 Buy a license for Kirby Kart, register it in the config-file and go online with your shop.
  8. 💰 The streamlined shopping cart, invoices and downloads will make your customers happy.
  9. 📈 Track orders and remaining stock within Kirby.

Documentation

You can find the full documentation for Kirby Kart on its dedicated website.

Provider feature matrix

Provider Hosted Checkout Order Flow Product sync Hosted Portal Invoice URL
chargebee ✅ return URL ✅ ✅ ✅
checkout ✅ return URL - - -
fastspring external - ✅ - -
gumroad external webhook ✅ - ✅
invoice_ninja ✅ webhook ✅ - ✅
lemonsqueezy ✅ return URL, webhook ✅ ✅ ✅
mollie ✅ return URL - - -
paddle JS snippet return URL ✅ ✅ ✅
paypal ✅ return URL ✅ - -
polar ✅ return URL ✅ - ✅
shopify ✅ webhook ✅ - -
snipcart JS snippet webhook ✅ - -
square ✅ return URL - - ✅
stripe ✅ return URL ✅ ✅ ✅
sumup JS snippet return URL - - -

Shopify product metafields

Shopify product metafields can be added to the product's raw provider data with an allowlist of namespace.key values:

return [
    'bnomei.kart.providers.shopify.metafields' => [
        'custom.product_details',
    ],
];

The Shopify app needs the read_products and read_metaobjects access scopes. Scalar values and one level of referenced metaobjects are available under $product->raw()->yaml()['metafields']; nested references are not resolved.

Disclaimer

This plugin is provided "as is" with no guarantee. You can use it at your own risk and always test it before using it in a production environment. If you find any issues, please create a new issue.

License

Kirby Kart License © 2025-PRESENT Bruno Meilick