InvoiceFlow InvoiceFlow is a backend-focused invoice and payment management system built with ASP.NET Core Web API.
The project demonstrates clean backend architecture, separation of concerns, and modern .NET development practices. It follows Clean Architecture principles and uses CQRS with MediatR.
Features
- Create and manage invoices
- Handle invoice payments
- Payment webhook processing
- Idempotency handling
- Outbox pattern
- RESTful API
Architecture
InvoiceFlow.Api – API layer InvoiceFlow.Application – Application logic (CQRS, validation) InvoiceFlow.Domain – Core domain entities InvoiceFlow.Infrastructure – Persistence and integrations InvoiceFlow.Tests – Tests
Technologies
- ASP.NET Core Web API (.NET 8)
- Entity Framework Core
- MediatR
- FluentValidation
- SQL Server
Getting Started
dotnet restore dotnet build dotnet run --project src/InvoiceFlow.Api
Purpose
This project is intended for portfolio and backend architecture demonstration purposes.