Class: Momoapi::Collection
- Defined in:
- lib/momoapi-ruby/collection.rb
Instance Method Summary collapse
- #get_auth_token ⇒ Object
- #get_balance ⇒ Object
- #get_transaction_status(transaction_id) ⇒ Object
- #is_user_active(phone_number) ⇒ Object
-
#request_to_pay(phone_number, amount, external_id, payee_note = '', payer_message = '', currency = 'EUR', **options) ⇒ Object
This method is used to request a payment from a consumer (Payer).
Methods inherited from Client
#handle_error, #interpret_response, #prepare_get_request, #send_request
Instance Method Details
#get_auth_token ⇒ Object
12 13 14 15 |
# File 'lib/momoapi-ruby/collection.rb', line 12 def get_auth_token path = 'collection/token/' super(path, Momoapi.config.collection_primary_key) end |
#get_balance ⇒ Object
17 18 19 20 |
# File 'lib/momoapi-ruby/collection.rb', line 17 def get_balance path = '/collection/v1_0/account/balance' super(path, Momoapi.config.collection_primary_key) end |
#get_transaction_status(transaction_id) ⇒ Object
22 23 24 25 |
# File 'lib/momoapi-ruby/collection.rb', line 22 def get_transaction_status(transaction_id) path = "/collection/v1_0/requesttopay/#{transaction_id}" super(path, Momoapi.config.collection_primary_key) end |
#is_user_active(phone_number) ⇒ Object
63 64 65 66 |
# File 'lib/momoapi-ruby/collection.rb', line 63 def is_user_active(phone_number) path = "/collection/v1_0/accountholder/msisdn/#{phone_number}/active" super(path, Momoapi.config.collection_primary_key) end |
#request_to_pay(phone_number, amount, external_id, payee_note = '', payer_message = '', currency = 'EUR', **options) ⇒ Object
This method is used to request a payment from a consumer (Payer). The payer will be asked to authorize the payment. The transaction will be executed once the payer has authorized the payment. The requesttopay will be in status PENDING until the transaction is authorized or declined by the payer or it is timed out by the system. The status of the transaction can be validated by using ‘get_transation_status`
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
# File 'lib/momoapi-ruby/collection.rb', line 34 def request_to_pay(phone_number, amount, external_id, payee_note = '', = '', currency = 'EUR', **) uuid = SecureRandom.uuid headers = { "X-Target-Environment": Momoapi.config.environment || 'sandbox', "Content-Type": 'application/json', "X-Reference-Id": uuid, "Ocp-Apim-Subscription-Key": Momoapi.config.collection_primary_key } if [:callback_url] headers['X-Callback-Url'] = [:callback_url] end body = { "payer": { "partyIdType": 'MSISDN', "partyId": phone_number }, "payeeNote": payee_note, "payerMessage": , "externalId": external_id, "currency": currency, "amount": amount.to_s } path = '/collection/v1_0/requesttopay' send_request('post', path, headers, body) { transaction_reference: uuid } end |