Response samples
- 200
{- "categories": [
- {
- "analytics_group": "revenue",
- "created": "2024-09-23T08:00:20.239651",
- "description": "Rent for offices, workspaces or storage facilities",
- "heron_id": "ctg_hgh56o3CcSLhPErTdyupfi",
- "label": "Rent"
}
]
}
Response samples
- 200
{- "crm_integrations": [
- {
- "config": {
- "data_source_accounts_config": null,
- "default_id": null,
- "object_configs": [ ],
- "policy_evaluation_config": null,
- "sync_file_classes": { },
- "value_mappings": [ ]
}, - "heron_id": "string",
- "is_enabled": true,
- "is_live": true,
- "provider": "salesforce"
}
]
}
Create a CRM integration
Create a CRM integration, e.g., with Salesforce
Authorizations:
Request Body schema: application/json
auth required | object Authentication details for the CRM integration |
required | object The configuration for the CRM integration |
instance_url required | string <url> Base URL of the CRM integration |
is_enabled | boolean Default: true Whether the integration is enabled |
is_live | boolean Default: true Whether the integration is live |
provider required | string Enum: "salesforce" "lendsmart" "orgmeter" "centrex" "lendsaas" The CRM provider |
secret required | string A secret key for the CRM integration |
property name* additional property | any |
Responses
Request samples
- Payload
{- "auth": { },
- "config": {
- "data_source_accounts_config": null,
- "default_id": null,
- "object_configs": [ ],
- "policy_evaluation_config": null,
- "sync_file_classes": { },
- "value_mappings": [ ]
}, - "is_enabled": true,
- "is_live": true,
- "provider": "salesforce",
- "secret": "string"
}
Response samples
- 201
{- "crm_integration": {
- "config": {
- "data_source_accounts_config": null,
- "default_id": null,
- "object_configs": [ ],
- "policy_evaluation_config": null,
- "sync_file_classes": { },
- "value_mappings": [ ]
}, - "heron_id": "string",
- "is_enabled": true,
- "is_live": true,
- "provider": "salesforce"
}
}
Patch a CRM integration
patch a CRM integration
Authorizations:
path Parameters
heron_id required | string |
Request Body schema: application/json
auth | object Authentication details for the CRM integration |
object The configuration for the CRM integration | |
instance_url | string <url> Base URL of the CRM integration |
is_enabled | boolean Default: true Whether the integration is enabled |
is_live | boolean Default: true Whether the integration is live |
provider | string Enum: "salesforce" "lendsmart" "orgmeter" "centrex" "lendsaas" The CRM provider |
secret | string A secret key for the CRM integration |
property name* additional property | any |
Responses
Request samples
- Payload
{- "auth": { },
- "config": {
- "data_source_accounts_config": null,
- "default_id": null,
- "object_configs": [ ],
- "policy_evaluation_config": null,
- "sync_file_classes": { },
- "value_mappings": [ ]
}, - "is_enabled": true,
- "is_live": true,
- "provider": "salesforce",
- "secret": "string"
}
Response samples
- 200
{- "config": {
- "data_source_accounts_config": null,
- "default_id": null,
- "object_configs": [ ],
- "policy_evaluation_config": null,
- "sync_file_classes": { },
- "value_mappings": [ ]
}, - "heron_id": "string",
- "is_enabled": true,
- "is_live": true,
- "provider": "salesforce"
}
Update a data source account
Update a data source account
Authorizations:
path Parameters
heron_id required | string |
Request Body schema: application/json
is_enabled | boolean Whether or not the account is enabled. If disabled, hides related transactions from analytics |
Responses
Request samples
- Payload
{- "is_enabled": true
}
Response samples
- 200
{- "account_id": "202348",
- "anomaly_score": 200,
- "balances": [
- {
- "closing_amount": 25000.45,
- "currency": "USD",
- "date": "2022-01-01"
}
], - "currency": "USD",
- "end_date": "2022-01-31",
- "heron_id": "dso_MwHQRzDQWnWbPT9g7VkLTS",
- "institution_name": "Chase",
- "is_enabled": true,
- "max_date": "2022-01-31",
- "min_date": "2022-01-01",
- "name": "Checking Account",
- "num_transactions": 120,
- "number": "123456789",
- "owner_name": "John Doe",
- "reference_id": "account-202348",
- "start_date": "2022-01-01",
- "transactions_match_balances": true,
- "type": "Checking"
}
Update a data source
Update a data source
Authorizations:
path Parameters
heron_id required | string |
Request Body schema: application/json
is_enabled | boolean Default: true Whether or not the data source is enabled. If disabled, hides related transactions from analytics |
Responses
Request samples
- Payload
{- "is_enabled": true
}
Response samples
- 200
{- "created": "2024-08-12T08:00:20.710739",
- "data_source_accounts": [
- {
- "account_id": "202348",
- "anomaly_score": 200,
- "enabled": true,
- "max_date": "2022-01-31",
- "min_date": "2022-01-01",
- "num_transactions": 120,
- "transactions_match_balances": true
}
], - "heron_id": "dso_DpWuDc7LBKCrNYH46qZZjL",
- "is_enabled": true,
- "last_updated": "2024-09-23T08:00:20.710761",
- "metadata": {
- "filename": "202348_JAN_2022.pdf",
- "status": "processed"
}, - "reference_id": "pdf_cvdgg9BPyn5oNryUJuvN7a",
- "status": "new",
- "type": "pdf"
}
Get data source account summary
Get a list of data sources accounts & their summarised information for a company
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
Responses
Response samples
- 200
[- {
- "data_source_account_summaries": [
- {
- "account": {
- "account_id": "202348",
- "anomaly_score": 200,
- "balances": [
- {
- "closing_amount": 25000.45,
- "currency": "USD",
- "date": "2022-01-01"
}
], - "currency": "USD",
- "end_date": "2022-01-31",
- "heron_id": "dso_MwHQRzDQWnWbPT9g7VkLTS",
- "institution_name": "Chase",
- "is_enabled": true,
- "max_date": "2022-01-31",
- "min_date": "2022-01-01",
- "name": "Checking Account",
- "num_transactions": 120,
- "number": "123456789",
- "owner_name": "John Doe",
- "reference_id": "account-202348",
- "start_date": "2022-01-01",
- "transactions_match_balances": true,
- "type": "Checking"
}, - "summary": {
- "average_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "ending_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "mca_debits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "negative_balance_days": 0,
- "no_deposits": 0,
- "no_od_nsf": 0,
- "no_revenue": 0,
- "no_withdrawals": 0,
- "non_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "starting_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_deposits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_withdrawals": {
- "amount": "1234.56",
- "currency": "USD"
}
}
}
], - "end_user": {
- "end_user_id": "a0e39933-49a8-4a1a-a200-baadef451883",
- "heron_id": "eus_QeusxHwionm5oRUQyxMSF7",
- "name": "Company Name Inc."
}
}
]
Get data sources
Get a list of data sources for a company
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
Responses
Response samples
- 200
[- {
- "created": "2024-08-12T08:00:20.710739",
- "data_source_accounts": [
- {
- "account_id": "202348",
- "anomaly_score": 200,
- "enabled": true,
- "max_date": "2022-01-31",
- "min_date": "2022-01-01",
- "num_transactions": 120,
- "transactions_match_balances": true
}
], - "heron_id": "dso_DpWuDc7LBKCrNYH46qZZjL",
- "is_enabled": true,
- "last_updated": "2024-09-23T08:00:20.710761",
- "metadata": {
- "filename": "202348_JAN_2022.pdf",
- "status": "processed"
}, - "reference_id": "pdf_cvdgg9BPyn5oNryUJuvN7a",
- "status": "new",
- "type": "pdf"
}
]
Create an email template
Create an email template used to send emails conditional on events like policy evaluation
Authorizations:
Request Body schema: application/json
html_body required | string The body of the email to send. |
name required | string [ 3 .. 50 ] characters ^[a-zA-Z0-9_-]+$ Unique name of the email template. Used to match which email template to send. Only alphanumeric characters, underscores, and dashes are allowed. |
to_address | string or null <email> Default: null The email address to send the email to |
property name* additional property | any |
Responses
Request samples
- Payload
{- "html_body": "string",
- "name": "string",
- "to_address": null
}
Response samples
- 201
{- "email_template": {
- "heron_id": "string",
- "html_body": "string",
- "name": "string",
- "to_address": null
}
}
Patch an email template
Update an email template
Authorizations:
path Parameters
heron_id required | string |
Request Body schema: application/json
html_body | string The body of the email to send. |
name | string [ 3 .. 50 ] characters ^[a-zA-Z0-9_-]+$ Unique name of the email template. Used to match which email template to send. Only alphanumeric characters, underscores, and dashes are allowed. |
to_address | string or null <email> Default: null The email address to send the email to |
property name* additional property | any |
Responses
Request samples
- Payload
{- "html_body": "string",
- "name": "string",
- "to_address": null
}
Response samples
- 201
{- "email_template": {
- "heron_id": "string",
- "html_body": "string",
- "name": "string",
- "to_address": null
}
}
Update the end user file's class
Use this endpoint to change the end user file's class. The file will be reprocessed as the new type.
Authorizations:
path Parameters
heron_id required | string |
Request Body schema: application/json
file_class | string Enum: "other" "iso_application_form" "bank_statement" "debt_summary" "email" "invoice" "drivers_licence_front" "acord_125" "loss_run_report" "driver_list" "fleet_list" "supplemental_application" "insurance_policy" "schedule_of_values" "pnl_statement" "balance_sheet" "tax_return" "void_check" "inspection_report" "inspection_report_confirmation" "combined" "money_market_statement" "commercial_financing_contract" "financing_repayment_history" |
object or null | |
reference_id | string |
Responses
Request samples
- Payload
{- "file_class": "other",
- "page_classes": {
- "property1": {
- "confidence": 1,
- "file_class": "other"
}, - "property2": {
- "confidence": 1,
- "file_class": "other"
}
}, - "reference_id": "string"
}
Response samples
- 200
{- "bank_statement": null,
- "created": "2019-08-24T14:15:22Z",
- "email": null,
- "file_class": "other",
- "filename": "string",
- "heron_id": "string",
- "iso_application": {
- "heron_id": "iso_6hBjQT9k6KP2rLCXwjUJff",
- "processing_status": "processed"
}, - "page_classes": {
- "property1": {
- "confidence": 1,
- "file_class": "other"
}, - "property2": {
- "confidence": 1,
- "file_class": "other"
}
}, - "parent_heron_id": "string",
- "reference_id": "string"
}
Trigger async parsing of an end user file
Authorizations:
path Parameters
heron_id required | string The file's heron_id |
Request Body schema: application/json
parser_id required | string Enum: "DebtPositionEmailParser" "DriversLicenceFrontParser" "Acord125Parser" "LossRunParser" "DriverListParser" "FleetListParser" "PnLStatementParser" "BalanceSheetParser" "TaxReturnParser" "VoidCheckParser" "InspectionReportConfirmationParser" "InspectionReportParser" "MoneyMarketStatementParser" "InsuranceClearingEmailParser" |
Responses
Request samples
- Payload
{- "parser_id": "DebtPositionEmailParser"
}
Get parsed results from uploaded files
Authorizations:
path Parameters
heron_id required | string The file's heron_id |
query Parameters
parser_id | string or null |
Responses
Response samples
- 200
[- {
- "created": "2019-08-24T14:15:22Z",
- "id": 0,
- "parser_id": "string",
- "parsing_status": "succeeded",
- "result": { }
}
]
Trigger splitting a combined end user file into its child files based on its page_classes
Authorizations:
path Parameters
heron_id required | string The file's heron_id |
Responses
Response samples
- 200
[- {
- "bank_statement": null,
- "created": "2019-08-24T14:15:22Z",
- "email": null,
- "file_class": "other",
- "filename": "string",
- "heron_id": "string",
- "iso_application": {
- "heron_id": "iso_6hBjQT9k6KP2rLCXwjUJff",
- "processing_status": "processed"
}, - "page_classes": {
- "property1": {
- "confidence": 1,
- "file_class": "other"
}, - "property2": {
- "confidence": 1,
- "file_class": "other"
}
}, - "parent_heron_id": "string",
- "reference_id": "string"
}
]
Get EndUserFiles
Get all files for an end user
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
Responses
Response samples
- 200
[- {
- "bank_statement": null,
- "created": "2019-08-24T14:15:22Z",
- "email": null,
- "file_class": "other",
- "filename": "string",
- "heron_id": "string",
- "iso_application": {
- "heron_id": "iso_6hBjQT9k6KP2rLCXwjUJff",
- "processing_status": "processed"
}, - "page_classes": {
- "property1": {
- "confidence": 1,
- "file_class": "other"
}, - "property2": {
- "confidence": 1,
- "file_class": "other"
}
}, - "parent_heron_id": "string",
- "reference_id": "string"
}
]
Post EndUserFile
Upload file to an end user & asynchronously classify its type
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
Request Body schema: application/json
file_base64 required | string |
file_class | string Enum: "other" "iso_application_form" "bank_statement" "debt_summary" "email" "invoice" "drivers_licence_front" "acord_125" "loss_run_report" "driver_list" "fleet_list" "supplemental_application" "insurance_policy" "schedule_of_values" "pnl_statement" "balance_sheet" "tax_return" "void_check" "inspection_report" "inspection_report_confirmation" "combined" "money_market_statement" "commercial_financing_contract" "financing_repayment_history" |
filename required | string |
reference_id | string or null |
Responses
Request samples
- Payload
{- "file_base64": "string",
- "file_class": "other",
- "filename": "string",
- "reference_id": "string"
}
Response samples
- 201
{- "bank_statement": null,
- "created": "2019-08-24T14:15:22Z",
- "email": null,
- "file_class": "other",
- "filename": "string",
- "heron_id": "string",
- "iso_application": {
- "heron_id": "iso_6hBjQT9k6KP2rLCXwjUJff",
- "processing_status": "processed"
}, - "page_classes": {
- "property1": {
- "confidence": 1,
- "file_class": "other"
}, - "property2": {
- "confidence": 1,
- "file_class": "other"
}
}, - "parent_heron_id": "string",
- "reference_id": "string"
}
List EndUsers
Get a list of EndUsers
Authorizations:
query Parameters
include_scorecard_metrics | boolean Default: false Example: include_scorecard_metrics=true Whether to include scorecard metrics for each end user (under field criteria) |
end_user_id | string or null Default: null Example: end_user_id=your_end_user_id Filter by ID associated with end_user_id field in transactions |
heron_id | string or null Default: null Example: heron_id=eus_PZSppRdfDEU9QSJeeJxFYB Unique ID generated by Heron |
order_by | string Default: "last_updated_desc" Enum: "last_updated_desc" "last_updated_asc" "created_desc" "created_asc" Order to return end users by |
page | integer >= 1 Default: 1 Pagination page number |
status | string or null Default: null Enum: "new" "ready" "processed" "reviewed" "review_requested" "failed" Example: status=reviewed Filter by status of end user |
is_portfolio | boolean or null Default: null Example: is_portfolio=true Whether the end user is part of a lending portfolio |
limit | integer [ 1 .. 10000 ] Default: 1000 Pagination limit per page |
name | string or null Default: null Example: name=your_end_user_name Filter by name associated with end user |
include_data_sources | boolean Default: false Example: include_data_sources=true Whether the to include data sources for each end user |
Responses
Response samples
- 200
{- "_meta": {
- "limit": 1000,
- "next_url": "string",
- "page": 1,
- "pages": 3,
- "prev_url": "string",
- "total": 3500
}, - "end_users": [
- {
- "confidence": 0.42,
- "created": "2024-08-12T08:00:21.342487",
- "criteria": [
- {
- "context": "higher_is_better",
- "currency": "string",
- "date_range": "last_180_days",
- "description": "The number of unique transactions with a timestamp",
- "group": "data_quality",
- "label": "unique_transactions",
- "status": "not_available",
- "unit": "n",
- "value": 42.42
}
], - "data_sources": [
- {
- "status": "new",
- "type": "pdf"
}
], - "end_user_id": "a0e39933-49a8-4a1a-a200-baadef451883",
- "heron_id": "eus_QeusxHwionm5oRUQyxMSF7",
- "is_portfolio": true,
- "last_processed_at": "2024-09-23T08:00:21.342743",
- "last_updated": "2024-09-23T08:00:21.342536",
- "name": "Company Name Inc.",
- "profit_and_loss_layout": null,
- "status": "ready"
}
]
}
Create EndUser
Create a new end user. If transactions have previously been sent for this end_user_id
, use PUT end_users
to update instead.
Authorizations:
Request Body schema: application/json
object (EndUserPostParams) | |||||||||
|
Responses
Request samples
- Payload
{- "end_user": {
- "end_user_id": "a0e39933-49a8-4a1a-a200-baadef451883",
- "is_portfolio": true,
- "name": "Company Name Inc.",
- "profit_and_loss_layout": null
}
}
Response samples
- 201
{- "end_user": {
- "confidence": 0.42,
- "created": "2024-08-12T08:00:21.342487",
- "criteria": [
- {
- "context": "higher_is_better",
- "currency": "string",
- "date_range": "last_180_days",
- "description": "The number of unique transactions with a timestamp",
- "group": "data_quality",
- "label": "unique_transactions",
- "status": "not_available",
- "unit": "n",
- "value": 42.42
}
], - "data_sources": [
- {
- "status": "new",
- "type": "pdf"
}
], - "end_user_id": "a0e39933-49a8-4a1a-a200-baadef451883",
- "heron_id": "eus_QeusxHwionm5oRUQyxMSF7",
- "is_portfolio": true,
- "last_processed_at": "2024-09-23T08:00:21.342743",
- "last_updated": "2024-09-23T08:00:21.342536",
- "name": "Company Name Inc.",
- "profit_and_loss_layout": null,
- "status": "ready"
}
}
Update EndUser
Confirm an end user is ready for async procesing by sending a status of "ready". The end_user_id
must have previously been sent with at least one Transaction.
Authorizations:
Request Body schema: application/json
Dictionary representing an EndUser
object (EndUser) | |||||||||||
|
Responses
Callbacks
Request samples
- Payload
{- "end_user": {
- "end_user_id": "a0e39933-49a8-4a1a-a200-baadef451883",
- "is_portfolio": true,
- "name": "Company Name Inc.",
- "profit_and_loss_layout": null,
- "status": "ready"
}
}
Response samples
- 200
{- "end_user": {
- "confidence": 0.42,
- "created": "2024-08-12T08:00:21.342487",
- "criteria": [
- {
- "context": "higher_is_better",
- "currency": "string",
- "date_range": "last_180_days",
- "description": "The number of unique transactions with a timestamp",
- "group": "data_quality",
- "label": "unique_transactions",
- "status": "not_available",
- "unit": "n",
- "value": 42.42
}
], - "data_sources": [
- {
- "status": "new",
- "type": "pdf"
}
], - "end_user_id": "a0e39933-49a8-4a1a-a200-baadef451883",
- "heron_id": "eus_QeusxHwionm5oRUQyxMSF7",
- "is_portfolio": true,
- "last_processed_at": "2024-09-23T08:00:21.342743",
- "last_updated": "2024-09-23T08:00:21.342536",
- "name": "Company Name Inc.",
- "profit_and_loss_layout": null,
- "status": "ready"
}
}
Callback payload samples
{- "created": "2019-08-24T14:15:22Z",
- "data": {
- "end_user_id": "myenduser",
- "heron_id": "eus_Eqio3Y4dhyNiMphrXwG58p",
- "status": "processed"
}, - "meta": { },
- "topic": "string"
}
Get EndUser by heron_id or end_user_id
Get an end user using its end_user_id or heron_id
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
Responses
Response samples
- 200
{- "end_user": {
- "confidence": 0.42,
- "created": "2024-08-12T08:00:21.342487",
- "criteria": [
- {
- "context": "higher_is_better",
- "currency": "string",
- "date_range": "last_180_days",
- "description": "The number of unique transactions with a timestamp",
- "group": "data_quality",
- "label": "unique_transactions",
- "status": "not_available",
- "unit": "n",
- "value": 42.42
}
], - "data_sources": [
- {
- "status": "new",
- "type": "pdf"
}
], - "end_user_id": "a0e39933-49a8-4a1a-a200-baadef451883",
- "heron_id": "eus_QeusxHwionm5oRUQyxMSF7",
- "is_portfolio": true,
- "last_processed_at": "2024-09-23T08:00:21.342743",
- "last_updated": "2024-09-23T08:00:21.342536",
- "name": "Company Name Inc.",
- "profit_and_loss_layout": null,
- "status": "ready"
}
}
Get EndUser emails
Get the emails associated with an end user
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
Responses
Response samples
- 200
[- {
- "created": "2019-08-24T14:15:22Z",
- "date_sent": "2019-08-24T14:15:22Z",
- "date_sent_string": "string",
- "from_address": "string",
- "from_address_domain": "string",
- "from_name": "string",
- "heron_id": "string",
- "html_body": "string",
- "html_or_text_body": "string",
- "integration_id": 0,
- "subject": "string",
- "subject_cleaned": "string",
- "text_body": "string"
}
]
Get EndUser information
Get the company details of an end user including loan information
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
Responses
Response samples
- 200
{- "amount_requested": 0,
- "annual_revenue": 0,
- "business_start_date": "2019-08-24",
- "company_billing_address": {
- "city": "string",
- "line_1": "string",
- "line_2": "string",
- "state": "string",
- "zip": "string"
}, - "company_email": "string",
- "company_legal_business_name": "string",
- "company_phone_number": "string",
- "company_physical_address": {
- "city": "string",
- "line_1": "string",
- "line_2": "string",
- "state": "string",
- "zip": "string"
}, - "company_website": "string",
- "dba": "string",
- "federal_tax_id": "string",
- "industry_type": "string",
- "loan_purpose": "string",
- "monthly_revenue": 0,
- "naics": "string",
- "owner_1": {
- "date_of_birth": "1990-01-01",
- "email_address": "string",
- "first_name": "string",
- "home_address": {
- "city": "string",
- "line_1": "string",
- "line_2": "string",
- "state": "string",
- "zip": "string"
}, - "home_phone": "string",
- "last_name": "string",
- "mobile_phone": "string",
- "ownership_percentage": 100,
- "social_security_number": "string"
}, - "owner_2": {
- "date_of_birth": "1990-01-01",
- "email_address": "string",
- "first_name": "string",
- "home_address": {
- "city": "string",
- "line_1": "string",
- "line_2": "string",
- "state": "string",
- "zip": "string"
}, - "home_phone": "string",
- "last_name": "string",
- "mobile_phone": "string",
- "ownership_percentage": 100,
- "social_security_number": "string"
}, - "predicted_industry_probability": 0,
- "source_type": "iso_application_form",
- "state_of_incorporation": "string",
- "type_of_business_entity": "string"
}
Patch EndUser information
Update the end user information
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
Request Body schema: application/json
amount_requested | number |
annual_revenue | number |
business_start_date | string <date> |
object (Address) | |
company_email | string |
company_legal_business_name | string |
company_phone_number | string |
object (Address) | |
company_website | string |
dba | string Doing business as |
federal_tax_id | string |
industry_type | string |
loan_purpose | string |
monthly_revenue | number |
naics | string |
object (Owner) | |
object (Owner) | |
predicted_industry_probability | number |
source_type | string Enum: "api" "iso_application_form" "heron_industry_classifier" "rel6_industry_classifier" Source of the end user information |
state_of_incorporation | string |
type_of_business_entity | string |
Responses
Request samples
- Payload
{- "amount_requested": 0,
- "annual_revenue": 0,
- "business_start_date": "2019-08-24",
- "company_billing_address": {
- "city": "string",
- "line_1": "string",
- "line_2": "string",
- "state": "string",
- "zip": "string"
}, - "company_email": "string",
- "company_legal_business_name": "string",
- "company_phone_number": "string",
- "company_physical_address": {
- "city": "string",
- "line_1": "string",
- "line_2": "string",
- "state": "string",
- "zip": "string"
}, - "company_website": "string",
- "dba": "string",
- "federal_tax_id": "string",
- "industry_type": "string",
- "loan_purpose": "string",
- "monthly_revenue": 0,
- "naics": "string",
- "owner_1": {
- "date_of_birth": "1990-01-01",
- "email_address": "string",
- "first_name": "string",
- "home_address": {
- "city": "string",
- "line_1": "string",
- "line_2": "string",
- "state": "string",
- "zip": "string"
}, - "home_phone": "string",
- "last_name": "string",
- "mobile_phone": "string",
- "ownership_percentage": 100,
- "social_security_number": "string"
}, - "owner_2": {
- "date_of_birth": "1990-01-01",
- "email_address": "string",
- "first_name": "string",
- "home_address": {
- "city": "string",
- "line_1": "string",
- "line_2": "string",
- "state": "string",
- "zip": "string"
}, - "home_phone": "string",
- "last_name": "string",
- "mobile_phone": "string",
- "ownership_percentage": 100,
- "social_security_number": "string"
}, - "predicted_industry_probability": 0,
- "source_type": "iso_application_form",
- "state_of_incorporation": "string",
- "type_of_business_entity": "string"
}
Response samples
- 200
{- "amount_requested": 0,
- "annual_revenue": 0,
- "business_start_date": "2019-08-24",
- "company_billing_address": {
- "city": "string",
- "line_1": "string",
- "line_2": "string",
- "state": "string",
- "zip": "string"
}, - "company_email": "string",
- "company_legal_business_name": "string",
- "company_phone_number": "string",
- "company_physical_address": {
- "city": "string",
- "line_1": "string",
- "line_2": "string",
- "state": "string",
- "zip": "string"
}, - "company_website": "string",
- "dba": "string",
- "federal_tax_id": "string",
- "industry_type": "string",
- "loan_purpose": "string",
- "monthly_revenue": 0,
- "naics": "string",
- "owner_1": {
- "date_of_birth": "1990-01-01",
- "email_address": "string",
- "first_name": "string",
- "home_address": {
- "city": "string",
- "line_1": "string",
- "line_2": "string",
- "state": "string",
- "zip": "string"
}, - "home_phone": "string",
- "last_name": "string",
- "mobile_phone": "string",
- "ownership_percentage": 100,
- "social_security_number": "string"
}, - "owner_2": {
- "date_of_birth": "1990-01-01",
- "email_address": "string",
- "first_name": "string",
- "home_address": {
- "city": "string",
- "line_1": "string",
- "line_2": "string",
- "state": "string",
- "zip": "string"
}, - "home_phone": "string",
- "last_name": "string",
- "mobile_phone": "string",
- "ownership_percentage": 100,
- "social_security_number": "string"
}, - "predicted_industry_probability": 0,
- "source_type": "iso_application_form",
- "state_of_incorporation": "string",
- "type_of_business_entity": "string"
}
Enrich transactions of EndUser
Enriches transactions of an end user identified by its end_user_id or heron_id. There is an optional priority
parameter that can be set to high
to prioritize the enrichment over normal
(default) priority. High priority enrichment is only enabled for enterprise-level accounts. Please contact support@herondata.io to upgrade your account.
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
query Parameters
priority | string Default: "normal" Enum: "normal" "high" Priority for async enrichment |
Responses
Response samples
- 200
{- "end_user": {
- "confidence": 0.42,
- "created": "2024-08-12T08:00:21.342487",
- "criteria": [
- {
- "context": "higher_is_better",
- "currency": "string",
- "date_range": "last_180_days",
- "description": "The number of unique transactions with a timestamp",
- "group": "data_quality",
- "label": "unique_transactions",
- "status": "not_available",
- "unit": "n",
- "value": 42.42
}
], - "data_sources": [
- {
- "status": "new",
- "type": "pdf"
}
], - "end_user_id": "a0e39933-49a8-4a1a-a200-baadef451883",
- "heron_id": "eus_QeusxHwionm5oRUQyxMSF7",
- "is_portfolio": true,
- "last_processed_at": "2024-09-23T08:00:21.342743",
- "last_updated": "2024-09-23T08:00:21.342536",
- "name": "Company Name Inc.",
- "profit_and_loss_layout": null,
- "status": "ready"
}
}
Get EndUser balance
Get balance for given EndUser on a daily and account granularity
Authorizations:
query Parameters
timestamp_min | string or null <date-time> Default: null Example: timestamp_min=2024-09-23T08:00:20.608685 Deprecated (use date_min instead). Filter for transactions with timestamp after the input value |
date_max | string or null <date> Default: null Example: date_max=2024-09-22 Filter for transactions with date earlier than the input value (inclusive). It has precedence over timestamp_max |
end_user_id | string or null Default: null Example: end_user_id=your_end_user_id end_user_id for statistics; either end_user_id or end_user_heron_id is required |
timestamp_max | string or null <date-time> Default: null Example: timestamp_max=2024-09-22T08:00:20.608762 Deprecated (use date_max instead). Filter for transactions with timestamp earlier than the input value |
end_user_heron_id | string or null Default: null Example: end_user_heron_id=eus_kWKYd4Fs3WDsarRWbNoXNU Heron-generated id for end user; either end_user_id or end_user_heron_id is required |
date_min | string or null <date> Default: null Example: date_min=2024-09-23 Filter for transactions with timestamp after the input value (inclusive). It has precedence over timestamp_min |
to_currency | string or null Enum: "GBP" "USD" "EUR" Example: to_currency=USD ISO 4217 currency code to convert to |
include_forecast | boolean Default: false If true, forecasts the balances of each account |
Responses
Response samples
- 200
{- "daily_balances": [
- {
- "accounts": [
- {
- "account_id": "string",
- "account_info": {
- "currency": "USD",
- "institution_name": "Chase",
- "name": "Checking Account",
- "number": "123456789",
- "owner_name": "John Doe",
- "type": "Checking"
}, - "balance": 0,
- "balance_converted": 0,
- "currency": "USD",
- "currency_converted": "USD",
- "is_computed": true,
- "is_latest": true,
- "timestamp": "2019-08-24T14:15:22Z"
}
], - "accounts_not_converted": [
- {
- "account_id": "string",
- "account_info": {
- "currency": "USD",
- "institution_name": "Chase",
- "name": "Checking Account",
- "number": "123456789",
- "owner_name": "John Doe",
- "type": "Checking"
}, - "balance": 0,
- "balance_converted": 0,
- "currency": "USD",
- "currency_converted": "USD",
- "is_computed": true,
- "is_latest": true,
- "timestamp": "2019-08-24T14:15:22Z"
}
], - "balance": 0,
- "currency": "USD",
- "date": "2019-08-24"
}
], - "forecasted": [
- {
- "account_id": "string",
- "balances": [
- {
- "date": "2024-09-23",
- "predicted": 42.42,
- "predicted_lower": 4.24,
- "predicted_upper": 420.42
}
], - "currency": "string"
}
], - "summary": {
- "accounts": [
- {
- "account_id": "string",
- "account_info": {
- "currency": "USD",
- "institution_name": "Chase",
- "name": "Checking Account",
- "number": "123456789",
- "owner_name": "John Doe",
- "type": "Checking"
}, - "balance": 0,
- "balance_converted": 0,
- "currency": "USD",
- "currency_converted": "USD",
- "is_computed": true,
- "is_latest": true,
- "timestamp": "2019-08-24T14:15:22Z"
}
], - "accounts_not_converted": [
- {
- "account_id": "string",
- "account_info": {
- "currency": "USD",
- "institution_name": "Chase",
- "name": "Checking Account",
- "number": "123456789",
- "owner_name": "John Doe",
- "type": "Checking"
}, - "balance": 0,
- "balance_converted": 0,
- "currency": "USD",
- "currency_converted": "USD",
- "is_computed": true,
- "is_latest": true,
- "timestamp": "2019-08-24T14:15:22Z"
}
], - "balance": 0,
- "currency": "USD",
- "date": "2019-08-24"
}
}
Get EndUser forecasts
Get forecast amounts for a given EndUser and category
Authorizations:
query Parameters
category_label | string Example: category_label=Revenue Label of category to be forecasted; either category_heron_id or category_label must be present |
date_granularity | string Default: "month" Enum: "week" "month" Example: date_granularity=month Aggregate results over time, i.e., aggregate by week or by month |
end_user_id | string or null Default: null Example: end_user_id=your_end_user_id end_user_id for statistics; either end_user_id or end_user_heron_id is required |
end_user_heron_id | string or null Default: null Example: end_user_heron_id=eus_kWKYd4Fs3WDsarRWbNoXNU Heron-generated id for end user; either end_user_id or end_user_heron_id is required |
from_date | string or null <date> Default: null Example: from_date=2022-01-01 The earliest transaction timestamp date to use in forecasting |
category_heron_id | string Example: category_heron_id=ctg_Lcz4MwrjSyECto9sjmdw5T Heron ID of category to be forecasted; either category_heron_id or category_label must be present |
to_date | string or null <date> Default: null Example: to_date=2022-01-31 The latest transaction timestamp date to use in forecasting |
to_currency | string or null Enum: "GBP" "USD" "EUR" Example: to_currency=USD ISO 4217 currency code to convert to |
Responses
Response samples
- 200
[- {
- "currency": "USD",
- "date": "2024-09-23",
- "predicted": 42.42,
- "predicted_lower": 4.24,
- "predicted_upper": 420.42
}
]
Get EndUser statistics
Get summarized statistics for a given EndUser
Authorizations:
query Parameters
date_granularity | string Default: "month" Enum: "day" "week" "month" "quarter" "year" Example: date_granularity=month Aggregate results over time, e.g., by week or by quarter |
end_user_id | string or null Default: null Example: end_user_id=your_end_user_id end_user_id for statistics; either end_user_id or end_user_heron_id is required |
merchant_heron_ids | Array of strings Default: [] Example: merchant_heron_ids=mrc_fUHgpoEWCKzqX5sZ5LPzmY&merchant_heron_ids=mrc_aYiWgXRoN3gh68t5JHa7rX Filter by specific merchants |
from_date | string or null <date> Default: null Example: from_date=2024-09-23 Filter for transactions with timestamp after the input value (as date) |
end_user_heron_id | string or null Default: null Example: end_user_heron_id=eus_kWKYd4Fs3WDsarRWbNoXNU Heron-generated id for end user; either end_user_id or end_user_heron_id is required |
group_by | string Default: "category" Enum: "category" "merchant" Example: group_by=category Pivot results by merchant or by category |
to_date | string or null <date> Default: null Example: to_date=2024-09-22 Filter for transactions with timestamp before the input value (as date) |
to_currency | string or null Enum: "GBP" "USD" "EUR" Example: to_currency=USD ISO 4217 currency code to convert to |
category_heron_ids | Array of strings Default: [] Example: category_heron_ids=ctg_V4fccYGFBmYSqYsbydvbue&category_heron_ids=ctg_Zib37ZiDDPX7qrJ7zzvE8L Filter by specific categories |
Responses
Response samples
- 200
{- "statistics": [
- {
- "currency": "USD",
- "dt": "2024-09-23",
- "heron_id": "mrc_dXCAeTFaEUigtabPs35nzP",
- "label": "Revenue",
- "metrics": {
- "inflow": {
- "amount": 42.42,
- "avg_amount": 1.01,
- "n": 42
}, - "net": {
- "amount": 42.42,
- "avg_amount": 1.01,
- "n": 42
}, - "outflow": {
- "amount": 42.42,
- "avg_amount": 1.01,
- "n": 42
}
}
}
]
}
Get EndUser anomalies
Get anomalies for given EndUser given a category label or heron id
Authorizations:
path Parameters
end_user_id_or_heron_id required | string The |
query Parameters
category_label_or_heron_id required | string Example: category_label_or_heron_id=Revenue Label or Heron ID of category to find anomalies for |
Responses
Response samples
- 200
[- {
- "amount": 42.42,
- "anomaly_score": 0.5,
- "currency": "USD",
- "heron_id": "txn_8DfT2bkDsgXWzLYUPQgwYk",
- "reference_id": "1342db06-feb7-4c33-a157-4351d74a98e9"
}
]
Get EndUser bank statement summary
Get the bank statement summary by month for an end user
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
query Parameters
grouping | string Default: "by_month" Enum: "by_month" "by_data_source_account_heron_id" "rolling_30_days_from_last_txn" "rolling_30_days_from_today" "by_month_by_data_source_account_heron_id" Determines how to group transactions. It supports calendar month (by_month) or rolling 30-day period (from last txns with rolling_30_days_from_last_txn or from today with rolling_30_days_from_today) |
num_full_calendar_months | integer or null >= 1 Default: null Number of full calendar months to show in the summary |
Responses
Response samples
- 200
{- "average": {
- "average_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "ending_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "mca_debits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "negative_balance_days": 0,
- "no_deposits": 0,
- "no_od_nsf": 0,
- "no_revenue": 0,
- "no_withdrawals": 0,
- "non_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "starting_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_deposits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_withdrawals": {
- "amount": "1234.56",
- "currency": "USD"
}
}, - "by_data_source_account_heron_id": {
- "property1": {
- "average_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "ending_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "mca_debits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "negative_balance_days": 0,
- "no_deposits": 0,
- "no_od_nsf": 0,
- "no_revenue": 0,
- "no_withdrawals": 0,
- "non_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "starting_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_deposits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_withdrawals": {
- "amount": "1234.56",
- "currency": "USD"
}
}, - "property2": {
- "average_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "ending_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "mca_debits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "negative_balance_days": 0,
- "no_deposits": 0,
- "no_od_nsf": 0,
- "no_revenue": 0,
- "no_withdrawals": 0,
- "non_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "starting_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_deposits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_withdrawals": {
- "amount": "1234.56",
- "currency": "USD"
}
}
}, - "by_month": {
- "property1": {
- "average_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "ending_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "mca_debits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "negative_balance_days": 0,
- "no_deposits": 0,
- "no_od_nsf": 0,
- "no_revenue": 0,
- "no_withdrawals": 0,
- "non_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "starting_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_deposits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_withdrawals": {
- "amount": "1234.56",
- "currency": "USD"
}
}, - "property2": {
- "average_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "ending_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "mca_debits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "negative_balance_days": 0,
- "no_deposits": 0,
- "no_od_nsf": 0,
- "no_revenue": 0,
- "no_withdrawals": 0,
- "non_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "starting_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_deposits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_withdrawals": {
- "amount": "1234.56",
- "currency": "USD"
}
}
}, - "by_month_by_data_source_account_heron_id": {
- "property1": {
- "property1": {
- "average_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "ending_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "mca_debits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "negative_balance_days": 0,
- "no_deposits": 0,
- "no_od_nsf": 0,
- "no_revenue": 0,
- "no_withdrawals": 0,
- "non_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "starting_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_deposits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_withdrawals": {
- "amount": "1234.56",
- "currency": "USD"
}
}, - "property2": {
- "average_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "ending_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "mca_debits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "negative_balance_days": 0,
- "no_deposits": 0,
- "no_od_nsf": 0,
- "no_revenue": 0,
- "no_withdrawals": 0,
- "non_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "starting_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_deposits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_withdrawals": {
- "amount": "1234.56",
- "currency": "USD"
}
}
}, - "property2": {
- "property1": {
- "average_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "ending_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "mca_debits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "negative_balance_days": 0,
- "no_deposits": 0,
- "no_od_nsf": 0,
- "no_revenue": 0,
- "no_withdrawals": 0,
- "non_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "starting_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_deposits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_withdrawals": {
- "amount": "1234.56",
- "currency": "USD"
}
}, - "property2": {
- "average_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "ending_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "mca_debits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "negative_balance_days": 0,
- "no_deposits": 0,
- "no_od_nsf": 0,
- "no_revenue": 0,
- "no_withdrawals": 0,
- "non_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "starting_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_deposits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_withdrawals": {
- "amount": "1234.56",
- "currency": "USD"
}
}
}
}, - "grouping": "string",
- "rolling_30_days_from_last_txn": {
- "property1": {
- "average_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "ending_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "mca_debits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "negative_balance_days": 0,
- "no_deposits": 0,
- "no_od_nsf": 0,
- "no_revenue": 0,
- "no_withdrawals": 0,
- "non_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "starting_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_deposits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_withdrawals": {
- "amount": "1234.56",
- "currency": "USD"
}
}, - "property2": {
- "average_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "ending_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "mca_debits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "negative_balance_days": 0,
- "no_deposits": 0,
- "no_od_nsf": 0,
- "no_revenue": 0,
- "no_withdrawals": 0,
- "non_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "starting_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_deposits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_withdrawals": {
- "amount": "1234.56",
- "currency": "USD"
}
}
}, - "rolling_30_days_from_today": {
- "property1": {
- "average_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "ending_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "mca_debits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "negative_balance_days": 0,
- "no_deposits": 0,
- "no_od_nsf": 0,
- "no_revenue": 0,
- "no_withdrawals": 0,
- "non_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "starting_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_deposits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_withdrawals": {
- "amount": "1234.56",
- "currency": "USD"
}
}, - "property2": {
- "average_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "ending_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "mca_debits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "negative_balance_days": 0,
- "no_deposits": 0,
- "no_od_nsf": 0,
- "no_revenue": 0,
- "no_withdrawals": 0,
- "non_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "starting_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_deposits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_withdrawals": {
- "amount": "1234.56",
- "currency": "USD"
}
}
}, - "total": {
- "average_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "ending_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "mca_debits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "negative_balance_days": 0,
- "no_deposits": 0,
- "no_od_nsf": 0,
- "no_revenue": 0,
- "no_withdrawals": 0,
- "non_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "starting_balance": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_deposits": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_revenue": {
- "amount": "1234.56",
- "currency": "USD"
}, - "total_withdrawals": {
- "amount": "1234.56",
- "currency": "USD"
}
}
}
Get EndUser metric benchmarks
Get the benchmarks for each metric for an end user
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
Responses
Response samples
- 200
{- "benchmarks": [
- {
- "date_range": "last_180_days",
- "label": "unique_transactions",
- "percentile": 0.75,
- "rank": 22,
- "sample_size": 42,
- "scope": "user"
}
]
}
Get EndUser Heron Score (beta)
Get Heron Score for end user with a breakdown of the feature group contributions which resulted in the score. The score is calculated for the day of last transaction. This is a beta feature and is subject to change.
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
query Parameters
date | string or null <date> Default: null Example: date=2023-01-19 Cut-off date to consider transactions to for calculating heron score (inclusive) |
min_category_confidence | number or null Default: null Example: min_category_confidence=0.8 Minimum company categorisation confidence to calculate Heron Score |
Responses
Response samples
- 200
{- "data_quality_issues": [
- "transactions_without_timestamps"
], - "feature_groups_contributions": {
- "property1": {
- "relative_contribution": 0,
- "relative_population_avg": 0
}, - "property2": {
- "relative_contribution": 0,
- "relative_population_avg": 0
}
}, - "predicted_at": "2019-08-24T14:15:22Z",
- "reference_timestamp": "2019-08-24T14:15:22Z",
- "status": "not_available",
- "value": 0
}
Get EndUser industry
Predict the industry of the end user based on its name
Authorizations:
path Parameters
end_user_id_or_heron_id required | string The |
query Parameters
naics_code_max_digits | integer [ 2 .. 6 ] Example: naics_code_max_digits=6 Maximum number of digits in NAICS code |
naics_code_min_digits | integer [ 2 .. 6 ] Example: naics_code_min_digits=2 Minimum number of digits in NAICS code |
Responses
Response samples
- 200
{- "label": "Fruit and Vegetable Preserving and Specialty Food Manufacturing",
- "probability": 0.42,
- "taxonomy": "naics",
- "taxonomy_value": "3114"
}
Get EndUser merchant summary
Get the summary of transactions by merchant for an end user for a given category
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
query Parameters
category_label_or_heron_id required | Array of strings non-empty |
Responses
Response samples
- 200
{- "by_merchant_summary": [
- {
- "group": "string",
- "heron_id": "string",
- "inflow_metrics": {
- "amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "changed_in_last_90_days": true,
- "count": 0,
- "duration_days": 0,
- "estimated_monthly_amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "frequency": "not_enough_data",
- "max_amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "max_timestamp": "2019-08-24T14:15:22Z",
- "mean_amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "mean_interval_days": 0,
- "median_amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "min_amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "min_timestamp": "2019-08-24T14:15:22Z",
- "mode_amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "mode_interval_days": 0,
- "std_dev_amount": {
- "amount": "1234.56",
- "currency": "USD"
}
}, - "name": "string",
- "net_metrics": {
- "amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "changed_in_last_90_days": true,
- "count": 0,
- "duration_days": 0,
- "estimated_monthly_amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "frequency": "not_enough_data",
- "max_amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "max_timestamp": "2019-08-24T14:15:22Z",
- "mean_amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "mean_interval_days": 0,
- "median_amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "min_amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "min_timestamp": "2019-08-24T14:15:22Z",
- "mode_amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "mode_interval_days": 0,
- "std_dev_amount": {
- "amount": "1234.56",
- "currency": "USD"
}
}, - "outflow_metrics": {
- "amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "changed_in_last_90_days": true,
- "count": 0,
- "duration_days": 0,
- "estimated_monthly_amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "frequency": "not_enough_data",
- "max_amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "max_timestamp": "2019-08-24T14:15:22Z",
- "mean_amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "mean_interval_days": 0,
- "median_amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "min_amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "min_timestamp": "2019-08-24T14:15:22Z",
- "mode_amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "mode_interval_days": 0,
- "std_dev_amount": {
- "amount": "1234.56",
- "currency": "USD"
}
}
}
]
}
Get EndUser named dates
Get the named dates associated with an end user, e.g., date of last transaction
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
Responses
Response samples
- 200
{- "named_dates": [
- {
- "date": "2024-09-23",
- "name": "last_transaction"
}
]
}
Get EndUser cashflow P&L
Calculates the cashflow profit & loss table for an end user, based on the layout defined (if any)
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
query Parameters
dates_ascending | boolean Default: false If true, dates are sorted left to right by ascending order. False by default, i.e., by default sorted in descending date order so more recent dates are first |
to_date | string or null <date> Default: null Example: to_date=2022-01-31 The latest transaction timestamp date to use |
from_date | string or null <date> Default: null Example: from_date=2022-01-01 The earliest transaction timestamp date to use |
currency | string or null Enum: "GBP" "USD" "EUR" Example: currency=USD ISO 4217 currency code for balance |
Responses
Response samples
- 200
{- "dates": [
- "2019-08-24"
], - "sections": [
- {
- "metrics": [
- {
- "confidence": 0,
- "indent": 0,
- "is_ratio": true,
- "name": "string",
- "values": [
- 0
]
}
], - "name": "string",
- "slug": "string"
}
]
}
Update EndUser P&L layout
Update the profit and loss layout for the end user, which determines how the profit and loss table is calculated
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
Request Body schema: application/json
category_labels required | Array of strings non-empty List of category labels to assign to a different section |
section_slug required | string Slug of section to assign labels to |
Responses
Request samples
- Payload
{- "category_labels": [
- "Postage"
], - "section_slug": "operational_expenses"
}
Response samples
- 200
{- "sections": [
- {
- "labels": [
- "string"
], - "metrics": [
- {
- "denominator": {
- "labels": [
- "string"
], - "sections": [
- "string"
]
}, - "indent": 0,
- "is_growth": true,
- "name": "string",
- "numerator": {
- "labels": [
- "string"
], - "sections": [
- "string"
]
}
}
], - "name": "string",
- "slug": "string"
}
]
}
Get EndUser recurring transactions report
Get a report of recurring transactions grouped by merchant or counterparty for an end user
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
Responses
Response samples
- 200
[- {
- "avg_amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "avg_confidence": 0,
- "counterparty": "string",
- "frequency": "not_enough_data",
- "merchant_name": "string",
- "transactions": [
- {
- "amount": {
- "amount": "1234.56",
- "currency": "USD"
}, - "category_confidence": 0,
- "category_heron_id": "string",
- "category_label": "string",
- "counterparty": "string",
- "description": "string",
- "heron_id": "string",
- "merchant_heron_id": "string",
- "merchant_name": "string",
- "timestamp": "2019-08-24T14:15:22Z"
}
]
}
]
Get EndUser scorecard
Get scorecard metrics and rule violations for a user
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
query Parameters
date | string or null <date> Default: null Example: date=2023-01-19 Cut-off date to consider transactions to for calculating scorecard (inclusive) |
named_date | string or null Default: null Enum: "end_user_created" "end_user_last_updated" "last_transaction" "end_user_last_enriched" "last_data_source_end_date_or_transaction_timestamp" "custom_date" Example: named_date=end_user_created Qualitative description for date to calculate scorecard |
Responses
Response samples
- 200
{- "metrics": [
- {
- "context": "higher_is_better",
- "currency": "string",
- "date_range": "last_180_days",
- "description": "The number of unique transactions with a timestamp",
- "group": "data_quality",
- "label": "unique_transactions",
- "status": "not_available",
- "unit": "n",
- "value": 42.42
}
], - "rule_violations": [
- {
- "metric": {
- "context": "higher_is_better",
- "currency": "string",
- "date_range": "last_180_days",
- "description": "The number of unique transactions with a timestamp",
- "group": "data_quality",
- "label": "unique_transactions",
- "status": "not_available",
- "unit": "n",
- "value": 42.42
}, - "rule": {
- "condition": "equal",
- "created": "2024-08-12T08:00:21.449196",
- "date_range": "last_180_days",
- "group": "data_quality_datasource",
- "heron_id": "rul_dPPDtKmchm9NLWYicMeouh",
- "last_updated": "2024-09-23T08:00:21.449239",
- "metric_label": "unique_transactions",
- "name": "notify_if_debt_investment_count_gt_0_last_180d",
- "selector": {
- "is_portfolio": true
}, - "value": 42.42,
- "value_str": "mrc_12345678ijwdd321d921"
}
}
]
}
Request EndUser scorecard
Request scorecard metrics for a date and end user
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
query Parameters
date required | string <date> Example: date=2023-01-19 Cut-off date to consider transactions to for calculating scorecard (inclusive) |
Responses
Response samples
- 202
{- "message": "string"
}
Bulk create category feedback for an end user
Provide bulk feedback on Transaction Categories for a specified end user
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
query Parameters
high_priority | boolean Default: false Whether to process the feedback with high priority |
Request Body schema: application/json
A list of objects containing a Transaction's heron id and the suggested Category. If you provide a heron_id
for Category, you don't need to provide other fields. If heron_id
is provided, we disregard label
.
required | object (CategoryFeedback) |
source | string or null <= 120 characters Default: null your identifier for where the feedback comes from e.g. bob_the_underwriter |
transaction_heron_ids | Array of strings Default: [] List of transaction heron IDs |
transaction_reference_ids | Array of strings Default: [] List of transaction reference IDs |
Responses
Request samples
- Payload
{- "category": {
- "heron_id": "ctg_nsTZfziidHsCMyq4qVTU3Z",
- "label": "Insurance"
}, - "source": null,
- "transaction_heron_ids": [ ],
- "transaction_reference_ids": [ ]
}
Response samples
- 201
{- "num_annotations": 1
}
Create category, merchant feedback
Provide feedback on a Transaction's Categories and Merchants
Authorizations:
path Parameters
heron_id required | string Transaction |
Request Body schema: application/json
A partial Transaction object with the suggested Category and/or Merchant. If you provide a heron_id
for Category or Merchant, you don't need to provide other fields. If you don't know the Merchant heron_id
nor name, you can just send the is_correct
boolean. If heron_id
is provided, we disregard name
and label
. If is_correct
is set to true, we disregard all other Merchant fields.
object (TransactionFeedbackSchema) | |||||||
|
Responses
Request samples
- Payload
{- "transaction": {
- "category": {
- "heron_id": "ctg_BzP6YCANDWiwFpFL6AQSez",
- "label": "Insurance"
}, - "merchant": {
- "heron_id": "mrc_3Tj8bnyi4i2bHDf5x87H9Q",
- "is_correct": false,
- "name": "Spotify"
}, - "source": null
}
}
Get EndUser's combined financials
Get the combined P&L & Balance Sheet data from financial documents for an EndUser
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
query Parameters
grouping | string or null Enum: "by_month" "by_quarter" "by_year" |
Responses
Response samples
- 200
{- "by_category": [
- {
- "label": "string",
- "time_period_label": "string",
- "value": 0
}
], - "by_sub_category": [
- {
- "label": "string",
- "time_period_label": "string",
- "value": 0
}
], - "currency": "string",
- "grouping": "by_month",
- "metrics": [
- {
- "label": "string",
- "time_period_label": "string",
- "value": 0
}
]
}
Evaluate all rules for an end user
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
Responses
Response samples
- 200
[- {
- "metric": {
- "context": "higher_is_better",
- "currency": "string",
- "date_range": "last_180_days",
- "description": "The number of unique transactions with a timestamp",
- "group": "data_quality",
- "label": "unique_transactions",
- "status": "not_available",
- "unit": "n",
- "value": 42.42
}, - "result": "PASS",
- "rule": {
- "condition": "equal",
- "created": "2024-08-12T08:00:21.449196",
- "date_range": "last_180_days",
- "group": "data_quality_datasource",
- "heron_id": "rul_dPPDtKmchm9NLWYicMeouh",
- "last_updated": "2024-09-23T08:00:21.449239",
- "metric_label": "unique_transactions",
- "name": "notify_if_debt_investment_count_gt_0_last_180d",
- "selector": {
- "is_portfolio": true
}, - "value": 42.42,
- "value_str": "mrc_12345678ijwdd321d921"
}
}
]
Upload Inscribe
Upload Inscribe JSON for a specified end user to translate into Heron Data format and add transactions for the end user
Authorizations:
path Parameters
end_user_id_or_heron_id required | string The |
Request Body schema: application/json
customer_name | string or null Default: null |
object (InscribeParsedDetails) |
Responses
Request samples
- Payload
{- "customer_name": null,
- "parsed_details": {
- "bank_accounts": [
- {
- "account_type": "string",
- "beginning_balance": {
- "confidence": 0,
- "normalized": 0,
- "raw": "string"
}, - "ending_balance": {
- "confidence": 0,
- "normalized": 0,
- "raw": "string"
}, - "institution_name": "string",
- "number": {
- "confidence": 0,
- "normalized": "string",
- "raw": "string"
}, - "transactions": [
- {
- "amount": 0,
- "date": "2019-08-24",
- "description": "string",
- "id": "string"
}
], - "transactions_match_balances": true
}
], - "name": {
- "raw": "string"
}
}
}
Response samples
- 201
{- "_summary": {
- "request_id": "string"
}
}
Get Integration Links
Get a list of integration links for a specified end user
Authorizations:
path Parameters
end_user_id_or_heron_id required | string The |
Responses
Response samples
- 200
{- "links": [
- {
- "created": "2020-01-01T00:00:00Z",
- "item_id": "M5eVJqLnv3tbzdngLDp9FL5OlDNxlNhlE55op",
- "last_successful_sync": "2020-01-01T00:00:00Z",
- "last_updated": "2020-01-01T00:00:00Z",
- "status": "active",
- "status_message": "[ITEM_LOGIN_REQUIRED] the login details of this item have changed (credentials, MFA, or required user action) and a user login is required to update this information. use Link's update mode to restore the item to a good state",
- "type": "plaid_assets_report"
}
]
}
Upload Ocrolus
Upload Ocrolus JSON for a specified end user to translate into Heron Data format and add transactions for the end user
Authorizations:
path Parameters
end_user_id_or_heron_id required | string The |
query Parameters
skip_num_txns_check | boolean Skip the check for the number of transactions in the payload |
Request Body schema: application/json
required | object (OcrolusResponse) | ||||
|
Responses
Request samples
- Payload
{- "response": {
- "bank_accounts": [
- {
- "account_category": "string",
- "account_number": "string",
- "alternative_lender_transactions": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
], - "daily_balances": {
- "property1": "string",
- "property2": "string"
}, - "debt_consolidator_txns": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
], - "deposits_max_by_month": {
- "property1": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
], - "property2": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
]
}, - "estimated_expense_txns_list": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
], - "estimated_revenue_txns_list": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
], - "factor_txns": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
], - "holder_country": "string",
- "insurance_credits": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
], - "insurance_debits": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
], - "interbank_transactions": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
], - "merchant_cash_advance_lender_txns": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
], - "non_estimated_revenue_txns_list": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
], - "nsf_transactions": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
], - "nsf_transactions_paid_or_negative_balance": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
], - "nsf_transactions_returned_or_not_paid": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
], - "outside_source_deposits": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
], - "payroll": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
], - "period_balance_mismatches": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
], - "ppp_loan_txns": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
], - "probable_recurring_txns": [
- [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
]
], - "returned_items": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
], - "round_number_txns": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
], - "txn_count": 0,
- "withdrawals": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
], - "withdrawals_max_by_month": {
- "property1": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
], - "property2": [
- {
- "amount": "string",
- "description": "string",
- "pk": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "txn_date": "2019-08-24"
}
]
}
}
], - "name": "string"
}
}
Response samples
- 201
{- "_summary": {
- "request_id": "string"
}
}
Get PDFs
Get list of PDFs for a specified end user
Authorizations:
path Parameters
end_user_id_or_heron_id required | string The |
query Parameters
with_processed_results | boolean Include processed results where applicable per pdf |
Responses
Response samples
- 200
{- "pdfs": [
- {
- "account_id": "checking_account_202348",
- "created": "2024-09-23T08:00:21.356219",
- "currency": "USD",
- "end_user": {
- "heron_id": "eus_QeusxHwionm5oRUQyxMSF7"
}, - "filename": "my-favourite.pdf",
- "heron_id": "pdf_muCZAovj27PeSsk2n9Wa7G",
- "is_image_based": true,
- "last_updated": "2024-09-23T08:00:21.356250",
- "notes": "failed to send to external OCR provider",
- "parsing_version": "string",
- "reference_id": "my-favourite-pdf",
- "statements": [
- {
- "exclude": true,
- "invalid_transaction_partials": [
- {
- "amount": 0,
- "balance": 0,
- "bounds": {
- "page": 0,
- "x_max": 0,
- "x_min": 0,
- "y_max": 0,
- "y_min": 0
}, - "currency": "string",
- "description": "string",
- "ocr_suspect": true,
- "reference_id": "string",
- "timestamp": "2019-08-24T14:15:22Z",
- "transaction_code": "string"
}
], - "summary": {
- "account_number": "string",
- "account_title": "string",
- "bank_name": "string",
- "company": "string",
- "currency": "string",
- "end_balance": 0,
- "fraud_reasons": [
- "string"
], - "fraud_score": 0,
- "is_business_account": true,
- "is_ocr": true,
- "max_resolution": 0,
- "min_resolution": 0,
- "num_credits": 0,
- "num_debits": 0,
- "num_transactions": 0,
- "reconciled": true,
- "start_balance": 0,
- "statement_end_date": "2019-08-24T14:15:22Z",
- "statement_start_date": "2019-08-24T14:15:22Z",
- "total_credits": 0,
- "total_debits": 0,
- "unreconciled_end_balance": 0,
- "web_report": true
}, - "transaction_partials": [
- {
- "amount": 0,
- "balance": 0,
- "bounds": {
- "page": 0,
- "x_max": 0,
- "x_min": 0,
- "y_max": 0,
- "y_min": 0
}, - "currency": "string",
- "description": "string",
- "ocr_suspect": true,
- "reference_id": "string",
- "timestamp": "2019-08-24T14:15:22Z",
- "transaction_code": "string"
}
]
}
], - "status": "processed"
}
]
}
Parse all PDF
Starts parsing all PDFs for a specified end users. This will not restart any PDFs that are already being parsed
Authorizations:
path Parameters
end_user_id_or_heron_id required | string The |
Responses
Response samples
- 200
{- "pdf_heron_ids": [
- "string"
], - "request_id": "string"
}
Upload PDF
Upload encoded PDF of transactions for a specified end user to translate into Heron Data format
Authorizations:
path Parameters
end_user_id_or_heron_id required | string The |
Request Body schema: application/json
account_id | string or null Default: null Unique ID for account associated with PDF |
currency | string or null Default: null Enum: "USD" "GBP" ISO 4217 currency code for transactions in account. We currently only support GBP and USD PDFs |
filename | string or null Default: null The filename of the PDF |
pdf_base64 required | string^data\:\w+\/\w+\;base64\, The base64 encoded string of the PDF file. If using Javascript, this is directly the output of the FileReader.readAsDataURL() output. See https://developer.mozilla.org/en-US/docs/Web/API/FileReader/readAsDataURL for more info |
read_us_dates | boolean or null Default: null True if date formats in the statement are US: month/date/year |
reference_id | string or null <= 140 characters Default: null An optional field for your unique identifier for the PDF |
with_fraud | boolean or null Default: null True if fraud detection should be enabled for this PDF |
Responses
Request samples
- Payload
{- "account_id": "checking_account_202348",
- "currency": "USD",
- "filename": "my-favourite.pdf",
- "pdf_base64": "string",
- "read_us_dates": null,
- "reference_id": "my-favourite-pdf",
- "with_fraud": null
}
Response samples
- 201
{- "pdf_heron_id": "string",
- "request_id": "string"
}
Upload Plaid assets
Upload Plaid asset JSON for a specified end user to translate into Heron Data format and add transactions for the end user
Authorizations:
path Parameters
end_user_id_or_heron_id required | string The |
Request Body schema: application/json
required | object (PlaidAssetReport) | ||||||
|
Responses
Request samples
- Payload
{- "report": {
- "date_generated": "2019-08-24T14:15:22Z",
- "days_requested": 0,
- "items": [
- {
- "accounts": [
- {
- "account_id": "string",
- "balances": {
- "available": 0,
- "current": 0,
- "iso_currency_code": "string",
- "limit": 0
}, - "historical_balances": [
- {
- "current": 0,
- "date": "2019-08-24",
- "iso_currency_code": "USD"
}
], - "mask": "string",
- "name": "string",
- "official_name": "string",
- "owners": [
- {
- "names": [
- "string"
]
}
], - "subtype": "string",
- "transactions": [
- {
- "account_id": "string",
- "amount": 0,
- "balance": 0,
- "category": "string",
- "date": "2019-08-24",
- "iso_currency_code": "USD",
- "merchant_name": "string",
- "name": "string",
- "pending_transaction_id": null,
- "timestamp": "2019-08-24T14:15:22Z",
- "transaction_code": "string",
- "transaction_id": "string"
}
], - "type": "string"
}
], - "institution_name": "string"
}
]
}
}
Response samples
- 201
{- "_summary": {
- "request_id": "string"
}
}
Upload Plaid transactions
Upload Plaid transactions JSON for a specified end user to translate into Heron Data format and add transactions for the end user
Authorizations:
path Parameters
end_user_id_or_heron_id required | string The |
Request Body schema: application/json
Array of objects (PlaidAccountSnapshot) | |
required | Array of objects (PlaidTransaction) |
Responses
Request samples
- Payload
{- "accounts": [
- {
- "account_id": "string",
- "balances": {
- "available": 0,
- "current": 0,
- "iso_currency_code": "string",
- "limit": 0
}, - "mask": "string",
- "name": "string",
- "official_name": "string",
- "subtype": "string",
- "type": "string"
}
], - "transactions": [
- {
- "account_id": "string",
- "amount": 0,
- "balance": 0,
- "category": "string",
- "date": "2019-08-24",
- "iso_currency_code": "USD",
- "merchant_name": "string",
- "name": "string",
- "pending_transaction_id": null,
- "timestamp": "2019-08-24T14:15:22Z",
- "transaction_code": "string",
- "transaction_id": "string"
}
]
}
Response samples
- 201
{- "_summary": {
- "request_id": "string"
}
}
Upload Yodlee
Upload Yodlee JSON files for a specified end user to translate into Heron Data format and add transactions for the end user
Authorizations:
path Parameters
end_user_id_or_heron_id required | string The |
Request Body schema: application/json
Array of objects (YodleeAccount) | |
Array of objects (YodleeTransaction) |
Responses
Request samples
- Payload
{- "accounts": [
- {
- "balance": {
- "amount": 0,
- "currency": "string"
}, - "classification": "string",
- "id": 0
}
], - "transactions": [
- {
- "accountId": 0,
- "amount": {
- "amount": 0,
- "currency": "string"
}, - "baseType": "CREDIT",
- "category": "string",
- "date": "2019-08-24T14:15:22Z",
- "description": {
- "original": "string",
- "simple": "string"
}, - "id": 0
}
]
}
Response samples
- 201
{- "_summary": {
- "request_id": "string"
}
}
Update PDF attributes including status
Update PDF attributes including status
Authorizations:
path Parameters
heron_id required | string heron_id of the pdf |
Request Body schema: application/json
filename | string The filename of the PDF |
fraud_reason | string or null If fraud reason |
is_fraud | boolean True if fraud was detected in the PDF |
notes | string Notes associated with PDF, e.g., rejected reason, failed reason |
reference_id | string <= 140 characters An optional field for your unique identifier for the PDF |
status | string Enum: "new" "parsing" "parsed" "processed" "human_reviewing" "approved" "rejected" "failed" "transactions_loaded" "transactions_unloaded" Status of PDF |
Responses
Request samples
- Payload
{- "filename": "my-favourite.pdf",
- "fraud_reason": "string",
- "is_fraud": true,
- "notes": "string",
- "reference_id": "my-favourite-pdf",
- "status": "processed"
}
Response samples
- 200
{- "pdf": {
- "account_id": "checking_account_202348",
- "created": "2024-09-23T08:00:21.356219",
- "currency": "USD",
- "end_user": {
- "heron_id": "eus_QeusxHwionm5oRUQyxMSF7"
}, - "filename": "my-favourite.pdf",
- "heron_id": "pdf_muCZAovj27PeSsk2n9Wa7G",
- "is_image_based": true,
- "last_updated": "2024-09-23T08:00:21.356250",
- "notes": "failed to send to external OCR provider",
- "parsing_version": "string",
- "reference_id": "my-favourite-pdf",
- "statements": [
- {
- "exclude": true,
- "invalid_transaction_partials": [
- {
- "amount": 0,
- "balance": 0,
- "bounds": {
- "page": 0,
- "x_max": 0,
- "x_min": 0,
- "y_max": 0,
- "y_min": 0
}, - "currency": "string",
- "description": "string",
- "ocr_suspect": true,
- "reference_id": "string",
- "timestamp": "2019-08-24T14:15:22Z",
- "transaction_code": "string"
}
], - "summary": {
- "account_number": "string",
- "account_title": "string",
- "bank_name": "string",
- "company": "string",
- "currency": "string",
- "end_balance": 0,
- "fraud_reasons": [
- "string"
], - "fraud_score": 0,
- "is_business_account": true,
- "is_ocr": true,
- "max_resolution": 0,
- "min_resolution": 0,
- "num_credits": 0,
- "num_debits": 0,
- "num_transactions": 0,
- "reconciled": true,
- "start_balance": 0,
- "statement_end_date": "2019-08-24T14:15:22Z",
- "statement_start_date": "2019-08-24T14:15:22Z",
- "total_credits": 0,
- "total_debits": 0,
- "unreconciled_end_balance": 0,
- "web_report": true
}, - "transaction_partials": [
- {
- "amount": 0,
- "balance": 0,
- "bounds": {
- "page": 0,
- "x_max": 0,
- "x_min": 0,
- "y_max": 0,
- "y_min": 0
}, - "currency": "string",
- "description": "string",
- "ocr_suspect": true,
- "reference_id": "string",
- "timestamp": "2019-08-24T14:15:22Z",
- "transaction_code": "string"
}
]
}
], - "status": "processed"
}, - "request_id": "string"
}
Send patch transactions for a pdf statement
Send patch transactions processed pdf that will override the extracted transactions in the specified statement
Authorizations:
path Parameters
heron_id required | string heron_id of the pdf |
Request Body schema: application/json
exclude | boolean True if the statement should be excluded from processing |
index required | integer The index of the statement in the pdf to patch |
object (PdfPatchStatementSummary) | |
required | Array of objects (PdfPatchTransaction) The full list of transactions that will be used to override the extracted transactions for the specified statement |
Responses
Request samples
- Payload
{- "exclude": true,
- "index": 0,
- "summary": {
- "account_number": "string",
- "bank_name": "string",
- "company": "string",
- "currency": "string",
- "end_balance": 0,
- "fraud_reasons": [
- "string"
], - "fraud_score": 0,
- "start_balance": 0,
- "statement_end_date": "2019-08-24T14:15:22Z",
- "statement_start_date": "2019-08-24T14:15:22Z"
}, - "transactions": [
- {
- "amount": 0,
- "balance": 0,
- "bounds": {
- "page": 0,
- "x_max": 0,
- "x_min": 0,
- "y_max": 0,
- "y_min": 0
}, - "currency": "string",
- "description": "string",
- "ocr_suspect": true,
- "reference_id": "string",
- "timestamp": "2019-08-24T14:15:22Z",
- "transaction_code": "string"
}
]
}
Response samples
- 200
{- "ok": true
}
Upload an ISO application PDF for for an end user
Use this endpoint to upload an ISO application PDF. Once uploaded, the file will be automatically scrubbed asynchronously. You can use the returned iso_application heron_id (prefixed "iso_") to fetch the scrubbing results. Please contact support@herondata.io to enable this endpoint.
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
Request Body schema: multipart/form-data
file | string <binary> |
Responses
Response samples
- 200
{- "bank_statement": null,
- "created": "2019-08-24T14:15:22Z",
- "email": null,
- "file_class": "other",
- "filename": "string",
- "heron_id": "string",
- "iso_application": {
- "heron_id": "iso_6hBjQT9k6KP2rLCXwjUJff",
- "processing_status": "processed"
}, - "page_classes": {
- "property1": {
- "confidence": 1,
- "file_class": "other"
}, - "property2": {
- "confidence": 1,
- "file_class": "other"
}
}, - "parent_heron_id": "string",
- "reference_id": "string"
}
Get EndUser ISO Applications
Get all ISO applications for an end user
Authorizations:
path Parameters
end_user_id_or_heron_id required | string |
Responses
Response samples
- 200
[- {
- "created": "2019-08-24T14:15:22Z",
- "end_user_heron_id": "string",
- "end_user_id": "string",
- "field_validations": [
- {
- "failure_reason": "string",
- "field_name": "string",
- "result": "passed",
- "validation_type": "string"
}
], - "filename": "iso_app.pdf",
- "heron_id": "iso_6hBjQT9k6KP2rLCXwjUJff",
- "processing_status": "processed",
- "quality_status": "fully_matched",
- "result": {
- "property1": {
- "document_field_name": "Company Legal Name",
- "is_empty": false,
- "value": "Heron Data Ltd",
- "value_confidence": 0.99
}, - "property2": {
- "document_field_name": "Company Legal Name",
- "is_empty": false,
- "value": "Heron Data Ltd",
- "value_confidence": 0.99
}
}, - "source_email": {
- "date_sent": "2019-08-24T14:15:22Z",
- "date_sent_string": "string",
- "from_address": "string",
- "from_address_domain": "string",
- "from_name": "string",
- "html_body": "string",
- "html_or_text_body": "string",
- "subject": "string",
- "text_body": "string"
}
}
]
Upload an ISO application PDF for automated scrubbing in under 15 seconds
Use this endpoint to upload an ISO application PDF. Once uploaded, the file will be automatically scrubbed asynchronously. You can use the returned heron_id (prefixed "iso_") to fetch the scrubbing results from the GET endpoint below. Please contact support@herondata.io to enable this endpoint.
Authorizations:
Request Body schema: multipart/form-data
file | string <binary> |
Responses
Response samples
- 200
{- "heron_id": "string",
- "status": "processing"
}
Upload an ISO application PDF for automated scrubbing in under 15 seconds (base64)
This endpoint is for uploading ISO application PDFs in base64 format.
Authorizations:
Request Body schema: application/json
file_base64 required | string^data\:\w+\/\w+\;base64\, The base64 encoded string of the file |
filename required | string The original filename of the ISO application form |
reference_id | string or null Default: null A reference id for the file |
Responses
Request samples
- Payload
{- "file_base64": "base64_encoded_string",
- "filename": "iso_app.pdf",
- "reference_id": "your-file-id"
}
Response samples
- 200
{- "heron_id": "string",
- "status": "processing"
}