The Resend alternative for teams that pay in euros.
Outstamp is a transactional email API like Resend, with an isolated tenant for every project, prices in euros and invoices from Portugal.
- No card needed to test
- Prices in euros, excluding VAT
curl -X POST https://api.outstamp.dev/v1/emails \
-H "Authorization: Bearer $OUTSTAMP_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: welcome-42" \
-d '{
"from": "Acme <[email protected]>",
"to": "[email protected]",
"subject": "Welcome to Acme",
"html": "<p>Your account is ready.</p>"
}'const response = await fetch("https://api.outstamp.dev/v1/emails", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.OUTSTAMP_API_KEY}`,
"Content-Type": "application/json",
"Idempotency-Key": `welcome-${user.id}`
},
body: JSON.stringify({
from: "Acme <[email protected]>",
to: "[email protected]",
subject: "Welcome to Acme",
html: "<p>Your account is ready.</p>"
})
});
const email = await response.json(); // 202, { id, status: queued }import os, requests
response = requests.post(
"https://api.outstamp.dev/v1/emails",
headers={
"Authorization": f"Bearer {os.environ['OUTSTAMP_API_KEY']}",
"Idempotency-Key": f"welcome-{user.id}",
},
json={
"from": "Acme <[email protected]>",
"to": "[email protected]",
"subject": "Welcome to Acme",
"html": "<p>Your account is ready.</p>",
},
)
email = response.json() # 202, { id, status: queued }Why teams look at Outstamp.
A tenant per project
Each project sends from its own isolated tenant, so a side project's bounces cannot drag down your main app's reputation.
Euros, invoiced from Portugal
Plans are priced in euros, excluding VAT, and invoiced from Portugal with your VAT number.
Lower prices as you grow
At small volumes the two are close. At higher volumes the gap opens: compare the 500,000 column below.
A test mode for failure cases
Simulator addresses produce bounces, delays, complaints and lost responses on demand, with the same events and webhooks as live mail.
Prices side by side.
Both from their public pricing pages. Outstamp in euros excluding VAT, Resend in US dollars as published.
| Provider | 10,000/month | 50,000/month | 100,000/month | 500,000/month |
|---|---|---|---|---|
| Outstamp | €9Starter | €25Growth | €39Pro | €179Scale |
| Resend | US$20Pro | US$20Pro | US$35Pro | US$350Scale |
Sources: resend.com/pricing. "Not shown" means the pricing page does not state a price for that volume in its text.
When Resend may suit you better.
We would rather you choose well than switch twice.
- You want official SDKs in many languages. Outstamp is plain REST with an OpenAPI schema today.
- You need SMTP. Outstamp has no SMTP relay yet.
- You also send marketing broadcasts. Outstamp is for transactional email only.
Moving from Resend in three steps.
- 1
Create a project and a test key
Send to the simulator from your staging environment while nothing else changes.
- 2
Verify a sending subdomain
Add the DKIM records, plus MAIL FROM and DMARC, on a subdomain such as
send.yourcompany.com. - 3
Switch the call
Point your send function at
POST /v1/emailswith a live key, and check the migration guide for the differences.
Questions about switching.
Is Outstamp a drop-in replacement for Resend?
No. The request is similar (from, to, subject, html), but the endpoint, headers and responses are Outstamp's own. Most teams change one function.
Can I keep sending from the same domain?
Yes, but use a dedicated subdomain for Outstamp so each provider's DKIM and reputation stay separate during the move.
Can I bring my suppression list?
Yes, with POST /v1/suppressions/batch, so addresses that bounced before stay blocked.
Try Outstamp beside Resend, in test mode.
No card and no DNS changes until you decide.
- No card needed to test
- Prices in euros, excluding VAT