maxio-advanced-billing-sdk 4.0.0 → 5.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +45 -45
- data/lib/advanced_billing/configuration.rb +2 -2
- data/lib/advanced_billing/controllers/advance_invoice_controller.rb +24 -24
- data/lib/advanced_billing/controllers/api_exports_controller.rb +57 -57
- data/lib/advanced_billing/controllers/base_controller.rb +10 -10
- data/lib/advanced_billing/controllers/billing_portal_controller.rb +33 -32
- data/lib/advanced_billing/controllers/component_price_points_controller.rb +60 -60
- data/lib/advanced_billing/controllers/components_controller.rb +110 -107
- data/lib/advanced_billing/controllers/coupons_controller.rb +89 -89
- data/lib/advanced_billing/controllers/custom_fields_controller.rb +76 -76
- data/lib/advanced_billing/controllers/customers_controller.rb +45 -41
- data/lib/advanced_billing/controllers/events_based_billing_segments_controller.rb +53 -53
- data/lib/advanced_billing/controllers/events_controller.rb +16 -15
- data/lib/advanced_billing/controllers/insights_controller.rb +17 -17
- data/lib/advanced_billing/controllers/invoices_controller.rb +99 -99
- data/lib/advanced_billing/controllers/offers_controller.rb +18 -15
- data/lib/advanced_billing/controllers/payment_profiles_controller.rb +107 -104
- data/lib/advanced_billing/controllers/product_families_controller.rb +26 -26
- data/lib/advanced_billing/controllers/product_price_points_controller.rb +62 -62
- data/lib/advanced_billing/controllers/products_controller.rb +37 -37
- data/lib/advanced_billing/controllers/proforma_invoices_controller.rb +61 -61
- data/lib/advanced_billing/controllers/reason_codes_controller.rb +35 -35
- data/lib/advanced_billing/controllers/referral_codes_controller.rb +9 -8
- data/lib/advanced_billing/controllers/sales_commissions_controller.rb +13 -13
- data/lib/advanced_billing/controllers/sites_controller.rb +11 -10
- data/lib/advanced_billing/controllers/subscription_components_controller.rb +170 -161
- data/lib/advanced_billing/controllers/subscription_group_invoice_account_controller.rb +23 -23
- data/lib/advanced_billing/controllers/subscription_group_status_controller.rb +21 -21
- data/lib/advanced_billing/controllers/subscription_groups_controller.rb +54 -54
- data/lib/advanced_billing/controllers/subscription_invoice_account_controller.rb +37 -37
- data/lib/advanced_billing/controllers/subscription_notes_controller.rb +20 -16
- data/lib/advanced_billing/controllers/subscription_products_controller.rb +20 -18
- data/lib/advanced_billing/controllers/subscription_status_controller.rb +74 -74
- data/lib/advanced_billing/controllers/subscriptions_controller.rb +163 -160
- data/lib/advanced_billing/controllers/webhooks_controller.rb +45 -44
- data/lib/advanced_billing/exceptions/component_allocation_error_exception.rb +15 -15
- data/lib/advanced_billing/exceptions/component_price_point_error_exception.rb +15 -15
- data/lib/advanced_billing/exceptions/customer_error_response_exception.rb +15 -15
- data/lib/advanced_billing/exceptions/error_array_map_response_exception.rb +15 -15
- data/lib/advanced_billing/exceptions/error_list_response_exception.rb +15 -15
- data/lib/advanced_billing/exceptions/error_string_map_response_exception.rb +15 -15
- data/lib/advanced_billing/exceptions/event_based_billing_list_segments_errors_exception.rb +15 -15
- data/lib/advanced_billing/exceptions/event_based_billing_segment_errors_exception.rb +15 -15
- data/lib/advanced_billing/exceptions/event_based_billing_segment_exception.rb +15 -15
- data/lib/advanced_billing/exceptions/product_price_point_error_response_exception.rb +15 -15
- data/lib/advanced_billing/exceptions/proforma_bad_request_error_response_exception.rb +15 -15
- data/lib/advanced_billing/exceptions/refund_prepayment_base_errors_response_exception.rb +15 -15
- data/lib/advanced_billing/exceptions/single_error_response_exception.rb +15 -15
- data/lib/advanced_billing/exceptions/single_string_error_response_exception.rb +15 -15
- data/lib/advanced_billing/exceptions/subscription_add_coupon_error_exception.rb +15 -15
- data/lib/advanced_billing/exceptions/subscription_component_allocation_error_exception.rb +15 -15
- data/lib/advanced_billing/exceptions/subscription_group_create_error_response_exception.rb +15 -15
- data/lib/advanced_billing/exceptions/subscription_group_signup_error_response_exception.rb +15 -15
- data/lib/advanced_billing/exceptions/subscription_group_update_error_response_exception.rb +15 -15
- data/lib/advanced_billing/exceptions/subscription_remove_coupon_errors_exception.rb +15 -15
- data/lib/advanced_billing/exceptions/subscriptions_mrr_error_response_exception.rb +15 -15
- data/lib/advanced_billing/exceptions/too_many_management_link_requests_error_exception.rb +15 -15
- data/lib/advanced_billing/models/activate_event_based_component.rb +84 -0
- data/lib/advanced_billing/models/{current_vault.rb → all_vaults.rb} +28 -7
- data/lib/advanced_billing/models/allocation.rb +1 -0
- data/lib/advanced_billing/models/allocation_preview_item.rb +1 -0
- data/lib/advanced_billing/models/apple_pay_payment_profile.rb +232 -0
- data/lib/advanced_billing/models/apple_pay_vault.rb +20 -0
- data/lib/advanced_billing/models/bank_account_attributes.rb +2 -0
- data/lib/advanced_billing/models/bank_account_payment_profile.rb +25 -20
- data/lib/advanced_billing/models/bank_account_vault.rb +19 -9
- data/lib/advanced_billing/models/change_invoice_status_event_data.rb +6 -6
- data/lib/advanced_billing/models/component.rb +1 -0
- data/lib/advanced_billing/models/component_custom_price.rb +33 -14
- data/lib/advanced_billing/models/component_price_point_item.rb +3 -1
- data/lib/advanced_billing/models/create_component_price_point.rb +3 -1
- data/lib/advanced_billing/models/create_customer.rb +11 -1
- data/lib/advanced_billing/models/create_metafield.rb +2 -1
- data/lib/advanced_billing/models/create_or_update_product.rb +7 -4
- data/lib/advanced_billing/models/create_payment_profile.rb +1 -1
- data/lib/advanced_billing/models/create_prepaid_usage_component_price_point.rb +6 -5
- data/lib/advanced_billing/models/create_product_price_point.rb +5 -3
- data/lib/advanced_billing/models/create_subscription.rb +27 -25
- data/lib/advanced_billing/models/credit_card_payment_profile.rb +17 -16
- data/lib/advanced_billing/models/credit_card_vault.rb +117 -0
- data/lib/advanced_billing/models/credit_note.rb +2 -2
- data/lib/advanced_billing/models/customer.rb +11 -1
- data/lib/advanced_billing/models/customer_attributes.rb +12 -1
- data/lib/advanced_billing/models/ebb_component.rb +1 -0
- data/lib/advanced_billing/models/{extended_interval_unit.rb → expiration_interval_unit.rb} +4 -4
- data/lib/advanced_billing/models/full_subscription_group_response.rb +65 -50
- data/lib/advanced_billing/models/get_one_time_token_payment_profile.rb +1 -1
- data/lib/advanced_billing/models/invoice.rb +19 -9
- data/lib/advanced_billing/models/invoice_consolidation_level.rb +2 -2
- data/lib/advanced_billing/models/invoice_refund.rb +13 -1
- data/lib/advanced_billing/models/invoice_status.rb +2 -2
- data/lib/advanced_billing/models/invoice_tax.rb +29 -0
- data/lib/advanced_billing/models/invoice_tax_component_breakout.rb +101 -1
- data/lib/advanced_billing/models/issue_invoice_event_data.rb +6 -6
- data/lib/advanced_billing/models/metered_component.rb +4 -3
- data/lib/advanced_billing/models/offer_item.rb +3 -1
- data/lib/advanced_billing/models/on_off_component.rb +3 -2
- data/lib/advanced_billing/models/paid_invoice.rb +2 -2
- data/lib/advanced_billing/models/pay_pal_vault.rb +29 -0
- data/lib/advanced_billing/models/payment_profile_attributes.rb +5 -5
- data/lib/advanced_billing/models/payment_profile_response.rb +3 -3
- data/lib/advanced_billing/models/payment_type.rb +4 -1
- data/lib/advanced_billing/models/paypal_payment_profile.rb +242 -0
- data/lib/advanced_billing/models/prepaid_usage_component.rb +5 -4
- data/lib/advanced_billing/models/product.rb +2 -2
- data/lib/advanced_billing/models/product_price_point.rb +2 -2
- data/lib/advanced_billing/models/proforma_invoice.rb +6 -6
- data/lib/advanced_billing/models/quantity_based_component.rb +4 -3
- data/lib/advanced_billing/models/refund_invoice_event_data.rb +4 -4
- data/lib/advanced_billing/models/resent_invitation.rb +36 -0
- data/lib/advanced_billing/models/subscription.rb +13 -10
- data/lib/advanced_billing/models/subscription_component.rb +1 -0
- data/lib/advanced_billing/models/subscription_component_subscription.rb +26 -20
- data/lib/advanced_billing/models/subscription_custom_price.rb +5 -2
- data/lib/advanced_billing/models/subscription_group_bank_account.rb +2 -0
- data/lib/advanced_billing/models/subscription_group_credit_card.rb +1 -1
- data/lib/advanced_billing/models/subscription_group_signup_response.rb +39 -30
- data/lib/advanced_billing/models/subscription_state.rb +30 -30
- data/lib/advanced_billing/models/tax_configuration.rb +1 -2
- data/lib/advanced_billing/models/update_component_price_point.rb +3 -1
- data/lib/advanced_billing/models/update_customer.rb +12 -1
- data/lib/advanced_billing/models/update_payment_profile.rb +1 -1
- data/lib/advanced_billing/utilities/file_wrapper.rb +9 -9
- data/lib/advanced_billing/utilities/union_type_lookup.rb +17 -3
- data/lib/advanced_billing.rb +10 -4
- metadata +16 -10
@@ -9,10 +9,11 @@ module AdvancedBilling
|
|
9
9
|
# Use this endpoint to create a payment profile for a customer.
|
10
10
|
# Payment Profiles house the credit card, ACH (Authorize.Net or Stripe
|
11
11
|
# only,) or PayPal (Braintree only,) data for a customer. The payment
|
12
|
-
# information is attached to the customer within
|
13
|
-
# Subscription itself.
|
14
|
-
# You must include a customer_id so that
|
15
|
-
# customer entry. If no customer_id is included the API will return a
|
12
|
+
# information is attached to the customer within Advanced Billing, as
|
13
|
+
# opposed to the Subscription itself.
|
14
|
+
# You must include a customer_id so that Advanced Billing will attach it to
|
15
|
+
# the customer entry. If no customer_id is included the API will return a
|
16
|
+
# 404.
|
16
17
|
# ## Create a Payment Profile for ACH usage
|
17
18
|
# If you would like to create a payment method that is a Bank Account
|
18
19
|
# applicable for ACH payments use the following:
|
@@ -37,17 +38,17 @@ module AdvancedBilling
|
|
37
38
|
# [here](https://developers.chargify.com/docs/developer-docs/d2e9e34db740e-s
|
38
39
|
# ignups#taxes)
|
39
40
|
# ## Payment Profile Documentation
|
40
|
-
# Full documentation on how Payment Profiles operate within
|
41
|
-
# located under the following links:
|
41
|
+
# Full documentation on how Payment Profiles operate within Advanced Billing
|
42
|
+
# can be located under the following links:
|
42
43
|
# + [Subscriber Payment
|
43
|
-
# Details](https://maxio
|
44
|
-
#
|
44
|
+
# Details](https://maxio.zendesk.com/hc/en-us/articles/24251599929613-Subscr
|
45
|
+
# iption-Summary-Payment-Details-Tab)
|
45
46
|
# + [Self Service
|
46
|
-
# Pages](https://maxio
|
47
|
-
# (Allows credit card updates by Subscriber)
|
47
|
+
# Pages](https://maxio.zendesk.com/hc/en-us/articles/24261425318541-Self-Ser
|
48
|
+
# vice-Pages) (Allows credit card updates by Subscriber)
|
48
49
|
# + [Public Signup Pages payment
|
49
|
-
# settings](https://maxio
|
50
|
-
#
|
50
|
+
# settings](https://maxio.zendesk.com/hc/en-us/articles/24261368332557-Indiv
|
51
|
+
# idual-Page-Settings)
|
51
52
|
# ## Create a Payment Profile with a Chargify.js token
|
52
53
|
# ```json
|
53
54
|
# {
|
@@ -86,8 +87,8 @@ module AdvancedBilling
|
|
86
87
|
# ## GoCardless
|
87
88
|
# For more information on GoCardless, please view the following resources:
|
88
89
|
# + [Full documentation on
|
89
|
-
# GoCardless](https://maxio
|
90
|
-
#
|
90
|
+
# GoCardless](https://maxio.zendesk.com/hc/en-us/articles/24176159136909-GoC
|
91
|
+
# ardless)
|
91
92
|
# + [Using Chargify.js with GoCardless - minimal
|
92
93
|
# example](https://developers.chargify.com/docs/developer-docs/ZG9jOjE0NjAzN
|
93
94
|
# DIy-examples#minimal-example-with-direct-debit-gocardless-gateway)
|
@@ -134,8 +135,8 @@ module AdvancedBilling
|
|
134
135
|
# If the customer, bank account, and mandate already exist in GoCardless, a
|
135
136
|
# payment profile can be created by using the IDs. In order to create masked
|
136
137
|
# versions of `bank_account_number` and `bank_routing_number` that are used
|
137
|
-
# to display within
|
138
|
-
# this fields which then will be saved in this form
|
138
|
+
# to display within Advanced Billing Admin UI, you can pass the last four
|
139
|
+
# digits for this fields which then will be saved in this form
|
139
140
|
# `XXXX[four-provided-digits]`.
|
140
141
|
# ```json
|
141
142
|
# {
|
@@ -161,8 +162,8 @@ module AdvancedBilling
|
|
161
162
|
# For more information on Stripe SEPA Direct Debit, please view the
|
162
163
|
# following resources:
|
163
164
|
# + [Full documentation on Stripe SEPA Direct
|
164
|
-
# Debit](https://maxio
|
165
|
-
#
|
165
|
+
# Debit](https://maxio.zendesk.com/hc/en-us/articles/24176170430093-Stripe-S
|
166
|
+
# EPA-and-BECS-Direct-Debit)
|
166
167
|
# + [Using Chargify.js with Stripe Direct Debit - minimal
|
167
168
|
# example](https://developers.chargify.com/docs/developer-docs/ZG9jOjE0NjAzN
|
168
169
|
# DIy-examples#minimal-example-with-sepa-or-becs-direct-debit-stripe-gateway
|
@@ -192,8 +193,8 @@ module AdvancedBilling
|
|
192
193
|
# For more information on Stripe BECS Direct Debit, please view the
|
193
194
|
# following resources:
|
194
195
|
# + [Full documentation on Stripe BECS Direct
|
195
|
-
# Debit](https://maxio
|
196
|
-
#
|
196
|
+
# Debit](https://maxio.zendesk.com/hc/en-us/articles/24176170430093-Stripe-S
|
197
|
+
# EPA-and-BECS-Direct-Debit)
|
197
198
|
# + [Using Chargify.js with Stripe BECS Direct Debit - minimal
|
198
199
|
# example](https://developers.chargify.com/docs/developer-docs/ZG9jOjE0NjAzN
|
199
200
|
# DIy-examples#minimal-example-with-sepa-or-becs-direct-debit-stripe-gateway
|
@@ -225,8 +226,8 @@ module AdvancedBilling
|
|
225
226
|
# For more information on Stripe BACS Direct Debit, please view the
|
226
227
|
# following resources:
|
227
228
|
# + [Full documentation on Stripe BACS Direct
|
228
|
-
# Debit](https://maxio
|
229
|
-
#
|
229
|
+
# Debit](https://maxio.zendesk.com/hc/en-us/articles/24176170430093-Stripe-S
|
230
|
+
# EPA-and-BECS-Direct-Debit)
|
230
231
|
# ### Stripe BACS Direct Debit Payment Profiles
|
231
232
|
# The following example creates a customer, bank account and mandate in
|
232
233
|
# Stripe:
|
@@ -250,9 +251,10 @@ module AdvancedBilling
|
|
250
251
|
# It may happen that a payment needs 3D Secure Authentication when the
|
251
252
|
# payment profile is created; this is referred to in our help docs as a
|
252
253
|
# [post-authentication
|
253
|
-
# flow](https://maxio
|
254
|
-
#
|
255
|
-
# `422 Unprocessable Entity` in this case with the
|
254
|
+
# flow](https://maxio.zendesk.com/hc/en-us/articles/24176278996493-Testing-I
|
255
|
+
# mplementing-3D-Secure#psd2-flows-pre-authentication-and-post-authenticatio
|
256
|
+
# n). The server returns `422 Unprocessable Entity` in this case with the
|
257
|
+
# following response:
|
256
258
|
# ```json
|
257
259
|
# {
|
258
260
|
# "jsonapi": {
|
@@ -322,7 +324,7 @@ module AdvancedBilling
|
|
322
324
|
# following the IBAN or the Local Bank details examples, a customer, bank
|
323
325
|
# account and mandate will be created in your current vault. If the
|
324
326
|
# customer, bank account, and mandate already exist in your vault, follow
|
325
|
-
# the Import example to link the payment profile into
|
327
|
+
# the Import example to link the payment profile into Advanced Billing.
|
326
328
|
# @return [PaymentProfileResponse] response from the API call
|
327
329
|
def create_payment_profile(body: nil)
|
328
330
|
new_api_call_builder
|
@@ -335,15 +337,15 @@ module AdvancedBilling
|
|
335
337
|
.body_serializer(proc do |param| param.to_json unless param.nil? end)
|
336
338
|
.auth(Single.new('BasicAuth')))
|
337
339
|
.response(new_response_handler
|
338
|
-
|
339
|
-
|
340
|
-
|
341
|
-
|
342
|
-
|
343
|
-
|
344
|
-
|
345
|
-
|
346
|
-
|
340
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
341
|
+
.deserialize_into(PaymentProfileResponse.method(:from_hash))
|
342
|
+
.local_error_template('404',
|
343
|
+
'Not Found:\'{$response.body}\'',
|
344
|
+
APIException)
|
345
|
+
.local_error_template('422',
|
346
|
+
'HTTP Response Not OK. Status code: {$statusCode}.'\
|
347
|
+
' Response: \'{$response.body}\'.',
|
348
|
+
ErrorListResponseException))
|
347
349
|
.execute
|
348
350
|
end
|
349
351
|
|
@@ -375,9 +377,9 @@ module AdvancedBilling
|
|
375
377
|
.header_param(new_parameter('application/json', key: 'accept'))
|
376
378
|
.auth(Single.new('BasicAuth')))
|
377
379
|
.response(new_response_handler
|
378
|
-
|
379
|
-
|
380
|
-
|
380
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
381
|
+
.deserialize_into(PaymentProfileResponse.method(:from_hash))
|
382
|
+
.is_response_array(true))
|
381
383
|
.execute
|
382
384
|
end
|
383
385
|
|
@@ -428,11 +430,11 @@ module AdvancedBilling
|
|
428
430
|
.header_param(new_parameter('application/json', key: 'accept'))
|
429
431
|
.auth(Single.new('BasicAuth')))
|
430
432
|
.response(new_response_handler
|
431
|
-
|
432
|
-
|
433
|
-
|
434
|
-
|
435
|
-
|
433
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
434
|
+
.deserialize_into(PaymentProfileResponse.method(:from_hash))
|
435
|
+
.local_error('404',
|
436
|
+
'Not Found',
|
437
|
+
APIException))
|
436
438
|
.execute
|
437
439
|
end
|
438
440
|
|
@@ -464,8 +466,8 @@ module AdvancedBilling
|
|
464
466
|
# Customer’s credit cards without passing in the full credit card number and
|
465
467
|
# CVV.
|
466
468
|
# - If you are using **Authorize.net**, **Cybersource**, **Forte**,
|
467
|
-
# **Braintree Blue** or **Stripe**,
|
468
|
-
# number and CVV when processing an update via the API, and attempt a
|
469
|
+
# **Braintree Blue** or **Stripe**, Advanced Billing will ignore the credit
|
470
|
+
# card number and CVV when processing an update via the API, and attempt a
|
469
471
|
# partial update instead. If you wish to change the card number on a payment
|
470
472
|
# profile, you will need to create a new payment profile for the given
|
471
473
|
# customer.
|
@@ -497,15 +499,15 @@ module AdvancedBilling
|
|
497
499
|
.body_serializer(proc do |param| param.to_json unless param.nil? end)
|
498
500
|
.auth(Single.new('BasicAuth')))
|
499
501
|
.response(new_response_handler
|
500
|
-
|
501
|
-
|
502
|
-
|
503
|
-
|
504
|
-
|
505
|
-
|
506
|
-
|
507
|
-
|
508
|
-
|
502
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
503
|
+
.deserialize_into(PaymentProfileResponse.method(:from_hash))
|
504
|
+
.local_error('404',
|
505
|
+
'Not Found',
|
506
|
+
APIException)
|
507
|
+
.local_error_template('422',
|
508
|
+
'HTTP Response Not OK. Status code: {$statusCode}.'\
|
509
|
+
' Response: \'{$response.body}\'.',
|
510
|
+
ErrorStringMapResponseException))
|
509
511
|
.execute
|
510
512
|
end
|
511
513
|
|
@@ -525,14 +527,14 @@ module AdvancedBilling
|
|
525
527
|
.should_encode(true))
|
526
528
|
.auth(Single.new('BasicAuth')))
|
527
529
|
.response(new_response_handler
|
528
|
-
|
529
|
-
|
530
|
-
|
531
|
-
|
532
|
-
|
533
|
-
|
534
|
-
|
535
|
-
|
530
|
+
.is_response_void(true)
|
531
|
+
.local_error('404',
|
532
|
+
'Not Found',
|
533
|
+
APIException)
|
534
|
+
.local_error_template('422',
|
535
|
+
'HTTP Response Not OK. Status code: {$statusCode}.'\
|
536
|
+
' Response: \'{$response.body}\'.',
|
537
|
+
ErrorListResponseException))
|
536
538
|
.execute
|
537
539
|
end
|
538
540
|
|
@@ -565,7 +567,7 @@ module AdvancedBilling
|
|
565
567
|
.should_encode(true))
|
566
568
|
.auth(Single.new('BasicAuth')))
|
567
569
|
.response(new_response_handler
|
568
|
-
|
570
|
+
.is_response_void(true))
|
569
571
|
.execute
|
570
572
|
end
|
571
573
|
|
@@ -591,15 +593,15 @@ module AdvancedBilling
|
|
591
593
|
.body_serializer(proc do |param| param.to_json unless param.nil? end)
|
592
594
|
.auth(Single.new('BasicAuth')))
|
593
595
|
.response(new_response_handler
|
594
|
-
|
595
|
-
|
596
|
-
|
597
|
-
|
598
|
-
|
599
|
-
|
600
|
-
|
601
|
-
|
602
|
-
|
596
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
597
|
+
.deserialize_into(BankAccountResponse.method(:from_hash))
|
598
|
+
.local_error_template('404',
|
599
|
+
'Not Found:\'{$response.body}\'',
|
600
|
+
APIException)
|
601
|
+
.local_error_template('422',
|
602
|
+
'HTTP Response Not OK. Status code: {$statusCode}.'\
|
603
|
+
' Response: \'{$response.body}\'.',
|
604
|
+
ErrorListResponseException))
|
603
605
|
.execute
|
604
606
|
end
|
605
607
|
|
@@ -625,7 +627,7 @@ module AdvancedBilling
|
|
625
627
|
.should_encode(true))
|
626
628
|
.auth(Single.new('BasicAuth')))
|
627
629
|
.response(new_response_handler
|
628
|
-
|
630
|
+
.is_response_void(true))
|
629
631
|
.execute
|
630
632
|
end
|
631
633
|
|
@@ -653,15 +655,15 @@ module AdvancedBilling
|
|
653
655
|
.header_param(new_parameter('application/json', key: 'accept'))
|
654
656
|
.auth(Single.new('BasicAuth')))
|
655
657
|
.response(new_response_handler
|
656
|
-
|
657
|
-
|
658
|
-
|
659
|
-
|
660
|
-
|
661
|
-
|
662
|
-
|
663
|
-
|
664
|
-
|
658
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
659
|
+
.deserialize_into(PaymentProfileResponse.method(:from_hash))
|
660
|
+
.local_error('404',
|
661
|
+
'Not Found',
|
662
|
+
APIException)
|
663
|
+
.local_error_template('422',
|
664
|
+
'HTTP Response Not OK. Status code: {$statusCode}.'\
|
665
|
+
' Response: \'{$response.body}\'.',
|
666
|
+
ErrorListResponseException))
|
665
667
|
.execute
|
666
668
|
end
|
667
669
|
|
@@ -691,24 +693,25 @@ module AdvancedBilling
|
|
691
693
|
.header_param(new_parameter('application/json', key: 'accept'))
|
692
694
|
.auth(Single.new('BasicAuth')))
|
693
695
|
.response(new_response_handler
|
694
|
-
|
695
|
-
|
696
|
-
|
697
|
-
|
698
|
-
|
699
|
-
|
696
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
697
|
+
.deserialize_into(PaymentProfileResponse.method(:from_hash))
|
698
|
+
.local_error_template('422',
|
699
|
+
'HTTP Response Not OK. Status code: {$statusCode}.'\
|
700
|
+
' Response: \'{$response.body}\'.',
|
701
|
+
ErrorListResponseException))
|
700
702
|
.execute
|
701
703
|
end
|
702
704
|
|
703
|
-
# One Time Tokens aka
|
705
|
+
# One Time Tokens aka Advanced Billing Tokens house the credit card or ACH
|
704
706
|
# (Authorize.Net or Stripe only) data for a customer.
|
705
707
|
# You can use One Time Tokens while creating a subscription or payment
|
706
708
|
# profile instead of passing all bank account or credit card data directly
|
707
709
|
# to a given API endpoint.
|
708
710
|
# To obtain a One Time Token you have to use
|
709
|
-
# [
|
711
|
+
# [Chargify.js](https://developers.chargify.com/docs/developer-docs/ZG9jOjE0
|
710
712
|
# NjAzNDI0-overview).
|
711
|
-
# @param [String] chargify_token Required parameter:
|
713
|
+
# @param [String] chargify_token Required parameter: Advanced Billing
|
714
|
+
# Token
|
712
715
|
# @return [GetOneTimeTokenRequest] response from the API call
|
713
716
|
def read_one_time_token(chargify_token)
|
714
717
|
new_api_call_builder
|
@@ -721,11 +724,11 @@ module AdvancedBilling
|
|
721
724
|
.header_param(new_parameter('application/json', key: 'accept'))
|
722
725
|
.auth(Single.new('BasicAuth')))
|
723
726
|
.response(new_response_handler
|
724
|
-
|
725
|
-
|
726
|
-
|
727
|
-
|
728
|
-
|
727
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
728
|
+
.deserialize_into(GetOneTimeTokenRequest.method(:from_hash))
|
729
|
+
.local_error_template('404',
|
730
|
+
'Not Found:\'{$response.body}\'',
|
731
|
+
ErrorListResponseException))
|
729
732
|
.execute
|
730
733
|
end
|
731
734
|
|
@@ -757,14 +760,14 @@ module AdvancedBilling
|
|
757
760
|
.should_encode(true))
|
758
761
|
.auth(Single.new('BasicAuth')))
|
759
762
|
.response(new_response_handler
|
760
|
-
|
761
|
-
|
762
|
-
|
763
|
-
|
764
|
-
|
765
|
-
|
766
|
-
|
767
|
-
|
763
|
+
.is_response_void(true)
|
764
|
+
.local_error_template('404',
|
765
|
+
'Not Found:\'{$response.body}\'',
|
766
|
+
APIException)
|
767
|
+
.local_error_template('422',
|
768
|
+
'HTTP Response Not OK. Status code: {$statusCode}.'\
|
769
|
+
' Response: \'{$response.body}\'.',
|
770
|
+
ErrorListResponseException))
|
768
771
|
.execute
|
769
772
|
end
|
770
773
|
end
|
@@ -72,22 +72,22 @@ module AdvancedBilling
|
|
72
72
|
.auth(Single.new('BasicAuth'))
|
73
73
|
.array_serialization_format(ArraySerializationFormat::CSV))
|
74
74
|
.response(new_response_handler
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
75
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
76
|
+
.deserialize_into(ProductResponse.method(:from_hash))
|
77
|
+
.is_response_array(true)
|
78
|
+
.local_error('404',
|
79
|
+
'Not Found',
|
80
|
+
APIException))
|
81
81
|
.execute
|
82
82
|
end
|
83
83
|
|
84
|
-
# This method will create a Product Family within your
|
85
|
-
# a Product Family to act as a container for your products,
|
86
|
-
# coupons.
|
87
|
-
# Full documentation on how Product Families operate within the
|
88
|
-
# can be located
|
89
|
-
# [here](https://maxio
|
90
|
-
# .
|
84
|
+
# This method will create a Product Family within your Advanced Billing
|
85
|
+
# site. Create a Product Family to act as a container for your products,
|
86
|
+
# components and coupons.
|
87
|
+
# Full documentation on how Product Families operate within the Advanced
|
88
|
+
# Billing UI can be located
|
89
|
+
# [here](https://maxio.zendesk.com/hc/en-us/articles/24261098936205-Product-
|
90
|
+
# Families).
|
91
91
|
# @param [CreateProductFamilyRequest] body Optional parameter: Example:
|
92
92
|
# @return [ProductFamilyResponse] response from the API call
|
93
93
|
def create_product_family(body: nil)
|
@@ -101,12 +101,12 @@ module AdvancedBilling
|
|
101
101
|
.body_serializer(proc do |param| param.to_json unless param.nil? end)
|
102
102
|
.auth(Single.new('BasicAuth')))
|
103
103
|
.response(new_response_handler
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
104
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
105
|
+
.deserialize_into(ProductFamilyResponse.method(:from_hash))
|
106
|
+
.local_error_template('422',
|
107
|
+
'HTTP Response Not OK. Status code: {$statusCode}.'\
|
108
|
+
' Response: \'{$response.body}\'.',
|
109
|
+
ErrorListResponseException))
|
110
110
|
.execute
|
111
111
|
end
|
112
112
|
|
@@ -146,9 +146,9 @@ module AdvancedBilling
|
|
146
146
|
.header_param(new_parameter('application/json', key: 'accept'))
|
147
147
|
.auth(Single.new('BasicAuth')))
|
148
148
|
.response(new_response_handler
|
149
|
-
|
150
|
-
|
151
|
-
|
149
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
150
|
+
.deserialize_into(ProductFamilyResponse.method(:from_hash))
|
151
|
+
.is_response_array(true))
|
152
152
|
.execute
|
153
153
|
end
|
154
154
|
|
@@ -156,8 +156,8 @@ module AdvancedBilling
|
|
156
156
|
# `product_family_id`. The response will contain a Product Family object.
|
157
157
|
# The product family can be specified either with the id number, or with the
|
158
158
|
# `handle:my-family` format.
|
159
|
-
# @param [Integer] id Required parameter: The
|
160
|
-
# family
|
159
|
+
# @param [Integer] id Required parameter: The Advanced Billing id of the
|
160
|
+
# product family
|
161
161
|
# @return [ProductFamilyResponse] response from the API call
|
162
162
|
def read_product_family(id)
|
163
163
|
new_api_call_builder
|
@@ -170,8 +170,8 @@ module AdvancedBilling
|
|
170
170
|
.header_param(new_parameter('application/json', key: 'accept'))
|
171
171
|
.auth(Single.new('BasicAuth')))
|
172
172
|
.response(new_response_handler
|
173
|
-
|
174
|
-
|
173
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
174
|
+
.deserialize_into(ProductFamilyResponse.method(:from_hash)))
|
175
175
|
.execute
|
176
176
|
end
|
177
177
|
end
|