class AmplifypayRuby::Checkout::Invoice
Attributes
customer[RW]
invoice_url[RW]
paymentDescription[RW]
redirect_url[RW]
response_text[RW]
status_code[RW]
status_desc[RW]
store[RW]
total_amount[RW]
trans_id[RW]
transaction_ref[RW]
Public Class Methods
new()
click to toggle source
# File lib/amplifypay_ruby/checkout/redirect_invoice.rb, line 8 def initialize @trans_id = "22" @customer = {} @total_amount = 0.0 @redirect_url = "" @paymentDescription = "" end
Public Instance Methods
confirm(token)
click to toggle source
# File lib/amplifypay_ruby/checkout/redirect_invoice.rb, line 24 def confirm(token) verification_payload = build_verification_payload(token) result = http_json_request(AmplifypayRuby::Setup.checkout_confirm_base_url, verification_payload) if result["StatusDesc"] == "Approved" # rebuild_invoice(result) @response_text = "Payment was successful" true else @status = result["status"] @response_text = "Invoice status is #{result['StatusDesc'].upcase}" false end end
create()
click to toggle source
# File lib/amplifypay_ruby/checkout/redirect_invoice.rb, line 39 def create result = http_json_request(AmplifypayRuby::Setup.checkout_base_url,build_invoice_payload) @store = result.inspect create_response(result) end
get_custom_data(key)
click to toggle source
# File lib/amplifypay_ruby/checkout/redirect_invoice.rb, line 20 def get_custom_data(key) @custom_data["#{key}"] end
get_customer_info(key)
click to toggle source
# File lib/amplifypay_ruby/checkout/redirect_invoice.rb, line 16 def get_customer_info(key) @customer["#{key}"] end
Protected Instance Methods
build_invoice_payload()
click to toggle source
# File lib/amplifypay_ruby/checkout/redirect_invoice.rb, line 46 def build_invoice_payload { merchantId: AmplifypayRuby::Setup.merchant_id, apiKey: AmplifypayRuby::Setup.private_key, transID: @trans_id, customerEmail: @customer["email"], customerName: @customer["name"], Amount: @total_amount, redirectUrl: AmplifypayRuby::Setup.redirect_url, paymentDescription: @paymentDescription } end
build_verification_payload(token)
click to toggle source
# File lib/amplifypay_ruby/checkout/redirect_invoice.rb, line 59 def build_verification_payload(token) { merchantId: AmplifypayRuby::Setup.merchant_id, apiKey: AmplifypayRuby::Setup.private_key, transactionRef: token } end
create_response(result={})
click to toggle source
# File lib/amplifypay_ruby/checkout/redirect_invoice.rb, line 72 def create_response(result={}) if result["StatusCode"] == "000" @status_desc = result["StatusDesc"] @status_code = result["StatusCode"] @trans_id = result["TransID"] @transaction_ref = result["TransactionRef"] @auth_token = result["AuthToken"] @invoice_url = result["PaymentUrl"] @status = AmplifypayRuby::SUCCESS true else @status_desc = result["StatusDesc"] @status_code = result["StatusCode"] @invoice_url = nil @status = AmplifypayRuby::FAIL false end end
rebuild_invoice(result={})
click to toggle source
# File lib/amplifypay_ruby/checkout/redirect_invoice.rb, line 68 def rebuild_invoice(result={}) end