Real Messaging Engine

Delivery, Analytics & Deliverability

Bounce processing, complaint handling, suppression lists, retry logic, and reporting — all inside Salesforce.

Delivery analytics

Every normalized event lands on Delivery_Status__c and rolls up to Message__c. Standard reports and dashboards ship with the package:

MetricDefinition
Delivery rateDelivered ÷ Accepted
Hard bounce ratePermanent failures ÷ Accepted (keep under 2%)
Soft bounce rateTransient failures ÷ Accepted
Complaint rateSpam reports ÷ Delivered (keep under 0.1%)
Open / click rateEmail only, subject to privacy proxies
Reply rateInbound replies ÷ Delivered
Time to deliveryp50 / p95 accepted → delivered

Bounce processing

TypeExamplesRME action
HardInvalid mailbox, domain not foundSuppress address permanently, flag Contact field
SoftMailbox full, greylisted, throttledRetry per policy, suppress after repeated failures
BlockReputation or content blockAlert admins, open provider circuit breaker if widespread

Complaint handling

Feedback-loop complaints suppress the address immediately and set consent to opted-out for the message category. Complaints are never silently discarded: each writes an audit record with the originating message, template, and campaign context.

Suppression lists

ScopeSource
GlobalHard bounces, complaints, manual admin entries
ChannelPer-channel opt-outs (SMS STOP, email unsubscribe)
CategoryMarketing suppressed while transactional continues
TemporaryTime-boxed suppression after repeated soft bounces
RME_Suppression.add('customer@example.com', 'EMAIL', 'GLOBAL', 'Hard bounce');
Boolean blocked = RME_Suppression.isSuppressed('customer@example.com', 'EMAIL', 'MARKETING');

Suppression is enforced before every send. There is no configuration that allows business logic to bypass it.

Retry logic

retryPolicy:
  strategy: exponential
  baseDelaySeconds: 60
  multiplier: 4
  maxAttempts: 5
  maxAge: 24h
  jitter: true
  retryOn: [soft_bounce, 429, 5xx, timeout]
  neverRetryOn: [hard_bounce, complaint, suppressed, invalid_payload]

Attempts are visible on Delivery_Attempt__c. Messages that exhaust the policy move to Status__c = Failed and publish a failure Platform Event so an owning team can be notified.

Warm-up

New IPs and domains require a ramp. RME enforces a configurable warm-up schedule and holds volume above the daily ceiling rather than burning reputation.

Continue to Salesforce Integration.

Was this helpful?

Last updated 1 month ago