Um olhar sobre a API do m-pesa
Antes de ler,por favor note que o conteúdo expresso neste artigo, reflecte somente a percepção e opinião do autor, não podendo de forma alguma ser vinculado a Vodafone M-Pesa, SA.
Na semana passada,no dia 01/03/2018, fui convidado a assistir a prova de conceito da API do m-pesa , uma sessão em que desenvolvedores representantes de diversas organizações e grupos da comunidade local , tiveram a oportunidade de testar em primeira mão o novo gateway de pagamentos online do m-pesa, a carteira móvel da vodacom.
De forma geral a sessão foi muito produtiva e permitiu que os desenvolvedores pudessem expolorar o futuro dos pagamentos móveis.
Neste curto artigo, pretendo apontar alguns dos aspectos que achei super positivos , e os que ainda abrem espaço para melhoria.
A equipe da vodacom, tentou tornar o portal de acesso ao gateway, similar à outros ambientes de pagamento como o PayPal , safaricom ,paygate, entre outros , mas adequado ao nosso contexto. Assim sendo , quem já tiver usado um desses serviços , certamente não encontrará dificuldades em se adequar ao gateway de pagamentos do m-pesa.
O acesso ao gateway é através de uma API restful de fácil compreensão que pode ser usada a partir de qualquer cliente web.
De forma geral, após um utilizador aceder a sua aplicação/site e precisar pagar por um serviço usando o m-pesa ,ele indica o seu número de telefone.
Após obter o número de telefone do utilizador, a sua aplicação, faz uma requisição HTTP à um servidor web, enviando consigo um conjunto de parâmetros e headers que servem para identificar :
- a chave identificadora da sua aplicação;
- o valor a cobrar ;
- o número de onde o valor será descontado;
- Entre outros campos que identificam de forma única transação .
Seguidamente , o cliente , recebe uma notificação/mensagem sob forma de um pop up USSD no seu telemóvel , para confirmar que deseja pagar um certo valor a determinada empresa.
Assim que o cliente confirma o pagamento, o servidor do m-pesa envia uma resposta a requisição HTTP feita pela sua aplicação, com uma mensagem de sucesso ou de erro , dependendo da confirmação do utilizador.
Finalmente, a vodacom envia uma SMS ao utilizador a notificá-lo sobre a operação e é esperado que a sua aplicação, também mostre a confirmação de pagamento ao utilizador ( ou nem por isso ), hehehehe.
De salientar que para além da cobrança de valores , a API do m-pesa também disponibiliza endpoints para a devolução do valor cobrado e para a verificação do estado de uma transação.
Alguns dos pontos positivos que pude observar são :
- A API é de muito fácil compreensão
- Não é necessário instalar uma biblioteca com código cliente;
- A vodacom disponibiliza um SDK Java para facilitar a integração de aplicações escritas em Java. apesar de o SDK Java ser o único oficial até ao momento , alguns desenvolvedores já começaram a implementar SDK’s para outras linguagens como o php e kotlin.
Alguns dos pontos que acredito que não agradarão muitos developers são:
- Com o lançamento da API automatizada , esperava que qualquer pessoa que quisesse fazer cobranças pelo m-pesa , tivesse apenas de registar uma conta no portal do m-pesa mas infelizmente , o cliente ainda tem de se envolver numa relação contratual com a vodacom , através de uma empresa devidamente registada, principalmente devido a restrições legais, isto é, o banco de Moçambique define que só empresas registadas possam facturar cobranças de valores monetários .
- As mensagens devolvidas pela API, em caso de erro , ainda não são intuitivas e necessitam de algum esforço para serem compreendidas
- A pior de novidade é que a API só está disponível para testes de forma restrita :(
Apesar de nem tudo ser mar de rosas , não houve dúvidas de que a API do m-pesa , certamente irá abrir espaço para a rentabilização de diversos negócios online , startups e alavancar o ecossistema digital em Moçambique.
ps:
Uma das aplicações demo desenvolvidas em javascript durante a sessão de teste da API, pode ser encontrada neste repositório no github e futuramente serão adicionados mais demos em outras linguagens nesta página do github da MozDevz .
Para já, só nos resta esperar ansiosamente pelo dia em que a vodacom fará o lançamento da API para que as empresas Moçambicanas comecem a fazer dinheiro online de forma mais fácil.