Map complex data to sub-process in community version
Go to your "Call activity" (sub-process) task and in mapping tab (General -> Mapping) you can choose "Assign to Contract Input" or "Assign to Data". If you want to send complex variables try to use "Assign to Data" option".
Just some additional indication about solution mention above: you need to declare a FinanceRequest business variable both in the parent and child process definition. The business variable will not be duplicated. Meaning that all modification performed in the sub-process will be reflected on the parent process business variable as their is actually a single data entry.
I built a basic example to demonstrate that. You can check process overview form to see that we have actually one single data.
Thanks for the example it works for me.