Progetti Crescita · Infrastruttura

Infrastruttura email B2B propria

Il mio sistema di invio di email commerciali su AWS, per promuovere e vendere i miei servizi e le mie aziende.

Ruolo
Creatore
Anno
2026
Strumenti
Python · Flask · SQLite · AWS SES · AWS SNS · DNS (SPF · DKIM · DMARC)
Stato
Funzionante · uso proprio
DemoSimulazione del percorso di una campagna

Come usarla

Simula una campagna di 1.002 contatti: gli indirizzi non validi cadono nella validazione, il resto aspetta nella coda giornaliera ed esce tramite SES. Sposta il tetto giornaliero per vedere quanti giorni servono per completarla. I freni sono quelli del sistema reale; i tassi di rifiuto e di rimbalzo sono illustrativi.

Mailchimp si fa pagare per contatto e per mese. Amazon chiede 0,10 $ ogni 1.000 email. Ho costruito il mio sistema di invio sopra Amazon, con tutto il necessario perché le email arrivino nella posta in arrivo.

0,10 $
Costo dell’invio di 1.000 email con AWS SES
50.000
Invii al giorno consentiti dall’account (14 al secondo)
4
Record di autenticazione del dominio configurati e verificati
17
Test automatici prima di ogni modifica
§ 01

Che cos’è

L’ho costruito per promuovere e vendere i miei servizi e le mie aziende. È un’applicazione web in Flask che fa quello che fa Mailchimp per le campagne commerciali (liste, modelli e sequenze di follow-up) e invia tramite Amazon SES, il servizio email di AWS, con un account in produzione che consente 50.000 email al giorno.

Componente Che cosa fa
validate.py Scarta gli indirizzi prima di sprecare un invio: sintassi, record MX del dominio e domini usa e getta
ses.py Invia tramite SES con una versione HTML e una in testo semplice
Pianificatore Divide ogni campagna in lotti giornalieri e programma i follow-up
SNS AWS segnala ogni rimbalzo e reclamo; l’indirizzo passa a una lista di soppressione
marcar_respondido.py Toglie dalla sequenza chi risponde, per non insistere
17 test Controllano saluto, testo semplice e modelli prima di ogni modifica
§ 02

Invio sicuro per progettazione

  1. Disattivato di default. Se non lo si attiva di proposito, non parte nulla.
  2. Tetto giornaliero di 400, molto al di sotto di quanto consentito, perché il dominio si costruisca una reputazione in modo graduale.
  3. Una campagna alla volta.
  4. L’arretrato scade dopo 6 ore. Se il computer è rimasto spento, la coda non si svuota tutta insieme alla riaccensione.
§ 03

Arrivare nella posta in arrivo

Inviare è facile; che l’email arrivi nella casella principale è la parte difficile. Ci ho lavorato su due fronti:

  • Autenticazione del dominio. SPF con Amazon autorizzato, firma DKIM, una policy DMARC e un dominio di rimbalzo proprio allineato con il mittente. Tutti e quattro verificati via DNS e nella console di AWS.
  • Test di contenuto controllati. Con account Gmail senza storico ho confrontato versioni della stessa email cambiando una sola cosa alla volta: il testo, i link, il piè di pagina, l’intestazione di disiscrizione, l’impaginazione. Così ho trovato il formato che arriva nella casella principale: testo semplice, scritto come un’email da persona a persona, con la disiscrizione spiegata nel corpo stesso, conforme alla legge spagnola sul commercio elettronico (LSSICE).
§ 04

Che cosa mi porto via

Un canale commerciale proprio, per pochi centesimi, e un metodo per migliorare la consegna: cambiare una variabile alla volta e misurare.