recurly 2.17.0 → 3.14.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (260) hide show
  1. checksums.yaml +4 -4
  2. data/.bumpversion.cfg +15 -0
  3. data/.github/ISSUE_TEMPLATE/bug-report.md +30 -0
  4. data/.github/ISSUE_TEMPLATE/question-or-other.md +10 -0
  5. data/.github/workflows/docs.yml +28 -0
  6. data/.github_changelog_generator +8 -0
  7. data/.gitignore +15 -0
  8. data/.rspec +2 -0
  9. data/.travis.yml +13 -0
  10. data/.yardopts +2 -0
  11. data/CHANGELOG.md +313 -0
  12. data/CODE_OF_CONDUCT.md +130 -0
  13. data/CONTRIBUTING.md +106 -0
  14. data/GETTING_STARTED.md +319 -0
  15. data/Gemfile +4 -0
  16. data/LICENSE.txt +21 -0
  17. data/README.md +9 -153
  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 +3665 -0
  22. data/lib/recurly/client.rb +353 -0
  23. data/lib/recurly/connection_pool.rb +40 -0
  24. data/lib/recurly/errors/api_errors.rb +83 -0
  25. data/lib/recurly/errors/network_errors.rb +10 -0
  26. data/lib/recurly/errors.rb +68 -0
  27. data/lib/recurly/http.rb +50 -0
  28. data/lib/recurly/pager.rb +146 -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_updatable.rb +26 -0
  32. data/lib/recurly/requests/account_create.rb +90 -0
  33. data/lib/recurly/requests/account_purchase.rb +90 -0
  34. data/lib/recurly/requests/account_update.rb +78 -0
  35. data/lib/recurly/requests/add_on_create.rb +94 -0
  36. data/lib/recurly/requests/add_on_pricing.rb +18 -0
  37. data/lib/recurly/requests/add_on_update.rb +74 -0
  38. data/lib/recurly/requests/address.rb +46 -0
  39. data/lib/recurly/requests/billing_info_create.rb +110 -0
  40. data/lib/recurly/requests/coupon_bulk_create.rb +14 -0
  41. data/lib/recurly/requests/coupon_create.rb +94 -0
  42. data/lib/recurly/requests/coupon_pricing.rb +18 -0
  43. data/lib/recurly/requests/coupon_redemption_create.rb +18 -0
  44. data/lib/recurly/requests/coupon_update.rb +34 -0
  45. data/lib/recurly/requests/custom_field.rb +18 -0
  46. data/lib/recurly/requests/external_refund.rb +22 -0
  47. data/lib/recurly/requests/external_transaction.rb +26 -0
  48. data/lib/recurly/requests/invoice_address.rb +54 -0
  49. data/lib/recurly/requests/invoice_collect.rb +18 -0
  50. data/lib/recurly/requests/invoice_create.rb +42 -0
  51. data/lib/recurly/requests/invoice_refund.rb +34 -0
  52. data/lib/recurly/requests/invoice_updatable.rb +34 -0
  53. data/lib/recurly/requests/item_create.rb +58 -0
  54. data/lib/recurly/requests/item_update.rb +58 -0
  55. data/lib/recurly/requests/line_item_create.rb +82 -0
  56. data/lib/recurly/requests/line_item_refund.rb +22 -0
  57. data/lib/recurly/requests/measured_unit_create.rb +22 -0
  58. data/lib/recurly/requests/measured_unit_update.rb +22 -0
  59. data/lib/recurly/requests/plan_create.rb +98 -0
  60. data/lib/recurly/requests/plan_hosted_pages.rb +26 -0
  61. data/lib/recurly/requests/plan_pricing.rb +22 -0
  62. data/lib/recurly/requests/plan_update.rb +94 -0
  63. data/lib/recurly/requests/pricing.rb +18 -0
  64. data/lib/recurly/requests/purchase_create.rb +74 -0
  65. data/lib/recurly/requests/shipping_address_create.rb +62 -0
  66. data/lib/recurly/requests/shipping_address_update.rb +66 -0
  67. data/lib/recurly/requests/shipping_fee_create.rb +22 -0
  68. data/lib/recurly/requests/shipping_method_create.rb +26 -0
  69. data/lib/recurly/requests/shipping_method_update.rb +26 -0
  70. data/lib/recurly/requests/shipping_purchase.rb +22 -0
  71. data/lib/recurly/requests/subscription_add_on_create.rb +38 -0
  72. data/lib/recurly/requests/subscription_add_on_tier.rb +18 -0
  73. data/lib/recurly/requests/subscription_add_on_update.rb +42 -0
  74. data/lib/recurly/requests/subscription_cancel.rb +14 -0
  75. data/lib/recurly/requests/subscription_change_create.rb +66 -0
  76. data/lib/recurly/requests/subscription_change_shipping_create.rb +22 -0
  77. data/lib/recurly/requests/subscription_create.rb +106 -0
  78. data/lib/recurly/requests/subscription_pause.rb +14 -0
  79. data/lib/recurly/requests/subscription_purchase.rb +66 -0
  80. data/lib/recurly/requests/subscription_shipping_create.rb +30 -0
  81. data/lib/recurly/requests/subscription_shipping_purchase.rb +22 -0
  82. data/lib/recurly/requests/subscription_shipping_update.rb +22 -0
  83. data/lib/recurly/requests/subscription_update.rb +58 -0
  84. data/lib/recurly/requests/tier.rb +18 -0
  85. data/lib/recurly/requests/usage_create.rb +26 -0
  86. data/lib/recurly/requests.rb +8 -0
  87. data/lib/recurly/resource.rb +23 -1082
  88. data/lib/recurly/resources/account.rb +130 -0
  89. data/lib/recurly/resources/account_acquisition.rb +46 -0
  90. data/lib/recurly/resources/account_acquisition_cost.rb +18 -0
  91. data/lib/recurly/resources/account_balance.rb +26 -0
  92. data/lib/recurly/resources/account_balance_amount.rb +18 -0
  93. data/lib/recurly/resources/account_mini.rb +46 -0
  94. data/lib/recurly/resources/account_note.rb +34 -0
  95. data/lib/recurly/resources/add_on.rb +114 -0
  96. data/lib/recurly/resources/add_on_mini.rb +54 -0
  97. data/lib/recurly/resources/add_on_pricing.rb +18 -0
  98. data/lib/recurly/resources/address.rb +46 -0
  99. data/lib/recurly/resources/billing_info.rb +66 -0
  100. data/lib/recurly/resources/billing_info_updated_by.rb +18 -0
  101. data/lib/recurly/resources/binary_file.rb +14 -0
  102. data/lib/recurly/resources/coupon.rb +130 -0
  103. data/lib/recurly/resources/coupon_discount.rb +26 -0
  104. data/lib/recurly/resources/coupon_discount_pricing.rb +18 -0
  105. data/lib/recurly/resources/coupon_discount_trial.rb +18 -0
  106. data/lib/recurly/resources/coupon_mini.rb +42 -0
  107. data/lib/recurly/resources/coupon_redemption.rb +50 -0
  108. data/lib/recurly/resources/coupon_redemption_mini.rb +34 -0
  109. data/lib/recurly/resources/credit_payment.rb +66 -0
  110. data/lib/recurly/resources/custom_field.rb +18 -0
  111. data/lib/recurly/resources/custom_field_definition.rb +50 -0
  112. data/lib/recurly/resources/error.rb +22 -0
  113. data/lib/recurly/resources/error_may_have_transaction.rb +26 -0
  114. data/lib/recurly/resources/export_dates.rb +18 -0
  115. data/lib/recurly/resources/export_file.rb +22 -0
  116. data/lib/recurly/resources/export_files.rb +18 -0
  117. data/lib/recurly/resources/fraud_info.rb +22 -0
  118. data/lib/recurly/resources/invoice.rb +146 -0
  119. data/lib/recurly/resources/invoice_address.rb +54 -0
  120. data/lib/recurly/resources/invoice_collection.rb +22 -0
  121. data/lib/recurly/resources/invoice_mini.rb +30 -0
  122. data/lib/recurly/resources/item.rb +82 -0
  123. data/lib/recurly/resources/item_mini.rb +34 -0
  124. data/lib/recurly/resources/line_item.rb +198 -0
  125. data/lib/recurly/resources/line_item_list.rb +26 -0
  126. data/lib/recurly/resources/measured_unit.rb +46 -0
  127. data/lib/recurly/resources/payment_method.rb +66 -0
  128. data/lib/recurly/resources/plan.rb +118 -0
  129. data/lib/recurly/resources/plan_hosted_pages.rb +26 -0
  130. data/lib/recurly/resources/plan_mini.rb +26 -0
  131. data/lib/recurly/resources/plan_pricing.rb +22 -0
  132. data/lib/recurly/resources/pricing.rb +18 -0
  133. data/lib/recurly/resources/settings.rb +22 -0
  134. data/lib/recurly/resources/shipping_address.rb +82 -0
  135. data/lib/recurly/resources/shipping_method.rb +46 -0
  136. data/lib/recurly/resources/shipping_method_mini.rb +26 -0
  137. data/lib/recurly/resources/site.rb +54 -0
  138. data/lib/recurly/resources/subscription.rb +174 -0
  139. data/lib/recurly/resources/subscription_add_on.rb +66 -0
  140. data/lib/recurly/resources/subscription_add_on_tier.rb +18 -0
  141. data/lib/recurly/resources/subscription_change.rb +78 -0
  142. data/lib/recurly/resources/subscription_change_preview.rb +78 -0
  143. data/lib/recurly/resources/subscription_shipping.rb +26 -0
  144. data/lib/recurly/resources/tax_info.rb +22 -0
  145. data/lib/recurly/resources/tier.rb +18 -0
  146. data/lib/recurly/resources/transaction.rb +158 -0
  147. data/lib/recurly/resources/transaction_error.rb +38 -0
  148. data/lib/recurly/resources/transaction_payment_gateway.rb +26 -0
  149. data/lib/recurly/resources/unique_coupon_code.rb +50 -0
  150. data/lib/recurly/resources/usage.rb +70 -0
  151. data/lib/recurly/resources/user.rb +42 -0
  152. data/lib/recurly/resources.rb +18 -0
  153. data/lib/recurly/schema/file_parser.rb +13 -0
  154. data/lib/recurly/schema/json_parser.rb +72 -0
  155. data/lib/recurly/schema/request_caster.rb +60 -0
  156. data/lib/recurly/schema/resource_caster.rb +46 -0
  157. data/lib/recurly/schema/schema_factory.rb +48 -0
  158. data/lib/recurly/schema/schema_validator.rb +144 -0
  159. data/lib/recurly/schema.rb +156 -0
  160. data/lib/recurly/version.rb +1 -15
  161. data/lib/recurly.rb +15 -137
  162. data/openapi/api.yaml +21024 -0
  163. data/recurly.gemspec +39 -0
  164. data/scripts/build +5 -0
  165. data/scripts/bump +11 -0
  166. data/scripts/changelog +14 -0
  167. data/scripts/clean +6 -0
  168. data/scripts/format +12 -0
  169. data/scripts/prepare-release +36 -0
  170. data/scripts/release +32 -0
  171. data/scripts/test +15 -0
  172. metadata +206 -168
  173. data/lib/recurly/account.rb +0 -169
  174. data/lib/recurly/account_balance.rb +0 -21
  175. data/lib/recurly/add_on.rb +0 -30
  176. data/lib/recurly/address.rb +0 -25
  177. data/lib/recurly/adjustment.rb +0 -76
  178. data/lib/recurly/api/errors.rb +0 -206
  179. data/lib/recurly/api/net_http_adapter.rb +0 -111
  180. data/lib/recurly/api.rb +0 -101
  181. data/lib/recurly/billing_info.rb +0 -80
  182. data/lib/recurly/coupon.rb +0 -134
  183. data/lib/recurly/credit_payment.rb +0 -28
  184. data/lib/recurly/custom_field.rb +0 -15
  185. data/lib/recurly/delivery.rb +0 -19
  186. data/lib/recurly/error.rb +0 -13
  187. data/lib/recurly/gift_card.rb +0 -79
  188. data/lib/recurly/helper.rb +0 -51
  189. data/lib/recurly/invoice.rb +0 -268
  190. data/lib/recurly/invoice_collection.rb +0 -14
  191. data/lib/recurly/js.rb +0 -14
  192. data/lib/recurly/juris_detail.rb +0 -14
  193. data/lib/recurly/measured_unit.rb +0 -16
  194. data/lib/recurly/money.rb +0 -120
  195. data/lib/recurly/plan.rb +0 -40
  196. data/lib/recurly/purchase.rb +0 -219
  197. data/lib/recurly/redemption.rb +0 -46
  198. data/lib/recurly/resource/association.rb +0 -16
  199. data/lib/recurly/resource/errors.rb +0 -20
  200. data/lib/recurly/resource/pager.rb +0 -314
  201. data/lib/recurly/shipping_address.rb +0 -22
  202. data/lib/recurly/subscription/add_ons.rb +0 -77
  203. data/lib/recurly/subscription.rb +0 -325
  204. data/lib/recurly/subscription_add_on.rb +0 -50
  205. data/lib/recurly/tax_detail.rb +0 -14
  206. data/lib/recurly/tax_type.rb +0 -12
  207. data/lib/recurly/transaction/errors.rb +0 -107
  208. data/lib/recurly/transaction.rb +0 -116
  209. data/lib/recurly/usage.rb +0 -24
  210. data/lib/recurly/webhook/account_notification.rb +0 -10
  211. data/lib/recurly/webhook/billing_info_updated_notification.rb +0 -6
  212. data/lib/recurly/webhook/canceled_account_notification.rb +0 -6
  213. data/lib/recurly/webhook/canceled_subscription_notification.rb +0 -6
  214. data/lib/recurly/webhook/closed_credit_invoice_notification.rb +0 -6
  215. data/lib/recurly/webhook/closed_invoice_notification.rb +0 -6
  216. data/lib/recurly/webhook/credit_payment_notification.rb +0 -12
  217. data/lib/recurly/webhook/dunning_notification.rb +0 -14
  218. data/lib/recurly/webhook/expired_subscription_notification.rb +0 -6
  219. data/lib/recurly/webhook/failed_charge_invoice_notification.rb +0 -6
  220. data/lib/recurly/webhook/failed_payment_notification.rb +0 -6
  221. data/lib/recurly/webhook/gift_card_notification.rb +0 -8
  222. data/lib/recurly/webhook/invoice_notification.rb +0 -12
  223. data/lib/recurly/webhook/new_account_notification.rb +0 -6
  224. data/lib/recurly/webhook/new_charge_invoice_notification.rb +0 -6
  225. data/lib/recurly/webhook/new_credit_invoice_notification.rb +0 -6
  226. data/lib/recurly/webhook/new_credit_payment_notification.rb +0 -6
  227. data/lib/recurly/webhook/new_dunning_event_notification.rb +0 -6
  228. data/lib/recurly/webhook/new_invoice_notification.rb +0 -6
  229. data/lib/recurly/webhook/new_subscription_notification.rb +0 -6
  230. data/lib/recurly/webhook/new_usage_notification.rb +0 -8
  231. data/lib/recurly/webhook/notification.rb +0 -18
  232. data/lib/recurly/webhook/paid_charge_invoice_notification.rb +0 -6
  233. data/lib/recurly/webhook/past_due_charge_invoice_notification.rb +0 -6
  234. data/lib/recurly/webhook/past_due_invoice_notification.rb +0 -6
  235. data/lib/recurly/webhook/processing_charge_invoice_notification.rb +0 -6
  236. data/lib/recurly/webhook/processing_credit_invoice_notification.rb +0 -6
  237. data/lib/recurly/webhook/processing_invoice_notification.rb +0 -6
  238. data/lib/recurly/webhook/processing_payment_notification.rb +0 -6
  239. data/lib/recurly/webhook/purchased_gift_card_notification.rb +0 -7
  240. data/lib/recurly/webhook/reactivated_account_notification.rb +0 -6
  241. data/lib/recurly/webhook/redeemed_gift_card_notification.rb +0 -7
  242. data/lib/recurly/webhook/renewed_subscription_notification.rb +0 -6
  243. data/lib/recurly/webhook/reopened_charge_invoice_notification.rb +0 -6
  244. data/lib/recurly/webhook/reopened_credit_invoice_notification.rb +0 -6
  245. data/lib/recurly/webhook/scheduled_payment_notification.rb +0 -6
  246. data/lib/recurly/webhook/subscription_notification.rb +0 -12
  247. data/lib/recurly/webhook/successful_payment_notification.rb +0 -6
  248. data/lib/recurly/webhook/successful_refund_notification.rb +0 -6
  249. data/lib/recurly/webhook/transaction_authorized_notification.rb +0 -6
  250. data/lib/recurly/webhook/transaction_notification.rb +0 -12
  251. data/lib/recurly/webhook/updated_account_notification.rb +0 -6
  252. data/lib/recurly/webhook/updated_balance_gift_card_notification.rb +0 -7
  253. data/lib/recurly/webhook/updated_subscription_notification.rb +0 -6
  254. data/lib/recurly/webhook/void_payment_notification.rb +0 -6
  255. data/lib/recurly/webhook/voided_credit_invoice_notification.rb +0 -6
  256. data/lib/recurly/webhook/voided_credit_payment_notification.rb +0 -6
  257. data/lib/recurly/webhook.rb +0 -88
  258. data/lib/recurly/xml/nokogiri.rb +0 -58
  259. data/lib/recurly/xml/rexml.rb +0 -50
  260. data/lib/recurly/xml.rb +0 -120
@@ -0,0 +1,62 @@
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 Requests
7
+ class ShippingAddressCreate < Request
8
+
9
+ # @!attribute city
10
+ # @return [String]
11
+ define_attribute :city, String
12
+
13
+ # @!attribute company
14
+ # @return [String]
15
+ define_attribute :company, String
16
+
17
+ # @!attribute country
18
+ # @return [String] Country, 2-letter ISO code.
19
+ define_attribute :country, String
20
+
21
+ # @!attribute email
22
+ # @return [String]
23
+ define_attribute :email, String
24
+
25
+ # @!attribute first_name
26
+ # @return [String]
27
+ define_attribute :first_name, String
28
+
29
+ # @!attribute last_name
30
+ # @return [String]
31
+ define_attribute :last_name, String
32
+
33
+ # @!attribute nickname
34
+ # @return [String]
35
+ define_attribute :nickname, String
36
+
37
+ # @!attribute phone
38
+ # @return [String]
39
+ define_attribute :phone, String
40
+
41
+ # @!attribute postal_code
42
+ # @return [String] Zip or postal code.
43
+ define_attribute :postal_code, String
44
+
45
+ # @!attribute region
46
+ # @return [String] State or province.
47
+ define_attribute :region, String
48
+
49
+ # @!attribute street1
50
+ # @return [String]
51
+ define_attribute :street1, String
52
+
53
+ # @!attribute street2
54
+ # @return [String]
55
+ define_attribute :street2, String
56
+
57
+ # @!attribute vat_number
58
+ # @return [String]
59
+ define_attribute :vat_number, String
60
+ end
61
+ end
62
+ end
@@ -0,0 +1,66 @@
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 Requests
7
+ class ShippingAddressUpdate < Request
8
+
9
+ # @!attribute city
10
+ # @return [String]
11
+ define_attribute :city, String
12
+
13
+ # @!attribute company
14
+ # @return [String]
15
+ define_attribute :company, String
16
+
17
+ # @!attribute country
18
+ # @return [String] Country, 2-letter ISO code.
19
+ define_attribute :country, String
20
+
21
+ # @!attribute email
22
+ # @return [String]
23
+ define_attribute :email, String
24
+
25
+ # @!attribute first_name
26
+ # @return [String]
27
+ define_attribute :first_name, String
28
+
29
+ # @!attribute id
30
+ # @return [String] Shipping Address ID
31
+ define_attribute :id, String
32
+
33
+ # @!attribute last_name
34
+ # @return [String]
35
+ define_attribute :last_name, String
36
+
37
+ # @!attribute nickname
38
+ # @return [String]
39
+ define_attribute :nickname, String
40
+
41
+ # @!attribute phone
42
+ # @return [String]
43
+ define_attribute :phone, String
44
+
45
+ # @!attribute postal_code
46
+ # @return [String] Zip or postal code.
47
+ define_attribute :postal_code, String
48
+
49
+ # @!attribute region
50
+ # @return [String] State or province.
51
+ define_attribute :region, String
52
+
53
+ # @!attribute street1
54
+ # @return [String]
55
+ define_attribute :street1, String
56
+
57
+ # @!attribute street2
58
+ # @return [String]
59
+ define_attribute :street2, String
60
+
61
+ # @!attribute vat_number
62
+ # @return [String]
63
+ define_attribute :vat_number, String
64
+ end
65
+ end
66
+ 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 Requests
7
+ class ShippingFeeCreate < Request
8
+
9
+ # @!attribute amount
10
+ # @return [Float] This is priced in the purchase's currency.
11
+ define_attribute :amount, Float
12
+
13
+ # @!attribute method_code
14
+ # @return [String] The code of the shipping method used to deliver the purchase. If `method_id` and `method_code` are both present, `method_id` will be used.
15
+ define_attribute :method_code, String
16
+
17
+ # @!attribute method_id
18
+ # @return [String] The id of the shipping method used to deliver the purchase. If `method_id` and `method_code` are both present, `method_id` will be used.
19
+ define_attribute :method_id, String
20
+ end
21
+ end
22
+ 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 Requests
7
+ class ShippingMethodCreate < Request
8
+
9
+ # @!attribute accounting_code
10
+ # @return [String] Accounting code for shipping method.
11
+ define_attribute :accounting_code, String
12
+
13
+ # @!attribute code
14
+ # @return [String] The internal name used identify the shipping method.
15
+ define_attribute :code, String
16
+
17
+ # @!attribute name
18
+ # @return [String] The name of the shipping method displayed to customers.
19
+ define_attribute :name, String
20
+
21
+ # @!attribute tax_code
22
+ # @return [String] Used by Avalara, Vertex, and Recurly’s built-in tax feature. The tax code values are specific to each tax system. If you are using Recurly’s built-in taxes the values are: - `FR` – Common Carrier FOB Destination - `FR022000` – Common Carrier FOB Origin - `FR020400` – Non Common Carrier FOB Destination - `FR020500` – Non Common Carrier FOB Origin - `FR010100` – Delivery by Company Vehicle Before Passage of Title - `FR010200` – Delivery by Company Vehicle After Passage of Title - `NT` – Non-Taxable
23
+ define_attribute :tax_code, String
24
+ end
25
+ end
26
+ 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 Requests
7
+ class ShippingMethodUpdate < Request
8
+
9
+ # @!attribute accounting_code
10
+ # @return [String] Accounting code for shipping method.
11
+ define_attribute :accounting_code, String
12
+
13
+ # @!attribute code
14
+ # @return [String] The internal name used identify the shipping method.
15
+ define_attribute :code, String
16
+
17
+ # @!attribute name
18
+ # @return [String] The name of the shipping method displayed to customers.
19
+ define_attribute :name, String
20
+
21
+ # @!attribute tax_code
22
+ # @return [String] Used by Avalara, Vertex, and Recurly’s built-in tax feature. The tax code values are specific to each tax system. If you are using Recurly’s built-in taxes the values are: - `FR` – Common Carrier FOB Destination - `FR022000` – Common Carrier FOB Origin - `FR020400` – Non Common Carrier FOB Destination - `FR020500` – Non Common Carrier FOB Origin - `FR010100` – Delivery by Company Vehicle Before Passage of Title - `FR010200` – Delivery by Company Vehicle After Passage of Title - `NT` – Non-Taxable
23
+ define_attribute :tax_code, String
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 Requests
7
+ class ShippingPurchase < Request
8
+
9
+ # @!attribute address
10
+ # @return [ShippingAddressCreate]
11
+ define_attribute :address, :ShippingAddressCreate
12
+
13
+ # @!attribute address_id
14
+ # @return [String] Assign a shipping address from the account's existing shipping addresses. If this and `address` are both present, `address` will take precedence.
15
+ define_attribute :address_id, String
16
+
17
+ # @!attribute fees
18
+ # @return [Array[ShippingFeeCreate]] A list of shipping fees to be created as charges with the purchase.
19
+ define_attribute :fees, Array, { :item_type => :ShippingFeeCreate }
20
+ end
21
+ end
22
+ 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 Requests
7
+ class SubscriptionAddOnCreate < Request
8
+
9
+ # @!attribute add_on_source
10
+ # @return [String] Used to determine where the associated add-on data is pulled from. If this value is set to `plan_add_on` or left blank, then add_on data will be pulled from the plan's add-ons. If the associated `plan` has `allow_any_item_on_subscriptions` set to `true` and this field is set to `item`, then the associated add-on data will be pulled from the site's item catalog.
11
+ define_attribute :add_on_source, String
12
+
13
+ # @!attribute code
14
+ # @return [String] If `add_on_source` is set to `plan_add_on` or left blank, then plan's add-on `code` should be used. If `add_on_source` is set to `item`, then the `code` from the associated item should be used.
15
+ define_attribute :code, String
16
+
17
+ # @!attribute quantity
18
+ # @return [Integer] Quantity
19
+ define_attribute :quantity, Integer
20
+
21
+ # @!attribute revenue_schedule_type
22
+ # @return [String] Revenue schedule type
23
+ define_attribute :revenue_schedule_type, String
24
+
25
+ # @!attribute tiers
26
+ # @return [Array[SubscriptionAddOnTier]] If the plan add-on's `tier_type` is `flat`, then `tiers` must be absent. The `tiers` object must include one to many tiers with `ending_quantity` and `unit_amount`. There must be one tier with an `ending_quantity` of 999999999 which is the default if not provided. See our [Guide](https://developers.recurly.com/guides/item-addon-guide.html) for an overview of how to configure quantity-based pricing models.
27
+ define_attribute :tiers, Array, { :item_type => :SubscriptionAddOnTier }
28
+
29
+ # @!attribute unit_amount
30
+ # @return [Float] * Optionally, override the add-on's default unit amount. * If the plan add-on's `tier_type` is `tiered`, `volume`, or `stairstep`, then `unit_amount` must be absent.
31
+ define_attribute :unit_amount, Float
32
+
33
+ # @!attribute usage_percentage
34
+ # @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. Required if `add_on_type` is usage and `usage_type` is percentage. Must be omitted otherwise. `usage_percentage` does not support tiers. See our [Guide](https://developers.recurly.com/guides/usage-based-billing-guide.html) for an overview of how to configure usage add-ons.
35
+ define_attribute :usage_percentage, Float
36
+ end
37
+ end
38
+ 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 Requests
7
+ class SubscriptionAddOnTier < Request
8
+
9
+ # @!attribute ending_quantity
10
+ # @return [Integer] Ending quantity
11
+ define_attribute :ending_quantity, Integer
12
+
13
+ # @!attribute unit_amount
14
+ # @return [Float] Unit amount
15
+ define_attribute :unit_amount, Float
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,42 @@
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 Requests
7
+ class SubscriptionAddOnUpdate < Request
8
+
9
+ # @!attribute add_on_source
10
+ # @return [String] Used to determine where the associated add-on data is pulled from. If this value is set to `plan_add_on` or left blank, then add_on data will be pulled from the plan's add-ons. If the associated `plan` has `allow_any_item_on_subscriptions` set to `true` and this field is set to `item`, then the associated add-on data will be pulled from the site's item catalog.
11
+ define_attribute :add_on_source, String
12
+
13
+ # @!attribute code
14
+ # @return [String] If a code is provided without an id, the subscription add-on attributes will be set to the current value for those attributes on the plan add-on unless provided in the request. If `add_on_source` is set to `plan_add_on` or left blank, then plan's add-on `code` should be used. If `add_on_source` is set to `item`, then the `code` from the associated item should be used.
15
+ define_attribute :code, String
16
+
17
+ # @!attribute id
18
+ # @return [String] When an id is provided, the existing subscription add-on attributes will persist unless overridden in the request.
19
+ define_attribute :id, String
20
+
21
+ # @!attribute quantity
22
+ # @return [Integer] Quantity
23
+ define_attribute :quantity, Integer
24
+
25
+ # @!attribute revenue_schedule_type
26
+ # @return [String] Revenue schedule type
27
+ define_attribute :revenue_schedule_type, String
28
+
29
+ # @!attribute tiers
30
+ # @return [Array[SubscriptionAddOnTier]] If the plan add-on's `tier_type` is `flat`, then `tiers` must be absent. The `tiers` object must include one to many tiers with `ending_quantity` and `unit_amount`. There must be one tier with an `ending_quantity` of 999999999 which is the default if not provided.
31
+ define_attribute :tiers, Array, { :item_type => :SubscriptionAddOnTier }
32
+
33
+ # @!attribute unit_amount
34
+ # @return [Float] Optionally, override the add-on's default unit amount.
35
+ define_attribute :unit_amount, Float
36
+
37
+ # @!attribute usage_percentage
38
+ # @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. Required if add_on_type is usage and usage_type is percentage.
39
+ define_attribute :usage_percentage, Float
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,14 @@
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 Requests
7
+ class SubscriptionCancel < Request
8
+
9
+ # @!attribute timeframe
10
+ # @return [String] The timeframe parameter controls when the expiration takes place. The `bill_date` timeframe causes the subscription to expire when the subscription is scheduled to bill next. The `term_end` timeframe causes the subscription to continue to bill until the end of the subscription term, then expire.
11
+ define_attribute :timeframe, String
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,66 @@
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 Requests
7
+ class SubscriptionChangeCreate < Request
8
+
9
+ # @!attribute add_ons
10
+ # @return [Array[SubscriptionAddOnUpdate]] If this value is omitted your existing add-ons will be removed. If you provide a value for this field it will replace any existing add-ons. So, when adding or modifying an add-on, you need to include the existing subscription add-ons. Unchanged add-ons can be included just using the subscription add-on's ID: `{"id": "abc123"}`. If a subscription add-on's `code` is supplied without the `id`, `{"code": "def456"}`, the subscription add-on attributes will be set to the current values of the plan add-on unless provided in the request. - If an `id` is passed, any attributes not passed in will pull from the existing subscription add-on - If a `code` is passed, any attributes not passed in will pull from the current values of the plan add-on - Attributes passed in as part of the request will override either of the above scenarios
11
+ define_attribute :add_ons, Array, { :item_type => :SubscriptionAddOnUpdate }
12
+
13
+ # @!attribute collection_method
14
+ # @return [String] Collection method
15
+ define_attribute :collection_method, String
16
+
17
+ # @!attribute coupon_codes
18
+ # @return [Array[String]] A list of coupon_codes to be redeemed on the subscription during the change. Only allowed if timeframe is now and you change something about the subscription that creates an invoice.
19
+ define_attribute :coupon_codes, Array, { :item_type => String }
20
+
21
+ # @!attribute custom_fields
22
+ # @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.
23
+ define_attribute :custom_fields, Array, { :item_type => :CustomField }
24
+
25
+ # @!attribute net_terms
26
+ # @return [Integer] Integer representing the number of days after an invoice's creation that the invoice will become past due. If an invoice's net terms are set to '0', it is due 'On Receipt' and will become past due 24 hours after it’s created. If an invoice is due net 30, it will become past due at 31 days exactly.
27
+ define_attribute :net_terms, Integer
28
+
29
+ # @!attribute plan_code
30
+ # @return [String] If you want to change to a new plan, you can provide the plan's code or id. If both are provided the `plan_id` will be used.
31
+ define_attribute :plan_code, String
32
+
33
+ # @!attribute plan_id
34
+ # @return [String] If you want to change to a new plan, you can provide the plan's code or id. If both are provided the `plan_id` will be used.
35
+ define_attribute :plan_id, String
36
+
37
+ # @!attribute po_number
38
+ # @return [String] For manual invoicing, this identifies the PO number associated with the subscription.
39
+ define_attribute :po_number, String
40
+
41
+ # @!attribute quantity
42
+ # @return [Integer] Optionally override the default quantity of 1.
43
+ define_attribute :quantity, Integer
44
+
45
+ # @!attribute revenue_schedule_type
46
+ # @return [String] Revenue schedule type
47
+ define_attribute :revenue_schedule_type, String
48
+
49
+ # @!attribute shipping
50
+ # @return [SubscriptionChangeShippingCreate] The shipping address can currently only be changed immediately, using SubscriptionUpdate.
51
+ define_attribute :shipping, :SubscriptionChangeShippingCreate
52
+
53
+ # @!attribute timeframe
54
+ # @return [String] The timeframe parameter controls when the upgrade or downgrade takes place. The subscription change can occur now, when the subscription is next billed, or when the subscription term ends. Generally, if you're performing an upgrade, you will want the change to occur immediately (now). If you're performing a downgrade, you should set the timeframe to `term_end` or `bill_date` so the change takes effect at a scheduled billing date. The `renewal` timeframe option is accepted as an alias for `term_end`.
55
+ define_attribute :timeframe, String
56
+
57
+ # @!attribute transaction_type
58
+ # @return [String] An optional type designation for the payment gateway transaction created by this request. Supports 'moto' value, which is the acronym for mail order and telephone transactions.
59
+ define_attribute :transaction_type, String
60
+
61
+ # @!attribute unit_amount
62
+ # @return [Float] Optionally, sets custom pricing for the subscription, overriding the plan's default unit amount. The subscription's current currency will be used.
63
+ define_attribute :unit_amount, Float
64
+ end
65
+ end
66
+ 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 Requests
7
+ class SubscriptionChangeShippingCreate < Request
8
+
9
+ # @!attribute amount
10
+ # @return [Float] Assigns the subscription's shipping cost. If this is greater than zero then a `method_id` or `method_code` is required.
11
+ define_attribute :amount, Float
12
+
13
+ # @!attribute method_code
14
+ # @return [String] The code of the shipping method used to deliver the subscription. To remove shipping set this to `null` and the `amount=0`. If `method_id` and `method_code` are both present, `method_id` will be used.
15
+ define_attribute :method_code, String
16
+
17
+ # @!attribute method_id
18
+ # @return [String] The id of the shipping method used to deliver the subscription. To remove shipping set this to `null` and the `amount=0`. If `method_id` and `method_code` are both present, `method_id` will be used.
19
+ define_attribute :method_id, String
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,106 @@
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 Requests
7
+ class SubscriptionCreate < Request
8
+
9
+ # @!attribute account
10
+ # @return [AccountCreate]
11
+ define_attribute :account, :AccountCreate
12
+
13
+ # @!attribute add_ons
14
+ # @return [Array[SubscriptionAddOnCreate]] Add-ons
15
+ define_attribute :add_ons, Array, { :item_type => :SubscriptionAddOnCreate }
16
+
17
+ # @!attribute auto_renew
18
+ # @return [Boolean] Whether the subscription renews at the end of its term.
19
+ define_attribute :auto_renew, :Boolean
20
+
21
+ # @!attribute collection_method
22
+ # @return [String] Collection method
23
+ define_attribute :collection_method, String
24
+
25
+ # @!attribute coupon_code
26
+ # @return [String] Optional coupon code to redeem on the account and discount the subscription. Please note, the subscription request will fail if the coupon is invalid.
27
+ define_attribute :coupon_code, String
28
+
29
+ # @!attribute credit_customer_notes
30
+ # @return [String] If there are pending credits on the account that will be invoiced during the subscription creation, these will be used as the Customer Notes on the credit invoice.
31
+ define_attribute :credit_customer_notes, String
32
+
33
+ # @!attribute currency
34
+ # @return [String] 3-letter ISO 4217 currency code.
35
+ define_attribute :currency, String
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 customer_notes
42
+ # @return [String] This will default to the Customer Notes text specified on the Invoice Settings. Specify custom notes to add or override Customer Notes. Custom notes will stay with a subscription on all renewals.
43
+ define_attribute :customer_notes, String
44
+
45
+ # @!attribute net_terms
46
+ # @return [Integer] Integer representing the number of days after an invoice's creation that the invoice will become past due. If an invoice's net terms are set to '0', it is due 'On Receipt' and will become past due 24 hours after it’s created. If an invoice is due net 30, it will become past due at 31 days exactly.
47
+ define_attribute :net_terms, Integer
48
+
49
+ # @!attribute next_bill_date
50
+ # @return [DateTime] If present, this sets the date the subscription's next billing period will start (`current_period_ends_at`). This can be used to align the subscription’s billing to a specific day of the month. The initial invoice will be prorated for the period between the subscription's activation date and the billing period end date. Subsequent periods will be based off the plan interval. For a subscription with a trial period, this will change when the trial expires.
51
+ define_attribute :next_bill_date, DateTime
52
+
53
+ # @!attribute plan_code
54
+ # @return [String] You must provide either a `plan_code` or `plan_id`. If both are provided the `plan_id` will be used.
55
+ define_attribute :plan_code, String
56
+
57
+ # @!attribute plan_id
58
+ # @return [String] You must provide either a `plan_code` or `plan_id`. If both are provided the `plan_id` will be used.
59
+ define_attribute :plan_id, String
60
+
61
+ # @!attribute po_number
62
+ # @return [String] For manual invoicing, this identifies the PO number associated with the subscription.
63
+ define_attribute :po_number, String
64
+
65
+ # @!attribute quantity
66
+ # @return [Integer] Optionally override the default quantity of 1.
67
+ define_attribute :quantity, Integer
68
+
69
+ # @!attribute renewal_billing_cycles
70
+ # @return [Integer] If `auto_renew=true`, when a term completes, `total_billing_cycles` takes this value as the length of subsequent terms. Defaults to the plan's `total_billing_cycles`.
71
+ define_attribute :renewal_billing_cycles, Integer
72
+
73
+ # @!attribute revenue_schedule_type
74
+ # @return [String] Revenue schedule type
75
+ define_attribute :revenue_schedule_type, String
76
+
77
+ # @!attribute shipping
78
+ # @return [SubscriptionShippingCreate] Create a shipping address on the account and assign it to the subscription.
79
+ define_attribute :shipping, :SubscriptionShippingCreate
80
+
81
+ # @!attribute starts_at
82
+ # @return [DateTime] If set, the subscription will begin in the future on this date. The subscription will apply the setup fee and trial period, unless the plan has no trial.
83
+ define_attribute :starts_at, DateTime
84
+
85
+ # @!attribute terms_and_conditions
86
+ # @return [String] This will default to the Terms and Conditions text specified on the Invoice Settings page in your Recurly admin. Specify custom notes to add or override Terms and Conditions. Custom notes will stay with a subscription on all renewals.
87
+ define_attribute :terms_and_conditions, String
88
+
89
+ # @!attribute total_billing_cycles
90
+ # @return [Integer] The number of cycles/billing periods in a term. When `remaining_billing_cycles=0`, if `auto_renew=true` the subscription will renew and a new term will begin, otherwise the subscription will expire.
91
+ define_attribute :total_billing_cycles, Integer
92
+
93
+ # @!attribute transaction_type
94
+ # @return [String] An optional type designation for the payment gateway transaction created by this request. Supports 'moto' value, which is the acronym for mail order and telephone transactions.
95
+ define_attribute :transaction_type, String
96
+
97
+ # @!attribute trial_ends_at
98
+ # @return [DateTime] If set, overrides the default trial behavior for the subscription. The date must be in the future.
99
+ define_attribute :trial_ends_at, DateTime
100
+
101
+ # @!attribute unit_amount
102
+ # @return [Float] Override the unit amount of the subscription plan by setting this value. If not provided, the subscription will inherit the price from the subscription plan for the provided currency.
103
+ define_attribute :unit_amount, Float
104
+ end
105
+ end
106
+ end
@@ -0,0 +1,14 @@
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 Requests
7
+ class SubscriptionPause < Request
8
+
9
+ # @!attribute remaining_pause_cycles
10
+ # @return [Integer] Number of billing cycles to pause the subscriptions.
11
+ define_attribute :remaining_pause_cycles, Integer
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,66 @@
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 Requests
7
+ class SubscriptionPurchase < Request
8
+
9
+ # @!attribute add_ons
10
+ # @return [Array[SubscriptionAddOnCreate]] Add-ons
11
+ define_attribute :add_ons, Array, { :item_type => :SubscriptionAddOnCreate }
12
+
13
+ # @!attribute auto_renew
14
+ # @return [Boolean] Whether the subscription renews at the end of its term.
15
+ define_attribute :auto_renew, :Boolean
16
+
17
+ # @!attribute custom_fields
18
+ # @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.
19
+ define_attribute :custom_fields, Array, { :item_type => :CustomField }
20
+
21
+ # @!attribute next_bill_date
22
+ # @return [DateTime] If present, this sets the date the subscription's next billing period will start (`current_period_ends_at`). This can be used to align the subscription’s billing to a specific day of the month. The initial invoice will be prorated for the period between the subscription's activation date and the billing period end date. Subsequent periods will be based off the plan interval. For a subscription with a trial period, this will change when the trial expires.
23
+ define_attribute :next_bill_date, DateTime
24
+
25
+ # @!attribute plan_code
26
+ # @return [String] Plan code
27
+ define_attribute :plan_code, String
28
+
29
+ # @!attribute plan_id
30
+ # @return [String] Plan ID
31
+ define_attribute :plan_id, String
32
+
33
+ # @!attribute quantity
34
+ # @return [Integer] Optionally override the default quantity of 1.
35
+ define_attribute :quantity, Integer
36
+
37
+ # @!attribute renewal_billing_cycles
38
+ # @return [Integer] If `auto_renew=true`, when a term completes, `total_billing_cycles` takes this value as the length of subsequent terms. Defaults to the plan's `total_billing_cycles`.
39
+ define_attribute :renewal_billing_cycles, Integer
40
+
41
+ # @!attribute revenue_schedule_type
42
+ # @return [String] Revenue schedule type
43
+ define_attribute :revenue_schedule_type, String
44
+
45
+ # @!attribute shipping
46
+ # @return [SubscriptionShippingPurchase] Create a shipping address on the account and assign it to the subscription.
47
+ define_attribute :shipping, :SubscriptionShippingPurchase
48
+
49
+ # @!attribute starts_at
50
+ # @return [DateTime] If set, the subscription will begin in the future on this date. The subscription will apply the setup fee and trial period, unless the plan has no trial.
51
+ define_attribute :starts_at, DateTime
52
+
53
+ # @!attribute total_billing_cycles
54
+ # @return [Integer] The number of cycles/billing periods in a term. When `remaining_billing_cycles=0`, if `auto_renew=true` the subscription will renew and a new term will begin, otherwise the subscription will expire.
55
+ define_attribute :total_billing_cycles, Integer
56
+
57
+ # @!attribute trial_ends_at
58
+ # @return [DateTime] If set, overrides the default trial behavior for the subscription. The date must be in the future.
59
+ define_attribute :trial_ends_at, DateTime
60
+
61
+ # @!attribute unit_amount
62
+ # @return [Float] Override the unit amount of the subscription plan by setting this value in cents. If not provided, the subscription will inherit the price from the subscription plan for the provided currency.
63
+ define_attribute :unit_amount, Float
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,30 @@
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 Requests
7
+ class SubscriptionShippingCreate < Request
8
+
9
+ # @!attribute address
10
+ # @return [ShippingAddressCreate]
11
+ define_attribute :address, :ShippingAddressCreate
12
+
13
+ # @!attribute address_id
14
+ # @return [String] Assign a shipping address from the account's existing shipping addresses. If `address_id` and `address` are both present, `address` will be used.
15
+ define_attribute :address_id, String
16
+
17
+ # @!attribute amount
18
+ # @return [Float] Assigns the subscription's shipping cost. If this is greater than zero then a `method_id` or `method_code` is required.
19
+ define_attribute :amount, Float
20
+
21
+ # @!attribute method_code
22
+ # @return [String] The code of the shipping method used to deliver the subscription. If `method_id` and `method_code` are both present, `method_id` will be used.
23
+ define_attribute :method_code, String
24
+
25
+ # @!attribute method_id
26
+ # @return [String] The id of the shipping method used to deliver the subscription. If `method_id` and `method_code` are both present, `method_id` will be used.
27
+ define_attribute :method_id, String
28
+ end
29
+ end
30
+ end