Payment Events Stream
Payment Events Stream emits one event per completed payment on the payments.transaction.completed topic. Events are keyed by account identifier so that all activity for an account lands on the same partition and ordering is preserved per account. Consumers should be idempotent: at-least-once delivery means an event may be redelivered after a consumer group rebalance.
- Service type
- Apache Kafka stream
Topics
payments.transaction.completed
Payment Events Stream AsyncAPI 2.6.0 · v1.0.0
Kafka event stream publishing one event per completed payment. Intended for consumers that need near real-time transaction events rather than polling a REST endpoint.
-
uatkafka-uat-1.digitalapi.ai:9092 kafka
payments.transaction.completed
One message per completed payment. Keyed by accountId so all activity for an account lands on the same partition and per-account ordering holds.
- subscribe
-
Receive completed payment events.
PaymentCompleted
message
PaymentCompleted
application/json
| Field | Type | Required | Description |
|---|---|---|---|
eventId |
string (uuid) |
yes | Unique event id. Use for idempotent processing. |
accountId |
string |
yes | Account the payment settled against. Partition key. |
amount |
number |
yes | Settled amount, positive. |
currency |
string |
yes | ISO 4217 currency code. |
occurredAt |
string (date-time) |
yes | When the payment completed, UTC. |
Sample payload
Example message — placeholder values
{
"eventId": "00000000-0000-0000-0000-000000000000",
"accountId": "string",
"amount": 0,
"currency": "string",
"occurredAt": "2026-01-01T00:00:00Z"
}
Inline message schema
{
"type": "object",
"properties": {
"eventId": { "type": "string", "format": "uuid" },
"accountId": { "type": "string" },
"amount": { "type": "number" },
"currency": { "type": "string", "minLength": 3, "maxLength": 3 },
"occurredAt": { "type": "string", "format": "date-time" }
},
"required": ["eventId", "accountId", "amount", "currency", "occurredAt"]
}
Sample payload
Example message — placeholder values
{
"eventId": "00000000-0000-0000-0000-000000000000",
"accountId": "string",
"amount": 0,
"currency": "string",
"occurredAt": "2026-01-01T00:00:00Z"
}
- Brokers
kafka-uat-1.digitalapi.ai:9092