Message Queue Topic Publication

Overview

This page explains how Newline publishes messages to MQ topics, including the naming conventions, structure, and how clients can interpret and subscribe to these topics.

What Is Topic Publication?

Topic publication refers to how Newline sends event messages to specific MQ topics. Each topic is a logical channel that groups related events (e.g., transfers, transactions). Clients subscribe to these topics to receive real-time updates.

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>: sandbox or production
  • <topic_name>: The entity or event category (e.g., transfer, transaction)

How Topics Are Published

  • Newline publishes messages to durable topics using Apache ActiveMQ.
  • Each topic contains one or more event types (e.g., created, status_change, transfer_queued, rtp_settlement).
  • Messages are published in JSON format and include:
    • event_type
    • details object
    • event_id (for idempotency)

Topic Publication Example

Topic: /topic/neal.abc-enterprises.sandbox.transfer\

Payload:

{
  "event_type": "created",
  "details": {
    "transfer_uid": "Zb12cd34ef56gh7X",
    "external_uid": "client-transfer-12345",
    "usd_transfer_amount": "321.00",
    "customer_uid": "ab12cd34ef56gh78"
  }
}

Transfer Queued Publication Example

Payload:

{
  "event_type": "transfer_queued",
  "details": {
    "transfer_uid": "fb12cd34ef563gq2",
    "external_uid": "client-transfer-12345",
    "usd_transfer_amount": "321.00",
    "status": "queued",
    "queued_until": "2026-08-13T06:18:31.332Z"
  }
}

Queue Lifecycle Diagram

flowchart TD
    A[Created] --> B[Queued]
    B --> C[Settled]
    B --> D[Failed]

Best Practices

  • Confirm topic names with your Newline Specialist during onboarding.
  • Use durable subscriptions to ensure message retention.
  • Implement idempotency using event_id.
📘

Important Queued_Until Note

When a transfer enters queue processing, the queued_until field indicates the expected time at which queue processing should complete.

Sandbox testing scenarios typically populate queued_until approximately three minutes after transfer initiation.

Related Pages


Did this page help you?