Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Currency Rate Laravel Package

redcode/currency-rate

A Laravel package for fetching and managing currency exchange rates. Retrieve rates from configurable providers, cache results, and convert amounts between currencies through a simple, expressive API—useful for pricing, invoices, and multi-currency applications.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Multi-currency pricing and display. Deciding whether localized catalog prices are hard-coded per market or derived live from a base currency. A rate-loading library is the plumbing behind that call, but the decision is about whether FX is a first-class product capability or a marketing veneer.
  • Checkout and settlement model. Whether buyers are charged in their local currency and settled in a base currency, and where the FX risk sits. This drives whether you need a real rate pipeline with audit trails or just a display-only conversion.
  • Invoicing, subscriptions, and tax. Cross-border invoicing and VAT/tax-threshold logic usually need a timestamped, reproducible rate per transaction — a stricter requirement than "fetch today's rate."
  • Financial reporting. Normalizing revenue, refunds, and payouts into a single reporting currency, including the ability to recompute historical figures with the rate that applied at the time.
  • Build vs. buy for the FX data layer. The core PM question this package surfaces: is rate acquisition a differentiator, a commodity, or a compliance obligation? Almost always commodity-or-obligation, which argues for buying a maintained provider rather than owning the scraping and caching logic.
  • Roadmap sequencing. Whether currency support ships as a thin display layer now, with checkout/settlement deferred, or as an integrated capability. A dependency this small and this stale should only ever inform the exploration step of that decision, not the production architecture.
  • Representative use cases it points at: travel and ticketing, marketplaces with cross-border sellers, SaaS billing in emerging markets, and B2B quote-to-cash with multi-currency contracts.

When to Consider This Package

Reasonable fits (narrow):

  • A time-boxed spike or internal proof-of-concept where you need any rate source wired up in an afternoon and correctness is throwaway.
  • A reference implementation: reading its provider abstraction to inform your own interface design, rather than installing it.
  • A small internal tool (dashboards, ops utilities) where a stale rate is cosmetic and no one is invoiced off it.

Look elsewhere — likely the default verdict here:

  • Production money flows of any kind. Last release is September 2015 and there are zero dependents and four stars. That is not a maintained dependency; it is an unmaintained one. There is effectively no community to surface bugs, no security patching, and no compatibility work for modern PHP or current Laravel versions.
  • Anything requiring an SLA or provider coverage. Rate sourcing needs redundancy across providers, retry/fallback behavior, and clear failure semantics. A library this size almost certainly leaves provider selection, error handling, and caching as an exercise for the caller.
  • Compliance, audit, or accounting use. You need immutable, timestamped, reproducible rate records and a data provenance story. A 2015 single-source loader will not give you an audit trail, and you cannot lean on a vendor for a correction if a rate is wrong.
  • Long-lived codebases. Even if the code works today, adopting it means you own it forever with no upstream. That is a maintenance tax disguised as a small dependency win.
  • The honest test to apply: can your team fork, vendor, and fully own this in under a day, and are you comfortable being the only maintainer? If the answer to either is no, choose a maintained provider or a thin in-house adapter over a stable, well-documented rates API.

How to Pitch It (Stakeholders)

To executives: "We evaluated an open-source library for currency rate loading. It is functionally in the right category but effectively abandoned — four stars, zero dependents, no release in roughly a decade. It is useful for a two-day feasibility spike to prove out multi-currency flows, and unsuitable as a production dependency. The actual decision in front of us isn't 'this library or another library'; it's whether FX is a product feature we own or a commodity we buy. I recommend we buy — a paid or well-maintained rates API behind our own thin interface — and keep the spike scoped to validating demand and UX, not to building infrastructure."

To engineering: "Treat redcode/currency-rate as a design reference, not a dependency. If we touch it at all, it's inside a throwaway branch behind an interface we control — a RateProvider contract with getRate(from, to, asOf) — so the eventual swap is a one-file change. Hard requirements before anything reaches production: historical rates keyed by timestamp, deterministic re-computation for invoices and refunds, provider fallback, aggressive caching with explicit staleness rules, and tests around rounding and currency-minor-unit handling. Also flag that FX correctness is a finance/legal surface, not just an engineering one — we should agree who signs off on rate accuracy before we write the adapter."

One-line summary: cheap to evaluate, expensive to depend on — spike with it if you must, but abstract it immediately and plan to replace it.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console