
Product Webhook for Magento 2
SKU: magendoo-product-webhook
- Instant access after order confirmation
- Open source — MIT licensed
- Free updates included
- Professional support available
Need help?
Contact our support team for product questions.
Instant Download
After payment
MIT Licensed
Use in any project
Secure Payment
SSL encrypted
Support Included
With every purchase
Product Webhook for Magento 2
Keep external systems in sync with your Magento product catalogue without polling. Every time a product is saved — through the admin or via REST API — this module fires a secure HTTP webhook to your endpoint with the configured product attributes. Use it to push products to a PIM, PDP, search index, data warehouse, or any third-party enrichment service.
Security-First Design
- HTTPS-only — all webhook destinations must use TLS
- SSRF protection — blocks localhost, RFC-1918 private IP ranges, and the AWS metadata endpoint (
169.254.169.254) - Sensitive data filtering — auto-removes cost price, internal IDs, and password fields; configurable whitelist/blacklist
- ACL permission — only admins with
Magendoo_ProductWebhook::configcan modify settings
Synchronous or Asynchronous Delivery
- Synchronous — fires inline on product save; simple but adds latency to admin saves
- RabbitMQ Queue (recommended) — dispatches to
magendoo.productdataqueue; consumed bymagendoo_productdata_consumerin the background; zero impact on admin response time
Example Webhook Payload
A JSON object containing the configured attribute whitelist:
{
"sku": "PRODUCT-SKU-123",
"name": "Product Name",
"price": 99.99,
"status": "1",
"visibility": "4",
"type_id": "simple",
"store_id": 1,
"entity_id": 123
}
Configuration
Admin → Stores → Configuration → Magendoo → Product Webhook
- Enable / disable the webhook
- Destination endpoint URL (HTTPS required)
- Synchronous or RabbitMQ async delivery
- HTTP request timeout (default: 10 s)
- Allowed attributes — comma-separated whitelist (e.g.
sku,name,price,status,visibility,type_id,weight)
Starting the Queue Consumer
bin/magento queue:consumers:start magendoo_productdata_consumer
Add this to your cron or process manager (Supervisor, systemd) to ensure continuous processing.
Logging
All delivery attempts (success and failure) are written to var/log/product_webhook.log with request URL, HTTP status, and payload summary.
Installation
composer require magendoo/product-webhook
bin/magento module:enable Magendoo_ProductWebhook
bin/magento setup:upgrade && bin/magento setup:di:compile
bin/magento cache:flush
Requirements
- Magento 2.4.x
- PHP 7.4 or 8.1+
- RabbitMQ (optional, required for async delivery)
License: MIT | View on GitHub
Compatibility & Installation
See the GitHub repository for the current compatibility matrix.
The package is not on Packagist; install it from the GitHub repository:
composer config repositories.magendoo-product-webhook vcs \
https://github.com/magendooro/magento2-product-webhook.git
composer require magendoo/product-webhook
Key Features
- Fires an HTTP webhook with product data whenever a product is created or saved — from the admin or the REST API
- HTTPS-only delivery with SSRF protection: blocks localhost, private IP ranges, and the AWS metadata endpoint
- Whitelist/blacklist attribute filtering — sensitive data such as cost and passwords is removed automatically
- Synchronous delivery or async via RabbitMQ (
magendoo_productdata_consumer) for zero admin-save latency - Configurable endpoint, timeout (default 10 s), and allowed-attributes list per store
- ACL-protected configuration (
Magendoo_ProductWebhook::config) - Every delivery attempt logged to
var/log/product_webhook.log
Last updated: November 2025 · 2a19e38
