Skip to main content
GET
/
users
/
{user_guid}
/
transactions
/
{transaction_guid}
Read transaction
curl --request GET \
  --url https://int-api.mx.com/users/{user_guid}/transactions/{transaction_guid} \
  --header 'Accept-Version: <accept-version>' \
  --header 'Authorization: Basic <encoded-value>'
import requests

url = "https://int-api.mx.com/users/{user_guid}/transactions/{transaction_guid}"

headers = {
"Accept-Version": "<accept-version>",
"Authorization": "Basic <encoded-value>"
}

response = requests.get(url, headers=headers)

print(response.text)
const options = {
method: 'GET',
headers: {'Accept-Version': '<accept-version>', Authorization: 'Basic <encoded-value>'}
};

fetch('https://int-api.mx.com/users/{user_guid}/transactions/{transaction_guid}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://int-api.mx.com/users/{user_guid}/transactions/{transaction_guid}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Accept-Version: <accept-version>",
"Authorization: Basic <encoded-value>"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"net/http"
"io"
)

func main() {

url := "https://int-api.mx.com/users/{user_guid}/transactions/{transaction_guid}"

req, _ := http.NewRequest("GET", url, nil)

req.Header.Add("Accept-Version", "<accept-version>")
req.Header.Add("Authorization", "Basic <encoded-value>")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.get("https://int-api.mx.com/users/{user_guid}/transactions/{transaction_guid}")
.header("Accept-Version", "<accept-version>")
.header("Authorization", "Basic <encoded-value>")
.asString();
require 'uri'
require 'net/http'

url = URI("https://int-api.mx.com/users/{user_guid}/transactions/{transaction_guid}")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Accept-Version"] = '<accept-version>'
request["Authorization"] = 'Basic <encoded-value>'

response = http.request(request)
puts response.read_body
{
  "transactions": [
    {
      "account_guid": "ACT-06d7f44b-caae-0f6e-1384-01f52e75dcb1",
      "account_id": "account123",
      "amount": 61.11,
      "category": "Paycheck",
      "category_guid": "CAT-b6d61a19-30a7-e852-2703-bdfb4072289e",
      "check_number_string": null,
      "created_at": "2025-02-13T18:08:00+00:00",
      "currency_code": "USD",
      "date": "2024-12-20",
      "description": "MX Technologies Payroll",
      "extended_transaction_type": null,
      "guid": "TRN-429ad9fe-a1d2-4559-8590-885b2603f0e1",
      "id": "1734681600000-178fa8095c154a55b9172f977b4c5f9a-0",
      "is_bill_pay": false,
      "is_direct_deposit": false,
      "is_expense": false,
      "is_fee": false,
      "is_income": true,
      "is_international": false,
      "is_manual": false,
      "is_overdraft_fee": false,
      "is_payroll_advance": false,
      "is_recurring": null,
      "is_subscription": false,
      "latitude": null,
      "localized_description": "This is a localized_description",
      "localized_memo": "This is a localized_memo",
      "longitude": null,
      "member_guid": "MBR-7c6f361b-e582-15b6-60c0-358f12466b4b",
      "member_is_managed_by_user": true,
      "memo": "Transactions",
      "merchant_category_code": null,
      "merchant_guid": "MCH-8cc3b01a-1c52-47d4-970d-30f8ee5566f1",
      "merchant_location_guid": null,
      "metadata": "some metadata",
      "original_description": "MX TECHNOLOGIES PAYMENT",
      "posted_at": "2024-12-20T12:00:00Z",
      "status": "POSTED",
      "top_level_category": "Income",
      "transacted_at": "2024-12-20T12:00:00Z",
      "type": "CREDIT",
      "updated_at": "2025-02-13T18:09:00+00:00",
      "user_guid": "USR-fa7537f3-48aa-a683-a02a-b18940482f54",
      "user_id": "u-1234",
      "classification": {
        "parent_class": "Deposit",
        "guid": "MNC-3ad50f86-60d0-4545-a1f9-e66c2ac40f69"
      },
      "geolocation": {
        "country": "US",
        "state": "UT",
        "city": "North Kishaberg",
        "postal code": "84043"
      },
      "merchant": {
        "name": "MX",
        "guid": "MCH-0c25f895-393c-42a4-9c18-95a0b26d4d84",
        "logo_url": "https://content.mx.com/logos/merchants/MCH-0c25f895-393c-42a4-9c18-95a0b26d4d84.png",
        "website_url": "https://www.example.com"
      },
      "repeating_transaction": {
        "recurrence_type": "EVERY_OTHER_WEEK",
        "guid": "RPT-065b8b1d-826a-45ce-8487-60ca1510e72a"
      }
    }
  ],
  "pagination": {
    "current_page": 1,
    "per_page": 25,
    "total_entries": 1,
    "total_pages": 1
  }
}
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.

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.

Authorizations

Authorization
string
header
required

The MX Platform API requires basic access authentication using your client_id and api_key. These credentials must be Base64 encoded and included in the Authorization header of each API request to ensure secure access.

Here's an example using curl to access v20250224. Replace https://int-api.mx.com/endpoint with the actual API endpoint you wish to access and your Base64 encoded client_id and api_key.

curl -L -X POST `https://int-api.mx.com/endpoint' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Accept-Version: v20250224'
-H 'Authorization: Basic BASE_64_ENCODING_OF{client_id:api_key}'

Headers

Accept-Version
string
default:v20250224
required

MX Platform API version.

Example:

"v20250224"

Path Parameters

user_guid
string
required

The unique identifier for a user, beginning with the prefix USR-.

transaction_guid
string
required

The unique id for a transaction.

Query Parameters

includes
string

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:

?includes=repeating_transactions,merchants,classifications,geolocations.

The query options may be combined to specific enhancements. For example, to request Repeating Transactions and Geolocation data, use:

?includes=repeating_transactions,geolocations.

  • Repeating Transactions: Identifies transactions with predictable recurrence patterns (e.g., Bill, Income, Subscription).
  • Merchants: Enriches transactions with merchant name.
  • Classifications: Provides more insight into the type of money movement that is occurring on the transaction, whether it be retail or investments.
  • Geolocation: Provides geographic metadata.

Response

200 - application/json

OK

transactions
object[]
pagination
object