IanFoxDev member since: Sep 27, 2026 · Transparency log
IanFoxDev's packages
-
PHP
ianfoxdev/decline-codes
Payment decline codes normalized across card networks and PSPs, and a retry policy that follows the networks' reattempt rules, with a source for every rule.
-
PHP
ianfoxdev/inbox
Consumer-side deduplication for PHP: the message key is written in the same database transaction as the change it causes, so a redelivered message is skipped. Works with outbox's CloudEvents headers, Symfony Messenger and Laravel Queue.
-
PHP
ianfoxdev/ledger
Double-entry ledger for PHP that runs inside your database transaction: balances derived from postings, idempotent transactions, holds and expiring credits.
-
PHP
ianfoxdev/money-lint
PHPStan rules for code that moves money: floats in amounts, HTTP calls inside database transactions, balance updates that skip the ledger, check-then-act without a lock.
-
Go
ianfoxdev/outbox
Transactional outbox for PHP: store events in the same database transaction, publish them to Kafka or RabbitMQ with a separate relay.
-
PHP
ianfoxdev/payout-split
Splits a pool of money between partners by weights: the shares always add up to the pool, and recalculating a closed period gives the same result.
-
PHP
ianfoxdev/psp-sandbox-php
PHP client for psp-sandbox: drive failure scenarios from tests, inspect callback deliveries and verify signatures.
-
PHP
ianfoxdev/slo-kit
SLOs for PHP services, measured right: latency histograms with a bucket at every SLO threshold, route templates, an explicit definition of an error, a check of /metrics against the SLO file, and a Sloth spec for burn-rate alerts.