- What is justbetter/laravel-magento-async used for?
- It stores and dispatches Magento async and bulk requests as Laravel background jobs. It wraps Magento API calls so product, order, and customer syncs run asynchronously instead of blocking your application. It is a transport adapter, not a system of record or a full ERP/PIM layer.
- How do I install justbetter/laravel-magento-async in Laravel?
- Install it with Composer and rely on Laravel package discovery so the service provider is registered automatically. Publish the package config and set the Magento base URL, credentials, and timeouts through environment variables. The assessment mentions no database migrations or published assets that imply schema coupling.
- How is justbetter/laravel-magento-async configured?
- Configuration is env-driven, covering the Magento base URL, credentials, and timeouts. You should publish the config file and keep secrets in a secret manager rather than plain .env on disk. Review the config for bulk operation IDs, polling backoff, and timeouts before production.
- Does justbetter/laravel-magento-async support Laravel 13?
- Version 1.3.0 adds Laravel 13 support with no API changes, deprecations, or behavioral changes called out. The release note does not distinguish between a widened illuminate/* constraint and a fully exercised CI matrix, so check composer.json and CI before upgrading. Pin to ^1.3 once your Laravel and PHP versions are confirmed.
- Which Magento versions and editions are supported?
- The package targets Magento 2 async and bulk REST endpoints, but the assessment does not confirm which Adobe Commerce or Magento Open Source versions are validated. Verify that the specific async/bulk endpoints you need are available across both editions for your operations. Test against a Magento sandbox before relying on it in production.
- How are Magento async bulk operation IDs and polling handled?
- The package models Magento's submit, receive bulk/async identifier, poll status, and reconcile per-item results flow. Timeouts are env-driven, but the assessment does not confirm how bulk operation IDs, polling backoff, and operation expiry are configured. Review the config and code to confirm retry and polling behavior for your workload.
- Does justbetter/laravel-magento-async handle idempotency and duplicate requests?
- No. At-least-once delivery and duplicate suppression are the consumer's responsibility, and the package will not solve idempotency for you. Design idempotency keys and reconciliation around your domain operations. The package is a transport concern, so business-level deduplication belongs in your application.
- How should I test justbetter/laravel-magento-async?
- Unit-test your domain port and use a fake or mocked HTTP client for job dispatch logic. Run a contract or integration test against a real Magento sandbox to validate async submission, polling, partial failures, and expiry. The assessment does not confirm the package's own coverage or whether it includes a real Magento integration test.
- What are the production risks of using justbetter/laravel-magento-async?
- You need queue workers running, or a scheduler to drive async polling, plus outbound HTTPS access to the Magento host. The main structural risks are vendor concentration, Magento async contract drift, and at-least-once delivery semantics you must handle. Release 1.3.0 itself is low risk because it is an additive Laravel 13 compatibility bump.
- What are alternatives to justbetter/laravel-magento-async?
- Alternatives include a custom adapter around Magento's REST or SOAP APIs, or a broader integration layer if you need ERP/PIM functionality. Introduce the package behind a domain-owned port so you can swap it later. Compare maintenance continuity, Magento version support, and async polling features before choosing.