Skip to content

How Modules Should Communicate in a Clean Architecture

What is a Domain Interface Contract?

A Domain Interface Contract is the structured agreement between two modules. It has three layers: service identity, transaction identity, and subject data. The caller gathers all required data before making the request, so the receiving module never needs to reach into another system.

What is the Everything Needed Payload Rule?

The Everything Needed Payload Rule says a module must receive all the data it needs in the request itself, not fetch it from other modules during processing. If Module A needs data from Module C to serve Module B's request, Module B must fetch that data from C and pass it to A. From A's perspective, Module C doesn't exist.

Join the waitlist

Get notified when new content drops