Download the PHP package albertvds/laravel-wp-sync without Composer
On this page you can find all versions of the php package albertvds/laravel-wp-sync. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download albertvds/laravel-wp-sync
More information about albertvds/laravel-wp-sync
Files in albertvds/laravel-wp-sync
Package laravel-wp-sync
Short Description Laravel service provider, query builder, and webhook bridge for the WordPress and WooCommerce REST APIs.
License MIT
Informations about the package laravel-wp-sync
albertvds/laravel-wp-sync
Laravel integration for WordPress and WooCommerce
Connects your Laravel application to the WordPress and WooCommerce REST APIs. Handles authentication, request building, response mapping, webhook verification, and local data sync.
Installation
The service provider and Facades register automatically via Laravel's package auto-discovery.
Publish the config file:
Add your credentials to .env:
What it does
This package provides a service provider, Facade, fluent query builder, typed DTOs, and Artisan commands for working with the WordPress and WooCommerce REST APIs from within a Laravel application.
Incoming WooCommerce webhooks are received on an automatically registered route, verified against the HMAC-SHA256 signature, and dispatched as typed Laravel events. API responses are mapped to typed data objects rather than raw arrays. Frequently accessed resources can be cached using Laravel's existing cache configuration.
Features
- Fluent query builder — filter, paginate, and retrieve WordPress posts, pages, and WooCommerce products, orders, and customers using a chainable API.
- Typed DTOs — API responses are returned as typed objects (
WpPost,WooOrder,WooProduct,WooCustomer) with documented properties. - Webhook bridge — registers a single route, verifies the request signature, maps the topic to a Laravel event class, and dispatches it. Supports all standard WooCommerce webhook topics.
- Artisan commands —
wp:syncandwoo:syncpull remote data into local database tables for offline querying. - Cache layer — per-resource TTL configuration, backed by whichever Laravel cache driver the application already uses.
- Multi-site support — define multiple WordPress or WooCommerce connections in the config file and switch between them at runtime.
- Auto-discovery — the service provider and Facade register automatically via Composer's
extra.laravelconfig. No manual setup required.
Usage
WordPress
Retrieve WordPress resources using the Wp Facade:
WooCommerce
Retrieve WooCommerce resources using the Woo Facade:
Webhooks
Point your WooCommerce webhook delivery URL at:
The route is registered automatically — no changes to routes/web.php are needed.
The package verifies the X-WC-Webhook-Signature header before processing any payload.
Listen to dispatched events anywhere in your Laravel application:
To listen to all webhook events for logging or auditing purposes:
Supported webhook topics:
| WooCommerce topic | Laravel event |
|---|---|
order.created |
OrderCreated |
order.updated |
OrderUpdated |
order.deleted |
OrderDeleted |
product.updated |
ProductUpdated |
customer.created |
CustomerCreated |
| (any other) | WooWebhookReceived |
Artisan commands
Pull remote data into local database tables for offline querying:
Schedule syncs in routes/console.php:
Multi-site connections
Define multiple connections in config/wp-sync.php:
Switch between connections at runtime:
Cache
Configure TTL per environment in .env:
Or per resource type in config/wp-sync.php:
Configuration reference
After publishing, config/wp-sync.php contains:
Requirements
| Dependency | Version |
|---|---|
| PHP | 8.2 · 8.3 |
| Laravel | 10 · 11 · 12 |
| WordPress REST API | 6.x |
| WooCommerce REST API | 8.x |
Testing
The test suite uses Pest and Orchestra Testbench.
HTTP calls to the WordPress and WooCommerce APIs are intercepted with Http::fake() —
no live credentials are required to run the tests.
Changelog
See CHANGELOG.md for recent changes.
License
The MIT License (MIT). See LICENSE for details.
All versions of laravel-wp-sync with dependencies
illuminate/support Version ^10.0|^11.0|^12.0
illuminate/http Version ^10.0|^11.0|^12.0