–Hidden comment

Use attributes in format region_from and region_to= to change the languages showing in language switcher.
Available regions are:
europe_from europe_to
asia_from asia_to
mideast_from mideast_to
america_from america_to

Example:
europe_from=0 europe_to=22 will put all languages (ordered in language switcher settings) from 1 to 21 to Europe region:
asia_from=22 asia_to=25 will put all languages from 23 to 24 (so only 2) into Asia region.

OpenCart

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.

For OpenCart 2.0 use the other integration method please.

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 older versions also guest_step_3.php) for editing. Find this line:

$this->data['totals'] = $total_data;

There are two places with this line, use the second one. Put this code below that line:

$this->session->data['pap4_totals'] = $total_data;
$this->session->data['pap4_products'] = $this->data['products'];
$this->session->data['pap4_email'] = $this->data['email'];

Save these files and continue with next step.

NOTE: In case you use QuickCheckout you have to modify file quickcheckout.php instead of confirm.php – the integration code needs to be placed into confirm_order() function – there you will find the needed line:

$this->data['totals'] = $total_data;

mentioned at the beginning of this step.

Edit success action

Open file catalog/controller/checkout/success.php and find this line:

if (isset($this->session->data['order_id'])) {

It should be around line 10. Put this code below it:

$this->data['pap4_orderid'] = $this->session->data['order_id'];
$this->data['pap4_totals'] = $this->session->data['pap4_totals'];
$this->data['pap4_products'] = $this->session->data['pap4_products'];
$this->data['pap4_email'] = $this->session->data['pap4_email'];
unset($this->session->data['pap4_totals']);
unset($this->session->data['pap4_products']);
unset($this->session->data['pap4_email']);

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 whole payment as one transaction in PAP follow this step. If you want to create one transaction for every product skip to step 4.

Open file catalog/view/theme/default/template/common/success.tpl

Add these lines before the 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('Account_ID');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 integrated step 3.

Open file catalog/view/theme/default/template/common/success.tpl.

Add these lines before the 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">
  PostAffTracker.setAccountId('Account_ID');
  <?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.

Back to Integrations Create account for FREE

Our website uses cookies. By continuing we assume your permission to deploy cookies as detailed in our privacy and cookies policy.

×

Schedule a one-on-one call and discover how Post Affiliate Pro can benefit your business.

We’re available on multiple dates

Schedule a call