-
SurveyJS
Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
If I was in your position, I'd get A, B, C, and D to send TSV (or DIF, SYLK) -- UTF-8, no BOM! -- to you, then I'd write code to put it into a conformant XLSX file, then submit that. That puts you in a good business position by tightly controlling what gets sent. I hope you weren't trying to keep metadata from A, B, C, and D from going to Z, who might choose to solicit them directly for a business relationship.
Based on some of the weirdness in the XML, it looks like Vendor A might be using Node-Excel-Export to do their conversion and my problem isn't the only instance I can find of half-working XLSX files resulting from it.