Fixed
Contract emails: one failed copy no longer blocks the other
Platform
Contract cancellation, pause, resume, expiry, skip, and payment-failure notifications each have a merchant copy and a customer copy. Previously, if one copy failed to send, the other copy was never attempted either.
Both copies are now attempted independently: each one sends, is skipped, or fails on its own, and a failure in one no longer stops the other from going out. If either copy does fail, the event itself still fails as it did before, so the failure is still visible and nothing is silently swallowed.
This fix applies to the six contract email types listed above only; other Subi emails, including dunning and recovery emails, were not affected by this issue.