Impex Converter
Convert between different Impex formats and structures
Convert Data
Converted Output
How to Use
- Paste your data in the input area
- Select target format and click Convert
- Configure conversion options
- Copy or download the converted result
Impex Converter
Convert between different Impex formats and structures
Features
- Bidirectional conversion between ImpEx and CSV, JSON, or XML — useful for migrating data between SAP Commerce and external systems
- Auto-detect mode sniffs the input format (ImpEx by header detection, CSV by delimiter analysis, JSON/XML by leading char) and runs the conversion in the opposite direction
- Smart attribute mapping: ImpEx [unique=true], [lang=en], [collection-delimiter=|] modifiers translate to appropriate JSON/XML representations and back
- Multi-type ImpEx support: documents with multiple INSERT_UPDATE blocks for different types become a JSON array-of-typed-records or XML with one element per type — typed faithfully
- Reference handling: ImpEx FK-style refs (User=Customer:CUST-001) translate to JSON object refs or XML elements with id attributes — preserves the import relationships
- Round-trip safety: convert ImpEx → JSON → ImpEx and verify the output matches the input (modulo whitespace) — useful for transformation pipeline confidence
- Error reporting names the row and field of malformed input plus specific suggestions (unbalanced quote, unknown header type, missing required attribute)
- Pure client-side: parsing and conversion run in your browser, no upload. Safe for ImpEx files with proprietary product catalogs or customer data
How to use
- Paste your ImpEx, CSV, JSON, or XML into the input pane.
- With Auto-detect on, the converter sniffs the format and converts to the opposite direction (ImpEx ⇄ structured).
- Adjust output options: target format (CSV/JSON/XML), pretty-print, header inclusion, attribute mapping style.
- Click Convert. The output appears with a summary of the conversion (row count, type count, errors).
- Inspect any error rows highlighted in the output panel — they're reported with row/column references.
- Copy or download the result.
Tips & Best Practices
- For migration projects, run ImpEx → JSON for validation/scripting, transform in JavaScript/Python, then JSON → ImpEx for re-import.
- Toggle preserve-types-as-sections when round-tripping to retain ImpEx's structural shape; flatten otherwise.
- For CSV-from-Excel inputs, verify the delimiter (comma vs semicolon) matches your locale before conversion.
- When converting JSON with arbitrary nested objects to ImpEx, choose a flat mapping style; deeply nested data doesn't map cleanly to ImpEx's tabular form.
- Round-trip test small samples first; large transformations are hard to verify by eye.
FAQ
How are ImpEx attribute modifiers mapped to JSON?
A header like name[lang=en] becomes a JSON property `name_en` (or a nested object {"name": {"en": ...}} based on the selected mapping style). [unique=true] modifiers translate to JSON Schema additionalProperties + required combinations; [collection-delimiter=|] to JSON arrays. Round-trip preserves these mappings.
Why does my multi-type ImpEx come out as a flat JSON?
Default mapping flattens types into a JSON array of objects with a "_type" discriminator field. Toggle "preserve types as separate sections" to get a JSON object with one key per type containing an array of records — closer to ImpEx's structure.
Does it handle ImpEx macros?
Yes. $contentCatalog, $catalogVersion, $lang macros are resolved in the conversion: the literal values replace the macro references in the output. The macro definitions themselves don't appear in JSON/CSV output; they're preserved in ImpEx output.
Can it convert CSV that's not ImpEx-shaped to ImpEx?
Only if you provide header type hints. Pure CSV without a type column can't become ImpEx because ImpEx requires a typed header (INSERT_UPDATE Product;..., INSERT_UPDATE User;...). Add a "_type" column to your CSV with the SAP type name, and the converter wraps each row in the appropriate INSERT_UPDATE block.
What happens to ImpEx comments during conversion?
# single-line comments in ImpEx become $.comments[] elements in JSON or <!-- comments --> in XML at the row level. Multi-line comment blocks stay attached to their following record. Re-converting back to ImpEx restores them in their original positions.
Are PK references preserved?
Yes. ImpEx FK refs like User=Customer:CUST-001 become JSON property values { "user": { "type": "Customer", "ref": "CUST-001" } } or XML <user type="Customer" ref="CUST-001"/>. Round-trip safe.
Why does my converted output have extra whitespace?
Pretty-print is on by default for human readability. Toggle it off for compact output (useful when embedding in scripts or APIs). Or use the minify option in the round-trip back to ImpEx.
Is anything sent to a server?
No. Both parsing and serialization run in your browser; no upload happens. Safe for ImpEx files with PII or proprietary catalog data.