Download the PHP package misaf/vendra-currency without Composer
On this page you can find all versions of the php package misaf/vendra-currency. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download misaf/vendra-currency
More information about misaf/vendra-currency
Files in misaf/vendra-currency
Package vendra-currency
Short Description Currency management with a fiat and crypto catalog, per-tenant activation, and a single default currency
License MIT
Homepage https://github.com/misaf/vendra-currency
Informations about the package vendra-currency
Vendra Currency
Tenant-aware currency management for Vendra applications.
Own the concrete Misaf\VendraCurrency\Support\EloquentCurrencyResolver adapter here and bind it to Support's CurrencyResolver contract. Preserve configurable models and columns, active filtering, default selection, tenant isolation, and fallback behavior. Consumers depend on the shared contract rather than this adapter.
Unexpected resolver and query failures are reported through Laravel before returning currency defaults. Missing providers, empty catalogs, and tables awaiting migration remain quiet fallbacks.
Features
- Catalog of installable currencies: ISO 4217 fiat (via
moneyphp/money) and crypto currencies (viamoneyphp/crypto-currencies) - Enable/disable installed currencies per tenant with a single enforced default currency
- Money formatting through
cknow/laravel-money - Filament resource on the
adminpanel
Requirements
- PHP 8.4+
- Laravel 13
- Filament 5
- Livewire 4
- Pest 4
misaf/vendra-support
Installation
Optional configuration and translations:
The service provider and Filament plugin are auto-registered.
Usage
Install a currency from the catalog:
Browse the catalog:
Format an amount stored in minor units:
Exactly one enabled currency is the default at any time; use the domain action to switch it:
Platform currencies
Rows with a null tenant id are the platform's own currencies, which the console
prices plans and credits reseller wallets in. Each store keeps its own
currencies and its own default, and neither ever changes the other. Outside a
tenant, InstallCurrenciesAction, SetDefaultCurrencyAction and the bound
CurrencyResolver work on the platform rows; Currency::query()->platform()
reaches them from anywhere. The schema keeps platform codes unique and allows
one platform default. Database\Seeders\PlatformCurrencySeeder installs USD
for the seeded plans.
Filament
The Currencies resource lives in the Sales cluster on the admin panel.
CurrencyTable::configure(), InstallCurrenciesTableAction::make() and
SetDefaultCurrencyTableAction::make() take the resource that authorizes them,
so the console reuses them for platform currencies. Install currencies from the searchable catalog, toggle their active state, reorder them, and pick the default via the table toggle or row action.
Testing
Run the package checks from the project root:
License
MIT. See LICENSE.
All versions of vendra-currency with dependencies
cknow/laravel-money Version ^8.5
misaf/filament-jalali Version ^5.1.4
misaf/vendra-support Version self.version
moneyphp/crypto-currencies Version ^1.1.0
spatie/eloquent-sortable Version ^5.0.1
spatie/laravel-package-tools Version ^1.93.1