Have questions? Leave your message here or Schedule a quick call with our manager now

FAQ

General Service Questions

Asymmetric data encryption has been added in version 141 of the bridge as well as plugins that can be built using the plugin builder. Data is encrypted using the OAEP (Optimal Asymmetric Encryption Padding) protocol, which provides reliable security and resistance to attacks.

When exchanging data between API2Cart and the server on which the bridge or plugin is installed, there is a risk of interception of this data. Especially if the data is not transmitted over a secure HTTP protocol, an attacker can gain unauthorized access to the database. In addition, if the attacker somehow learns the store_key, he can directly interact with the store through the bridge, bypassing API2Cart. To prevent this from happening, we implemented asymmetric data encryption.

Here's how it works:

  • when downloading a bridge or installing a plugin generated by the plugin builder, a pair of keys is generated: a public key for encryption (contained in the bridge file) and a private key for decryption (added and known only to API2Cart). Each new store will have an individual key.
  • data transmitted to the bridge is encrypted using a private key.
  • when receiving data from API2Cart, the bridge decrypts the data, and the bridge executes the necessary scripts.
  • the received results are encrypted using a public key and sent to API2Cart, where they are decrypted using a private key.

This algorithm does not lead to significant delays in the execution of requests or additional load on the server and is a reliable tool for protecting confidential data during its exchange between parties.

Its main advantages:

  • Encrypted communication channel prevents interception of confidential data.
  • Protection against store_key exposure; an attacker will not be able to perform requests directly to the bridge/plugin even if he knows the store_key.

The main difference between the Enterprise On-Premise solution and the other plans provided by API2Cart is that no one except your team will have access to the service resources (as it will be on your chosen server). Enterprise On-Premise solution guarantees you the highest level of data security that can be provided by API2Cart.

You can take sole control of who can manage your API2Cart server infrastructure by using the functionality provided by Amazon Web Service (AWS), Microsoft Azure, Hetzner Cloud, and Google Cloud Platform. Also, you can use API2Cart service on your own server.

All requests will be made over HTTPS protocol.

With the Enterprise On-Premise solution, you will be able to manipulate the data from as many of your clients’ stores as needed with no limits.

Also, Enterprise On-Premise solution includes webhooks, escrow service, WhiteLabel, and plugin builder.

Enterprise On-Premise solution is perfect for high-volume enterprises with a high number of clients.

To test API2Cart Enterprise On-Premise solution you will need to:

  1. Contact our manager by phone, email (manager@api2cart.com), or online chat. At first, you can test API2Cart functionality on https://app.api2cart.com/. If you decide to switch to Enterprise On-Premise Solution, you contact us, and we will create a separate server for you with no limits.
  2. We create infrastructure on Amazon. Enterprise On-Premise solution is placed on Amazon Cloud storage. It is possible to get access to it using our Amazon Web Services (AWS) or your own. Also, you can use the solution not only on AWS but also on Google Cloud, Microsoft Azure, Hetzner Cloud, or your own server.
  3. Get access to API2Cart using a particular link. API2Cart Enterprise On-Premise solution is available on a special link. Only your team will have access to it. Also, it can be a special subdomain (e.g., yourcompany.api2cart.com) or domain (api2cart.yourcompanydomain.com).
  4. Test the solution for 30-days for free. During the trial period, you will be able to connect an unlimited number of your clients’ online stores and use all API2Cart API methods for working with the data related to products, categories, customers, orders, shipments, etc.

The usage of API2Cart Enterprise On-Premise solution includes continuous support by our dedicated tech specialists.

Yes, API2Cart supports the following shopping carts plugins:

You can also download some plugins in the "Plugins" section of your API2Cart account.

Make sure you have performed WooCommerce upgrade correctly to allow WooCommerce and API2Cart work with your orders properly.

There are two ways to establish WooCommerce upgrade:

  1. Automated. Just press “Update Now” button and all needed changes will be done correctly.
  2. Manual. Update all WooCommerce files via your FTP client. In this case, after upload, you have to click “Run Installation” in your admin panel.

After updating the WooCommerce plugin, you need to execute the cart.validate method. This is necessary because API2Cart stores store settings in the cache. The cart.validate method clears the cache for the selected store, ensuring that all changes are considered in subsequent requests.

Notice that only after that, database version is updated. Otherwise, you won’t be able to view the previously placed orders in WooCommerce itself. And API2Cart will not be able to detect new WooCommerce version, thus work with new orders.

It all depends on the speed of connection and your shopping cart server, as well as the type of shopping cart. For example, the requests for Magento take more time than for the shopping cart like osCommerce. While retrieving data from shopping cart specify the necessary fields in the parameters. This will speed up the process. Do not specify the unnecessary fields, because for some fields additional requests may be sent, which increases the time of data retrieving.

It is also important to consider that due to the specifics of some shopping cart platforms, we need to make multiple requests to the store to generate a response for you. The number of requests directly depends on the selected response fields, and for some platforms, it may also grow exponentially based on the number of items in the response (e.g., products or orders). Therefore, the more items you try to retrieve at once, the more requests we will need to make to the store.

That is why we recommend obtaining only the response fields that are truly necessary for your business logic. For these purposes, you need to use the response_fields parameter. In the store dashboard, you can view a list of methods that include links with field sets requiring the minimal number of requests to the store:

Our developers are constantly improving the service to provide its fast and reliable performance.

You can use the parameter force_all (for example, product.list?api_key=<your_api_key>&store_key=<your_store_key>&start=0&count=10&params=force_all.) or use the response_fields parameter, which will contain the result field (for example, order.list?api_key=<your_api_key>&store_key=<your_store_key>&start=0&count=10&response_fields={return_code,return_message,pagination,result}).

For more information go to API2Cart Documentation.

API2Cart supports Product.list API method that helps to retrieve the following data from the shopping cart:
  1. Product ID
  2. Brand name of product
  3. Product Model
  4. Product SKU
  5. Universal Product Code
  6. Time of product creation
  7. Time of product modification
  8. Product Name
  9. Product short description
  10. Product full description
  11. Product URL
  12. Product SEO URL
  13. Product meta title
  14. Product related keywords
  15. Product meta description
  16. Product available for sale
  17. Products available for view
  18. Count of products views
  19. Count of products ordered
  20. Product Weight
  21. Product Quantity
  22. Product Price
  23. Price of products sold in large quantities (wholesale)
  24. Special price of product. ex. Regular price:100 Special Price: 99.99
  25. Price with discount based on the ordered product quantity
  26. Product category IDs
  27. Product Categories
  28. Product Images
  29. Product Options
Product.list method also includes the fields that were created in the shopping cart backend (admin section) and the specific fields, which are set for this shopping cart by default. API2Cart constantly improves its services, so we expect to deliver you all the required methods in the near future. Please CONTACT US in order to request the necessary functionality.

Connection Bridge file is what helps API2Cart users connect stores which are based on open-source shopping platforms like Magento, WooCommerce, PrestaShop, and CS-Cart. API2Cart API works directly with databases of such types of shopping platforms via a bridge file. Read more.

We use the minimum amount of code in our bridge files. Running SQL queries allows us to retrieve the data directly without running all the shopping cart code. What is more, the bridge allows us to work with the data that is not available via the platform’s API.

Benefits of the Connection Bridge:

- Speed

- Low server load, because all data is processed on our side.

- Flexibility, as we can add new methods without updating the bridge.

This special access gateway is secured by the unique signature and encryption for safe data processing. To add a store to your API2Cart account you have to set up Connection Bridge to enable data interaction.

There are three ways you can connect Bridge file:

1. Manually download the Bridge to your computer. It will be stored in a zip file named “bridge.zip”. Extract the file. It will contain the “bridge2cart” folder. Upload it to the store’s root folder via FTP client (WinSCP, FileFTP, FileZilla, CuteFTP, etc.)

If needed, the bridge file can be stored in any folder on the server, but in that case you’ll need to use parameters bridge_url (the full http url for a bridge) and store_root (absolute server path to the store root folder).

If the bridge folder is contained in the store root folder, then you don’t need to specify store_root parameter, only bridge_url.

After uploading the bridge, use account.cart.add method.

2. Automatically upload the Bridge via account.cart.add method. Use account.cart.add method specifying FTP credentials (Host, Port, Login, Password and Store Path) or use API2Cart admin panel.

3. Using plugins that can be built in the Plugin Builder section on your API2Cart account.

What is the Connection Bridge and why do I need it?

Plugin uploads the bridge and installs it to the store’s root folder. You can place the plugin on the platform app marketplace. Then, your clients will be able to install the bridge in one click.

To check if the Connection Bridge file has been installed correctly enter https://[yourstore url]/bridge2cart/bridge.php within your browser address line. If the bridge file is working correctly, you will see the following message:

“Version: xx

BRIDGE INSTALLED.”

If not, please set the following permissions:

- 644 or 666 for "bridge.php", depending on your server configuration

- 755 or 777 for "/bridge2cart" folder, depending on your server configuration

Note! We strongly recommend turning off your website redirects to ensure proper functioning of the Connection Bridge file.

If you have any questions during the process of bridge installation, please read this article or contact us by email (manager@api2cart.com).

API2Cart uses Customer.list API method that help to retrieve following data:

  • Customer ID
  • Customer Group
  • Customer’s e-mail
  • Customer First Name
  • Customer Last Name
  • Time of customer creation
  • Time of customer modification
  • Customer’s login
  • Date of last login
  • Customer’s date of birth
  • Customer Status
  • Customers subscribed for newsletters
  • Customer’s Gender (male/female)
  • Link to use website
  • Customer’s fax number
  • Customer’s Company
  • Customer’s phone number
  • Customer’s Address Book

This method also includes the fields that were created in the shopping cart backend (admin section) and the specific fields, which are set for this shopping cart by default.

API2Cart constantly improves its services, so we expect to deliver you all the required methods in the near future. Please contact us in order to request necessary functionality.

Many shopping carts have an entity limit in one request. Even if it is said that there is no limitation, you should be careful and not to include too many entities in a single API request since it may negatively affect your system and client’s store performance. It is better to extract data in smaller chunks (4­-50 items), what guarantees a correct result.

API2Cart makes it possible to extract a maximum of 250 elements in our list methods. Sometimes this value can be smaller for some API-based platforms due to technical limitations on the part of the platform. We recommend selecting values from 20 to 250 individually for each type of request and store. When selecting the count value, you should take into account the request execution time, the list of fields that will be in the response, and how long your application can wait for a response from API2Cart.

Read more about limits from the side of the stores.

When the registration is completed, you are automatically redirected to your API2Cart account. In the “My Stores List” section you will find OpenCart demo store which is available for testing service’s functionality.

You can also add demo stores that can be created in the "Demostores" section of your API2Cart account. More details at Demo store in API integration

We provide a unified API to work with multiple shopping carts and marketplaces. By integrating with our API, you can integrate with different e-Commerce platforms such as Magento, PrestaShop, Bigcommerce, Shopify, OpenCart, Volusion, etc. at the same time, without any need to develop separate integration solutions for each shopping cart.

The integration works the following way - you already have your business logic module which is integrated with API2Cart. Thus, you receive a complex solution which can work with numerous platforms - hosted and self-hosted. You will have to establish connection via connection bridge or provide store access details - and you'll be able to retrieve necessary data and process it with your solution. So, API2Cart is a universal programming interface which will help you optimize eCommerce integration process.

Event takes place when a user or an owner interacts with the shopping cart for some purpose. For example, events may be considered as user registration, product adding/updating or some other changes on the store.

For real-time synchronization, you can use webhooks. Learn more about webhooks here.

Additionally, if a platform does not support webhooks or if there is no webhook for a specific entity or action, you can use the list method for the corresponding entity with filters based on creation or modification date (provided the method supports these filters). In this case, you need to periodically execute this method to check which entities have been added or modified within the specified time frame.

Getting Started

Parameters supported in the product.add method for Amazon SP-API

  • sku - Required. A unique identifier for the product in the seller's catalog.
  • price - Required
  • quantity - Required
  • asin, ean, gtin, upc - One of these is required. one of them is transferred.
  • category_id
  • store_id
  • product_type
  • marketplace_item_properties

asin, ean, gtin, upc parameters are identifiers that identify a product in the Amazon catalog. Every product that is in the Amazon catalog has a unique asin.

Adding a product that already exists in the Amazon catalog

To add a product that already exists in the Amazon catalog, you only need to provide the SKU, the product identifier, and the price and quantity. The quantity can be zero. Only integer values are supported. After a while, the product will appear in the seller's catalog and will have the properties of the product that was assigned to the identifier (name, description, attributes, images, etc.) as well as the seller's offer (offer), which is determined by the price and quantity.

Adding a product that does not exist in the Amazon catalog

Adding a new product that does not exist in the Amazon catalog is a more complex process, as Amazon requires filling out a large number of attributes to create a new product with an indication of the category in which the product will be placed.

Therefore, when creating a product through product.add, if the product identifier that does not yet exist in the Amazon catalog is specified, one of the parameters must be specified: category_id or product_type

To work with Amazon categories, we have added support for the category.count\list\info\find methods.

In the response of the category.list\info methods, the product_types field is displayed in additional_fields. If it contains any data, the ID of this category can be passed in the category_id parameter. Instead of the category_id parameter, you can use the product_type parameter, specifying the value of the additional_fields.product_types field (if the additional_fields.product_types field contains several values, separated by commas, then one of them).

Once one of the category_id or product_type parameters has been defined, you need to pass the attributes of the new product that is being created in the Amazon catalog. For a list of mandatory requirements for a certain product type (product_type) in Amazon, there is a JSON-schema. This JSON-schema is displayed in the category.info method in the additional_fields.category_options field (category.list this field is not displayed to save requests to Amazon).

As you can see from the image, the additional_fields.category_options object contains a WASHER object with the corresponding JSON-schema. If additional_fields.product_types contains multiple values, then JSON-schemas for all product types will be displayed.

The data from the JSON-schema fields is passed in the marketplace_item_properties parameter. This parameter is validated both on the Api2Cart side

and on the Amazon side.

The corresponding errors that will be displayed in an unsuccessful attempt of the product.add method.

If all the required properties for a certain product type are passed, the product will be created in the Amazon catalog.

Possible nuances:

Even if we received a response with return_code: 0 for the product.add method on Amazon SP-API, this does not mean that Amazon will immediately place the product in its catalog and the seller's catalog among its offers. This product may require additional adjustments in the seller's admin panel. Such products are located in the Catalog > Complete Your Drafts menu section.

which will contain product drafts and Amazon's appropriate troubleshooting guidelines for their listing of these products.

To install SDK, download an SDK file for programing language you need.
To install SDK for PHP language, download the file, and run "composer install" command from it.
We don’t have composer packages.
You need to specify store admin username and password, no API key is required.

WooCommerce Plugin Installation

To add a plugin or an extension on WooCommerce:
  1. Go to your admin panel and click on ‘Plugins” menu -> "Add New"
  2. Choose API2Cart Connector and click “Install Now” button.
  3. After downloading the plugin, click “Activate Plugin” to get it rolling.
The plugin tab should now appear on your admin panel.


Magento Plugin Installation

To add a plugin or an extension on Magento 1:
  1. Go to the Magento admin panel and navigate System -> Magento connect -> Magento connect manager.
  2. Login with the same credentials you use to access your admin panel.
  3. Then under Direct package file upload you can Upload package file. Click the Choose File button, select the extension .tgz file, and click Upload. To ensure the plugin is installed correctly, use the PHP version that matches the Magento version requirements.
  4. If the version of PHP conflicts with the version of Magento in use, we suggest that you should install it using the following instructions:
    • Unzip the archive and upload the files to the server.
    • Clear the Magento cache by going into System-> Cache Management, selecting all in the list, choosing the Refresh option in the dropdown menu, and finally clicking Submit.
  5. Go to System-> Configuration and find API2CART Bridge in the menu on the left.

The installation process will begin and show a message when it’s finished. You can optionally click on “Refresh” button to see whether the extension is installed or not.


PrestaShop Plugin Installation

To perform the installation:
  1. Login into your Prestashop admin panel.
  2. Go to the module tab and click “Add a module from my computer”
  3. In “Module file” box click “Browse” button.
  4. Select module *.zip file from your computer.
  5. Complete the process by pressing “Upload this module” button.

The page will reload, and you should see the new module in a list of your modules.


Cs-Cart Plugin Installation

To perform the installation:
  1. Login into your Cs-Cart admin panel.
  2. Click on the navigation "Add-ons" -> "Manage Add-ons".
  3. Click on the "+" button to upload the plugin.
  4. In the dialog box that appears, click on the "Local" option to download the plug-in *.zip file
  5. Click the "Upload & install" to upload the installation.

After a successful installation, in the "Add-ons" page you will see the API2Cart plugin.


OpenCart Plugin Installation


Note: After any of these plugins is successfully installed, the store owner needs to give the information on his unique store key to B2B provider for the proper work through the API.

Customer API methods allow you to manage customers in the store. It is possible to:

  • Create - add customers
  • Read - retrieve list, info, find
  • Update - update
  • Delete - delete

Run customer.add method, to add customers to the store, and provide all necessary parameters.

public function apiAdd($params)
{
  $params = array(
    'email'      => 'mail@mail.com',
    'first_name' => 'John',
    'last_name'  => 'Smith',
  );

  return $api->request('customer.add', $params);
}

If you want to update the customer, call customer.list method  to retrieve customer id.

public function apiList($params)
{
  $params = array(
    'start' => 0,
    'count' => 5
  );

  return $api->request('customer.list', $params);
}

When you get your customer id, you are able to perform customer.update method.

public function apiUpdate($params)
{
  $params = array(
    'id'         => 11,
    'first_name' => 'Jack',
    'last_name'  => 'Smith',
  );    

  return $api->request('customer.update', $params);
}

For more methods jump into documentation.

Product API methods allow you to manage products in the store. It is possible to:

  • Create - add products
  • Read - retrieve list, info, find
  • Update - update
  • Delete - delete

Run product.add method, in order to add new products to the store, and provide all necessary parameters.

public function apiAdd($params)
{
  $params = array(
    'name'        => 'Bag',
    'model'       => 'bag_01',
    'description' => 'This is new product',
    'price'       => 99.9,
    'quantity'    => 12,
    'manufacturer'=> 'Test',
  );

  return $api->request('product.add', $params);
}

Note: You may add image, tax, manufacturer, option, variant or other info to the product by calling these methods: product.image.add, product.variant.add, product.manufacturer.add, product.tax.add, product.option.add, product.option.value.add, product.option.assign, product.option.value.assign

For more methods jump into documentation.

If you want to update the product, call product.list method  to retrieve product id.

public function apiList($params)
{
  $params = array(
    'start'  => 0,
    'count'  => 50,
    'params' => 'id,name,price',
  );

  return $api->request('product.list', $params);
}

When you get product id, you are able to update price and inventory(quantity) for this product, simply calling product.update method.

public function apiUpdate($params)
{
  $params = array(
    'id' => 69,
    'price' => 89,
  );

  return $api->request('product.update', $params);
}

Note: You may update variant, image and product option value by calling the following methods: product.variant.update, product.image.update, product.option.value.update

For more API methods visit our documentation.

API key is a code that consists of 32 characters and is generated by API2Cart for each user individually. In order to get it, you need to register your account first. After that service will automatically provide you with API key. You can find it on the page with your stores list.
 
This parameter is generated automatically for hosted carts (Shopify, Bigcommerce, Volusion, etc.). If you are working with self-hosted carts (Magento, WooCommerce, OpenCart, etc.) follow these steps:
  • Call cart_bridge method from which you could get store_key.
  • Call bridge_download method and pass store_key which was generated in cart_bridge.
  • Upload the bridge to the root ftp server folder.
  • Call cart_create method and paste previously generated store_url.
All described above is concerned to manual way of bridge upload.
API key is a code generated by API2Cart for each user individually. It provides you with access rights on the API. You will use your API key to establish connection between service and stores you are going to work with. Personal API Key helps us to identify users who perform API requests, allows to track and control API usage.

When signing up for API2Cart account, you are asked to provide name, e-mail address, password.

When adding a new store, you are asked to provide API key and store URLs. You may also be asked to provide your direct database connection to speed up the process. We take appropriate security measures to protect your information. Find out more about our Privacy Policy.

To learn more about adding a store to the service, read here.

To start working with the service you have to register an account, sign in and connect store by providing the required information (store’s URL, API credentials, etc). Also, you need to install the plugin if you have to work with open-source platforms. Quick Demo tour will provide you with more detailed information on how to start working with the service.

In most cases the system automatically defines the prefix of specific shopping cart and uses it. However if you have several shopping carts of one type, the automatic defining will not work. In this case you should use the method account.cart.add and define the prefix of your shopping cart with a parameter db_tables_prefix.

In order to see all additional parameters that are unique for your shopping cart, call product.list API method with the params=force_all parameter. Or set the necessary fields separated by comma in parameter "params" (params=length,depth).

In order to integrate your client’s store with your business system via API2Cart you will have to:
    • provide API Key/Token and password if it is a hosted platform
    • or use bridge files to establish connection to other carts.

See the full list below (in alphabetic order):

 
3dcart API Key
Amazon MWS Auth Token, Seller ID, Marketplace IDs, Secret Key, Access Key ID
AceShop Bridge files uploaded to store folder
AspDotNetStorefront Admin User and Password
Bigcommerce Client ID, Access Token, Context
CS-Cart Bridge files uploaded to store folder / plugin
CubeCart Bridge files uploaded to store folder
Demandware API Client ID, API Password, User Name, User Password, Environment Type
Ebay App ID, Shared Secret, Refreshed Token, Environment, Global ID
Ecwid Store ID, Access Token
Etsy KeyString, Shared Secret, Access Token, Secret Token
Gambio Bridge files uploaded to store folder
Hybris Client ID, Client Secret, User Name, User Password
Interspire Bridge files uploaded to store folder
JooCart Bridge files uploaded to store folder
LightSpeed eCommerce API Key, API Secret
Loaded Commerce Bridge files uploaded to store folder
Magento Bridge files uploaded to store folder / plugin
MijoShop Bridge files uploaded to store folder
Neto API Key, User Name
OpenCart Bridge files uploaded to store folder
osCMax Bridge files uploaded to store folder
osCommerce Bridge files uploaded to store folder
Oxid Bridge files uploaded to store folder
Pinnacle Cart Bridge files uploaded to store folder
PrestaShop Bridge files uploaded to store folder / plugin
Shop-Script Premium Bridge files uploaded to store folder
Shopify API Key, API Password, Access Token, Shared Secret
Shopware Bridge files uploaded to store folder
Squarespace API Key
TomatoCart Bridge files uploaded to store folder
Ubercart Bridge files uploaded to store folder
VirtueMart Bridge files uploaded to store folder
Volusion Login and API Password
Walmart Client ID, Client Secret
WooCommerce Bridge files uploaded to store folder / plugin
WebAsyst Shop-Script Bridge files uploaded to store folder
WPEcommerce Bridge files uploaded to store folder
XCart Bridge files uploaded to store folder
Xtcommerce Bridge files uploaded to store folder
Xtcommerce Veyton Bridge files uploaded to store folder
Zencart Bridge files uploaded to store folder

For more information about how to get your API Key/Token follow this link.

You can use the parameter verify=false to skip the validation.

Glossary

It is one of the FTP parameters that defines a precise store location at the host.

It is the main folder of the store where its files are located. An 'index.php' file located among them is usually but not necessarily a marker that this very folder is the root folder.
It is a unique key generated when a bridge is downloaded. It is used to access a store located on a shopping cart.
These e-Commerce platforms store your shop data for you, so you do not have to pay for a server.
It is a message sent by your service to get/manipulate store data.
It is a process of assembling smaller pieces into a unity that functions as one. In the light of your cooperation with API2Cart, integration is performed to obtain the ability to connect to numerous shopping carts in order to retrieve and manipulate store data such as orders, products, categories, customers, etc. according to the specific needs of your e-Commerce business software.
These are shopping platforms that do not store your e-commerce website data, which means that you will have to pay for this service.
These are used to upload a bridge in order to specify connection with self-hosted carts.
It is a  response string carrying certain data.
It is a shop created online to run the dealing on the web.
These are requests going through simultaneously in a split second.
It is a software that provides all the necessary tools for merchants to build their e-stores.
See a detailed explanation here.
It is a string of characters that is given in order to identify the user. In other words, it acts as a form of authentication, which leads to access control.
They represent the operations you can perform over the store data. For instance, the order.add API method indicates that you can add orders made by your clients.
It is a string of characters that is used to get access to the shop's data. Read more in order to find the credentials needed to add the store. These credentials are unique for each hosted platform.
To avoid the complexity of technical explanations, it is what makes it possible for you, as a businessman, to retrieve and manipulate the necessary store data from shopping cart databases.

Pricing & Billing

You do not need to pay VAT if you are a business with a valid VAT ID. To avoid being charged VAT, enter your VAT id in the corresponding field. If you have paid the VAT, send an e-mail to support@payproglobal.com with your order id and VAT id specified. Our accounting department will refund you the VAT.

Please note that private individuals cannot have VAT refunded. Provide the legal body details when making the payment to avoid being charged VAT.

According to international rules, every API2Cart account refill is accompanied with tax collection. To be more specific, PayPro, the company handling taxes from API2Cart, collects VAT from Canada and EU countries.

For EU, VAT is collected according to the international rules of VAT and then sent to the state the purchaser is from.

For Canada, the GST/HST is collected and paid to the Government of Canada. However, according to the Canadian law, you can get a compensation from the State by providing GST number of the company receiving the payment, i.e. API2Cart. Please, contact our support team via a chat or email (manager@api2cart.com) to request the GST number.

Every EU country has its specific VAT percentage that can be seen after the country is chosen. You do not need to pay VAT if you are a business with a valid VAT ID. If you have paid the vat, provide us with your valid VAT id and our accounting department will refund you the VAT. Private individuals cannot have VAT refunded.

Fixed VAT is collected with each recurring payment. Here you can find more information about VAT rates for different countries. The residences of the countries not included into the list won’t be charged while refilling API2Cart account. After each successful payment, PayPro is sending an invoice to the customers email indicated on the order page.

Find out how to avoid paying VAT.
API2Cart has 5 pricing plans to fit the needs and budget of different size business. You can find prices on the dedicated pricing page.  You can contact our Customer Success Manager at manager@api2cart.com to discuss which plan to choose or any other details.  
To subscribe to the API2Cart service and pay for it, please contact our Customer Success Manager at manager@api2cart.com.

We offer a 14-day free trial to test API2Cart API with full access to all features. No functionality is hidden. To get started, simply send a request to manager@api2cart.com with the email you’d like to register. Our team will reach out to set up your account.

During the free trial, you can connect your own stores or explore API2Cart’s functionality using our demo store. For more details on available API methods, check out our API2Cart documentation.

If you have any questions or need advice, you can book a call with our manager.

Security and Privacy

API2Cart doesn’t store any data, but only transmit it via API requests. The scheme below shows data flow between our customers’ software, API2Cart and shopping platforms.

You can disable automatic notifications from API2Cart in the two different ways:

  1. Click the right mouse button on the notification and choose “disable notifications from www.api2cart.com”.
  2. Go to API2Cart website and press on the lock symbol in the address field. Choose “Use global default” from the drop down list.

disable-notifications

API2Cart service takes serious measures to protect our clients personal and store information.

Sensitive data is protected from unauthorized access. We guarantee not to share your personal account data and keep it confidential. Terms of service security and information protection are provided by our Privacy Policy.

Bridge file. To be able to work with some shopping platforms, it is necessary to install the connection bridge to the store’s root folder. The list of all the platforms that require the bridge installing you can find here.

A connection bridge is the most secure method to access store data. The data received will be used only for providing the work of API2Cart API methods. API2Cart doesn't collect and save any data retrieved from the stores. As an exception, we save the credentials needed for making API requests to the stores. Also, we are caching the store configuration (e.g., the list of supported currencies, time zones, etc.) as it helps reduce the number of requests to the stores.

Here, you can find a video tutorial on how to add a store in the API2Cart admin panel. The bridge can be downloaded automatically with the help of the bridge.download method. More details related to the bridge you can find here.

Technical side of bridge security

IMPORTANT: For each request from API2Cart to the bridge, we form the signature based on request parameters and srore_key. When the request comes to the bridge, the signature is calculated on the bridge and compared with the one sent from API2Cart. If it matches then the request will be performed. Otherwise, the bridge will present an error. As of bridge version 141, communication between the bridge and API2Cart is encrypted. That is the way we do the authorization.

FTP credentials are used to upload a bridge in order to specify connection with self-hosted platforms. When adding a store to API2Cart using FTP, credentials are used only for bridge uploading, and they are not stored in our system.

In order to investigate issues and troubleshoot reported problems or install the connection bridge file, API2Cart support technicians may require access to the online store, web server and database.

It is recommended to temporarily change the password of the admin account before providing a technician with access to your online store. Once your issue is resolved, you should change the passwords of all the provided accounts as soon as possible. The technician will make it clear to you what access exactly we need to solve your problem. More details on which accesses API2Cart techs may ask can be found here.

We highly respect API2Cart customers’ privacy. We have adopted all the necessary measures so that you could be confident about how we protect and manage personal information. For more information please get familiar with the Privacy Policy of our company.

In order to investigate issues and to troubleshoot reported problems, or download the connection bridge file API2Cart support technicians may require access to online store, web server and database.

We understand that this kind of access information is sensitive, and are best kept to a need-to-know basis. With this in mind, we will only require access to your online store where it is absolutely necessary.

We have taken every precaution to ensure that our systems which store access information is highly secure. However, there are additional precautions that we advise our customers take before providing us with access credentials.

In all cases where we require access to online store, we will make it clear to you exactly what access is needed, and why.

Summary of this FAQ

  • When providing a technician with access to your online store, it is always best to change the password of admin account been provided with a random password temporarily, while the issue is being traced by us.
  • Once your issue has been resolved, you should change the passwords of all provided accounts as soon as possible.
  • In all issues that require access to your online store, the technician will make it clear to you exactly what access we need.

Access to your online store

Depending on the task which needs to be performed, an API2Cart technician may require access to your online store. We strongly advise you to change the password of Admin/FTP accounts being provided with a random password for API2Cart support for the duration of the issue, with only the essential permissions to your online store.

  • Change the existing password of user/staff account with a random and complex password.
  • Once your issue has been resolved, you should change its password as soon as possible.

Access to a web-online store administrator account

More often than not, we will require access to an administrator account on your online store. Follow the steps outlined in the Access to your online store section of this article.

Access to an FTP or SSH account

In order to investigate the problems, API2Cart support may require access to the files of your online store installation. Follow the steps outlined in the Access to your online store section of this article.

Make sure that this account is a user-level account that has access to the directory in which your online store is installed, unless our technician specifically requests an unrestricted access account (see below).

'Root' (unrestricted access) to your server

If a technician asks for 'root access' to your server (a root account with unrestricted permissions), please do not be alarmed. Only in the rarest of cases will we ask for such access - i.e. when our ability to diagnose and resolve your issue absolutely requires it (such as generating or monitoring server logs, or making server configuration changes).

When providing us with root/unrestricted access to your server, it is imperative that you follow the temporary account creation steps outlined in the Access to your online store section of this article.

Firewalls and IP based authentication

If your systems are protected by IP address authentication (e.g. if you have a firewall), please let us know and we will provide you with the list of our office IP addresses to allow through.

API2Cart service requires bridge downloading to establish integration with your software and retrieve data from stores. A connection bridge is the most secure method to access store data. The data you retrieve will be used only in order to perform certain API2Cart methods.
API2Cart service takes serious measures to protect our customers' personal and store data.  
Sensitive data is protected from unauthorized access. We guarantee that we will not share your personal account information and will keep it totally confidential. Terms of service security and information protection are provided by Privacy Policy.

Troubleshooting

Web browsers request for information from the server, and when it is performed, it sends an Accept header. In case if the server is not able to send that data in the requested format in the Accept header, then the server sends the 406 Not Acceptable error.

 

Reasons

The 406 error can appear accordingly to your mod_security rule on the server. Mod_security is a security module of Apache web server, usually permitted automatically on all hosting profiles. In case if a site, page or even function violates one of the rules, server can send the 406 error.

 

How to Prevent

You can turn mod_security off. Also, there is a possibility to disable a specific rule or each domain individually. Thus, if you wish to disable mod_security, go to mod_security using modsec manager plugin in control panel.

 

Note: There may not be the option of turning mod_security on/off in your cPanel or dedicated servers. In such cases, use command line using SSH or contact tech support to enable/disable this option.

 
shopping cart integration via API2Cart  

With API2Cart shopping platforms integration is easy

Integrate once, save 4-8 weeks and thousands of dollars on each integration.

Never worry about maintaining separate connections.

 
API2Cart uses Bridge file that enables API interaction for some shopping carts. This folder should be uploaded to store directory via FTP client. In some cases a user may not have enough rights to change the corresponding folder. In order to fix it you have to change folder permissions:
  • 644 or 666 for "bridge.php", depending on your server configuration;
  • 755 or 777 for "/bridge2cart" folder, depending on your server configuration.
In order to update an entity please specify the attribute you want to change, for example &price=14.99. You can find the list of supported attributes in our Documentation section.

You can report a bug or request a new feature by contacting us. You are also welcome to contact our Customer Success manager at manager@api2cart.com in case of any issues.

In this case there are several simple steps that you can follow:

  • Re-upload a Connection Bridge file to store’s root folder using an FTP client. Click here for more info.
  • Change Store Key manually: in bridge2cart folder open config.php file with any kind of text editor (i.e. Notepad). In the bottom of the file you will be able to change your Store Key that you can find at https://www.api2cart.com/app/stores.
  • If none of the methods above are working don’t hesitate to contact us.
API2Cart can’t disconnect the store while you perform API request to it. If you see this error for a long time, most likely you are using a program, that makes periodical requests to the store through API2Cart. Please disable it before disconnecting. If you don’t know which specific program performs requests or how to disable it feel free to contact our Support Team.
The store belongs to another account. Please make sure there are no typing errors in the store_key parameter. If you have multiple API2Cart accounts, probably you’re using an api_key from a wrong one.
Double-check the root folder where your store is located. If the shop is placed in the subdomain of your site please indicate the subdomain folder. In case you can't solve this issue feel free to contact API2Cart Support Team.
API2Cart already has a store with the same URL. If you don’t see it in your profile, please contact us.
Probably your firewall blocks our IP or the site is down. If you can access the site from your browser it means that your website is working. In this case, please, contact your hosting provider and ask him to add the API2Cart IP to the white list. If it still doesn’t help, contact our Support Team.

Check if you enter the correct API Key. It can be found on the store management page:

Probably, you didn’t enter one of required parameters. To see the list of all the required and optional parameters, visit our Documentation section.

This kind of error comes when API2Cart can’t create the entity due to shopping cart restriction. For example, if you’re trying to create a user with e-mail that is already registered.

We can’t create an entity with identified parameters, because of the SQL UNIQUE constraint - a row with a field which is meant to be unique already exists.
Please, specify the API method you would like to proceed working with. You can find the list of supported API methods here.

There are two possible reasons for that. Either you have entered the incorrect store_key or the store doesn’t exist. The list of available stores can be found on the following page or using the account.cart.list API method.

Please, make sure you have passed an ID of the entity in the API request. Feel free to contact API2Cart Support Team in case if you still have any issues.

If this error occurs, it means that the cart or cart version, where the store is located, is not supported by API2Cart.

Another reason of the error formation is the database structure that has been changed because of the third-party module.

If this error occurs, contact your server administrator to enable Base 64 support.

If this error occurs:

  • Check whether API2Cart IP is in the server’s firewall white list and restart the requests. (How to add IP to white list)
  • Your server’s characteristics isn’t suitable for particular shopping cart. Optimize your server configurations to establish proper work.
  • Increase the server’s RAM

If this error occurs:

  • Check whether API2Cart IP is in the server’s firewall white list and restart the requests. (How to add IP to white list)
  • Your server’s characteristics isn’t suitable for particular shopping cart. Optimize your server configurations to establish proper work.
  • Increase the server’s RAM

If this error occurs:

  • Check whether API2Cart IP is in the server’s firewall white list and restart the requests. (How to add IP to white list)
  • Your server’s characteristics isn’t suitable for particular shopping cart. Optimize your server configurations to establish proper work.
  • Increase the server’s RAM

Webhooks

There is a special API method account.failed_webhooks that allows you to list recently failed webhooks. Please note that information about failed webhooks is stored for 24 hours.

If a particular e-commerce platform does not support native webhooks (e.g Magento, Opencart), webhooks functionality is emulated by querying store data periodically. Currently, this period is set to 300 seconds, so you can expect 5 minutes delay when receiving webhooks from some platforms.

We suggest to try one of the publicly available webhook testing services, for example requestbin.com, webhook.site or similar. Use url generated by the service as webhook callback. If webhook still doesn’t work, contact our support for further assistance

Please check if your callback URL accepts POST requests. It should also return 200 OK HTTP response or else webhook will be considered as “failed” and after several attempts will be dropped.