How results come back
Viesti hands each recipient to its outbound mail server in a separate SMTP transaction, with a signed envelope sender (Return-Path) of its own: b+…@bounce.viesti.email, or b+…@viesti.yourdomain.com once you publish the Return-Path record. The outbound server delivers to the recipient's mail server and retries temporary failures itself. Results reach Viesti in two ways:
- At handoff, as the outbound server's SMTP reply.
- Later, as a delivery status notification (DSN, RFC 3464) or a feedback report (ARF, RFC 5965) sent to that address. The signature ties a report to one message and recipient, and reports that do not match are refused.
Bounces never go to the address your application gave as MAIL FROM or from.
Hard bounces
A hard bounce is a permanent failure: a reply or status code starting with 5.
- Reported by the recipient's server (a DSN with
Action: failedand a5.x.xstatus): the recipient changes fromrelayedtobouncedand the address is suppressed with the reasonbounce. Last response shows the status and the receiver's diagnostic. A rejection by the recipient's server comes back this way, after the outbound server has accepted the message. - Refused by policy (a DSN with a
5.7.xstatus, the security and policy class): a block on Viesti's sending IP, a failed sender authentication check or a content filter. The recipient is markedbouncedfor this message only. The refusal says nothing about the address, so it is not suppressed. - Address refused at handoff (a 5xx reply to
RCPT TO): the recipient is markedbouncedand the address is suppressed with the reasonbounce. - Content refused at handoff (a 5xx reply after
DATA): the recipient is markedbouncedfor this message only. The address is not suppressed.
Soft bounces and delays
A temporary failure, a 4xx reply or a server that cannot be reached, never suppresses an address, and only permanent failures are recorded as bounces.
- At the recipient's server. The outbound server retries for up to 3 days. If a message is still undelivered after 4 hours, it sends a DSN with
Action: delayed, which adds a Delayed entry to the timeline without changing the recipient's status. - At handoff. If the outbound server cannot take the message, because it is unreachable, answers 4xx, or the pool is at capacity, the recipient stays pending and Viesti retries with a delay that starts at 30 seconds and doubles to at most 64 minutes. An unreachable server or a 4xx reply adds "Delivery deferred; retrying" to the timeline. Recipients still pending 72 hours after submission, or after release for a message held for review, are marked
failedwithdelivery retry window exhausted.
Complaints
When a recipient reports a message as spam and their mailbox provider sends an ARF feedback report of type abuse that carries Viesti's Return-Path, the recipient is marked complained and the address is suppressed with the reason complaint. The timeline reads "… reported it as spam".
Where to see them
In Activity, the Problems tab lists messages that are quarantined, bounced, complained, failed or rejected. Open a message for the Recipients table, with each recipient's status, attempts and last response, and the Delivery timeline:
| Timeline entry | Meaning |
|---|---|
| Delivered to … | Viesti's outbound mail server accepted the message for that recipient (recipient status relayed). This does not confirm that the recipient's server accepted it. |
| Delivery deferred; retrying | A temporary failure; the reply is shown beside it. |
| Delayed for … | A delayed DSN arrived. |
| Bounced for … | A permanent failure, or a recipient suppressed after its message was accepted. |
| … reported it as spam | A complaint. |
| Delivery failed | The retry window ran out, or the sending domain was released or expired. |
A message's status sums up its recipients: delivered if at least one recipient was delivered, bounced or complained only if none was. For a message with several recipients, check the Recipients table. The Overview page shows the bounce rate and complaint rate for the last 24 hours, highlighted from 2% bounces or 0.1% complaints and in red from 5% or 0.3%.
Viesti has no bounce webhooks and no API for suppressions; bounces, complaints and suppressions are in the dashboard.
Suppressions
The suppression list belongs to your workspace. Addresses are matched without regard to case. An address gets on the list in three ways: a hard bounce to RCPT TO or in a DSN (bounce), a complaint (complaint), or you adding it on the Suppressions page under Suppress an address, with an email address and a reason, for example when someone asks you to stop emailing them.
Mail to a suppressed address is refused at submission:
- SMTP:
550 5.0.0 recipient suppressedfor thatRCPT TO; the other recipients are still accepted. - API:
422{"error":"recipient suppressed"}, and nothing is sent to any recipient in the request.
A recipient suppressed after its message was accepted is skipped when the message is relayed, and shows as bounced with recipient is suppressed.
Removing a suppression
Press Remove next to the address and give a reason. The address can receive mail again, and the removal is logged on the Removed tab with the original reason and yours; the record is kept for abuse handling. Remove a suppression only when you know the address works again, for example because the recipient confirmed it. If it hard-bounces again, it is suppressed again.
Reputation
Each new bounce or complaint suppression lowers your workspace's sending reputation, a complaint twice as much as a bounce. A workspace whose reputation falls too low is suspended and cannot send: SMTP logins fail with 535 and the API answers 403. To keep both rates low:
- Confirm addresses when people sign up, so typos never reach your mailing code.
- When an address bounces or complains, mark it in your own database and stop sending to it.
- Send only mail the recipient expects because of something they did, as the terms require.