In the parlance of system architecture, an interface is a point of contact between interacting system elements and other subsystems or environment at the system boundaries. Interfaces can also be seen as contracts definitions between elements that are interacting with one another.
Interfaces between interacting system elements are known as internal interfaces while interfaces with other subsystems or environment at the system boundaries are considered as external interfaces.
This post documents the types of interfaces that we will typically find in product and process architectures. Note that the types are not mutually exclusive; an interface can be in the form of different types.