> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mnai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get a payout transaction

> Returns a transaction with its latest processing status by Meridian transaction ID.

Authentication uses Meridian HMAC headers:
  - X-Meridian-Api-Key
  - X-Meridian-Timestamp
  - X-Meridian-Signature




## OpenAPI

````yaml /products/payout-origination/api-reference/payout-origination.json get /v1/transactions/{id}
openapi: 3.1.0
info:
  title: Meridian Payout Origination API
  version: 1.0.0
  summary: Originate payout requests and track the resulting transactions
  description: >
    These endpoints accept a Base64-encoded payout message payload and allow you
    to list resulting transactions or retrieve a transaction by Meridian ID.
    Request authentication is performed using Meridian HMAC headers. The server
    validates the HMAC headers, stores the encoded payload, and queues the
    message for downstream processing.
servers:
  - url: https://api.meridian.example.com
security: []
tags:
  - name: Payouts
    description: Payout origination and transaction tracking
paths:
  /v1/transactions/{id}:
    get:
      tags:
        - Transactions
      summary: Get a payout transaction
      description: >
        Returns a transaction with its latest processing status by Meridian
        transaction ID.


        Authentication uses Meridian HMAC headers:
          - X-Meridian-Api-Key
          - X-Meridian-Timestamp
          - X-Meridian-Signature
      operationId: getPayoutTransaction
      parameters:
        - $ref: '#/components/parameters/TransactionId'
        - $ref: '#/components/parameters/XMeridianProgramId'
        - $ref: '#/components/parameters/XMeridianApiKey'
        - $ref: '#/components/parameters/XMeridianTimestamp'
        - $ref: '#/components/parameters/XMeridianSignature'
      responses:
        '200':
          description: Transaction retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionDetailResponse'
              examples:
                transaction:
                  value:
                    transaction:
                      id: txn_01JVY8Y4N9X2M6S5Q7T1
                      messageId: msg_01JVY8Y4N9X2M6S5Q7T1
                      source:
                        type: external_submission
                        externalSubmission:
                          id: sub_01JVY8Y4N9X2M6S5Q7T1
                          displayName: Customer message submission
                      type: transfer
                      createdAt: '2026-04-07T20:11:42Z'
                      updatedAt: '2026-04-07T20:12:05Z'
                      status: PENDING
                      statusReason: null
                      externalId: e2e-20260407-000123
                      relatedTransactionId: null
                      amounts:
                        debit:
                          amount: '125000.00'
                          currency: USD
                        credit:
                          amount: '124975.00'
                          currency: USD
                        fees:
                          - type: NETWORK_FEE
                            label: Network fee
                            amount: '25.00'
                            currency: USD
                        exchangeRate: '1.0000'
                      debitInstrument:
                        type: ORIGINATOR
                        originator:
                          displayName: Northwind Imports LLC
                          accountNumber: '****9021'
                      creditInstrument:
                        type: BENEFICIARY_ACCOUNT
                        beneficiaryAccount:
                          id: bfa_01JVY8Y4N9X2M6S5Q7T1
                          displayName: Contoso Treasury USD Account
                          currency: USD
        '400':
          description: Malformed request or invalid transaction ID format
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MeridianError'
        '401':
          description: HMAC authentication failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MeridianError'
        '403':
          description: >-
            Caller is authenticated but not authorized to retrieve this
            transaction
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MeridianError'
        '404':
          description: Transaction not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MeridianError'
              examples:
                notFound:
                  value:
                    validationErrors:
                      - type: NotFound
                        fieldRef: id
                        message: No transaction was found for the supplied id
                    errorCode: NOT_FOUND
                    message: Requested transaction was not found
      security:
        - MeridianHmacAuth: []
components:
  parameters:
    TransactionId:
      name: id
      in: path
      required: true
      description: Meridian internal transaction identifier
      schema:
        type: string
        minLength: 8
        maxLength: 128
      example: txn_01JVY8Y4N9X2M6S5Q7T1
    XMeridianProgramId:
      name: X-Meridian-Program-Id
      in: header
      required: true
      description: >-
        Identifies your Meridian program. Required on all requests but not
        included in the canonical signing string.
      schema:
        type: string
        minLength: 8
        maxLength: 128
      example: prog_01JVY8P4Q9F2M6S5Q7T1
    XMeridianApiKey:
      name: X-Meridian-Api-Key
      in: header
      required: true
      description: Public client key identifier used to look up the HMAC secret
      schema:
        type: string
        minLength: 8
        maxLength: 128
      example: mk_live_partner_001
    XMeridianTimestamp:
      name: X-Meridian-Timestamp
      in: header
      required: true
      description: >
        RFC 3339 UTC timestamp used in the HMAC signing string and replay
        protection. Requests outside the accepted clock skew window should be
        rejected.
      schema:
        type: string
        format: date-time
      example: '2026-04-07T20:11:40Z'
    XMeridianSignature:
      name: X-Meridian-Signature
      in: header
      required: true
      description: >
        HMAC-SHA256 signature of the canonical signing string. Recommended
        format: sha256={hex_digest}
      schema:
        type: string
        pattern: ^sha256=[A-Fa-f0-9]{64}$
      example: sha256=3a0c1d8d3f5b9f76d44d0f5c65295f9e7d97e1f6782e4c9ac7b4a123456789ab
  schemas:
    TransactionDetailResponse:
      type: object
      additionalProperties: false
      required:
        - transaction
      properties:
        transaction:
          $ref: '#/components/schemas/TransactionDetail'
    MeridianError:
      type: object
      required:
        - validationErrors
        - message
      properties:
        validationErrors:
          type: array
          description: >
            An array of validation errors that occurred during request
            processing. This may be empty if there are no field-level validation
            errors.
          items:
            $ref: '#/components/schemas/ValidationError'
        errorCode:
          type:
            - string
            - 'null'
          description: Optional machine-readable error code
          example: INVALID_REQUEST
        message:
          type: string
          description: Human-readable error message
          example: Request validation failed
    TransactionDetail:
      type: object
      additionalProperties: false
      required:
        - id
        - messageId
        - source
        - type
        - status
        - statusReason
        - externalId
        - relatedTransactionId
        - amounts
        - debitInstrument
        - creditInstrument
      properties:
        id:
          type: string
        messageId:
          type: string
        source:
          $ref: '#/components/schemas/TransactionSource'
        type:
          type: string
          enum:
            - deposit
            - withdrawal
            - transfer
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
        status:
          $ref: '#/components/schemas/TransactionStatus'
        statusReason:
          type:
            - string
            - 'null'
        externalId:
          type:
            - string
            - 'null'
        relatedTransactionId:
          type:
            - string
            - 'null'
        amounts:
          $ref: '#/components/schemas/TransactionAmounts'
        debitInstrument:
          $ref: '#/components/schemas/TransactionDebit'
        creditInstrument:
          $ref: '#/components/schemas/TransactionCredit'
    ValidationError:
      oneOf:
        - $ref: '#/components/schemas/ValidationErrorInvalidFormat'
        - $ref: '#/components/schemas/ValidationErrorInvalidValue'
        - $ref: '#/components/schemas/ValidationErrorMissingValue'
        - $ref: '#/components/schemas/ValidationErrorUnprocessableValue'
        - $ref: '#/components/schemas/ValidationErrorUnexpectedVerificationError'
        - $ref: '#/components/schemas/ValidationErrorMissingRequestBody'
        - $ref: '#/components/schemas/ValidationErrorMissingPathParameter'
        - $ref: '#/components/schemas/ValidationErrorMissingQueryParameter'
        - $ref: '#/components/schemas/ValidationErrorNotFound'
      discriminator:
        propertyName: type
        mapping:
          InvalidFormat:
            $ref: '#/components/schemas/ValidationErrorInvalidFormat'
          InvalidValue:
            $ref: '#/components/schemas/ValidationErrorInvalidValue'
          MissingValue:
            $ref: '#/components/schemas/ValidationErrorMissingValue'
          UnprocessableValue:
            $ref: '#/components/schemas/ValidationErrorUnprocessableValue'
          UnexpectedVerificationError:
            $ref: '#/components/schemas/ValidationErrorUnexpectedVerificationError'
          MissingRequestBody:
            $ref: '#/components/schemas/ValidationErrorMissingRequestBody'
          MissingPathParameter:
            $ref: '#/components/schemas/ValidationErrorMissingPathParameter'
          MissingQueryParameter:
            $ref: '#/components/schemas/ValidationErrorMissingQueryParameter'
          NotFound:
            $ref: '#/components/schemas/ValidationErrorNotFound'
    TransactionSource:
      type: object
      additionalProperties: false
      required:
        - type
      properties:
        type:
          type: string
          enum:
            - external_submission
            - system_initiation
        externalSubmission:
          $ref: '#/components/schemas/TransactionEntityReference'
      allOf:
        - if:
            properties:
              type:
                const: external_submission
          then:
            required:
              - externalSubmission
        - if:
            properties:
              type:
                const: system_initiation
          then:
            not:
              required:
                - externalSubmission
    TransactionStatus:
      type: string
      enum:
        - PENDING
        - ACTION_REQUIRED
        - COMPLETED
        - FAILED
    TransactionAmounts:
      type: object
      additionalProperties: false
      required:
        - debit
        - credit
        - fees
        - exchangeRate
      properties:
        debit:
          $ref: '#/components/schemas/TransactionDisplayAmount'
        credit:
          $ref: '#/components/schemas/TransactionDisplayAmount'
        fees:
          type: array
          items:
            $ref: '#/components/schemas/TransactionFee'
        exchangeRate:
          type: string
    TransactionDebit:
      oneOf:
        - $ref: '#/components/schemas/TransactionOriginatorDebitLeg'
        - $ref: '#/components/schemas/TransactionBalanceDebitLeg'
      discriminator:
        propertyName: type
        mapping:
          ORIGINATOR:
            $ref: '#/components/schemas/TransactionOriginatorDebitLeg'
          BALANCE:
            $ref: '#/components/schemas/TransactionBalanceDebitLeg'
    TransactionCredit:
      oneOf:
        - $ref: '#/components/schemas/TransactionBalanceCreditLeg'
        - $ref: '#/components/schemas/TransactionBeneficiaryAccountCreditLeg'
      discriminator:
        propertyName: type
        mapping:
          BALANCE:
            $ref: '#/components/schemas/TransactionBalanceCreditLeg'
          BENEFICIARY_ACCOUNT:
            $ref: '#/components/schemas/TransactionBeneficiaryAccountCreditLeg'
    ValidationErrorInvalidFormat:
      allOf:
        - $ref: '#/components/schemas/ValidationErrorBase'
        - type: object
          properties:
            type:
              type: string
              const: InvalidFormat
            fieldRef:
              type: string
            message:
              type: string
              example: Invalid format
    ValidationErrorInvalidValue:
      allOf:
        - $ref: '#/components/schemas/ValidationErrorBase'
        - type: object
          properties:
            type:
              type: string
              const: InvalidValue
            fieldRef:
              type: string
            message:
              type: string
              example: Invalid value
    ValidationErrorMissingValue:
      allOf:
        - $ref: '#/components/schemas/ValidationErrorBase'
        - type: object
          properties:
            type:
              type: string
              const: MissingValue
            fieldRef:
              type: string
            message:
              type: string
              example: Missing value
    ValidationErrorUnprocessableValue:
      allOf:
        - $ref: '#/components/schemas/ValidationErrorBase'
        - type: object
          properties:
            type:
              type: string
              const: UnprocessableValue
            fieldRef:
              type: string
            message:
              type: string
              example: Unprocessable value
    ValidationErrorUnexpectedVerificationError:
      allOf:
        - $ref: '#/components/schemas/ValidationErrorBase'
        - type: object
          properties:
            type:
              type: string
              const: UnexpectedVerificationError
            fieldRef:
              type: string
            message:
              type: string
              example: Unexpected error during verifying the value
    ValidationErrorMissingRequestBody:
      type: object
      required:
        - type
        - fieldRef
        - message
      properties:
        type:
          type: string
          const: MissingRequestBody
        fieldRef:
          type: string
          const: requestBody
        message:
          type: string
          example: Missing RequestBody or missing non-null fields
    ValidationErrorMissingPathParameter:
      allOf:
        - $ref: '#/components/schemas/ValidationErrorBase'
        - type: object
          properties:
            type:
              type: string
              const: MissingPathParameter
            fieldRef:
              type: string
            message:
              type: string
              example: Missing path parameter someParam
    ValidationErrorMissingQueryParameter:
      allOf:
        - $ref: '#/components/schemas/ValidationErrorBase'
        - type: object
          properties:
            type:
              type: string
              const: MissingQueryParameter
            fieldRef:
              type: string
            message:
              type: string
              example: Missing query parameter someParam
    ValidationErrorNotFound:
      allOf:
        - $ref: '#/components/schemas/ValidationErrorBase'
        - type: object
          properties:
            type:
              type: string
              const: NotFound
            fieldRef:
              type: string
            message:
              type: string
              example: Not found
    TransactionEntityReference:
      type: object
      additionalProperties: false
      required:
        - id
        - displayName
      properties:
        id:
          type: string
        displayName:
          type: string
    TransactionDisplayAmount:
      type: object
      additionalProperties: false
      required:
        - amount
        - currency
      properties:
        amount:
          type: string
        currency:
          type: string
    TransactionFee:
      type: object
      additionalProperties: false
      required:
        - type
        - label
        - amount
        - currency
      properties:
        type:
          type: string
        label:
          type: string
        amount:
          type: string
        currency:
          type: string
    TransactionOriginatorDebitLeg:
      type: object
      additionalProperties: false
      required:
        - type
        - originator
      properties:
        type:
          type: string
          enum:
            - ORIGINATOR
        originator:
          $ref: '#/components/schemas/TransactionOriginatorReference'
    TransactionBalanceDebitLeg:
      type: object
      additionalProperties: false
      required:
        - type
        - balance
      properties:
        type:
          type: string
          enum:
            - BALANCE
        balance:
          $ref: '#/components/schemas/TransactionBalanceReference'
    TransactionBalanceCreditLeg:
      type: object
      additionalProperties: false
      required:
        - type
        - balance
      properties:
        type:
          type: string
          enum:
            - BALANCE
        balance:
          $ref: '#/components/schemas/TransactionBalanceReference'
    TransactionBeneficiaryAccountCreditLeg:
      type: object
      additionalProperties: false
      required:
        - type
        - beneficiaryAccount
      properties:
        type:
          type: string
          enum:
            - BENEFICIARY_ACCOUNT
        beneficiaryAccount:
          $ref: '#/components/schemas/TransactionBeneficiaryAccountReference'
    ValidationErrorBase:
      type: object
      required:
        - type
        - fieldRef
        - message
      properties:
        type:
          type: string
        fieldRef:
          type: string
          description: The field or parameter that triggered the validation error
        message:
          type: string
          description: Human-readable explanation of the validation failure
    TransactionOriginatorReference:
      type: object
      additionalProperties: false
      required:
        - displayName
        - accountNumber
      properties:
        displayName:
          type: string
        accountNumber:
          type: string
    TransactionBalanceReference:
      type: object
      additionalProperties: false
      required:
        - id
        - displayName
        - currency
      properties:
        id:
          type: string
        displayName:
          type: string
        currency:
          type: string
    TransactionBeneficiaryAccountReference:
      type: object
      additionalProperties: false
      required:
        - id
        - displayName
        - currency
      properties:
        id:
          type: string
        displayName:
          type: string
        currency:
          type: string
  securitySchemes:
    MeridianHmacAuth:
      type: apiKey
      in: header
      name: X-Meridian-Signature
      description: |-
        Meridian HMAC header authentication.

        Required headers:
          - X-Meridian-Api-Key
          - X-Meridian-Program-Id
          - X-Meridian-Timestamp
          - X-Meridian-Signature

````