curl --request GET \
--url https://app.herondata.io/api/end_users/{end_user_id_or_heron_id}/transactions \
--header 'x-api-key: <api-key>'{
"_meta": {
"next_url": "<string>",
"num_results": 123,
"page": 123,
"per_page": 123,
"prev_url": "<string>"
},
"transactions_enriched": [
{
"amount": -42.42,
"description": "GOOGLE *ADS12340929 [email protected] US",
"account_id": "checking_account_202348",
"account_number": "1234567890",
"annotation": {
"annotator": {
"context": "sync",
"priority_type": "gold_standard"
},
"category": {
"label": "Rent",
"heron_id": "ctg_NxuE6DEaPGMXCjZrZ2vyXo"
},
"confidence": 123,
"model_version": "<string>"
},
"balance": 423,
"counterparty": "GOOGLE",
"currency": "USD",
"data_source_account_heron_id": "dsa_RAqgeYTWkKYfUGfyFZy9PN",
"data_source_heron_id": "dso_KgadxHdrTGtYda4tjgHvCH",
"end_user_id": "my_best_customer_203948",
"features": {
"description_clean": "GOOGLE ADS",
"duplicate_of_id": "txn_7p9fVaHJToygHX8ps4sY59",
"has_matching_transaction": true,
"is_potential_duplicate": true,
"is_recurring": true
},
"heron_id": "txn_8pAXmBn9PTWq9Cx5JXVp5q",
"last_updated": "2025-12-12T10:00:51.477810",
"merchant": {
"name": "<string>",
"url": "<string>",
"categories": [
{
"code": "7311",
"description": "Advertising services",
"slug": "advertising_services"
}
],
"group_id": "Uber",
"heron_id": "mrc_MQ6m783Jf7Ewj7nk5KyJYy",
"icon_url": "<string>",
"is_priority": true,
"logo_url": "<string>"
},
"reference_id": "my_favourite_transaction_231098",
"request_id": "req_WtcsBmM8XDkf9HktbwRZDg",
"timestamp": "2021-11-12T10:38:05Z",
"transaction_code": "card"
}
]
}Get all unique transactions for a single end user. Set end user status to “ready” to initiate transaction enrichment, otherwise may contain both enriched and unenriched transactions
curl --request GET \
--url https://app.herondata.io/api/end_users/{end_user_id_or_heron_id}/transactions \
--header 'x-api-key: <api-key>'{
"_meta": {
"next_url": "<string>",
"num_results": 123,
"page": 123,
"per_page": 123,
"prev_url": "<string>"
},
"transactions_enriched": [
{
"amount": -42.42,
"description": "GOOGLE *ADS12340929 [email protected] US",
"account_id": "checking_account_202348",
"account_number": "1234567890",
"annotation": {
"annotator": {
"context": "sync",
"priority_type": "gold_standard"
},
"category": {
"label": "Rent",
"heron_id": "ctg_NxuE6DEaPGMXCjZrZ2vyXo"
},
"confidence": 123,
"model_version": "<string>"
},
"balance": 423,
"counterparty": "GOOGLE",
"currency": "USD",
"data_source_account_heron_id": "dsa_RAqgeYTWkKYfUGfyFZy9PN",
"data_source_heron_id": "dso_KgadxHdrTGtYda4tjgHvCH",
"end_user_id": "my_best_customer_203948",
"features": {
"description_clean": "GOOGLE ADS",
"duplicate_of_id": "txn_7p9fVaHJToygHX8ps4sY59",
"has_matching_transaction": true,
"is_potential_duplicate": true,
"is_recurring": true
},
"heron_id": "txn_8pAXmBn9PTWq9Cx5JXVp5q",
"last_updated": "2025-12-12T10:00:51.477810",
"merchant": {
"name": "<string>",
"url": "<string>",
"categories": [
{
"code": "7311",
"description": "Advertising services",
"slug": "advertising_services"
}
],
"group_id": "Uber",
"heron_id": "mrc_MQ6m783Jf7Ewj7nk5KyJYy",
"icon_url": "<string>",
"is_priority": true,
"logo_url": "<string>"
},
"reference_id": "my_favourite_transaction_231098",
"request_id": "req_WtcsBmM8XDkf9HktbwRZDg",
"timestamp": "2021-11-12T10:38:05Z",
"transaction_code": "card"
}
]
}Filter by the heron_id of the category that the transaction is annotated with
"ctg_bZ3444BQF4f9yssbjcuf2C"
Account ids to include. If not provided, all accounts are included
Filter for transactions whose values were last updated in Heron systems after the specified input value, isoformat
"2025-12-12T10:00:53.624625"
Results page
x >= 1Desired results per page
1 <= x <= 50000What to order transactions by
amount_asc, amount_desc, abs_amount_asc, abs_amount_desc, description_asc, description_desc, timestamp_asc, timestamp_desc, id_asc, id_desc, confidence_asc, confidence_desc, created_asc, created_desc OK
Show child attributes
Amount. Inflows to an account should be positive, and outflows from an account should be negative. If using Plaid, please flip the amount sign for all transactions.
-42.42
The text description for the transaction
"GOOGLE *ADS12340929 [email protected] US"
Your unique ID for account associated with transaction
400"checking_account_202348"
The account number of the data source account associated with the transaction
"1234567890"
The category annotation associated with the transaction
Show child attributes
Show child attributes
sync, async_, manual, undetermined gold_standard, client_feedback, tagging_ui, reconcile, heuristic, classifier, undetermined, positions_detection The running balance of the account after transaction ocurred
423
The counterparty associated with the transaction, if available
"GOOGLE"
ISO 4217 currency code
3"USD"
The heron ID of the data source account associated with the transaction
"dsa_RAqgeYTWkKYfUGfyFZy9PN"
The heron ID of the data source associated with the transaction
"dso_KgadxHdrTGtYda4tjgHvCH"
Your unique ID for end user associated with transaction
140"my_best_customer_203948"
Features calculated from transaction
Show child attributes
The cleaned description of the transaction
"GOOGLE ADS"
Indicates that the transaction is a duplicate and gives the heron_id of the original
"txn_7p9fVaHJToygHX8ps4sY59"
Whether the transaction is a transfer; requires end_user_id and timestamp to be present
Indicates whether the transaction has another transaction similar to it
Whether the transaction is recurring or not; requires end_user_id and timestamp to be present
Unique ID of transaction; generated by Heron Data
"txn_8pAXmBn9PTWq9Cx5JXVp5q"
When the transaction was last updated, either by updating its enrichments or the values of the transaction itself
"2025-12-12T10:00:51.477810"
The merchant associated with the transaction
Show child attributes
Uber, Google, Intuit, debt.mca_or_rbf, debt.non_bank_business, debt.equipment_and_auto_leasing, debt.mortgage, debt.personal_non_mortgage, debt.collections, debt.bank, invoice_factoring, "mrc_MQ6m783Jf7Ewj7nk5KyJYy"
Your unique ID for transaction
140"my_favourite_transaction_231098"
ID associated with request, e.g., all transactions in same POST request will have same request_id
"req_WtcsBmM8XDkf9HktbwRZDg"
The ISO 8601 timezone aware timestamp of the transaction; takes precedence over 'date'
"2021-11-12T10:38:05Z"
Code associated with transaction to indicate the type of transaction
140"card"
Was this page helpful?