recurly 2.18.21 → 3.0.0.beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (211) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +14 -0
  3. data/.rspec +2 -0
  4. data/.travis.yml +5 -0
  5. data/Gemfile +4 -0
  6. data/LICENSE.txt +21 -0
  7. data/README.md +158 -110
  8. data/Rakefile +6 -0
  9. data/bin/bundle +105 -0
  10. data/bin/coderay +29 -0
  11. data/bin/console +14 -0
  12. data/bin/htmldiff +29 -0
  13. data/bin/ldiff +29 -0
  14. data/bin/pry +29 -0
  15. data/bin/rake +29 -0
  16. data/bin/rspec +29 -0
  17. data/bin/setup +8 -0
  18. data/bin/yard +29 -0
  19. data/bin/yardoc +29 -0
  20. data/bin/yri +29 -0
  21. data/lib/data/ca-certificates.crt +31 -0
  22. data/lib/recurly/client/operations.rb +935 -0
  23. data/lib/recurly/client.rb +198 -0
  24. data/lib/recurly/errors/api_errors.rb +35 -0
  25. data/lib/recurly/errors/network_errors.rb +8 -0
  26. data/lib/recurly/errors.rb +34 -0
  27. data/lib/recurly/pager.rb +119 -0
  28. data/lib/recurly/request.rb +30 -0
  29. data/lib/recurly/requests/account_acquisition_updatable.rb +22 -0
  30. data/lib/recurly/requests/account_create_only.rb +18 -0
  31. data/lib/recurly/requests/account_updatable.rb +50 -0
  32. data/lib/recurly/requests/add_on_create.rb +38 -0
  33. data/lib/recurly/requests/add_on_update.rb +38 -0
  34. data/lib/recurly/requests/address.rb +42 -0
  35. data/lib/recurly/requests/billing_info_create.rb +58 -0
  36. data/lib/recurly/requests/coupon_create_only.rb +66 -0
  37. data/lib/recurly/requests/coupon_updatable.rb +30 -0
  38. data/lib/recurly/requests/create_account.rb +62 -0
  39. data/lib/recurly/requests/create_coupon.rb +90 -0
  40. data/lib/recurly/requests/invoice_create.rb +42 -0
  41. data/lib/recurly/requests/invoice_refund.rb +30 -0
  42. data/lib/recurly/requests/line_item_create.rb +46 -0
  43. data/lib/recurly/requests/plan_create.rb +66 -0
  44. data/lib/recurly/requests/plan_update.rb +70 -0
  45. data/lib/recurly/requests/shipping_address_create.rb +58 -0
  46. data/lib/recurly/requests/shipping_address_update.rb +62 -0
  47. data/lib/recurly/requests/subscription_add_on_create.rb +22 -0
  48. data/lib/recurly/requests/subscription_change_create.rb +42 -0
  49. data/lib/recurly/requests/subscription_create.rb +86 -0
  50. data/lib/recurly/requests/subscription_update.rb +42 -0
  51. data/lib/recurly/requests/update_coupon.rb +30 -0
  52. data/lib/recurly/resource.rb +16 -1103
  53. data/lib/recurly/resources/account.rb +86 -0
  54. data/lib/recurly/resources/account_acquisition.rb +42 -0
  55. data/lib/recurly/resources/account_balance.rb +22 -0
  56. data/lib/recurly/resources/account_note.rb +30 -0
  57. data/lib/recurly/resources/add_on.rb +62 -0
  58. data/lib/recurly/resources/address.rb +42 -0
  59. data/lib/recurly/resources/billing_info.rb +62 -0
  60. data/lib/recurly/resources/coupon.rb +110 -0
  61. data/lib/recurly/resources/coupon_discount.rb +22 -0
  62. data/lib/recurly/resources/coupon_redemption.rb +46 -0
  63. data/lib/recurly/resources/credit_payment.rb +62 -0
  64. data/lib/recurly/resources/error.rb +18 -0
  65. data/lib/recurly/resources/error_may_have_transaction.rb +22 -0
  66. data/lib/recurly/resources/invoice.rb +138 -0
  67. data/lib/recurly/resources/invoice_collection.rb +18 -0
  68. data/lib/recurly/resources/line_item.rb +166 -0
  69. data/lib/recurly/resources/plan.rb +86 -0
  70. data/lib/recurly/resources/settings.rb +18 -0
  71. data/lib/recurly/resources/shipping_address.rb +74 -0
  72. data/lib/recurly/resources/site.rb +46 -0
  73. data/lib/recurly/resources/subscription.rb +134 -0
  74. data/lib/recurly/resources/subscription_add_on.rb +42 -0
  75. data/lib/recurly/resources/subscription_change.rb +54 -0
  76. data/lib/recurly/resources/tax_info.rb +18 -0
  77. data/lib/recurly/resources/transaction.rb +146 -0
  78. data/lib/recurly/resources/unique_coupon_code.rb +38 -0
  79. data/lib/recurly/resources/user.rb +38 -0
  80. data/lib/recurly/schema/json_deserializer.rb +53 -0
  81. data/lib/recurly/schema/json_parser.rb +71 -0
  82. data/lib/recurly/schema/request_caster.rb +66 -0
  83. data/lib/recurly/schema/schema_factory.rb +50 -0
  84. data/lib/recurly/schema/schema_validator.rb +125 -0
  85. data/lib/recurly/schema.rb +114 -0
  86. data/lib/recurly/version.rb +1 -10
  87. data/lib/recurly.rb +14 -145
  88. data/recurly.gemspec +32 -0
  89. data/scripts/build +4 -0
  90. data/scripts/clean +6 -0
  91. data/scripts/test +3 -0
  92. metadata +129 -173
  93. data/lib/recurly/account.rb +0 -209
  94. data/lib/recurly/account_acquisition.rb +0 -27
  95. data/lib/recurly/account_balance.rb +0 -21
  96. data/lib/recurly/add_on.rb +0 -46
  97. data/lib/recurly/address.rb +0 -25
  98. data/lib/recurly/adjustment.rb +0 -81
  99. data/lib/recurly/api/errors.rb +0 -208
  100. data/lib/recurly/api/net_http_adapter.rb +0 -111
  101. data/lib/recurly/api.rb +0 -110
  102. data/lib/recurly/billing_info.rb +0 -113
  103. data/lib/recurly/coupon.rb +0 -136
  104. data/lib/recurly/credit_payment.rb +0 -32
  105. data/lib/recurly/custom_field.rb +0 -15
  106. data/lib/recurly/delivery.rb +0 -19
  107. data/lib/recurly/error.rb +0 -13
  108. data/lib/recurly/gift_card.rb +0 -85
  109. data/lib/recurly/helper.rb +0 -51
  110. data/lib/recurly/invoice.rb +0 -304
  111. data/lib/recurly/invoice_collection.rb +0 -14
  112. data/lib/recurly/item.rb +0 -36
  113. data/lib/recurly/js.rb +0 -14
  114. data/lib/recurly/juris_detail.rb +0 -15
  115. data/lib/recurly/measured_unit.rb +0 -16
  116. data/lib/recurly/money.rb +0 -120
  117. data/lib/recurly/note.rb +0 -14
  118. data/lib/recurly/plan.rb +0 -43
  119. data/lib/recurly/purchase.rb +0 -238
  120. data/lib/recurly/redemption.rb +0 -46
  121. data/lib/recurly/resource/association.rb +0 -16
  122. data/lib/recurly/resource/errors.rb +0 -20
  123. data/lib/recurly/resource/pager.rb +0 -313
  124. data/lib/recurly/shipping_address.rb +0 -26
  125. data/lib/recurly/shipping_fee.rb +0 -17
  126. data/lib/recurly/shipping_method.rb +0 -13
  127. data/lib/recurly/subscription/add_ons.rb +0 -82
  128. data/lib/recurly/subscription.rb +0 -366
  129. data/lib/recurly/subscription_add_on.rb +0 -58
  130. data/lib/recurly/tax_detail.rb +0 -18
  131. data/lib/recurly/tax_type.rb +0 -13
  132. data/lib/recurly/tier.rb +0 -18
  133. data/lib/recurly/transaction/errors.rb +0 -115
  134. data/lib/recurly/transaction.rb +0 -131
  135. data/lib/recurly/usage.rb +0 -28
  136. data/lib/recurly/verify.rb +0 -12
  137. data/lib/recurly/webhook/account_notification.rb +0 -13
  138. data/lib/recurly/webhook/billing_info_update_failed_notification.rb +0 -6
  139. data/lib/recurly/webhook/billing_info_updated_notification.rb +0 -6
  140. data/lib/recurly/webhook/canceled_account_notification.rb +0 -6
  141. data/lib/recurly/webhook/canceled_gift_card_notification.rb +0 -6
  142. data/lib/recurly/webhook/canceled_subscription_notification.rb +0 -6
  143. data/lib/recurly/webhook/closed_credit_invoice_notification.rb +0 -6
  144. data/lib/recurly/webhook/closed_invoice_notification.rb +0 -6
  145. data/lib/recurly/webhook/credit_payment_notification.rb +0 -12
  146. data/lib/recurly/webhook/deactivated_item_notification.rb +0 -6
  147. data/lib/recurly/webhook/deleted_shipping_address_notification.rb +0 -6
  148. data/lib/recurly/webhook/dunning_notification.rb +0 -14
  149. data/lib/recurly/webhook/expired_subscription_notification.rb +0 -6
  150. data/lib/recurly/webhook/failed_charge_invoice_notification.rb +0 -6
  151. data/lib/recurly/webhook/failed_payment_notification.rb +0 -6
  152. data/lib/recurly/webhook/fraud_info_updated_notification.rb +0 -6
  153. data/lib/recurly/webhook/gift_card_notification.rb +0 -8
  154. data/lib/recurly/webhook/invoice_notification.rb +0 -12
  155. data/lib/recurly/webhook/item_notification.rb +0 -7
  156. data/lib/recurly/webhook/low_balance_gift_card_notification.rb +0 -6
  157. data/lib/recurly/webhook/new_account_notification.rb +0 -6
  158. data/lib/recurly/webhook/new_charge_invoice_notification.rb +0 -6
  159. data/lib/recurly/webhook/new_credit_invoice_notification.rb +0 -6
  160. data/lib/recurly/webhook/new_credit_payment_notification.rb +0 -6
  161. data/lib/recurly/webhook/new_dunning_event_notification.rb +0 -6
  162. data/lib/recurly/webhook/new_invoice_notification.rb +0 -6
  163. data/lib/recurly/webhook/new_item_notification.rb +0 -6
  164. data/lib/recurly/webhook/new_shipping_address_notification.rb +0 -6
  165. data/lib/recurly/webhook/new_subscription_notification.rb +0 -6
  166. data/lib/recurly/webhook/new_usage_notification.rb +0 -8
  167. data/lib/recurly/webhook/notification.rb +0 -18
  168. data/lib/recurly/webhook/paid_charge_invoice_notification.rb +0 -6
  169. data/lib/recurly/webhook/past_due_charge_invoice_notification.rb +0 -6
  170. data/lib/recurly/webhook/past_due_invoice_notification.rb +0 -6
  171. data/lib/recurly/webhook/paused_subscription_renewal_notification.rb +0 -6
  172. data/lib/recurly/webhook/prerenewal_notification.rb +0 -6
  173. data/lib/recurly/webhook/processing_charge_invoice_notification.rb +0 -6
  174. data/lib/recurly/webhook/processing_credit_invoice_notification.rb +0 -6
  175. data/lib/recurly/webhook/processing_invoice_notification.rb +0 -6
  176. data/lib/recurly/webhook/processing_payment_notification.rb +0 -6
  177. data/lib/recurly/webhook/purchased_gift_card_notification.rb +0 -7
  178. data/lib/recurly/webhook/reactivated_account_notification.rb +0 -6
  179. data/lib/recurly/webhook/reactivated_item_notification.rb +0 -6
  180. data/lib/recurly/webhook/redeemed_gift_card_notification.rb +0 -7
  181. data/lib/recurly/webhook/regenerated_gift_card_notification.rb +0 -6
  182. data/lib/recurly/webhook/renewed_subscription_notification.rb +0 -6
  183. data/lib/recurly/webhook/reopened_charge_invoice_notification.rb +0 -6
  184. data/lib/recurly/webhook/reopened_credit_invoice_notification.rb +0 -6
  185. data/lib/recurly/webhook/scheduled_payment_notification.rb +0 -6
  186. data/lib/recurly/webhook/scheduled_subscription_pause_notification.rb +0 -6
  187. data/lib/recurly/webhook/scheduled_subscription_update_notification.rb +0 -6
  188. data/lib/recurly/webhook/subscription_notification.rb +0 -12
  189. data/lib/recurly/webhook/subscription_pause_canceled_notification.rb +0 -6
  190. data/lib/recurly/webhook/subscription_pause_modified_notification.rb +0 -6
  191. data/lib/recurly/webhook/subscription_paused_notification.rb +0 -6
  192. data/lib/recurly/webhook/subscription_resumed_notification.rb +0 -6
  193. data/lib/recurly/webhook/successful_payment_notification.rb +0 -6
  194. data/lib/recurly/webhook/successful_refund_notification.rb +0 -6
  195. data/lib/recurly/webhook/transaction_authorized_notification.rb +0 -6
  196. data/lib/recurly/webhook/transaction_notification.rb +0 -12
  197. data/lib/recurly/webhook/transaction_status_updated_notification.rb +0 -6
  198. data/lib/recurly/webhook/updated_account_notification.rb +0 -6
  199. data/lib/recurly/webhook/updated_balance_gift_card_notification.rb +0 -7
  200. data/lib/recurly/webhook/updated_gift_card_notification.rb +0 -6
  201. data/lib/recurly/webhook/updated_invoice_notification.rb +0 -6
  202. data/lib/recurly/webhook/updated_item_notification.rb +0 -6
  203. data/lib/recurly/webhook/updated_shipping_address_notification.rb +0 -6
  204. data/lib/recurly/webhook/updated_subscription_notification.rb +0 -6
  205. data/lib/recurly/webhook/void_payment_notification.rb +0 -6
  206. data/lib/recurly/webhook/voided_credit_invoice_notification.rb +0 -6
  207. data/lib/recurly/webhook/voided_credit_payment_notification.rb +0 -6
  208. data/lib/recurly/webhook.rb +0 -113
  209. data/lib/recurly/xml/nokogiri.rb +0 -60
  210. data/lib/recurly/xml/rexml.rb +0 -52
  211. data/lib/recurly/xml.rb +0 -122
@@ -1,14 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class DunningNotification < Notification
4
- # @return [Account]
5
- has_one :account
6
- # @return [Subscription]
7
- has_one :subscription
8
- # @return [Invoice]
9
- has_one :invoice
10
- # @return [Transaction]
11
- has_one :transaction
12
- end
13
- end
14
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class ExpiredSubscriptionNotification < SubscriptionNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class FailedChargeInvoiceNotification < InvoiceNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class FailedPaymentNotification < TransactionNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class FraudInfoUpdatedNotification < TransactionNotification
4
- end
5
- end
6
- end
@@ -1,8 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class GiftCardNotification < Notification
4
- has_one :gift_card
5
-
6
- end
7
- end
8
- end
@@ -1,12 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- # The InvoiceNotification class provides a generic interface
4
- # for account-related webhook notifications.
5
- class InvoiceNotification < Notification
6
- # @return [Account]
7
- has_one :account
8
- # @return [Invoice]
9
- has_one :invoice
10
- end
11
- end
12
- end
@@ -1,7 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class ItemNotification < Notification
4
- has_one :item
5
- end
6
- end
7
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class LowBalanceGiftCardNotification < SubscriptionNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class NewAccountNotification < AccountNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class NewChargeInvoiceNotification < InvoiceNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class NewCreditInvoiceNotification < InvoiceNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class NewCreditPaymentNotification < CreditPaymentNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class NewDunningEventNotification < DunningNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class NewInvoiceNotification < InvoiceNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class NewItemNotification < ItemNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class NewShippingAddressNotification < AccountNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class NewSubscriptionNotification < SubscriptionNotification
4
- end
5
- end
6
- end
@@ -1,8 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class NewUsageNotification < AccountNotification
4
- # @return [Usage]
5
- has_one :usage
6
- end
7
- end
8
- end
@@ -1,18 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- # The Notification class provides a generic interface
4
- # for account-related webhook notifications.
5
- class Notification < Resource
6
- # Provides a convenience method to reload assocated members because Webhook
7
- # notifications are not to be considered current.
8
- def self.has_one member_name, options = {}
9
- define_method("#{member_name}!") do
10
- member = self[member_name]
11
- member.reload if member
12
- end
13
-
14
- super
15
- end
16
- end
17
- end
18
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class PaidChargeInvoiceNotification < InvoiceNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class PastDueChargeInvoiceNotification < InvoiceNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class PastDueInvoiceNotification < InvoiceNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class PausedSubscriptionRenewalNotification < SubscriptionNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class PrerenewalNotification < SubscriptionNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class ProcessingChargeInvoiceNotification < InvoiceNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class ProcessingCreditInvoiceNotification < InvoiceNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class ProcessingInvoiceNotification < InvoiceNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class ProcessingPaymentNotification < TransactionNotification
4
- end
5
- end
6
- end
@@ -1,7 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class PurchasedGiftCardNotification < GiftCardNotification
4
-
5
- end
6
- end
7
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class ReactivatedAccountNotification < SubscriptionNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class ReactivatedItemNotification < ItemNotification
4
- end
5
- end
6
- end
@@ -1,7 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class RedeemedGiftCardNotification < GiftCardNotification
4
-
5
- end
6
- end
7
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class RegeneratedGiftCardNotification < GiftCardNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class RenewedSubscriptionNotification < SubscriptionNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class ReopenedChargeInvoiceNotification < InvoiceNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class ReopenedCreditInvoiceNotification < InvoiceNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class ScheduledPaymentNotification < TransactionNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class ScheduledSubscriptionPauseNotification < SubscriptionNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class ScheduledSubscriptionUpdateNotification < SubscriptionNotification
4
- end
5
- end
6
- end
@@ -1,12 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- # The SubscriptionNotification class provides a generic interface
4
- # for account-related webhook notifications.
5
- class SubscriptionNotification < Notification
6
- # @return [Account]
7
- has_one :account
8
- # @return [Subscription]
9
- has_one :subscription
10
- end
11
- end
12
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class SubscriptionPauseCanceledNotification < SubscriptionNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class SubscriptionPauseModifiedNotification < SubscriptionNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class SubscriptionPausedNotification < SubscriptionNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class SubscriptionResumedNotification < SubscriptionNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class SuccessfulPaymentNotification < TransactionNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class SuccessfulRefundNotification < TransactionNotification
4
- end
5
- end
6
- end
@@ -1,6 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- class TransactionAuthorizedNotification < TransactionNotification
4
- end
5
- end
6
- end
@@ -1,12 +0,0 @@
1
- module Recurly
2
- module Webhook
3
- # The TransactionNotification class provides a generic interface
4
- # for account-related webhook notifications.
5
- class TransactionNotification < Notification
6
- # @return [Account]
7
- has_one :account
8
- # @return [Transaction]
9
- has_one :transaction
10
- end
11
- end
12
- end