Files
Malek TellissiandClaude Sonnet 4.6 467d85dfec
Deploy / deploy (push) Successful in 14s
Add Shopify inventory sync and order webhook
- Migration: shopify_variant_id on products_sizes, shopify_order_id on products_sales
- ShopifyService: paginated REST client (2024-10 API)
- shopify:map — one-time command to link variants by SKU
- shopify:sync — reconciliation command (Shopify is master)
- VerifyShopifyWebhook middleware: HMAC-SHA256 verification
- ShopifyWebhookController: idempotent orders/paid handler, FIFO inventory deduction
- Webhook route: POST /api/webhooks/shopify/orders-paid

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-09-11 02:53:49 +02:00

30 lines
552 B
PHP

<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class ProductSale extends Model
{
protected $table = 'products_sales';
protected $fillable = [
'product_id',
'size_id',
'amount',
'sold_at',
'shopify_order_id',
];
// Beziehungen
public function product()
{
return $this->belongsTo(Product::class);
}
public function size()
{
return $this->belongsTo(ProductSize::class);
}
}