maxio-advanced-billing-sdk 2.0.0 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +40 -40
- data/lib/advanced_billing/controllers/advance_invoice_controller.rb +6 -4
- data/lib/advanced_billing/controllers/base_controller.rb +1 -1
- data/lib/advanced_billing/controllers/components_controller.rb +9 -58
- data/lib/advanced_billing/controllers/coupons_controller.rb +6 -115
- data/lib/advanced_billing/controllers/custom_fields_controller.rb +4 -4
- data/lib/advanced_billing/controllers/events_based_billing_segments_controller.rb +5 -22
- data/lib/advanced_billing/controllers/insights_controller.rb +3 -4
- data/lib/advanced_billing/controllers/invoices_controller.rb +11 -0
- data/lib/advanced_billing/controllers/payment_profiles_controller.rb +26 -0
- data/lib/advanced_billing/controllers/product_families_controller.rb +5 -14
- data/lib/advanced_billing/controllers/product_price_points_controller.rb +3 -40
- data/lib/advanced_billing/controllers/products_controller.rb +5 -14
- data/lib/advanced_billing/controllers/subscription_components_controller.rb +16 -66
- data/lib/advanced_billing/controllers/subscription_group_invoice_account_controller.rb +5 -15
- data/lib/advanced_billing/controllers/subscription_groups_controller.rb +6 -6
- data/lib/advanced_billing/controllers/subscription_invoice_account_controller.rb +13 -20
- data/lib/advanced_billing/controllers/subscriptions_controller.rb +49 -14
- data/lib/advanced_billing/models/ach_agreement.rb +10 -0
- data/lib/advanced_billing/models/address_change.rb +0 -22
- data/lib/advanced_billing/models/agreement_acceptance.rb +10 -0
- data/lib/advanced_billing/models/allocation.rb +1 -3
- data/lib/advanced_billing/models/applied_credit_note_data.rb +10 -0
- data/lib/advanced_billing/models/apply_credit_note_event.rb +139 -0
- data/lib/advanced_billing/models/apply_credit_note_event_data.rb +3 -1
- data/lib/advanced_billing/models/apply_debit_note_event.rb +139 -0
- data/lib/advanced_billing/models/apply_debit_note_event_data.rb +36 -2
- data/lib/advanced_billing/models/apply_payment_event.rb +139 -0
- data/lib/advanced_billing/models/apply_payment_event_data.rb +21 -7
- data/lib/advanced_billing/models/backport_invoice_event.rb +139 -0
- data/lib/advanced_billing/models/bank_account_attributes.rb +10 -0
- data/lib/advanced_billing/models/billing_manifest.rb +5 -1
- data/lib/advanced_billing/models/billing_schedule.rb +10 -0
- data/lib/advanced_billing/models/change_chargeback_status_event.rb +141 -0
- data/lib/advanced_billing/models/change_chargeback_status_event_data.rb +73 -0
- data/lib/advanced_billing/models/change_invoice_collection_method_event.rb +141 -0
- data/lib/advanced_billing/models/change_invoice_status_event.rb +141 -0
- data/lib/advanced_billing/models/change_invoice_status_event_data.rb +131 -0
- data/lib/advanced_billing/models/chargeback_status.rb +29 -0
- data/lib/advanced_billing/models/component.rb +3 -13
- data/lib/advanced_billing/models/component_cost_data.rb +10 -0
- data/lib/advanced_billing/models/component_cost_data_rate_tier.rb +10 -0
- data/lib/advanced_billing/models/component_custom_price.rb +10 -0
- data/lib/advanced_billing/models/component_price_point.rb +2 -13
- data/lib/advanced_billing/models/component_price_point_item.rb +10 -0
- data/lib/advanced_billing/models/coupon.rb +4 -14
- data/lib/advanced_billing/models/create_component_price_point.rb +6 -2
- data/lib/advanced_billing/models/create_component_price_point_request.rb +1 -1
- data/lib/advanced_billing/models/create_component_price_points_request.rb +1 -1
- data/lib/advanced_billing/models/create_credit_note_event.rb +139 -0
- data/lib/advanced_billing/models/create_debit_note_event.rb +139 -0
- data/lib/advanced_billing/models/create_invoice_payment_application.rb +22 -0
- data/lib/advanced_billing/models/create_multi_invoice_payment.rb +6 -2
- data/lib/advanced_billing/models/create_offer_component.rb +11 -0
- data/lib/advanced_billing/models/create_payment_profile.rb +4 -4
- data/lib/advanced_billing/models/create_prepaid_usage_component_price_point.rb +10 -4
- data/lib/advanced_billing/models/create_product_family.rb +14 -4
- data/lib/advanced_billing/models/create_subscription.rb +2 -2
- data/lib/advanced_billing/models/credit_card_attributes.rb +10 -0
- data/lib/advanced_billing/models/credit_note_application.rb +10 -0
- data/lib/advanced_billing/models/credit_note_line_item.rb +10 -0
- data/lib/advanced_billing/models/customer.rb +13 -1
- data/lib/advanced_billing/models/customer_attributes.rb +10 -0
- data/lib/advanced_billing/models/customer_change.rb +7 -22
- data/lib/advanced_billing/models/customer_custom_fields_change.rb +0 -22
- data/lib/advanced_billing/models/customer_payer_change.rb +0 -22
- data/lib/advanced_billing/models/debit_note.rb +351 -0
- data/lib/advanced_billing/models/debit_note_role.rb +23 -0
- data/lib/advanced_billing/models/debit_note_status.rb +29 -0
- data/lib/advanced_billing/models/deduct_service_credit.rb +10 -16
- data/lib/advanced_billing/models/dunner_data.rb +38 -0
- data/lib/advanced_billing/models/dunning_step_data.rb +34 -0
- data/lib/advanced_billing/models/dunning_step_reached.rb +12 -6
- data/lib/advanced_billing/models/failed_payment_event.rb +139 -0
- data/lib/advanced_billing/models/failed_payment_event_data.rb +132 -0
- data/lib/advanced_billing/models/group_billing.rb +10 -0
- data/lib/advanced_billing/models/group_settings.rb +4 -2
- data/lib/advanced_billing/models/group_target.rb +14 -0
- data/lib/advanced_billing/models/historic_usage.rb +109 -0
- data/lib/advanced_billing/models/include_null_or_not_null.rb +23 -0
- data/lib/advanced_billing/models/invoice.rb +18 -8
- data/lib/advanced_billing/models/invoice_address.rb +10 -0
- data/lib/advanced_billing/models/invoice_balance_item.rb +10 -0
- data/lib/advanced_billing/models/invoice_credit.rb +10 -0
- data/lib/advanced_billing/models/invoice_custom_field.rb +10 -0
- data/lib/advanced_billing/models/invoice_customer.rb +10 -0
- data/lib/advanced_billing/models/invoice_discount.rb +10 -0
- data/lib/advanced_billing/models/invoice_discount_breakout.rb +10 -0
- data/lib/advanced_billing/models/invoice_display_settings.rb +10 -0
- data/lib/advanced_billing/models/invoice_event_type.rb +3 -0
- data/lib/advanced_billing/models/invoice_issued.rb +6 -2
- data/lib/advanced_billing/models/invoice_line_item.rb +3 -3
- data/lib/advanced_billing/models/invoice_line_item_event_data.rb +10 -0
- data/lib/advanced_billing/models/invoice_line_item_pricing_detail.rb +10 -0
- data/lib/advanced_billing/models/invoice_payer.rb +10 -0
- data/lib/advanced_billing/models/invoice_payment.rb +10 -0
- data/lib/advanced_billing/models/invoice_payment_method.rb +10 -0
- data/lib/advanced_billing/models/invoice_pre_payment.rb +0 -10
- data/lib/advanced_billing/models/invoice_previous_balance.rb +10 -0
- data/lib/advanced_billing/models/invoice_refund.rb +10 -0
- data/lib/advanced_billing/models/invoice_seller.rb +10 -0
- data/lib/advanced_billing/models/invoice_status.rb +2 -2
- data/lib/advanced_billing/models/invoice_tax.rb +10 -0
- data/lib/advanced_billing/models/invoice_tax_breakout.rb +10 -0
- data/lib/advanced_billing/models/invoice_tax_component_breakout.rb +10 -0
- data/lib/advanced_billing/models/issue_invoice_event.rb +139 -0
- data/lib/advanced_billing/models/issue_invoice_event_data.rb +6 -6
- data/lib/advanced_billing/models/issue_service_credit.rb +10 -16
- data/lib/advanced_billing/models/item_price_point_changed.rb +8 -4
- data/lib/advanced_billing/models/item_price_point_data.rb +10 -0
- data/lib/advanced_billing/models/list_components_filter.rb +74 -0
- data/lib/advanced_billing/models/list_coupons_filter.rb +168 -0
- data/lib/advanced_billing/models/list_invoice_events_response.rb +14 -11
- data/lib/advanced_billing/models/{refund_prepayment_aggregated_error.rb → list_mrr_filter.rb} +14 -12
- data/lib/advanced_billing/models/{list_subscription_group_prepayment_date_field.rb → list_prepayment_date_field.rb} +4 -4
- data/lib/advanced_billing/models/list_prepayments_filter.rb +88 -0
- data/lib/advanced_billing/models/list_price_points_filter.rb +163 -0
- data/lib/advanced_billing/models/list_products_filter.rb +81 -0
- data/lib/advanced_billing/models/list_segments_filter.rb +103 -0
- data/lib/advanced_billing/models/list_subscription_components_filter.rb +74 -0
- data/lib/advanced_billing/models/list_subscription_components_for_site_filter.rb +84 -0
- data/lib/advanced_billing/models/list_subscription_components_include.rb +4 -1
- data/lib/advanced_billing/models/metafield_scope.rb +10 -0
- data/lib/advanced_billing/models/nested_subscription_group.rb +0 -10
- data/lib/advanced_billing/models/origin_invoice.rb +10 -0
- data/lib/advanced_billing/models/overage_pricing.rb +14 -0
- data/lib/advanced_billing/models/paid_invoice.rb +2 -2
- data/lib/advanced_billing/models/payer_attributes.rb +10 -0
- data/lib/advanced_billing/models/prepaid_component_price_point.rb +10 -0
- data/lib/advanced_billing/models/prepaid_product_price_point_filter.rb +56 -0
- data/lib/advanced_billing/models/prepaid_usage.rb +6 -2
- data/lib/advanced_billing/models/prepaid_usage_allocation_detail.rb +10 -0
- data/lib/advanced_billing/models/product.rb +5 -16
- data/lib/advanced_billing/models/product_price_point.rb +9 -0
- data/lib/advanced_billing/models/proforma_invoice.rb +2 -2
- data/lib/advanced_billing/models/proforma_invoice_issued.rb +6 -2
- data/lib/advanced_billing/models/reactivation_billing.rb +10 -0
- data/lib/advanced_billing/models/record_payment_response.rb +1 -13
- data/lib/advanced_billing/models/refund_invoice_event.rb +139 -0
- data/lib/advanced_billing/models/refund_invoice_event_data.rb +4 -2
- data/lib/advanced_billing/models/refund_invoice_request.rb +1 -1
- data/lib/advanced_billing/models/refund_prepayment.rb +3 -1
- data/lib/advanced_billing/models/remove_payment_event.rb +139 -0
- data/lib/advanced_billing/models/remove_payment_event_data.rb +1 -1
- data/lib/advanced_billing/models/segment_price.rb +10 -0
- data/lib/advanced_billing/models/subscription.rb +10 -16
- data/lib/advanced_billing/models/subscription_component.rb +26 -7
- data/lib/advanced_billing/models/subscription_component_subscription.rb +10 -0
- data/lib/advanced_billing/models/subscription_filter.rb +153 -0
- data/lib/advanced_billing/models/subscription_group.rb +2 -2
- data/lib/advanced_billing/models/subscription_group_bank_account.rb +10 -0
- data/lib/advanced_billing/models/subscription_group_component_custom_price.rb +10 -0
- data/lib/advanced_billing/models/subscription_group_prepayment_response.rb +3 -1
- data/lib/advanced_billing/models/subscription_group_signup.rb +2 -2
- data/lib/advanced_billing/models/subscription_group_signup_failure.rb +4 -2
- data/lib/advanced_billing/models/subscription_group_signup_failure_data.rb +10 -0
- data/lib/advanced_billing/models/subscription_group_signup_item.rb +10 -0
- data/lib/advanced_billing/models/subscription_group_signup_response.rb +2 -2
- data/lib/advanced_billing/models/subscription_group_signup_success.rb +8 -4
- data/lib/advanced_billing/models/subscription_group_signup_success_data.rb +50 -0
- data/lib/advanced_billing/models/update_customer.rb +12 -0
- data/lib/advanced_billing/models/update_subscription_component.rb +10 -0
- data/lib/advanced_billing/models/upsert_prepaid_configuration.rb +10 -0
- data/lib/advanced_billing/models/usage.rb +3 -1
- data/lib/advanced_billing/models/void_invoice_event.rb +139 -0
- data/lib/advanced_billing/models/void_invoice_event_data.rb +8 -7
- data/lib/advanced_billing/models/void_remainder_event.rb +139 -0
- data/lib/advanced_billing/models/void_remainder_event_data.rb +4 -2
- data/lib/advanced_billing/utilities/union_type_lookup.rb +69 -199
- data/lib/advanced_billing.rb +42 -18
- metadata +38 -17
- data/lib/advanced_billing/exceptions/refund_prepayment_aggregated_errors_response_exception.rb +0 -33
- data/lib/advanced_billing/models/billing_address.rb +0 -117
- data/lib/advanced_billing/models/credit_note1.rb +0 -419
- data/lib/advanced_billing/models/customer1.rb +0 -125
- data/lib/advanced_billing/models/invoice_event.rb +0 -124
- data/lib/advanced_billing/models/invoice_event_data.rb +0 -447
- data/lib/advanced_billing/models/invoice_event_payment.rb +0 -168
- data/lib/advanced_billing/models/invoice_event_payment1.rb +0 -160
- data/lib/advanced_billing/models/prepayment_aggregated_error.rb +0 -81
- data/lib/advanced_billing/models/price_point.rb +0 -216
- data/lib/advanced_billing/models/refund.rb +0 -138
- data/lib/advanced_billing/models/seller.rb +0 -92
- data/lib/advanced_billing/models/shipping_address.rb +0 -117
|
@@ -64,5 +64,27 @@ module AdvancedBilling
|
|
|
64
64
|
amount,
|
|
65
65
|
hash)
|
|
66
66
|
end
|
|
67
|
+
|
|
68
|
+
# Validates an instance of the object from a given value.
|
|
69
|
+
# @param [CreateInvoicePaymentApplication | Hash] The value against the validation is performed.
|
|
70
|
+
def self.validate(value)
|
|
71
|
+
if value.instance_of? self
|
|
72
|
+
return (
|
|
73
|
+
APIHelper.valid_type?(value.invoice_uid,
|
|
74
|
+
->(val) { val.instance_of? String }) and
|
|
75
|
+
APIHelper.valid_type?(value.amount,
|
|
76
|
+
->(val) { val.instance_of? String })
|
|
77
|
+
)
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
return false unless value.instance_of? Hash
|
|
81
|
+
|
|
82
|
+
(
|
|
83
|
+
APIHelper.valid_type?(value['invoice_uid'],
|
|
84
|
+
->(val) { val.instance_of? String }) and
|
|
85
|
+
APIHelper.valid_type?(value['amount'],
|
|
86
|
+
->(val) { val.instance_of? String })
|
|
87
|
+
)
|
|
88
|
+
end
|
|
67
89
|
end
|
|
68
90
|
end
|
|
@@ -126,7 +126,9 @@ module AdvancedBilling
|
|
|
126
126
|
UnionTypeLookUp.get(:CreateMultiInvoicePaymentAmount)
|
|
127
127
|
.validate(value.amount) and
|
|
128
128
|
APIHelper.valid_type?(value.applications,
|
|
129
|
-
->(val) { CreateInvoicePaymentApplication.validate(val) }
|
|
129
|
+
->(val) { CreateInvoicePaymentApplication.validate(val) },
|
|
130
|
+
is_model_hash: true,
|
|
131
|
+
is_inner_model_hash: true)
|
|
130
132
|
)
|
|
131
133
|
end
|
|
132
134
|
|
|
@@ -136,7 +138,9 @@ module AdvancedBilling
|
|
|
136
138
|
UnionTypeLookUp.get(:CreateMultiInvoicePaymentAmount)
|
|
137
139
|
.validate(value['amount']) and
|
|
138
140
|
APIHelper.valid_type?(value['applications'],
|
|
139
|
-
->(val) { CreateInvoicePaymentApplication.validate(val) }
|
|
141
|
+
->(val) { CreateInvoicePaymentApplication.validate(val) },
|
|
142
|
+
is_model_hash: true,
|
|
143
|
+
is_inner_model_hash: true)
|
|
140
144
|
)
|
|
141
145
|
end
|
|
142
146
|
end
|
|
@@ -13,6 +13,10 @@ module AdvancedBilling
|
|
|
13
13
|
# @return [Integer]
|
|
14
14
|
attr_accessor :component_id
|
|
15
15
|
|
|
16
|
+
# TODO: Write general description for this method
|
|
17
|
+
# @return [Integer]
|
|
18
|
+
attr_accessor :price_point_id
|
|
19
|
+
|
|
16
20
|
# TODO: Write general description for this method
|
|
17
21
|
# @return [Integer]
|
|
18
22
|
attr_accessor :starting_quantity
|
|
@@ -21,6 +25,7 @@ module AdvancedBilling
|
|
|
21
25
|
def self.names
|
|
22
26
|
@_hash = {} if @_hash.nil?
|
|
23
27
|
@_hash['component_id'] = 'component_id'
|
|
28
|
+
@_hash['price_point_id'] = 'price_point_id'
|
|
24
29
|
@_hash['starting_quantity'] = 'starting_quantity'
|
|
25
30
|
@_hash
|
|
26
31
|
end
|
|
@@ -29,6 +34,7 @@ module AdvancedBilling
|
|
|
29
34
|
def self.optionals
|
|
30
35
|
%w[
|
|
31
36
|
component_id
|
|
37
|
+
price_point_id
|
|
32
38
|
starting_quantity
|
|
33
39
|
]
|
|
34
40
|
end
|
|
@@ -39,9 +45,11 @@ module AdvancedBilling
|
|
|
39
45
|
end
|
|
40
46
|
|
|
41
47
|
def initialize(component_id = SKIP,
|
|
48
|
+
price_point_id = SKIP,
|
|
42
49
|
starting_quantity = SKIP,
|
|
43
50
|
additional_properties = {})
|
|
44
51
|
@component_id = component_id unless component_id == SKIP
|
|
52
|
+
@price_point_id = price_point_id unless price_point_id == SKIP
|
|
45
53
|
@starting_quantity = starting_quantity unless starting_quantity == SKIP
|
|
46
54
|
|
|
47
55
|
# Add additional model properties to the instance.
|
|
@@ -56,6 +64,8 @@ module AdvancedBilling
|
|
|
56
64
|
|
|
57
65
|
# Extract variables from the hash.
|
|
58
66
|
component_id = hash.key?('component_id') ? hash['component_id'] : SKIP
|
|
67
|
+
price_point_id =
|
|
68
|
+
hash.key?('price_point_id') ? hash['price_point_id'] : SKIP
|
|
59
69
|
starting_quantity =
|
|
60
70
|
hash.key?('starting_quantity') ? hash['starting_quantity'] : SKIP
|
|
61
71
|
|
|
@@ -64,6 +74,7 @@ module AdvancedBilling
|
|
|
64
74
|
|
|
65
75
|
# Create object from extracted values.
|
|
66
76
|
CreateOfferComponent.new(component_id,
|
|
77
|
+
price_point_id,
|
|
67
78
|
starting_quantity,
|
|
68
79
|
hash)
|
|
69
80
|
end
|
|
@@ -155,13 +155,13 @@ module AdvancedBilling
|
|
|
155
155
|
# @return [String]
|
|
156
156
|
attr_accessor :bank_routing_number
|
|
157
157
|
|
|
158
|
-
# (Required when creating with ACH, GoCardless, Stripe BECS
|
|
159
|
-
# bank_iban is blank) The customerʼs bank account number
|
|
158
|
+
# (Required when creating with ACH, GoCardless, Stripe BECS or BACS Direct
|
|
159
|
+
# Debit, and bank_iban is blank) The customerʼs bank account number
|
|
160
160
|
# @return [String]
|
|
161
161
|
attr_accessor :bank_account_number
|
|
162
162
|
|
|
163
|
-
# (Optional when creating with GoCardless, required with Stripe BECS
|
|
164
|
-
# Debit) Branch code. Alternatively, an IBAN can be provided
|
|
163
|
+
# (Optional when creating with GoCardless, required with Stripe BECS or BACS
|
|
164
|
+
# Direct Debit) Branch/Sort code. Alternatively, an IBAN can be provided
|
|
165
165
|
# @return [String]
|
|
166
166
|
attr_accessor :bank_branch_code
|
|
167
167
|
|
|
@@ -184,9 +184,12 @@ module AdvancedBilling
|
|
|
184
184
|
APIHelper.valid_type?(value.pricing_scheme,
|
|
185
185
|
->(val) { PricingScheme.validate(val) }) and
|
|
186
186
|
APIHelper.valid_type?(value.prices,
|
|
187
|
-
->(val) { Price.validate(val) }
|
|
187
|
+
->(val) { Price.validate(val) },
|
|
188
|
+
is_model_hash: true,
|
|
189
|
+
is_inner_model_hash: true) and
|
|
188
190
|
APIHelper.valid_type?(value.overage_pricing,
|
|
189
|
-
->(val) { OveragePricing.validate(val) }
|
|
191
|
+
->(val) { OveragePricing.validate(val) },
|
|
192
|
+
is_model_hash: true)
|
|
190
193
|
)
|
|
191
194
|
end
|
|
192
195
|
|
|
@@ -198,9 +201,12 @@ module AdvancedBilling
|
|
|
198
201
|
APIHelper.valid_type?(value['pricing_scheme'],
|
|
199
202
|
->(val) { PricingScheme.validate(val) }) and
|
|
200
203
|
APIHelper.valid_type?(value['prices'],
|
|
201
|
-
->(val) { Price.validate(val) }
|
|
204
|
+
->(val) { Price.validate(val) },
|
|
205
|
+
is_model_hash: true,
|
|
206
|
+
is_inner_model_hash: true) and
|
|
202
207
|
APIHelper.valid_type?(value['overage_pricing'],
|
|
203
|
-
->(val) { OveragePricing.validate(val) }
|
|
208
|
+
->(val) { OveragePricing.validate(val) },
|
|
209
|
+
is_model_hash: true)
|
|
204
210
|
)
|
|
205
211
|
end
|
|
206
212
|
end
|
|
@@ -13,6 +13,10 @@ module AdvancedBilling
|
|
|
13
13
|
# @return [String]
|
|
14
14
|
attr_accessor :name
|
|
15
15
|
|
|
16
|
+
# TODO: Write general description for this method
|
|
17
|
+
# @return [String]
|
|
18
|
+
attr_accessor :handle
|
|
19
|
+
|
|
16
20
|
# TODO: Write general description for this method
|
|
17
21
|
# @return [String]
|
|
18
22
|
attr_accessor :description
|
|
@@ -21,6 +25,7 @@ module AdvancedBilling
|
|
|
21
25
|
def self.names
|
|
22
26
|
@_hash = {} if @_hash.nil?
|
|
23
27
|
@_hash['name'] = 'name'
|
|
28
|
+
@_hash['handle'] = 'handle'
|
|
24
29
|
@_hash['description'] = 'description'
|
|
25
30
|
@_hash
|
|
26
31
|
end
|
|
@@ -28,7 +33,7 @@ module AdvancedBilling
|
|
|
28
33
|
# An array for optional fields
|
|
29
34
|
def self.optionals
|
|
30
35
|
%w[
|
|
31
|
-
|
|
36
|
+
handle
|
|
32
37
|
description
|
|
33
38
|
]
|
|
34
39
|
end
|
|
@@ -36,14 +41,17 @@ module AdvancedBilling
|
|
|
36
41
|
# An array for nullable fields
|
|
37
42
|
def self.nullables
|
|
38
43
|
%w[
|
|
44
|
+
handle
|
|
39
45
|
description
|
|
40
46
|
]
|
|
41
47
|
end
|
|
42
48
|
|
|
43
|
-
def initialize(name =
|
|
49
|
+
def initialize(name = nil,
|
|
50
|
+
handle = SKIP,
|
|
44
51
|
description = SKIP,
|
|
45
52
|
additional_properties = {})
|
|
46
|
-
@name = name
|
|
53
|
+
@name = name
|
|
54
|
+
@handle = handle unless handle == SKIP
|
|
47
55
|
@description = description unless description == SKIP
|
|
48
56
|
|
|
49
57
|
# Add additional model properties to the instance.
|
|
@@ -57,7 +65,8 @@ module AdvancedBilling
|
|
|
57
65
|
return nil unless hash
|
|
58
66
|
|
|
59
67
|
# Extract variables from the hash.
|
|
60
|
-
name = hash.key?('name') ? hash['name'] :
|
|
68
|
+
name = hash.key?('name') ? hash['name'] : nil
|
|
69
|
+
handle = hash.key?('handle') ? hash['handle'] : SKIP
|
|
61
70
|
description = hash.key?('description') ? hash['description'] : SKIP
|
|
62
71
|
|
|
63
72
|
# Clean out expected properties from Hash.
|
|
@@ -65,6 +74,7 @@ module AdvancedBilling
|
|
|
65
74
|
|
|
66
75
|
# Create object from extracted values.
|
|
67
76
|
CreateProductFamily.new(name,
|
|
77
|
+
handle,
|
|
68
78
|
description,
|
|
69
79
|
hash)
|
|
70
80
|
end
|
|
@@ -437,7 +437,7 @@ module AdvancedBilling
|
|
|
437
437
|
custom_price = SKIP,
|
|
438
438
|
coupon_code = SKIP,
|
|
439
439
|
coupon_codes = SKIP,
|
|
440
|
-
payment_collection_method =
|
|
440
|
+
payment_collection_method = SKIP,
|
|
441
441
|
receives_invoice_emails = SKIP,
|
|
442
442
|
net_terms = SKIP,
|
|
443
443
|
customer_id = SKIP,
|
|
@@ -580,7 +580,7 @@ module AdvancedBilling
|
|
|
580
580
|
coupon_code = hash.key?('coupon_code') ? hash['coupon_code'] : SKIP
|
|
581
581
|
coupon_codes = hash.key?('coupon_codes') ? hash['coupon_codes'] : SKIP
|
|
582
582
|
payment_collection_method =
|
|
583
|
-
hash['payment_collection_method']
|
|
583
|
+
hash.key?('payment_collection_method') ? hash['payment_collection_method'] : SKIP
|
|
584
584
|
receives_invoice_emails =
|
|
585
585
|
hash.key?('receives_invoice_emails') ? hash['receives_invoice_emails'] : SKIP
|
|
586
586
|
net_terms = hash.key?('net_terms') ? hash['net_terms'] : SKIP
|
|
@@ -78,5 +78,15 @@ module AdvancedBilling
|
|
|
78
78
|
expiration_year,
|
|
79
79
|
hash)
|
|
80
80
|
end
|
|
81
|
+
|
|
82
|
+
# Validates an instance of the object from a given value.
|
|
83
|
+
# @param [CreditCardAttributes | Hash] The value against the validation is performed.
|
|
84
|
+
def self.validate(value)
|
|
85
|
+
return true if value.instance_of? self
|
|
86
|
+
|
|
87
|
+
return false unless value.instance_of? Hash
|
|
88
|
+
|
|
89
|
+
true
|
|
90
|
+
end
|
|
81
91
|
end
|
|
82
92
|
end
|
|
@@ -106,5 +106,15 @@ module AdvancedBilling
|
|
|
106
106
|
def to_custom_transaction_time
|
|
107
107
|
DateTimeHelper.to_rfc3339(transaction_time)
|
|
108
108
|
end
|
|
109
|
+
|
|
110
|
+
# Validates an instance of the object from a given value.
|
|
111
|
+
# @param [CreditNoteApplication | Hash] The value against the validation is performed.
|
|
112
|
+
def self.validate(value)
|
|
113
|
+
return true if value.instance_of? self
|
|
114
|
+
|
|
115
|
+
return false unless value.instance_of? Hash
|
|
116
|
+
|
|
117
|
+
true
|
|
118
|
+
end
|
|
109
119
|
end
|
|
110
120
|
end
|
|
@@ -275,5 +275,15 @@ module AdvancedBilling
|
|
|
275
275
|
custom_item,
|
|
276
276
|
hash)
|
|
277
277
|
end
|
|
278
|
+
|
|
279
|
+
# Validates an instance of the object from a given value.
|
|
280
|
+
# @param [CreditNoteLineItem | Hash] The value against the validation is performed.
|
|
281
|
+
def self.validate(value)
|
|
282
|
+
return true if value.instance_of? self
|
|
283
|
+
|
|
284
|
+
return false unless value.instance_of? Hash
|
|
285
|
+
|
|
286
|
+
true
|
|
287
|
+
end
|
|
278
288
|
end
|
|
279
289
|
end
|
|
@@ -27,7 +27,9 @@ module AdvancedBilling
|
|
|
27
27
|
# @return [String]
|
|
28
28
|
attr_accessor :cc_emails
|
|
29
29
|
|
|
30
|
-
# The organization of the customer
|
|
30
|
+
# The organization of the customer. If no value, `null` or empty string is
|
|
31
|
+
# provided, `organization` will be populated with the customer's first and
|
|
32
|
+
# last name, separated with a space.
|
|
31
33
|
# @return [String]
|
|
32
34
|
attr_accessor :organization
|
|
33
35
|
|
|
@@ -402,5 +404,15 @@ module AdvancedBilling
|
|
|
402
404
|
def to_custom_portal_invite_last_accepted_at
|
|
403
405
|
DateTimeHelper.to_rfc3339(portal_invite_last_accepted_at)
|
|
404
406
|
end
|
|
407
|
+
|
|
408
|
+
# Validates an instance of the object from a given value.
|
|
409
|
+
# @param [Customer | Hash] The value against the validation is performed.
|
|
410
|
+
def self.validate(value)
|
|
411
|
+
return true if value.instance_of? self
|
|
412
|
+
|
|
413
|
+
return false unless value.instance_of? Hash
|
|
414
|
+
|
|
415
|
+
true
|
|
416
|
+
end
|
|
405
417
|
end
|
|
406
418
|
end
|
|
@@ -249,5 +249,15 @@ module AdvancedBilling
|
|
|
249
249
|
parent_id,
|
|
250
250
|
hash)
|
|
251
251
|
end
|
|
252
|
+
|
|
253
|
+
# Validates an instance of the object from a given value.
|
|
254
|
+
# @param [CustomerAttributes | Hash] The value against the validation is performed.
|
|
255
|
+
def self.validate(value)
|
|
256
|
+
return true if value.instance_of? self
|
|
257
|
+
|
|
258
|
+
return false unless value.instance_of? Hash
|
|
259
|
+
|
|
260
|
+
true
|
|
261
|
+
end
|
|
252
262
|
end
|
|
253
263
|
end
|
|
@@ -76,18 +76,13 @@ module AdvancedBilling
|
|
|
76
76
|
return nil unless hash
|
|
77
77
|
|
|
78
78
|
# Extract variables from the hash.
|
|
79
|
-
payer =
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
)
|
|
85
|
-
|
|
86
|
-
UnionTypeLookUp.get(:CustomerChangeBillingAddress), hash['billing_address']
|
|
87
|
-
) : SKIP
|
|
88
|
-
custom_fields = hash.key?('custom_fields') ? APIHelper.deserialize_union_type(
|
|
89
|
-
UnionTypeLookUp.get(:CustomerChangeCustomFields), hash['custom_fields']
|
|
90
|
-
) : SKIP
|
|
79
|
+
payer = CustomerPayerChange.from_hash(hash['payer']) if hash['payer']
|
|
80
|
+
shipping_address = AddressChange.from_hash(hash['shipping_address']) if
|
|
81
|
+
hash['shipping_address']
|
|
82
|
+
billing_address = AddressChange.from_hash(hash['billing_address']) if
|
|
83
|
+
hash['billing_address']
|
|
84
|
+
custom_fields = CustomerCustomFieldsChange.from_hash(hash['custom_fields']) if
|
|
85
|
+
hash['custom_fields']
|
|
91
86
|
|
|
92
87
|
# Clean out expected properties from Hash.
|
|
93
88
|
names.each_value { |k| hash.delete(k) }
|
|
@@ -99,15 +94,5 @@ module AdvancedBilling
|
|
|
99
94
|
custom_fields,
|
|
100
95
|
hash)
|
|
101
96
|
end
|
|
102
|
-
|
|
103
|
-
# Validates an instance of the object from a given value.
|
|
104
|
-
# @param [CustomerChange | Hash] The value against the validation is performed.
|
|
105
|
-
def self.validate(value)
|
|
106
|
-
return true if value.instance_of? self
|
|
107
|
-
|
|
108
|
-
return false unless value.instance_of? Hash
|
|
109
|
-
|
|
110
|
-
true
|
|
111
|
-
end
|
|
112
97
|
end
|
|
113
98
|
end
|
|
@@ -81,27 +81,5 @@ module AdvancedBilling
|
|
|
81
81
|
after,
|
|
82
82
|
hash)
|
|
83
83
|
end
|
|
84
|
-
|
|
85
|
-
# Validates an instance of the object from a given value.
|
|
86
|
-
# @param [CustomerCustomFieldsChange | Hash] The value against the validation is performed.
|
|
87
|
-
def self.validate(value)
|
|
88
|
-
if value.instance_of? self
|
|
89
|
-
return (
|
|
90
|
-
APIHelper.valid_type?(value.before,
|
|
91
|
-
->(val) { InvoiceCustomField.validate(val) }) and
|
|
92
|
-
APIHelper.valid_type?(value.after,
|
|
93
|
-
->(val) { InvoiceCustomField.validate(val) })
|
|
94
|
-
)
|
|
95
|
-
end
|
|
96
|
-
|
|
97
|
-
return false unless value.instance_of? Hash
|
|
98
|
-
|
|
99
|
-
(
|
|
100
|
-
APIHelper.valid_type?(value['before'],
|
|
101
|
-
->(val) { InvoiceCustomField.validate(val) }) and
|
|
102
|
-
APIHelper.valid_type?(value['after'],
|
|
103
|
-
->(val) { InvoiceCustomField.validate(val) })
|
|
104
|
-
)
|
|
105
|
-
end
|
|
106
84
|
end
|
|
107
85
|
end
|
|
@@ -63,27 +63,5 @@ module AdvancedBilling
|
|
|
63
63
|
after,
|
|
64
64
|
hash)
|
|
65
65
|
end
|
|
66
|
-
|
|
67
|
-
# Validates an instance of the object from a given value.
|
|
68
|
-
# @param [CustomerPayerChange | Hash] The value against the validation is performed.
|
|
69
|
-
def self.validate(value)
|
|
70
|
-
if value.instance_of? self
|
|
71
|
-
return (
|
|
72
|
-
APIHelper.valid_type?(value.before,
|
|
73
|
-
->(val) { InvoicePayerChange.validate(val) }) and
|
|
74
|
-
APIHelper.valid_type?(value.after,
|
|
75
|
-
->(val) { InvoicePayerChange.validate(val) })
|
|
76
|
-
)
|
|
77
|
-
end
|
|
78
|
-
|
|
79
|
-
return false unless value.instance_of? Hash
|
|
80
|
-
|
|
81
|
-
(
|
|
82
|
-
APIHelper.valid_type?(value['before'],
|
|
83
|
-
->(val) { InvoicePayerChange.validate(val) }) and
|
|
84
|
-
APIHelper.valid_type?(value['after'],
|
|
85
|
-
->(val) { InvoicePayerChange.validate(val) })
|
|
86
|
-
)
|
|
87
|
-
end
|
|
88
66
|
end
|
|
89
67
|
end
|