Orchestration, where a central orchestrator tells each service what to do next
The best fit is "Orchestration, where a central orchestrator tells each service what to do next". The orchestrator holds the saga's state and flow in one place. So you can see each saga's progress there, and you change the flow in one component.
"Choreography, where each service listens for the previous service's events" works well for a few steps. But it spreads the flow across many event handlers. This makes long sagas hard to follow and hard to change.
Read more