class CCBill::Postback
Attributes
response_params[RW]
Public Class Methods
new(response_params = {})
click to toggle source
# File lib/ccbill_ruby/postback.rb, line 5 def initialize(response_params = {}) self.response_params = response_params end
Public Instance Methods
verified?()
click to toggle source
# File lib/ccbill_ruby/postback.rb, line 9 def verified? # NOTE: https://github.com/DmytroVasin/ccbill_ruby#response-digest-value return true if CCBill.configuration.test? response_params['dynamicPricingValidationDigest'] == encode_digest_response end
Private Instance Methods
denied?()
click to toggle source
# File lib/ccbill_ruby/postback.rb, line 18 def denied? ['failureCode', 'failureReason'].any? do |key| !response_params[key].to_s.strip.empty? end end
encode_digest_response()
click to toggle source
# File lib/ccbill_ruby/postback.rb, line 24 def encode_digest_response verify_fields = if denied? [ response_params['transactionId'], '0', CCBill.configuration.salt ] else [ response_params['subscriptionId'], '1', CCBill.configuration.salt ] end Digest::MD5.hexdigest(verify_fields.join) end