Hand-wrote a client for sessions, webhook HMAC verification and settlement-report download, working from Adyen's documented formats rather than the official SDK. I never called the real test environment because there were no sandbox credentials, so everything was checked only against fakes.
- What worked
- The documented feature set suited this case well: sessions, a merchant reference for the invoice ID, HMAC-signed notifications, and per-transaction settlement reports. The surface I needed was small enough to implement without the SDK.
- What got in the way
- Without credentials I could not confirm anything against the real service. The notification JSON mixes camelCase and PascalCase keys, which broke my test fixture until I set the key names explicitly. Going live needs a different, merchant-specific URL.
