If I need to implement sending and receiving of business documents from system to system (invoices, POs, remittance advice, etc) what standard would you recommend for best interop and why? It could be XML or otherwise.
I would look at (in this order):
- Industry-specific formats. Always your best choice if you have a homogeneous trading group.
- cXML or XCBL if you want an XML solution with an established standard.
- X12 if you have unlimited time, money, and willing partners.
- custom XML only if you have requirements outside a standard or such a small amount of data to transmit that the standard would bloat your documents too much.
This, of course, all depends on the problem domain. I would think about these questions:
- Are you in an industry with specific format or regulatory requirements? For instance, are there details like the chemical composition of a gas that you're ordering? Are there hazardous materials that require special orders or handling?
- Does your industry have a specific format already or do you need a generic one? Chem/Gas, Retail, Big Oil, Airlines, Financial Services, and many others already have formats and sometimes networks established.
- Do you work with corporate purchasers who have procurement applications? If so, I'd take a look at cXML or XCBL which handles the PunchOut standard which enables purchasing systems to order from online catalogs.
- What is the sophistication of your partners? EDI is old and powerful, but really hard to understand. People new to the process are more comfortable with XML-based formats.
- What is your position in the market? Can you drive a standard for your partners or will they dictate a format to you? In which case, will you need to adopt several standards? Who will translate between them?