AcelleMail collapse nhiều hình dạng bounce theo từng vendor về một enum semantic nhỏ. File app/SendingServers/Webhooks/BounceType.php định nghĩa đúng hai case dẫn dắt quyết định blacklist:
enum BounceType: string
{
case HARD = 'hard';
case SOFT = 'soft';
}Chuỗi raw từ vendor (Amazon SNS gửi Permanent / Transient / Undetermined; Mailgun, SparkPost, SendGrid mỗi bên có taxonomy riêng) được giữ riêng dưới dạng BounceReceived::$bounceTypeRaw phục vụ audit. Model BounceLog sau đó mirror với ba hằng số — HARD, SOFT, UNKNOWN — gắn với cột legacy.