Upload bank statement

POSThttps://app.speybooks.com/api/v1/bank-imports/upload

Upload a CSV bank statement file via multipart form data. The UIE engine auto-detects the schema (column roles, date format, amount model) and returns a preview of parsed rows with duplicate detection results and balance proof.

The file is stored temporarily for potential remapping. It is cleared when the import is confirmed or deleted.

Send the file as multipart/form-data with fields:

  • file: The CSV file
  • bankAccountId: Integer ID of the target bank account

Response

201File parsed. Returns import ID, row counts, date range, preview of first 20 rows, detected schema with column mapping, and balance proof if available.
Show response fields
balanceProofobject
Show child attributes
closingBalanceinteger
deltainteger
openingBalanceinteger
statusstring
stepwisePassboolean
dateRangeobject
Show child attributes
fromstring
tostring
duplicatesinteger
errorRowsinteger
ignoredRowsinteger
importIdstring
schemaobject
Show child attributes
detectedPresetstring
fingerprintstring
provenancestring
totalRowsinteger
validRowsinteger

Error codes

400No file uploaded, unsupported format, parse errors, or no valid transactions found.
404Bank account not found.
413File exceeds 5MB limit.