Skip to content

Changelog ​

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

5.0.0 - 2026-10-12 ​

See the repository CHANGELOG.md for the 5.0.0 notes. Summary:

  • MailContent::$money is ?Money (amount in minor units, toDecimalString() for a decimal string).
  • transactionDate is ?DateTimeImmutable.
  • parse() throws. More than one transaction throws MultipleTransactionsException; use parseAll(). tryParse() returns null.
  • BankMailsParser detects the bank. Pass the sender. The PGP statement parser is registered only when a decryptor is passed. See Bank Detection and Exceptions.

4.1.0 - 2026-05-19 ​

Added ​

  • VUB test data files from the original repository

Changed ​

  • TatraBanka parser: explicit date formats for predictable parsing of new Tatrabanka email date variants (strtotime preserved as fallback) (#20)

4.0.0 - 2025-08-29 ​

Added ​

  • VubMailParser for VUB bank emails
  • VUB parser test coverage and documentation
  • Comprehensive README documentation improvements
  • Professional bank support matrix with country flags
  • Quick Start guide and error handling documentation
  • Complete MailContent API documentation with all getters
  • Security considerations and contributing guidelines
  • Enhanced test coverage - Added 15+ new edge case and error handling tests
  • MailContentTest - Dedicated test class for MailContent edge cases
  • Parser robustness tests - Invalid input, empty content, malformed data handling
  • PHP 8 attributes support - Modern #[Test] and #[CoversClass] attributes
  • GitHub Pages coverage reporting with HTML reports
  • Automatic coverage badge updates in README
  • GitHub Actions CI badge

Changed ​

  • BREAKING: Minimum PHP version increased from 7.4 to 8.2
  • BREAKING: Test method naming - Removed "test" prefixes, use #[Test] attributes instead
  • Directory structure consistency - Moved src/Parsers/ to src/Parser/ to match namespace
  • Tests directory structure - Moved tests/Parsers/ to tests/Parser/ for consistency
  • Test modernization - Replaced @test annotations with PHP 8 #[Test] attributes
  • Updated all GitHub Actions to v4 to fix deprecation warnings
  • Improved PHPUnit configuration with proper coverage filters
  • Updated PHPUnit from 9.6.25 to 11.5.35 (latest version)
  • CI now tests only PHP 8.2, 8.3, and 8.4
  • Removed unused Makefile - GitHub Actions uses direct vendor/bin commands

Removed ​

  • Code Climate badges (service discontinued)
  • BREAKING: Dropped support for PHP 7.4, 8.0, and 8.1
  • BREAKING: @test docblock annotations (replaced with #[Test] attributes)

3.0.0 - 2025-08-28 ​

Added ​

  • CsobMailParser for Czech ČSOB bank emails with multi-transaction support
  • SkCsobMailParser for Slovak ČSOB bank emails
  • TatraBankaStatementMailParser for encrypted PGP email statements
  • TatraBankaMailDecryptor helper class for PGP decryption
  • Comprehensive test coverage for all new parsers
  • singpolyma/openpgp-php dependency for PGP functionality
  • Updated README with usage examples for all parsers
  • GitHub Actions CI/CD workflow with linter (PHP_CodeSniffer), static analysis (PHPStan), and tests (PHPUnit)
  • PHPStan static analysis tool configuration

Changed ​

  • Expanded library support from TatraBanka only to multiple banks
  • Updated project description to reflect multi-bank support
  • BREAKING: Minimum PHP version requirement increased from 7.2 to 7.4

Removed ​

  • Travis CI configuration (replaced with GitHub Actions)

2.8.0 - 2021-12-01 ​

Added ​

  • Source Account Number support (#12)

2.7.0 - 2021-09-15 ​

Added ​

  • Support for parsing variable symbol from additional invalid formats (#11)
  • Enhanced variable symbol detection in receiver message and payment purpose

Fixed ​

  • Test names and removed pattern numbering for better readability
  • Variable symbol parsing from receiver message format

2.6.0 - 2020-05-20 ​

Added ​

  • Trim functionality for parsed variables to remove whitespace
  • Improved variable symbol parsing reliability

Fixed ​

  • Test for variable symbol in receiver message
  • Removed unused variables

2.5.0 - 2019-08-15 ​

Added ​

  • RC parameter processing for ComfortPay emails (#9)

Changed ​

  • Updated minimal PHP version requirements
  • Improved Travis CI build configuration

2.4.0 - 2019-06-10 ​

Added ​

  • TXN parameter processing for ComfortPay emails (#8)
  • TXN parameter documentation in README

2.3.0 - 2019-03-20 ​

Fixed ​

  • CardPay HMAC regexp improvements for optional fields (#7)
  • Enhanced support for failed payment emails (#6)

Changed ​

  • Removed PHP 5.4 and 5.5 from Travis CI
  • Updated build configuration

2.2.0 - 2018-12-01 ​

Added ​

  • Description field support (#5)
  • Enhanced email parsing capabilities

Fixed ​

  • Code style improvements
  • Updated README documentation

2.1.0 - 2018-08-15 ​

Added ​

  • CC parameter support within HMAC confirmation emails (#4)
  • Made CC parameter optional in HMAC emails

Fixed ​

  • Variable symbol parsing from receiver message (#2)
  • Enhanced VS detection in whole message content

2.0.0 - 2018-05-01 ​

Added ​

  • Strict types support (declare(strict_types=1))
  • PHP 7.1+ requirement
  • Enhanced TatraBanka HMAC confirmation email support
  • AC parameter for TatraBanka emails
  • Transaction date support in simple mail parser
  • ComfortPay emails parsing support

Changed ​

  • BREAKING: Moved all TatraBanka code to TatraBanka namespace
  • BREAKING: Updated ParserInterface - no longer returns false, only ?MailContent
  • BREAKING: Minimum PHP version increased to 7.1
  • Updated PHPUnit to version 9
  • Modernized codebase with strict types

Removed ​

  • PHP 5.x and 7.0 support
  • Legacy parsing methods

1.1.0 - 2017-03-15 ​

Added ​

  • TatraBanka SimpleMailParser for ComfortPay emails
  • Additional getter methods (CID, Sign, RES)
  • Support for recurring payments
  • Enhanced email format detection

Improved ​

  • Code quality and PSR compliance
  • Test coverage
  • Documentation

1.0.0 - 2016-08-20 ​

Added ​

  • Initial release
  • TatraBankaMailParser for basic TatraBanka email parsing
  • MailContent class for parsed data
  • ParserInterface for extensibility
  • Support for Slovak bank email parsing
  • Basic test coverage
  • Travis CI integration
  • Code Climate integration

Features ​

  • Variable Symbol (VS) parsing
  • Specific Symbol (SS) parsing
  • Constant Symbol (KS) parsing
  • Amount and currency parsing
  • Transaction date parsing
  • Account number parsing
  • Receiver message parsing

Released under the MIT License.