Integration Management

Updated on January 17th, 2023

  • Extensiv Hub
    Popular Articles Getting Started Using Hub Technical Issues & FAQs Extensiv's Ideas Portal
  • 3PL Warehouse Manager
    Receiving Operations Inventory Management Shipping Operations System Configuration Scanning Operations Integrations Content Best Practice Resources Release Notes Popular Articles Troubleshooting Guides
  • Warehouse Management
    Getting Started Admin Console Shipping Order Picking & Packing Receiving Customer Portal Cycle Counting Kit Building Managing Users Barcode Scanner Import/Export Integrations Barcoding Wave Picking Bin Move Mobile Receiving and Picking Settings Popular Articles Reporting
  • Order Management
    Dashboard Orders Inventory Purchase Orders Shipments Customers Products Analytics Settings API API Integrations Accessing and Navigating Order Manager Error Messages Order Manager Popular Articles Accounting Integrations
  • Integration Management
    Getting Started with Integration Manager General Support Troubleshooting Extras & Addons API Documentation Popular Articles Order Sources Order Destinations
  • FAQs
  • Network Manager
    Getting Started Order Routing Management Technical Issues Shopping Carts Settings Settings, Products, and Orders
  • Billing Manager
    Getting Started Using Billing Manager
  • Release Notes
    Extensiv Sandbox Extensiv Extensiv Hub 3PL Warehouse Manager Integration Management Warehouse Management Order Management Billing Manager
  • Fulfillment Marketplace
    Getting Started
  • Sandbox
    Getting Started
+ More
  • Help Center
  • Integration Management
  • Order Sources
  • PrestaShop
  • Order Sources
    • 1ShoppingCart
        • 1ShoppingCart Integration Overview
        • 1ShoppingCart Settings
        • Setting Up 1ShoppingCart
    • Amazon Direct Fulfillment
        • Amazon Vendor Central
        • Setting Up Amazon Direct Fulfillment
    • Amazon Seller Central
        • Amazon - Access to Orders.ListOrders is denied
        • Amazon - No valid marketplaces
        • Amazon Could Not Upload Tracking
        • Amazon Inventory Error - An FBA offer already exists on this SKU
        • Amazon Inventory Sync Issue
        • Amazon Marketplace Alerts
        • Amazon Marketplace Extra Fields
        • Amazon Marketplace Integration Overview
        • Amazon Marketplace Settings
        • Amazon orders marked as late even when shipped same day
        • Amazon Ship Confirmation Delays
        • Amazon Ship Methods
        • Error: Amazon MWS Developer Access is About to Expire
        • Missing Amazon Seller Central Orders
        • Setting Up Amazon Seller Central
    • ApparelMagic
        • ApparelMagic Integration Overview
        • ApparelMagic Settings
        • Setting Up ApparelMagic
    • ArcDynamic
        • ArcDynamic Integration Overview
        • Setting Up ArcDynamic
    • AspDotNetStorefront
        • AspDotNetStorefront Integration Overview
        • Setting Up AspDotNetStorefront.com
    • BigCommerce
        • BigCommerce - Could not upload tracking - The field quantity is invalid
        • BigCommerce Integration Overview
        • BigCommerce multiple Extensiv Integration Manager connections to a single store
        • BigCommerce Orders Missing Shipping Address
        • BigCommerce Settings
        • Setting Up BigCommerce
    • BlueCherry
        • Setting Up BlueCherry
    • BrightSites
        • BrightSites Integration Overview
        • Setting Up BrightSites
    • ByDesign Freedom
        • Setting Up ByDesign Freedom
        • ByDesign Freedom Settings
    • Centra
        • Centra Integration Overview - Order Source
        • Setting Up Centra
    • ChannelAdvisor
        • ChannelAdvisor - Carrier and Class is Invalid
        • ChannelAdvisor Settings
        • Setting Up ChannelAdvisor
    • Cin7
        • Cin7 Settings
        • Setting Up Cin7
    • ClickBank
        • Setting Up ClickBank
    • Cratejoy
        • Cratejoy Integration Overview
        • Cratejoy Settings
        • Setting Up Cratejoy
        • When are Cratejoy Shipments Loaded?
    • CS Cart
        • Setting Up CS Cart
    • CSV Cart
        • CSV Cart Mapping Instructions
        • Loading CSV Order Files via FTP into Extensiv Integration Management
        • Setting Up CSV Files
        • Supported CSV Formats
        • Uploading CSV Order Files Manually
        • Using a Cloud FTP Service
        • Custom Date Format - CSV Mapping
        • Integration Management CSV Formats
    • Cin7 Core (Dear)
        • Cin7 Core (Dear) Systems Settings
        • How to Enable Cin7 Core (Dear) Inventory Sync
        • Setting Up Cin7 Core (Dear) Systems
    • DemandStream
        • Setting Up CommerceHub DemandStream
    • DSCO
        • DSCO - Missing Orders | Manual Acknowledgment
        • DSCO Integration Overview
        • Migrating from DSCO V2 to DSCO V3
        • Missing DSCO Orders
        • Setting Up DSCO
        • Setting Up Warehouses in DSCO
        • Transitioning from the DSCO FTP cart to the DSCO API cart
    • Ebay
        • Ebay Auth token is expired
        • Ebay Error - Variation level SKU should be supplied to revise a Multi-SKU item.
        • eBay Integration Overview
        • Ebay listings not syncing with Extensiv Integration Manager
        • eBay Settings
        • How to find "Sales Record Number" in eBay?
        • Inventory-based listing management is not currently supported by this tool - Ebay
        • Setting Up Ebay
        • Using eBay Global Shipping Program
        • You've reached the number of items you can list - Ebay
    • Ecwid
        • Ecwid Settings
        • Setting Up Ecwid Cart
    • Etsy
        • Etsy - Why Is My Listing Inactive?
        • Etsy Settings
        • Etsy Error - quantity must be consistent across all products
        • Setting Up Etsy
    • Faire
        • Faire Integration Overview
        • Faire Product Sync
        • Faire Shipping Confirmations Are Being Rejected
        • Setting Up Faire
    • Feature List
        • Cancel Order in Cart
        • Cart Setup Complexity
        • Inventory Sync
        • Invoices to Cart
        • OAuth Cart List
        • Order Cancel Download
        • Order Download
        • Product Detail Sync
        • Purchase Order Download
        • Purchase Order Receiving Upload
        • Shipment Confirmation
    • Forecastly
        • Setting Up Forecastly
    • Goldbelly
        • Goldbelly Overview
    • Google Shopping
        • Google Shopping Integration Overview
        • Setting Up Google Shopping
    • Groupon
        • Groupon Prices Don't Match Expected
        • Groupon Goods Integration Overview
        • Setting Up Groupon Goods
    • Houzz
        • Houzz Seller & Houzz Vendor Workflow
        • Houzz Updates - Cal Title 20
        • Missing Houzz Orders
        • Multiple Tracking number support for Houzz
        • Setting Up Houzz
    • Infusionsoft
        • Setting Up Infusionsoft
    • Integral Group
        • Setting Up Integral Group
        • Setup Merchant SKUs and UPCs - Integral Group
    • Joor
        • Joor Category List
        • Joor Integration Overview
        • Joor Product Sync
        • Joor Settings
        • Joor to Extensiv Order Manager Integration
        • Joor to NetSuite Integration
        • Setting Up Joor
    • Lightspeed Retail
        • Lightspeed Retail Integration Overview
        • LightSpeed Server response message: The child object either does not exist or is archived and cannot be updated via the parent object.
        • Setting Up Lightspeed Retail
    • Linnworks
        • Setting Up Linnworks
    • Magento
        • Access Denied - Magento
        • Invalid api path - Magento
        • Invalid carrier specified - Magento
        • Magento 1 Settings
        • Magento 2 Permissions Error
        • Magento 2 Settings
        • Magento orders missing products
        • Magento Shipment Emails Don't Include Tracking Number
        • Setting Up Magento
        • Setting Up Magento 2
        • SOAP extension is not loaded - Error Message
        • Supported Plugins - Magento
    • Neto
        • Neto Integration Overview
        • Setting Up Neto
    • NetSuite
        • NetSuite - Only one request may be made against a session at a time
        • Netsuite cart inventory not updating. Please enter value(s) for: IA Memo
        • Setting Up NetSuite
    • Nexternal
        • Setting Up Nexternal
    • OnBuy
        • OnBuy Integration Overview
        • Setting Up OnBuy
    • OpenCart
        • OpenCart Connection Issues
        • OpenCart Integration Overview
        • OpenCart Settings
        • Setting Up OpenCart
    • Order Manager
        • Extensiv Order Manager Integration Overview
        • Extensiv Order Manager Settings
        • Extensiv Order Manager Warehouse Name or Warehouse ID error
        • Initialize Inventory Sync For New Extensiv Order Manager Products
        • Setting Up Extensiv Order Manager
        • Setting Up ShipStation as an Order Destination for Extensiv Order Management
    • OrderBot
        • Setting Up OrderBot
    • OrderStream
        • CommerceHub Confirmation Error - PO does not exist for this relationship
        • CommerceHub Confirmation Error - PO is not in a state where this action can be applied
        • CommerceHub Inventory Not Updating
        • CommerceHub Orders Late or Not Shipped
        • CommerceHub OrderStream Invoices
        • CommerceHub OrderStream Settings
        • CommerceHub Required Resources
        • CommerceHub Walmart.com
        • Performing tests inside CommerceHub Testing Portal
        • Setting Up CommerceHub OrderStream
        • Setting up Merchant SKUs and UPCs - CommerceHub
    • Overstock.com
        • Setting Up Overstock.com
    • PayPal
        • Setting Up PayPal
    • PrestaShop
        • Blank Tracking Number - PrestaShop
        • Error pulling mapping code from PrestaShop
        • Fatal Error - PrestaShop
        • Internal error. To see this error please display the PHP errors. - PrestaShop
        • Internal Server Error 500 - PrestaShop
        • PrestaShop Settings
        • Setting Up PrestaShop
        • Shipping Confirmation Error - PrestaShop
        • Unexpected HTTP Status 302 - PrestaShop
    • Pulse Commerce
        • No order/fulfillment loaded - Pulse Commerce
        • Setting Up Pulse Commerce
    • Quickbooks
        • Quickbooks Online Integration Overview
        • Setting Up Quickbooks Online
    • Radial
        • Setting Up Radial
        • Radial Retailers
    • SalesForce
        • Enable Shipping Confirmation - SalesForce
        • INVALID_FIELD No such column 'XXX' on entity 'YYY' - Salesforce
        • SalesForce - Could not create SOAP Object - LOGIN_MUST_USE_SECURITY_TOKEN
        • SalesForce - Custom Mappings
        • Salesforce API Limit
        • Setting Up SalesForce
    • Shift4Shop - 3DCart
        • Error with 3DCart order status
        • Shift4Shop Settings
    • ShipStation
        • Setting Up ShipStation
        • Shipments and Shipping Info Fields Blank in ShipStation
        • ShipStation Integration Overview
        • ShipStation Tag Filtering
    • Shopify
        • How to Ignore Shopify POS Orders
        • Setting Up Shopify
        • Shopify - Line Items: must be stocked at the same location
        • Shopify - This action requires write_orders scope
        • Shopify Filter Order Rules
        • Shopify Integration Overview
        • Shopify Inventory Not Syncing
        • Shipping Method Setup - Shopify
        • Shopify Payment Status Info
        • Shopify Products say: Unavailable on Extensiv Integration Manager
        • Shopify Settings
    • SPS Commerce
        • Home Shopping Network (HSN) - SPS Commerce
        • Setting Up SPS Commerce
        • SPS Commerce Implementation Overview
        • SPS Commerce Project Pricing
        • SPS Retailers
    • Squarespace
        • Setting Up Squarespace
        • Squarespace Integration Overview
    • Sticky.io
        • Setting Up Sticky.IO
        • Sticky.io Overview
    • Teapplix
        • Setting Up Teapplix
    • UltraCart
        • Setting Up UltraCart
    • Uniware ClearConnect
        • Setting Up Uniware ClearConnect
    • Unleashed
        • Setting Up Unleashed
    • Veeqo
        • Setting Up Veeqo
        • Veeqo Integration Overview
    • Vend POS
        • Item Price For Tax Inclusive Store (Vend <> Tradegecko Connection)
        • Missing Outlet Address in Vend
        • Setting Up Vend
        • Vend Integration Overview
        • Vend Product Sync
        • Vend Settings
        • Vend Stock Transfer Sync (Beta)
    • Vin eRetail
        • Setting up Vin eRetail
    • Volusion
        • Setting Up Volusion
        • Volusion - No response from cart
        • Volusion Settings
        • Volusion Ship Methods
    • Walmart Marketplace & DSV
        • Missing Walmart Orders
        • Setting Up Walmart
        • Walmart Integration Overview
        • Updating API information
        • Walmart Canada - Ship Node Setting
    • Wayfair
        • Overdue Inventory for Wayfair
        • Setting Up Wayfair
        • Wayfair EU Invoice Setup
        • Wayfair Integration Overview
        • Wayfair UCC-128 Labels
    • Web Shop Manager
        • Setting Up Web Shop
        • Web Shop Manager Integration Overview
    • Wish
        • Setting Up Wish
        • Wish Integration Overview
    • WooCommerce
        • API key provided does not have write permissions - WooCommerce
        • Cannot communicate securely with peer - WooCommerce
        • Cannot connect to WooCommerce site
        • Conflicting Order Numbers - WooCommerce
        • Error adding notes to order - WooCommerce
        • Fix WooCommerce Permissions
        • Invalid response from WooCommerce
        • Setting Up WooCommerce
        • Setting WooCommerce Timezone
        • Sorry, you are not allowed to create resources - WooCommerce
        • WooCommerce Confirmation Methods
        • WooCommerce Inventory Sync
        • WooCommerce reported a file not found error
        • WooCommerce Settings
        • WooCommerce Ship Methods
    • Xero
        • Xero Accounting Order Connection
    • XML Cart
        • Setting Up HSN
        • Setting Up XML Files
        • XML Format - HSN
    • Yahoo Stores - Small Business
        • Setting Up Yahoo Stores
        • Setup and Load Yahoo Component Items
    • Zoho Inventory
        • Setting Up Zoho Inventory
        • Zoho Inventory Integration Overview

Blank Tracking Number - PrestaShop

Problem

PrestaShop generates Shipping Confirmation Email that contains an empty tracking number:  

  • Email shows "{shipping_number}" instead of the actual tracking number. 
     
  • Email shows "{followup}" instead of the actual tracking link. 
     
  • Email shows a blank tracking number. 
     
     

Solution
 

PrestaShop server admin needs to modify two source files: Order.php & WebserviceRequest.php

 

Create a back up

Please create a back up Order.php & WebserviceRequest.php before making changes to these files in case you need to restore the originals!

 
 
This solution is required until PrestaShop resolves this bug.
 
Modify classes/order/Order.php: 
 
  1. Please open PrestaShop root directory on server. Make sure that you have permission to modify PrestaShop source files.
     
  2. Go to classes/order directory, and open Order.php.
     

Find function setWsShippingNumber($shipping_number) (around line 2215), and insert the following line as marked:
 

public function setWsShippingNumber($shipping_number)
    {
        $id_order_carrier = Db::getInstance()->getValue('
			SELECT `id_order_carrier`
			FROM `'._DB_PREFIX_.'order_carrier`
			WHERE `id_order` = '.(int)$this->id);
        if ($id_order_carrier) {
            $order_carrier = new OrderCarrier($id_order_carrier);
            $order_carrier->tracking_number = $shipping_number;
			$this->shipping_number = $shipping_number;    // <----------Insert this line !
            $order_carrier->update();
        } else {
            $this->shipping_number = $shipping_number;
        }
        return true;
    }
 

Find function setCurrentState($id_order_state, $id_employee = 0) (around line 1545), and add following lines to that function:
 

public function setCurrentState($id_order_state, $id_employee = 0)
    {
        if (empty($id_order_state)) {
            return false;
        }
        $history = new OrderHistory();
        $history->id_order = (int)$this->id;
        $history->id_employee = (int)$id_employee;
        $history->changeIdOrderState((int)$id_order_state, $this);
        $res = Db::getInstance()->getRow('
			SELECT `invoice_number`, `invoice_date`, `delivery_number`, `delivery_date`
			FROM `'._DB_PREFIX_.'orders`
			WHERE `id_order` = '.(int)$this->id);
        $this->invoice_date = $res['invoice_date'];
        $this->invoice_number = $res['invoice_number'];
        $this->delivery_date = $res['delivery_date'];
        $this->delivery_number = $res['delivery_number'];
        $this->update();

		$carrier = new Carrier($this->id_carrier, $this->id_lang);      // <----------Insert this line !
		$template_vars = array(											// <----------Insert this line !
			'{shipping_number}' => $this->shipping_number,       		// <----------Insert this line !
			'{followup}' => str_replace('@', $this->shipping_number, $carrier->url),   // <----------Insert this line !
		);                                                              // <----------Insert this line !

        $history->addWithemail(true, $template_vars);
    }
 
'{shipping_number}' should match the Tracking Number placeholder in your Email Template.

'{followup}' should match Tracking URL placeholder in your Email Template
 

3. Make sure to save Order.php file before you close it.

Modify classes/webservice/WebserviceRequest.php:

4. Go to classes/webservice directory, and open file WebserviceRequest.php.

Find function saveEntityFromXml($successReturnCode) (around line 1371), and insert following lines (around line 1425):
 

......
foreach ($xmlEntities as $xmlEntity) {
            /** @var SimpleXMLElement $xmlEntity */
            $attributes = $xmlEntity->children();

            /** @var ObjectModel $object */
            $retrieve_data = $this->resourceConfiguration['retrieveData'];
            if ($this->method == 'POST') {
                $object = new $retrieve_data['className']();
            } elseif ($this->method == 'PUT') {
                $object = new $retrieve_data['className']((int)$attributes->id);
                if (!$object->id) {
                    $this->setError(404, 'Invalid ID', 92);
                    return false;
                }
            }
            $this->objects[] = $object;
            $i18n = false;
			
			if(!empty($this->resourceConfiguration['fields']['current_state'])){    // <----------Insert this line! (Around Line 1425)
				$prop = $this->resourceConfiguration['fields']['current_state'];    // <----------Insert this line!
				unset($this->resourceConfiguration['fields']['current_state']);     // <----------Insert this line!
				$this->resourceConfiguration['fields']['current_state'] = $prop;    // <----------Insert this line!
			}                                                                       // <----------Insert this line!
			
            // attributes
            foreach ($this->resourceConfiguration['fields'] as $fieldName => $fieldProperties) {
                $sqlId = $fieldProperties['sqlId'];

                if ($fieldName == 'id') {
                    $sqlId = $fieldName;
                }
                if (isset($attributes->$fieldName) && isset($fieldProperties['sqlId']) && (!isset($fieldProperties['i18n']) || !$fieldProperties['i18n'])) {
                    if (isset($fieldProperties['setter'])) {
......


 

5. Make sure to save WebserviceRequest.php before you close it.
 

 
prestashop tracking number

Was this article helpful?

Yes
No
Share additional feedback about this article

Related Articles

  • Shipping Confirmation Error - PrestaShop
  • Setting Up PrestaShop
  • Internal error. To see this error please display the PHP errors. - PrestaShop
  • Error pulling mapping code from PrestaShop

Not finding the help you need?

Contact Support
Solutions
  • Solutions for Brands
  • Solutions for 3PLs
  • Solutions for 4PLs
  • Solutions for B2B
Products
  • Extensiv 3PL Warehouse Manager
  • Extensiv Warehouse Manager
  • Extensiv Order Manager
  • Extensiv Integration Manager
  • Extensiv Network Manager
Products
  • Customer Success
  • Implementation
  • Consulting
Ecosystem
  • Fulfillment Marketplace
  • Integrations
  • Partners
  • Become a Partner
Resources
  • Resource Library
  • Blog
  • Market Insights
  • What is a 3PL?
  • What is a 4PL?
  • What is a WMS?
  • Why a Cloud-based WMS?
  • Glossary
Help
  • Help Center
  • API Documentation
  • Extensiv Univerisity
  • Community
  • System Status
  • Extensiv Logo
  • 100 N Pacific Coast Hwy, Suite 1100, El Segundo, CA 90245
  • |
  • Contact Us:
  • 83-EXTENSIV 888.375.2368 (main)
  • |
  • 310.844.7570 (local)
  • Copyright © 2023 Extensiv
  • |
  • All rights reserved.
  • Privacy Policy
  • |
  • Terms of Service
  • Follow Us:
Expand