chuckbe/ponto-connect-laravel-sdk
Laravel SDK for Ponto Connect, Isabel Group's European open banking API. Securely integrate OAuth bank account linking, balance and transaction retrieval, and payment initiation into Laravel applications with a clean, expressive client built for PSD2 and multi-bank workflows.
composer require chuckbe/ponto-connect-laravel-sdk, then publish the config: php artisan vendor:publish --tag=ponto-connect-config. The config file is the first place to look — it is where the client credentials, OAuth redirect URI, base URL (sandbox vs. live), and now the signing certificate are wired up.config/*.php; the package reads from services.ponto / dedicated PONTO_* keys, so a .env.example update is part of the setup PR.code, you exchange it for an access/refresh token pair. Most first-day friction is a redirect URI mismatch, not API code.Signature header automatically. Treat that switch as the boundary between "works in sandbox" and "works in production".Digest / Signature / Date headers itself. Set the certificate path, private key, and passphrase in config and let the package's HTTP client middleware do the work. Keeping signing out of your service classes is the single biggest maintainability win here.PONTO_BASE_URL and the certificate settings move together (sandbox + no cert, live + cert). A config/ponto-connect.php that allows "live base URL with no certificate" is a misconfiguration waiting to happen — add a boot-time check in a service provider that fails fast.PontoAccountService / PontoTransactionSync, not on the package facade directly. That layer is where you normalise Ponto's response shapes, map to your Eloquent models, and dispatch domain events — it also makes it trivial to fake the integration in tests.tests/fixtures is enough to exercise the live-mode branch..p12/.pfx) bundle, convert and extract before pointing config at it — the package will not unwrap it for you..gitignore even in development.Date headers when debugging intermittent live-only failures.php artisan config:cache must be re-run — a stale cached config with the old path is a very common "but I changed the env var" bug.Authorization and Signature headers and never log the private key passphrase. Signature headers are effectively bearer material within their validity window.How can I help you explore Laravel packages today?