Skip to content

Email — Resend

Services & Costs — full vendor overview with pricing

Overview

The portal sends transactional email through Resend. Implementation: backend/src/services/email/.

ItemValue
ProviderResend
Env keyRESEND_API_KEY
Set onmqa-backend (Render secret)
Primary senderMQA Group <governance@mqa.group>
Internal senderMQA Governance Portal <system@mqa.group>
Support / reply-tosupport@mqa.group

Fallback: Microsoft Graph (MICROSOFT_SENDER_EMAIL) can be used server-side if configured — see ENV-INVENTORY.


Pricing (August 2026)

PlanMonthly emailsDaily limitPrice
Free3,000100/day$0
Pro50,000$20/mo
ScaleCustomContact sales

Rate limit: 2 requests/second on free tier — the app batches onboarding emails with delays to respect this.

Monitor volume in the Resend dashboard.


What Resend is used for

Template / flowTrigger
Auditor invitationExternal audit access
User registrationNew portal account
Password resetAuth recovery
Approval request / decisionWorkflow notifications
Audit assignment, findingsGovernance events
Compliance deadlineReminders
Policy updateChange notifications

If RESEND_API_KEY is missing, email is disabled (API continues; errors logged only).


Domain setup

  1. Add domain mqa.group in Resend → Domains
  2. Add DNS records (SPF, DKIM) — typically on Cloudflare or Hostinger
  3. Verify domain status Verified
  4. Use verified domain in EMAIL_FROM / default senders

Production senders already configured:

  • governance@mqa.group — external stakeholder communication
  • system@mqa.group — internal system notifications
  • support@mqa.group — support / reply-to

Configuration

env
RESEND_API_KEY=re_...          # Required for email
EMAIL_FROM=MQA Group <governance@mqa.group>   # Optional override
EMAIL_REPLY_TO=support@mqa.group
FRONTEND_URL=https://portal.mqa.group

See backend/.env.example and ENV-INVENTORY.


Operations

TaskWhere
Check delivery / bouncesResend dashboard → Emails
Rotate API keyResend → API Keys → update Render env → redeploy backend
Test without sendingResend test keys (re_test_...)
Webhook (delivered)EMAIL_WEBHOOK_SECRET + /api/email-tracking/delivered

Security: Never commit RESEND_API_KEY. Rotate if exposed.


Staging

Use a separate Resend API key or test mode on staging. Do not point staging at production sender volumes without rate-limit awareness.


  • Services & Costs — budget overview
  • ENV-INVENTORY — all email-related env vars
  • MONITORING — alert if email delivery fails repeatedly
  • Backend reference: backend/src/services/email/README.md (developer detail)