- What is scriptdevelop/meta-catalog-manager used for?
- It is a Laravel package for interacting with the Meta Marketing API and syncing product catalogs and inventory data. The described scope includes syncing products, building and uploading catalog feeds, handling batch API requests, and keeping item data consistent with Meta Commerce Manager.
- How do I install scriptdevelop/meta-catalog-manager in a Laravel app?
- Install it with Composer, publish its configuration, and provide the required Meta app credentials, Business Manager ID, and catalog ID. Before adopting it, verify its Composer constraints against your PHP, Laravel, and Guzzle versions because the provided evaluation notes no visible support matrix.
- Which Laravel and PHP versions does meta-catalog-manager support?
- The provided material does not show a Laravel or PHP version support statement, CI matrix, or test suite. Check the package composer.json and README before use, and verify compatibility with your PHP 8.x and Laravel 10-12 baseline. Treat version constraints as an early validation item rather than an assumption.
- What Meta credentials and setup are required for catalog sync?
- You will need a Meta app, an appropriate system user or user token, a Business Manager, and catalog IDs. External prerequisites include a verified business, catalog ownership, commerce policy eligibility, and per-account token provisioning. Credential storage, logging, encryption, and tenant isolation should be reviewed before production use.
- Does it support scheduled catalog feed sync with Laravel queues?
- The evaluation explicitly asks whether queue or console integration exists for scheduled feed sync, but the provided context does not confirm it. Feed sync should run on a queue rather than in a request cycle, so you may need to wrap package calls in your own job and scheduler integration. Confirm the package API and failure behavior before relying on it for scheduled sync.
- How does it handle Meta Batch API rate limits and partial failures?
- The package is described as handling batch API requests, but the provided material does not document retry behavior for 429 or 613 responses or how Batch API partial success is represented. Rate limiting and partial-failure semantics are among the hardest parts of this domain and are flagged as a likely gap. Review the source and tests, and consider adding a wrapper with retry and backoff logic.
- Can it isolate Meta credentials per account or tenant?
- The provided evaluation says it is unclear whether the package isolates account credentials per tenant or resolves them per account. For multi-tenant Laravel applications, verify how tokens are resolved, stored, cached, and logged before using it directly. If isolation is not built in, keep credential resolution in your own adapter layer.
- Are Meta Graph API errors returned as typed exceptions?
- The evaluation raises this as an open question: errors may be surfaced as typed exceptions with diagnostic context or as raw Graph responses, but the provided context does not confirm which. Inspect the package for exception mapping, logging, and response handling. In production, normalize errors in your own adapter so callers do not depend on raw Meta payloads.
- How are localized catalogs implemented in this Laravel package?
- Localized catalog support is listed as a differentiator, but the provided material does not explain whether it uses feed rules, overrides, or per-locale catalogs. Confirm the implementation against Meta Commerce Manager requirements and your own locale strategy. Do not assume locale behavior without checking the package code and tests.
- Is scriptdevelop/meta-catalog-manager production-ready and actively maintained?
- The assessment notes a single maintainer, zero dependents, two stars, and no visible release cadence or test suite, so it should be treated as vendored code you may need to own rather than a dependable dependency. Meta Graph API version churn and undocumented rate-limit handling add risk. Use a narrow CatalogGateway port with a direct Graph API fallback adapter to limit abandonment cost.