Logo Lanfrica

beamkenya/ex_mpesa

Domaine:

digital infrastructure

Type de record:

software
Créateur:
bea
Hôte:
Daraja API(Mpesa) Payment Library for Elixir # ExMpesa > Payment Library For Most Mpesa(Daraja) Payment API's in Kenya. Let us get this :moneybag: ## Table of contents - Features - Installation - Configuration - Documentation - Contribution - Contributors - Licence ## Features - [x] STK Transaction Validation - [x] B2C - [x] B2B - [x] C2B - [x] Reversal - [x] Transaction Status - [x] Account Balance ## Installation If available in Hex, the package can be installed by adding `ex_mpesa` to your list of dependencies in `mix.exs`: ```elixir def deps do [ {:ex_mpesa, "~> 0.1.0"} ] end ``` ## Configuration Create a copy of `config/dev.exs` or `config/prod.exs` from `config/dev.sample.exs` Use the `sandbox` key to `true` when you are using sandbox credentials, chnage to `false` when going to `:prod` ### Mpesa (Daraja) Mpesa Daraja API link: developer.safaricom.co.ke Add below config to dev.exs / prod.exs files This asumes you have a clear understanding of how Daraja API works. You can also refer to this Safaricom Daraja API Tutorial: peternjeru.co.ke by Peter Njeru ```elixir config :ex_mpesa, consumer_key: "72yw1nun6g1QQPPgOsAObCGSfuimGO7b", consumer_secret: "vRzZiD5RllMLIdLD", mpesa_short_code: "174379", mpesa_passkey: "bfb279f9aa9bdbcf158e97dd71a467cd2e0c893059b10f78e6b72ada1ed2c919", mpesa_callback_url: "91eb0af5.ngrok.io" ``` ## Documentation The docs can be found at hexdocs.pm. ### Quick Examples #### Mpesa Express (STK) ```elixir iex> ExMpesa.Stk.request(%{amount: 10, phone: "254724540000", reference: "reference", description: "description"}) {:ok, %{ "CheckoutRequestID" => "ws_CO_010320202011179845", "CustomerMessage" => "Success. Request accepted for processing", "MerchantRequestID" => "25558-10595705-4", "ResponseCode" => "0", "ResponseDescription" => "Success. Request accepted for processing" }} ``` ## Contribution If you'd like to contribute, start by searching through the issues and pull requests to see whethe …