Class: ActiveMerchant::Billing::IdealStatusResponse
- Inherits:
-
IdealResponse
- Object
- Response
- IdealResponse
- ActiveMerchant::Billing::IdealStatusResponse
- Defined in:
- lib/active_merchant_ideal/ideal_response.rb
Overview
An instance of IdealStatusResponse is returned from IdealGateway#capture which returns whether or not the transaction that was started with IdealGateway#setup_purchase was successful.
It takes care of checking if the message was authentic by verifying the the message and its signature against the iDEAL certificate.
If success? returns false
because the authenticity wasn’t verified there will be no error_code, error_message, and error_type. Use verified? to check if the authenticity has been verified.
Instance Method Summary collapse
-
#initialize(response_body, options = {}) ⇒ IdealStatusResponse
constructor
A new instance of IdealStatusResponse.
-
#status ⇒ Object
Returns the status message, which is one of:
:success
,:cancelled
,:expired
,:open
, or:failure
. -
#verified? ⇒ Boolean
Returns whether or not the authenticity of the message could be verified.
Methods inherited from IdealResponse
#consumer_error_message, #error_code, #error_details, #error_message, #error_type
Constructor Details
#initialize(response_body, options = {}) ⇒ IdealStatusResponse
Returns a new instance of IdealStatusResponse.
172 173 174 175 |
# File 'lib/active_merchant_ideal/ideal_response.rb', line 172 def initialize(response_body, = {}) super @success = transaction_successful? end |
Instance Method Details
#status ⇒ Object
Returns the status message, which is one of: :success
, :cancelled
, :expired
, :open
, or :failure
.
180 181 182 |
# File 'lib/active_merchant_ideal/ideal_response.rb', line 180 def status text('//status').downcase.to_sym end |
#verified? ⇒ Boolean
Returns whether or not the authenticity of the message could be verified.
186 187 188 189 |
# File 'lib/active_merchant_ideal/ideal_response.rb', line 186 def verified? @verified ||= IdealGateway.ideal_certificate.public_key. verify(OpenSSL::Digest::SHA1.new, signature, ) end |