Is softbounce still broken in Mautic? Goes straight to DNC?

Hi,
The Sparkpost plugin supposed to track this already if you set it up properly on the Sparkpost webhook side.

Yes, I already enabled soft bounce events on the SparkPost webhook side, and I can see them coming through.

While checking the SparkPost plugin code in Mautic, I found this:

$type = $messageEvent[‘type’] ?? null;
$bounceClass = $messageEvent[‘bounce_class’] ?? null;

if (‘bounce’ === $type && !in_array((int) $bounceClass, [10, 30, 50, 51, 52, 53, 54, 90])) {
// Only parse hard bounces
// https://support.sparkpost.com/customer/portal/articles/1929896-bounce-classification-codes
continue;
}

From what I understand, this means soft bounces are skipped (because those codes map to SparkPost’s soft bounce classes), and only hard bounces are being processed in Mautic.

My question is: what’s the best way to also mark soft bounces inside Mautic?

  • Should we extend the EmailStat entity to add a soft_bounce column?

  • Or is there a recommended way to store them separately without breaking the current reporting logic?

Basically, SparkPost is already sending the soft bounce info, and Mautic is receiving it in the callback — but the plugin code skips it. I’d like to properly track and report both hard and soft bounces.