For in-house: Use Python with xml.etree + jinja2 + zpl library (on PyPI) to start.
Imagine you fetch an order from Shopify's XML API (REST/JSON converted to XML). It contains:
Your converter maps:
Within 200ms, you have a complete ZPL label ready for a Zebra GK420d. No manual typing, no PDF rendering, no print spooler crashes.
If you don't want to write parsers from scratch, leverage these:
| Language | Library | Purpose |
| :--- | :--- | :--- |
| Python | labelary | Renders ZPL to PNG for preview |
| Python | xmltodict | Converts XML to easier Python dicts |
| Node.js | zpl-image | Generate ZPL from JSON templates |
| Go | go-zpl | Native ZPL command builder |
| C# / .NET | Zebra.Sdk | Official SDK for device management |