Context
Since 1990, Alcedo România has been selling farmers what they need for their crops: crop-protection products, seeds, fertilisers and technology packages. It has warehouses across the country and sales teams who go out to the farms.
In 2016 the Alcedo catalogue was printed. Crop-protection products come with a lot of interlinked technical data: manufacturer, active substance, crops, spectrum, doses, toxicity. Sales agents needed it on the farm and in the field, where there was often no signal, and a printed catalogue soon goes out of date.
So we turned the catalogue into an app: MyAlcedoCatalogue, for iOS and Android, with a web panel where the Alcedo team updates the products. We have kept developing it ever since.
The challenge
- The database. Its structure is complex: every product has many interlinked attributes (manufacturer, active substance, crops, spectrum, doses, toxicity), yet the catalogue still had to be easy to search and filter.
- Signal. Agents work in the field, where there is often no internet, so the whole catalogue had to work offline too.
- Access. Not all the data is for everyone: farmers see the public catalogue, and Alcedo’s teams see the full details after logging in.
- Updates. The Alcedo team had to change products, offers, news and banners on its own, without a new version of the app in the stores.
What we built
MyAlcedoCatalogue, the app for iOS and Android, and the web administration platform behind it.
We started with the database: we designed the structure that links products, active substances, crops and manufacturers, so the catalogue can be filtered by any of them.
In the app: the catalogue by category, with filters; a page for each product, with its technical document as a PDF; discounted offers; news; push notifications; contacts for warehouses, agro-pharmacies and sales teams; the four-step “Specialist” form with a photo; quote requests sent by e-mail; and a login for internal teams.
The catalogue is stored on the phone, so the app works without signal and updates itself when the connection returns.
From the admin panel, the Alcedo team runs the whole app: users and roles, the catalogue with its categories and products, banners, alerts and notifications. It also follows usage statistics there.
We built the app so that data which has to be published quickly does not depend on the stores. What the Alcedo team changes in the panel (a product, an offer, a news item, a banner) reaches the app through real-time sync: phones connected to the internet get the change immediately, and the others when they are back in signal. A new version on the App Store and Google Play first goes through Apple’s and Google’s review, which can take from a few hours to a few days, and reaches the phone only when the app is updated. That is why store releases are kept for new features, not for day-to-day data.
At first there were two apps: a public one and a “Business” one for internal teams, holding the sensitive data. We rewrote the app in Flutter (version 4.0), then merged the public and “Business” apps into one, with internal access after login (version 4.4.0).
How we work together now
We keep developing the app, with new features and updates, and publish it on the App Store and Google Play.
Result
- In production since 2016.
- The full catalogue at hand, even where there is no signal.
- The Alcedo team updates the catalogue on its own, without a new version of the app in the stores.
- The app was covered in the Romanian agricultural press: Cotidianul Agricol.
Technologies
Flutter, React, Node.js, Firebase, MongoDB.