What this API does
The Payout Origination API is designed for one job: receiving a full message as an encoded payload and moving it into Meridian’s processing pipeline. Use this API when you need to:- send a complete payment payload without splitting it across API fields
- preserve the exact message bytes while using a simple text transport format
- list resulting transactions and read their latest processing status
- protect against duplicate submissions with an idempotency key
- receive an acknowledgement immediately instead of waiting for full processing to finish
Request flow
1
Base64-encode the message payload
Encode the complete source payload as a Base64 string.Send the encoded payload as the raw request body with
Content-Type: text/plain.2
Sign the request
Authenticate the request with Meridian HMAC headers:
X-Meridian-Api-KeyX-Meridian-TimestampX-Meridian-Signature
3
Add an idempotency key
Send
Idempotency-Key as a separate request header.Use a unique Idempotency-Key for each business submission so retries do not create duplicates.4
Submit the message
Send
POST /v1/payout-origination/{format}, where format identifies the message type.Meridian validates the headers, checks that the body is valid Base64, stores the encoded payload, and queues the message for asynchronous processing.5
Track processing status
A successful request returns
202 Accepted with a Meridian messageId, a transactionId, an initial RECEIVED status, and a receivedAt timestamp.Meridian then continues downstream processing after the API request completes.What a successful response means
202 Accepted means Meridian has safely accepted the encoded payload for processing. It does not mean the message has already been validated or completed.
Store the returned messageId and transactionId. Use them for later status tracking, reconciliation, and transaction lookup.
Example accepted response:
Endpoint summary
Supported format values
Submit an encoded message
List transactions
Get a transaction by ID
Error handling
Build your client to handle these common response classes:Integration guidance
- Treat the request body as an opaque Base64 string. Do not transform the message content before submission.
- Use the path slug that matches the decoded payload you are sending.
- Generate a fresh idempotency key for each new message and reuse it only when retrying the same submission.
- Keep your system clock accurate. Timestamp skew can cause authentication failures.
- Store the Meridian
messageId, returnedtransactionId, your own business reference, and the idempotency key together for audit and reconciliation. - Hash and sign the exact Base64 string you send on the wire.
- Use
GET /v1/transactionsto reconcile batches of transactions. - Use
GET /v1/transactions?messageId=...when you want to find the transaction created from a specific submission. - Use
GET /v1/transactions/{id}when you already know the Meridian internal transaction ID.
Next steps
- Review Supported formats for the message types Meridian accepts.
- Review Base64 payload encoding for practical guidance on building the request body.
- Review Authentication for request signing details.
- Use the API reference for the exact request and response schema.