To define which user can perform steps in the process you can use Actors (association between task and organization) and Filters (a piece of code that run when a task is ready in order to produce a list of users that can do the task)
Modelization of the workflow can be done in Bonita Studio.
You can developed some custom connector in order to build the required XML or JSON at the end of the process
Bonitasoft empowers development teams with Bonita, the open-source and extensible platform to solve the most demanding process automation use cases. The Bonita platform accelerates delivery of complex applications with clear separation between capabilities for visual programming and for coding. Bonita integrates with existing solutions, orchestrates heterogeneous systems, and provides deep visibility into processes across the organization.