class Peperusha::TransactionReversal
Public Instance Methods
call()
click to toggle source
# File lib/peperusha/transaction_reversal.rb, line 18 def call path = '/mpesa/reversal/v1/request' response = Peperusha::Client.invoke_post_request(token, path, attributes) if response.status == 200 data = JSON.parse(response.body) context.body = data else client_errors = Peperusha::Client.build_errors_collection(response) context.fail!(errors: client_errors) end end
Private Instance Methods
attributes()
click to toggle source
# File lib/peperusha/transaction_reversal.rb, line 44 def attributes result_url = nil if result_url.nil? timeout_url = nil if timeout_url.nil? { 'CommandID': 'TransactionReversal', 'IdentifierType': '1', 'Initiator': initiator_name, 'Occasion': 'Generated by peperusha', 'PartyA': receiving_number, 'RecieverIdentifierType': '1', 'Remarks': remarks, 'ResultURL': result_url, 'SecurityCredential': security_credential, 'TransactionID': transaction_id, 'QueueTimeOutURL': timeout_url } end
check_if_params_missing()
click to toggle source
# File lib/peperusha/transaction_reversal.rb, line 33 def check_if_params_missing errors = [] errors << 'token.missing' if token.nil? errors << 'amount.missing' if amount.nil? errors << 'receiving_number.missing' if receiving_number.nil? errors << 'transaction_id.missing' if transaction_id.nil? errors << 'account_reference.missing' if account_reference.nil? errors << 'security_credential.missing' if security_credential.nil? errors end