
Todo desenvolvedor que já manteve um site de comércio eletrônico lhe dirá que ser responsável pelo manuseio adequado da moeda pode ser uma tarefa muito estressante. Se o senhor escrever um código com bugs ou inseguro, vai custar dinheiro ao seu empregador ou ao usuário. Uma complicação adicional para os desenvolvedores pode ser a conversão de moedas se o aplicativo atender a um público internacional. A última coisa que os desenvolvedores precisam é de uma API complicada, especialmente uma que os ajude a lidar com a moeda. É aí que entra a currencylayer chega: uma API simples e abrangente para conversão de moedas para seus aplicativos nativos e da Web!
Resultados rápidos
Aqui estão alguns dos destaques da oferta do currencylayer:
- Com a confiança da Disney Pixar, FedEx, Lyft e MetLife
- Suporta dezenas de moedas
- Oferece suporte à conversão de moeda bitcoin
- Fornece o uso da API HTTPS
- O valor da moeda é atualizado a cada 60 segundos
- Limpar documentação com vários exemplos de código (cURL, PHP, jQuery, etc.)
- Preços muito competitivos
Usando currencylayer
ofertas do currencylayer registro gratuito com uma generosa cota de solicitações para testes. Depois de se inscrever, o senhor receberá uma chave de API para dar início ao desenvolvimento. Munido de uma chave de API e da documentação, é hora de usar os endpoints da API do currencylayer para fazer experiências com moedas!
Dicas para todas as solicitações de currencylayer
- Todas as solicitações devem ser solicitações GET
- O
access_key
que representa sua API KEY, é necessário para todas as solicitações - O senhor pode adicionar
format=1
a qualquer solicitação para que o senhor solicite que o currenclylayer formate a resposta JSON (muito bom!) - O senhor pode adicionar
source={code}
para alterar a moeda de origem deUSD
para o idioma que o senhor desejar - O senhor pode adicionar
currency={currencylist}
para especificar para quais moedas o senhor deseja obter informações - O currencylayer fornece exemplos de código abrangentes em seu site documentação
Como obter uma listagem de moedas
Uma boa primeira etapa é usar o endpoint de listagem de moedas para ver quais moedas são compatíveis com o currencylayer:
# The "list" endpoint provides a basic list of supported currencies curl http://apilayer.net/api/list?access_key=MY_API_KEY&format=1
// Response: { "success":true, "terms":"https:\/\/currencylayer.com\/terms", "privacy":"https:\/\/currencylayer.com\/privacy", "currencies":{ "AED":"United Arab Emirates Dirham", "AFN":"Afghan Afghani", "ALL":"Albanian Lek", "AMD":"Armenian Dram", "ANG":"Netherlands Antillean Guilder", "AOA":"Angolan Kwanza", "ARS":"Argentine Peso", "AUD":"Australian Dollar", "BTC":"Bitcoin", // Yay bitcoin! // ... "USD":"United States Dollar", "UYU":"Uruguayan Peso", "UZS":"Uzbekistan Som", "VEF":"Venezuelan Bol\u00edvar Fuerte", "VND":"Vietnamese Dong" } }
currencylayer oferece suporte a uma lista exaustiva de moedas, ampliando seu alcance internacional! Observe também que o senhor pode adicionar format=1
ao URL de sua solicitação para que o
Obtenção de tarifas em tempo real
As informações sobre taxas em tempo real são provavelmente o uso mais popular de um serviço de conversão de moedas como o currencylayer, especialmente quando o senhor está lidando com uma moeda volátil como o bitcoin. No caso de sites de comércio eletrônico, depois de obter a localização do usuário (por meio de comparação de IP ou preferência do usuário), os sites localizados exibirão um preço localizado.
O senhor pode usar o currencies
para obter apenas a conversão que o senhor deseja
# Retrieve the value of USD compared to EUR (the Euro) # If you don't provide a "currencies" key, all currencies will be returned curl http://apilayer.net/api/live?format=1¤cies=EUR&access_key=MY_API_KEY
{ "success":true, "terms":"https:\/\/currencylayer.com\/terms", "privacy":"https:\/\/currencylayer.com\/privacy", "timestamp":1494266647, "source":"USD", "quotes":{ "USDEUR":0.914798 } }
A extração de taxas de câmbio “em massa” é uma maneira inteligente de limitar o uso da API; currencylayer permite que os desenvolvedores obtenham vários valores de moeda de uma só vez:
# Retrieve the value of USD compared to EUR (the Euro), GBP (Pound), BTC (Bitcoin) curl http://apilayer.net/api/live?format=1¤cies=GBP,EUR,BTC&access_key=MY_API_KEY
{ "success":true, "terms":"https:\/\/currencylayer.com\/terms", "privacy":"https:\/\/currencylayer.com\/privacy", "timestamp":1494266647, "source":"USD", "quotes":{ "USDGBP":0.77271, // 1 USD is 0.77271 Pounds (GBP) "USDEUR":0.914798, "USDBTC":0.000628 } }
A menos que o senhor precise da precisão do momento, eu recomendaria armazenar em cache as respostas da camada de moeda para manter a velocidade do seu sistema e a eficiência do uso da API. Adoro o fato de o currencylayer permitir que os desenvolvedores obtenham informações em massa.
Obtendo dados históricos de moedas
A recuperação de dados históricos também é um recurso interessante do currencylayerespecialmente quando o senhor trabalha com moedas voláteis. Esse recurso é excelente para criar gráficos com base em valores de moeda.
# Get the value of BTC one year ago curl http://apilayer.net/api/historical?date=2016-05-08¤cies=BTC&format=1&access_key=MY_API_KEY # Get the value of BTC two years ago curl http://apilayer.net/api/historical?date=2015-05-08¤cies=BTC&format=1&access_key=MY_API_KEY
// 2016 { "success":true, "terms":"https:\/\/currencylayer.com\/terms", "privacy":"https:\/\/currencylayer.com\/privacy", "historical":true, "date":"2016-05-08", "timestamp":1462751999, "source":"USD", "quotes":{ "USDBTC":0.002177 } } // 2015 { "success":true, "terms":"https:\/\/currencylayer.com\/terms", "privacy":"https:\/\/currencylayer.com\/privacy", "historical":true, "date":"2015-05-08", "timestamp":1431129599, "source":"USD", "quotes":{ "USDBTC":0.004093 } }
O ponto de extremidade de dados históricos aceita um único argumento de data e retorna o valor da moeda para cada moeda compatível.
Usando JSONP
Sou um grande fã do JSONPO número de vezes em que tive que codificar um proxy para evitar o CORS me tornou um desenvolvedor irritado e cínico. currencylayer vai além para oferecer suporte a JSONP:
// Get a conversion from USD to GBP for $20 $.ajax({ url: 'http://apilayer.net/api/convert?access_key=MY_ACCESS_KEY&from=USD&to=GBP&amount=20, dataType: 'jsonp', success: function(json) { // Update the pricing element with the GBP £ value document.querySelector('.price').html('£' + json.result); } });
Obrigado por fornecer suporte a JSONP, currencylayer!
Consultas de período de tempo
As consultas de período de tempo são muito úteis para conhecer a alteração do valor da moeda com datas de início e término definidas. Outro ótimo exemplo é o reembolso de transações de bitcoin; se o seu bitcoin for baseado em dólares americanos e o bitcoin tiver subido significativamente desde a transação de origem, o senhor desejará saber o valor do BTC no momento da venda e ajustar o valor do BTC reembolsado ao cliente.
# Customer wants a refund for a purchase made one month earlier # In this case we need to figure out how much EUR has changed curl http://apilayer.net/api/timeframe?start_date=2017-04-01&end_date=2017-05-01¤cies=EUR&format=1&access_key=MY_APK_KEY
{ "success": true, "terms": "https://currencylayer.com/terms", "privacy": "https://currencylayer.com/privacy", "timeframe": true, "start_date": "2010-03-01", "end_date": "2010-04-01", "source": "USD", "quotes": { "2010-03-01": { "USDEUR": 0.738541 }, "2010-03-02": { "USDEUR": 0.736145 }, [...] } }
Também recomendo dar uma olhada no este recurso do Node.js que envolve o currencylayer em um padrão semelhante ao REST, permitindo até mesmo a pesquisa de moeda a cada x
milissegundos!
Desenvolver um sistema ou aplicativo que aceite dinheiro, muito menos que exija conversão de moeda, pode ser incrivelmente estressante; a última coisa que os desenvolvedores precisam é de uma API excessivamente complicada para fazer o trabalho com a moeda. A API currencylayer é uma das APIs mais fáceis de usar com que já trabalhei. Depois de avaliar alguns outros serviços de conversão de moedas, posso acrescentar que o currencylayer parece ter o preço mais razoável, o que é um grande bônus. Se o senhor desenvolve sistemas que exigem conversão de moedas ou deseja adicionar preços localizados, experimente o currencylayer. Simples, econômico e amigável ao desenvolvedor!