class StarkitBanking::YBL::Payment::ByIMT
Private Instance Methods
credentials(payment)
click to toggle source
# File lib/starkit_banking/api/ybl/payment/imt.rb, line 18 def credentials(payment) payment.payment_account.credentials end
invoke(env, req, callbacks)
click to toggle source
# File lib/starkit_banking/api/ybl/payment/imt.rb, line 13 def invoke(env, req, callbacks) ApiBanking::InstantMoneyTransferService.transfer(env, req, callbacks) # send email end
request(subscription, payment)
click to toggle source
# File lib/starkit_banking/api/ybl/payment/imt.rb, line 26 def request(subscription, payment) request = ApiBanking::InstantMoneyTransferService::InitiateTransfer::Request.new() # every payment is identified by its ID, repeated API attempts can be identified when the ID is used as the URN @req_reference = request.uniqueRequestNo = payment.id request.appID = subscription.app_id request.customerID = payment.payment_account.customer_id request.beneficiaryMobileNo = payment.beneficiary_mobile_no request.transferAmount = payment.transfer_amount request.passCode = payment.imt_passcode request.remitterToBeneficiaryInfo = payment.transfer_description request end
response(res)
click to toggle source
# File lib/starkit_banking/api/ybl/payment/imt.rb, line 22 def response(res) Transfer::Status.new('INITIATED', res.initiateTransferResult.bankReferenceNo, 'IMT') end
service_name()
click to toggle source
# File lib/starkit_banking/api/ybl/payment/imt.rb, line 9 def service_name 'IMT TRANSFER' end
subscription(payment)
click to toggle source
# File lib/starkit_banking/api/ybl/payment/imt.rb, line 42 def subscription(payment) payment.payment_account.service_subscriptions.find_by(service_name: service_name) end