Class: Io::Flow::V0::Models::ActionUseSdkApplepayJsCompleteValidation

Inherits:
Action
  • Object
show all
Defined in:
lib/flow_commerce/flow_api_v0_client.rb

Overview

Use the Apple Pay Javascript SDK to complete the validation processor for an Apple Pay session on the browser. This allows Apple to render their payment sheet to the consumer, so they can authenticate and pick their payment method. The results of this operation will be an Apple Pay token that is used to update the payment request with a ‘payment_method_data` of type `authorize_applepay`. developer.apple.com/documentation/apple_pay_on_the_web/applepaysession/1778015-completemerchantvalidation

Instance Attribute Summary collapse

Attributes inherited from Action

#type

Instance Method Summary collapse

Methods inherited from Action

from_json, #to_hash

Constructor Details

#initialize(incoming = {}) ⇒ ActionUseSdkApplepayJsCompleteValidation

Returns a new instance of ActionUseSdkApplepayJsCompleteValidation.



27094
27095
27096
27097
27098
27099
27100
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27094

def initialize(incoming={})
  super(:type => Action::Types::ACTION_USE_SDK_APPLEPAY_JS_COMPLETE_VALIDATION)
  opts = HttpClient::Helper.symbolize_keys(incoming)
  HttpClient::Preconditions.require_keys(opts, [:payment_session], 'ActionUseSdkApplepayJsCompleteValidation')
  @expires_at = (x = opts.delete(:expires_at); x.nil? ? nil : HttpClient::Preconditions.assert_class('expires_at', HttpClient::Helper.to_date_time_iso8601(x), DateTime))
  @payment_session = HttpClient::Preconditions.assert_class('payment_session', HttpClient::Helper.to_object(opts.delete(:payment_session)), Hash)
end

Instance Attribute Details

#expires_atObject (readonly)

Returns the value of attribute expires_at.



27092
27093
27094
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27092

def expires_at
  @expires_at
end

#payment_sessionObject (readonly)

Returns the value of attribute payment_session.



27092
27093
27094
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27092

def payment_session
  @payment_session
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



27106
27107
27108
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27106

def copy(incoming={})
  ActionUseSdkApplepayJsCompleteValidation.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
end

#subtype_to_hashObject



27110
27111
27112
27113
27114
27115
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27110

def subtype_to_hash
  {
    :expires_at => expires_at,
    :payment_session => payment_session
  }
end

#to_jsonObject



27102
27103
27104
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27102

def to_json
  JSON.dump(to_hash)
end