Envía correos transaccionales desde tu app. Gestiona identidades de remitente y rastrea entregas desde Admin > Email de tu app.
Cualquier app de Proyecta puede enviar correo transaccional. Verifica una identidad de remitente y luego envía desde el código de tu app — sin necesidad de una cuenta separada con un proveedor de correo.
La sección de Email
Sección titulada «La sección de Email»Abre Admin > Email en el builder — o /admin en tu sitio publicado. Tiene dos partes:
| Parte | Para qué sirve |
|---|---|
| Identities | Agrega y verifica direcciones de correo o dominios como remitente |
| Sent | Consulta los correos enviados con su estado de entrega (enviado, entregado, rebotado, etc.) |
Puedes agregar una nueva identidad de remitente y revisar el historial de entregas — todo sin escribir código.
La configuración en dos pasos
Sección titulada «La configuración en dos pasos»- Crea y verifica una identidad de remitente (una dirección de correo o un dominio) en tu panel de administración
- Envía — desde tu app con
useSendEmail(), o desde el panel de administración para campañas
Envía desde una dirección compartida (@proyectamail.com)
Sección titulada «Envía desde una dirección compartida (@proyectamail.com)»La opción más sencilla es reclamar una dirección en el dominio de envío compartido de Proyecta, @proyectamail.com. Se verifica en el instante en que la creas — la plataforma ya es dueña de ese dominio, por lo que no necesitas configurar ningún registro DNS.
Esto se hace en la sección Emails del panel de administración de tu app: ingresa la dirección que quieres y estará lista de inmediato.
Las direcciones individuales solo funcionan con @proyectamail.com. Si solicitas una en otro dominio (p. ej., hello@myapp.com), la solicitud será rechazada — para enviar desde tu propio dominio, debes verificar el dominio completo (ver más abajo). Cada dirección compartida se reserva de forma global, por lo que ninguna otra app puede enviar con el mismo remitente de @proyectamail.com.
Verifica tu propio dominio (Pro)
Sección titulada «Verifica tu propio dominio (Pro)»Para enviar desde tu propio dominio — desde cualquier dirección en él (hello@, support@, noreply@, etc.) — verifica el dominio completo. A diferencia de una dirección compartida de @proyectamail.com, un dominio personalizado no se verifica de manera instantánea.
Agrega el dominio en la misma sección Emails. Se registrará con el proveedor de correo y te mostrará los registros SPF, DKIM y DMARC que debes publicar en tu DNS. El remitente permanece en estado pending hasta que esos registros se propaguen y el proveedor los confirme; luego cambia a verified — usa el botón de re-verificación después de publicarlos.
La verificación de dominios por DNS está completamente implementada — los registros los genera el proveedor y cada re-verificación consulta su estado nuevamente.
Bajo el capó: Proyecta autentica tu dominio de envío con su proveedor de identidad de correo (Resend) y entrega tus mensajes a través de su proveedor transaccional (SendGrid). Nunca necesitas administrar una cuenta con ninguno de los dos.
Envía un correo desde tu app
Sección titulada «Envía un correo desde tu app»Desde las páginas de tu app puedes enviar con el hook useSendEmail(). Eliges un template y pasas variables; la plataforma renderiza el mensaje en el idioma de la app y lo envía:
import { useSendEmail } from '@/hooks/useEmail.ts';
function ConfirmButton({ booking }) { const { send, isPending, error } = useSendEmail();
return ( <button disabled={isPending} onClick={() => send({ template: 'booking_confirmation', variables: { date: booking.date, service: booking.service }, }) } > Email me the details </button> );}Nota lo que no debes pasar: un destinatario, un asunto o HTML. Cada template declara su propia audiencia:
self(confirmaciones de reservas/pedidos, bienvenida) → la dirección del usuario que tiene sesión iniciada, tomada de su sesión.owner(owner_alert) → los administradores de tu app.
Ambos requieren una sesión activa. Esto es intencional, no una limitación: la clave pública que autentica la llamada está incluida en el código fuente de tu página, por lo que permitir envíos a destinatarios arbitrarios haría que cualquiera pudiera usar tu app como relay de spam. Para notificarte desde un visitante anónimo, usa un formulario — los envíos de formularios ya le envían un correo al dueño y confirman al remitente de forma automática, y esa ruta no puede falsificarse desde el navegador.
Los errores llegan como PlatformApiError: 401 (se requiere sesión), 403 (template no habilitado para esta app), 429 (límite de tasa alcanzado — muestra el mensaje y ofrece reintentar), 422 (no hay dirección registrada).
Rastrea las entregas
Sección titulada «Rastrea las entregas»La pestaña Sent en tu panel de administración lista todo lo que tu app ha enviado con su último evento de entrega — entregado, abierto, con clic, rebotado, con queja — por lo que normalmente no necesitas código para esto.
Cada entrada muestra su estado — sent, delivered, opened, clicked, bounced o complained — y puedes abrir cualquier mensaje para leer el HTML exacto y el texto que se envió. Si las entregas están fallando, este es el primer lugar donde debes buscar.
Deja que la IA lo configure
Sección titulada «Deja que la IA lo configure»No necesitas escribir esto a mano:
"Verify hello@myapp.com as a sending identity.""Email the customer a confirmation after they finish booking.""After a successful checkout, send the customer their receipt.""Show me the last 20 emails we've sent and whether they bounced."
Consideraciones
Sección titulada «Consideraciones»- La dirección
fromdebe ser una identidad verificada. Enviar con una dirección no verificada devuelve un error. - Se aplican límites mensuales según tu plan de Proyecta.
Próximamente
Sección titulada «Próximamente»- Editor de templates — diseña templates transaccionales de forma visual en el builder
- Endpoint de envío masivo/por lotes para envíos a gran escala