If the data already arrives by email, there is no reason to download the attachment and re-upload it by hand. Every email source gets its own dedicated address: send a mail to it, with the file attached or the data in the body, and WeTransform picks it up and runs the transformation. No integration, no credentials, no scheduled job.
⚙️ How to set it up
When configuring a source, choose Email as the location. A dedicated address is generated immediately, for example
[email protected]Send a first mail to that address with your file attached. The page updates as soon as it arrives
Tell WeTransform what to read in the mail (see below). That choice is remembered for every later mail
💡 You can add a readable suffix after a dash: [email protected] reaches exactly the same source. Only the six characters in front matter for routing, so use the suffix to recognize the address in your filters.
📖 What WeTransform reads in the mail
The body of the mail — for senders who paste CSV or plain text straight into the message
The first attachment — the common case. It survives senders who change their filenames every day, like
export-2026-08-01.csvA named attachment — when mails carry several files (a PDF invoice alongside the CSV) and only one is the data
🔁 Turn it into an integration
Create a rule in your own mail client, Gmail filter, Outlook rule, Apple Mail rule, that automatically forwards the messages you care about to the generated address, for example "from [email protected] with an attachment". From then on: the supplier mails you, your client forwards, the transformation runs, and the result is delivered by your exporters. Nobody touches anything.
You can also hand the address directly to whoever produces the file. Treat it like an inbox address: fine to share with a partner, not worth publishing on a website, since anyone who has it can feed the source.
🚫 What gets ignored
A mail to an address that does not exist is dropped, without a bounce, so double-check the address if nothing arrives
A mail with no body and no attachment is recorded as ignored
An automated mail sent before you have chosen what to read: send one mail interactively first, then automation works
🕘 Every mail received is kept with its status, processed, ignored or failed, for 90 days. The address stays valid as long as its source exists.
🏭 Example — the Monday price list
A supplier mails a price list every Monday morning. The operator creates an email source named [email protected], sets "the first attachment" as the content, and adds a Gmail filter forwarding the supplier's mails to it. On Monday at 8:05 the mail arrives, the transformation runs, and the transformed file is already pushed to the ERP by the API push exporter before anyone opens their inbox.
👉 What to do next