mhujer/fio-api-php
PHP client for the Fio Bank API to fetch account transactions, download bank statements, and send domestic and foreign payments. It wraps the bank's REST endpoints in simple typed objects, handles authentication tokens, and installs easily via Composer.
Architecture fit
lastId / lastDate). Your ingestion model must be polling + watermarking, not push. Any assumption of near-real-time balance updates is wrong.Integration feasibility
composer require, PHP 7.1-era constraints, Guzzle 6. No Laravel auto-discovery, so wiring is a singleton binding in a service provider — trivial.Technical risk
Key questions
Http::withToken() client for this API is roughly 150–300 lines. Does the wrapper save enough to justify the vendored-dependency tax?Stack fit
guzzlehttp/guzzle ^6. Options, in order of preference: (a) skip the package and call the API directly with Laravel's HTTP client; (b) fork, bump the Guzzle constraint to ^6|^7, run the fixture suite, publish to a private VCS repo; (c) vendor the source into app/Support and drop the Composer dependency entirely. Do not use --ignore-platform-reqs or replace tricks — they defer the breakage into runtime.Migration path
BankStatementProvider interface and your own transaction DTOs. Implement FioApiAdapter wrapping the package. Nothing above the adapter may reference Fio\ types.Compatibility
composer why-not mhujer/fio-api-php and a PHP 8.1/8.2 static analysis pass before committing to a spike. If PHP 8 fatal errors appear, stop and take the direct-HTTP route.composer.lock, add roave/security-advisories to catch transitive issues, and record an explicit "we own this" note in the ADR.Sequencing
Maintenance
Support
Scaling
Failure modes
Ramp-up
How can I help you explore Laravel packages today?