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.
Flat File writer
Section titled “Flat File writer”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:
| Format | Behavior |
|---|---|
| CSV | The 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. |
| XML | The 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. |
Filename pattern
Section titled “Filename pattern”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.
Generic API writer
Section titled “Generic API writer”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 mode | Description |
|---|---|
| None | No authentication header is added. |
| API Key | Adds a custom header with the API key value. The header name is configurable (for example, X-Api-Key). |
| Bearer | Adds an Authorization: Bearer <token> header. |
| Basic | Adds an Authorization: Basic <base64> header using the configured username and password. |
HTTP method
Section titled “HTTP method”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::.
Content type
Section titled “Content type”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.
Choosing between formats
Section titled “Choosing between formats”| Need | Recommended writer |
|---|---|
| Deliver records to a downstream system that reads CSV files | Flat File — CSV |
| Deliver records to a system that reads XML | Flat File — XML |
| Push records in real time to an HTTP endpoint | Generic API |
| The target is one of the dedicated connectors (EZY Portal, SAP B1, Shopify) | Not applicable — use the dedicated connector |
Related
Section titled “Related”- Value Transformers — How field values are shaped before reaching the output writer.
- Mapping Configuration — How the transformation block’s target paths become file columns or JSON keys.
- Flat File Connector — Connection profile fields and setup steps for the Flat File connector.
- Generic API Connector — Connection profile fields and setup steps for the Generic API connector.