PHPackages                             webbycrown/webbycommerce-statamic - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. webbycrown/webbycommerce-statamic

ActiveLibrary[API Development](/categories/api)

webbycrown/webbycommerce-statamic
=================================

Webby Commerce addon for Statamic

v1.0.0(1mo ago)02↓100%MITPHPPHP ^8.1

Since Jun 1Pushed 1mo agoCompare

[ Source](https://github.com/webbycrown/webbycommerce-statamic)[ Packagist](https://packagist.org/packages/webbycrown/webbycommerce-statamic)[ RSS](/packages/webbycrown-webbycommerce-statamic/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (3)Versions (2)Used By (0)

WebbyCommerce for Statamic
==========================

[](#webbycommerce-for-statamic)

A lightweight Statamic Webby Commerce addon for managing products, orders, customers, coupons, taxes, shipping, cart, wishlist, and checkout.

Overview
--------

[](#overview)

- Collection-based WebbyCommerce data: `products`, `orders`, `customers`, `coupons`, `tax_rates`, `shipping_rates`
- Built-in storefront endpoints under `/shop`
- AJAX-friendly checkout with shipping, tax, coupon, and payment gateway support
- Configurable payment redirect/callback/webhook URLs
- Statamic Control Panel integration with a dedicated WebbyCommerce menu

Requirements
------------

[](#requirements)

- Statamic 5
- PHP version supported by Statamic 5
- Composer
- Node.js / npm for asset rebuilds (optional)

Installation
------------

[](#installation)

### Composer

[](#composer)

```
composer require webbycrown/webbycommerce-statamic
```

### Local development

[](#local-development)

Add a path repository to your project `composer.json`:

```
"repositories": [
  {
    "type": "path",
    "url": "addons/webbycrown/webbycommerce-statamic"
  }
]
```

Then install:

```
composer require webbycrown/webbycommerce-statamic:@dev
```

### Publish package assets

[](#publish-package-assets)

```
php artisan vendor:publish --provider="WebbyCrown\WebbyCommerceStatamic\ServiceProvider"
```

Optional tags:

```
php artisan vendor:publish --tag=webbycommerce-config
php artisan vendor:publish --tag=webbycommerce-views
php artisan vendor:publish --tag=webbycommerce-email-templates
php artisan vendor:publish --tag=webbycommerce-blueprints
```

Legacy `webbycommerce-*` publish tags are also supported for backwards compatibility.

### Clear caches

[](#clear-caches)

```
php artisan optimize:clear
php please stache:clear
```

Environment Settings
--------------------

[](#environment-settings)

Add or update these variables in your `.env`:

```
WEBBYCOMMERCE_CURRENCY=USD
WEBBYCOMMERCE_PAYMENT_GATEWAY=stripe
WEBBYCOMMERCE_PAYMENT_REDIRECT_URL=https://example.com/shop/checkout/success/{orderNumber}
WEBBYCOMMERCE_PAYMENT_CALLBACK_URL=https://example.com/shop/payment/callback?order={orderNumber}
WEBBYCOMMERCE_PAYMENT_WEBHOOK_URL=https://example.com/shop/payment/webhook
STRIPE_SECRET_KEY=sk_test_...
STRIPE_PUBLISHABLE_KEY=pk_test_...
```

Gateway-specific overrides are also supported:

```
STRIPE_REDIRECT_URL=https://example.com/shop/checkout/success/{orderNumber}
STRIPE_CALLBACK_URL=https://example.com/shop/payment/callback?order={orderNumber}
STRIPE_WEBHOOK_URL=https://example.com/shop/payment/webhook
```

Routes
------

[](#routes)

Base prefix: `/shop`

MethodURIDescriptionGET`/shop/products`Product listingGET`/shop/products/{slug}`Product detailGET`/shop/cart`Cart pagePOST`/shop/cart/add`Add itemPOST`/shop/cart/update`Update itemPOST`/shop/cart/remove/{key}`Remove itemPOST`/shop/checkout/process`Synchronous checkoutPOST`/shop/checkout/complete`Complete checkout (AJAX)GET`/shop/checkout/success/{orderNumber}`Order success pageGET/POST`/shop/payment/callback`Payment callback endpointPOST`/shop/payment/webhook`Payment webhook endpointGET`/shop/payment/redirect`Payment redirect endpointGET`/shop/search`Product searchAPI endpoints:

MethodURIDescriptionGET`/shop/api/cart`Get cart contentsGET`/shop/api/cart/count`Cart countPOST`/shop/api/coupon/validate`Validate couponPOST`/shop/api/coupon/apply`Apply couponGET`/shop/api/shipping/methods`Shipping optionsGET`/shop/api/wishlist`Wishlist contentsGET`/shop/api/wishlist/count`Wishlist countAntlers Tags
------------

[](#antlers-tags)

The addon provides the following Antlers tags under the `webbycommerce` namespace:

- `{{ webbycommerce:countries }}` - list countries with optional `only`, `exclude`, and `common` parameters.
- `{{ webbycommerce:regions country="US" }}` - list regions for a country by ISO or name.
- `{{ cart }}` - returns the current cart as an array.
- `{{ cart:has }}` - returns whether the cart contains items.
- `{{ cart:items }}` - returns cart items.
- `{{ cart:count }}` - returns total cart item count.
- `{{ cart:total_quantity }}` - returns total quantity of items in the cart.
- `{{ cart:subtotal }}` - returns cart subtotal.
- `{{ cart:total }}` - returns cart total.
- `{{ cart:tax }}` - returns total tax.
- `{{ cart:shipping }}` - returns shipping cost.
- `{{ cart:shipping_breakdown }}` - returns shipping breakdown.
- `{{ cart:discount }}` - returns discount amount.
- `{{ cart:tax_breakdown }}` - returns tax breakdown.
- `{{ cart:tax_rate }}` - returns the applicable tax rate.
- `{{ cart:is_tax_included }}` - returns whether tax is included.
- `{{ checkout:field key="email" default="" }}` - retrieves checkout field values from old input or session.
- `{{ checkout:payment key="method" default="" }}` - retrieves checkout payment values from old input or session.
- `{{ checkout:coupon_code }}` - returns the current coupon code.
- `{{ checkout:coupon_discount }}` - returns the current coupon discount.
- `{{ checkout:shipping_same_as_billing }}` - returns whether shipping is same as billing.
- `{{ checkout:countries }}` - loads checkout country data.
- `{{ checkout:states country="US" }}` - loads checkout states for a given country.
- `{{ product_tag }}` - returns product collection results as `results`.
- `{{ wishlist:count }}` - returns wishlist item count.
- `{{ wishlist:items }}` - returns wishlist items.
- `{{ wishlist:has product_id="..." }}` - returns whether a product is in the wishlist.

Example:

```
{{ cart }}
  {{ total }}
  {{ items }}
    {{ title }}
  {{ /items }}
{{ /cart }}
```

Seed Default Data
-----------------

[](#seed-default-data)

Create starter entries for taxes and shipping rates:

```
php artisan webbycommerce:seed-defaults
```

Use `--force` to skip confirmation:

```
php artisan webbycommerce:seed-defaults --force
```

Configuration
-------------

[](#configuration)

The main configuration file is `config/webbycommerce.php`.

Key configuration areas:

- `currency`
- `shipping`
- `products`
- `orders`
- `customers`
- `coupons`
- `cart`
- `payment`

Store Settings
--------------

[](#store-settings)

The addon also supports store-level globals in `content/globals/webbycommerce_settings.yaml`:

```
store_name: My Store
store_email: admin@example.com
```

- `store_name` is mapped to `config('webbycommerce.store.name')` and is used in email templates.
- `store_email` is mapped to `config('webbycommerce.store.email')` and is used as the fallback contact address in email notifications.

Order Confirmation Email Setup
------------------------------

[](#order-confirmation-email-setup)

Order confirmation emails are controlled by both the global settings and the package config.

### Global settings

[](#global-settings)

Update `content/globals/webbycommerce_settings.yaml` or the Statamic Control Panel global set:

```
email_order_confirmation_enabled: true
email_order_confirmation_to_customer: true
email_order_confirmation_to_admin: true
email_order_confirmation_admin_email: admin@example.com
```

> If `email_order_confirmation_admin_email` is blank, the addon falls back to `store_email`.

### Package config

[](#package-config)

The addon maps the globals into `config/webbycommerce.php` under:

```
'emails' => [
    'order_confirmation' => [
        'enabled' => true,
        'to_customer' => true,
        'to_admin' => false,
        'admin_email' => env('WEBBYCOMMERCE_ADMIN_EMAIL'),
    ],
    'order_shipped' => [
        'enabled' => true,
    ],
],
```

- `enabled` turns confirmation emails on or off.
- `to_customer` sends the email to the customer.
- `to_admin` sends the email to the admin email address.
- `admin_email` is the admin recipient address.

After changing settings, run:

```
php artisan optimize:clear
```

Important Files
---------------

[](#important-files)

FilePurpose`src/ServiceProvider.php`Register routes, collections, permissions, and commands`routes/shop.php`Storefront route definitions`config/webbycommerce.php`Package configuration`resources/blueprints/collections`Statamic blueprints`src/Cart/Cart.php`Cart service`src/Wishlist/Wishlist.php`Wishlist service`src/Http/Controllers/Shop/CheckoutController.php`Checkout and payment logic---

 **Made with ❤️ by [WebbyCrown Solutions](https://www.webbycrown.com/statamic-addon-development-services/)**

###  Health Score

37

—

LowBetter than 81% of packages

Maintenance89

Actively maintained with recent releases

Popularity3

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity42

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

53d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/4be8c491dee65372c701ca519d413336b1d7fc62148a413eb329b087226123c8?d=identicon)[webbycrown](/maintainers/webbycrown)

---

Top Contributors

[![rohit-ghoghari](https://avatars.githubusercontent.com/u/50444614?v=4)](https://github.com/rohit-ghoghari "rohit-ghoghari (5 commits)")

---

Tags

addonstatamicwebbycommerce-statamic

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/webbycrown-webbycommerce-statamic/health.svg)

```
[![Health](https://phpackages.com/badges/webbycrown-webbycommerce-statamic/health.svg)](https://phpackages.com/packages/webbycrown-webbycommerce-statamic)
```

###  Alternatives

[statamic/statamic

Statamic

829179.5k](/packages/statamic-statamic)[statamic-rad-pack/runway

Eloquently manage your database models in Statamic.

135224.7k8](/packages/statamic-rad-pack-runway)[duncanmcclean/statamic-cargo

Comprehensive e-commerce addon for Statamic. Build bespoke e-commerce sites without the complexity.

3518.3k](/packages/duncanmcclean-statamic-cargo)[cboxdk/statamic-mcp

MCP (Model Context Protocol) server for Statamic CMS v6 — gives AI assistants structured access to content, blueprints, assets, and more.

3114.5k](/packages/cboxdk-statamic-mcp)[marcorieser/statamic-livewire

A Laravel Livewire integration for Statamic.

23111.5k15](/packages/marcorieser-statamic-livewire)[withcandour/aardvark-seo

Save time and get your Statamic site to rank better with the SEO addon for Statamic.

15133.0k](/packages/withcandour-aardvark-seo)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
