Class: Smartpay::Requests::Order

Inherits:
Object
  • Object
show all
Includes:
Normalizer, Validator
Defined in:
lib/smartpay/requests/order.rb

Overview

Request Object to create a CheckoutSession for order

Constant Summary collapse

REQUIREMENT_KEY_NAME =
%i[token customerInfo shippingInfo currency items].freeze

Constants included from Normalizer

Normalizer::LINE_ITEM_KINDS

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(raw_payload) ⇒ Order

Returns a new instance of Order.



17
18
19
# File 'lib/smartpay/requests/order.rb', line 17

def initialize(raw_payload)
  @payload = raw_payload.transform_keys(&:to_sym)
end

Instance Attribute Details

#payloadObject

Returns the value of attribute payload.



13
14
15
# File 'lib/smartpay/requests/order.rb', line 13

def payload
  @payload
end

Instance Method Details

#as_hashObject



21
22
23
24
# File 'lib/smartpay/requests/order.rb', line 21

def as_hash
  check_requirement!(REQUIREMENT_KEY_NAME)
  normalize_payload
end