Identity by listener
Channels, internal systems, callbacks and operators each come in through their own door with their own trust rules.
Integration gateway · Go + PostgreSQL
PGateway receives calls from channels, validates and maps them, forwards them to partner systems and keeps a tamper-evident record of every exchange. It forwards — it never makes business decisions.
# every call passes the same stages, in order POST /v1/x/{routeId} ✓ identity channel certificate (mTLS) ✓ contract JSON Schema, values never echoed ✓ claim idempotency key written first ✓ forward retry · breaker · bulkhead ✓ journal masked, archived with object lock ← 200 X-Message-Id: …
What it does
Built for integrations where a lost, duplicated or silently altered message is not acceptable.
Channels, internal systems, callbacks and operators each come in through their own door with their own trust rules.
Every route has a data contract checked with JSON Schema, plus a mapper that converts between formats and keeps money amounts exact.
A repeated key never runs twice: the first answer is replayed, and the same key with a different body is refused.
Safe retries, circuit breakers and per-target isolation so one slow partner does not stall the rest.
Asynchronous routes and webhooks are queued in PostgreSQL; partner callbacks are verified before they are accepted.
An append-only audit trail and a journal of every exchange, with sensitive fields masked and long-term archive.
How it works
Stages run in a fixed order, and the record of the call is written before the call goes out.
The channel is identified from its certificate (or a token on listeners that allow it).
The body is checked against the route's contract and mapped to the partner's format.
The idempotency claim and the in-flight record are written in one transaction, before anything is sent.
The call goes out with retry, breaker and bulkhead; the verdict is classified, not guessed.
The exchange is journaled with sensitive fields masked and archived on object-lock storage.
FAQ
No. It authenticates, validates, maps, forwards and records. Business rules stay in the systems it connects.
One Go process, PostgreSQL as the only data store, and MinIO with object lock for the archive.
The circuit breaker opens, calls fail fast, and asynchronous work waits in the outbox until the partner is back.
PGateway is deployed per customer. Get in touch and we will walk through your integration.
Tell us which systems you connect and what you must be able to prove afterwards.
Get in touch