PHPackages                             brilliant\_mind/m-pesa - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Payment Processing](/categories/payments)
4. /
5. brilliant\_mind/m-pesa

ActiveLibrary[Payment Processing](/categories/payments)

brilliant\_mind/m-pesa
======================

MPesa package for laravel

v1.1.0(2mo ago)029↑200%MITPHPPHP ^8.1

Since Feb 28Pushed 2mo agoCompare

[ Source](https://github.com/osvaldogeraldo/m-pesa)[ Packagist](https://packagist.org/packages/brilliant_mind/m-pesa)[ RSS](/packages/brilliant-mind-m-pesa/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (4)Versions (4)Used By (0)

M-Pesa PHP SDK
==============

[](#m-pesa-php-sdk)

Este pacote permite interagir com a API do M-Pesa, facilitando transações como C2B, B2B, B2C, e consultas de transações. Ele também oferece suporte para transações de reversão.

Installation
------------

[](#installation)

To install this dependency, just run the command below:

```
composer require BrilliantMind/m-pesa
```

Configuração
------------

[](#configuração)

Antes de utilizar o SDK, você deve configurar as credenciais e parâmetros da API do M-Pesa. O pacote permite que você defina as seguintes variáveis:

- **`api_key`** — Sua chave de API fornecida pela M-Pesa.
- **`public_key`** — Chave pública utilizada para encriptação das requisições.
- **`environment`** — O ambiente de execução da API, que pode ser:
    - `'development'` para o ambiente de desenvolvimento (sandbox).
    - `'production'` para o ambiente de produção.
- **`service_provider_code`** — Código do provedor de serviço. O valor padrão é `'171717'`.
- **`origin`** — Origem da aplicação, usada para validar as requisições. Por padrão ja foi defenido `'developer.mpesa.vm.co.mz'`
- **`initiatorIdentifier`** — Identificador do iniciador, que autoriza as transações.
- **`securityCredential`** — Credencial de segurança encriptada, utilizada para verificar a identidade do iniciador.

### Exemplo de configuração:

[](#exemplo-de-configuração)

```
use BrilliantMind\MPesa\Config\Config;

// Configuração da API M-Pesa
Mpesa::config(
    api_key: 'your-api-key',
    public_key: 'your-public-key',
    environment: 'development', // ou 'production'
    service_provider_code: '171717',
    origin: 'developer.mpesa.vm.co.mz',
    initiatorIdentifier: 'your-initiator-id',
    securityCredential: 'your-security-credential'
);
```

### C2B

[](#c2b)

- A Chamada API C2B é utilizada como uma transação normal entre clientes e empresas. Os fundos da carteira de dinheiro móvel do cliente serão deduzidos e transferidos para a carteira de dinheiro móvel da empresa. Para autenticar e autorizar esta transação, a M-Pesa Payments Gateway iniciará uma mensagem USSD Push para o cliente para recolher e verificar o número PIN do dinheiro móvel. Este número não é armazenado e é utilizado apenas para autorizar a transação.

```
