Skip to content

Output Writers

An output writer is the component that delivers a transformed payload to a target system that does not have a structured API integration. EZY Integrations includes two output writers: one that writes records to files on disk and one that sends payloads to any HTTP endpoint. Both are configured through their respective connector’s connection profile, not in the mapping configuration.

Output writers are used exclusively by the Flat File connector and the Generic API connector. All other connectors (EZY Portal, SAP Business One, Shopify, WooCommerce, Wix) have their own dedicated write logic and do not use output writers.

The Flat File writer receives the transformed payload for each record and appends it to a file on the integration server’s file system. A new file is created at the start of each run; subsequent records within the same run are appended to the same file.

Two formats are supported:

FormatBehavior
CSVThe first record written to a new file produces a header row using the target field names from the mapping config transformation block. Each subsequent record produces a data row in the same column order. Fields are quoted when they contain commas or line breaks. The writer is thread-safe: concurrent runs writing to the same path are serialized to prevent data corruption.
XMLThe first record written to a new file creates a root <items> element containing a single <item> child element. Each subsequent record appends another <item> element. Nested target paths in the mapping config (for example, address.city) produce nested XML elements. The writer is thread-safe for concurrent runs.

The connection profile for the Flat File connector includes an optional filename pattern field. You can use the {correlationId} token in the pattern to include a unique run identifier in the filename, for example: items-{correlationId}. This is strongly recommended when multiple job runs may execute concurrently — without a unique filename, two runs writing to the same path will interleave their records in the same file.

If you do not include {correlationId} in the filename pattern, the UI displays a warning in the connection profile form.

The Generic API writer sends the transformed payload as an HTTP request body to the endpoint configured in the connection profile. One HTTP request is sent per record.

The supported authentication modes are:

Auth modeDescription
NoneNo authentication header is added.
API KeyAdds a custom header with the API key value. The header name is configurable (for example, X-Api-Key).
BearerAdds an Authorization: Bearer <token> header.
BasicAdds an Authorization: Basic <base64> header using the configured username and password.

The target URL in the connection profile can include a method prefix to specify the HTTP verb: for example, POST::https://api.example.com/items. If no prefix is provided, the default method is POST. Common prefixes are POST::, PUT::, and PATCH::.

The connection profile includes a content type field that sets the Content-Type request header. The default is application/json. The payload body is the JSON produced by the transformation block of the mapping config — it is sent as-is.

NeedRecommended writer
Deliver records to a downstream system that reads CSV filesFlat File — CSV
Deliver records to a system that reads XMLFlat File — XML
Push records in real time to an HTTP endpointGeneric API
The target is one of the dedicated connectors (EZY Portal, SAP B1, Shopify)Not applicable — use the dedicated connector