Facebook Pixel Integration with WHMCS to Track Conversions

Back   Posted on 26 september 2019 / Updated on 24 january 2021
Reading time 4 minutes

Conversion Tracking

Tracking conversions lets you identify how well your advertising campaign is generating sales, leads, signups and other key actions. Not tracking conversions is essentially like driving in the dark, without lights.

If you're using Facebook to promote your business, Billing Extension lets you integrate Facebook Pixel with WHMCS in a question of a couple of clicks. Before we start describing what you can track, let's first talk about some integrations that from time to time are posted for free on WHMCS forum.

Free script? It doesn't work

We're not saying it because we sell a product that does exactly this, but it's just the truth. I've personally seen plenty of these integrations and they all share the same problem. Their trackings are fake and inaccurate as they can be artificially inflated by anyone just refreshing the page.

If you have a bit of experience with conversion tracking, you know that this technology in based on placing a snippet of code in page output when key actions take place (eg. purchase, add to cart). The problem with free integrations is that they track things very poorly without taking care of fundamental details.

Let's say I place 5 orders but never proceed to paying the resulting invoices. According to free integrations, I'm generating 5 sales even though no payments have been received. That's not a sale but an abandoned cart! But there's more.

Let's say I refresh the page where the free integration places the snippet that tracks the purchase event. On every page load, Facebook Pixel tracks a new sale. Refreshing the page 50 times will result in 50 purchases.

How can you make plans and identify if your advertising campaign is generating sales when all your data is fake? Given the example above, you're tricked to think you made 55 sales but on your WHMCS there are just 5 unpaid orders.

On the contrary, Billing Extension tracks effective events. This way you can really plan a strategy based on reliable data. Simply put, 5 sales on Facebook Pixel correspond to 5 paid orders on WHMCS. That's the difference between a good tracking a poor one.

Enabling Facebook Pixel

Begin by visiting Addons > Billing Extension > Settings and press the + icon to open plugins page (yes, the module is so extensive that it even includes plugins). Here we are looking for Facebook Pixel. Press Activate and go back to settings.

Settings page now includes a new section named Facebook Pixel. Expand it and configure it to match your needs. Basically you simply need to insert your Pixel ID and choose what events you want to track.

The first step in tracking conversions is choosing what you want to track. We recommend to track all events even ones you are not using at the moment. It may be useful in the future.

On save, Billing Extension immediately starts tracking events. Please, allow a few minutes for the graph to start showing data. If data isn't showing up, be patient as it depends on Facebook servers capacity and traffic at the moment.

The table below shows details about events. We remind you that Facebook supports the following events.

Event Description
Page View Tracking page visits (a person lands on your website pages). No additional parameters.
Add To Cart When a product is added to WHMCS shopping cart (a person clicks on Add To Cart button). Every time an item is added, the module includes additional parameters that allows to determine the "pid" (WHMCS product ID) and extension for domains (eg. ".com").
Customize Product When a person customizes a product/service or domain (changing configurable options, billing cycle, additional domain fields, nameservers). Similarly to Add To Cart event, "pid" (WHMCS product ID) and domain extension (eg. ".com") are included.
Purchase

When a purchase is made (a person places the order and pays the resulting invoice). The following parameters are sent to Facebook:

  • Amount paid (eg. 183.60)
  • Currency (eg. EUR)
  • Products/Domains involved (es. product "pid" 3, 6, 7 and domains .com, .it)
Initiate Checkout When a person enters the checkout process (a person clicks on Checkout button). Similarly to Purchase event, Initiate Checkout provides the same parameters. This event is particularly useful to track abandoned carts.
Complete Registration When a visitors create a client account from both register.php and cart.php page. Clients manually added by administrators are ignored.
Contact When a person initiates a contact with your business via contact.php or submitting a ticket to a department that doesn't require login. The module includes a parameter lets you determine what form has been used (contact or ticket).

Pro tip: the module has an equivalent tracking capabilities for LinkedIn as it integrates LinkedIn Insight Tag in WHMCS.

Please, keep in mind Setup > General Settings > Ordering > Auto Redirect on Checkout must be configured as follows.

If you don't do there's a chance that purchase events can't be tracked properly. For example if you take the user to the invoice some payment gateways could inject scripts that prevent Facebook from tracking activities. Gateways do that for security reasons. This explains why you need to use the order completed page.

Comments (0)

Speak Your Mind Cancel Reply