finds.dev← search

// the find

aviabird/gringotts

★ 501 · Elixir · MIT · updated Apr 2025

A complete payment library for Elixir and Phoenix Framework

Gringotts is an Elixir payment gateway abstraction library modeled after ActiveMerchant, providing a unified API across multiple payment processors. It's for Phoenix developers who need to support more than one gateway without writing per-gateway integration code. The gateway list is small (6 supported, several in-progress) and the project has been largely dormant since 2019 despite a recent 2025 push.

The protocol-based Money abstraction is the right call — delegating money representation to ex_money or any conforming library avoids the usual float disaster. The mix task scaffolding for new gateway contributions (templates/ directory) lowers the bar for adding gateways correctly. Unit tests use recorded HTTP responses rather than live API calls, so tests are fast and don't require sandbox credentials. The unified response struct across gateways means you write your error handling once.

Six gateways in 2026 is thin — notably absent are Braintree, Adyen, Square, and PayPal, which are the gateways most Phoenix shops actually need. The last meaningful development was around 2019; the 2025 push is likely a minor maintenance touch, not active feature work, which means you're inheriting a maintenance burden if you adopt it. Config-based gateway credentials (Application config at startup) don't support multi-tenancy or runtime credential switching, which rules it out for SaaS platforms where tenants bring their own gateway accounts. The README demo links to a Heroku app that almost certainly no longer runs.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →