Free open-source Magento 2 modules — professional installation & support available
Magendoo
magendoo-product-webhook
Digital

Product Webhook for Magento 2

SKU: magendoo-product-webhook

Free
Quantity
  • 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::config can 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.productdata queue; consumed by magendoo_productdata_consumer in 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

FAQ(5)

Have a question?