- Does myparcelnl/sdk work with Laravel?
- It works with Laravel, but it is not a drop-in Laravel package. The SDK is a framework-agnostic PHP client with no service provider, config file, facade, or published contract, so you must bind a configured client into the container and externalize credentials yourself. The safer approach is to hide it behind a thin adapter or ShippingProvider port so controllers, checkout code, and jobs never call SDK classes directly.
- How do I install myparcelnl/sdk with Composer and which PHP versions are supported?
- Install it with composer require myparcelnl/sdk and commit your lockfile. Pin an exact minor version and verify the package PHP requirement, Guzzle major version, and ext-* requirements against your runtime before building on it. The context does not provide a tested Laravel/PHP support matrix, so treat compatibility as something you must prove in a spike.
- What license does myparcelnl/sdk use?
- The repository metadata reports a NOASSERTION license, which is not a clear OSI-approved license signal. That is a hard gate for commercial checkout or redistribution: legal should confirm whether you may use, modify, and redistribute the package before shipping it. Do not assume MIT or Apache-2.0 without checking the actual repository license file and maintainer statements.
- Is myparcelnl/sdk officially maintained by MyParcel?
- The package is described as the official PHP client, but the assessment flags unknown repository provenance and low adoption, so verify the maintainer identity and release cadence yourself. With roughly 31 stars, bus factor and long-term maintenance are unproven; assume you may need to fork and patch. Ask whether there is a security disclosure process and a predictable release schedule before putting it in a fulfillment path.
- Can I create shipments, generate labels, track parcels, and handle returns with myparcelnl/sdk?
- Yes, the core flows cover creating and managing shipments and return shipments, generating and downloading PDF or PNG shipping labels, retrieving track and trace information, and configuring delivery options and pickup locations. These map well to queued Laravel jobs and events. Keep those calls behind application-owned services and return your own DTOs rather than SDK objects.
- Does myparcelnl/sdk support idempotency for shipment creation?
- The available assessment does not confirm whether the SDK exposes idempotency keys or a dedupe window, so treat this as an open risk. A timeout plus retry must not create duplicate labels that you pay for. Implement your own idempotency key per order, use a database lock or outbox pattern, and verify behavior against a sandbox before enabling automatic retries.
- Are MyParcel webhooks supported for shipment status updates?
- It is not established in the context whether MyParcel pushes status updates or whether the SDK supports webhook signature verification. If webhooks are unavailable, poll track and trace from queued jobs with an explicit cadence and rate limit. Confirm webhook authentication and failure handling before designing your order state machine around it.
- Is there a sandbox or test environment for myparcelnl/sdk?
- A sandbox is one of the key open questions; availability, rate limits, and data-reset behavior are not confirmed here. Ask MyParcel or inspect the repository for test credentials and CI coverage before assuming production parity. If no sandbox exists, isolate the client behind an adapter and use fakes for most tests, with a small controlled live spike.
- How should I store MyParcel API credentials and handle PII in Laravel?
- Put API keys in environment variables and config/services.php, never in source control or logs. The client handles customer addresses and label PDFs, so scrub request and response logging and apply retention rules to generated labels. Bind the configured client as a singleton in a dedicated service provider so tests can substitute a fake implementation.
- Which carriers, countries, and customs flows does myparcelnl/sdk support?
- The SDK integrates with MyParcel and Dutch parcel carriers, but the exact carrier list, NL/BE/EU coverage, and customs behavior must be verified in the API documentation. The assessment specifically flags unsupported destinations and customs flows as unknowns. Feature-flag by carrier and region so an unsupported route or MyParcel outage degrades to a prior fulfillment path.