recurly 2.17.11 → 4.18.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (283) hide show
  1. checksums.yaml +4 -4
  2. data/.bumpversion.cfg +15 -0
  3. data/.changelog_config.yaml +11 -0
  4. data/.github/ISSUE_TEMPLATE/bug-report.md +30 -0
  5. data/.github/ISSUE_TEMPLATE/question-or-other.md +10 -0
  6. data/.github/workflows/ci.yml +29 -0
  7. data/.github/workflows/docs.yml +28 -0
  8. data/.gitignore +15 -0
  9. data/.rspec +2 -0
  10. data/.yardopts +2 -0
  11. data/CHANGELOG.md +295 -0
  12. data/CODE_OF_CONDUCT.md +130 -0
  13. data/CONTRIBUTING.md +106 -0
  14. data/GETTING_STARTED.md +330 -0
  15. data/Gemfile +4 -0
  16. data/LICENSE.txt +21 -0
  17. data/README.md +9 -148
  18. data/Rakefile +6 -0
  19. data/benchmark.rb +16 -0
  20. data/lib/data/ca-certificates.crt +3466 -0
  21. data/lib/recurly/client/operations.rb +4079 -0
  22. data/lib/recurly/client.rb +400 -0
  23. data/lib/recurly/connection_pool.rb +42 -0
  24. data/lib/recurly/errors/api_errors.rb +90 -0
  25. data/lib/recurly/errors/network_errors.rb +7 -0
  26. data/lib/recurly/errors.rb +51 -0
  27. data/lib/recurly/http.rb +50 -0
  28. data/lib/recurly/pager.rb +136 -0
  29. data/lib/recurly/request.rb +31 -0
  30. data/lib/recurly/requests/account_acquisition_cost.rb +18 -0
  31. data/lib/recurly/requests/account_acquisition_update.rb +26 -0
  32. data/lib/recurly/requests/account_create.rb +98 -0
  33. data/lib/recurly/requests/account_purchase.rb +98 -0
  34. data/lib/recurly/requests/account_update.rb +86 -0
  35. data/lib/recurly/requests/add_on_create.rb +102 -0
  36. data/lib/recurly/requests/add_on_pricing.rb +26 -0
  37. data/lib/recurly/requests/add_on_update.rb +78 -0
  38. data/lib/recurly/requests/address.rb +38 -0
  39. data/lib/recurly/requests/billing_info_create.rb +134 -0
  40. data/lib/recurly/requests/billing_info_verify.rb +14 -0
  41. data/lib/recurly/requests/coupon_bulk_create.rb +14 -0
  42. data/lib/recurly/requests/coupon_create.rb +102 -0
  43. data/lib/recurly/requests/coupon_pricing.rb +18 -0
  44. data/lib/recurly/requests/coupon_redemption_create.rb +22 -0
  45. data/lib/recurly/requests/coupon_update.rb +34 -0
  46. data/lib/recurly/requests/custom_field.rb +18 -0
  47. data/lib/recurly/requests/dunning_campaigns_bulk_update.rb +18 -0
  48. data/lib/recurly/requests/external_refund.rb +22 -0
  49. data/lib/recurly/requests/external_transaction.rb +26 -0
  50. data/lib/recurly/requests/invoice_address.rb +54 -0
  51. data/lib/recurly/requests/invoice_collect.rb +22 -0
  52. data/lib/recurly/requests/invoice_create.rb +42 -0
  53. data/lib/recurly/requests/invoice_refund.rb +34 -0
  54. data/lib/recurly/requests/invoice_update.rb +34 -0
  55. data/lib/recurly/requests/item_create.rb +58 -0
  56. data/lib/recurly/requests/item_update.rb +58 -0
  57. data/lib/recurly/requests/line_item_create.rb +86 -0
  58. data/lib/recurly/requests/line_item_refund.rb +22 -0
  59. data/lib/recurly/requests/measured_unit_create.rb +22 -0
  60. data/lib/recurly/requests/measured_unit_update.rb +22 -0
  61. data/lib/recurly/requests/percentage_tier.rb +18 -0
  62. data/lib/recurly/requests/percentage_tiers_by_currency.rb +18 -0
  63. data/lib/recurly/requests/plan_create.rb +102 -0
  64. data/lib/recurly/requests/plan_hosted_pages.rb +26 -0
  65. data/lib/recurly/requests/plan_pricing.rb +26 -0
  66. data/lib/recurly/requests/plan_update.rb +94 -0
  67. data/lib/recurly/requests/pricing.rb +22 -0
  68. data/lib/recurly/requests/purchase_create.rb +78 -0
  69. data/lib/recurly/requests/shipping_address_create.rb +62 -0
  70. data/lib/recurly/requests/shipping_address_update.rb +66 -0
  71. data/lib/recurly/requests/shipping_fee_create.rb +22 -0
  72. data/lib/recurly/requests/shipping_method_create.rb +26 -0
  73. data/lib/recurly/requests/shipping_method_update.rb +26 -0
  74. data/lib/recurly/requests/shipping_purchase.rb +22 -0
  75. data/lib/recurly/requests/subscription_add_on_create.rb +46 -0
  76. data/lib/recurly/requests/subscription_add_on_percentage_tier.rb +18 -0
  77. data/lib/recurly/requests/subscription_add_on_tier.rb +26 -0
  78. data/lib/recurly/requests/subscription_add_on_update.rb +50 -0
  79. data/lib/recurly/requests/subscription_cancel.rb +14 -0
  80. data/lib/recurly/requests/subscription_change_billing_info_create.rb +14 -0
  81. data/lib/recurly/requests/subscription_change_create.rb +74 -0
  82. data/lib/recurly/requests/subscription_change_shipping_create.rb +30 -0
  83. data/lib/recurly/requests/subscription_create.rb +114 -0
  84. data/lib/recurly/requests/subscription_pause.rb +14 -0
  85. data/lib/recurly/requests/subscription_purchase.rb +70 -0
  86. data/lib/recurly/requests/subscription_shipping_create.rb +30 -0
  87. data/lib/recurly/requests/subscription_shipping_purchase.rb +22 -0
  88. data/lib/recurly/requests/subscription_shipping_update.rb +22 -0
  89. data/lib/recurly/requests/subscription_update.rb +70 -0
  90. data/lib/recurly/requests/tier.rb +22 -0
  91. data/lib/recurly/requests/tier_pricing.rb +22 -0
  92. data/lib/recurly/requests/usage_create.rb +26 -0
  93. data/lib/recurly/requests.rb +8 -0
  94. data/lib/recurly/resource.rb +23 -1092
  95. data/lib/recurly/resources/account.rb +138 -0
  96. data/lib/recurly/resources/account_acquisition.rb +46 -0
  97. data/lib/recurly/resources/account_acquisition_cost.rb +18 -0
  98. data/lib/recurly/resources/account_balance.rb +26 -0
  99. data/lib/recurly/resources/account_balance_amount.rb +22 -0
  100. data/lib/recurly/resources/account_mini.rb +50 -0
  101. data/lib/recurly/resources/account_note.rb +34 -0
  102. data/lib/recurly/resources/add_on.rb +122 -0
  103. data/lib/recurly/resources/add_on_mini.rb +54 -0
  104. data/lib/recurly/resources/add_on_pricing.rb +26 -0
  105. data/lib/recurly/resources/address.rb +38 -0
  106. data/lib/recurly/resources/address_with_name.rb +46 -0
  107. data/lib/recurly/resources/billing_info.rb +74 -0
  108. data/lib/recurly/resources/billing_info_updated_by.rb +18 -0
  109. data/lib/recurly/resources/binary_file.rb +14 -0
  110. data/lib/recurly/resources/coupon.rb +126 -0
  111. data/lib/recurly/resources/coupon_discount.rb +26 -0
  112. data/lib/recurly/resources/coupon_discount_pricing.rb +18 -0
  113. data/lib/recurly/resources/coupon_discount_trial.rb +18 -0
  114. data/lib/recurly/resources/coupon_mini.rb +42 -0
  115. data/lib/recurly/resources/coupon_redemption.rb +54 -0
  116. data/lib/recurly/resources/coupon_redemption_mini.rb +34 -0
  117. data/lib/recurly/resources/credit_payment.rb +66 -0
  118. data/lib/recurly/resources/custom_field.rb +18 -0
  119. data/lib/recurly/resources/custom_field_definition.rb +50 -0
  120. data/lib/recurly/resources/dunning_campaign.rb +50 -0
  121. data/lib/recurly/resources/dunning_campaigns_bulk_update_response.rb +18 -0
  122. data/lib/recurly/resources/dunning_cycle.rb +58 -0
  123. data/lib/recurly/resources/dunning_interval.rb +18 -0
  124. data/lib/recurly/resources/error.rb +22 -0
  125. data/lib/recurly/resources/error_may_have_transaction.rb +26 -0
  126. data/lib/recurly/resources/export_dates.rb +18 -0
  127. data/lib/recurly/resources/export_file.rb +22 -0
  128. data/lib/recurly/resources/export_files.rb +18 -0
  129. data/lib/recurly/resources/fraud_info.rb +22 -0
  130. data/lib/recurly/resources/invoice.rb +162 -0
  131. data/lib/recurly/resources/invoice_address.rb +54 -0
  132. data/lib/recurly/resources/invoice_collection.rb +22 -0
  133. data/lib/recurly/resources/invoice_mini.rb +30 -0
  134. data/lib/recurly/resources/invoice_template.rb +34 -0
  135. data/lib/recurly/resources/item.rb +82 -0
  136. data/lib/recurly/resources/item_mini.rb +34 -0
  137. data/lib/recurly/resources/line_item.rb +206 -0
  138. data/lib/recurly/resources/measured_unit.rb +46 -0
  139. data/lib/recurly/resources/payment_method.rb +70 -0
  140. data/lib/recurly/resources/percentage_tier.rb +18 -0
  141. data/lib/recurly/resources/percentage_tiers_by_currency.rb +18 -0
  142. data/lib/recurly/resources/plan.rb +122 -0
  143. data/lib/recurly/resources/plan_hosted_pages.rb +26 -0
  144. data/lib/recurly/resources/plan_mini.rb +26 -0
  145. data/lib/recurly/resources/plan_pricing.rb +26 -0
  146. data/lib/recurly/resources/pricing.rb +22 -0
  147. data/lib/recurly/resources/settings.rb +22 -0
  148. data/lib/recurly/resources/shipping_address.rb +82 -0
  149. data/lib/recurly/resources/shipping_method.rb +46 -0
  150. data/lib/recurly/resources/shipping_method_mini.rb +26 -0
  151. data/lib/recurly/resources/site.rb +54 -0
  152. data/lib/recurly/resources/subscription.rb +198 -0
  153. data/lib/recurly/resources/subscription_add_on.rb +78 -0
  154. data/lib/recurly/resources/subscription_add_on_percentage_tier.rb +18 -0
  155. data/lib/recurly/resources/subscription_add_on_tier.rb +26 -0
  156. data/lib/recurly/resources/subscription_change.rb +82 -0
  157. data/lib/recurly/resources/subscription_change_billing_info.rb +14 -0
  158. data/lib/recurly/resources/subscription_shipping.rb +26 -0
  159. data/lib/recurly/resources/tax_detail.rb +26 -0
  160. data/lib/recurly/resources/tax_info.rb +26 -0
  161. data/lib/recurly/resources/tier.rb +22 -0
  162. data/lib/recurly/resources/tier_pricing.rb +22 -0
  163. data/lib/recurly/resources/transaction.rb +162 -0
  164. data/lib/recurly/resources/transaction_error.rb +38 -0
  165. data/lib/recurly/resources/transaction_payment_gateway.rb +26 -0
  166. data/lib/recurly/resources/unique_coupon_code.rb +50 -0
  167. data/lib/recurly/resources/unique_coupon_code_params.rb +26 -0
  168. data/lib/recurly/resources/usage.rb +78 -0
  169. data/lib/recurly/resources/user.rb +42 -0
  170. data/lib/recurly/resources.rb +18 -0
  171. data/lib/recurly/schema/file_parser.rb +13 -0
  172. data/lib/recurly/schema/json_parser.rb +72 -0
  173. data/lib/recurly/schema/request_caster.rb +60 -0
  174. data/lib/recurly/schema/resource_caster.rb +46 -0
  175. data/lib/recurly/schema/schema_factory.rb +48 -0
  176. data/lib/recurly/schema/schema_validator.rb +144 -0
  177. data/lib/recurly/schema.rb +156 -0
  178. data/lib/recurly/version.rb +1 -15
  179. data/lib/recurly.rb +15 -141
  180. data/openapi/api.yaml +22879 -0
  181. data/recurly.gemspec +39 -0
  182. data/scripts/build +5 -0
  183. data/scripts/clean +6 -0
  184. data/scripts/format +12 -0
  185. data/scripts/prepare-release +50 -0
  186. data/scripts/release +17 -0
  187. data/scripts/test +15 -0
  188. metadata +217 -220
  189. data/lib/recurly/account.rb +0 -189
  190. data/lib/recurly/account_acquisition.rb +0 -19
  191. data/lib/recurly/account_balance.rb +0 -21
  192. data/lib/recurly/add_on.rb +0 -30
  193. data/lib/recurly/address.rb +0 -25
  194. data/lib/recurly/adjustment.rb +0 -76
  195. data/lib/recurly/api/errors.rb +0 -208
  196. data/lib/recurly/api/net_http_adapter.rb +0 -111
  197. data/lib/recurly/api.rb +0 -101
  198. data/lib/recurly/billing_info.rb +0 -82
  199. data/lib/recurly/coupon.rb +0 -134
  200. data/lib/recurly/credit_payment.rb +0 -32
  201. data/lib/recurly/custom_field.rb +0 -15
  202. data/lib/recurly/delivery.rb +0 -19
  203. data/lib/recurly/error.rb +0 -13
  204. data/lib/recurly/gift_card.rb +0 -82
  205. data/lib/recurly/helper.rb +0 -51
  206. data/lib/recurly/invoice.rb +0 -273
  207. data/lib/recurly/invoice_collection.rb +0 -14
  208. data/lib/recurly/js.rb +0 -14
  209. data/lib/recurly/juris_detail.rb +0 -14
  210. data/lib/recurly/measured_unit.rb +0 -16
  211. data/lib/recurly/money.rb +0 -120
  212. data/lib/recurly/note.rb +0 -14
  213. data/lib/recurly/plan.rb +0 -40
  214. data/lib/recurly/purchase.rb +0 -234
  215. data/lib/recurly/redemption.rb +0 -46
  216. data/lib/recurly/resource/association.rb +0 -16
  217. data/lib/recurly/resource/errors.rb +0 -20
  218. data/lib/recurly/resource/pager.rb +0 -313
  219. data/lib/recurly/shipping_address.rb +0 -26
  220. data/lib/recurly/shipping_fee.rb +0 -17
  221. data/lib/recurly/shipping_method.rb +0 -13
  222. data/lib/recurly/subscription/add_ons.rb +0 -77
  223. data/lib/recurly/subscription.rb +0 -330
  224. data/lib/recurly/subscription_add_on.rb +0 -50
  225. data/lib/recurly/tax_detail.rb +0 -14
  226. data/lib/recurly/tax_type.rb +0 -12
  227. data/lib/recurly/transaction/errors.rb +0 -115
  228. data/lib/recurly/transaction.rb +0 -129
  229. data/lib/recurly/usage.rb +0 -28
  230. data/lib/recurly/webhook/account_notification.rb +0 -10
  231. data/lib/recurly/webhook/billing_info_updated_notification.rb +0 -6
  232. data/lib/recurly/webhook/canceled_account_notification.rb +0 -6
  233. data/lib/recurly/webhook/canceled_subscription_notification.rb +0 -6
  234. data/lib/recurly/webhook/closed_credit_invoice_notification.rb +0 -6
  235. data/lib/recurly/webhook/closed_invoice_notification.rb +0 -6
  236. data/lib/recurly/webhook/credit_payment_notification.rb +0 -12
  237. data/lib/recurly/webhook/dunning_notification.rb +0 -14
  238. data/lib/recurly/webhook/expired_subscription_notification.rb +0 -6
  239. data/lib/recurly/webhook/failed_charge_invoice_notification.rb +0 -6
  240. data/lib/recurly/webhook/failed_payment_notification.rb +0 -6
  241. data/lib/recurly/webhook/gift_card_notification.rb +0 -8
  242. data/lib/recurly/webhook/invoice_notification.rb +0 -12
  243. data/lib/recurly/webhook/low_balance_gift_card_notification.rb +0 -6
  244. data/lib/recurly/webhook/new_account_notification.rb +0 -6
  245. data/lib/recurly/webhook/new_charge_invoice_notification.rb +0 -6
  246. data/lib/recurly/webhook/new_credit_invoice_notification.rb +0 -6
  247. data/lib/recurly/webhook/new_credit_payment_notification.rb +0 -6
  248. data/lib/recurly/webhook/new_dunning_event_notification.rb +0 -6
  249. data/lib/recurly/webhook/new_invoice_notification.rb +0 -6
  250. data/lib/recurly/webhook/new_subscription_notification.rb +0 -6
  251. data/lib/recurly/webhook/new_usage_notification.rb +0 -8
  252. data/lib/recurly/webhook/notification.rb +0 -18
  253. data/lib/recurly/webhook/paid_charge_invoice_notification.rb +0 -6
  254. data/lib/recurly/webhook/past_due_charge_invoice_notification.rb +0 -6
  255. data/lib/recurly/webhook/past_due_invoice_notification.rb +0 -6
  256. data/lib/recurly/webhook/processing_charge_invoice_notification.rb +0 -6
  257. data/lib/recurly/webhook/processing_credit_invoice_notification.rb +0 -6
  258. data/lib/recurly/webhook/processing_invoice_notification.rb +0 -6
  259. data/lib/recurly/webhook/processing_payment_notification.rb +0 -6
  260. data/lib/recurly/webhook/purchased_gift_card_notification.rb +0 -7
  261. data/lib/recurly/webhook/reactivated_account_notification.rb +0 -6
  262. data/lib/recurly/webhook/redeemed_gift_card_notification.rb +0 -7
  263. data/lib/recurly/webhook/renewed_subscription_notification.rb +0 -6
  264. data/lib/recurly/webhook/reopened_charge_invoice_notification.rb +0 -6
  265. data/lib/recurly/webhook/reopened_credit_invoice_notification.rb +0 -6
  266. data/lib/recurly/webhook/scheduled_payment_notification.rb +0 -6
  267. data/lib/recurly/webhook/subscription_notification.rb +0 -12
  268. data/lib/recurly/webhook/successful_payment_notification.rb +0 -6
  269. data/lib/recurly/webhook/successful_refund_notification.rb +0 -6
  270. data/lib/recurly/webhook/transaction_authorized_notification.rb +0 -6
  271. data/lib/recurly/webhook/transaction_notification.rb +0 -12
  272. data/lib/recurly/webhook/transaction_status_updated_notification.rb +0 -6
  273. data/lib/recurly/webhook/updated_account_notification.rb +0 -6
  274. data/lib/recurly/webhook/updated_balance_gift_card_notification.rb +0 -7
  275. data/lib/recurly/webhook/updated_invoice_notification.rb +0 -6
  276. data/lib/recurly/webhook/updated_subscription_notification.rb +0 -6
  277. data/lib/recurly/webhook/void_payment_notification.rb +0 -6
  278. data/lib/recurly/webhook/voided_credit_invoice_notification.rb +0 -6
  279. data/lib/recurly/webhook/voided_credit_payment_notification.rb +0 -6
  280. data/lib/recurly/webhook.rb +0 -91
  281. data/lib/recurly/xml/nokogiri.rb +0 -60
  282. data/lib/recurly/xml/rexml.rb +0 -52
  283. data/lib/recurly/xml.rb +0 -122
@@ -0,0 +1,138 @@
1
+ # This file is automatically created by Recurly's OpenAPI generation process
2
+ # and thus any edits you make by hand will be lost. If you wish to make a
3
+ # change to this file, please create a Github issue explaining the changes you
4
+ # need and we will usher them to the appropriate places.
5
+ module Recurly
6
+ module Resources
7
+ class Account < Resource
8
+
9
+ # @!attribute address
10
+ # @return [Address]
11
+ define_attribute :address, :Address
12
+
13
+ # @!attribute bill_to
14
+ # @return [String] An enumerable describing the billing behavior of the account, specifically whether the account is self-paying or will rely on the parent account to pay.
15
+ define_attribute :bill_to, String
16
+
17
+ # @!attribute billing_info
18
+ # @return [BillingInfo]
19
+ define_attribute :billing_info, :BillingInfo
20
+
21
+ # @!attribute cc_emails
22
+ # @return [String] Additional email address that should receive account correspondence. These should be separated only by commas. These CC emails will receive all emails that the `email` field also receives.
23
+ define_attribute :cc_emails, String
24
+
25
+ # @!attribute code
26
+ # @return [String] The unique identifier of the account. This cannot be changed once the account is created.
27
+ define_attribute :code, String
28
+
29
+ # @!attribute company
30
+ # @return [String]
31
+ define_attribute :company, String
32
+
33
+ # @!attribute created_at
34
+ # @return [DateTime] When the account was created.
35
+ define_attribute :created_at, DateTime
36
+
37
+ # @!attribute custom_fields
38
+ # @return [Array[CustomField]] The custom fields will only be altered when they are included in a request. Sending an empty array will not remove any existing values. To remove a field send the name with a null or empty value.
39
+ define_attribute :custom_fields, Array, { :item_type => :CustomField }
40
+
41
+ # @!attribute deleted_at
42
+ # @return [DateTime] If present, when the account was last marked inactive.
43
+ define_attribute :deleted_at, DateTime
44
+
45
+ # @!attribute dunning_campaign_id
46
+ # @return [String] Unique ID to identify a dunning campaign. Used to specify if a non-default dunning campaign should be assigned to this account. For sites without multiple dunning campaigns enabled, the default dunning campaign will always be used.
47
+ define_attribute :dunning_campaign_id, String
48
+
49
+ # @!attribute email
50
+ # @return [String] The email address used for communicating with this customer. The customer will also use this email address to log into your hosted account management pages. This value does not need to be unique.
51
+ define_attribute :email, String
52
+
53
+ # @!attribute exemption_certificate
54
+ # @return [String] The tax exemption certificate number for the account. If the merchant has an integration for the Vertex tax provider, this optional value will be sent in any tax calculation requests for the account.
55
+ define_attribute :exemption_certificate, String
56
+
57
+ # @!attribute first_name
58
+ # @return [String]
59
+ define_attribute :first_name, String
60
+
61
+ # @!attribute has_active_subscription
62
+ # @return [Boolean] Indicates if the account has an active subscription.
63
+ define_attribute :has_active_subscription, :Boolean
64
+
65
+ # @!attribute has_canceled_subscription
66
+ # @return [Boolean] Indicates if the account has a canceled subscription.
67
+ define_attribute :has_canceled_subscription, :Boolean
68
+
69
+ # @!attribute has_future_subscription
70
+ # @return [Boolean] Indicates if the account has a future subscription.
71
+ define_attribute :has_future_subscription, :Boolean
72
+
73
+ # @!attribute has_live_subscription
74
+ # @return [Boolean] Indicates if the account has a subscription that is either active, canceled, future, or paused.
75
+ define_attribute :has_live_subscription, :Boolean
76
+
77
+ # @!attribute has_past_due_invoice
78
+ # @return [Boolean] Indicates if the account has a past due invoice.
79
+ define_attribute :has_past_due_invoice, :Boolean
80
+
81
+ # @!attribute has_paused_subscription
82
+ # @return [Boolean] Indicates if the account has a paused subscription.
83
+ define_attribute :has_paused_subscription, :Boolean
84
+
85
+ # @!attribute hosted_login_token
86
+ # @return [String] The unique token for automatically logging the account in to the hosted management pages. You may automatically log the user into their hosted management pages by directing the user to: `https://{subdomain}.recurly.com/account/{hosted_login_token}`.
87
+ define_attribute :hosted_login_token, String
88
+
89
+ # @!attribute id
90
+ # @return [String]
91
+ define_attribute :id, String
92
+
93
+ # @!attribute invoice_template_id
94
+ # @return [String] Unique ID to identify an invoice template. Available when the site is on a Pro or Enterprise plan. Used to specify if a non-default invoice template will be used to generate invoices for the account. For sites without multiple invoice templates enabled, the default template will always be used.
95
+ define_attribute :invoice_template_id, String
96
+
97
+ # @!attribute last_name
98
+ # @return [String]
99
+ define_attribute :last_name, String
100
+
101
+ # @!attribute object
102
+ # @return [String] Object type
103
+ define_attribute :object, String
104
+
105
+ # @!attribute parent_account_id
106
+ # @return [String] The UUID of the parent account associated with this account.
107
+ define_attribute :parent_account_id, String
108
+
109
+ # @!attribute preferred_locale
110
+ # @return [String] Used to determine the language and locale of emails sent on behalf of the merchant to the customer.
111
+ define_attribute :preferred_locale, String
112
+
113
+ # @!attribute shipping_addresses
114
+ # @return [Array[ShippingAddress]] The shipping addresses on the account.
115
+ define_attribute :shipping_addresses, Array, { :item_type => :ShippingAddress }
116
+
117
+ # @!attribute state
118
+ # @return [String] Accounts can be either active or inactive.
119
+ define_attribute :state, String
120
+
121
+ # @!attribute tax_exempt
122
+ # @return [Boolean] The tax status of the account. `true` exempts tax on the account, `false` applies tax on the account.
123
+ define_attribute :tax_exempt, :Boolean
124
+
125
+ # @!attribute updated_at
126
+ # @return [DateTime] When the account was last changed.
127
+ define_attribute :updated_at, DateTime
128
+
129
+ # @!attribute username
130
+ # @return [String] A secondary value for the account.
131
+ define_attribute :username, String
132
+
133
+ # @!attribute vat_number
134
+ # @return [String] The VAT number of the account (to avoid having the VAT applied). This is only used for manually collected invoices.
135
+ define_attribute :vat_number, String
136
+ end
137
+ end
138
+ end
@@ -0,0 +1,46 @@
1
+ # This file is automatically created by Recurly's OpenAPI generation process
2
+ # and thus any edits you make by hand will be lost. If you wish to make a
3
+ # change to this file, please create a Github issue explaining the changes you
4
+ # need and we will usher them to the appropriate places.
5
+ module Recurly
6
+ module Resources
7
+ class AccountAcquisition < Resource
8
+
9
+ # @!attribute account
10
+ # @return [AccountMini] Account mini details
11
+ define_attribute :account, :AccountMini
12
+
13
+ # @!attribute campaign
14
+ # @return [String] An arbitrary identifier for the marketing campaign that led to the acquisition of this account.
15
+ define_attribute :campaign, String
16
+
17
+ # @!attribute channel
18
+ # @return [String] The channel through which the account was acquired.
19
+ define_attribute :channel, String
20
+
21
+ # @!attribute cost
22
+ # @return [AccountAcquisitionCost] Account balance
23
+ define_attribute :cost, :AccountAcquisitionCost
24
+
25
+ # @!attribute created_at
26
+ # @return [DateTime] When the account acquisition data was created.
27
+ define_attribute :created_at, DateTime
28
+
29
+ # @!attribute id
30
+ # @return [String]
31
+ define_attribute :id, String
32
+
33
+ # @!attribute object
34
+ # @return [String] Object type
35
+ define_attribute :object, String
36
+
37
+ # @!attribute subchannel
38
+ # @return [String] An arbitrary subchannel string representing a distinction/subcategory within a broader channel.
39
+ define_attribute :subchannel, String
40
+
41
+ # @!attribute updated_at
42
+ # @return [DateTime] When the account acquisition data was last changed.
43
+ define_attribute :updated_at, DateTime
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,18 @@
1
+ # This file is automatically created by Recurly's OpenAPI generation process
2
+ # and thus any edits you make by hand will be lost. If you wish to make a
3
+ # change to this file, please create a Github issue explaining the changes you
4
+ # need and we will usher them to the appropriate places.
5
+ module Recurly
6
+ module Resources
7
+ class AccountAcquisitionCost < Resource
8
+
9
+ # @!attribute amount
10
+ # @return [Float] The amount of the corresponding currency used to acquire the account.
11
+ define_attribute :amount, Float
12
+
13
+ # @!attribute currency
14
+ # @return [String] 3-letter ISO 4217 currency code.
15
+ define_attribute :currency, String
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,26 @@
1
+ # This file is automatically created by Recurly's OpenAPI generation process
2
+ # and thus any edits you make by hand will be lost. If you wish to make a
3
+ # change to this file, please create a Github issue explaining the changes you
4
+ # need and we will usher them to the appropriate places.
5
+ module Recurly
6
+ module Resources
7
+ class AccountBalance < Resource
8
+
9
+ # @!attribute account
10
+ # @return [AccountMini] Account mini details
11
+ define_attribute :account, :AccountMini
12
+
13
+ # @!attribute balances
14
+ # @return [Array[AccountBalanceAmount]]
15
+ define_attribute :balances, Array, { :item_type => :AccountBalanceAmount }
16
+
17
+ # @!attribute object
18
+ # @return [String] Object type
19
+ define_attribute :object, String
20
+
21
+ # @!attribute past_due
22
+ # @return [Boolean]
23
+ define_attribute :past_due, :Boolean
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,22 @@
1
+ # This file is automatically created by Recurly's OpenAPI generation process
2
+ # and thus any edits you make by hand will be lost. If you wish to make a
3
+ # change to this file, please create a Github issue explaining the changes you
4
+ # need and we will usher them to the appropriate places.
5
+ module Recurly
6
+ module Resources
7
+ class AccountBalanceAmount < Resource
8
+
9
+ # @!attribute amount
10
+ # @return [Float] Total amount the account is past due.
11
+ define_attribute :amount, Float
12
+
13
+ # @!attribute currency
14
+ # @return [String] 3-letter ISO 4217 currency code.
15
+ define_attribute :currency, String
16
+
17
+ # @!attribute processing_prepayment_amount
18
+ # @return [Float] Total amount for the prepayment credit invoices in a `processing` state on the account.
19
+ define_attribute :processing_prepayment_amount, Float
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,50 @@
1
+ # This file is automatically created by Recurly's OpenAPI generation process
2
+ # and thus any edits you make by hand will be lost. If you wish to make a
3
+ # change to this file, please create a Github issue explaining the changes you
4
+ # need and we will usher them to the appropriate places.
5
+ module Recurly
6
+ module Resources
7
+ class AccountMini < Resource
8
+
9
+ # @!attribute bill_to
10
+ # @return [String]
11
+ define_attribute :bill_to, String
12
+
13
+ # @!attribute code
14
+ # @return [String] The unique identifier of the account.
15
+ define_attribute :code, String
16
+
17
+ # @!attribute company
18
+ # @return [String]
19
+ define_attribute :company, String
20
+
21
+ # @!attribute dunning_campaign_id
22
+ # @return [String] Unique ID to identify a dunning campaign. Used to specify if a non-default dunning campaign should be assigned to this account. For sites without multiple dunning campaigns enabled, the default dunning campaign will always be used.
23
+ define_attribute :dunning_campaign_id, String
24
+
25
+ # @!attribute email
26
+ # @return [String] The email address used for communicating with this customer.
27
+ define_attribute :email, String
28
+
29
+ # @!attribute first_name
30
+ # @return [String]
31
+ define_attribute :first_name, String
32
+
33
+ # @!attribute id
34
+ # @return [String]
35
+ define_attribute :id, String
36
+
37
+ # @!attribute last_name
38
+ # @return [String]
39
+ define_attribute :last_name, String
40
+
41
+ # @!attribute object
42
+ # @return [String] Object type
43
+ define_attribute :object, String
44
+
45
+ # @!attribute parent_account_id
46
+ # @return [String]
47
+ define_attribute :parent_account_id, String
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,34 @@
1
+ # This file is automatically created by Recurly's OpenAPI generation process
2
+ # and thus any edits you make by hand will be lost. If you wish to make a
3
+ # change to this file, please create a Github issue explaining the changes you
4
+ # need and we will usher them to the appropriate places.
5
+ module Recurly
6
+ module Resources
7
+ class AccountNote < Resource
8
+
9
+ # @!attribute account_id
10
+ # @return [String]
11
+ define_attribute :account_id, String
12
+
13
+ # @!attribute created_at
14
+ # @return [DateTime]
15
+ define_attribute :created_at, DateTime
16
+
17
+ # @!attribute id
18
+ # @return [String]
19
+ define_attribute :id, String
20
+
21
+ # @!attribute message
22
+ # @return [String]
23
+ define_attribute :message, String
24
+
25
+ # @!attribute object
26
+ # @return [String] Object type
27
+ define_attribute :object, String
28
+
29
+ # @!attribute user
30
+ # @return [User]
31
+ define_attribute :user, :User
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,122 @@
1
+ # This file is automatically created by Recurly's OpenAPI generation process
2
+ # and thus any edits you make by hand will be lost. If you wish to make a
3
+ # change to this file, please create a Github issue explaining the changes you
4
+ # need and we will usher them to the appropriate places.
5
+ module Recurly
6
+ module Resources
7
+ class AddOn < Resource
8
+
9
+ # @!attribute accounting_code
10
+ # @return [String] Accounting code for invoice line items for this add-on. If no value is provided, it defaults to add-on's code.
11
+ define_attribute :accounting_code, String
12
+
13
+ # @!attribute add_on_type
14
+ # @return [String] Whether the add-on type is fixed, or usage-based.
15
+ define_attribute :add_on_type, String
16
+
17
+ # @!attribute avalara_service_type
18
+ # @return [Integer] Used by Avalara for Communications taxes. The transaction type in combination with the service type describe how the add-on is taxed. Refer to [the documentation](https://help.avalara.com/AvaTax_for_Communications/Tax_Calculation/AvaTax_for_Communications_Tax_Engine/Mapping_Resources/TM_00115_AFC_Modules_Corresponding_Transaction_Types) for more available t/s types.
19
+ define_attribute :avalara_service_type, Integer
20
+
21
+ # @!attribute avalara_transaction_type
22
+ # @return [Integer] Used by Avalara for Communications taxes. The transaction type in combination with the service type describe how the add-on is taxed. Refer to [the documentation](https://help.avalara.com/AvaTax_for_Communications/Tax_Calculation/AvaTax_for_Communications_Tax_Engine/Mapping_Resources/TM_00115_AFC_Modules_Corresponding_Transaction_Types) for more available t/s types.
23
+ define_attribute :avalara_transaction_type, Integer
24
+
25
+ # @!attribute code
26
+ # @return [String] The unique identifier for the add-on within its plan.
27
+ define_attribute :code, String
28
+
29
+ # @!attribute created_at
30
+ # @return [DateTime] Created at
31
+ define_attribute :created_at, DateTime
32
+
33
+ # @!attribute currencies
34
+ # @return [Array[AddOnPricing]] Add-on pricing
35
+ define_attribute :currencies, Array, { :item_type => :AddOnPricing }
36
+
37
+ # @!attribute default_quantity
38
+ # @return [Integer] Default quantity for the hosted pages.
39
+ define_attribute :default_quantity, Integer
40
+
41
+ # @!attribute deleted_at
42
+ # @return [DateTime] Deleted at
43
+ define_attribute :deleted_at, DateTime
44
+
45
+ # @!attribute display_quantity
46
+ # @return [Boolean] Determines if the quantity field is displayed on the hosted pages for the add-on.
47
+ define_attribute :display_quantity, :Boolean
48
+
49
+ # @!attribute external_sku
50
+ # @return [String] Optional, stock keeping unit to link the item to other inventory systems.
51
+ define_attribute :external_sku, String
52
+
53
+ # @!attribute id
54
+ # @return [String] Add-on ID
55
+ define_attribute :id, String
56
+
57
+ # @!attribute item
58
+ # @return [ItemMini] Just the important parts.
59
+ define_attribute :item, :ItemMini
60
+
61
+ # @!attribute measured_unit_id
62
+ # @return [String] System-generated unique identifier for an measured unit associated with the add-on.
63
+ define_attribute :measured_unit_id, String
64
+
65
+ # @!attribute name
66
+ # @return [String] Describes your add-on and will appear in subscribers' invoices.
67
+ define_attribute :name, String
68
+
69
+ # @!attribute object
70
+ # @return [String] Object type
71
+ define_attribute :object, String
72
+
73
+ # @!attribute optional
74
+ # @return [Boolean] Whether the add-on is optional for the customer to include in their purchase on the hosted payment page. If false, the add-on will be included when a subscription is created through the Recurly UI. However, the add-on will not be included when a subscription is created through the API.
75
+ define_attribute :optional, :Boolean
76
+
77
+ # @!attribute percentage_tiers
78
+ # @return [Array[PercentageTiersByCurrency]] Percentage Tiers
79
+ define_attribute :percentage_tiers, Array, { :item_type => :PercentageTiersByCurrency }
80
+
81
+ # @!attribute plan_id
82
+ # @return [String] Plan ID
83
+ define_attribute :plan_id, String
84
+
85
+ # @!attribute revenue_schedule_type
86
+ # @return [String] When this add-on is invoiced, the line item will use this revenue schedule. If `item_code`/`item_id` is part of the request then `revenue_schedule_type` must be absent in the request as the value will be set from the item.
87
+ define_attribute :revenue_schedule_type, String
88
+
89
+ # @!attribute state
90
+ # @return [String] Add-ons can be either active or inactive.
91
+ define_attribute :state, String
92
+
93
+ # @!attribute tax_code
94
+ # @return [String] Used by Avalara, Vertex, and Recurly’s EU VAT tax feature. The tax code values are specific to each tax system. If you are using Recurly’s EU VAT feature you can use `unknown`, `physical`, or `digital`.
95
+ define_attribute :tax_code, String
96
+
97
+ # @!attribute tier_type
98
+ # @return [String] The pricing model for the add-on. For more information, [click here](https://docs.recurly.com/docs/billing-models#section-quantity-based). See our [Guide](https://developers.recurly.com/guides/item-addon-guide.html) for an overview of how to configure quantity-based pricing models.
99
+ define_attribute :tier_type, String
100
+
101
+ # @!attribute tiers
102
+ # @return [Array[Tier]] Tiers
103
+ define_attribute :tiers, Array, { :item_type => :Tier }
104
+
105
+ # @!attribute updated_at
106
+ # @return [DateTime] Last updated at
107
+ define_attribute :updated_at, DateTime
108
+
109
+ # @!attribute usage_percentage
110
+ # @return [Float] The percentage taken of the monetary amount of usage tracked. This can be up to 4 decimal places. A value between 0.0 and 100.0.
111
+ define_attribute :usage_percentage, Float
112
+
113
+ # @!attribute usage_timeframe
114
+ # @return [String] The time at which usage totals are reset for billing purposes.
115
+ define_attribute :usage_timeframe, String
116
+
117
+ # @!attribute usage_type
118
+ # @return [String] Type of usage, returns usage type if `add_on_type` is `usage`.
119
+ define_attribute :usage_type, String
120
+ end
121
+ end
122
+ end
@@ -0,0 +1,54 @@
1
+ # This file is automatically created by Recurly's OpenAPI generation process
2
+ # and thus any edits you make by hand will be lost. If you wish to make a
3
+ # change to this file, please create a Github issue explaining the changes you
4
+ # need and we will usher them to the appropriate places.
5
+ module Recurly
6
+ module Resources
7
+ class AddOnMini < Resource
8
+
9
+ # @!attribute accounting_code
10
+ # @return [String] Accounting code for invoice line items for this add-on. If no value is provided, it defaults to add-on's code.
11
+ define_attribute :accounting_code, String
12
+
13
+ # @!attribute add_on_type
14
+ # @return [String] Whether the add-on type is fixed, or usage-based.
15
+ define_attribute :add_on_type, String
16
+
17
+ # @!attribute code
18
+ # @return [String] The unique identifier for the add-on within its plan.
19
+ define_attribute :code, String
20
+
21
+ # @!attribute external_sku
22
+ # @return [String] Optional, stock keeping unit to link the item to other inventory systems.
23
+ define_attribute :external_sku, String
24
+
25
+ # @!attribute id
26
+ # @return [String] Add-on ID
27
+ define_attribute :id, String
28
+
29
+ # @!attribute item_id
30
+ # @return [String] Item ID
31
+ define_attribute :item_id, String
32
+
33
+ # @!attribute measured_unit_id
34
+ # @return [String] System-generated unique identifier for an measured unit associated with the add-on.
35
+ define_attribute :measured_unit_id, String
36
+
37
+ # @!attribute name
38
+ # @return [String] Describes your add-on and will appear in subscribers' invoices.
39
+ define_attribute :name, String
40
+
41
+ # @!attribute object
42
+ # @return [String] Object type
43
+ define_attribute :object, String
44
+
45
+ # @!attribute usage_percentage
46
+ # @return [Float] The percentage taken of the monetary amount of usage tracked. This can be up to 4 decimal places. A value between 0.0 and 100.0.
47
+ define_attribute :usage_percentage, Float
48
+
49
+ # @!attribute usage_type
50
+ # @return [String] Type of usage, returns usage type if `add_on_type` is `usage`.
51
+ define_attribute :usage_type, String
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,26 @@
1
+ # This file is automatically created by Recurly's OpenAPI generation process
2
+ # and thus any edits you make by hand will be lost. If you wish to make a
3
+ # change to this file, please create a Github issue explaining the changes you
4
+ # need and we will usher them to the appropriate places.
5
+ module Recurly
6
+ module Resources
7
+ class AddOnPricing < Resource
8
+
9
+ # @!attribute currency
10
+ # @return [String] 3-letter ISO 4217 currency code.
11
+ define_attribute :currency, String
12
+
13
+ # @!attribute tax_inclusive
14
+ # @return [Boolean] This field is deprecated. Please do not use it.
15
+ define_attribute :tax_inclusive, :Boolean
16
+
17
+ # @!attribute unit_amount
18
+ # @return [Float] Allows up to 2 decimal places. Required unless `unit_amount_decimal` is provided.
19
+ define_attribute :unit_amount, Float
20
+
21
+ # @!attribute unit_amount_decimal
22
+ # @return [String] Allows up to 9 decimal places. Only supported when `add_on_type` = `usage`. If `unit_amount_decimal` is provided, `unit_amount` cannot be provided.
23
+ define_attribute :unit_amount_decimal, String
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,38 @@
1
+ # This file is automatically created by Recurly's OpenAPI generation process
2
+ # and thus any edits you make by hand will be lost. If you wish to make a
3
+ # change to this file, please create a Github issue explaining the changes you
4
+ # need and we will usher them to the appropriate places.
5
+ module Recurly
6
+ module Resources
7
+ class Address < Resource
8
+
9
+ # @!attribute city
10
+ # @return [String] City
11
+ define_attribute :city, String
12
+
13
+ # @!attribute country
14
+ # @return [String] Country, 2-letter ISO 3166-1 alpha-2 code.
15
+ define_attribute :country, String
16
+
17
+ # @!attribute phone
18
+ # @return [String] Phone number
19
+ define_attribute :phone, String
20
+
21
+ # @!attribute postal_code
22
+ # @return [String] Zip or postal code.
23
+ define_attribute :postal_code, String
24
+
25
+ # @!attribute region
26
+ # @return [String] State or province.
27
+ define_attribute :region, String
28
+
29
+ # @!attribute street1
30
+ # @return [String] Street 1
31
+ define_attribute :street1, String
32
+
33
+ # @!attribute street2
34
+ # @return [String] Street 2
35
+ define_attribute :street2, String
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,46 @@
1
+ # This file is automatically created by Recurly's OpenAPI generation process
2
+ # and thus any edits you make by hand will be lost. If you wish to make a
3
+ # change to this file, please create a Github issue explaining the changes you
4
+ # need and we will usher them to the appropriate places.
5
+ module Recurly
6
+ module Resources
7
+ class AddressWithName < Resource
8
+
9
+ # @!attribute city
10
+ # @return [String] City
11
+ define_attribute :city, String
12
+
13
+ # @!attribute country
14
+ # @return [String] Country, 2-letter ISO 3166-1 alpha-2 code.
15
+ define_attribute :country, String
16
+
17
+ # @!attribute first_name
18
+ # @return [String] First name
19
+ define_attribute :first_name, String
20
+
21
+ # @!attribute last_name
22
+ # @return [String] Last name
23
+ define_attribute :last_name, String
24
+
25
+ # @!attribute phone
26
+ # @return [String] Phone number
27
+ define_attribute :phone, String
28
+
29
+ # @!attribute postal_code
30
+ # @return [String] Zip or postal code.
31
+ define_attribute :postal_code, String
32
+
33
+ # @!attribute region
34
+ # @return [String] State or province.
35
+ define_attribute :region, String
36
+
37
+ # @!attribute street1
38
+ # @return [String] Street 1
39
+ define_attribute :street1, String
40
+
41
+ # @!attribute street2
42
+ # @return [String] Street 2
43
+ define_attribute :street2, String
44
+ end
45
+ end
46
+ end