Struct mpesa::services::TransactionReversalBuilder
source · pub struct TransactionReversalBuilder<'mpesa, Env: ApiEnvironment> { /* private fields */ }
Implementations§
source§impl<'mpesa, Env: ApiEnvironment> TransactionReversalBuilder<'mpesa, Env>
impl<'mpesa, Env: ApiEnvironment> TransactionReversalBuilder<'mpesa, Env>
sourcepub fn new(
client: &'mpesa Mpesa<Env>,
initiator: &'mpesa str
) -> TransactionReversalBuilder<'mpesa, Env>
pub fn new( client: &'mpesa Mpesa<Env>, initiator: &'mpesa str ) -> TransactionReversalBuilder<'mpesa, Env>
Creates new TransactionReversalBuilder
sourcepub fn command_id(self, command_id: CommandId) -> Self
pub fn command_id(self, command_id: CommandId) -> Self
Adds CommandId
. Defaults to CommandId::TransactionReversal
if no value explicitly passed
Errors
If CommandId
is not valid
sourcepub fn transaction_id(self, transaction_id: &'mpesa str) -> Self
pub fn transaction_id(self, transaction_id: &'mpesa str) -> Self
Add the Mpesa Transaction ID of the transaction which you wish to reverse
This is a required field.
sourcepub fn receiver_party(self, receiver_party: &'mpesa str) -> Self
pub fn receiver_party(self, receiver_party: &'mpesa str) -> Self
Organization receiving the transaction
This is required field
sourcepub fn receiver_identifier_type(
self,
receiver_identifier_type: IdentifierTypes
) -> Self
pub fn receiver_identifier_type( self, receiver_identifier_type: IdentifierTypes ) -> Self
Type of organization receiving the transaction
This is an optional field, will default to IdentifierTypes::ShortCode
sourcepub fn result_url(self, result_url: &'mpesa str) -> Self
pub fn result_url(self, result_url: &'mpesa str) -> Self
Error
If ResultUrl
is invalid or not provided
sourcepub fn timeout_url(self, timeout_url: &'mpesa str) -> Self
pub fn timeout_url(self, timeout_url: &'mpesa str) -> Self
Adds QueueTimeoutUrl
and ResultUrl
. This is a required field
Error
If either QueueTimeoutUrl
and ResultUrl
is invalid or not provided
sourcepub fn remarks(self, remarks: &'mpesa str) -> Self
pub fn remarks(self, remarks: &'mpesa str) -> Self
Comments that are sent along with the transaction.
This is an optiona field; defaults to “None”
sourcepub fn occasion(self, occasion: &'mpesa str) -> Self
pub fn occasion(self, occasion: &'mpesa str) -> Self
Adds any additional information to be associated with the transaction.
This is an optional Parameter, defaults to “None”
sourcepub fn amount<Number: Into<f64>>(self, amount: Number) -> Self
pub fn amount<Number: Into<f64>>(self, amount: Number) -> Self
Adds an amount
to the request
This is a required field
sourcepub async fn send(self) -> MpesaResult<TransactionReversalResponse>
pub async fn send(self) -> MpesaResult<TransactionReversalResponse>
Transaction Reversal API
Requests for transaction reversal
This API enables reversal of a B2B, B2C or C2B M-Pesa transaction Required parameters:
transaction_id
: This is the Mpesa Transaction ID of the transaction which you wish to reverse
amount
: The amount transacted in the transaction to be reversed , down to the cent
receiver_party
: Your organization’s short code.
See more from the Safaricom API docs here
A successful request returns a TransactionReversalResponse
type
Errors
Returns a MpesaError
on failure.