Software architecture
A software stack is a map of responsibilities.
Do not begin with a list of apps. Begin by deciding which system is responsible for each recurring business record and workflow.
1. Demand and customer acquisition
This layer can include a website, storefront, lead capture, email marketing, advertising tools, CRM, proposals, or follow-up. Not every business needs all of them. The job is simply to make interest visible and move it toward a purchase or commitment.
2. Transactions, booking, or commitments
Something must own what the customer has actually agreed to. For ecommerce that is the order. For appointments it is the booking. For project work it may be an accepted proposal or signed agreement. Choose one authoritative commitment state.
3. Work, fulfillment, or delivery
This is where the thing the customer bought gets produced: projects, cases, jobs, tasks, fulfillment, routes, production steps, or digital delivery. The right system depends heavily on the business model.
4. Customer record and support
Choose one system that owns the authoritative customer history. Other tools can reference or sync it, but do not let every app become its own half-updated contact database.
5. Products, inventory, or capacity
Product businesses may need stock, purchasing, variants, and fulfillment. Appointment and service businesses often manage a different form of inventory: time, rooms, equipment, or people. Only add a dedicated system when this constraint is real.
6. Billing and payments
Checkout, deposits, invoices, subscriptions, card payments, refunds, and reminders can span multiple tools. Decide which system owns what is owed and which system records what was actually paid.
7. Bookkeeping and finance
Operational software tells you what happened in the business. Accounting software tells you what happened financially. They can be separate, but financial events should reach the books without manual reconstruction.
8. Team and people operations
This layer grows with shared work: access, assignments, handoffs, communication, time, payroll, onboarding, and accountability. A solo business may need almost none of it. A small team can suddenly need a lot.
9. Automation and reporting
Automation is glue, not architecture. Reporting is visibility, not a source of truth. Add these after the underlying process is stable enough that automating it will remove work rather than accelerate confusion.