Class: MpesaStk::TransactionStatus
- Defined in:
- lib/mpesa_stk/transaction_status.rb
Overview
Query the status of any M-Pesa transaction by ID.
Constant Summary
Constants inherited from Client
Instance Attribute Summary collapse
-
#transaction_id ⇒ Object
readonly
Returns the value of attribute transaction_id.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(transaction_id, **options) ⇒ TransactionStatus
constructor
A new instance of TransactionStatus.
- #query_status ⇒ Object
Methods inherited from Client
extract_auth_options, #json_headers, #option, #optional_option, #post, #random_reference, #stk_password, #stk_timestamp, #token
Constructor Details
#initialize(transaction_id, **options) ⇒ TransactionStatus
Returns a new instance of TransactionStatus.
16 17 18 19 |
# File 'lib/mpesa_stk/transaction_status.rb', line 16 def initialize(transaction_id, **) super(**) @transaction_id = transaction_id end |
Instance Attribute Details
#transaction_id ⇒ Object (readonly)
Returns the value of attribute transaction_id.
14 15 16 |
# File 'lib/mpesa_stk/transaction_status.rb', line 14 def transaction_id @transaction_id end |
Class Method Details
.call(transaction_id, **options) ⇒ Object
9 10 11 |
# File 'lib/mpesa_stk/transaction_status.rb', line 9 def call(transaction_id, **) new(transaction_id, **).query_status end |
Instance Method Details
#query_status ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/mpesa_stk/transaction_status.rb', line 21 def query_status post( 'transaction_status_url', { Initiator: option('initiator'), SecurityCredential: option('security_credential'), CommandID: 'TransactionStatusQuery', TransactionID: transaction_id, PartyA: option('business_short_code', :party_a), IdentifierType: @options.fetch(:identifier_type, '4'), ResultURL: option('result_url'), QueueTimeOutURL: option('queue_timeout_url') }, error_message: 'Failed to query transaction status' ) end |