# Lesson 18 of Procure-to-Pay: Enterprise Blazor with Clean Architecture

**URL:** <https://forum.radzen.com/t/lesson-18-of-procure-to-pay-enterprise-blazor-with-clean-architecture/21738>\
**Category:** Radzen.Blazor Components\
**Created:** [October 9, 2026, 4:36pm UTC](https://forum.radzen.com/t/lesson-18-of-procure-to-pay-enterprise-blazor-with-clean-architecture/21738 "2026-10-09T16:36:15Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Benjamin\_Fadina](https://forum.radzen.com/user_avatar/forum.radzen.com/benjamin_fadina/32/3784_2.png) [@Benjamin\_Fadina](https://forum.radzen.com/u/Benjamin_Fadina)\
**Post date:** [October 9, 2026, 4:36pm UTC](https://forum.radzen.com/t/lesson-18-of-procure-to-pay-enterprise-blazor-with-clean-architecture/21738/1 "2026-10-09T16:36:16Z")

</div>

[![](https://img.youtube.com/vi/NYVM8vLYp94/maxresdefault.jpg "Blazor P2P #18 — The Vendor Aggregate: Value Objects and the internal Modifier") ](https://www.youtube.com/watch?v=NYVM8vLYp94)

Lesson 18 of Procure-to-Pay: Enterprise Blazor with Clean Architecture.

Covers §5.2 — The Domain Layer.

Chapters  
0:00 The Simplest Aggregate, Which Is Why We Start Here  
0:37 The Status Enum  
1:18 Address Is a Value Object  
1:57 BankAccount Is an Entity Inside the Boundary  
2:32 The internal Modifiers Are Load-Bearing  
3:07 This Is How an Aggregate Boundary Becomes Real

Built with Visual Studio 2026, .NET 10, C# 14, Blazor Web App (Auto),  
EF Core 10, SQL Server and Radzen Blazor Components.

Get the book — "Procure-to-Pay" by Benjamin Fadina:  
[Procure-to-Pay : Building an Enterprise Blazor Application with Clean Architecture, CQRS, Entity Framework Core and Radzen Blazor Components](https://benjaminsqlsever.gumroad.com/l/febnda)

Source code:  
[GitHub - benjaminsqlserver/P2P · GitHub](https://github.com/benjaminsqlserver/P2P)

More .NET and Blazor tutorials: [https://www.youtube.com/@benjaminfadina3338](https://www.youtube.com/@benjaminfadina3338)
