API em NodeJS para M-PESA (Moçambique)
# mpesa-api-nodejs
API escrita em NodeJS para M-PESA (Moçambique)
Esta API (Aplication programing interface), permite efectuar transações no m-pesa usando o NodeJS.
## Instalação
```bash
npm install mpesa-api-nodejs
```
## Implementação
Primeiramente crie uma conta no site
developer.mpesa.vm.co.mz e obtenha a **api key** e o **public key**
```JavaScript
const MpesaAPI = require("mpesa-api-nodejs");
const api_key = ""; // Aqui introduz a api key disponibilizada no site
const public_key = ""; // Aqui introduz o public key disponibilizado no site
const environment = "development"; // development/production
const ssl = true; // True se pretende utilizar uma conexão segura (SSL)
// Inicialização e criação do objecto
const mpesa = MpesaAPI.init(api_key, public_key, environment, ssl);
```
### Transferência business to client (de negócio para cliente)
Transferência de valor do agente para o clinte
```JavaScript
const data = {
value: 10,
client_number: "258840000000",
agent_id: 171717,
transaction_reference: 1234567,
third_party_reference: 33333
};
const response = await mpesa.b2c(data);
/* OR */
mpesa.b2c(data).then(response => {
console.log(response);
}).catch(ex => console.log(ex));
```
##### Provável resposta caso bem sucedido
```json
{
"output_ResponseCode": "INS-0",
"output_ResponseDesc": "Request processed successfully",
"output_TransactionID": "wgzupjwc5mm9",
"output_ConversationID": "ccf590fbfa1d4ff4a245b9c430a64220",
"output_ThirdPartyReference": "33333"
}
```
### Transferência client to business (de cliente para negócio)
Transferência de valor do cliente para o agente
```JavaScript
const data = {
value: 10,
client_number: "258840000000",
agent_id: 171717,
transaction_reference: 1234567,
third_party_reference: 33333
};
const response = await mpesa.c2b(data);
/* OR */
mpesa.c2b(data).then(response => {
console.log(response);
}).catch(ex => console.log(ex));
```
##### Provável resposta caso bem sucedido
```json
{
"output_ResponseCode": "INS …