SCO 666, Sector 70, Mohali, Punjab +91 9217885758
Work  /  Custom API & system integrations
Custom API & system integrations

ERP stock and price sync with per-country pricing for a bike shop

Through a Bulgarian web agency, we connected a bicycle retailer's online store to its ERP over SOAP for automatic price and stock updates, and added country-specific pricing based on visitor location.

Results

  • Prices, specials and stock sync automatically from the ERP on a scheduled cron job
  • Agency confirmed stock quantities were syncing correctly
  • Country-based pricing live with geolocation and a fallback when the lookup fails

The challenge

A Bulgarian web agency brought us in to extend an online store it looks after for a bicycle retailer. The retailer's prices, promotional prices and stock levels live in its ERP system, so keeping the website accurate meant updating it by hand. The retailer also sells across borders and wanted visitors from different countries to see different prices in the right currency. On top of this, sales staff needed a quick way to turn a selection of products into an offer document for customers, and the product pages showed a colour selector even when only one colour existed.

What we did

  • ERP synchronisation over SOAP. We built a SOAP client for the ERP's web service. It fetches retail prices, special prices and quantities that have changed since the last sync and matches products by model or UPC code. We set it up as a scheduled cron job on the hosting, and each run produces a CSV report of updated products that lists the main UPC before each variation UPC so staff can check changes at a glance.
  • Country-based pricing. We developed a pricing extension that detects the visitor's country through a geolocation service and applies prices stored per product and country, in the matching currency. It falls back to default pricing if the location lookup fails. We also corrected the store's currency configuration and resolved a slowdown caused by the geolocation calls.
  • Offer export. In the admin, staff can select products and export them, with attributes and pictures, to a CSV offer sheet.
  • Cleaner product options. The colour option is now hidden when a product comes in only one colour.

Tech stack

OpenCart, PHP, MySQL, SOAP, cron, geolocation API

Project facts

Industry
Bicycle retail
Client
a Bulgarian bicycle retailer, via a Bulgarian web agency
Country
Bulgaria
Year
2019–2020
Engagement
Through a partner agency

Services

ERP integrationCustom developmentAdmin customisationBug fixingDeployment

Technologies

OpenCartPHPMySQLSOAPcPanel cron

Integrations

Gensoft ERP (SOAP web service)geoplugin.net geolocation

Planning something similar?

Tell us what you're building. We'll share how we'd approach it and what it would take.