class DragonpayPayment::Merchant
Constants
- URL
Attributes
amount[RW]
ccy[RW]
description[RW]
digest[RW]
email[RW]
merchant_id[RW]
txn_id[RW]
Public Class Methods
new(options = {})
click to toggle source
# File lib/dragonpay_payment/merchant.rb, line 8 def initialize(options = {}) @amount = options[:amount] @ccy = options[:ccy] @description = options[:description] @email = options[:email] end
Public Instance Methods
pay()
click to toggle source
# File lib/dragonpay_payment/merchant.rb, line 15 def pay generate_url end
Private Instance Methods
generate_url()
click to toggle source
# File lib/dragonpay_payment/merchant.rb, line 21 def generate_url merchant_id = DragonpayPayment.configuration.merchant_id secret_key = DragonpayPayment.configuration.secret_key txn_id = SecureRandom.urlsafe_base64 12 details = [ merchant_id, txn_id, amount, ccy, description, email, secret_key] digest = Digest::SHA1.hexdigest details.join(':') parameters = { merchantid: merchant_id, txnid: txn_id, amount: amount, ccy: ccy, description: description, email: email, digest: digest, mode: 7 } query_string = parameters.to_a.map { |x| "#{x[0]}=#{x[1]}" }.join("&") url = URL + "?#{query_string}" end