MX

MX Transactions API

Transactions represent any instance in which money moves into or out of an account. This could be a purchase at a business, a payroll deposit, a transfer from one account to another, an ATM withdrawal, and so on. Transactions are created automatically when a member is successfully aggregated. Each `transaction` belongs to only one `account`. For more info, see [Transactions Overview](docs.mx.com/api-reference/reference/transactions).

Operations 20

POST /transactions/enhance Enhance transactions #
POST /users/{user_guid}/accounts/{account_guid}/transactions Create manual transaction #
GET /users/{user_guid}/accounts/{account_guid}/transactions List transactions by account #
GET /users/{user_identifier}/members/{member_identifier}/accounts/{account_identifier}/transactions List transactions by account per member #
POST /users/{user_identifier}/members/{member_identifier}/extend_history Extend history #
GET /users/{user_identifier}/members/{member_identifier}/transactions List transactions by member #
GET /users/{user_identifier}/tags/{tag_guid}/transactions List transactions by tag #
DELETE /users/{user_guid}/transaction_rules/{transaction_rule_guid} Delete transaction rule #
GET /users/{user_identifier}/transactions List transactions #
GET /users/{user_guid}/transactions/{transaction_guid} Read transaction #
PUT /users/{user_guid}/transactions/{transaction_guid} Update transaction #
DELETE /users/{user_guid}/transactions/{transaction_guid} Delete manual transactions #
GET /users/{user_identifier}/members/{member_identifier}/accounts/{account_identifier}/transactions/{transaction_identifier} Read transaction by account #
PUT /users/{user_identifier}/members/{member_identifier}/accounts/{account_identifier}/transactions/{transaction_identifier} Update transaction by account #
GET /users/{user_guid}/repeating_transactions List Repeating Transactions #
GET /users/{user_guid}/repeating_transactions/{repeating_transaction_guid} Get a Repeating Transaction #
DELETE /users/{user_guid}/transactions/{transaction_guid}/split Delete split transactions #
POST /users/{user_guid}/transactions/{transaction_guid}/split Create split transactions #
DELETE /users/{user_identifier}/members/{member_identifier}/accounts/{account_identifier}/transactions/{transaction_identifier}/split Delete split transactions by account #
POST /users/{user_identifier}/members/{member_identifier}/accounts/{account_identifier}/transactions/{transaction_identifier}/split Create split transactions by account #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/mx-transactions-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

mx-transactions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact:
    name: MX Platform API
    url: https://www.mx.com/products/platform-api
  description: 'The MX Platform API is a powerful, fully-featured API designed to make aggregating and enhancing financial data easy and reliable. It can seamlessly connect your app or website to tens of thousands of financial institutions.


    ## What''s Changed?


    Several endpoints, headers, and fields changed in `v20250224`. For more on breaking changes, refer to our [versioning](/api-reference/platform-api/overview/versioning#v20250224) and [migration](/api-reference/platform-api/overview/migration) guides.


    ## Version Header

    Versions are set in the `Accept-Version` header of API requests. Version numbers correspond with the date associated with that version.  The example below uses the version `v20250224`.


    ```

    -H ''Accept: application/json''

    -H ''Accept-Version: v20250224''

    ```


    ---

    '
  title: MX Platform Transactions API
  version: '20250224'
servers:
- url: https://int-api.mx.com
- url: https://api.mx.com
security:
- basicAuth: []
tags:
- name: transactions
  description: 'Transactions represent any instance in which money moves into or out of an account. This could be a purchase at a business, a payroll deposit, a transfer from one account to another, an ATM withdrawal, and so on.


    Transactions are created automatically when a member is successfully aggregated.


    Each `transaction` belongs to only one `account`.


    For more info, see [Transactions Overview](docs.mx.com/api-reference/reference/transactions).

    '
paths:
  /transactions/enhance:
    post:
      description: Use this endpoint to categorize, cleanse, and classify transactions. These transactions are not  persisted or stored on the MX platform. <br /><br />For more information on returned data, please  see the [Enhanced Transactions fields guide](/api-reference/platform-api/reference/transactions-overview#enhanced-transactions).
      operationId: enhanceTransactions
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EnhanceTransactionsRequestBody'
        description: Transaction object to be enhanced
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnhanceTransactionsResponseBody'
          description: OK
      summary: Enhance transactions
      tags:
      - transactions
  /users/{user_guid}/accounts/{account_guid}/transactions:
    post:
      operationId: createManualTransaction
      tags:
      - transactions
      summary: Create manual transaction
      description: 'This endpoint can only be used to create manual transactions that are under a manual account. This endpoint accepts the optional MX-Skip-Webhook header and `skip_webhook` parameter.

        '
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      - $ref: '#/components/parameters/userGuid'
      - $ref: '#/components/parameters/accountGuid'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TransactionCreateRequestBody'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionCreateResponseBody'
    get:
      description: Requests to this endpoint return a list of transactions associated with the specified account. <br /><br /> Enhanced transaction data may be requested using the `includes` parameter. To use this optional parameter,  the value should include the optional metadata requested such as `repeating_transactions`, `merchants`,  `classifications`, `geolocations`. For more information, see the [Optional Enhancement Query Parameter guide](/api-reference/platform-api/reference/transactions-overview#enhanced-transactions#optional-enhancement-query-parameter).
      operationId: listTransactionsByAccount
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      - $ref: '#/components/parameters/userGuid'
      - $ref: '#/components/parameters/accountGuid'
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/recordsPerPageMax1000'
      - $ref: '#/components/parameters/fromDateUnix'
      - $ref: '#/components/parameters/toDateUnix'
      - $ref: '#/components/parameters/fromCreatedAt'
      - $ref: '#/components/parameters/toCreatedAt'
      - $ref: '#/components/parameters/fromUpdatedAt'
      - $ref: '#/components/parameters/toUpdatedAt'
      - $ref: '#/components/parameters/includes'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionsResponseBodyIncludes'
          description: OK
      summary: List transactions by account
      tags:
      - transactions
  /users/{user_identifier}/members/{member_identifier}/accounts/{account_identifier}/transactions:
    get:
      description: Requests to this endpoint return a list of transactions associated with the specified account. <br /><br /> Enhanced transaction data may be requested using the `includes` parameter. To use this optional parameter,  the value should include the optional metadata requested such as `repeating_transactions`, `merchants`,  `classifications`, `geolocations`. For more information, see the [Optional Enhancement Query Parameter guide](/api-reference/platform-api/reference/transactions-overview#enhanced-transactions#optional-enhancement-query-parameter).
      operationId: listTransactionsByAccountPerMember
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      - $ref: '#/components/parameters/userIdentifier'
      - $ref: '#/components/parameters/accountIdentifier'
      - $ref: '#/components/parameters/memberIdentifier'
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/recordsPerPageMax1000'
      - $ref: '#/components/parameters/fromDateUnix'
      - $ref: '#/components/parameters/toDateUnix'
      - $ref: '#/components/parameters/fromCreatedAt'
      - $ref: '#/components/parameters/toCreatedAt'
      - $ref: '#/components/parameters/fromUpdatedAt'
      - $ref: '#/components/parameters/toUpdatedAt'
      - $ref: '#/components/parameters/includes'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionsResponseBodyIncludes'
          description: OK
      summary: List transactions by account per member
      tags:
      - transactions
  /users/{user_identifier}/members/{member_identifier}/extend_history:
    post:
      description: Some institutions allow developers to access an extended transaction history with up to 24 months of data associated with a particular member. The process for fetching and then reading this extended transaction history is much like standard aggregation, and it may trigger multi-factor authentication.
      operationId: extendHistory
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      - $ref: '#/components/parameters/memberIdentifier'
      - $ref: '#/components/parameters/userIdentifier'
      responses:
        '202':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MemberResponseBody'
          description: Accepted
      summary: Extend history
      tags:
      - transactions
  /users/{user_identifier}/members/{member_identifier}/transactions:
    get:
      description: Requests to this endpoint return a list of transactions associated with the specified  `member`, across all accounts associated with that `member`. <br /><br />Enhanced transaction data  may be requested using the `includes` parameter. To use this optional parameter, the value should  include the optional metadata requested such as `repeating_transactions`, `merchants`, `classifications`,  `geolocations`. For more information, see the [Optional Enhancement Query Parameter guide](/api-reference/platform-api/reference/transactions-overview#enhanced-transactions#optional-enhancement-query-parameter).
      operationId: listTransactionsByMember
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      - $ref: '#/components/parameters/userIdentifier'
      - $ref: '#/components/parameters/memberIdentifier'
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/recordsPerPageMax1000'
      - $ref: '#/components/parameters/fromDateUnix'
      - $ref: '#/components/parameters/toDateUnix'
      - $ref: '#/components/parameters/fromCreatedAt'
      - $ref: '#/components/parameters/toCreatedAt'
      - $ref: '#/components/parameters/fromTimestamp'
      - $ref: '#/components/parameters/toTimestamp'
      - $ref: '#/components/parameters/fromUpdatedAt'
      - $ref: '#/components/parameters/toUpdatedAt'
      - $ref: '#/components/parameters/includes'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionsResponseBodyIncludes'
          description: OK
      summary: List transactions by member
      tags:
      - transactions
  /users/{user_identifier}/tags/{tag_guid}/transactions:
    get:
      description: Use this endpoint to get a list of all transactions associated with a particular tag  according to the tag's unique GUID. This lists all transactions that have been assigned to a particular  tag using the create tagging endpoint. <br /><br />Enhanced transaction data may be requested using the  `includes` parameter. To use this optional parameter, the value should include the optional metadata  requested such as `repeating_transactions`, `merchants`, `classifications`, `geolocations`. For more  information, see the [Optional Enhancement Query Parameter guide](/api-reference/platform-api/reference/transactions-overview#enhanced-transactions#optional-enhancement-query-parameter).
      operationId: listTransactionsByTag
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      - $ref: '#/components/parameters/userIdentifier'
      - $ref: '#/components/parameters/tagGuid'
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/recordsPerPageMax1000'
      - $ref: '#/components/parameters/fromDateUnix'
      - $ref: '#/components/parameters/toDateUnix'
      - $ref: '#/components/parameters/fromCreatedAt'
      - $ref: '#/components/parameters/toCreatedAt'
      - $ref: '#/components/parameters/fromUpdatedAt'
      - $ref: '#/components/parameters/toUpdatedAt'
      - $ref: '#/components/parameters/includes'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionsResponseBodyIncludes'
          description: OK
      summary: List transactions by tag
      tags:
      - transactions
  /users/{user_guid}/transaction_rules/{transaction_rule_guid}:
    delete:
      description: Use this endpoint to permanently delete a transaction rule based on its unique GUID.
      operationId: deleteTransactionRule
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      - $ref: '#/components/parameters/transactionRuleGuid'
      - $ref: '#/components/parameters/userGuid'
      responses:
        '204':
          description: No Content
      summary: Delete transaction rule
      tags:
      - transactions
  /users/{user_identifier}/transactions:
    get:
      description: Requests to this endpoint return a list of transactions associated with the specified  `user`, across all members and accounts associated with that `user`. <br /><br />Enhanced transaction  data may be requested using the `includes` parameter. To use this optional parameter, the value should  include the optional metadata requested such as `repeating_transactions`, `merchants`, `classifications`,  `geolocations`. For more information, see the [Optional Enhancement Query Parameter guide](/api-reference/platform-api/reference/transactions-overview#enhanced-transactions#optional-enhancement-query-parameter).
      operationId: listTransactions
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      - $ref: '#/components/parameters/userIdentifier'
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/recordsPerPageMax1000'
      - $ref: '#/components/parameters/fromDateUnix'
      - $ref: '#/components/parameters/toDateUnix'
      - $ref: '#/components/parameters/fromCreatedAt'
      - $ref: '#/components/parameters/toCreatedAt'
      - $ref: '#/components/parameters/fromUpdatedAt'
      - $ref: '#/components/parameters/toUpdatedAt'
      - $ref: '#/components/parameters/useCase'
      - $ref: '#/components/parameters/includes'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionsResponseBodyIncludes'
          description: OK
      summary: List transactions
      tags:
      - transactions
  /users/{user_guid}/transactions/{transaction_guid}:
    parameters:
    - $ref: '#/components/parameters/acceptVersion'
    - $ref: '#/components/parameters/userGuid'
    - $ref: '#/components/parameters/transactionGuid'
    get:
      description: Requests to this endpoint will return the attributes of the specified `transaction`. To  read a manual transaction, use the manual transaction guid in the path as the `transactionGuid`. <br /><br /> Enhanced transaction data may be requested using the `includes` parameter. To use this optional parameter,  the value should include the optional metadata requested such as `repeating_transactions`, `merchants`,  `classifications`, `geolocations`. For more information, see the [Optional Enhancement Query Parameter guide](/api-reference/platform-api/reference/transactions-overview#enhanced-transactions#optional-enhancement-query-parameter).
      operationId: readTransaction
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionsResponseBodyIncludes'
          description: OK
      summary: Read transaction
      tags:
      - transactions
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      - $ref: '#/components/parameters/includes'
    put:
      description: Use this endpoint to update the `description` of a specific transaction according to its unique GUID.
      operationId: updateTransaction
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TransactionUpdateRequestBody'
        description: Transaction object to be updated with a new description
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionResponseBody'
          description: OK
      summary: Update transaction
      tags:
      - transactions
    delete:
      tags:
      - transactions
      operationId: deleteManualTransactions
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      summary: Delete manual transactions
      description: Delete a manual transaction. In the path, use the manual transaction guid as the `transaction_guid`, such as `MAN-810828b0-5210-4878-9bd3-f4ce514f90c4`.
      responses:
        '204':
          description: No content
  /users/{user_identifier}/members/{member_identifier}/accounts/{account_identifier}/transactions/{transaction_identifier}:
    parameters:
    - $ref: '#/components/parameters/acceptVersion'
    - $ref: '#/components/parameters/userIdentifier'
    - $ref: '#/components/parameters/memberIdentifier'
    - $ref: '#/components/parameters/accountIdentifier'
    - $ref: '#/components/parameters/transactionIdentifier'
    get:
      description: Requests to this endpoint will return the attributes of the specified `transaction`. To  read a manual transaction, use the manual transaction guid in the path as the `transactionGuid`. <br /><br /> Enhanced transaction data may be requested using the `includes` parameter. To use this optional parameter,  the value should include the optional metadata requested such as `repeating_transactions`, `merchants`,  `classifications`, `geolocations`. For more information, see the [Optional Enhancement Query Parameter guide](/api-reference/platform-api/reference/transactions-overview#enhanced-transactions#optional-enhancement-query-parameter).
      operationId: readTransactionByAccount
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionsResponseBodyIncludes'
          description: OK
      summary: Read transaction by account
      tags:
      - transactions
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      - $ref: '#/components/parameters/includes'
    put:
      description: Use this endpoint to update the `description` of a specific transaction according to its unique GUID.
      operationId: updateTransactionByAccount
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TransactionUpdateRequestBody'
        description: Transaction object to be updated with a new description
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionResponseBody'
          description: OK
      summary: Update transaction by account
      tags:
      - transactions
  /users/{user_guid}/repeating_transactions:
    get:
      description: Retrieve a list of all recurring transactions for a user. <br /><br />For more see the [Repeating Transactions guide](/api-reference/platform-api/reference/transactions-overview#repeating-transactions).
      operationId: repeatingTransactions
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      - $ref: '#/components/parameters/userGuid'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RepeatingTransactionsResponseBody'
          description: OK
      summary: List Repeating Transactions
      tags:
      - transactions
  /users/{user_guid}/repeating_transactions/{repeating_transaction_guid}:
    get:
      description: Get a Specific Repeating Transaction.
      operationId: specificRepeatingTransaction
      parameters:
      - $ref: '#/components/parameters/acceptVersion'
      - $ref: '#/components/parameters/userGuid'
      - $ref: '#/components/parameters/repeatingTransactionGuid'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RepeatingTransactionsResponseBody'
          description: OK
      summary: Get a Repeating Transaction
      tags:
      - transactions
  /users/{user_guid}/transactions/{transaction_guid}/split:
    parameters:
    - $ref: '#/components/parameters/transactionGuid'
    - $ref: '#/components/parameters/userGuid'
    - $ref: '#/components/parameters/acceptVersion'
    delete:
      tags:
      - transactions
      operationId: deleteSplitTransactions
      summary: Delete split transactions
      description: This endpoint deletes all split transactions linked to a parent transaction, but it leaves the parent transaction active. This request will also update the parent transaction's has_been_split field to false. This endpoint accepts the optional MX-Skip-Webhook header.
      responses:
        '204':
          description: No content
    post:
      tags:
      - transactions
      operationId: createSplitTransactions
      summary: Create split transactions
      description: 'This endpoint creates two or more child transactions that are branched from a previous transaction. This endpoint allows you to link multiple categories, descriptions, and amounts to a parent transaction.  When a split transaction is created, the parent transaction''s `has_been_split` field will automatically be updated to true and the child transactions'' `parent_guid` will have the transaction guid of the parent. The total amount of the child transactions must equal the amount of the parent transaction. Once a transaction has been split it can''t be split again.    In order to re-split a transaction, it must first be un-split. This can be done by calling the Delete Split Transactions endpoint. Calling this endpoint will delete the existing child transactions and update the parent transaction''s `has_been_split` field to false. You can then re-split the parent transaction by calling Create Split Transaction again.

        '
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SplitTransactionRequestBody'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SplitTransactionsResponseBody'
          description: OK
  ? /users/{user_identifier}/members/{member_identifier}/accounts/{account_identifier}/transactions/{transaction_identifier}/split
  : parameters:
    - $ref: '#/components/parameters/userIdentifier'
    - $ref: '#/components/parameters/memberIdentifier'
    - $ref: '#/components/parameters/accountIdentifier'
    - $ref: '#/components/parameters/transactionIdentifier'
    - $ref: '#/components/parameters/acceptVersion'
    delete:
      tags:
      - transactions
      operationId: deleteSplitTransactionsbyAccount
      summary: Delete split transactions by account
      description: This endpoint deletes all split transactions linked to a parent transaction, but it leaves the parent transaction active. This request will also update the parent transaction's has_been_split field to false. This endpoint accepts the optional MX-Skip-Webhook header.
      responses:
        '204':
          description: No content
    post:
      tags:
      - transactions
      operationId: createSplitTransactionsbyAccount
      summary: Create split transactions by account
      description: 'This endpoint creates two or more child transactions that are branched from a previous transaction. This endpoint allows you to link multiple categories, descriptions, and amounts to a parent transaction.  When a split transaction is created, the parent transaction''s `has_been_split` field will automatically be updated to true and the child transactions'' `parent_guid` will have the transaction guid of the parent. The total amount of the child transactions must equal the amount of the parent transaction. Once a transaction has been split it can''t be split again.    In order to re-split a transaction, it must first be un-split. This can be done by calling the Delete Split Transactions endpoint. Calling this endpoint will delete the existing child transactions and update the parent transaction''s `has_been_split` field to false. You can then re-split the parent transaction by calling Create Split Transaction again.

        '
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SplitTransactionRequestBody'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SplitTransactionsResponseBody'
          description: OK
components:
  parameters:
    fromCreatedAt:
      name: from_created_at
      in: query
      description: Filter transactions from the date the transaction was created. This only supports unix timestamp format.
      example: '1666936800'
      schema:
        type: string
    repeatingTransactionGuid:
      description: The unique id for a recurring transaction.
      example: TRN-810828b0-5210-4878-9bd3-f4ce514f90c4
      in: path
      name: repeating_transaction_guid
      required: true
      schema:
        type: string
    memberIdentifier:
      description: Use either the member `id` you defined or the MX-defined member `guid`. See [MX-Defined GUIDs vs IDs Defined by You](/products/connectivity/overview/held-data/#mx-defined-guids-vs-ids-defined-by-you).
      name: member_identifier
      in: path
      required: true
      schema:
        type: string
    fromTimestamp:
      name: from_timestamp
      in: query
      description: Filter transactions from the date the transaction was created. This only supports unix timestamp format.
      example: '1666936800'
      schema:
        type: string
    toDateUnix:
      description: Filter transactions to this date (at midnight). This only supports unix timestamp format. Defaults to 5 days forward from the day the request is made to capture pending transactions.
      example: '1698472800'
      in: query
      name: to_date
      schema:
        type: string
    fromUpdatedAt:
      name: from_updated_at
      description: Filter transactions from the date in which the transaction was updated. This only supports unix timestamp format.
      example: '1666936800'
      in: query
      schema:
        type: string
    includes:
      description: "Options for enhanced transactions. This query parameter is optional. Possible additional metadata: `repeating_transactions`, `merchants`, `classifications`, `geolocations`. The query value is format sensitive. To retrieve all available enhancements, append:\n\n`?includes=repeating_transactions,merchants,classifications,geolocations`. \n \nThe query options may be combined to specific enhancements. For example, to request Repeating Transactions and Geolocation data, use: \n\n`?includes=repeating_transactions,geolocations`.\n\n- Repeating Transactions: Identifies transactions with predictable recurrence patterns (e.g., Bill, Income, Subscription).\n- Merchants: Enriches transactions with merchant name.\n- Classifications: Provides more insight into the type of money movement that is occurring on the transaction, whether it be retail or investments.\n- Geolocation: Provides geographic metadata.\n"
      example: repeating_transactions,merchants,classifications,geolocations
      in: query
      name: includes
      required: false
      schema:
        type: string
    useCase:
      description: The use case associated with the member. Valid values are `PFM` and `MONEY_MOVEMENT`. For example, you can append either `?use_case=PFM` or `?use_case=MONEY_MOVEMENT`.
      required: false
      in: query
      name: use_case
      schema:
        type: string
    tagGuid:
      description: The unique id for a `tag`.
      example: TAG-aef36e72-6294-4c38-844d-e573e80aed52
      in: path
      name: tag_guid
      required: true
      schema:
        type: string
    transactionIdentifier:
      description: Use either the transaction `id` you defined or the MX-defined transaction `guid`. See [MX-Defined GUIDs vs IDs Defined by You​](/products/connectivity/overview/held-data/#mx-defined-guids-vs-ids-defined-by-you).
      in: path
      required: true
      name: transaction_identifier
      schema:
        type: string
    acceptVersion:
      name: Accept-Version
      in: header
      required: true
      schema:
        type: string
        default: v20250224
        example: v20250224
      description: MX Platform API version.
    page:
      description: Results are paginated. Specify current page.
      example: 1
      in: query
      name: page
      schema:
        type: integer
    toTimestamp:
      name: to_timestamp
      description: Filter transaction to the date in which the transaction was created. This only supports unix timestamp format.
      example: '1698472800'
      in: query
      schema:
        type: string
    accountIdentifier:
      description: Use either the account `id` you defined or the MX-defined account `guid`. See [MX-Defined GUIDs vs IDs Defined by You](/products/connectivity/overview/held-data/#mx-defined-guids-vs-ids-defined-by-you).
      in: path
      required: true
      name: account_identifier
      schema:
        type: string
    fromDateUnix:
      description: Filter transactions from this date. This only supports unix timestamp format. Defaults to 120 days ago if not provided.
      example: '1666936800'
      in: query
      name: from_date
      schema:
        type: string
    accountGuid:
      description: The unique id for an `account`.
      example: ACT-06d7f44b-caae-0f6e-1384-01f52e75dcb1
      in: path
      name: account_guid
      required: true
      schema:
        type: string
    recordsPerPageMax1000:
      description: This specifies the number of records to be returned on each page. Defaults to `25`. The valid range is from `10` to `1000`. If the value exceeds `1000`, the default value of `25` will be used instead.
      example: 10
      in: query
      name: records_per_page
      schema:
        type: integer
    toCreatedAt:
      name: to_created_at
      description: Filter transaction to the date in which the transaction was created. This only supports unix timestamp format.
      example: '1698472800'
      in: query
      schema:
        type: string
    transactionGuid:
      description: The unique id for a `transaction`.
      example: TRN-810828b0-5210-4878-9bd3-f4ce514f90c4
      in: path
      name: transaction_guid
      required: true
      schema:
        type: string
    userGuid:
      description: The unique identifier for a `user`, beginning with the prefix `USR-`.
      example: USR-fa7537f3-48aa-a683-a02a-b18940482f54
      in: path
      name: user_guid
      required: true
      schema:
        type: string
    transactionRuleGuid:
      description: The unique id for a `transaction_rule`.
      example: TXR-a080e0f9-a2d4-4d6f-9e03-672cc357a4d3
      in: path
      name: transaction_rule_guid
      required: true
      schema:
        type: string
    userIdentifier:
      description: Use either the user `id` you defined or the MX-defined user `guid`. See [MX-Defined GUIDs vs IDs Defined by You​](/products/connectivity/overview/held-data/#mx-defined-guids-vs-ids-defined-by-you).
      in: path
      required: true
      name: user_identifier
      schema:
        type: string
    toUpdatedAt:
      name: to_updated_at
      description: Filter transactions to the date in which the transaction was updated. This only supports unix timestamp format.
      example: '1698472800'
      in: query
      schema:
        type: string
  schemas:
    TransactionUpdateRequest:
      properties:
        description:
          example: new description
          type: string
      required:
      - description
      type: object
    EnhanceTransactionResponse:
      properties:
        amount:
          description: The monetary amount of the `transaction`.
          example: 61.11
          type:
          - number
          - 'null'
        categorized_by:
          description: The method used to determine the category assigned to the transaction.
          example: 13
          type:
          - integer
          - 'null'
        category:
          description: The category of the `transaction`.
          example: Paycheck
          type:
          - string
          - 'null'
        category_guid:
          description: The unique identifier for the category. Defined by MX.
          example: CAT-b6d61a19-30a7-e852-2703-bdfb4072289e
          type:
          - string
          - 'null'
        described_by:
          description: The method used to describe the `transaction`.
          example: 6
          type:
          - integer
          - 'null'
        description:
          description: A human-readable version of the `original_description` field. This is provided by the MX Platform.
          example: Uber
          type:
          - string
          - 'null'
        extended_transaction_type:
          description: The transaction type assigned by the partner.
          example: partner

# --- truncated at 32 KB (74 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/mx/refs/heads/main/openapi/mx-transactions-api-openapi.yml