🖨️Scanned Statements
In addition to original PDF bank statements downloaded directly from the Customer's internet banking profile , we now accept "Scanned Statements".
Differences Between Scanned Statements and Original Statements
Original Statements:
Definition: Statements downloaded directly from the customer’s internet banking profile. They are the original PDF files provided by the bank.
Example: A customer downloads a bank statement PDF directly from their online banking portal.
Scanned Statements:
Definition: Digital copies of original statements created through scanning or photographing a physical printout of the original PDF.
Example: A customer prints out their bank statement, takes it to a store, and the agent scans it to create a digital copy. Alternatively, a customer may take a photo or use a scanner app to capture the image of a printed statement and save it as a PDF.
Enabling Scanned Statements
The Scanned Statements feature needs to be enabled on a per-tenant basis. This is a configuration managed by our support team. Please contact support@finch-technologies.com to enable Scanned Statements for your tenant should you wish to make use of the feature. If the feature is not enabled, you will see the following error when trying to upload a statement that is a scan:
{
"message": "Scanned statements processing is not enabled for your tenant. Please contact support if you wish to enable it."
}Uploading Scanned Statements
Endpoint:
Use the same endpoint for uploading both original and scanned statements (i.e.
Upload Bankstatement v1.1):{{environmentUrl}}/{{tenantId}}/api/v1.1/bank-accounts/:bank_account_id/upload-bankstatementScanned Statements are only accepted on the
Upload Bankstatement v1.1andUpload Bankstatement for Customer v1.1endpoints (i.e. it is not available onUpload Bankstatement v1.0)Maximum of 6 bank statements can be uploaded in one call.
Accepted Documents
Format Requirement:
Library of Accepted 'Scanned Statements':
ABSA
Capitec
FNB
Nedbank
Standard Bank
Tyme Bank
1-month Cheque Account Bank Statement (English)
1-month Cheque Account Bank Statement (English)
1-month Cheque Account Bank Statement (English & Afrikaans)
1-month Cheque Account Bank Statement (English)
1-month Cheque Account Bank Statement (English)
1-month PDF Bank Statement
Transaction History PDF export (English & Afrikaans)
-
-
-
-
-
-
3-month Cheque Account Bank Statement (English)
-
-
3-month Cheque Account Bank Statement (English)
-
-
-
-
1-month Private Wealth Bank Statement (English)
-
-
-
-
-
Nedbank Transaction History Statement
-
-
Quality Requirements
While Amazon Textract excels at extracting data even from low-quality scans, there are instances where uploads may fail. The following issues can cause an upload to be unsuccessful or lead to inaccurate data extraction:
Obscured or Truncated Information: If key details such as the bank registration number, bank stamps, logos, QR codes (where applicable), or account information are obscured, truncated, missing, or unreadable, the upload may fail.
Skewed or Cut-off Data: Statements that are heavily skewed or have portions cut off can result in missing key information. This can cause the upload to fail or lead to inaccuracies in transaction amounts due to misalignment of the statement's x-y columns. Credits and debits might also be confused due to this misalignment.
To help identify and manage these issues, we return an accuracy_metrics object with the uploaded statement. This allows you to review the accuracy and completeness of the extracted data. Depending on your criteria, you may choose to manually review statements with significant discrepancies in the accuracy_metrics or reject them outright. It is up to you to determine the level of discrepancy you are willing to accept.
Data Differences and Validation
Metadata Differences:
Original Statements: Metadata fields (
meta_producer,meta_creator,meta_author) are used to detect possible tampering or fraud.Scanned Statements: These metadata fields are not applicable due to natural variations in scans or photos. Instead, an
accuracy_metricsobject is returned to assess the completeness and accuracy of the data.
Accuracy Metrics:
Endpoint:
Example accuracy_metrics object in Return All Statements of a BankAccount:
"data": [
{
"id": "34f39472-93eb-45a8-adf6-7db4cef4ae9f",
"bank_account_id": "5052f85e-4530-46b6-aeea-f11f9c0dfa74",
"statement_date": "2021-02-05",
"start_date": "2020-11-07",
"end_date": "2021-02-05",
"temp_url": "https://apply.fincheck.co.za/testing/files/c6972b8a-34a0-4314-91d2-962f43a67471?expires=1714391294&signature=3bae4b5ede8ec20e0bdab1119c88f2900231ffd9a658eca2548a8f2c1a7f8da8",
"expires_in": "60m",
"file": {
"id": 221,
"name": "CapitecScanned3.pdf",
"type": "pdf",
"url": "https://apply.fincheck.co.za/testing/documents/CapitecScanned3.pdf"
},
"transaction_count": 283,
"month": "Nov 2020",
"fraud": {
"fraud_checks": {
"statement_balance": true,
"create_date": true,
"meta_mod_date": "not applicable",
"meta_producer": "not applicable",
"meta_creator": "not applicable",
"meta_author": "not applicable"
}
},
"processed": true,
"accuracy_metrics": {
"statement_confidence_score": 0.98,
"expected_transaction_count": 283,
"calculated_transaction_count": 283,
"transaction_count_match": true,
"expected_credit_total": 53283.99,
"calculated_credit_total": 66586.56,
"credit_total_match": false,
"expected_debit_total": 44684.04,
"calculated_debit_total": 48575.01,
"debit_total_match": false
},
"confidence_score": 0.98
}
]
}Explanation of the accuracy_metrics Object:
Last updated