AtEx v0.20.21 AtEx.Gateway.Payments.Mobile.B2c View Source
This module holds the implementation for the HTTP Gateway that runs calls against the Africas Talking Mobile B2C API
Link to this section Summary
Functions
This function initiates a mobile B2C request by making a HTTP POST request to the Africa's talking Mobile B2C endpoint.
Process results from calling the gateway
Link to this section Types
option()
View Sourceoption() :: {:method, Tesla.Env.method()} | {:url, Tesla.Env.url()} | {:query, Tesla.Env.query()} | {:headers, Tesla.Env.headers()} | {:body, Tesla.Env.body()} | {:opts, Tesla.Env.opts()}
Link to this section Functions
This function initiates a mobile B2C request by making a HTTP POST request to the Africa's talking Mobile B2C endpoint.
Config
Add b2c_product_name
key to your AtEx configs
Parameters
attrs: - a list of Recipient each a map containing a phoneNumber
, currencyCode
, amount
and a map of metadata
key optionally it may also contain name
, reason
and providerChannel
see the docs at https://build.at-labs.io/docs/payments%2Fmobile%2Fb2c%2Foverview for how to use these keys
Example
iex>AtEx.Gateway.Payments.Mobile.B2c.b2c_checkout([%{phoneNumber: "254724540000", amount: 10, currencyCode: "KES", metadata: %{ message: "I am here"}}])
{:ok,
%{
"entries" => [
%{
"phoneNumber" => "+254724540000",
"provider" => "Athena",
"providerChannel" => "525900",
"status" => "Queued",
"transactionFee" => "KES 0.1000",
"transactionId" => "ATPid_beeb0be6b1bff57ec8f32675fe3f6e72",
"value" => "KES 10.0000"
}
],
"numQueued" => 1,
"totalTransactionFee" => "KES 0.1000",
"totalValue" => "KES 10.0000"
}}
Process results from calling the gateway