OpenCart 2 integration
A free shopping cart system. OpenCart is an open source PHP-based online e-commerce solution.
This is integration method for open source shopping cart OpenCart. The integration is done by integrating files of thank you page.
You can track per product orders, lifetime commissions and also coupons.
Edit confirm action
Navigate to your cart directory catalog/controller/checkout and open confirm.php for editing. Find this line:
$data['totals'] = array();
Put this code below that line:
$this->session->data['totals'] = $order_data['totals'];
$this->session->data['pap4_products'] = $data['products'];
Save these files and continue with next step.
Edit success action
Open file catalog/controller/checkout/success.php and find this line (first occurrence):
if ($this->customer->isLogged()) {
Place the following code above that line:
$data['pap4_orderid'] = $this->session->data['order_id'];
$data['pap4_totals'] = $this->session->data['totals'];
$data['pap4_products'] = $this->session->data['pap4_products'];
if ($this->customer->isLogged()) {
$data['pap4_email'] = $this->customer->getEmail();
}
else {
$data['pap4_email'] = $this->session->data['guest']['email'];
}
unset($this->session->data['pap4_products']);
Again, do not forget to save the changes and continue to the next integration step.
Whole cart as one transaction – Edit success view
If you want to process the whole payment as one transaction in PAP, follow this step. If you want to create one transaction for every product, continue to step 4.
Open file catalog/view/theme/default/template/common/success.tpl.
Add these lines before the last line which says ‘echo $footer;‘:
<?php
if(isset($pap4_totals) && isset($pap4_orderid) && isset($pap4_email)) {
$subtotal = 0;
foreach ($pap4_totals as $item) {
if ($item['code'] == 'sub_total') {$subtotal += $item['value'];}
if ($item['code'] == 'coupon') {$subtotal += $item['value'];}
if ($item['code'] == 'voucher') {$subtotal += $item['value'];}
}
if ($subtotal < 0) {$subtotal = 0;}
?>
<script id="pap_x2s6df8d" src="https://URL_TO_PostAffiliatePro/scripts/trackjs.js" type="text/javascript"></script>
<script type="text/javascript">
PostAffTracker.setAccountId('default1');
var sale = PostAffTracker.createSale();
sale.setTotalCost('<?php echo $subtotal; ?>');
sale.setOrderID('<?php echo $pap4_orderid; ?>');
sale.setData1('<?php echo $pap4_email; ?>');
PostAffTracker.register();
</script>
<?php } ?>
Save the file and your shop is integrated.
Note: The values of ‘Coupon‘ and ‘Voucher‘ are negative, that is why we are directly adding it to the subtotal value.
One transaction per product – Edit success view
This step is not necessary if you already used step 3.
Open file catalog/view/theme/default/template/common/success.tpl.
Add these lines before the last line which says ‘echo $footer;’:
<?php
if (isset($pap4_totals) && isset($pap4_orderid) && isset($pap4_email)) {
?>
<script id="pap_x2s6df8d" src="https://URL_TO_PostAffiliatePro/scripts/trackjs.js" type="text/javascript"></script>
<script type="text/javascript">
<?php
$i = 0;
foreach ($pap4_products as $item) {
echo "var sale$i = PostAffTracker.createSale();";
echo "sale".$i.".setTotalCost('".$item['total']."');";
echo "sale".$i.".setProductID('".$item['product_id']."');";
echo "sale".$i.".setOrderID('".$pap4_orderid."(".$i.")');";
echo "sale".$i.".setData1('".$pap4_email."');";
$i++;
}
?>
PostAffTracker.register();
</script>
<?php
}
?>
This will register a commission per each ordered product.
Do not forget to integrate your cart with the click tracking to make the sale tracking work. You can place the click tracking code to the theme footer file:
catalog/view/theme/YOUR_THEME/template/common/footer.tpl

Discover Post Affiliate Pro's flexible pricing plans tailored to fit your business needs, with options for Pro, Ultimate, and Network packages. Enjoy a free trial with no credit card required, no setup fees, and the freedom to cancel anytime. Benefit from features like unlimited affiliates, advanced reporting, customizable interfaces, and lifetime support. Save up to 20% with annual billing and take advantage of more than 220 integrations. Perfect for businesses seeking to enhance their affiliate marketing efforts. Visit now to find the ideal plan for you!
Discover the power of the Lifetime Commissions plugin! Ensure lifetime referral tracking with unique customer identifiers, allowing affiliates to earn commissions on future sales without repeated clicks. Easily manage customer-affiliate relations and configure settings to suit your needs. Boost your affiliate program's efficiency with customizable options and ensure commissions for affiliates, even across different devices or channels. Explore seamless integration with eCommerce systems and enhance your marketing strategy today!
Discover the essentials of clicks (referrals) tracking with our comprehensive guide. Learn about the importance of click tracking code, explore various code examples including simple, asynchronous, and PHP versions, and dive into advanced tracking options. Optimize your affiliate marketing strategy with expert tips on setting account IDs, managing cookies, and customizing tracking parameters. Visit now to enhance your click tracking implementation!