FIrst, you should definitely use MultiChain streams for this, where the appropriate companies have the ability to write to the stream that collects the data.
Then you have two choices – either use MultiChain 1.0.x which is a production-quality release, and choose your own way in the application to convert the structured data into a binary format for storing in stream items. Or use MultiChain 2.0 alpha, which allows JSON data to be stored directly inside stream items.