Commit Graph
61 Commits
Author SHA1 Message Date
Malek TellissiandClaude Sonnet 4.6 edc4c5a28c Set explicit navigation group order in panel provider
Deploy / deploy (push) Successful in 13s
Produkte group appears first, followed by Lager, Waren Ein/Ausgang,
Ressourcen, CRM.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-09-11 15:06:21 +02:00
Malek TellissiandClaude Sonnet 4.6 53955b0163 Group Produkte, Rezepte and Chargen under 'Produkte' nav group
Deploy / deploy (push) Successful in 13s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-09-11 15:04:19 +02:00
Malek TellissiandClaude Sonnet 4.6 32e196719a Extend shopify:import to handle Stück, Stangen and Default Title variants
Deploy / deploy (push) Successful in 13s
Parses additional packaging formats from option1 and falls back to SKU
parsing for single-variant products with 'Default Title'.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-09-11 15:02:12 +02:00
Malek TellissiandClaude Sonnet 4.6 94d94effa9 Add shopify:import command for initial product/inventory import
Deploy / deploy (push) Successful in 14s
Fetches all products and variants from Shopify API, creates local
Products, Packings and ProductSizes with shopify_variant_id, and
fills ProductInventory rows to match Shopify's inventory_quantity.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-09-11 14:58:40 +02:00
Malek TellissiandClaude Sonnet 4.6 80b7831a1e Remove temporary Shopify OAuth install routes
Deploy / deploy (push) Successful in 14s
Token captured, routes no longer needed.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-09-11 03:21:48 +02:00
Malek TellissiandClaude Sonnet 4.6 527f99bb6e Set explicit redirect_uri in Shopify OAuth install URL
Deploy / deploy (push) Successful in 14s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-09-11 03:15:02 +02:00
Malek TellissiandClaude Sonnet 4.6 99d3ea748c Fix nullable clientSecret in ShopifyInstallController
Deploy / deploy (push) Successful in 13s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-09-11 03:13:40 +02:00
Malek TellissiandClaude Sonnet 4.6 2b7913311a Add temporary Shopify OAuth install routes
Deploy / deploy (push) Successful in 14s
/shopify/install  → redirects to Shopify OAuth
/shopify/callback → exchanges code for access token and displays it

To be removed after token is captured.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-09-11 03:12:20 +02:00
Malek TellissiandClaude Sonnet 4.6 7e9c43f2bf Improve Shopify sync error logging
Deploy / deploy (push) Successful in 14s
Log clear hint for 403 (IP whitelist), 401, 429, 5xx.
Commands exit with failure and print error when API returns no data.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-09-11 02:54:44 +02:00
Malek TellissiandClaude Sonnet 4.6 467d85dfec Add Shopify inventory sync and order webhook
Deploy / deploy (push) Successful in 14s
- 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
Malek Tellissi 400172cdde Erster Upload 2026-09-11 01:17:47 +02:00