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.
Used in production operations
Real application screens
Application excerpts from the system built to support day-to-day operations.



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.