How to Build Your Integration Depending on the Industry
To make it easier for you to navigate your integration logic based on our API, we outlined general patterns that work for software of particular industries. Click on the type of system that either represents or is the closest to what you do to read the details.
-
Repricing System
Integrations are elaborated according to the system’s needs. Repricing systems work mostly with prices, so product methods are those they should base their integration on. To ensure that the information needed is received as fast and error-free as possible, such solutions should adhere to the most effective method using pattern possible.
There are 4 methods that are basic for repricing systems. They are often used in a particular order that is the best to stick to when developing the integration. The order in which the methods should be used is determined by how repricing systems work.
- Before you get information on a product, you need to first get its ID. Run the product.list method in order to retrieve it.
Note. The product.list method returns 10 products by default, so you will need to specify the amount of products needed by using the count parameter.
E.g. $params = array( 'start' => 0, 'count' => 50, 'params' => 'id,name,price', ); public function apiList($params) { return $this->_api->request('product.list', $params); }
- When you get product id, you are able to retrieve all needed data about the specific product using the product.info method. Set the parameter params in order to choose which entity fields you want to retrieve (e.g. name, description, price, etc.).
E.g. $params = array( 'id' => 10, 'params' => 'id,name,description,price,quantity', ); public function apiInfo($params) { return $this->_api->request('product.info, $params); }
- You may later need to update information on the product (e.g price, quantity, description, etc.). This can be done by using the product.update method. Here you also need to specify the product id parameter, so before you get the product information updated, you must as well execute the product.list method that would provide this id.
E.g. $params = array( 'id' => 10, 'quantity' => 200, ); public function apiUpdate($params) { return $this->_api->request('product.update, $params); }
Do not forget to use filters to regulate the period of time you need the prices for. The following ones are to be applied to get product data filtered:
- create_at (filters products according to the time of their creation)
- modified_at (filters products according to the time of their modification)
You may also need to use other product filter fields to have products filtered by other parameters. Here are some of those that are needed to do this:
- price (filters products according to their prices)
- wholesale_price (filters products according to their wholesale price, that is, prices that are set for products sold in large quantities)
- special_price (filters products according to special prices)
- tier_price (filters products according to discounts based on the ordered product quantity)
- categories (filters products according to their categories)
- category_ids (filters products according to the IDs of their categories)
- name (filters products according to their names)
To find out what parameters are necessary to use a method, find the method’s page in the documentation . There you will see them listed in the ‘Params’ section.
-
Data Feed Management System
To create appropriate feeds to be sent to a sales channel, data feed management systems need to get information on products and the categories they are to be related to. Accordingly, product and category methods are those they should base their integration on.
To make sure that the information required for data feed generation is received as fast and error-free as possible, you should adhere to the most effective method using pattern feasible. The basic methods for this kind of systems are laid out in the order that is believed to be best to stick to below.
- Before you get information on the product that the feed is meant to be created for, you need to get its ID. To do this, run the product.list method.
Note. By default, the product.list method returns 10 products. If you need another number, specify the amount of items needed by using the count parameter.
E.g. $params = array( 'start' => 0, 'count' => 50, 'params' => 'id,name,price', ); public function apiList($params) { return $this->_api->request('product.list', $params); }
- With the id of the product found, you can now retrieve all the data you might need to form the product feed using the product.info method. Set the product information required (e.g. its name, price, model, images, etc.) for the feed using the params parameter.
E.g. $params = array( 'id' => 10, 'params' => 'id,name,description,price,quantity,model,images', ); public function apiInfo($params) { return $this->_api->request('product.info, $params); }
- To list the product to the right category, you need to know what category it belongs to. Before running the category.info method, find the id of the product’s category that can be found in the response of the product.info method.
E.g. $params = array( 'id' => 2, 'params' => 'id,name,description,parent_id,avail', ); public function apiInfo($params) { return $this->_api->request('category.info, $params); }
- You may later update information on the product (e.g price, description, quantity, etc.) and its category by using the product.update and category.update methods. Here you also need to specify the product id and category id parameters, so before you get this information updated, you must first get the ids by executing the product.list method.
E.g. $params = array( 'id' => 2, 'description' => 'New description!', ); public function apiUpdate($params) { return $this->_api->request('category.update, $params); }
You may also need to have products and categories filtered. Here are some parameters that are needed to do this:
Products:
- u_brand (filters products according to their brand name)
- u_model (filters products according to their model)
- create_at (filters products according to the time of their creation)
- modified_at (filters products according to the time of their modification)
- name (filters products according to their name)
- short_description (filters products according to their short description)
- description (filters products according to their full description)
- price (filters products according to their prices)
- images (filters products according to their images)
- categories (filters products according to their categories)
- category_ids (filters products according to the IDs of their categories)
- name (filters products according to their names)
- seo_url (filters products according to their URL)
- meta_title (filters products according to their meta title)
- meta_keywords (filters products according to their related keywords)
- meta_description (filters products according to their meta description)
- sort_order (filters products according to their position in the list)
Categories:
- id (filters categories according to their ID
- create_at (filters categories according to the time of their creation)
- modified_at (filters categories according to the time of their modification)
- name (filters categories according to their name)
- short_description (filters categories according to their short description)
- description (filters categories according to their full description)
- seo_url (filters categories according to their SEO URL)
- meta_title (filters categories according to their meta title)
- meta_keywords (filters categories according to their related keywords)
- meta_description (filters categories according to their meta description)
- sort_order (filters categories according to their position in the list)
To find out what parameters are necessary to use a method, find the method’s page in the documentation . There you will see them listed in the ‘Params’ section.
-
Inventory Management
Every integration is developed in accordance with the particular system's needs. For inventory management systems, the basic methods are product and order ones, so the integration should be written around them. This would help to receive the information required as fast as possible.
There are 6 main methods inventory management systems use. The order in which solutions execute them might be different and is determined by the peculiarity of their work.
Product methods:
- In order to get information on the product, you need first to get its ID. Product.list is the method that provides it in the response.
Note. The product.list method returns 10 products by default, so you will need to specify how many products you need to be given in the response by using the count parameter.
- The next method you might need to use is product.update . It helps to update various information on the product (e.g., price, quantity, description, etc.). However, to execute this method you will need to set the product_id parameter, so the product.list method is to be carried out first.
- To make a count of products in the particular store call the product.count method.
E.g. $params = array( public function apiCount($params) { return $this->_api->request('product.count, $params); }
Do not forget to use filters to regulate the period of time and other parameters. Here is a list of filters that are useful while retrieving product data:
- create_at (filters products according to the time of their creation);
- modified_at (filters products according to the time of their modification);
- price (filters products according to their prices);
- wholesale_price (filters products according to their wholesale price, that is, prices that are set for products sold in large quantities);
- special_price (filters products according to special prices);
- tier_price (filters products according to discounts based on the ordered product quantity);
- categories (filters products according to their categories);
- category_ids (filters products according to the IDs of their categories);
- name (filters products according to their names).
Order methods:
- To get information on orders and operate the list of them for a particular store, you need to retrieve the IDs of the orders in question first. You can make it by executing the order.list method.
E.g. $params = array( 'start' => 0, 'count' => 20, 'params' => 'id,order_id,customer,created_time,address', ); public function apiList($params) { return $this->_api->request(order.list', $params); }
Note. The order.list method returns 10 orders by default, so you will need to specify the number of orders needed by using the count parameter.
- In order to update information on existing orders that have been placed by customers, you need to implement the order.update method.
E.g. $params = array( 'id' => 5, 'order_status' => 'pending', ); public function apiUpdate($params) { return $this->_api->request('order.update, $params); }
- Use the order.count method to count orders in a particular store (e.g. the number of completed and uncompleted ones, etc.)
E.g. $params = array( 'order_status' => 'Complete', ); public function apiCount($params) { return $this->_api->request('order.count, $params); }
Here is a list of order filters fields that might be useful to get order data filtered according to:
- create_at (filters orders according to the time of their creation);
- modified_at (filters orders according to the time of their modification);
- payment_method (filters orders according to the payment method name);
- shipping_method (filters orders according to the shipping method name);
- status (filters orders according to the current order status with status history);
- totals (filters orders according to the order totals (ex. total price, shipping price, tax and etc.).
You can find more other methods and the parameters that are necessary to execute in our documentation . You will also find there the request and response examples, code samples, and the Swagger part that allows you to try each method right from there.
-
E-Mail Marketing
The structure of every integration i different, for it depends on the system’s demands. As e-mail marketing solutions work mostly with information on customers and products, their integration should be based on the customer and product methods.
There are 3 methods that are basic for e-mail marketing solutions. Their quantity and order in which they might be used depends on how the service works. However, there is a particular order that you should have in mind when developing the integration.
- First of all, you need to operate the information on products (e.g. IDs, names, descriptions, prices) that are placed in the store. In order to retrieve it, run the product.list method.
E.g. $params = array( 'start' => 0, 'count' => 20, 'params' => 'force_all', ); public function apiList($params) { return $this->_api->request('product.list', $params); }
Note. The product.list method returns information on 10 products by default, so you will need to specify the number of products needed by using the count parameter.
- When you have the data on products placed in the store you can use it according to your e-mail marketing strategy. To do that and get in touch with your client’s customers, you need to extract their contact info first. Customer.list is the method that allows to do this.
E.g. $params = array( 'start' => 0, 'count' => 50, 'params' => 'force_all', ); public function apiList($params) { return $this->_api->request('customer.list', $params); }
- One more method that might be useful to have covered is the order.abandoned.list method. It return info on abandoned orders that can be used for cart recovery campaigns .
E.g. $params = array( 'start' => 0, 'count' => 15, 'params' => 'force_all', ); public function apiAbandonedList($params) { return $this->_api->request('order.abandoned.list', $params); }
Do not forget to use filters to regulate the period of time and other parameters and get the most precise data returned.
Product data filters:
- created_at (filters products according to the time of their creation);
- modified_at (filters products according to the time of their modification);
- price (filters products according to their prices);
- wholesale_price (filters products according to their wholesale price, that is, prices that are set for products sold in large quantities);
- special_price (filters products according to special prices);
- tier_price (filters products according to discounts based on the ordered product quantity);
- categories (filters products according to their categories);
- category_ids (filters products according to the IDs of their categories);
- name (filters products according to their names).
Customer data filters:
- created_from (filters customers according to the time of their creation);
- modified_from (filters customers according to the time of their modification);
- params (filters which entity fields you want to retrieve);
You can find more product, order and other methods at your disposal in our documentation . You will also find there the request and response examples, code samples, and the Swagger part that allows you to try each method right from there.
-
Mobile Commerce
Product, category, and order methods are basic for mobile commerce services, so they are what their integration with shopping carts should be based on. In order to avoid errors and receive information as fast as possible, it is best to follow the most effective method using pattern possible.
There are 4 main methods that mobile commerce systems use. The order in which solutions use them might differ and is determined by the peculiarity of the work of the system.
- The information on products (IDs, name, description, price) is what you will need to get first. To do so, run the product.list method.
E.g. $params = array( 'start' => 0, 'count' => 20, 'params' => 'force_all', ); public function apiList($params) { return $this->_api->request('product.list', $params); }
Note. By default, the product.list method returns 10 products, so you will need to specify the amount of products needed with the help of the count parameter.
- You may also need to get a list of currencies from the store. In order to retrieve this information, you need to use the product.currency.list method.
E.g. $params = array( 'start' => 0, 'count' => 20, 'params' => 'force_all', ); public function apiCurrencyList($params) { return $this->_api->request('product.currency.list', $params); }
- To get data on product categories available in the store, execute the category.list method.
E.g. $params = array( 'start' => 0, 'count' => 30, 'params' => 'id,parent_id,name,description', ); public function apiList($params) { return $this->_api->request(category.list', $params); }
Note. The category.list method returns information on 10 categories by default, so if the number of them needed is different, specify it via the count parameter.
Do not forget to use filters to regulate the period of time and other parameters needed. Below you’ll find the list of filters that you might find useful to use.
Product data filters:
- create_at (filters products according to the time of their creation);
- modified_at (filters products according to the time of their modification);
- price (filters products according to their prices);
- wholesale_price (filters products according to their wholesale price, that is, prices that are set for products sold in large quantities);
- special_price (filters products according to special prices);
- tier_price (filters products according to discounts based on the ordered product quantity);
- categories (filters products according to their categories);
- category_ids (filters products according to the IDs of their categories);
- name (filters products according to their names).
Category data filters:
- start (filters the number from which you want to get entities);
- count (filters the entity amount that has to be retrieved);
- parent_id (filters categories according to the parent id);
- params (filters which entity fields you want to retrieve).
You can find more product, category and other methods at your disposal in our documentation . You will also find there the request and response examples, code samples, and the Swagger part that allows you to try each method right from there.