Resend Email Integration
Purpose
Kvary uses a provider-safe outbound email seam so transactional and system emails do not call Resend directly from business logic.
Resolving locale, route permissions, and workspace projection.
Current scope: Guest
Category: 10_normative | Version: v1.0.0
Owner: DOCUMENT_CUSTODIAN | Review cycle: 90 days
Approval authority: GOVERNANCE_ADMIN
Documentation portal is read-only. Editing and mutation endpoints are disabled.
Kvary platform is originally created in Georgian. Where a Georgian version exists, Georgian is authoritative for platform UI, documentation, and legal interpretation.
Translations into other languages are provided for convenience. Some records may originate in other languages and carry their own source or legal locale for a specific flow, but where a Georgian version is available, the Georgian version prevails for platform-level wording and interpretation.
Metadata incomplete: Document ID, Version, Status, Owner Role, Last Review Date, Next Review Date, Change Log
Kvary uses a provider-safe outbound email seam so transactional and system emails do not call Resend directly from business logic.
@kvary/mail-layerservices/svc-auth/src/email/sender.tsapps/web/src/server/communication/infrastructure/adapters/emailAdapter.tsapps/web/src/app/api/communication/test/route.tsRESEND_API_KEYRESEND_FROM_EMAILRESEND_FROM_NAME optionalRESEND_REPLY_TO optionalRESEND_BASE_URL optional, defaults to https://api.resend.comWeb communication stack also accepts:
EMAIL_MODE=DRY_RUN|LIVEEMAIL_PROVIDER=AUTO|RESEND|SENDMAILpayment.failedauction.starts.soonsubscription.welcomesubscription.confirm_emailsystem.admin_alertpackages/core/communication/templates.tspackages/core/communication/policies.ts if neededGET /api/communication/test returns emailDiagnostics for admin/dev checksPOST /api/communication/test with action=send_test_email sends a real test email through the communication layerDry-run:
EMAIL_MODE=DRY_RUN npm --prefix apps/web run dev
Live:
EMAIL_MODE=LIVE \
EMAIL_PROVIDER=RESEND \
RESEND_API_KEY=... \
RESEND_FROM_EMAIL=notifications@kvary.network \
npm --prefix apps/web run dev
For auth:
RESEND_API_KEY=... \
RESEND_FROM_EMAIL=notifications@kvary.network \
npm --prefix services/svc-auth run dev
AUTO|RESEND|SENDMAIL