Web/native application is always in control. The approach is a Consumer driven orchestration.
An important design decision is made for communication with hardware peripherals and back-end services (APIs), in order for the consuming application to be able to 'orchestrate' the entire business flow - from an end-user perspective.
This approach benefits integration, responsibility, scalability, performance, extendability, loosely coupling. The following image denotes the concept:
a user is interacting with an web/native application