All piecesGrocery delivery app · 2024-2026

Supermais

The Atende Mais supermarket on your phone, with in-store prices and stock.

Delivery app for the Atende Mais supermarket chain in Anápolis, Brazil, with a catalog fed by the store's ERP, charging only for what was picked and a panel for the store team.

Supermais cover
Client
Atende Mais
Year
2024-2026
My role
Development of the app, the store panel, the ERP integration and payments; store releases.
Platforms
iOS, Android

In action

Worth calling out

  • Catalog from the ERP

    Prices, deals and stock updated throughout the day, without wiping the team's edits.

  • Fair charging

    Customers pay only for what was picked: a missing item is never charged.

  • Store panel

    Staff and managers follow every order in the store's own panel.

  • Generated API client

    The app talks to the API through generated hooks that stay in sync with the backend.

The problem

The Atende Mais chain wanted to sell through a phone app without maintaining a second catalog. Prices, daily deals and stock already live in the store's ERP, and they change several times a day.

The app had to reflect that without running over the team, who sometimes adjust a product's name, photo or deal by hand. And payments had to handle a supermarket's daily reality: out-of-stock items, substitutions, quantities adjusted while picking.

The solution

Supermais is the chain's delivery app, for iOS and Android. Customers browse categories, deals and new arrivals, search for products, build recurring shopping lists, pick their address on a map and pay with a saved card, Google Pay or a coupon. The catalog can be browsed without signing in.

On the other side, the store runs everything from its own panel: the operator panel, with an order board and table, order details and printing, and a management panel. Every status change becomes a notification in the customer's app.

How it works

The catalog is updated from the store's ERP several times a day, and the edits the team makes by hand survive the next update. The app's stock already accounts for the day's online sales.

At checkout, the final amount is only charged when the order is ready, based on what was actually picked. If an item was missing, the customer pays only for what they get.

The app uses Expo with Expo Router and NativeWind, and its API access is generated from the backend documentation. It asks for an update when the installed version falls behind, and app and backend share the same types.

My role

I've worked on Supermais since 2024 and today I take care of the whole monorepo: the app, the store panel, the ERP integration, payments and the App Store and Google Play releases.

The home screen, with banners, categories and deals.
Product details, with the deal price and related products.
Recurring shopping lists.
Order, coupon and promotion notifications.
Saved delivery addresses.

Built with

  • React Native
  • Expo
  • TypeScript
  • NativeWind
  • React Query