flowcommerce 0.2.1 → 0.2.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/flow_commerce/flow_api_v0_client.rb +389 -55
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cb09e284a9abf6304be123c3ab7c499ab5c1e760
|
4
|
+
data.tar.gz: 98daddee35444116ec7db554025e2a5b13d5b7e9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b710ea50341b2fd529ec1b3e183f51a888c2a2878fa5fec97ff89063a94bfac80061f8775de236003338415f81237e853c275d50e385acb7cc28807c4bdacc16
|
7
|
+
data.tar.gz: aef43b36b05640cf204b5562c0950c93a2791a3a39946ff9165a12549badc7f8ba1acbacf560f5eea12c2c51999ae6e50254e243227cf3ccfedd72983c74485e
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# Generated by apidoc - http://www.apidoc.me
|
2
|
-
# Service version: 0.2.
|
3
|
-
# apidoc:0.11.75 http://www.apidoc.me/flow/api/0.2.
|
2
|
+
# Service version: 0.2.87
|
3
|
+
# apidoc:0.11.75 http://www.apidoc.me/flow/api/0.2.87/ruby_client
|
4
4
|
|
5
5
|
require 'cgi'
|
6
6
|
require 'net/http'
|
@@ -25,8 +25,8 @@ module Io
|
|
25
25
|
|
26
26
|
BASE_URL = 'https://api.flow.io' unless defined?(Constants::BASE_URL)
|
27
27
|
NAMESPACE = 'io.flow.v0' unless defined?(Constants::NAMESPACE)
|
28
|
-
USER_AGENT = 'apidoc:0.11.75 http://www.apidoc.me/flow/api/0.2.
|
29
|
-
VERSION = '0.2.
|
28
|
+
USER_AGENT = 'apidoc:0.11.75 http://www.apidoc.me/flow/api/0.2.87/ruby_client' unless defined?(Constants::USER_AGENT)
|
29
|
+
VERSION = '0.2.87' unless defined?(Constants::VERSION)
|
30
30
|
VERSION_MAJOR = 0 unless defined?(VERSION_MAJOR)
|
31
31
|
|
32
32
|
end
|
@@ -2067,7 +2067,8 @@ module Io
|
|
2067
2067
|
:order_number => (x = opts.delete(:order_number); x.nil? ? nil : HttpClient::Preconditions.assert_class('order_number', x, String)),
|
2068
2068
|
:limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
|
2069
2069
|
:offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
|
2070
|
-
:sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "-created_at" : x), String)
|
2070
|
+
:sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "-created_at" : x), String),
|
2071
|
+
:expand => (x = opts.delete(:expand); x.nil? ? nil : HttpClient::Preconditions.assert_class('expand', x, Array).map { |v| HttpClient::Preconditions.assert_class('expand', v, String) })
|
2071
2072
|
}.delete_if { |k, v| v.nil? }
|
2072
2073
|
r = @client.request("/#{CGI.escape(organization)}/authorizations").with_query(query).get
|
2073
2074
|
r.map { |x| ::Io::Flow::V0::Models::Authorization.new(x) }
|
@@ -2082,10 +2083,14 @@ module Io
|
|
2082
2083
|
end
|
2083
2084
|
|
2084
2085
|
# Returns information about a specific authorization.
|
2085
|
-
def get_by_key(organization, key)
|
2086
|
+
def get_by_key(organization, key, incoming={})
|
2086
2087
|
HttpClient::Preconditions.assert_class('organization', organization, String)
|
2087
2088
|
HttpClient::Preconditions.assert_class('key', key, String)
|
2088
|
-
|
2089
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
2090
|
+
query = {
|
2091
|
+
:expand => (x = opts.delete(:expand); x.nil? ? nil : HttpClient::Preconditions.assert_class('expand', x, Array).map { |v| HttpClient::Preconditions.assert_class('expand', v, String) })
|
2092
|
+
}.delete_if { |k, v| v.nil? }
|
2093
|
+
r = @client.request("/#{CGI.escape(organization)}/authorizations/#{CGI.escape(key)}").with_query(query).get
|
2089
2094
|
::Io::Flow::V0::Models::Authorization.new(r)
|
2090
2095
|
end
|
2091
2096
|
|
@@ -4192,7 +4197,9 @@ module Io
|
|
4192
4197
|
class AuthorizationForm
|
4193
4198
|
|
4194
4199
|
module Types
|
4200
|
+
# Enables card payments
|
4195
4201
|
DIRECT_AUTHORIZATION_FORM = 'direct_authorization_form' unless defined?(DIRECT_AUTHORIZATION_FORM)
|
4202
|
+
# Enables card payments with Flow as Merchant of Record
|
4196
4203
|
MERCHANT_OF_RECORD_AUTHORIZATION_FORM = 'merchant_of_record_authorization_form' unless defined?(MERCHANT_OF_RECORD_AUTHORIZATION_FORM)
|
4197
4204
|
end
|
4198
4205
|
|
@@ -4457,6 +4464,8 @@ module Io
|
|
4457
4464
|
EXPERIENCE_UPSERTED = 'experience_upserted' unless defined?(EXPERIENCE_UPSERTED)
|
4458
4465
|
ITEM_MARGIN_DELETED = 'item_margin_deleted' unless defined?(ITEM_MARGIN_DELETED)
|
4459
4466
|
ITEM_MARGIN_UPSERTED = 'item_margin_upserted' unless defined?(ITEM_MARGIN_UPSERTED)
|
4467
|
+
ITEM_SALES_MARGIN_DELETED = 'item_sales_margin_deleted' unless defined?(ITEM_SALES_MARGIN_DELETED)
|
4468
|
+
ITEM_SALES_MARGIN_UPSERTED = 'item_sales_margin_upserted' unless defined?(ITEM_SALES_MARGIN_UPSERTED)
|
4460
4469
|
LABEL_FORMAT_DELETED = 'label_format_deleted' unless defined?(LABEL_FORMAT_DELETED)
|
4461
4470
|
LABEL_FORMAT_UPSERTED = 'label_format_upserted' unless defined?(LABEL_FORMAT_UPSERTED)
|
4462
4471
|
ORDER_DELETED = 'order_deleted' unless defined?(ORDER_DELETED)
|
@@ -4509,7 +4518,7 @@ module Io
|
|
4509
4518
|
end
|
4510
4519
|
|
4511
4520
|
def subtype_to_hash
|
4512
|
-
raise 'Cannot serialize an instance of event directly - must use one of the specific types: attribute_upserted, attribute_deleted, catalog_upserted, catalog_deleted, subcatalog_upserted, subcatalog_deleted, catalog_item_upserted, catalog_item_deleted, subcatalog_item_upserted, subcatalog_item_deleted, rate_deleted, rate_upserted, experience_deleted, experience_upserted, item_margin_deleted, item_margin_upserted, label_format_deleted, label_format_upserted, order_deleted, order_upserted, order_identifier_deleted, order_identifier_upserted, pricing_deleted, pricing_upserted, tier_upserted, tier_deleted, hs6_code_upserted, hs6_code_deleted, hs10_code_upserted, hs10_code_deleted, item_origin_upserted, item_origin_deleted, harmonized_item_upserted, harmonized_item_deleted, snapshot_upserted, snapshot_deleted, label_upserted, notification_upserted, notification_deleted, localized_item_upserted, localized_item_deleted, localized_item_snapshot, membership_upserted, membership_deleted, organization_upserted, organization_deleted, authorization_upserted, authorization_deleted, capture_upserted, card_upserted, card_deleted, refund_upserted, return_upserted, return_deleted, targeting_item_upserted, targeting_item_deleted, tracking_label_event_upserted'
|
4521
|
+
raise 'Cannot serialize an instance of event directly - must use one of the specific types: attribute_upserted, attribute_deleted, catalog_upserted, catalog_deleted, subcatalog_upserted, subcatalog_deleted, catalog_item_upserted, catalog_item_deleted, subcatalog_item_upserted, subcatalog_item_deleted, rate_deleted, rate_upserted, experience_deleted, experience_upserted, item_margin_deleted, item_margin_upserted, item_sales_margin_deleted, item_sales_margin_upserted, label_format_deleted, label_format_upserted, order_deleted, order_upserted, order_identifier_deleted, order_identifier_upserted, pricing_deleted, pricing_upserted, tier_upserted, tier_deleted, hs6_code_upserted, hs6_code_deleted, hs10_code_upserted, hs10_code_deleted, item_origin_upserted, item_origin_deleted, harmonized_item_upserted, harmonized_item_deleted, snapshot_upserted, snapshot_deleted, label_upserted, notification_upserted, notification_deleted, localized_item_upserted, localized_item_deleted, localized_item_snapshot, membership_upserted, membership_deleted, organization_upserted, organization_deleted, authorization_upserted, authorization_deleted, capture_upserted, card_upserted, card_deleted, refund_upserted, return_upserted, return_deleted, targeting_item_upserted, targeting_item_deleted, tracking_label_event_upserted'
|
4513
4522
|
end
|
4514
4523
|
|
4515
4524
|
def to_hash
|
@@ -4539,6 +4548,8 @@ module Io
|
|
4539
4548
|
when Types::EXPERIENCE_UPSERTED; ExperienceUpserted.new(hash)
|
4540
4549
|
when Types::ITEM_MARGIN_DELETED; ItemMarginDeleted.new(hash)
|
4541
4550
|
when Types::ITEM_MARGIN_UPSERTED; ItemMarginUpserted.new(hash)
|
4551
|
+
when Types::ITEM_SALES_MARGIN_DELETED; ItemSalesMarginDeleted.new(hash)
|
4552
|
+
when Types::ITEM_SALES_MARGIN_UPSERTED; ItemSalesMarginUpserted.new(hash)
|
4542
4553
|
when Types::LABEL_FORMAT_DELETED; LabelFormatDeleted.new(hash)
|
4543
4554
|
when Types::LABEL_FORMAT_UPSERTED; LabelFormatUpserted.new(hash)
|
4544
4555
|
when Types::ORDER_DELETED; OrderDeleted.new(hash)
|
@@ -4610,6 +4621,68 @@ module Io
|
|
4610
4621
|
|
4611
4622
|
end
|
4612
4623
|
|
4624
|
+
class ExpandableCard
|
4625
|
+
|
4626
|
+
module Types
|
4627
|
+
CARD = 'card' unless defined?(CARD)
|
4628
|
+
CARD_REFERENCE = 'card_reference' unless defined?(CARD_REFERENCE)
|
4629
|
+
end
|
4630
|
+
|
4631
|
+
attr_reader :discriminator
|
4632
|
+
|
4633
|
+
def initialize(incoming={})
|
4634
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
4635
|
+
HttpClient::Preconditions.require_keys(opts, [:discriminator], 'ExpandableCard')
|
4636
|
+
@discriminator = HttpClient::Preconditions.assert_class('discriminator', opts.delete(:discriminator), String)
|
4637
|
+
end
|
4638
|
+
|
4639
|
+
def subtype_to_hash
|
4640
|
+
raise 'Cannot serialize an instance of expandable_card directly - must use one of the specific types: card, card_reference'
|
4641
|
+
end
|
4642
|
+
|
4643
|
+
def to_hash
|
4644
|
+
subtype_to_hash.merge(:discriminator => @discriminator)
|
4645
|
+
end
|
4646
|
+
|
4647
|
+
def ExpandableCard.from_json(hash)
|
4648
|
+
HttpClient::Preconditions.assert_class('hash', hash, Hash)
|
4649
|
+
discriminator = HttpClient::Helper.symbolize_keys(hash)[:discriminator].to_s.strip
|
4650
|
+
if discriminator.empty?
|
4651
|
+
raise "Union type[expandable_card] requires a field named 'discriminator'"
|
4652
|
+
end
|
4653
|
+
case discriminator
|
4654
|
+
when Types::CARD; Card.new(hash)
|
4655
|
+
when Types::CARD_REFERENCE; CardReference.new(hash)
|
4656
|
+
else ExpandableCardUndefinedType.new(:discriminator => discriminator)
|
4657
|
+
end
|
4658
|
+
end
|
4659
|
+
|
4660
|
+
end
|
4661
|
+
|
4662
|
+
class ExpandableCardUndefinedType < ExpandableCard
|
4663
|
+
|
4664
|
+
attr_reader :name
|
4665
|
+
|
4666
|
+
def initialize(incoming={})
|
4667
|
+
super(:discriminator => 'undefined_type')
|
4668
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
4669
|
+
@name = HttpClient::Preconditions.assert_class('name', opts.delete(:discriminator), String)
|
4670
|
+
end
|
4671
|
+
|
4672
|
+
def subtype_to_hash
|
4673
|
+
raise 'Unable to serialize undefined type to json'
|
4674
|
+
end
|
4675
|
+
|
4676
|
+
def copy(incoming={})
|
4677
|
+
raise 'Operation not supported for undefined type'
|
4678
|
+
end
|
4679
|
+
|
4680
|
+
def to_hash
|
4681
|
+
raise 'Operation not supported for undefined type'
|
4682
|
+
end
|
4683
|
+
|
4684
|
+
end
|
4685
|
+
|
4613
4686
|
# An item function can be represented with just its Id, or the entire model
|
4614
4687
|
class ExpandableItemFunction
|
4615
4688
|
|
@@ -5894,6 +5967,47 @@ module Io
|
|
5894
5967
|
|
5895
5968
|
end
|
5896
5969
|
|
5970
|
+
class AuthorizationOption
|
5971
|
+
|
5972
|
+
attr_reader :value
|
5973
|
+
|
5974
|
+
def initialize(value)
|
5975
|
+
@value = HttpClient::Preconditions.assert_class('value', value, String)
|
5976
|
+
end
|
5977
|
+
|
5978
|
+
# Returns the instance of AuthorizationOption for this value, creating a new instance for an unknown value
|
5979
|
+
def AuthorizationOption.apply(value)
|
5980
|
+
if value.instance_of?(AuthorizationOption)
|
5981
|
+
value
|
5982
|
+
else
|
5983
|
+
HttpClient::Preconditions.assert_class_or_nil('value', value, String)
|
5984
|
+
value.nil? ? nil : (from_string(value) || AuthorizationOption.new(value))
|
5985
|
+
end
|
5986
|
+
end
|
5987
|
+
|
5988
|
+
# Returns the instance of AuthorizationOption for this value, or nil if not found
|
5989
|
+
def AuthorizationOption.from_string(value)
|
5990
|
+
HttpClient::Preconditions.assert_class('value', value, String)
|
5991
|
+
AuthorizationOption.ALL.find { |v| v.value == value }
|
5992
|
+
end
|
5993
|
+
|
5994
|
+
def AuthorizationOption.ALL
|
5995
|
+
@@all ||= [AuthorizationOption.store_card]
|
5996
|
+
end
|
5997
|
+
|
5998
|
+
# If set, and the authorization is created using a one time nonce, we
|
5999
|
+
# automatically tokenize and store the card. In these cases you will want to
|
6000
|
+
# store the new card token in the authorization response (card object)
|
6001
|
+
def AuthorizationOption.store_card
|
6002
|
+
@@_store_card ||= AuthorizationOption.new('store_card')
|
6003
|
+
end
|
6004
|
+
|
6005
|
+
def to_hash
|
6006
|
+
value
|
6007
|
+
end
|
6008
|
+
|
6009
|
+
end
|
6010
|
+
|
5897
6011
|
class AuthorizationStatus
|
5898
6012
|
|
5899
6013
|
attr_reader :value
|
@@ -6615,7 +6729,7 @@ module Io
|
|
6615
6729
|
end
|
6616
6730
|
|
6617
6731
|
def EventType.ALL
|
6618
|
-
@@all ||= [EventType.attribute_upserted, EventType.attribute_deleted, EventType.catalog_upserted, EventType.catalog_deleted, EventType.subcatalog_upserted, EventType.subcatalog_deleted, EventType.catalog_item_upserted, EventType.catalog_item_deleted, EventType.subcatalog_item_upserted, EventType.subcatalog_item_deleted, EventType.rate_deleted, EventType.rate_upserted, EventType.experience_deleted, EventType.experience_upserted, EventType.item_margin_deleted, EventType.item_margin_upserted, EventType.label_format_deleted, EventType.label_format_upserted, EventType.order_deleted, EventType.order_upserted, EventType.order_identifier_deleted, EventType.order_identifier_upserted, EventType.pricing_deleted, EventType.pricing_upserted, EventType.tier_upserted, EventType.tier_deleted, EventType.hs6_code_upserted, EventType.hs6_code_deleted, EventType.hs10_code_upserted, EventType.hs10_code_deleted, EventType.item_origin_upserted, EventType.item_origin_deleted, EventType.harmonized_item_upserted, EventType.harmonized_item_deleted, EventType.snapshot_upserted, EventType.snapshot_deleted, EventType.label_upserted, EventType.notification_upserted, EventType.notification_deleted, EventType.localized_item_upserted, EventType.localized_item_deleted, EventType.localized_item_snapshot, EventType.membership_upserted, EventType.membership_deleted, EventType.organization_upserted, EventType.organization_deleted, EventType.authorization_upserted, EventType.authorization_deleted, EventType.capture_upserted, EventType.card_upserted, EventType.card_deleted, EventType.refund_upserted, EventType.return_upserted, EventType.return_deleted, EventType.targeting_item_upserted, EventType.targeting_item_deleted, EventType.tracking_label_event_upserted]
|
6732
|
+
@@all ||= [EventType.attribute_upserted, EventType.attribute_deleted, EventType.catalog_upserted, EventType.catalog_deleted, EventType.subcatalog_upserted, EventType.subcatalog_deleted, EventType.catalog_item_upserted, EventType.catalog_item_deleted, EventType.subcatalog_item_upserted, EventType.subcatalog_item_deleted, EventType.rate_deleted, EventType.rate_upserted, EventType.experience_deleted, EventType.experience_upserted, EventType.item_margin_deleted, EventType.item_margin_upserted, EventType.item_sales_margin_deleted, EventType.item_sales_margin_upserted, EventType.label_format_deleted, EventType.label_format_upserted, EventType.order_deleted, EventType.order_upserted, EventType.order_identifier_deleted, EventType.order_identifier_upserted, EventType.pricing_deleted, EventType.pricing_upserted, EventType.tier_upserted, EventType.tier_deleted, EventType.hs6_code_upserted, EventType.hs6_code_deleted, EventType.hs10_code_upserted, EventType.hs10_code_deleted, EventType.item_origin_upserted, EventType.item_origin_deleted, EventType.harmonized_item_upserted, EventType.harmonized_item_deleted, EventType.snapshot_upserted, EventType.snapshot_deleted, EventType.label_upserted, EventType.notification_upserted, EventType.notification_deleted, EventType.localized_item_upserted, EventType.localized_item_deleted, EventType.localized_item_snapshot, EventType.membership_upserted, EventType.membership_deleted, EventType.organization_upserted, EventType.organization_deleted, EventType.authorization_upserted, EventType.authorization_deleted, EventType.capture_upserted, EventType.card_upserted, EventType.card_deleted, EventType.refund_upserted, EventType.return_upserted, EventType.return_deleted, EventType.targeting_item_upserted, EventType.targeting_item_deleted, EventType.tracking_label_event_upserted]
|
6619
6733
|
end
|
6620
6734
|
|
6621
6735
|
def EventType.attribute_upserted
|
@@ -6682,6 +6796,14 @@ module Io
|
|
6682
6796
|
@@_item_margin_upserted ||= EventType.new('item_margin_upserted')
|
6683
6797
|
end
|
6684
6798
|
|
6799
|
+
def EventType.item_sales_margin_deleted
|
6800
|
+
@@_item_sales_margin_deleted ||= EventType.new('item_sales_margin_deleted')
|
6801
|
+
end
|
6802
|
+
|
6803
|
+
def EventType.item_sales_margin_upserted
|
6804
|
+
@@_item_sales_margin_upserted ||= EventType.new('item_sales_margin_upserted')
|
6805
|
+
end
|
6806
|
+
|
6685
6807
|
def EventType.label_format_deleted
|
6686
6808
|
@@_label_format_deleted ||= EventType.new('label_format_deleted')
|
6687
6809
|
end
|
@@ -7466,7 +7588,7 @@ module Io
|
|
7466
7588
|
end
|
7467
7589
|
|
7468
7590
|
def OrderPriceDetailComponentKey.ALL
|
7469
|
-
@@all ||= [OrderPriceDetailComponentKey.adjustment, OrderPriceDetailComponentKey.vat_deminimis, OrderPriceDetailComponentKey.duty_deminimis, OrderPriceDetailComponentKey.duties_item_price, OrderPriceDetailComponentKey.duties_freight, OrderPriceDetailComponentKey.duties_insurance, OrderPriceDetailComponentKey.vat_item_price, OrderPriceDetailComponentKey.vat_freight, OrderPriceDetailComponentKey.vat_insurance, OrderPriceDetailComponentKey.vat_duties_item_price, OrderPriceDetailComponentKey.vat_duties_freight, OrderPriceDetailComponentKey.vat_duties_insurance, OrderPriceDetailComponentKey.item_price, OrderPriceDetailComponentKey.rounding, OrderPriceDetailComponentKey.insurance, OrderPriceDetailComponentKey.shipping, OrderPriceDetailComponentKey.order_discount]
|
7591
|
+
@@all ||= [OrderPriceDetailComponentKey.adjustment, OrderPriceDetailComponentKey.vat_deminimis, OrderPriceDetailComponentKey.duty_deminimis, OrderPriceDetailComponentKey.duties_item_price, OrderPriceDetailComponentKey.duties_freight, OrderPriceDetailComponentKey.duties_insurance, OrderPriceDetailComponentKey.vat_item_price, OrderPriceDetailComponentKey.vat_freight, OrderPriceDetailComponentKey.vat_insurance, OrderPriceDetailComponentKey.vat_duties_item_price, OrderPriceDetailComponentKey.vat_duties_freight, OrderPriceDetailComponentKey.vat_duties_insurance, OrderPriceDetailComponentKey.item_price, OrderPriceDetailComponentKey.rounding, OrderPriceDetailComponentKey.insurance, OrderPriceDetailComponentKey.shipping, OrderPriceDetailComponentKey.order_discount, OrderPriceDetailComponentKey.subtotal_percent_sales_margin, OrderPriceDetailComponentKey.subtotal_vat_percent_sales_margin, OrderPriceDetailComponentKey.subtotal_duty_percent_sales_margin]
|
7470
7592
|
end
|
7471
7593
|
|
7472
7594
|
# A general purpose adjustment applied to the order.
|
@@ -7558,6 +7680,22 @@ module Io
|
|
7558
7680
|
@@_order_discount ||= OrderPriceDetailComponentKey.new('order_discount')
|
7559
7681
|
end
|
7560
7682
|
|
7683
|
+
# The sum of adjustments to item price, margin and rounding made due to
|
7684
|
+
# percentage sales margins.
|
7685
|
+
def OrderPriceDetailComponentKey.subtotal_percent_sales_margin
|
7686
|
+
@@_subtotal_percent_sales_margin ||= OrderPriceDetailComponentKey.new('subtotal_percent_sales_margin')
|
7687
|
+
end
|
7688
|
+
|
7689
|
+
# The sum of adjustments to VAT owed made due to percentage sales margins.
|
7690
|
+
def OrderPriceDetailComponentKey.subtotal_vat_percent_sales_margin
|
7691
|
+
@@_subtotal_vat_percent_sales_margin ||= OrderPriceDetailComponentKey.new('subtotal_vat_percent_sales_margin')
|
7692
|
+
end
|
7693
|
+
|
7694
|
+
# The sum of adjustments to duty owed made due to percentage sales margins.
|
7695
|
+
def OrderPriceDetailComponentKey.subtotal_duty_percent_sales_margin
|
7696
|
+
@@_subtotal_duty_percent_sales_margin ||= OrderPriceDetailComponentKey.new('subtotal_duty_percent_sales_margin')
|
7697
|
+
end
|
7698
|
+
|
7561
7699
|
def to_hash
|
7562
7700
|
value
|
7563
7701
|
end
|
@@ -7752,7 +7890,7 @@ module Io
|
|
7752
7890
|
end
|
7753
7891
|
|
7754
7892
|
def PriceDetailComponentKey.ALL
|
7755
|
-
@@all ||= [PriceDetailComponentKey.base_price, PriceDetailComponentKey.discount, PriceDetailComponentKey.currency_margin, PriceDetailComponentKey.percent_item_margin, PriceDetailComponentKey.fixed_item_margin, PriceDetailComponentKey.duties_item_price, PriceDetailComponentKey.duties_added_margin, PriceDetailComponentKey.duties_rounding, PriceDetailComponentKey.duties_deminimis, PriceDetailComponentKey.vat_item_price, PriceDetailComponentKey.vat_added_margin, PriceDetailComponentKey.vat_rounding, PriceDetailComponentKey.vat_duties_item_price, PriceDetailComponentKey.vat_duties_added_margin, PriceDetailComponentKey.vat_duties_rounding, PriceDetailComponentKey.vat_deminimis]
|
7893
|
+
@@all ||= [PriceDetailComponentKey.base_price, PriceDetailComponentKey.discount, PriceDetailComponentKey.currency_margin, PriceDetailComponentKey.percent_item_margin, PriceDetailComponentKey.fixed_item_margin, PriceDetailComponentKey.duties_item_price, PriceDetailComponentKey.duties_added_margin, PriceDetailComponentKey.duties_rounding, PriceDetailComponentKey.duties_deminimis, PriceDetailComponentKey.vat_item_price, PriceDetailComponentKey.vat_added_margin, PriceDetailComponentKey.vat_rounding, PriceDetailComponentKey.vat_duties_item_price, PriceDetailComponentKey.vat_duties_added_margin, PriceDetailComponentKey.vat_duties_rounding, PriceDetailComponentKey.vat_deminimis, PriceDetailComponentKey.item_price_percent_sales_margin, PriceDetailComponentKey.margins_percent_sales_margin, PriceDetailComponentKey.rounding_percent_sales_margin, PriceDetailComponentKey.vat_percent_sales_margin, PriceDetailComponentKey.duty_percent_sales_margin]
|
7756
7894
|
end
|
7757
7895
|
|
7758
7896
|
# The base price of the item.
|
@@ -7760,24 +7898,25 @@ module Io
|
|
7760
7898
|
@@_base_price ||= PriceDetailComponentKey.new('base_price')
|
7761
7899
|
end
|
7762
7900
|
|
7763
|
-
# A discount applied to the item.
|
7901
|
+
# A discount applied to the base price of the item.
|
7764
7902
|
def PriceDetailComponentKey.discount
|
7765
7903
|
@@_discount ||= PriceDetailComponentKey.new('discount')
|
7766
7904
|
end
|
7767
7905
|
|
7768
|
-
# The amount added to the post-discount
|
7906
|
+
# The amount added to the post-discount item price due to FX markup, as
|
7769
7907
|
# configured in the organization's currency settings.
|
7770
7908
|
def PriceDetailComponentKey.currency_margin
|
7771
7909
|
@@_currency_margin ||= PriceDetailComponentKey.new('currency_margin')
|
7772
7910
|
end
|
7773
7911
|
|
7774
|
-
# The amount added to the
|
7775
|
-
#
|
7912
|
+
# The amount added to the post-discount item price from a percent item margin.
|
7913
|
+
# Negative amounts represent discounts.
|
7776
7914
|
def PriceDetailComponentKey.percent_item_margin
|
7777
7915
|
@@_percent_item_margin ||= PriceDetailComponentKey.new('percent_item_margin')
|
7778
7916
|
end
|
7779
7917
|
|
7780
|
-
# The amount added to the
|
7918
|
+
# The amount added to the post-discount item price from a fixed item margin.
|
7919
|
+
# Negative amounts represent discounts.
|
7781
7920
|
def PriceDetailComponentKey.fixed_item_margin
|
7782
7921
|
@@_fixed_item_margin ||= PriceDetailComponentKey.new('fixed_item_margin')
|
7783
7922
|
end
|
@@ -7840,6 +7979,31 @@ module Io
|
|
7840
7979
|
@@_vat_deminimis ||= PriceDetailComponentKey.new('vat_deminimis')
|
7841
7980
|
end
|
7842
7981
|
|
7982
|
+
# An adjustment made to the item price as a result of a percent sales margin.
|
7983
|
+
def PriceDetailComponentKey.item_price_percent_sales_margin
|
7984
|
+
@@_item_price_percent_sales_margin ||= PriceDetailComponentKey.new('item_price_percent_sales_margin')
|
7985
|
+
end
|
7986
|
+
|
7987
|
+
# An adjustment made to the item margins as a result of a percent sales margin.
|
7988
|
+
def PriceDetailComponentKey.margins_percent_sales_margin
|
7989
|
+
@@_margins_percent_sales_margin ||= PriceDetailComponentKey.new('margins_percent_sales_margin')
|
7990
|
+
end
|
7991
|
+
|
7992
|
+
# An adjustment made to rounding as a result of a percent sales margin.
|
7993
|
+
def PriceDetailComponentKey.rounding_percent_sales_margin
|
7994
|
+
@@_rounding_percent_sales_margin ||= PriceDetailComponentKey.new('rounding_percent_sales_margin')
|
7995
|
+
end
|
7996
|
+
|
7997
|
+
# An adjustment made to VAT owed as a result of a percent sales margin.
|
7998
|
+
def PriceDetailComponentKey.vat_percent_sales_margin
|
7999
|
+
@@_vat_percent_sales_margin ||= PriceDetailComponentKey.new('vat_percent_sales_margin')
|
8000
|
+
end
|
8001
|
+
|
8002
|
+
# An adjustment made to duty owed as a result of a percent sales margin.
|
8003
|
+
def PriceDetailComponentKey.duty_percent_sales_margin
|
8004
|
+
@@_duty_percent_sales_margin ||= PriceDetailComponentKey.new('duty_percent_sales_margin')
|
8005
|
+
end
|
8006
|
+
|
7843
8007
|
def to_hash
|
7844
8008
|
value
|
7845
8009
|
end
|
@@ -7871,7 +8035,7 @@ module Io
|
|
7871
8035
|
end
|
7872
8036
|
|
7873
8037
|
def PriceDetailKey.ALL
|
7874
|
-
@@all ||= [PriceDetailKey.item_price, PriceDetailKey.margins, PriceDetailKey.vat, PriceDetailKey.duty, PriceDetailKey.rounding]
|
8038
|
+
@@all ||= [PriceDetailKey.item_price, PriceDetailKey.margins, PriceDetailKey.vat, PriceDetailKey.duty, PriceDetailKey.rounding, PriceDetailKey.adjustment]
|
7875
8039
|
end
|
7876
8040
|
|
7877
8041
|
# The details of the item price.
|
@@ -7899,6 +8063,12 @@ module Io
|
|
7899
8063
|
@@_rounding ||= PriceDetailKey.new('rounding')
|
7900
8064
|
end
|
7901
8065
|
|
8066
|
+
# The details of any price adjustments due to sales margins. A negative value
|
8067
|
+
# indicates a discount.
|
8068
|
+
def PriceDetailKey.adjustment
|
8069
|
+
@@_adjustment ||= PriceDetailKey.new('adjustment')
|
8070
|
+
end
|
8071
|
+
|
7902
8072
|
def to_hash
|
7903
8073
|
value
|
7904
8074
|
end
|
@@ -9790,10 +9960,10 @@ module Io
|
|
9790
9960
|
|
9791
9961
|
def initialize(incoming={})
|
9792
9962
|
opts = HttpClient::Helper.symbolize_keys(incoming)
|
9793
|
-
HttpClient::Preconditions.require_keys(opts, [:id, :key, :
|
9963
|
+
HttpClient::Preconditions.require_keys(opts, [:id, :key, :amount, :currency, :customer, :attributes, :result, :created_at], 'Authorization')
|
9794
9964
|
@id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
|
9795
9965
|
@key = HttpClient::Preconditions.assert_class('key', opts.delete(:key), String)
|
9796
|
-
@card = (x = opts.delete(:card); x.is_a?(::Io::Flow::V0::Models::
|
9966
|
+
@card = (x = opts.delete(:card); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::ExpandableCard) ? x : ::Io::Flow::V0::Models::ExpandableCard.from_json(x)))
|
9797
9967
|
@amount = HttpClient::Preconditions.assert_class('amount', HttpClient::Helper.to_big_decimal(opts.delete(:amount)), BigDecimal)
|
9798
9968
|
@currency = HttpClient::Preconditions.assert_class('currency', opts.delete(:currency), String)
|
9799
9969
|
@customer = (x = opts.delete(:customer); x.is_a?(::Io::Flow::V0::Models::Customer) ? x : ::Io::Flow::V0::Models::Customer.new(x))
|
@@ -9817,7 +9987,7 @@ module Io
|
|
9817
9987
|
{
|
9818
9988
|
:id => id,
|
9819
9989
|
:key => key,
|
9820
|
-
:card => card.to_hash,
|
9990
|
+
:card => card.nil? ? nil : card.to_hash,
|
9821
9991
|
:amount => amount,
|
9822
9992
|
:currency => currency,
|
9823
9993
|
:customer => customer.to_hash,
|
@@ -10287,11 +10457,12 @@ module Io
|
|
10287
10457
|
# channels (like the user's browser via JavaScript) and can be used once only.
|
10288
10458
|
# If you have a nonce you can exchange it for a permanent card token via the
|
10289
10459
|
# operation POST /:organization/cards/nonces
|
10290
|
-
class Card
|
10460
|
+
class Card < ExpandableCard
|
10291
10461
|
|
10292
10462
|
attr_reader :id, :token, :type, :expiration, :iin, :last4, :name, :address
|
10293
10463
|
|
10294
10464
|
def initialize(incoming={})
|
10465
|
+
super(:discriminator => ExpandableCard::Types::CARD)
|
10295
10466
|
opts = HttpClient::Helper.symbolize_keys(incoming)
|
10296
10467
|
HttpClient::Preconditions.require_keys(opts, [:id, :token, :type, :expiration, :iin, :last4, :name], 'Card')
|
10297
10468
|
@id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
|
@@ -10309,10 +10480,10 @@ module Io
|
|
10309
10480
|
end
|
10310
10481
|
|
10311
10482
|
def copy(incoming={})
|
10312
|
-
Card.new(
|
10483
|
+
Card.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
10313
10484
|
end
|
10314
10485
|
|
10315
|
-
def
|
10486
|
+
def subtype_to_hash
|
10316
10487
|
{
|
10317
10488
|
:id => id,
|
10318
10489
|
:token => token,
|
@@ -10465,11 +10636,12 @@ module Io
|
|
10465
10636
|
|
10466
10637
|
end
|
10467
10638
|
|
10468
|
-
class CardReference
|
10639
|
+
class CardReference < ExpandableCard
|
10469
10640
|
|
10470
10641
|
attr_reader :id, :token
|
10471
10642
|
|
10472
10643
|
def initialize(incoming={})
|
10644
|
+
super(:discriminator => ExpandableCard::Types::CARD_REFERENCE)
|
10473
10645
|
opts = HttpClient::Helper.symbolize_keys(incoming)
|
10474
10646
|
HttpClient::Preconditions.require_keys(opts, [:id, :token], 'CardReference')
|
10475
10647
|
@id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
|
@@ -10481,10 +10653,10 @@ module Io
|
|
10481
10653
|
end
|
10482
10654
|
|
10483
10655
|
def copy(incoming={})
|
10484
|
-
CardReference.new(
|
10656
|
+
CardReference.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
10485
10657
|
end
|
10486
10658
|
|
10487
|
-
def
|
10659
|
+
def subtype_to_hash
|
10488
10660
|
{
|
10489
10661
|
:id => id,
|
10490
10662
|
:token => token
|
@@ -11509,6 +11681,34 @@ module Io
|
|
11509
11681
|
|
11510
11682
|
end
|
11511
11683
|
|
11684
|
+
class DeliveredDutySetting
|
11685
|
+
|
11686
|
+
attr_reader :default, :available
|
11687
|
+
|
11688
|
+
def initialize(incoming={})
|
11689
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
11690
|
+
HttpClient::Preconditions.require_keys(opts, [:default, :available], 'DeliveredDutySetting')
|
11691
|
+
@default = (x = opts.delete(:default); x.is_a?(::Io::Flow::V0::Models::DeliveredDuty) ? x : ::Io::Flow::V0::Models::DeliveredDuty.apply(x))
|
11692
|
+
@available = HttpClient::Preconditions.assert_class('available', opts.delete(:available), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::DeliveredDuty) ? x : ::Io::Flow::V0::Models::DeliveredDuty.apply(x)) }
|
11693
|
+
end
|
11694
|
+
|
11695
|
+
def to_json
|
11696
|
+
JSON.dump(to_hash)
|
11697
|
+
end
|
11698
|
+
|
11699
|
+
def copy(incoming={})
|
11700
|
+
DeliveredDutySetting.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
11701
|
+
end
|
11702
|
+
|
11703
|
+
def to_hash
|
11704
|
+
{
|
11705
|
+
:default => default.value,
|
11706
|
+
:available => available.map { |o| o.value }
|
11707
|
+
}
|
11708
|
+
end
|
11709
|
+
|
11710
|
+
end
|
11711
|
+
|
11512
11712
|
# Represents a collection of items, the available delivery option tier for that
|
11513
11713
|
# collection of items, and metadata about those options
|
11514
11714
|
class Delivery
|
@@ -11965,7 +12165,7 @@ module Io
|
|
11965
12165
|
# you can capture up to the amount of the authorization.
|
11966
12166
|
class DirectAuthorizationForm < AuthorizationForm
|
11967
12167
|
|
11968
|
-
attr_reader :token, :amount, :currency, :customer, :key, :cvv, :attributes, :destination, :ip
|
12168
|
+
attr_reader :token, :amount, :currency, :customer, :key, :cvv, :attributes, :destination, :ip, :options
|
11969
12169
|
|
11970
12170
|
def initialize(incoming={})
|
11971
12171
|
super(:discriminator => AuthorizationForm::Types::DIRECT_AUTHORIZATION_FORM)
|
@@ -11980,6 +12180,7 @@ module Io
|
|
11980
12180
|
@attributes = (x = opts.delete(:attributes); x.nil? ? nil : HttpClient::Preconditions.assert_class('attributes', x, Hash).inject({}) { |h, d| h[d[0]] = HttpClient::Preconditions.assert_class('attributes', d[1], String); h })
|
11981
12181
|
@destination = (x = opts.delete(:destination); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Address) ? x : ::Io::Flow::V0::Models::Address.new(x)))
|
11982
12182
|
@ip = (x = opts.delete(:ip); x.nil? ? nil : HttpClient::Preconditions.assert_class('ip', x, String))
|
12183
|
+
@options = (x = opts.delete(:options); x.nil? ? nil : HttpClient::Preconditions.assert_class('options', x, Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::AuthorizationOption) ? x : ::Io::Flow::V0::Models::AuthorizationOption.apply(x)) })
|
11983
12184
|
end
|
11984
12185
|
|
11985
12186
|
def to_json
|
@@ -12000,7 +12201,8 @@ module Io
|
|
12000
12201
|
:cvv => cvv,
|
12001
12202
|
:attributes => attributes.nil? ? nil : attributes,
|
12002
12203
|
:destination => destination.nil? ? nil : destination.to_hash,
|
12003
|
-
:ip => ip
|
12204
|
+
:ip => ip,
|
12205
|
+
:options => options.nil? ? nil : options.map { |o| o.value }
|
12004
12206
|
}
|
12005
12207
|
end
|
12006
12208
|
|
@@ -12159,11 +12361,11 @@ module Io
|
|
12159
12361
|
# Experiences define a local experience for a given geographic region
|
12160
12362
|
class Experience
|
12161
12363
|
|
12162
|
-
attr_reader :id, :key, :name, :delivered_duty, :region, :country, :currency, :language, :measurement_system, :subcatalog, :position
|
12364
|
+
attr_reader :id, :key, :name, :delivered_duty, :region, :country, :currency, :language, :measurement_system, :subcatalog, :position, :settings
|
12163
12365
|
|
12164
12366
|
def initialize(incoming={})
|
12165
12367
|
opts = HttpClient::Helper.symbolize_keys(incoming)
|
12166
|
-
HttpClient::Preconditions.require_keys(opts, [:id, :key, :name, :delivered_duty, :region, :country, :currency, :language, :measurement_system, :subcatalog, :position], 'Experience')
|
12368
|
+
HttpClient::Preconditions.require_keys(opts, [:id, :key, :name, :delivered_duty, :region, :country, :currency, :language, :measurement_system, :subcatalog, :position, :settings], 'Experience')
|
12167
12369
|
@id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
|
12168
12370
|
@key = HttpClient::Preconditions.assert_class('key', opts.delete(:key), String)
|
12169
12371
|
@name = HttpClient::Preconditions.assert_class('name', opts.delete(:name), String)
|
@@ -12175,6 +12377,7 @@ module Io
|
|
12175
12377
|
@measurement_system = (x = opts.delete(:measurement_system); x.is_a?(::Io::Flow::V0::Models::MeasurementSystem) ? x : ::Io::Flow::V0::Models::MeasurementSystem.apply(x))
|
12176
12378
|
@subcatalog = (x = opts.delete(:subcatalog); x.is_a?(::Io::Flow::V0::Models::SubcatalogReference) ? x : ::Io::Flow::V0::Models::SubcatalogReference.new(x))
|
12177
12379
|
@position = HttpClient::Preconditions.assert_class('position', opts.delete(:position), Integer)
|
12380
|
+
@settings = (x = opts.delete(:settings); x.is_a?(::Io::Flow::V0::Models::ExperienceSettings) ? x : ::Io::Flow::V0::Models::ExperienceSettings.new(x))
|
12178
12381
|
end
|
12179
12382
|
|
12180
12383
|
def to_json
|
@@ -12197,7 +12400,8 @@ module Io
|
|
12197
12400
|
:language => language,
|
12198
12401
|
:measurement_system => measurement_system.value,
|
12199
12402
|
:subcatalog => subcatalog.to_hash,
|
12200
|
-
:position => position
|
12403
|
+
:position => position,
|
12404
|
+
:settings => settings.to_hash
|
12201
12405
|
}
|
12202
12406
|
end
|
12203
12407
|
|
@@ -12210,10 +12414,10 @@ module Io
|
|
12210
12414
|
|
12211
12415
|
def initialize(incoming={})
|
12212
12416
|
opts = HttpClient::Helper.symbolize_keys(incoming)
|
12213
|
-
HttpClient::Preconditions.require_keys(opts, [:key, :name, :country, :currency, :language, :measurement_system], 'ExperienceDefaults')
|
12417
|
+
HttpClient::Preconditions.require_keys(opts, [:key, :name, :delivered_duty, :country, :currency, :language, :measurement_system], 'ExperienceDefaults')
|
12214
12418
|
@key = HttpClient::Preconditions.assert_class('key', opts.delete(:key), String)
|
12215
12419
|
@name = HttpClient::Preconditions.assert_class('name', opts.delete(:name), String)
|
12216
|
-
@delivered_duty = (x = opts.delete(:delivered_duty); x.
|
12420
|
+
@delivered_duty = (x = opts.delete(:delivered_duty); x.is_a?(::Io::Flow::V0::Models::DeliveredDuty) ? x : ::Io::Flow::V0::Models::DeliveredDuty.apply(x))
|
12217
12421
|
@country = HttpClient::Preconditions.assert_class('country', opts.delete(:country), String)
|
12218
12422
|
@currency = HttpClient::Preconditions.assert_class('currency', opts.delete(:currency), String)
|
12219
12423
|
@language = HttpClient::Preconditions.assert_class('language', opts.delete(:language), String)
|
@@ -12232,7 +12436,7 @@ module Io
|
|
12232
12436
|
{
|
12233
12437
|
:key => key,
|
12234
12438
|
:name => name,
|
12235
|
-
:delivered_duty => delivered_duty.
|
12439
|
+
:delivered_duty => delivered_duty.value,
|
12236
12440
|
:country => country,
|
12237
12441
|
:currency => currency,
|
12238
12442
|
:language => language,
|
@@ -12374,6 +12578,32 @@ module Io
|
|
12374
12578
|
|
12375
12579
|
end
|
12376
12580
|
|
12581
|
+
class ExperienceSettings
|
12582
|
+
|
12583
|
+
attr_reader :delivered_duty
|
12584
|
+
|
12585
|
+
def initialize(incoming={})
|
12586
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
12587
|
+
HttpClient::Preconditions.require_keys(opts, [:delivered_duty], 'ExperienceSettings')
|
12588
|
+
@delivered_duty = (x = opts.delete(:delivered_duty); x.is_a?(::Io::Flow::V0::Models::DeliveredDutySetting) ? x : ::Io::Flow::V0::Models::DeliveredDutySetting.new(x))
|
12589
|
+
end
|
12590
|
+
|
12591
|
+
def to_json
|
12592
|
+
JSON.dump(to_hash)
|
12593
|
+
end
|
12594
|
+
|
12595
|
+
def copy(incoming={})
|
12596
|
+
ExperienceSettings.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
12597
|
+
end
|
12598
|
+
|
12599
|
+
def to_hash
|
12600
|
+
{
|
12601
|
+
:delivered_duty => delivered_duty.to_hash
|
12602
|
+
}
|
12603
|
+
end
|
12604
|
+
|
12605
|
+
end
|
12606
|
+
|
12377
12607
|
# Some important fields related to experiences used in various APIs
|
12378
12608
|
class ExperienceSummary
|
12379
12609
|
|
@@ -15218,6 +15448,86 @@ module Io
|
|
15218
15448
|
|
15219
15449
|
end
|
15220
15450
|
|
15451
|
+
class ItemSalesMarginDeleted < Event
|
15452
|
+
|
15453
|
+
attr_reader :event_id, :timestamp, :item_sales_margin_id, :organization_id, :experience_key
|
15454
|
+
|
15455
|
+
def initialize(incoming={})
|
15456
|
+
super(:discriminator => Event::Types::ITEM_SALES_MARGIN_DELETED)
|
15457
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
15458
|
+
HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :item_sales_margin_id, :organization_id, :experience_key], 'ItemSalesMarginDeleted')
|
15459
|
+
@event_id = HttpClient::Preconditions.assert_class('event_id', opts.delete(:event_id), String)
|
15460
|
+
@timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
|
15461
|
+
@item_sales_margin_id = HttpClient::Preconditions.assert_class('item_sales_margin_id', opts.delete(:item_sales_margin_id), String)
|
15462
|
+
@organization_id = HttpClient::Preconditions.assert_class('organization_id', opts.delete(:organization_id), String)
|
15463
|
+
@experience_key = HttpClient::Preconditions.assert_class('experience_key', opts.delete(:experience_key), String)
|
15464
|
+
end
|
15465
|
+
|
15466
|
+
def to_json
|
15467
|
+
JSON.dump(to_hash)
|
15468
|
+
end
|
15469
|
+
|
15470
|
+
def copy(incoming={})
|
15471
|
+
ItemSalesMarginDeleted.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
15472
|
+
end
|
15473
|
+
|
15474
|
+
def subtype_to_hash
|
15475
|
+
{
|
15476
|
+
:event_id => event_id,
|
15477
|
+
:timestamp => timestamp,
|
15478
|
+
:item_sales_margin_id => item_sales_margin_id,
|
15479
|
+
:organization_id => organization_id,
|
15480
|
+
:experience_key => experience_key
|
15481
|
+
}
|
15482
|
+
end
|
15483
|
+
|
15484
|
+
end
|
15485
|
+
|
15486
|
+
class ItemSalesMarginUpserted < Event
|
15487
|
+
|
15488
|
+
attr_reader :event_id, :timestamp, :item_sales_margin_id, :organization_id, :experience_key, :name, :q, :fixed, :percent, :position
|
15489
|
+
|
15490
|
+
def initialize(incoming={})
|
15491
|
+
super(:discriminator => Event::Types::ITEM_SALES_MARGIN_UPSERTED)
|
15492
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
15493
|
+
HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :item_sales_margin_id, :organization_id, :experience_key, :name, :q, :fixed, :percent, :position], 'ItemSalesMarginUpserted')
|
15494
|
+
@event_id = HttpClient::Preconditions.assert_class('event_id', opts.delete(:event_id), String)
|
15495
|
+
@timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
|
15496
|
+
@item_sales_margin_id = HttpClient::Preconditions.assert_class('item_sales_margin_id', opts.delete(:item_sales_margin_id), String)
|
15497
|
+
@organization_id = HttpClient::Preconditions.assert_class('organization_id', opts.delete(:organization_id), String)
|
15498
|
+
@experience_key = HttpClient::Preconditions.assert_class('experience_key', opts.delete(:experience_key), String)
|
15499
|
+
@name = HttpClient::Preconditions.assert_class('name', opts.delete(:name), String)
|
15500
|
+
@q = HttpClient::Preconditions.assert_class('q', opts.delete(:q), String)
|
15501
|
+
@fixed = HttpClient::Preconditions.assert_class('fixed', HttpClient::Helper.to_big_decimal(opts.delete(:fixed)), BigDecimal)
|
15502
|
+
@percent = HttpClient::Preconditions.assert_class('percent', HttpClient::Helper.to_big_decimal(opts.delete(:percent)), BigDecimal)
|
15503
|
+
@position = HttpClient::Preconditions.assert_class('position', opts.delete(:position), Integer)
|
15504
|
+
end
|
15505
|
+
|
15506
|
+
def to_json
|
15507
|
+
JSON.dump(to_hash)
|
15508
|
+
end
|
15509
|
+
|
15510
|
+
def copy(incoming={})
|
15511
|
+
ItemSalesMarginUpserted.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
15512
|
+
end
|
15513
|
+
|
15514
|
+
def subtype_to_hash
|
15515
|
+
{
|
15516
|
+
:event_id => event_id,
|
15517
|
+
:timestamp => timestamp,
|
15518
|
+
:item_sales_margin_id => item_sales_margin_id,
|
15519
|
+
:organization_id => organization_id,
|
15520
|
+
:experience_key => experience_key,
|
15521
|
+
:name => name,
|
15522
|
+
:q => q,
|
15523
|
+
:fixed => fixed,
|
15524
|
+
:percent => percent,
|
15525
|
+
:position => position
|
15526
|
+
}
|
15527
|
+
end
|
15528
|
+
|
15529
|
+
end
|
15530
|
+
|
15221
15531
|
# Statistics covering product catalog item information, including total catalog
|
15222
15532
|
# item count, number of distinct categories, etc.
|
15223
15533
|
class ItemStatistics
|
@@ -15503,8 +15813,8 @@ module Io
|
|
15503
15813
|
HttpClient::Preconditions.require_keys(opts, [:item_number, :quantity, :price, :total], 'Line')
|
15504
15814
|
@item_number = HttpClient::Preconditions.assert_class('item_number', opts.delete(:item_number), String)
|
15505
15815
|
@quantity = HttpClient::Preconditions.assert_class('quantity', opts.delete(:quantity), Integer)
|
15506
|
-
@price = (x = opts.delete(:price); x.is_a?(::Io::Flow::V0::Models::
|
15507
|
-
@total = (x = opts.delete(:total); x.is_a?(::Io::Flow::V0::Models::
|
15816
|
+
@price = (x = opts.delete(:price); x.is_a?(::Io::Flow::V0::Models::PriceWithBase) ? x : ::Io::Flow::V0::Models::PriceWithBase.new(x))
|
15817
|
+
@total = (x = opts.delete(:total); x.is_a?(::Io::Flow::V0::Models::PriceWithBase) ? x : ::Io::Flow::V0::Models::PriceWithBase.new(x))
|
15508
15818
|
end
|
15509
15819
|
|
15510
15820
|
def to_json
|
@@ -15642,13 +15952,15 @@ module Io
|
|
15642
15952
|
|
15643
15953
|
class LocalPriceDetails
|
15644
15954
|
|
15645
|
-
attr_reader :base, :local
|
15955
|
+
attr_reader :base, :local, :discount, :local_before_discount
|
15646
15956
|
|
15647
15957
|
def initialize(incoming={})
|
15648
15958
|
opts = HttpClient::Helper.symbolize_keys(incoming)
|
15649
15959
|
HttpClient::Preconditions.require_keys(opts, [:base, :local], 'LocalPriceDetails')
|
15650
15960
|
@base = (x = opts.delete(:base); x.is_a?(::Io::Flow::V0::Models::PriceDetails) ? x : ::Io::Flow::V0::Models::PriceDetails.new(x))
|
15651
15961
|
@local = (x = opts.delete(:local); x.is_a?(::Io::Flow::V0::Models::PriceDetails) ? x : ::Io::Flow::V0::Models::PriceDetails.new(x))
|
15962
|
+
@discount = (x = opts.delete(:discount); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::PriceDetail) ? x : ::Io::Flow::V0::Models::PriceDetail.new(x)))
|
15963
|
+
@local_before_discount = (x = opts.delete(:local_before_discount); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::PriceDetail) ? x : ::Io::Flow::V0::Models::PriceDetail.new(x)))
|
15652
15964
|
end
|
15653
15965
|
|
15654
15966
|
def to_json
|
@@ -15662,7 +15974,9 @@ module Io
|
|
15662
15974
|
def to_hash
|
15663
15975
|
{
|
15664
15976
|
:base => base.to_hash,
|
15665
|
-
:local => local.to_hash
|
15977
|
+
:local => local.to_hash,
|
15978
|
+
:discount => discount.nil? ? nil : discount.to_hash,
|
15979
|
+
:local_before_discount => local_before_discount.nil? ? nil : local_before_discount.to_hash
|
15666
15980
|
}
|
15667
15981
|
end
|
15668
15982
|
|
@@ -16363,7 +16677,7 @@ module Io
|
|
16363
16677
|
# you can capture up to the amount of the authorization
|
16364
16678
|
class MerchantOfRecordAuthorizationForm < AuthorizationForm
|
16365
16679
|
|
16366
|
-
attr_reader :token, :order_number, :key, :cvv, :attributes, :ip
|
16680
|
+
attr_reader :token, :order_number, :key, :cvv, :attributes, :ip, :options
|
16367
16681
|
|
16368
16682
|
def initialize(incoming={})
|
16369
16683
|
super(:discriminator => AuthorizationForm::Types::MERCHANT_OF_RECORD_AUTHORIZATION_FORM)
|
@@ -16375,6 +16689,7 @@ module Io
|
|
16375
16689
|
@cvv = (x = opts.delete(:cvv); x.nil? ? nil : HttpClient::Preconditions.assert_class('cvv', x, String))
|
16376
16690
|
@attributes = (x = opts.delete(:attributes); x.nil? ? nil : HttpClient::Preconditions.assert_class('attributes', x, Hash).inject({}) { |h, d| h[d[0]] = HttpClient::Preconditions.assert_class('attributes', d[1], String); h })
|
16377
16691
|
@ip = (x = opts.delete(:ip); x.nil? ? nil : HttpClient::Preconditions.assert_class('ip', x, String))
|
16692
|
+
@options = (x = opts.delete(:options); x.nil? ? nil : HttpClient::Preconditions.assert_class('options', x, Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::AuthorizationOption) ? x : ::Io::Flow::V0::Models::AuthorizationOption.apply(x)) })
|
16378
16693
|
end
|
16379
16694
|
|
16380
16695
|
def to_json
|
@@ -16392,7 +16707,8 @@ module Io
|
|
16392
16707
|
:key => key,
|
16393
16708
|
:cvv => cvv,
|
16394
16709
|
:attributes => attributes.nil? ? nil : attributes,
|
16395
|
-
:ip => ip
|
16710
|
+
:ip => ip,
|
16711
|
+
:options => options.nil? ? nil : options.map { |o| o.value }
|
16396
16712
|
}
|
16397
16713
|
end
|
16398
16714
|
|
@@ -16648,14 +16964,15 @@ module Io
|
|
16648
16964
|
# payment authorization for an order.
|
16649
16965
|
class Order
|
16650
16966
|
|
16651
|
-
attr_reader :id, :number, :customer, :destination, :expires_at, :items, :deliveries, :selections, :prices, :total, :attributes, :submitted_at, :lines, :identifiers, :promotions
|
16967
|
+
attr_reader :id, :number, :customer, :delivered_duty, :destination, :expires_at, :items, :deliveries, :selections, :prices, :total, :attributes, :submitted_at, :lines, :identifiers, :promotions
|
16652
16968
|
|
16653
16969
|
def initialize(incoming={})
|
16654
16970
|
opts = HttpClient::Helper.symbolize_keys(incoming)
|
16655
|
-
HttpClient::Preconditions.require_keys(opts, [:id, :number, :customer, :destination, :expires_at, :items, :deliveries, :selections, :prices, :total, :attributes], 'Order')
|
16971
|
+
HttpClient::Preconditions.require_keys(opts, [:id, :number, :customer, :delivered_duty, :destination, :expires_at, :items, :deliveries, :selections, :prices, :total, :attributes], 'Order')
|
16656
16972
|
@id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
|
16657
16973
|
@number = HttpClient::Preconditions.assert_class('number', opts.delete(:number), String)
|
16658
16974
|
@customer = (x = opts.delete(:customer); x.is_a?(::Io::Flow::V0::Models::Customer) ? x : ::Io::Flow::V0::Models::Customer.new(x))
|
16975
|
+
@delivered_duty = (x = opts.delete(:delivered_duty); x.is_a?(::Io::Flow::V0::Models::DeliveredDuty) ? x : ::Io::Flow::V0::Models::DeliveredDuty.apply(x))
|
16659
16976
|
@destination = (x = opts.delete(:destination); x.is_a?(::Io::Flow::V0::Models::OrderAddress) ? x : ::Io::Flow::V0::Models::OrderAddress.new(x))
|
16660
16977
|
@expires_at = HttpClient::Preconditions.assert_class('expires_at', HttpClient::Helper.to_date_time_iso8601(opts.delete(:expires_at)), DateTime)
|
16661
16978
|
@items = HttpClient::Preconditions.assert_class('items', opts.delete(:items), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::LocalizedLineItem) ? x : ::Io::Flow::V0::Models::LocalizedLineItem.new(x)) }
|
@@ -16683,6 +17000,7 @@ module Io
|
|
16683
17000
|
:id => id,
|
16684
17001
|
:number => number,
|
16685
17002
|
:customer => customer.to_hash,
|
17003
|
+
:delivered_duty => delivered_duty.value,
|
16686
17004
|
:destination => destination.to_hash,
|
16687
17005
|
:expires_at => expires_at,
|
16688
17006
|
:items => items.map { |o| o.to_hash },
|
@@ -16923,13 +17241,14 @@ module Io
|
|
16923
17241
|
# pricing and delivery options for destination and items/quantities specified
|
16924
17242
|
class OrderForm
|
16925
17243
|
|
16926
|
-
attr_reader :customer, :items, :number, :destination, :discount, :attributes
|
17244
|
+
attr_reader :customer, :items, :delivered_duty, :number, :destination, :discount, :attributes
|
16927
17245
|
|
16928
17246
|
def initialize(incoming={})
|
16929
17247
|
opts = HttpClient::Helper.symbolize_keys(incoming)
|
16930
17248
|
HttpClient::Preconditions.require_keys(opts, [:items], 'OrderForm')
|
16931
17249
|
@customer = (x = opts.delete(:customer); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Customer) ? x : ::Io::Flow::V0::Models::Customer.new(x)))
|
16932
17250
|
@items = HttpClient::Preconditions.assert_class('items', opts.delete(:items), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::LineItemForm) ? x : ::Io::Flow::V0::Models::LineItemForm.new(x)) }
|
17251
|
+
@delivered_duty = (x = opts.delete(:delivered_duty); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::DeliveredDuty) ? x : ::Io::Flow::V0::Models::DeliveredDuty.apply(x)))
|
16933
17252
|
@number = (x = opts.delete(:number); x.nil? ? nil : HttpClient::Preconditions.assert_class('number', x, String))
|
16934
17253
|
@destination = (x = opts.delete(:destination); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::OrderAddress) ? x : ::Io::Flow::V0::Models::OrderAddress.new(x)))
|
16935
17254
|
@discount = (x = opts.delete(:discount); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Money) ? x : ::Io::Flow::V0::Models::Money.new(x)))
|
@@ -16948,6 +17267,7 @@ module Io
|
|
16948
17267
|
{
|
16949
17268
|
:customer => customer.nil? ? nil : customer.to_hash,
|
16950
17269
|
:items => items.map { |o| o.to_hash },
|
17270
|
+
:delivered_duty => delivered_duty.nil? ? nil : delivered_duty.value,
|
16951
17271
|
:number => number,
|
16952
17272
|
:destination => destination.nil? ? nil : destination.to_hash,
|
16953
17273
|
:discount => discount.nil? ? nil : discount.to_hash,
|
@@ -17221,13 +17541,14 @@ module Io
|
|
17221
17541
|
# pricing and delivery options for destination and items/quantities specified.
|
17222
17542
|
class OrderPutForm
|
17223
17543
|
|
17224
|
-
attr_reader :items, :customer, :selections, :destination, :discount, :attributes
|
17544
|
+
attr_reader :items, :customer, :delivered_duty, :selections, :destination, :discount, :attributes
|
17225
17545
|
|
17226
17546
|
def initialize(incoming={})
|
17227
17547
|
opts = HttpClient::Helper.symbolize_keys(incoming)
|
17228
17548
|
HttpClient::Preconditions.require_keys(opts, [:items], 'OrderPutForm')
|
17229
17549
|
@items = HttpClient::Preconditions.assert_class('items', opts.delete(:items), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::LineItemForm) ? x : ::Io::Flow::V0::Models::LineItemForm.new(x)) }
|
17230
17550
|
@customer = (x = opts.delete(:customer); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Customer) ? x : ::Io::Flow::V0::Models::Customer.new(x)))
|
17551
|
+
@delivered_duty = (x = opts.delete(:delivered_duty); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::DeliveredDuty) ? x : ::Io::Flow::V0::Models::DeliveredDuty.apply(x)))
|
17231
17552
|
@selections = (x = opts.delete(:selections); x.nil? ? nil : HttpClient::Preconditions.assert_class('selections', x, Array).map { |v| HttpClient::Preconditions.assert_class('selections', v, String) })
|
17232
17553
|
@destination = (x = opts.delete(:destination); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::OrderAddress) ? x : ::Io::Flow::V0::Models::OrderAddress.new(x)))
|
17233
17554
|
@discount = (x = opts.delete(:discount); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Money) ? x : ::Io::Flow::V0::Models::Money.new(x)))
|
@@ -17246,6 +17567,7 @@ module Io
|
|
17246
17567
|
{
|
17247
17568
|
:items => items.map { |o| o.to_hash },
|
17248
17569
|
:customer => customer.nil? ? nil : customer.to_hash,
|
17570
|
+
:delivered_duty => delivered_duty.nil? ? nil : delivered_duty.value,
|
17249
17571
|
:selections => selections.nil? ? nil : selections,
|
17250
17572
|
:destination => destination.nil? ? nil : destination.to_hash,
|
17251
17573
|
:discount => discount.nil? ? nil : discount.to_hash,
|
@@ -17285,7 +17607,7 @@ module Io
|
|
17285
17607
|
|
17286
17608
|
class OrderUpserted < Event
|
17287
17609
|
|
17288
|
-
attr_reader :event_id, :timestamp, :organization, :number, :environment, :experience_id, :expires_at, :customer, :selections, :items, :destination, :deliveries, :prices, :discount, :total, :created_at, :updated_at, :submitted_at, :lines, :attributes
|
17610
|
+
attr_reader :event_id, :timestamp, :organization, :number, :environment, :experience_id, :expires_at, :customer, :selections, :items, :destination, :deliveries, :prices, :discount, :delivered_duty, :total, :created_at, :updated_at, :submitted_at, :lines, :attributes
|
17289
17611
|
|
17290
17612
|
def initialize(incoming={})
|
17291
17613
|
super(:discriminator => Event::Types::ORDER_UPSERTED)
|
@@ -17305,6 +17627,7 @@ module Io
|
|
17305
17627
|
@deliveries = HttpClient::Preconditions.assert_class('deliveries', opts.delete(:deliveries), Array).map { |v| HttpClient::Preconditions.assert_class('deliveries', HttpClient::Helper.to_object(v), Hash) }
|
17306
17628
|
@prices = HttpClient::Preconditions.assert_class('prices', opts.delete(:prices), Array).map { |v| HttpClient::Preconditions.assert_class('prices', HttpClient::Helper.to_object(v), Hash) }
|
17307
17629
|
@discount = (x = opts.delete(:discount); x.nil? ? nil : HttpClient::Preconditions.assert_class('discount', HttpClient::Helper.to_object(x), Hash))
|
17630
|
+
@delivered_duty = (x = opts.delete(:delivered_duty); x.nil? ? nil : HttpClient::Preconditions.assert_class('delivered_duty', x, String))
|
17308
17631
|
@total = HttpClient::Preconditions.assert_class('total', HttpClient::Helper.to_object(opts.delete(:total)), Hash)
|
17309
17632
|
@created_at = (x = opts.delete(:created_at); x.nil? ? nil : HttpClient::Preconditions.assert_class('created_at', HttpClient::Helper.to_date_time_iso8601(x), DateTime))
|
17310
17633
|
@updated_at = (x = opts.delete(:updated_at); x.nil? ? nil : HttpClient::Preconditions.assert_class('updated_at', HttpClient::Helper.to_date_time_iso8601(x), DateTime))
|
@@ -17337,6 +17660,7 @@ module Io
|
|
17337
17660
|
:deliveries => deliveries,
|
17338
17661
|
:prices => prices,
|
17339
17662
|
:discount => discount,
|
17663
|
+
:delivered_duty => delivered_duty,
|
17340
17664
|
:total => total,
|
17341
17665
|
:created_at => created_at,
|
17342
17666
|
:updated_at => updated_at,
|
@@ -17888,7 +18212,7 @@ module Io
|
|
17888
18212
|
|
17889
18213
|
class OrganizationUpserted < Event
|
17890
18214
|
|
17891
|
-
attr_reader :event_id, :timestamp, :id, :name, :environment, :currencies, :parent_id, :default_base_currency
|
18215
|
+
attr_reader :event_id, :timestamp, :id, :name, :environment, :currencies, :parent_id, :default_base_currency, :default_country
|
17892
18216
|
|
17893
18217
|
def initialize(incoming={})
|
17894
18218
|
super(:discriminator => Event::Types::ORGANIZATION_UPSERTED)
|
@@ -17902,6 +18226,7 @@ module Io
|
|
17902
18226
|
@currencies = HttpClient::Preconditions.assert_class('currencies', opts.delete(:currencies), Array).map { |v| HttpClient::Preconditions.assert_class('currencies', v, String) }
|
17903
18227
|
@parent_id = (x = opts.delete(:parent_id); x.nil? ? nil : HttpClient::Preconditions.assert_class('parent_id', x, String))
|
17904
18228
|
@default_base_currency = (x = opts.delete(:default_base_currency); x.nil? ? nil : HttpClient::Preconditions.assert_class('default_base_currency', x, String))
|
18229
|
+
@default_country = (x = opts.delete(:default_country); x.nil? ? nil : HttpClient::Preconditions.assert_class('default_country', x, String))
|
17905
18230
|
end
|
17906
18231
|
|
17907
18232
|
def to_json
|
@@ -17921,7 +18246,8 @@ module Io
|
|
17921
18246
|
:environment => environment,
|
17922
18247
|
:currencies => currencies,
|
17923
18248
|
:parent_id => parent_id,
|
17924
|
-
:default_base_currency => default_base_currency
|
18249
|
+
:default_base_currency => default_base_currency,
|
18250
|
+
:default_country => default_country
|
17925
18251
|
}
|
17926
18252
|
end
|
17927
18253
|
|
@@ -18433,7 +18759,7 @@ module Io
|
|
18433
18759
|
# Detailed information for the pricing of a given item within an experience.
|
18434
18760
|
class PriceDetails
|
18435
18761
|
|
18436
|
-
attr_reader :currency, :item_price, :margins, :vat, :duty, :rounding, :price, :total
|
18762
|
+
attr_reader :currency, :item_price, :margins, :vat, :duty, :rounding, :price, :total, :adjustment
|
18437
18763
|
|
18438
18764
|
def initialize(incoming={})
|
18439
18765
|
opts = HttpClient::Helper.symbolize_keys(incoming)
|
@@ -18446,6 +18772,7 @@ module Io
|
|
18446
18772
|
@rounding = (x = opts.delete(:rounding); x.is_a?(::Io::Flow::V0::Models::PriceDetail) ? x : ::Io::Flow::V0::Models::PriceDetail.new(x))
|
18447
18773
|
@price = (x = opts.delete(:price); x.is_a?(::Io::Flow::V0::Models::Price) ? x : ::Io::Flow::V0::Models::Price.new(x))
|
18448
18774
|
@total = (x = opts.delete(:total); x.is_a?(::Io::Flow::V0::Models::Price) ? x : ::Io::Flow::V0::Models::Price.new(x))
|
18775
|
+
@adjustment = (x = opts.delete(:adjustment); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::PriceDetail) ? x : ::Io::Flow::V0::Models::PriceDetail.new(x)))
|
18449
18776
|
end
|
18450
18777
|
|
18451
18778
|
def to_json
|
@@ -18465,7 +18792,8 @@ module Io
|
|
18465
18792
|
:duty => duty.to_hash,
|
18466
18793
|
:rounding => rounding.to_hash,
|
18467
18794
|
:price => price.to_hash,
|
18468
|
-
:total => total.to_hash
|
18795
|
+
:total => total.to_hash,
|
18796
|
+
:adjustment => adjustment.nil? ? nil : adjustment.to_hash
|
18469
18797
|
}
|
18470
18798
|
end
|
18471
18799
|
|
@@ -18473,7 +18801,7 @@ module Io
|
|
18473
18801
|
|
18474
18802
|
class PriceEquation
|
18475
18803
|
|
18476
|
-
attr_reader :contracted_rate, :rate, :pricing, :base_price, :discount, :fixed_margin, :percent_margin, :insurance, :freight, :duty, :tax
|
18804
|
+
attr_reader :contracted_rate, :rate, :pricing, :base_price, :discount, :fixed_margin, :percent_margin, :insurance, :freight, :duty, :tax, :percent_sales_margin
|
18477
18805
|
|
18478
18806
|
def initialize(incoming={})
|
18479
18807
|
opts = HttpClient::Helper.symbolize_keys(incoming)
|
@@ -18489,6 +18817,7 @@ module Io
|
|
18489
18817
|
@freight = HttpClient::Preconditions.assert_class('freight', HttpClient::Helper.to_big_decimal(opts.delete(:freight)), BigDecimal)
|
18490
18818
|
@duty = (x = opts.delete(:duty); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Duty) ? x : ::Io::Flow::V0::Models::Duty.new(x)))
|
18491
18819
|
@tax = (x = opts.delete(:tax); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Tax) ? x : ::Io::Flow::V0::Models::Tax.new(x)))
|
18820
|
+
@percent_sales_margin = HttpClient::Preconditions.assert_class('percent_sales_margin', HttpClient::Helper.to_big_decimal((x = opts.delete(:percent_sales_margin); x.nil? ? 0 : x)), BigDecimal)
|
18492
18821
|
end
|
18493
18822
|
|
18494
18823
|
def to_json
|
@@ -18511,7 +18840,8 @@ module Io
|
|
18511
18840
|
:insurance => insurance,
|
18512
18841
|
:freight => freight,
|
18513
18842
|
:duty => duty.nil? ? nil : duty.to_hash,
|
18514
|
-
:tax => tax.nil? ? nil : tax.to_hash
|
18843
|
+
:tax => tax.nil? ? nil : tax.to_hash,
|
18844
|
+
:percent_sales_margin => percent_sales_margin
|
18515
18845
|
}
|
18516
18846
|
end
|
18517
18847
|
|
@@ -18870,7 +19200,7 @@ module Io
|
|
18870
19200
|
# that delivery
|
18871
19201
|
class Quote
|
18872
19202
|
|
18873
|
-
attr_reader :id, :destination, :deliveries, :selections
|
19203
|
+
attr_reader :id, :destination, :deliveries, :selections, :delivered_duty
|
18874
19204
|
|
18875
19205
|
def initialize(incoming={})
|
18876
19206
|
opts = HttpClient::Helper.symbolize_keys(incoming)
|
@@ -18879,6 +19209,7 @@ module Io
|
|
18879
19209
|
@destination = (x = opts.delete(:destination); x.is_a?(::Io::Flow::V0::Models::ShippingAddress) ? x : ::Io::Flow::V0::Models::ShippingAddress.new(x))
|
18880
19210
|
@deliveries = HttpClient::Preconditions.assert_class('deliveries', opts.delete(:deliveries), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::Delivery) ? x : ::Io::Flow::V0::Models::Delivery.new(x)) }
|
18881
19211
|
@selections = HttpClient::Preconditions.assert_class('selections', opts.delete(:selections), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::DeliveryOptionReference) ? x : ::Io::Flow::V0::Models::DeliveryOptionReference.new(x)) }
|
19212
|
+
@delivered_duty = (x = (x = opts.delete(:delivered_duty); x.nil? ? "paid" : x); x.is_a?(::Io::Flow::V0::Models::DeliveredDuty) ? x : ::Io::Flow::V0::Models::DeliveredDuty.apply(x))
|
18882
19213
|
end
|
18883
19214
|
|
18884
19215
|
def to_json
|
@@ -18894,7 +19225,8 @@ module Io
|
|
18894
19225
|
:id => id,
|
18895
19226
|
:destination => destination.to_hash,
|
18896
19227
|
:deliveries => deliveries.map { |o| o.to_hash },
|
18897
|
-
:selections => selections.map { |o| o.to_hash }
|
19228
|
+
:selections => selections.map { |o| o.to_hash },
|
19229
|
+
:delivered_duty => delivered_duty.value
|
18898
19230
|
}
|
18899
19231
|
end
|
18900
19232
|
|
@@ -18932,7 +19264,7 @@ module Io
|
|
18932
19264
|
|
18933
19265
|
class QuoteForm
|
18934
19266
|
|
18935
|
-
attr_reader :destination, :experience, :items
|
19267
|
+
attr_reader :destination, :experience, :items, :delivered_duty
|
18936
19268
|
|
18937
19269
|
def initialize(incoming={})
|
18938
19270
|
opts = HttpClient::Helper.symbolize_keys(incoming)
|
@@ -18940,6 +19272,7 @@ module Io
|
|
18940
19272
|
@destination = (x = opts.delete(:destination); x.is_a?(::Io::Flow::V0::Models::ShippingAddress) ? x : ::Io::Flow::V0::Models::ShippingAddress.new(x))
|
18941
19273
|
@experience = HttpClient::Preconditions.assert_class('experience', opts.delete(:experience), String)
|
18942
19274
|
@items = HttpClient::Preconditions.assert_class('items', opts.delete(:items), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::LineItemForm) ? x : ::Io::Flow::V0::Models::LineItemForm.new(x)) }
|
19275
|
+
@delivered_duty = (x = opts.delete(:delivered_duty); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::DeliveredDuty) ? x : ::Io::Flow::V0::Models::DeliveredDuty.apply(x)))
|
18943
19276
|
end
|
18944
19277
|
|
18945
19278
|
def to_json
|
@@ -18954,7 +19287,8 @@ module Io
|
|
18954
19287
|
{
|
18955
19288
|
:destination => destination.to_hash,
|
18956
19289
|
:experience => experience,
|
18957
|
-
:items => items.map { |o| o.to_hash }
|
19290
|
+
:items => items.map { |o| o.to_hash },
|
19291
|
+
:delivered_duty => delivered_duty.nil? ? nil : delivered_duty.value
|
18958
19292
|
}
|
18959
19293
|
end
|
18960
19294
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: flowcommerce
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Flow Commerce, Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-03-
|
11
|
+
date: 2017-03-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: json
|