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.



25517
25518
25519
25520
25521
25522
25523
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25517

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.



25515
25516
25517
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25515

def expires_at
  @expires_at
end

#payment_sessionObject (readonly)

Returns the value of attribute payment_session.



25515
25516
25517
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25515

def payment_session
  @payment_session
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



25529
25530
25531
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25529

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

#subtype_to_hashObject



25533
25534
25535
25536
25537
25538
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25533

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

#to_jsonObject



25525
25526
25527
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25525

def to_json
  JSON.dump(to_hash)
end