Configurer un convertisseur de devises avec ExchangeRatesApi.io —
Les produits et services sont de plus en plus consultés et achetés en ligne. Comme nous vivons dans un village mondial, si nous avons une boutique en ligne, nombre de nos visiteurs seront très probablement basés dans un pays différent du nôtre et utiliseront une devise différente de la nôtre.
Si nous voulons fournir un grande expérience utilisateur pour eux, pour augmenter les chances qu'ils achètent notre produit, et reviennent sur le site, il y a quelque chose de très simple que nous pouvons faire : afficher le prix des articles d'achat dans leur propre devise. Pour y parvenir, nous pouvons convertir le prix de l'article d'une devise de base (disons, EUR) dans la devise du visiteur (disons, CNY) en utilisant le taux de change entre les deux devises à ce moment précis.
Les taux de change changent. constamment, sur une base horaire (et même plus rapidement). Cela signifie que nous ne pouvons pas avoir une liste prédéfinie de taux de change stockée dans notre application ; ceux-ci doivent être rassemblés en temps réel. Cependant, ce n'est pas un problème de nos jours. Grâce aux API fournissant des données de change, nous pouvons ajouter un convertisseur de devises à nos boutiques en ligne assez facilement.
Dans cet article, nous présenterons ExchangeRatesApi.ioune solution API populaire fournissant des données pour taux de change historiques pour 168 devises.
Ce que nous voulons réaliser
En termes simples, nous voulons faire ce que fait Amazon : Donner la possibilité à l'utilisateur de notre boutique en ligne d'afficher les prix dans une devise qui lui est propre. en choisissant.
Lors de la visite d'une page produit sur amazon.co.ukle prix s'affiche en livres sterling :

![19659013]Page produit sur <a href=](https://i0.wp.com/res.cloudinary.com/indysigner/image/fetch/f_auto,q_auto/w_400/https://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/95f0d5aa-70a0-4070-8bfc-f5442250e344/1-exchange-rate-api-bsa.png?resize=660%2C496&ssl=1)
Mais nous pouvons également voir le prix dans une devise différente, si nous le souhaitons. Dans les paramètres de pays/région, il est possible de changer la devise :

Après avoir cliqué sur «Modifier», on nous présente une entrée de sélection, contenant plusieurs devises prédéfinies. Parmi eux, j’ai choisi l’euro:

Enfin, de retour sur la page produit, le prix est affiché en euros :

Ayant accès aux données de taux de change via une API, nous pouvons implémenter cette même fonctionnalité pour nos propres boutiques en ligne.
Comment le faisons-nous
ExchangeRatesApi.io fournit une API REST, offrant les dernières données forex pour 168 devises. Il est toujours à jour et compile les données d'une large base de sources commerciales et de banques du monde entier.
Après inscription à leur service ( conseil: ils ont un niveau gratuit), une clé d'accès API nous sera attribuée :

Nous récupérons notre clé d'accès API et l'ajoutons au point de terminaison :
https://api.exchangeratesapi.io/v1/latest
? access_key = VOTRE_API_KEY
Pour visualiser la réponse, copiez/collez le point de terminaison dans votre navigateur :

Comme on peut le voir dans l'image ci-dessus, les données pour les 168 devises ont été récupérées. Pour réduire les résultats à quelques-uns d'entre eux, nous indiquons les codes de devise via les symboles param .
Par exemple, pour récupérer des données pour l'USD, la livre sterling, le dollar australien, le japonais Yen et Yuan chinois (par rapport à l'euro, qui est la devise de base par défaut), nous exécutons ce point de terminaison :
https://api.exchangeratesapi.io/v1/latest
?access_key=YOUR_API_KEY
&symboles=USD,GBP,AUD,JPY,CNY
La réponse est la suivante :
{
"succès": vrai,
"horodatage": 1620904263,
"base": "EUR",
"date": "2021-05-13",
"les taux": {
"USD": 1.207197,
"GBP": 0.860689,
"AUD": 1.568196,
"JPY": 132.334216,
"CNY": 7,793428
}
}
Quelles données pouvons-nous récupérer
ExchangeRatesApi.io fournit plusieurs points de terminaison REST, pour récupérer différents ensembles de données. Selon le forfait souscrit, les points de terminaison peuvent être disponibles ou non (leur page de tarification explique quelles fonctionnalités sont couvertes par chaque niveau).
Les points de terminaison indiqués ci-dessous doivent être attachés à https :/ /api.exchangeratesapi.io/v1/
(par exemple : latest
devient https://api.exchangeratesapi.io/v1/latest
), et a ajouté le access_key
avec votre clé d'accès API.
Derniers taux
Le derniers
endpoint renvoie les données de taux de change en temps réel pour toutes les devises disponibles ou pour un set.
Conversion de devises
Le point de terminaison convert
permet de convertir un montant, de n'importe quelle devise vers n'importe quelle autre parmi les 168 devises prises en charge.
Taux historiques[19659045] Ce point final a la forme AAAA-MM-JJ
(comme 2021-03-20
), correspondant à la date pour laquelle nous voulons récupérer les informations de taux de change historiques.
Données de séries chronologiques
La série chronologique
renvoie les données historiques quotidiennes pour les taux de change entre deux spécifiés dates, pour une période maximale de 365 jours.
Données de fluctuation
Le fluctuation
endpoint renvoie les données de fluctuation entre les dates spécifiées, pour une période maximale de 365 jours.[19659064]Récupération de données à partir de l'API
Afin de mettre en œuvre le convertisseur de devises, nous pouvons utiliser le point de terminaison convert
(pour lequel nous devons être abonnés au niveau de base) :
https:// api.exchangeratesapi.io/v1/convert
?access_key=YOUR_API_KEY
&de=GBP
&à=JPY
&montant=25
La réponse que nous obtiendrons ressemble à ceci :
{
"succès": vrai,
"mettre en doute": {
"de": "GBP",
"à": "JPY",
"montant": 25
},
"Info": {
"horodatage": 1620904845,
"taux": 154.245331
},
"historique": "",
"date": "2021-05-14",
"résultat": 3856.079212
}
Étant donné que les données sont exposées via une API REST, nous pouvons facilement les récupérer pour n'importe quelle application basée sur n'importe quelle pile, qu'elle s'exécute côté client ou côté serveur, sans avoir à installer de bibliothèque supplémentaire.
Côté client
Le code JavaScript suivant se connecte à l'API et imprime le montant converti et le taux de change dans la console:
// Définir le point de terminaison et votre clé d'accès
const access_key = 'YOUR_API_KEY';
const de = 'GPB';
const à = 'JPY';
montant total = 25 ;
const url = `https://api.exchangeratesapi.io/v1/convert?access_key=$ {access_key} & from = $ {from} & to = $ {to} & amount = $ {amount}`;
// Obtenez les taux de change les plus récents via le point de terminaison « derniers » :
chercher (URL)
.then(réponse => réponse.json())
.then(données => {
// Si notre niveau ne prend pas en charge le point de terminaison demandé, nous obtiendrons une erreur
si (données.erreur) {
console.log('Erreur :', data.error);
revenir;
}
// Nous avons les données
console.log('Succès :', données);
console.log('Montant converti : ' + data.result);
console.log('(Taux de change : ' + data.info.rate + ')');
})
.catch((erreur) => {
console.error('Erreur :', erreur);
});
Côté serveur
Le code suivant montre comment se connecter à l'API REST et imprimer le résultat converti, dans une application PHP.
La même procédure peut être implémentée pour d'autres langages :
- Définissez l'URL du point de terminaison, attachez votre clé d'accès API.
- Connectez-vous au point de terminaison, récupérez sa réponse au format JSON.
- Décodez les données JSON en un objet/tableau.
- Obtenez le montant converti sous la propriété
result
.
// Définir le point de terminaison et votre clé d'accès
$ access_key = 'VOTRE_API_KEY';
$de = 'GBP';
$à = 'JPY';
montant $ = 25 ;
// Initialiser CURL :
$ch = curl_init("https://api.exchangeratesapi.io/v1/convert?access_key=${access_key}&from=${from}&to=${to}&amount=${amount}");
curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, vrai);
// Récupère les données JSON :
$json = curl_exec($ch);
curl_close($ch);
// Décode la réponse JSON :
$conversionResult = json_decode($json, true);
// Accéder au montant converti
echo $ conversionResult ['result'];
Conclusion
ExchangeRatesApi.io est né comme un projet open sourceavec l'intention de fournir les taux de change actuels et historiques publiés par la Banque centrale européenne, et écrit en Python.
Si vous souhaitez intégrer la conversion de devises pour votre boutique en ligne, pour émuler Amazon et offrir une expérience utilisateur convaincante à vos visiteurs, vous pouvez télécharger et installer le projet open-source.
Et vous pouvez également le rendre beaucoup plus facile: si vous souhaitez que votre convertisseur de devises fonctionne en un rien de temps, pour n'importe quel langage de programmation, en accédant à des données toujours à jour qui incluent un large éventail de sources commerciales, et à partir d'un super- API rapide avec une disponibilité de près de 100 % (99,9 % au cours des 12 derniers mois), puis consultez ExchangeRatesApi.io.

Source link