Skip to main content

AI-Process Bank Statement using n8n action

PDF4me AI-Process Bank Statement extracts structured data from bank statements using AI-powered machine learning through n8n automation workflows. Process bank statement PDFs or images via n8n triggers, binary data, base64 strings, or public URLs to automatically extract account information, transaction details, balances, fees, interest, recurring payment patterns, unusual transactions, spending analytics, and comprehensive financial insights with high accuracy and intelligent field recognition. This solution is ideal for bank statement processing automation, financial statement digitization, transaction analysis, bank reconciliation, cash flow management, spending analytics, automated accounting, and financial data extraction workflows that require AI-powered extraction with structured output and seamless integration.

Setup

Add the PDF4me "AI-Process Bank Statement" node to your n8n workflow and configure the required parameters. For initial setup instructions, see our n8n Integration Guide.

Prerequisites:

  • PDF4me API credentials
  • n8n workflow access

Configuration:

  1. Add PDF4me node to workflow
  2. Select "AI-Process Bank Statement" action
  3. Configure input parameters (see below)
AI-Process Bank Statement

Parameters

Complete list of parameters for the AI-Process Bank Statement action. Configure these parameters to control bank statement processing.

Important: Parameters marked with an asterisk (***) are required and must be provided for the action to function correctly.

ParameterTypeDescriptionExample
Input Data Type***StringBank Statement Input Format Selection
• Choose the format of your bank statement data input
• PDF4me supports multiple input types
• Options: Binary Data, Base64 String, or URL
Binary Data
Input Binary Field***BinaryBinary Bank Statement File Input (Required if Binary Data)
• Reference bank statement file (.pdf, .png, .jpg, .jpeg) from previous n8n node or file upload
• PDF4me processes binary bank statement files with automatic format detection and AI-powered data extraction
• Required when Input Data Type is "Binary Data"
{{ $binary.data }}
Base64 Bank Statement Content***StringBase64 Encoded Bank Statement Input (Required if Base64 String)
• Provide bank statement content (.pdf, .png, .jpg, .jpeg) as base64 encoded string for secure transmission
• PDF4me automatically decodes and processes the bank statement content using AI technology
• Required when Input Data Type is "Base64 String"
JVBERi0xLjQKJ...
Bank Statement URL***StringPublic Bank Statement URL Input (Required if URL)
• Provide a public/open permission URL to the bank statement file (.pdf, .png, .jpg, .jpeg) to be processed
• PDF4me downloads and processes the bank statement file from the provided URL using AI technology
• Required when Input Data Type is "URL"
https://abc.com/statement.pdf
Bank Statement Name***StringBank Statement Input Filename
• Specify the name of the input bank statement file with proper extension (.pdf, .png, .jpg, .jpeg)
• PDF4me uses this for format detection and AI processing optimization
statement_2024_01.pdf
Bank NameStringOptional Bank Name for Improved Parsing Accuracy
• Specify bank name to enhance extraction precision
• Helps AI engine optimize field recognition for specific bank formats
• Improves accuracy when processing statements from known banks
Chase Bank
Analyze PatternsBooleanPattern Analysis Enable
• Enable or disable pattern analysis for recurring payments and unusual transactions
• Yes = enables advanced pattern recognition and analysis
• No = processes statement without pattern analysis
• When enabled, extracts recurring payment patterns and identifies unusual transactions
Yes
Custom Field KeysArrayOptional Custom Field Keys List
• Optional list of custom field keys to extract from the bank statement
• Specify additional fields beyond standard statement data
• Supports multiple custom field keys for enhanced data extraction
["customField1", "customField2"]

Output

Output Parameters

ParameterTypeDescriptionExample
bankNameStringPDF4me extracted bank name - The name of the bank extracted from the bank statementChase Bank
accountHolderNameStringPDF4me extracted account holder name - The name of the account holder extracted from the bank statementJohn Michael Smith
accountNumberStringPDF4me extracted account number - The bank account number extracted from the bank statement1234567890
accountTypeStringPDF4me extracted account type - The type of bank account extracted from the statement (e.g., Checking, Savings)Checking
branchStringPDF4me extracted branch - The branch location or identifier extracted from the bank statementNew York Main Branch
statementNumberStringPDF4me extracted statement number - The statement number or reference identifier extracted from the bank statementSTMT-2024-001
statementPeriodObjectPDF4me extracted statement period - Object containing statement period information with start date and end date (YYYY-MM-DD format){"startDate": "2024-01-01", "endDate": "2024-01-31"}
balancesObjectPDF4me extracted balances - Object containing balance information including opening balance, closing balance, total deposits, and total withdrawals{"openingBalance": 5000.00, "closingBalance": 6750.00}
currencyStringPDF4me extracted currency - The currency code (ISO 4217) of the bank statement amounts (e.g., USD, EUR, INR)USD
feesNumberPDF4me extracted fees - The total fees charged during the statement period, with precise decimal handling5.00
interestNumberPDF4me extracted interest - The total interest earned during the statement period, with precise decimal handling2.50
transactionsArrayPDF4me extracted transactions - Array of individual transactions with dates, descriptions, amounts, types, balances, categories, merchants, and reference numbers[{"transactionDate": "2024-01-05", "description": "Direct Deposit", "amount": 3500.00}]
checksPaidArrayPDF4me extracted checks paid - Array of checks paid during the statement period including check numbers, paid dates, amounts, payees, and descriptions[{"checkNumber": "1234", "paidDate": "2024-01-12", "amount": 500.00}]
patternsObjectPDF4me extracted patterns - Object containing pattern analysis results including recurring payments and unusual transactions{"recurringPayments": [...], "unusualTransactions": [...]}
summaryObjectPDF4me extracted summary - Object containing summary analytics including total transactions, category summaries, average daily balance, largest credit, and largest debit{"totalTransactions": 3, "categorySummary": {...}}
fallbackUsedBooleanPDF4me fallback indicator - Boolean flag indicating whether fallback extraction methods were used during processingfalse
warningsArrayPDF4me processing warnings - Array of warning messages indicating potential data quality issues or extraction challenges encountered during processing[]
jobIdStringPDF4me processing job identifier - Unique identifier for the AI processing job, used for tracking and debugging purposes00000000-0000-0000-0000-000000000000
jobIdExtStringPDF4me external job identifier - External job identifier for integration with third-party systems, if applicablenull
successBooleanPDF4me AI extraction status indicator - Boolean flag indicating the success or failure of the AI-powered bank statement data extraction process. PDF4me returns true for successful extractions and false for any errorstrue
messageStringPDF4me AI extraction status message - Descriptive message indicating the result of the AI-powered bank statement data extraction process. PDF4me provides clear status messages for successful extractions and detailed error informationBank statement data extracted successfully using AI technology

N8N Action Response

The PDF4me AI-Process Bank Statement API returns a JSON response with the following structure:

{
"bankName": "Chase Bank",
"accountHolderName": "John Michael Smith",
"accountNumber": "1234567890",
"accountType": "Checking",
"branch": "New York Main Branch",
"statementNumber": "STMT-2024-001",
"statementPeriod": {
"startDate": "2024-01-01",
"endDate": "2024-01-31"
},
"balances": {
"openingBalance": 5000.00,
"closingBalance": 6750.00,
"totalDeposits": 3500.00,
"totalWithdrawals": 1750.00
},
"currency": "USD",
"fees": 5.00,
"interest": 2.50,
"transactions": [
{
"transactionDate": "2024-01-05",
"description": "Direct Deposit - Salary",
"amount": 3500.00,
"type": "credit",
"balance": 8500.00,
"category": "Income",
"merchant": "Employer Corp",
"referenceNumber": "REF123456"
}
],
"checksPaid": [
{
"checkNumber": "1234",
"paidDate": "2024-01-12",
"amount": 500.00,
"payee": "ABC Corporation",
"description": "Invoice Payment"
}
],
"patterns": {
"recurringPayments": [
{
"merchant": "Electric Company",
"amount": 250.00,
"frequency": "Monthly",
"recurringDates": ["2024-01-10", "2024-02-10", "2024-03-10"]
}
],
"unusualTransactions": []
},
"summary": {
"totalTransactions": 3,
"categorySummary": {
"Income": {
"count": 1,
"totalAmount": 3500.00,
"averageAmount": 3500.00,
"percentage": 66.67
}
},
"averageDailyBalance": 6750.00,
"largestCredit": {
"largestTransactionDate": "2024-01-05",
"amount": 3500.00,
"description": "Direct Deposit - Salary"
},
"largestDebit": {
"largestTransactionDate": "2024-01-12",
"amount": 500.00,
"description": "Check Payment - ABC Corporation"
}
},
"fallbackUsed": false,
"warnings": [],
"jobId": "12345678-1234-1234-1234-123456789012",
"jobIdExt": "STMT-2024-001",
"success": true,
"message": "Bank statement data extracted successfully using AI technology"
}

Use Cases

Enterprise Financial Automation

  • Bank Reconciliation: Automate bank reconciliation using extracted statement transactions
  • Financial Reporting: Generate financial reports from extracted statement and transaction data
  • Cash Flow Management: Monitor and analyze cash flows using extracted balance and transaction information
  • Transaction Analysis: Analyze transaction patterns and trends from extracted statement data

AI-Powered Document Processing

  • Multi-Format Support: Process PDF, PNG, JPG, and JPEG bank statement formats
  • Multi-Language Processing: Extract data from bank statements in various languages
  • Intelligent Field Recognition: Automatically identify and extract relevant statement fields

Business Intelligence and Analytics

  • Spending Analytics: Analyze spending patterns from extracted transaction and category data
  • Financial Dashboards: Build financial dashboards using extracted statement data
  • Performance Metrics: Track processing accuracy and efficiency

Get Help