class PayBoutique::ResponseParser
Attributes
amount[R]
order_id[R]
Public Class Methods
new(str_xml)
click to toggle source
# File lib/pay_boutique/response_parser.rb, line 5 def initialize(str_xml) @xml = Nokogiri::XML(str_xml) @order_id = @xml.xpath('//Message//Body//OrderID').text @amount = @xml.xpath('//Message//Body//AmountMerchantCurrency').text end
Public Instance Methods
captured?()
click to toggle source
# File lib/pay_boutique/response_parser.rb, line 27 def captured? status == 'captured' end
payment_method()
click to toggle source
# File lib/pay_boutique/response_parser.rb, line 31 def payment_method @xml.xpath('//Message//Body//PaymentMethod').text.snakecase.to_sym end
reference_id()
click to toggle source
# File lib/pay_boutique/response_parser.rb, line 23 def reference_id @xml.xpath('//Message//Body//ReferenceID').text end
status()
click to toggle source
# File lib/pay_boutique/response_parser.rb, line 19 def status @xml.xpath('//Message//Body//Status').text end
valid?()
click to toggle source
# File lib/pay_boutique/response_parser.rb, line 11 def valid? checksum = @xml.xpath('//Message//Header//Identity//Checksum').text time = @xml.xpath('//Message//Header//Time').text reference_id = @xml.xpath('//Message//Body//ReferenceID').text checksum == Signature.create(time, reference_id) end