{"id":287687,"date":"2026-03-19T16:19:48","date_gmt":"2026-03-19T16:19:48","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/barion-pixel-for-woocommerce\/"},"modified":"2026-05-11T16:03:29","modified_gmt":"2026-05-11T16:03:29","slug":"advanced-pixel-for-barion","status":"publish","type":"plugin","link":"https:\/\/test.wordpress.org\/plugins\/advanced-pixel-for-barion\/","author":16514928,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.0.3","stable_tag":"1.0.3","tested":"6.9.4","requires":"5.0","requires_php":"7.2","requires_plugins":null,"header_name":"Advanced Pixel for Barion","header_author":"Gergely Csecsey","header_description":"Barion Pixel integration for WooCommerce with full e-commerce event tracking, cookie consent support, and WP Consent API compatibility.","assets_banners_color":"0593f2","last_updated":"2026-05-11 16:03:29","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/github.com\/gcsecsey\/advanced-pixel-for-barion","header_author_uri":"https:\/\/github.com\/gcsecsey","rating":0,"author_block_rating":0,"active_installs":10,"downloads":282,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"mrdarkside","date":"2026-03-19 16:13:53"},"1.0.1":{"tag":"1.0.1","author":"mrdarkside","date":"2026-05-08 13:09:30"},"1.0.3":{"tag":"1.0.3","author":"mrdarkside","date":"2026-05-11 16:03:29"}},"upgrade_notice":{"1.0.3":"<p>Fixes <code>setEncryptedEmail<\/code> for users whose email contains <code>+<\/code> or has an extended TLD \u2014 bp.js&#039;s internal regex rejected them. The plugin now pre-hashes the email with SHA-1 before sending.<\/p>","1.0.2":"<p>Stops duplicate <code>setEncryptedEmail<\/code> events on checkout and fixes the <code>Format of e-mail address or hash is invalid<\/code> error that 1.0.1 could produce.<\/p>","1.0.1":"<p>Critical fix: pixel events (including setEncryptedEmail) were never sent in 1.0.0 due to a script enqueueing timing bug. All users should upgrade.<\/p>","1.0.0":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3486663,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3486663,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3486663,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3486663,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{"blueprint.json":{"filename":"blueprint.json","revision":3528930,"resolution":false,"location":"assets","locale":"","contents":"{\"$schema\":\"https:\\\/\\\/playground.wordpress.net\\\/blueprint-schema.json\",\"landingPage\":\"\\\/shop\\\/\",\"preferredVersions\":{\"php\":\"8.1\",\"wp\":\"latest\"},\"features\":{\"networking\":true},\"steps\":[{\"step\":\"login\"},{\"step\":\"installPlugin\",\"pluginData\":{\"resource\":\"wordpress.org\\\/plugins\",\"slug\":\"woocommerce\"}},{\"step\":\"installPlugin\",\"pluginZipFile\":{\"resource\":\"url\",\"url\":\"https:\\\/\\\/github.com\\\/gcsecsey\\\/advanced-pixel-for-barion\\\/archive\\\/refs\\\/heads\\\/main.zip\"}},{\"step\":\"runPHP\",\"code\":\"<?php require '\\\/wordpress\\\/wp-load.php'; delete_transient( '_wc_activation_redirect' ); update_option( 'woocommerce_onboarding_profile', array( 'completed' => true ) ); ?>\"},{\"step\":\"setSiteOptions\",\"options\":{\"blogname\":\"Advanced Pixel for Barion Demo Store\",\"woocommerce_currency\":\"EUR\",\"woocommerce_store_address\":\"V\\u00e1ci \\u00fat 1\",\"woocommerce_store_city\":\"Budapest\",\"woocommerce_store_postcode\":\"1132\",\"woocommerce_default_country\":\"HU\"}},{\"step\":\"runPHP\",\"code\":\"<?php require '\\\/wordpress\\\/wp-load.php'; update_option( 'wc_barion_pixel_settings', array( 'pixel_id' => 'BP-DemoPixelId-00', 'enable_full_tracking' => true, 'debug_mode' => true ) ); ?>\"},{\"step\":\"writeFile\",\"path\":\"\\\/wordpress\\\/wp-content\\\/mu-plugins\\\/blueprint-demo-notice.php\",\"data\":\"<?php add_action('wp_body_open', function() { if (is_admin()) return; echo '<div style=\\\"background:#1e1e2e;color:#cdd6f4;padding:12px 20px;text-align:center;font-family:system-ui,sans-serif;font-size:14px;\\\">Open your browser\\\\'s <strong>Developer Console<\\\/strong> (F12) to see <code style=\\\"background:#313244;padding:2px 6px;border-radius:3px;color:#89b4fa;\\\">[Barion Pixel]<\\\/code> debug logs as you browse the store.<\\\/div>'; });\"},{\"step\":\"importWxr\",\"file\":{\"resource\":\"url\",\"url\":\"https:\\\/\\\/raw.githubusercontent.com\\\/woocommerce\\\/woocommerce\\\/trunk\\\/plugins\\\/woocommerce\\\/sample-data\\\/sample_products.xml\"}},{\"step\":\"installPlugin\",\"pluginData\":{\"resource\":\"wordpress.org\\\/plugins\",\"slug\":\"advanced-pixel-for-barion\"},\"options\":{\"activate\":true}}]}"}},"all_blocks":[],"tagged_versions":["1.0.0","1.0.1","1.0.3"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"Settings page \u2014 enter your Barion Pixel ID and configure tracking options."},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[48175,888,28464,550,286],"plugin_category":[36,45],"plugin_contributors":[258126],"plugin_business_model":[],"class_list":["post-287687","plugin","type-plugin","status-publish","hentry","plugin_tags-barion","plugin_tags-e-commerce","plugin_tags-pixel","plugin_tags-tracking","plugin_tags-woocommerce","plugin_category-analytics","plugin_category-ecommerce","plugin_contributors-mrdarkside","plugin_committers-mrdarkside"],"banners":{"banner":"https:\/\/ps.w.org\/advanced-pixel-for-barion\/assets\/banner-772x250.png?rev=3486663","banner_2x":"https:\/\/ps.w.org\/advanced-pixel-for-barion\/assets\/banner-1544x500.png?rev=3486663","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/advanced-pixel-for-barion\/assets\/icon-128x128.png?rev=3486663","icon_2x":"https:\/\/ps.w.org\/advanced-pixel-for-barion\/assets\/icon-256x256.png?rev=3486663","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Advanced Pixel for Barion adds Barion Pixel tracking to your WooCommerce store. It supports two modes:<\/p>\n\n<p><strong>Base Pixel<\/strong> (always active): Loads the Barion tracking script on all pages. Fires <code>pageView<\/code> automatically for fraud prevention and basic analytics.<\/p>\n\n<p><strong>Full Tracking<\/strong> (optional): Tracks all mandatory e-commerce events per the Barion Pixel documentation:<\/p>\n\n<ul>\n<li><strong>contentView<\/strong> - Product page views<\/li>\n<li><strong>addToCart<\/strong> - Add to cart actions (client-side, compatible with page caching)<\/li>\n<li><strong>initiateCheckout<\/strong> - Checkout page views<\/li>\n<li><strong>purchase<\/strong> - Completed orders with full revenue tracking<\/li>\n<li><strong>setEncryptedEmail<\/strong> - Encrypted billing email for user identification<\/li>\n<\/ul>\n\n<h4>Cookie Consent<\/h4>\n\n<p>The plugin integrates with the <a href=\"https:\/\/wordpress.org\/plugins\/wp-consent-api\/\">WP Consent API<\/a>, supporting all major cookie consent plugins:<\/p>\n\n<ul>\n<li>CookieYes<\/li>\n<li>Complianz<\/li>\n<li>Real Cookie Banner<\/li>\n<li>GDPR Cookie Compliance (Moove)<\/li>\n<li>Cookie Notice by dFactory<\/li>\n<\/ul>\n\n<p>Direct fallback integration with Cookie Law Info is also included.<\/p>\n\n<h4>Supported Languages<\/h4>\n\n<ul>\n<li>English (default)<\/li>\n<li>Hungarian (hu_HU)<\/li>\n<li>Czech (cs_CZ)<\/li>\n<li>Slovak (sk_SK)<\/li>\n<li>German (de_DE)<\/li>\n<li>Croatian (hr)<\/li>\n<li>Romanian (ro_RO)<\/li>\n<li>Slovenian (sl_SI)<\/li>\n<li>Serbian (sr_RS)<\/li>\n<\/ul>\n\n<h4>Privacy<\/h4>\n\n<p>This plugin loads the Barion Pixel script (bp.js) from pixel.barion.com on all frontend pages. Page view and e-commerce event data is sent to Barion's servers. On purchase completion, the billing email address is passed to bp.js which encrypts it with SHA1 before transmission \u2014 no plaintext email leaves your server.<\/p>\n\n<h4>Key Features<\/h4>\n\n<ul>\n<li>Base Pixel with automatic pageView tracking<\/li>\n<li>Full e-commerce event tracking with all required fields<\/li>\n<li>WP Consent API integration for universal cookie consent support<\/li>\n<li>Client-side add-to-cart tracking (compatible with page caching)<\/li>\n<li>Variable product support (tracks variation prices)<\/li>\n<li>Duplicate purchase prevention<\/li>\n<li>Debug mode with console logging<\/li>\n<li>Detects other plugins loading bp.js to avoid double-loading<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>advanced-pixel-for-barion<\/code> folder to <code>\/wp-content\/plugins\/<\/code><\/li>\n<li>Activate the plugin through the 'Plugins' menu in WordPress<\/li>\n<li>Go to Settings &gt; Barion Pixel and enter your Barion Pixel ID<\/li>\n<li>Optionally enable or disable Full Pixel Tracking<\/li>\n<\/ol>\n\n<h4>Requirements<\/h4>\n\n<ul>\n<li>WordPress 5.0 or higher<\/li>\n<li>PHP 7.2 or higher<\/li>\n<li>WooCommerce 5.0 or higher (for full event tracking)<\/li>\n<\/ul>\n\n<h4>Optional<\/h4>\n\n<ul>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/wp-consent-api\/\">WP Consent API<\/a> for universal cookie consent support<\/li>\n<li>Any WP Consent API compatible cookie plugin (CookieYes, Complianz, etc.)<\/li>\n<\/ul>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20woocommerce%3F\"><h3>Do I need WooCommerce?<\/h3><\/dt>\n<dd><p>The Base Pixel (pageView) works without WooCommerce. Full event tracking (contentView, addToCart, initiateCheckout, purchase, setEncryptedEmail) requires WooCommerce.<\/p><\/dd>\n<dt id=\"i%20already%20use%20the%20barion%20payment%20gateway%20plugin.%20will%20this%20conflict%3F\"><h3>I already use the Barion Payment Gateway plugin. Will this conflict?<\/h3><\/dt>\n<dd><p>No. The <a href=\"https:\/\/github.com\/szelpe\/woocommerce-barion\">Barion Payment Gateway<\/a> is a payment processor only \u2014 it doesn't implement Barion Pixel event tracking. Both plugins coexist perfectly. If both have a Pixel ID configured, Advanced Pixel for Barion detects that bp.js is already loaded and skips re-loading it.<\/p><\/dd>\n<dt id=\"which%20cookie%20consent%20plugins%20are%20supported%3F\"><h3>Which cookie consent plugins are supported?<\/h3><\/dt>\n<dd><p>All plugins that implement the WP Consent API standard: CookieYes, Complianz, Real Cookie Banner, GDPR Cookie Compliance (Moove), Cookie Notice by dFactory, and others. Direct fallback integration with Cookie Law Info is also built in.<\/p><\/dd>\n<dt id=\"what%20is%20the%20difference%20between%20base%20pixel%20and%20full%20tracking%3F\"><h3>What is the difference between Base Pixel and Full Tracking?<\/h3><\/dt>\n<dd><p><strong>Base Pixel<\/strong> loads bp.js and fires pageView on every page. This is used by Barion for fraud prevention and basic analytics. <strong>Full Tracking<\/strong> adds e-commerce events (product views, add to cart, checkout, purchase) that enable marketing analytics and may qualify your store for lower Barion commission rates.<\/p><\/dd>\n<dt id=\"can%20i%20use%20only%20the%20base%20pixel%3F\"><h3>Can I use only the Base Pixel?<\/h3><\/dt>\n<dd><p>Yes. Just uncheck \"Enable Full Pixel Tracking\" in the settings. The base pixel will still load and fire pageView events.<\/p><\/dd>\n<dt id=\"how%20does%20the%20plugin%20handle%20page%20caching%3F\"><h3>How does the plugin handle page caching?<\/h3><\/dt>\n<dd><p>The addToCart event uses client-side JavaScript instead of PHP sessions, so it works correctly with all page caching setups (WP Super Cache, W3 Total Cache, LiteSpeed, WordPress.com hosting, etc.). Other events fire on dynamic pages that are not cached.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Fix: emails containing <code>+<\/code> in the local part (e.g. <code>alice+tag@example.com<\/code>), or with TLDs longer than four letters (e.g. <code>.museum<\/code>, <code>.online<\/code>), were rejected by bp.js with <code>Format of e-mail address or hash is invalid<\/code>. The plugin now SHA-1 hashes the email client-side (via the Web Crypto API) before passing it to bp.js, which bypasses bp.js's restrictive internal email regex. The Barion Pixel API explicitly supports pre-computed SHA-1 hashes.<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Fix: <code>setEncryptedEmail<\/code> was firing multiple times on a single checkout page load (the <code>change<\/code> + <code>blur<\/code> pair plus the <code>updated_checkout<\/code> rebind caused duplicates).<\/li>\n<li>Fix: bp.js rejected partial values (e.g. <code>x@y<\/code>) with error 12 (<code>Format of e-mail address or hash is invalid in setEncryptedEmail<\/code>). The email is now validated against the HTML5 spec for valid email addresses before being sent; pre-computed SHA-1 hashes are also accepted, matching the Barion Pixel API reference.<\/li>\n<li>Fix: aligned the bp.js call with the Barion documentation \u2014 <code>bp('identity', 'setEncryptedEmail', ...)<\/code> (previously <code>'identify'<\/code>).<\/li>\n<li>setEncryptedEmail now fires once for logged-in users on checkout load, and once per distinct, valid email entered into the billing field (no more <code>blur<\/code> handler, idempotent rebinding via a data attribute).<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Fix: events script (contentView, addToCart, initiateCheckout, purchase, setEncryptedEmail) was never printed because it was enqueued after <code>wp_print_footer_scripts<\/code> had already run.<\/li>\n<li>New: <code>setEncryptedEmail<\/code> now also fires when the customer enters their email on the checkout page (and on checkout load for logged-in users), as required by the Barion Pixel API reference.<\/li>\n<li>Fix: cookie consent auto-detection (WP Consent API and Cookie Law Info) now runs after <code>DOMContentLoaded<\/code>, so it can see globals defined by consent plugins that load later in the page.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>Base Barion Pixel (pageView) implementation<\/li>\n<li>Full event tracking: contentView, addToCart, initiateCheckout, purchase, setEncryptedEmail<\/li>\n<li>WP Consent API integration (supports CookieYes, Complianz, Real Cookie Banner, and others)<\/li>\n<li>Cookie Law Info fallback integration<\/li>\n<li>Admin settings panel with debug mode<\/li>\n<li>Client-side addToCart tracking (compatible with page caching)<\/li>\n<li>Variable product support (tracks variation prices)<\/li>\n<li>Duplicate purchase prevention<\/li>\n<li>bp.js double-load detection<\/li>\n<\/ul>","raw_excerpt":"Barion Pixel integration for WooCommerce with full e-commerce event tracking, cookie consent support, and WP Consent API compatibility.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/287687","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=287687"}],"author":[{"embeddable":true,"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/mrdarkside"}],"wp:attachment":[{"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=287687"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=287687"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=287687"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=287687"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=287687"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=287687"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}