Supabase + Transactional

Use Transactional as the email provider for Supabase Auth. Deliver beautiful, reliable authentication emails, including magic links, password resets, email confirmations, and invite emails, with full delivery tracking and custom branding.

Transactional
Sb

OVERVIEW

Use Transactional as the email provider for Supabase Auth. Deliver beautiful, reliable authentication emails, including magic links, password resets, email confirmations, and invite emails, with full delivery tracking and custom branding.

HOW IT WORKS

Integration Workflow

A step-by-step look at how data flows between your tools and Transactional.

1

Auth Event

A user signs up, requests a password reset, or receives an invite.

2

Supabase Triggers

Supabase Auth generates the email and routes it through Transactional.

3

Custom Template

Transactional renders the email with your branded template.

4

Reliable Delivery

The auth email is delivered quickly and reliably to the user inbox.

KEY FEATURES

What You Get

Everything you need to integrate Supabase with Transactional.

Auth Email Provider

Configure Transactional as a custom SMTP provider in Supabase. All auth emails route through your account.

Custom Templates

Replace default Supabase auth email templates with beautifully branded designs using Transactional templates.

Delivery Tracking

Track delivery, opens, and bounces for every auth email. Know if users are receiving their magic links.

High Deliverability

Ensure critical auth emails reach the inbox. Proper SPF, DKIM, and DMARC configuration out of the box.

QUICK START

Get Started in Minutes

Here is a code example showing how to connect Supabase with Transactional.

Supabase Integration
typescript
// Supabase Dashboard Configuration
// Settings > Auth > SMTP Settings

// SMTP Host: smtp.transactional.dev
// SMTP Port: 587
// SMTP User: txl_your_api_key
// SMTP Pass: txl_your_api_key
// Sender Email: auth@yourapp.com
// Sender Name: Your App

// Or configure via Supabase CLI (config.toml)
// [auth.email]
// enable_signup = true
// double_confirm_changes = true
// enable_confirmations = true
//
// [auth.email.smtp]
// host = "smtp.transactional.dev"
// port = 587
// user = "txl_your_api_key"
// pass = "txl_your_api_key"
// admin_email = "auth@yourapp.com"
// sender_name = "Your App"

// Alternative: Use Edge Functions for full API control
import { serve } from "https://deno.land/std/http/server.ts";

serve(async (req) => {
  const { email, token } = await req.json();

  const res = await fetch("https://api.transactional.dev/email", {
    method: "POST",
    headers: {
      Authorization: "Bearer txl_your_api_key",
      "Content-Type": "application/json",
    },
    body: JSON.stringify({
      from: "auth@yourapp.com",
      to: email,
      subject: "Confirm your email",
      tag: "supabase-auth",
      templateId: "tmpl_email_confirm",
      templateData: { token },
    }),
  });

  return new Response(JSON.stringify({ success: true }));
});

YOUR AGENTS DESERVE
REAL INFRASTRUCTURE.

START BUILDING AGENTS THAT DO REAL WORK.

Deploy Your First Agent