Commerce administration dashboard
* Product catalogue * Product categories * Physical, digital, service, and bundle product types * Product variants and option storage * SKU management * Product publishing states * Pricing and comparison pricing * Inventory quantities * Low-stock thresholds * Inventory movement history * Customer records and addresses * Orders and order items * Payment and fulfilment statuses * Payment transaction storage * Promotions and coupon codes * Shipping methods * Tax rates * Payment, shipping, tax, and inventory provider contracts * Default manual payment provider * Default flat-rate shipping provider * Public product REST API * Administration navigation * Commerce permissions * Module registration * Module boot tests
This commit is contained in:
@@ -0,0 +1,4 @@
|
||||
<?php
|
||||
namespace Modules\Commerce\Contracts;
|
||||
use Modules\Commerce\Models\Product;
|
||||
interface InventoryProvider { public function adjust(Product $product, int $quantity, string $reason, ?int $userId = null): void; public function available(Product $product): int; }
|
||||
@@ -0,0 +1,4 @@
|
||||
<?php
|
||||
namespace Modules\Commerce\Contracts;
|
||||
use Modules\Commerce\Models\Order;
|
||||
interface PaymentProvider { public function charge(Order $order, array $data = []): array; public function refund(Order $order, float $amount): array; }
|
||||
@@ -0,0 +1,3 @@
|
||||
<?php
|
||||
namespace Modules\Commerce\Contracts;
|
||||
interface ShippingProvider { public function quote(array $address, float $subtotal): float; }
|
||||
@@ -0,0 +1,3 @@
|
||||
<?php
|
||||
namespace Modules\Commerce\Contracts;
|
||||
interface TaxProvider { public function calculate(float $subtotal, array $address = []): float; }
|
||||
Reference in New Issue
Block a user