MQ Behavior in Sandbox & Production
Newline’s Message Queue (MQ) provides a pull‑based, durable messaging system for delivering real‑time event notifications in both Sandbox and Production environments.
The Sandbox MQ environment mirrors Production architecture and protocols, but event timing and data realism may differ during testing.
How MQ Delivery Works
The following describes MQ delivery mechanics that apply in both Sandbox and Production.
MQ is pull‑based, not push‑based.
- Clients connect to the MQ broker and consume messages from subscribed topics.
- Messages are delivered using durable subscriptions, meaning:
- Messages are retained if the client disconnects.
- Clients can resume consumption without losing events.
MQ is built on Apache ActiveMQ and AWS MQ.
Note: MQ behavior applies consistently across Sandbox and Production. Sandbox differences relate to data generation, not delivery mechanics.
Polling & Consumption Expectations (Sandbox)
The following expectations apply when testing IN SANDBOX and describe how events may be generated during testing. They should not be interpreted as Production timing or delivery guarantees.
In Sandbox, clients should expect:
Non‑Immediate Delivery
Events may not appear immediately after an action is performed.
Variable Timing
Some events are generated synchronously, while others are published asynchronously.
Empty Polls
Polling a topic may return no messages if no qualifying events have occurred.
MQ does not guarantee real‑time delivery.
Sandbox timing should not be used to infer Production sequencing or SLAs.
Best practice: Design consumers to tolerate delays, retries, and intermittent empty reads in all environments.
Note: If a consumer restarts or a message is re‑delivered,
event_idshould be used to prevent duplicate handling.
Sandbox vs Production MQ Endpoints
MQ endpoints are environment‑specific.
Clients must connect to the endpoint that matches the environment they are testing against.
Sandbox and Production use separate brokers and credentials.
Connections to Sandbox do not interact with or reflect Production traffic or behavior.
Sandbox Endpoints
- AMQP:
amqp+ssl://mq-sandbox.newline53.com:5671 - STOMP:
stomp+ssl://mq-sandbox.newline53.com:61614 - MQTT:
mqtt+ssl://mq-sandbox.newline53.com:8883 - WSS:
wss://mq-sandbox.newline53.com:61619
Connection Requirements
All connections must:
- Use SSL/TLS
- Authenticate using credentials provided during onboarding
- Include required protocol‑specific headers
(for example,client-idandsubscriptionNamefor STOMP)
Sandbox credentials are not valid for Production endpoints.
Topics & Event Types in Sandbox
The following information applies when consuming MQ events IN SANDBOX.
Sandbox publishes events using the same topic categories and schemas as Production, but the presence, timing, and frequency of events may differ and should not be treated as Production‑representative.
Topic Naming Convention
MQ Topics follow a standardized format:
/topic/<client>.<environment>.<topic_name>
Example
/topic/neal.abc-enterprises.sandbox.transfer
<client>: Your organization or integration name<environment>:sandboxorproduction<topic_name>: The entity or event category (e.g.,transfer,transaction)
Event Payloads
Event payloads are delivered in JSON format and include:
event_typedetailsobject- Unique
event_id
Sandbox Event Realism & Limitations
While schema and topic structure match Production:
- Events may be synthetic or generated specifically to exercise workflows.
- Certain real‑world dependencies (such as bank posting or settlement timing) may not be fully represented.
- Event order and timing observed in Sandbox may differ from Production and should not be relied on.
Note: Sandbox MQ should be used to validate integration correctness, not business timing assumptions.
FAQs
“I triggered an action but don’t see an event yet.”
MQ delivery may be asynchronous. Retry polling and confirm your subscription is active.
“I received the same message twice.”
Use event_id to deduplicate. Durable subscriptions may re‑deliver messages after reconnects.
“No messages are coming through.”
Confirm the following:
- Correct Sandbox endpoint
- Correct topic name
- Durable subscription configuration
- Authentication headers
Best Practices for Sandbox MQ Testing
- Always test using durable subscriptions
- Implement retry logic and idempotency
- Validate behavior across disconnect and reconnect scenarios
- Test in Sandbox before enabling MQ in Production
Updated 2 days ago
