Swap vous permet de récupérer les taux de change à partir de divers services tels que Fixer , Currency Data ou Exchange Rates Data et éventuellement de mettre en cache les résultats. Il est intégré à d'autres bibliothèques comme moneyphp/money et fournit un bundle Symfony et un package Laravel.
Fixer est une API simple et légère pour les taux de change qui prend en charge jusqu'à 170 devises mondiales. | |
changelayer fournit des taux de change et des conversions de devises fiables pour votre entreprise jusqu'à 168 devises mondiales. | |
Exchangerates fournit des taux de change et des conversions de devises fiables pour votre entreprise avec plus de 15 sources de données. |
$ composer require php-http/curl-client nyholm/psr7 php-http/message florianv/swap
use Swap Builder ;
// Build Swap
$ swap = ( new Builder ())
// Use the Fixer service as first level provider
-> add ( ' apilayer_fixer ' , [ ' api_key ' => ' Get your key here: https://fixer.io/ ' ])
// Use the currencylayer service as first fallback
-> add ( ' apilayer_currency_data ' , [ ' api_key ' => ' Get your key here: https://currencylayer.com ' ])
// Use the exchangerates service as second fallback
-> add ( ' apilayer_exchange_rates_data ' , [ ' api_key ' => ' Get your key here: https://exchangeratesapi.io/ ' ])
-> build ();
// Get the latest EUR/USD rate
$ rate = $ swap -> latest ( ' EUR/USD ' );
// 1.129
$ rate -> getValue ();
// 2016-08-26
$ rate -> getDate ()-> format ( ' Y-m-d ' );
// Get the EUR/USD rate 15 days ago
$ rate = $ swap -> historical ( ' EUR/USD ' , ( new DateTime ())-> modify ( ' -15 days ' ));
Nous vous recommandons d'utiliser les services qui soutiennent notre projet, en fournissant un forfait gratuit jusqu'à 100 demandes par mois.
La documentation de la branche actuelle peut être trouvée ici.
Voici la liste des services actuellement mis en œuvre :
Service | Devise de base | Devise de cotation | Historique |
---|---|---|---|
Fixateur | EUR (gratuit, pas de SSL), * (payant) | * | Oui |
Données monétaires | USD (gratuit), * (payant) | * | Oui |
Données sur les taux de change | USD (gratuit), * (payant) | * | Oui |
Abstrait | * | * | Oui |
monnayeur | * Crypto (devises standard limitées) | * Crypto (devises standard limitées) | Oui |
Fixateur | EUR (gratuit, pas de SSL), * (payant) | * | Oui |
Données monétaires | USD (gratuit), * (payant) | * | Oui |
taux de changeapi | USD (gratuit), * (payant) | * | Oui |
Banque centrale européenne | EUR | * | Oui |
Banque nationale de Géorgie | * | GEL | Oui |
Banque nationale de la République de Biélorussie | * | BYN (du 01-07-2016), BYR (01-01-2000 - 30-06-2016), BYB (25-05-1992 - 31-12-1999) | Oui |
Banque nationale de Roumanie | RON, AED, AUD, BGN, BRL, CAD, CHF, CNY, CZK, DKK, EGP, EUR, GBP, HRK, HUF, INR, JPY, KRW, MDL, MXN, NOK, NZD, PLN, RSD, RUB, SEK, TRY, UAH, USD, XAU, XDR, ZAR | RON, AED, AUD, BGN, BRL, CAD, CHF, CNY, CZK, DKK, EGP, EUR, GBP, HRK, HUF, INR, JPY, KRW, MDL, MXN, NOK, NZD, PLN, RSD, RUB, SEK, TRY, UAH, USD, XAU, XDR, ZAR | Oui |
Banque nationale d'Ukraine | * | UAH | Oui |
Banque centrale de la République de Turquie | * | ESSAYER | Oui |
Banque centrale de la République d'Ouzbékistan | * | UZS | Oui |
Banque centrale de la République tchèque | * | CZK | Oui |
Banque centrale de Russie | * | FROTTER | Oui |
Banque nationale bulgare | * | BGN | Oui |
WebserviceX | * | * | Non |
1Forger | * (gratuit mais limité ou payant) | * (gratuit mais limité ou payant) | Non |
Cryptonateur | * Crypto (devises standard limitées) | * Crypto (devises standard limitées) | Non |
Flux de données monétaires | * (gratuit mais limité ou payant) | * (gratuit mais limité ou payant) | Non |
Taux de change ouverts | USD (gratuit), * (payant) | * | Oui |
Xignite | * | * | Oui |
API de conversion de devises | * | * | Oui (gratuit mais limité ou payant) |
xChangeApi.com | * | * | Oui |
fastFOREX.io | USD (gratuit), * (payant) | * | Non |
taux de change.host | * | * | Oui |
Tableau | * | * | Oui |
De plus, vous pouvez ajouter vos propres services à condition qu'ils implémentent l'interface ExchangeRateService
.
La licence MIT (MIT). Veuillez consulter LICENCE pour plus d'informations.