class UssdBase
Public Instance Methods
handle_charge_response(response, request)
click to toggle source
method to handle ussd charge response
# File lib/rave_ruby/rave_objects/base/ussd_base.rb, line 6 def handle_charge_response(response, request) charge_response = response flwRef = charge_response["data"]["flwRef"] txRef = charge_response["data"]["txRef"] status = charge_response["data"]["status"] amount = charge_response["data"]["amount"] charged_amount = charge_response["data"]["charged_amount"] currency = charge_response["data"]["currency"] payment_type = charge_response["data"]["paymentType"] charge_response_code = charge_response["data"]["chargeResponseCode"] charge_response_message = charge_response["data"]["chargeResponseMessage"] validation_instruction = charge_response["data"]["validateInstructions"] bank_list = {"gtb" => "058", "zenith" => "057"} gtb_response_text = "To complete this transaction, please dial *737*50*#{charged_amount.ceil}*159#" if charge_response_code == "02" if request["accountbank"] == bank_list["gtb"] res = {"error": false, "status": status, "validation_required": true, "txRef": txRef, "flwRef": flwRef, "validateInstruction": gtb_response_text, "amount": amount, "currency": currency, "paymentType": payment_type} return JSON.parse(res.to_json) else res = {"error": false, "status": status, "validation_required": true, "txRef": txRef, "flwRef": flwRef, "validateInstruction": validation_instruction, "amount": amount, "currency": currency, "paymentType": payment_type} return JSON.parse(res.to_json) end else res = {"error": false, "status": status, "validation_required": false, "txRef": txRef, "flwRef": flwRef, "amount": amount, "currency": currency, "paymentType": payment_type} return JSON.parse(res.to_json) end end
handle_verify_response(response)
click to toggle source
method to handle ussd verify response
# File lib/rave_ruby/rave_objects/base/ussd_base.rb, line 39 def handle_verify_response(response) verify_response = response flwref = verify_response["data"]["flwref"] txref = verify_response["data"]["txref"] status = verify_response["data"]["status"] charged_amount = verify_response["data"]["chargedamount"] amount = verify_response["data"]["amount"] vbvmessage = verify_response["data"]["vbvmessage"] vbvcode = verify_response["data"]["vbvcode"] currency = verify_response["data"]["currency"] charge_code = verify_response["data"]["chargecode"] charge_message = verify_response["data"]["chargemessage"] if charge_code == "00" && status == "successful" res = {"error": false, "status": status, "transaction_complete": true, "txref": txref, "flwref": flwref, "amount": amount, "chargedamount": charged_amount, "vbvmessage": vbvmessage, "vbvcode": vbvcode, "currency": currency, "chargecode": charge_code, "chargemessage": charge_message} return JSON.parse(res.to_json) else res = {"error": false, "status": status, "transaction_complete": false, "txref": txref, "flwef": flwref, "amount": amount, "chargedamount": charged_amount, "vbvmessage": vbvmessage, "vbvcode": vbvcode, "currency": currency, "charge_code": charge_code, "chargemessage": charge_message} return JSON.parse(res.to_json) end end