Amazon Best Prices

For non-individual sellers only!

Program includes the following features:

Program has internal interpreter and allows writing complex expressions or small programs to calculate new price, margin and final price. You can use all sums and properties retrieved from Amazon in such expressions or scripts (small programs for interpreter).


Download ... (Build: 1.0.0.5 Aug-31-2016)

Program "Amazon Best Prices" consists of two components: Configurator and Repricing document. First component allows administrators to configure repricing. Second component allows staff to make repricing using prepared configurations.

There are two ways to create lists of products which you are going to reprice:

To select lists of products to reprice from ERP you have to define: the ERP table where products listed, field with ASIN or SKU. In addition you may define other fields of the table: column with cost price, minimum price and with listing price to save new calculated prices. Also program allows to define a filter for products selected from ERP.

If you can't relate products with lists in ERP, you may retrieve them from Amazon. Program makes a request for appropriate report and saves listings as flat-files on disk. Then program will suggest repricing batches (by 100 or 1000 or all items) of items from saved listings.

Configurator

Program with window which includes two pages.

Has "document" behavior. It means that, like any office document, configurator has "New", "Open", "Save" buttons and allows the creation of several files with settings to provide several kinds of repricing of products listed on several Amazon marketplaces ( com, com.uk, de, ... ).

Configurator allows the testing of settings and making real repricings.

Window has required fields. Program will check them when you try to save settings or to make a real repricing.


Settings page

Includes Amazon marketplace connection properties and ERP data source properties. Also requires the setting of the error journal file.

You may obtain Marketplace ID, Merchant ID, Access key and Secret key here : https://developer.amazonservices.com/. Click "Sign up for MWS" and follow instructions.


Almost all of Amazon properties are required.

In order to test the connection, the type of ERP data source and a valid connection string (in the case of a database) are required.


The connection string builder can be used ("Build connection string" button) to create a valid connection string.


Repricing settings page

First, switch on "FBA" checkbox if you use "Fulfillment By Amazon".

Then define two groups of settings for "ERP repricing" and "Listings repricing", and calculation expressions/scripts.


ERP products repricing settings:
Table The table of ERP with list of products. Table must include a column with ASIN or SKU. Click "..." button to select table from existing.
ASIN/SKU column name Key column with ASIN or SKU. SKU is preferable, because of it must be unique for all your listings. Click "..." button at right of text box to select existing column from list.
Cost price column name Column with cost price. Cost price is needed to calculate margin to prevent possible losses. Click "..." button at right of text box to select existing column from list.
Minimal price column name Additional sums to control profit and to prevent losses. You may use MinPrice variable in calculation of prices or margin, you may filter items by MinPriceDifference column when sent new prices to Amazon or when delete items from repricing.
Price column name You may define a column with current Amazon listing prices in ERP table to store new calculated prices.
Default filter You may set a default filter for selection products from ERP. Filter can be too complex. Can include any number of nested brackets. Each pair of brackets consists of filter conditions (for columns of ERP table) and nested brackets. Also pair of brackets has control to select logical operation ( OR / AND ) for conditions and nested brackets inside.

Additional Join If you need to relate table with products with another table (to use additional filter conditions, for example) , define join condition. Refer to main table by it's name. Make sure that syntax is valid for database type of your ERP.
Additional Join If you can't define filter expression with using of "Default filter" dialog, write it using of SQL syntax valid for your ERP database type.

Listings repricing settings:
Quantity greater than zero When program retrieves reports from Amazon, such reports include quantity of rest of product on Amazon. You may reprice only products with positive amount.

Expressions:

There are three sums which you can calculate by writing expressions or scripts: new price, margin and final price. Click button at left of appropriate field with expression to write/modify script.



"Expression" is one line without "return". Program evaluates expression and assign the result for appropriate sum.

"Script" is a small program with several lines for interpreter. You may use constants, variables, operators, brackets. There is a programmer's guide for "Dynamic Objects, Expressions and Scripts in .Net", but you have to remember following main rules:



You can use following variables writing a script to calculate any sum:

ASIN String Amazon ASIN. Use as string in expressions. For example: if (ASIN‹"B00000001"); .... ASIN is unique for marketplace, but does not have to be unique for ERP. Several SKU with different conditions and prices for one ASIN is allowed.
SKU String Seller SKU. Unique for all your listings on Amazon, but not unique for Amazon. SKU must be unique for your ERP. Use as string in expressions.
Title String Name or description of product. Use as string in expressions. For example: if (Title.Contains("Karl Marx")); ....
Brand String Use as string in expressions.
SalesRank Integer Maximum sales rank for all categories on Amazon. Use as integer in expressions.
Condition String "New" or empty for new products. Else "Used" or any other valid for Amazon. Use as string in expressions. For example: if (String.IsNullOrWhiteSpace(Condition) || Condition.Trim().ToLower()=="new"); ....
CostPrice Decimal If you have defined the column with "CostPrice" in your ERP table in settings, then you may use CostPrice in expressions as decimal. For example: markup=FinalPrice-CostPrice; .... Else you have to assume that your mark-up is a percent from current price. For example: if(CostPrice>0.0); markup=FinalPrice-CostPrice; else; markup=CurrentPrice/1.25; end;. Pay attention that all decimal constants are used with dot and decimal places 0.0 !
CurrentPrice Decimal Program retrieves from Amazon. Use as decimal in expressions.
CurrentShipping Decimal Program retrieves from Amazon. Use as decimal in expressions.
CurrentPriceLanded Decimal Sum of CurrentPrice and CurrentShipping. Use as decimal in expressions.
CurrentRegularPrice Decimal Program retrieves from Amazon. Price without any charges. Use as decimal in expressions.
LowestPriceNew Decimal Lowest listing price for products with "New" condition. Program retrieves from Amazon. Use as decimal in expressions.
LowestPriceUsed Decimal Lowest listing price for products with non "New" condition. Program retrieves from Amazon. Use as decimal in expressions.
LowestPrice Decimal Lowest of LowestPriceNew and LowestPriceUsed.
LowestPriceNewLanded Decimal Lowest landed(listing price + shipping) price for products with "New" condition. Program retrieves from Amazon. Use as decimal in expressions.
LowestPriceUsedLanded Decimal Lowest landed(listing price + shipping) price for products with non "New" condition. Program retrieves from Amazon. Use as decimal in expressions.
LowestPriceLanded Decimal Lowest of LowestPriceNewLanded and LowestPriceUsedLanded
CompetitivePriceNew Decimal Lowest competitive price for products with "New" condition. Program retrieves from Amazon. Learn about "competitive prices" on Amazon site. We recommend use LowestPriceNew. Use as decimal in expressions.
CompetitivePriceUsed Decimal Lowest competitive price for products with non "New" condition. Program retrieves from Amazon. Learn about "competitive prices" on Amazon site. We recommend use LowestPriceUsed. Use as decimal in expressions.
CompetitivePrice Decimal Lowest of CompetitivePriceNew and CompetitivePriceUsed
CompetitivePriceNewLanded Decimal Lowest competitive price and shipping for new products.
CompetitivePriceUsedLanded Decimal Lowest competitive price and shipping for used products.
CompetitivePriceLanded Decimal Lowest of CompetitivePriceNewLanded and CompetitivePriceUsedLanded.
MinPrice Decimal Additional price from ERP to calculate profit and to prevent losses. For example: if (NewPrice›MinPrice);NewPrice=CurrentPrice;. Program won't reprice items where price not changed (new price == current price).
Height Decimal Program gets from Amazon, but you can change it. Additional property to calculate sums(shipping). But we recommend always use CurrentShipping.
Length Decimal Program gets from Amazon, but you can change it. Additional property to calculate sums(shipping). But we recommend always use CurrentShipping.
Weight Decimal Program gets from Amazon, but you can change it. Additional property to calculate sums(shipping). But we recommend always use CurrentShipping.
Width Decimal Program gets from Amazon, but you can change it. Additional property to calculate sums(shipping). But we recommend always use CurrentShipping.

Three sums program allows calculate:
New price Default expression is: return LowestPriceLanded-CurrentShipping-0.01;. So, we take lowest price and make our new price in 0.01 less.
Margin Before calculating margin, program takes calculated new price and asks Amazon to estimate fees. So, you can use two additional variables in script of margin calculation:
NewPrice Decimal Calculated new price.
Fees Decimal Fees estimated by Amazon for new price.

Default script for margin is:

if CostPrice==0.0;
CostPrice=Decimal.Round(CurrentPrice/1.25,2); // If cost price not set then assume our mark-up is 25%;
end;
return NewPrice-Fees-CostPrice;

Final price If not set - new price will be saved on Amazon. Default expression is: return NewPrice;. In additional you can use Margin variable to refer calculated margin.

"Reprice ERP products ..." button

Shows dialog with default filter, defined in ERP products repricing settings and allows changing filter conditions. Then selects data from ERP table, retrieves products and their properties by ASIN or SKU from Amazon and adds into repricing document which makes calculations of new price, margin and final price.


"Reprice Listings ..." button

First, program checks to see if there any reports with listings from Amazon on computer? If report with listings exists (retrieved earlier), then program asks: use existing report or make new report request to Amazon and update old report with new?



After report with listings is accepted/received, next dialog allows adding into repricing document one hundred or thousand of items (if the number of products in your listings is too big).



Then program adds products from listings to repricing document which retrieves products data from Amazon and makes calculations.


Saving configurations.

You may prepare several configurations and save them as different files with "dtoarp" extension. For example: C:\Users\All\MyAmazonRepricingConfig.dtoarp


Repricing document

You have to adjust a launch of repricing document and have to pass a parameter with full path of file of configuration. Just edit shortcut "Amazon Best Prices. Repricing documents" command like:

C:\Program Files (x86)\DataOdyssey\Amazon Best Prices\ARP.exe C:\Users\All\MyAmazonRepricingConfig.dtoarp

If you run the repricing document without the link to the configuration, the program will prompt for the location of the configuration file. When you click "Reprice ERP products ..." or "Reprice Listings ..." in Configurator, Configurator passes configuration to repricing document without saving to any file.

Repricing document is implemented like any office document and has "New", "Open" and "Save" buttons. You may prepare any number of documents and may keep them in ERP database or exchange folder.

Repricing document must have unique name. Program generates it for each new document. If ERP exchange datasource is folder, then program saves repricings as files with names the same as names of document with "dtoarpdoc" extension. If ERP data source is database, then program will create two tables: DTOMPAZ_REPRICING_HEADERS and DTOMPAZ_REPRICING_ITEMS.


There are several ways to add products into repricing document.



Most common are: create new document with selection products from ERP using default filter, or create new document with selection products from listings, retrieved from Amazon.



It is very important to remember one rule. If you add products by ASIN, ASIN does not have to be unique in your ERP. Possible situation when you have products with one ASIN but with different conditions (new or used) and different prices. In this case program will add several items into repricing document (for each SKU). So, adding items by SKU is more preferable way.


Algorithm of repricing.

For each item added to document program does:

  1. Asks Amazon about current price, shipping and conditions by ASIN or SKU. If SKU is defined for item, program will ask by SKU else by ASIN. But if there are several products with such ASIN, program will create additional items in document. Only SKU is unique.
  2. Retrieves other properties of products from Amazon: Title, Brand, Author, dimensions, weight, image.
  3. Retrieves lowest offers from Amazon. After result receiving program separates lowest prices for new and used products and stores them into appropriate columns: LowestPriceNew, LowwstPriceUsed, LowestPriceNewLanded and LowestPriceUsedLanded ( see Expressions). *Landed prices includes listing price and shipping. We recommend use *Landed prices. These prices are accurate for calculating your best price. Moreover, some items have 0.01 listing price, and full real price is stored as shipping.
  4. Retrieves competitive prices from Amazon. You may use them in calculations, but we recommend operating with lowest prices. After calculation program separates competitive prices for new and used products and stores them into appropriate columns: CompetitivePriceNew, CompetitivePriceUsed, CompetitivePriceNewLanded and CompetitivePriceUsedLanded ( see Expressions). *Landed prices includes listing price and shipping.
  5. Takes the script of new price calculation from configuration and calculates the new price. Most common calculation makes new price in 0.01 cent cheaper than lowest price on Amazon. Amazon doesn't take into account your listings when selects lowest prices. You may compare new price with MinPrice, if you have such in your ERP, and may decide not to change new price (make equal to current) to prevent repricing.
  6. Queries Amazon for estimation of fees for new price and stores result into "Fees" column.
  7. Takes the script of margin calculation from configuration and calculates the margin. Use CostPrice and CurrentShipping to calculate margin. You may prevent repricing if margin is negative (do set new price equals to current).
  8. Takes the script of final price calculation from configuration and calculates the final price. If final price is zero then program will analyze NewPrice column when sending new prices to Amazon.

After items selection and repricing you have to analyze errors returned by Amazon or occurred during calculation. Then delete rows with errors.



Check items and sums. You can mark and delete items using filter conditions. Explore system menu ( "Blank"/"Document" button at top-left of window).



And you may change some of sums (CostPrice, MinPrice, NewPrice, ...). Program will recalculate changed items.



Then you may save document in ERP source and make repricing on Amazon. Use "Reprice ..." button or appropriate menu items.


Download trial ...
Buy now

Write us
Amazon orders download