Integrations
Connect Postal to what you already use.
Link your CRM, your app's login and billing, your website and your AI assistant. Those who code get API, SMTP and SDKs; those who don't connect from the dashboard.
Catalog
Everything Postal connects to today
Choose a category. Cards with an arrow lead to the step-by-step guide in the documentation.
HubSpot
HubSpot contacts and deals come into Postal, and what happens with your emails goes back as a note on each person's timeline.
Pipedrive
People, deals and pipeline stages, with email activity logged in Pipedrive.
RD Station CRM
Contacts and deals from RD Station CRM, with pipeline stages becoming contact properties.
Another CRM, by webhook
For any CRM or system that sends and receives webhooks: you show an example of what it sends, map the fields and follow each sync.
Stripe
Customers, subscriptions, invoices and checkout become contacts and events: payment approved, failed charge, trial ended, cancellation.
See in the documentationLoginSupabase
Supabase Auth users become contacts, and your app's login emails go out through Postal.
See in the documentationLoginClerk
Clerk users and waitlist: sign-up, update, deletion and, if you want, every login.
See in the documentationLoginAuth0
Sign-ups, logins and deletions from Auth0 become contacts and events, and Auth0's emails can go out through Postal.
See in the documentationLoginFirebase Auth
Two functions in your Firebase project notify Postal of each user created or deleted.
See in the documentationLoginBetter Auth
Better Auth's email verification, password reset and magic link sent through Postal.
See in the documentationLoginAuth.js (NextAuth)
Auth.js email login (magic link) sent through the Postal API.
See in the documentationSitesWordPress
With the WP Mail SMTP plugin, your site's emails, like those from WooCommerce and forms, go out through Postal.
See in the documentationAPIREST API
Send emails, maintain contacts and trigger events over HTTP and JSON. The resources and formats are Resend's.
See in the documentationSDKSDK for Node.js
The postal-so package, for Node 18 or newer, with types, typed errors, idempotency key and automatic retry.
See in the documentationSDKSDK for PHP and Laravel
The postal-so/postal-php package, with the postal transport for Laravel's Mail::to().
See in the documentationSMTPSMTP
For any system that speaks SMTP: the server is smtp.postal.so and the password is an API key.
See in the documentationCompatibleResend SDKs
Already using the Resend SDK? Point the base URL to Postal and use your Postal key.
See in the documentationTerminalpostal CLI
Send emails and events, update contacts and check domains from the terminal, with JSON output for scripts and AI agents.
See in the documentationExamples by language
Guides with ready-to-use code, already filled in with your domain, for Node.js, Next.js, Python, PHP, Laravel, Ruby, Go and cURL.
AI assistants (MCP)
Claude, ChatGPT, Gemini, Cursor, VS Code and Claude Code use Postal through the MCP server, with 34 tools for emails, contacts, campaigns and metrics.
Webhooks
Receive deliveries, opens, clicks, bounces and replies in your system, in real time and signed.
See in the documentationTriggerYour product's events
Send an event, like a paid order or an abandoned cart, and Postal starts the automation that has that trigger.
See in the documentationStepWebhook inside the automation
An automation step can call a URL of yours, midway between two emails.
See in the documentationFeatured
How the main connections work
Three examples of what happens after you connect.
Your CRM and Postal, in sync
Choose the direction: from the CRM to Postal, from Postal to the CRM, or both. Contacts and pipeline stages arrive in Postal. Opens, clicks and replies go back as notes on the person's timeline.
- Credentials are stored encrypted
- “Sync now” brings everything in whenever you want, in the background
- Postal does not move deals in your CRM
Sign-up and payment become a contact and an automation
Connect Stripe, Supabase, Clerk, Auth0 or Firebase Auth. Each sign-up becomes a contact, and each payment, cancellation or login is recorded and can start an automation.
- You paste a URL and a secret into the other service
- Your app's login emails can also go out through Postal
Use Postal from your AI assistant
You sign in with your Postal account, choose the team and can revoke access whenever you want. Each tool follows the same rules as the API: plan limits, suppression list and sending pause.
- Claude, ChatGPT, Gemini, Cursor, VS Code and Claude Code
- Sign in with your Postal account or an API key
claude mcp add --transport http postal https://api.postal.so/mcp \
--header "Authorization: Bearer ps_sua_chave"Questions about integrations
Do I need to code to use the integrations?
For most, no. You create the connection in the dashboard and paste a URL and a secret into the other service. The exception is Firebase Auth, which uses two functions you publish in your project. To send from your own system, use the API, SMTP or an SDK.
Does Postal connect to my CRM?
There is a ready-made connection with HubSpot, Pipedrive and RD Station CRM: you paste the CRM's token into Postal and test the connection. Any other CRM that sends and receives webhooks comes in through the “Another CRM” connection. CRM and app connections count toward your plan's limit.
Can I send from WordPress, a store or an ERP?
You can send from any system that speaks SMTP: the server is smtp.postal.so and the password is an API key. On WordPress, the WP Mail SMTP plugin bridges the gap. See the SMTP guide.
How do I connect Postal to Claude or ChatGPT?
In the assistant, add a connector with the URL https://api.postal.so/mcp and sign in with your Postal account. Each connection accesses a single team, and access can be revoked in the dashboard. The MCP server depends on the plan.
The integration I need is missing. Now what?
The API is HTTP with JSON, and webhooks notify you of each event, so any tool that speaks HTTP can connect. If something is still missing, talk to us through the contact form.