Sizo,
Send them up separately to the backend, not as one transaction. Tie an update step to each button press for start, pause and complete. Do not do any transaction merging. Start by blanking out the collection in a different transaction that contains your new collection property. Do not use an update step here. Set the initial value to Auto-initialize and Apply this. That will clear the collection. Then run your code that writes the objects to the new collection. Lastly, have a transaction with a backend step for sending the data up. The property in the transaction should point to the parent object and contain the collection property. This will send up the current data each time a button is pressed. It doesn't matter that the data keeps getting overwritten in the object, because the transaction will send up a current snap-shot of the collection from the moment each button is pressed.
Jason Latko - Senior Product Developer at SAP