baks-dev/wildberries-products
Модуль продукции Wildberries для PHP 8.4+: установка через Composer, установка ресурсов (baks:assets:install) и обновление схемы БД через Doctrine migrations. Подходит для интеграции и управления каталогом Wildberries в проекте.
ProductSynced) can be layered on top to enable reactive workflows (e.g., triggering inventory alerts or analytics pipelines). Without this, direct DB writes may necessitate transaction management to avoid consistency issues.products vs. wildberries_products).sku uniqueness) that Wildberries enforces.baks:assets:install assume CLI access, which may not exist in serverless or containerized environments. Alternatives: API endpoints or scheduled jobs.| Risk Area | Severity | Mitigation |
|---|---|---|
| Schema Conflicts | High | Pre-integration: Run doctrine:migrations:diff and resolve clashes via table prefixes or custom migrations. |
| API Rate Limits | High | Implement exponential backoff and queue-based throttling (e.g., Laravel Queues with retry-after headers). |
| Localization Gaps | Medium | Wildberries uses Russian-specific SKUs/categories. Validate compatibility with global systems (e.g., Unicode handling). |
| Testing Coverage | Low | Augment with integration tests for custom workflows (e.g., inventory updates). Use the provided phpunit --group=wildberries-orders as a baseline. |
| Future Maintenance | Medium | Fork the repo if critical; monitor Wildberries API changes for breaking updates. MIT license allows modifications. |
| Performance at Scale | Medium | Benchmark sync throughput (e.g., 10K products/hour). Optimize with batch processing and caching. |
article vs. offer distinction?wildberries_seller_id, tax_class) that must be mapped to existing schemas?wildberries_category_id) without forking?php bin/console doctrine:migrations:diff --dry-run to identify conflicts..env or a secrets manager (e.g., AWS Secrets Manager).wb_products).wildberries_source column to existing products table.php bin/console baks:assets:install.php bin/console wildberries:products:sync --limit=10.ProductSynced events or queue sync jobs using Laravel Queues.retry_after header).Cache::remember("wildberries_products_{$sku}", now()->addHours(1), fn() => $this->fetchFromWildberries($sku));
phpunit --group=wildberries-orders tests as a baseline.composer require).doctrine:migrations:migrate)..env or secrets manager).baks:assets:install).doctrine:migrations:rollback.How can I help you explore Laravel packages today?