Inbound email for your platform
Give each of your customers an address on your domain. Every email arrives at your backend as signed JSON, and your code decides whose it is.
How platforms set it up
- 1
Add your domain
Or a subdomain such as in.yourapp.com, with its MX record pointed at us.
- 2
Point its catch-all at one webhook
Every address on the domain now delivers to your backend.
- 3
Give each customer an address
client-1042@, or one address with a tag per customer: invoices+client-1042@.
- 4
Route by recipient
Read message.recipient.email or .tag and file the email under that customer.
Setup details: domain setup and using subdomains.
Your backend decides whose email it is
We keep no customer records for you. Every email on the domain reaches your webhook with the address it was sent to, and your code maps that address to a customer. Your customer data stays in your system, and one domain serves as many customers as you have.
An accountancy platform, for example, gives client 1042 the address on the right. The client forwards bank statements there, and the platform files every attachment under client 1042.
Anyone can write to any address on a catch-all, so treat the recipient as untrusted input. Alias rules (Maker and above) accept only the pattern you hand out.
{
"message": {
"recipient": {
"email": "client-1042@docs.youraccounting.app",
"tag": null
},
"subject": "Bank statements March",
"attachments": [{
"filename": "statement-03.pdf",
"downloadUrl": "https://app.emailconnect.eu/attachments/…"
}]
}
}What you don't have to build
Mail servers
MX, TLS and MTA-STS, run and monitored in the EU.
Parsing
Text and HTML bodies, Markdown on Maker and above, links, and attachments inline or in EU storage.
Payload reference →Verification
Deliveries signed following Standard Webhooks, with one ID per email for deduplication.
Webhook signing →Provisioning
Create domains, addresses and webhooks from your code through the API, or let an agent do it over MCP.
API and MCP →When your customers' security team asks
- Email is processed and stored only in the EU, by EU companies
- A Data Processing Agreement comes with every plan
- You set retention, up to 365 days on Platform, or delete each email on arrival
- Data Residency Mode keeps message content out of our database
The Platform plan
| Custom domains | Unlimited |
| Aliases | 100; each domain's catch-all counts as one |
| Retention | Up to 365 days, or delete on arrival |
| Data Residency Mode | Included |
| Attachment storage | Our EU storage or your own S3 buckets |
| API | 10,000 requests per hour |
| Price | Set with you, based on volume |
Try the setup on Free first: one domain, its catch-all and 100 emails a month. Compare plans
Talk to us about Platform
Tell us what your customers send and how many there are, and we'll set the plan up with you.