Security
Verify callback signatures and durable transaction handling. Use available readiness checks against a controlled test wallet to review the integration.
Test the wallet boundary before launch
Most money lost in this business is not lost to a clever exploit. It is lost to a wallet endpoint that pays out on a request it should have refused — an unsigned one, a forged one, or the same one twice.
Run available readiness scenarios against a controlled test wallet and inspect the results. The scenarios provide evidence for the cases exercised; your team remains responsible for the production integration.
Three wallet checks to review
A forged signature has to be refused
An available readiness probe sends a callback with the wrong signature to a controlled test wallet. Your endpoint should reject it with a client error and leave the wallet unchanged.
An unsigned request has to be refused
A signature check also needs the missing-header case. Reject the unsigned callback before any wallet change, with a client error rather than a server failure.
The same scoped transaction must not move twice
Scope transaction identity by trusted integration and provider. A conflicting body must not move money again; an exact duplicate returns the stored original response.
Authentication, settlement and test evidence
API credentials and callback signatures
Machine API requests use Bearer credentials. Outbound wallet callbacks carry an HMAC-SHA256 signature over the raw body. Your wallet must verify that signature before processing the request.
Retries reuse the original transaction result
The callback contract has no timestamp header. Your wallet scopes idempotency by trusted integration, provider and transaction identity, and commits the wallet change with its stored response before success. An exact duplicate returns that original status and body without another wallet change.
Keep credentials out of diagnostic output
Keep API keys and callback secrets in protected storage. Exclude authorization headers, signatures and raw request bodies from logs. Use your own correlation identifier, HTTP status and recognized error code when investigating failures.
Readiness gives integration evidence
Available readiness scenarios exercise selected wallet and protocol cases. They are advisory: passing a run does not issue an API key, authorize a release or certify every provider and deployment. Review the evidence alongside your own integration checks.