Internal system & ERP

ERP integrating in-store sales and Moai Semijoias e-commerce

ERP connected to Nuvemshop to synchronize online and in-store sales, keep store inventory reliable, and organize customers, orders and internal management.

Context

Moai Semijoias already used Nuvemshop as its online store and catalog source. A relevant share of sales, however, happened in person, outside the website and without a dedicated system to record orders and monitor operations.

Problem

An item sold in person could remain available on Nuvemshop, creating the risk of selling an out-of-stock product online. The operation also lacked a central workflow for sales, customers, payments and operational information.

What I delivered

  • Built a custom web ERP with FastAPI, Vue and PostgreSQL
  • Synchronized products and inventory with Nuvemshop, which remains the online catalog source of truth
  • Imported online orders into the ERP with sales-channel identification
  • Implemented in-store sales with immediate inventory updates in Nuvemshop
  • Added manager confirmation before returning canceled items to inventory
  • Structured modules for customers, products, categories, variants, sales, income statements, commissions and catalog auditing
  • Built a dashboard for sales, cash flow, payables, receivables, collections and inventory
  • Created a Telegram automation connected to the ERP API to speed up product registration
  • Published the application with Docker, Nginx, GitHub and Coolify

Outcomes

  • In-store sales now immediately update Nuvemshop inventory, reducing the risk of online stock inconsistencies.
  • Online sales enter the ERP with channel identification, keeping commercial history in one environment.
  • The sales process now brings products, customers, payments and channels into one workflow.
  • Cancellations now require an explicit manager decision about returning products to inventory.
  • Product registration gained both a manual ERP flow and a Telegram automation.