Know where your data goes
Application processing in Johannesburg. Sending in Cape Town. A clear account of what stays here and what happens at delivery.
Coming soon • Transactional email for business
OTPs, password resets, receipts and alerts for South African businesses and the developers who build for them. Recipient data stored and processed here. Mail sent from Cape Town.
Your confirmation email is sent by Thumela, from South Africa.
Meet Thumi. A little lookout for the messages that matter.
Already sending for our own South African products.
Encrypted recipient addressesLocal processingTransactional by designWhy Thumela
A sign-in code. An order confirmation. A password reset. Small messages carry a lot of responsibility.
Application processing in Johannesburg. Sending in Cape Town. A clear account of what stays here and what happens at delivery.
A small REST API and a Node.js client. Bring the HTML or plain text you already use, and keep your integration understandable.
From domain verification to bounce suppression, understand the controls behind each message — and the limits of the service today.
Everyday messages • Real purpose
For the emails people expect because they’ve done something with your business.
Help customers access their accounts, with recipient details processed locally.
Send the link that gets someone back into their account, without adding tracking.
Close the loop on a purchase with the confirmation your customer is waiting for.
Keep people informed about bookings, account activity and changes that affect them.
For the people building it
Send a message, get its status, and carry on building your product. No tracking pixels. No rewritten links.
Explore the productcurl https://api.thumela.co.za/emails \
-H "Authorization: Bearer $THUMELA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"from": "orders@example.test",
"to": ["customer@example.test"],
"subject": "A little peace of mind",
"text": "Your order is confirmed.",
"idempotencyKey": "order-1042-confirmed"
}'import { Thumela } from '@thumela/node';
const thumela = new Thumela(process.env.THUMELA_API_KEY);
const { id } = await thumela.emails.send({
from: 'orders@example.test',
to: ['customer@example.test'],
subject: 'A little peace of mind',
text: 'Your order is confirmed.',
idempotencyKey: 'order-1042-confirmed',
});import { render } from '@react-email/render';
import { Thumela } from '@thumela/node';
import { OrderConfirmation } from './emails/order';
const thumela = new Thumela(process.env.THUMELA_API_KEY);
const html = await render(<OrderConfirmation />);
await thumela.emails.send({
from: 'orders@example.test',
to: ['customer@example.test'],
subject: 'Your order is confirmed',
html,
});API preview · Public access is coming. Examples require a verified sending domain.
Data residency • Stated plainly
Recipient information we process is stored and processed in South Africa. Delivering email means handing it to someone else’s mail provider.
Where we are
Thumela already sends email for our own South African products. We’re building towards opening it to yours.
REST sending, verified domains, bounce and complaint suppression, and private-network SMTP.
Public access, with the setup and documentation you need to get started.
Analytics and hosted templates. Planned, with no release date promised.
A little digging now. A good foundation for what comes next.
Be here when we open
Leave your email. Confirm it in your inbox. We’ll let you know when Thumela opens.