API Changelog

Note: This list is no longer updated. API release notes are now listed here.

This is a list of API changes and new features.

The date indicates when the update first appeared in production. However, every API update is released gradually and does not become available on all accounts at the same time.

As a rule of thumb, updates older than 3 weeks should be available everywhere. If you need a specific new API feature on your account, and you are not sure whether it is already available or not, you may contact ERPLY customer support.


  • Added “defaultPriceWithVAT”, “specialPriceWithVAT” to API call getProductPrices


  • Added “paid” filter to API call getPurchaseDocuments
  • Added “berlinPOSVersion” and “berlinPOSAssetsURL” to API call switchUser


  • ZReport::getOnlyLastShift now shows all transactions of the last shift even if the shift has started on the previous day


  • One partner key added
  • Added “salesOnly” and “returnsOnly” parameters to API call getReports, report “totalTax”
  • saveWarehouse: Renaming a warehouse / location did not work
  • Bug fix in API call saveUser: integration problem with


  • Log a warning if API client tries to create a very long product recipe.
  • Bug fixes in API call getReports, report “totalTax”
  • Bug fixes in: getSummaryInventoryReport, getCashIns, getIssuedCoupons, getServices, saveStocktaking
  • Added separate POS versioning for one reseller.


23 December 2014

  • Added input parameter “getHeadersOnly” to API getPriceLists.
  • Added input filter “productIDs” to API getProductStock.
  • Added input filter “excludeGiftCards” to API getSalesDocuments.
  • API getSalesDocuments: each invoice row now has a flag “originalPriceIsZero”, indicating that the product’s price on product card is 0 (and the actual selling price was presumably manually entered at the POS).
  • API saveSalesDocument: allow invoices to be set to SHIPPED status.


6 January 2015

  • Added input parameter “parentProductID” to API getProducts. It can also be combined with input parameter “findBestMatch”.
  • Added output field “product_description_eng_enabled” and others to API getConfParameters – to indicate whether the account has support for multilanguage descriptions or not.
  • Updated output field “additionalModules” in API getConfParameters: it did not list some newer modules.
  • Added input parameter “website” to API createInstallation.


15 January 2015

  • If check box “Each user can only see their own customers and associated documents” is selected for a user group in back office, then customers created over API will automatically get a Customer Manager.
  • Removed old unused functionality: static, per-account “API keys”. (This is not related to neither session keys nor partner keys.)
  • Added search filter “cause” to API getInventoryRegistrations.
  • Added new API call “deleteInventoryRegistration”.
  • Added new internal logging options.


22 January 2015

  • Fixed: A credit invoice saved over API now automatically goes to payment status “Credited”, instead of “Unpaid”.


29 January 2015

  • IMPORTANT: the printout URLs from API calls “getSalesDocuments”, “saveSalesDocument”, “getPurchaseDocuments”, and “savePurchaseDocument” have changed. While the old URLs were valid indefinitely, the new URLs are valid only for 24 hours. This means that these URLs (of sales invoice and PO printouts) should not be sent by e-mail; instead, the contents of the URL should be retrieved and the printout enclosed with the e-mail message as an attachment.
  • Added new API call “getReservedStock”.
  • Added new parameters (“companyName”, “companyCode”, “companyVatNumber”, “website”, “iban”, “swift”) to API saveWarehouse and getWarehouses.

1.3.0, 1.3.1

3 February 2015

  • Added new API call “editCompanyInfo”.
  • Bug fixes for the v1.2.0 printout URL scheme change.


12 March 2015

  • New API call “savePOSStatistics”.
  • Invoice calculation algorithm version 4 implemented.
  • Security fixes.
  • Technical adjustments related to franchise chains.


23 March 2015

  • Fixed: using the saveSalesDocument → “deliveryTypeID” field created duplicate attributes.


26 March 2015

  • Fixed: API calculateShoppingCart now issues coupons only in correct stores and store groups.
  • Fixed: If a product group in price list did not have discount, API getPriceLists returned the discount of the previous group.
  • Fixed: Configuration parameter “langs” is editable again, via API saveConfParameter.
  • Fixed: calculation problem in API calculateShoppingCart. In some cases, there was a 0.01 difference in invoice total, or API showed a discount percentage when item was actually at regular price.


2 April 2015

  • API no longer attaches POS version as an attribute to each invoice. This concerns Windows POS (attribute “_e_opos_version”) and Touch POS / Berlin POS (attribute “POSver”). We will still be recording POS version in internal logs, though.
  • When a sales order (API call “saveSalesDocument”, type “ORDER”) is cancelled, the flag “Reserve Goods” is now automatically cleared. This is consistent with the back office.


16 April 2015

  • Fixed: API getInventoryWriteOffs, getInventoryRegistrations and getInventoryTransfers returned incorrect cost of goods in certain cases (when using the upgraded inventory module and when querying either documents from old period, or when the write-off had been made from multiple batches).
  • Optimized: API getProducts is now faster when querying products with inventory quantities (getStockInfo = 1) and there are a lot of locations.
  • Optimized: API getProductGroups is now faster when the product group tree is very big. Also, the API call has been accepting two input parameters “productGroupID” and “changedSince”, which were previously undocumented. These have been added to documentation.


20 April 2015

  • Fixed: API getProductGroups, problem with group images and location-specific tax rates.


29 April 2015

  • Further optimizations in API getProducts (retrieving Reorder Points, Restock Levels and reserved amounts with parameter “getStockInfo” = 1).
  • Reseller configuration. In Finland, new accounts created via reseller will now get the back office with Berlin UI.


4 May 2015

  • Fixed: bug in API getProducts.


18 May 2015

  • Fixed: a rounding issue in calculateShoppingCart (eg. 161 reward points were subtracted from customer in certain cases, instead of 160).
  • Added: field “rightEditActualReports” to getUserRights.
  • Added: API “getGateways” now returns Merchant Warehouse as one of the payment providers.
  • Promotion “Exchange reward points for a % discount off from certain products” has been implemented in API calculateShoppingCart.

1.4.9, 1.4.10

21 May 2015

  • Added field “cayanGatewayURLs” to API verifyUser.


22 May 2015

  • Bug fixes in API calculateShoppingCart.


2 June 2015

  • Added new API call “getSessionKeyInfo”.
  • Search field “inventoryTransferNo” (find a document by its number) added to API getInventoryTransfers.
  • Field “account_links” added to API getConfParameters. It contains account-specific URLs to Help Center and Terms of Service.
  • API getPayments and savePayment support new fields related to Cayan (Merchant Warehouse) payment integration.
  • API calculateShoppingCart now notifies cashier about the free available gift in more cases. Previously, only promotion “Buy product X and get Product Y for free” was supported; now we also support “Buy for at least $x and get Product Y for free”.


8 June 2015

  • One new partner key added.
  • Field “epsiURL” added to API verifyUser and switchUser calls.
  • Field “rightAddRewardPoints” added to API getUserRights.
  • API addCustomerRewardPoints now returns error 1061 if editing customers’ reward point amounts has been disabled for this user group.
  • API saveSalesDocument now allows to make certain edits to the rows of a confirmed invoice. Rows cannot be added or removed, and products and quantities cannot be changed — but it is possible to edit prices, discounts, tax rates and other retail information.

This limitation (that it is not possible to add, remove or change quantities and products) is enforced by the inventory module. When a sales invoice is confirmed, ERPLY generates “inventory records” from it, to remove the sold items from stock. However, you can still delete or credit a confirmed document if necessary.


17 June 2015

  • API saveInventoryRegistration and saveInventoryWriteOff now allow to edit and update existing documents, too — in addition to creating new documents.
  • Some unnecessary attributes removed from the output of API getUserGroups. These attributes duplicated information contained in the official, documented output fields, or were not necessary for API clients.
  • Fixed: API saveStocktaking generated a stocktaking sheet with incorrect quantities when flag “excludeReservations” was used.


19 June 2015

  • Promotion “Purchase an item and each additional item of the same kind will get a discount” implemented.
  • Time filter in Z report implemented.


22 June 2015

  • Fixed: API getSalesDocuments, orderBy = "dateAndNumber" now sorts by date and number as expected, not by date and creation time.
  • Added a consolidation mapping for credit card types to API getReports and API getPointOfSaleDayTotals.


15 July 2015

  • API getCustomers: field “shipGoodsWithWaybills” added.
  • API getCustomers: conf parameter “deep_incremental_name_search” implemented. When this parameter is enabled, applied, customer search in Berlin POS will always include partial matches, even if exact match has already been found.
  • Fixed: Field “account_links” in API getConfParameters (added in version 1.5.0) did not return correct URL-s for one reseller.
  • Fixed: calling API savePurchaseDocument now updates the hidden “sum” field on document.


6 August 2015

  • Fixed: bug in API getEmployeeStats.
  • Fixed: API deleteSalesDocument did not allow to delete a Sales Order, even if user had the right.
  • Card type mapping (added in version 1.5.3) updated.
  • Configuration parameter “api_getproducts_search_in_code4” implemented. If enabled, POS product search (using the “searchNameIncrementally” field) will also find matches based on supplier’s (manufacturer’s) code.


11 August 2015

  • Added field “awardedAmount” to API getCampaigns and saveCampaign. (New promotion setting: get $ or % off of not only one, but multiple or unlimited products from a product group, category or list).


18 August 2015

  • Added field “rightMakePOSReturnsWithoutReceipt” to API getUserRights.