recurly 2.19.3 → 3.0.0.beta.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +14 -0
- data/.rspec +2 -0
- data/.travis.yml +5 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +21 -0
- data/README.md +158 -110
- data/Rakefile +6 -0
- data/bin/bundle +105 -0
- data/bin/coderay +29 -0
- data/bin/console +14 -0
- data/bin/htmldiff +29 -0
- data/bin/ldiff +29 -0
- data/bin/pry +29 -0
- data/bin/rake +29 -0
- data/bin/rspec +29 -0
- data/bin/setup +8 -0
- data/bin/yard +29 -0
- data/bin/yardoc +29 -0
- data/bin/yri +29 -0
- data/lib/data/ca-certificates.crt +31 -0
- data/lib/recurly/client/operations.rb +935 -0
- data/lib/recurly/client.rb +198 -0
- data/lib/recurly/errors/api_errors.rb +35 -0
- data/lib/recurly/errors/network_errors.rb +8 -0
- data/lib/recurly/errors.rb +34 -0
- data/lib/recurly/pager.rb +119 -0
- data/lib/recurly/request.rb +30 -0
- data/lib/recurly/requests/account_acquisition_updatable.rb +22 -0
- data/lib/recurly/requests/account_create_only.rb +18 -0
- data/lib/recurly/requests/account_updatable.rb +50 -0
- data/lib/recurly/requests/add_on_create.rb +38 -0
- data/lib/recurly/requests/add_on_update.rb +38 -0
- data/lib/recurly/requests/address.rb +42 -0
- data/lib/recurly/requests/billing_info_create.rb +58 -0
- data/lib/recurly/requests/coupon_create_only.rb +66 -0
- data/lib/recurly/requests/coupon_updatable.rb +30 -0
- data/lib/recurly/requests/create_account.rb +62 -0
- data/lib/recurly/requests/create_coupon.rb +90 -0
- data/lib/recurly/requests/invoice_create.rb +42 -0
- data/lib/recurly/requests/invoice_refund.rb +30 -0
- data/lib/recurly/requests/line_item_create.rb +46 -0
- data/lib/recurly/requests/plan_create.rb +66 -0
- data/lib/recurly/requests/plan_update.rb +70 -0
- data/lib/recurly/requests/shipping_address_create.rb +58 -0
- data/lib/recurly/requests/shipping_address_update.rb +62 -0
- data/lib/recurly/requests/subscription_add_on_create.rb +22 -0
- data/lib/recurly/requests/subscription_change_create.rb +42 -0
- data/lib/recurly/requests/subscription_create.rb +86 -0
- data/lib/recurly/requests/subscription_update.rb +42 -0
- data/lib/recurly/requests/update_coupon.rb +30 -0
- data/lib/recurly/resource.rb +16 -1113
- data/lib/recurly/resources/account.rb +86 -0
- data/lib/recurly/resources/account_acquisition.rb +42 -0
- data/lib/recurly/resources/account_balance.rb +22 -0
- data/lib/recurly/resources/account_note.rb +30 -0
- data/lib/recurly/resources/add_on.rb +62 -0
- data/lib/recurly/resources/address.rb +42 -0
- data/lib/recurly/resources/billing_info.rb +62 -0
- data/lib/recurly/resources/coupon.rb +110 -0
- data/lib/recurly/resources/coupon_discount.rb +22 -0
- data/lib/recurly/resources/coupon_redemption.rb +46 -0
- data/lib/recurly/resources/credit_payment.rb +62 -0
- data/lib/recurly/resources/error.rb +18 -0
- data/lib/recurly/resources/error_may_have_transaction.rb +22 -0
- data/lib/recurly/resources/invoice.rb +138 -0
- data/lib/recurly/resources/invoice_collection.rb +18 -0
- data/lib/recurly/resources/line_item.rb +166 -0
- data/lib/recurly/resources/plan.rb +86 -0
- data/lib/recurly/resources/settings.rb +18 -0
- data/lib/recurly/resources/shipping_address.rb +74 -0
- data/lib/recurly/resources/site.rb +46 -0
- data/lib/recurly/resources/subscription.rb +134 -0
- data/lib/recurly/resources/subscription_add_on.rb +42 -0
- data/lib/recurly/resources/subscription_change.rb +54 -0
- data/lib/recurly/resources/tax_info.rb +18 -0
- data/lib/recurly/resources/transaction.rb +146 -0
- data/lib/recurly/resources/unique_coupon_code.rb +38 -0
- data/lib/recurly/resources/user.rb +38 -0
- data/lib/recurly/schema/json_deserializer.rb +53 -0
- data/lib/recurly/schema/json_parser.rb +71 -0
- data/lib/recurly/schema/request_caster.rb +66 -0
- data/lib/recurly/schema/schema_factory.rb +50 -0
- data/lib/recurly/schema/schema_validator.rb +125 -0
- data/lib/recurly/schema.rb +114 -0
- data/lib/recurly/version.rb +1 -10
- data/lib/recurly.rb +14 -162
- data/recurly.gemspec +32 -0
- data/scripts/build +4 -0
- data/scripts/clean +6 -0
- data/scripts/test +3 -0
- metadata +129 -190
- data/lib/recurly/account.rb +0 -227
- data/lib/recurly/account_acquisition.rb +0 -27
- data/lib/recurly/account_balance.rb +0 -23
- data/lib/recurly/add_on.rb +0 -52
- data/lib/recurly/address.rb +0 -25
- data/lib/recurly/adjustment.rb +0 -98
- data/lib/recurly/api/errors.rb +0 -208
- data/lib/recurly/api/net_http_adapter.rb +0 -111
- data/lib/recurly/api.rb +0 -110
- data/lib/recurly/billing_info.rb +0 -131
- data/lib/recurly/coupon.rb +0 -136
- data/lib/recurly/credit_payment.rb +0 -32
- data/lib/recurly/currency_percentage_tier.rb +0 -17
- data/lib/recurly/custom_field.rb +0 -15
- data/lib/recurly/custom_field_definition.rb +0 -14
- data/lib/recurly/customer_permission.rb +0 -10
- data/lib/recurly/delivery.rb +0 -19
- data/lib/recurly/dunning_campaign.rb +0 -30
- data/lib/recurly/dunning_cycle.rb +0 -18
- data/lib/recurly/entitlement.rb +0 -19
- data/lib/recurly/error.rb +0 -13
- data/lib/recurly/external_account.rb +0 -17
- data/lib/recurly/external_charge.rb +0 -20
- data/lib/recurly/external_invoice.rb +0 -26
- data/lib/recurly/external_product.rb +0 -20
- data/lib/recurly/external_product_reference.rb +0 -18
- data/lib/recurly/external_subscription.rb +0 -32
- data/lib/recurly/gift_card.rb +0 -85
- data/lib/recurly/helper.rb +0 -51
- data/lib/recurly/invoice.rb +0 -318
- data/lib/recurly/invoice_collection.rb +0 -14
- data/lib/recurly/invoice_template.rb +0 -14
- data/lib/recurly/item.rb +0 -36
- data/lib/recurly/js.rb +0 -14
- data/lib/recurly/juris_detail.rb +0 -15
- data/lib/recurly/measured_unit.rb +0 -16
- data/lib/recurly/money.rb +0 -120
- data/lib/recurly/note.rb +0 -14
- data/lib/recurly/percentage_tier.rb +0 -17
- data/lib/recurly/plan.rb +0 -56
- data/lib/recurly/plan_ramp_interval.rb +0 -10
- data/lib/recurly/purchase.rb +0 -238
- data/lib/recurly/redemption.rb +0 -46
- data/lib/recurly/resource/association.rb +0 -16
- data/lib/recurly/resource/errors.rb +0 -20
- data/lib/recurly/resource/pager.rb +0 -313
- data/lib/recurly/shipping_address.rb +0 -26
- data/lib/recurly/shipping_fee.rb +0 -17
- data/lib/recurly/shipping_method.rb +0 -13
- data/lib/recurly/sub_add_on_percentage_tier.rb +0 -17
- data/lib/recurly/subscription/add_ons.rb +0 -82
- data/lib/recurly/subscription.rb +0 -371
- data/lib/recurly/subscription_add_on.rb +0 -64
- data/lib/recurly/subscription_ramp_interval.rb +0 -10
- data/lib/recurly/tax_detail.rb +0 -18
- data/lib/recurly/tax_type.rb +0 -13
- data/lib/recurly/tier.rb +0 -18
- data/lib/recurly/transaction/errors.rb +0 -119
- data/lib/recurly/transaction.rb +0 -131
- data/lib/recurly/usage.rb +0 -29
- data/lib/recurly/verify.rb +0 -12
- data/lib/recurly/webhook/account_notification.rb +0 -13
- data/lib/recurly/webhook/billing_info_update_failed_notification.rb +0 -6
- data/lib/recurly/webhook/billing_info_updated_notification.rb +0 -6
- data/lib/recurly/webhook/canceled_account_notification.rb +0 -6
- data/lib/recurly/webhook/canceled_gift_card_notification.rb +0 -6
- data/lib/recurly/webhook/canceled_subscription_notification.rb +0 -6
- data/lib/recurly/webhook/closed_credit_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/closed_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/credit_payment_notification.rb +0 -12
- data/lib/recurly/webhook/deactivated_item_notification.rb +0 -6
- data/lib/recurly/webhook/deleted_shipping_address_notification.rb +0 -6
- data/lib/recurly/webhook/dunning_notification.rb +0 -14
- data/lib/recurly/webhook/expired_subscription_notification.rb +0 -6
- data/lib/recurly/webhook/failed_charge_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/failed_payment_notification.rb +0 -6
- data/lib/recurly/webhook/fraud_info_updated_notification.rb +0 -6
- data/lib/recurly/webhook/gift_card_notification.rb +0 -8
- data/lib/recurly/webhook/invoice_notification.rb +0 -12
- data/lib/recurly/webhook/item_notification.rb +0 -7
- data/lib/recurly/webhook/low_balance_gift_card_notification.rb +0 -6
- data/lib/recurly/webhook/new_account_notification.rb +0 -6
- data/lib/recurly/webhook/new_charge_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/new_credit_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/new_credit_payment_notification.rb +0 -6
- data/lib/recurly/webhook/new_dunning_event_notification.rb +0 -6
- data/lib/recurly/webhook/new_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/new_item_notification.rb +0 -6
- data/lib/recurly/webhook/new_shipping_address_notification.rb +0 -6
- data/lib/recurly/webhook/new_subscription_notification.rb +0 -6
- data/lib/recurly/webhook/new_usage_notification.rb +0 -8
- data/lib/recurly/webhook/notification.rb +0 -18
- data/lib/recurly/webhook/paid_charge_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/past_due_charge_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/past_due_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/paused_subscription_renewal_notification.rb +0 -6
- data/lib/recurly/webhook/prerenewal_notification.rb +0 -6
- data/lib/recurly/webhook/processing_charge_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/processing_credit_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/processing_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/processing_payment_notification.rb +0 -6
- data/lib/recurly/webhook/purchased_gift_card_notification.rb +0 -7
- data/lib/recurly/webhook/reactivated_account_notification.rb +0 -6
- data/lib/recurly/webhook/reactivated_item_notification.rb +0 -6
- data/lib/recurly/webhook/redeemed_gift_card_notification.rb +0 -7
- data/lib/recurly/webhook/regenerated_gift_card_notification.rb +0 -6
- data/lib/recurly/webhook/renewed_subscription_notification.rb +0 -6
- data/lib/recurly/webhook/reopened_charge_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/reopened_credit_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/scheduled_payment_notification.rb +0 -6
- data/lib/recurly/webhook/scheduled_subscription_pause_notification.rb +0 -6
- data/lib/recurly/webhook/scheduled_subscription_update_notification.rb +0 -6
- data/lib/recurly/webhook/subscription_notification.rb +0 -12
- data/lib/recurly/webhook/subscription_pause_canceled_notification.rb +0 -6
- data/lib/recurly/webhook/subscription_pause_modified_notification.rb +0 -6
- data/lib/recurly/webhook/subscription_paused_notification.rb +0 -6
- data/lib/recurly/webhook/subscription_resumed_notification.rb +0 -6
- data/lib/recurly/webhook/successful_payment_notification.rb +0 -6
- data/lib/recurly/webhook/successful_refund_notification.rb +0 -6
- data/lib/recurly/webhook/transaction_authorized_notification.rb +0 -6
- data/lib/recurly/webhook/transaction_notification.rb +0 -12
- data/lib/recurly/webhook/transaction_status_updated_notification.rb +0 -6
- data/lib/recurly/webhook/updated_account_notification.rb +0 -6
- data/lib/recurly/webhook/updated_balance_gift_card_notification.rb +0 -7
- data/lib/recurly/webhook/updated_gift_card_notification.rb +0 -6
- data/lib/recurly/webhook/updated_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/updated_item_notification.rb +0 -6
- data/lib/recurly/webhook/updated_shipping_address_notification.rb +0 -6
- data/lib/recurly/webhook/updated_subscription_notification.rb +0 -6
- data/lib/recurly/webhook/void_payment_notification.rb +0 -6
- data/lib/recurly/webhook/voided_credit_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/voided_credit_payment_notification.rb +0 -6
- data/lib/recurly/webhook.rb +0 -113
- data/lib/recurly/xml/nokogiri.rb +0 -60
- data/lib/recurly/xml/rexml.rb +0 -52
- data/lib/recurly/xml.rb +0 -122
@@ -0,0 +1,58 @@
|
|
1
|
+
module Recurly
|
2
|
+
module Requests
|
3
|
+
class BillingInfoCreate < Request
|
4
|
+
|
5
|
+
# @!attribute address
|
6
|
+
# @return [Address]
|
7
|
+
define_attribute :address, :Address
|
8
|
+
|
9
|
+
# @!attribute amazon_billing_agreement_id
|
10
|
+
# @return [String] Amazon billing agreement ID
|
11
|
+
define_attribute :amazon_billing_agreement_id, String
|
12
|
+
|
13
|
+
# @!attribute company
|
14
|
+
# @return [String] Company name
|
15
|
+
define_attribute :company, String
|
16
|
+
|
17
|
+
# @!attribute cvv
|
18
|
+
# @return [String] *STRONGLY RECOMMENDED*
|
19
|
+
define_attribute :cvv, String
|
20
|
+
|
21
|
+
# @!attribute first_name
|
22
|
+
# @return [String] First name
|
23
|
+
define_attribute :first_name, String
|
24
|
+
|
25
|
+
# @!attribute ip_address
|
26
|
+
# @return [String] *STRONGLY RECOMMENDED* Customer's IP address when updating their billing information.
|
27
|
+
define_attribute :ip_address, String
|
28
|
+
|
29
|
+
# @!attribute last_name
|
30
|
+
# @return [String] Last name
|
31
|
+
define_attribute :last_name, String
|
32
|
+
|
33
|
+
# @!attribute month
|
34
|
+
# @return [String] Expiration month
|
35
|
+
define_attribute :month, String
|
36
|
+
|
37
|
+
# @!attribute number
|
38
|
+
# @return [String] Credit card number, spaces and dashes are accepted.
|
39
|
+
define_attribute :number, String
|
40
|
+
|
41
|
+
# @!attribute paypal_billing_agreement_id
|
42
|
+
# @return [String] PayPal billing agreement ID
|
43
|
+
define_attribute :paypal_billing_agreement_id, String
|
44
|
+
|
45
|
+
# @!attribute token_id
|
46
|
+
# @return [String] A token [generated by Recurly.js](https://docs.recurly.com/js/#getting-a-token).
|
47
|
+
define_attribute :token_id, String
|
48
|
+
|
49
|
+
# @!attribute vat_number
|
50
|
+
# @return [String] VAT number
|
51
|
+
define_attribute :vat_number, String
|
52
|
+
|
53
|
+
# @!attribute year
|
54
|
+
# @return [String] Expiration year
|
55
|
+
define_attribute :year, String
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
@@ -0,0 +1,66 @@
|
|
1
|
+
module Recurly
|
2
|
+
module Requests
|
3
|
+
class CouponCreateOnly < Request
|
4
|
+
|
5
|
+
# @!attribute applies_to_all_plans
|
6
|
+
# @return [Boolean] The coupon is valid for all plans if true. If false then `plans` and `plans_names` will list the applicable plans.
|
7
|
+
define_attribute :applies_to_all_plans, :Boolean
|
8
|
+
|
9
|
+
# @!attribute applies_to_non_plan_charges
|
10
|
+
# @return [Boolean] The coupon is valid for one-time, non-plan charges if true.
|
11
|
+
define_attribute :applies_to_non_plan_charges, :Boolean
|
12
|
+
|
13
|
+
# @!attribute code
|
14
|
+
# @return [String] The code the customer enters to redeem the coupon.
|
15
|
+
define_attribute :code, String
|
16
|
+
|
17
|
+
# @!attribute coupon_type
|
18
|
+
# @return [String] Whether the coupon is "single_code" or "bulk". Bulk coupons will require a `unique_code_template` and will generate unique codes through the `/generate` endpoint.
|
19
|
+
define_attribute :coupon_type, String, {:enum => ["single_code", "bulk"]}
|
20
|
+
|
21
|
+
# @!attribute currencies
|
22
|
+
# @return [Array[String]] Fixed discount currencies by currency. Required if the coupon type is `fixed`. This parameter should contain the coupon discount values
|
23
|
+
define_attribute :currencies, Array, {:item_type => String}
|
24
|
+
|
25
|
+
# @!attribute discount_percent
|
26
|
+
# @return [Integer] The percent of the price discounted by the coupon. Required if `discount_type` is `percent`.
|
27
|
+
define_attribute :discount_percent, Integer
|
28
|
+
|
29
|
+
# @!attribute discount_type
|
30
|
+
# @return [String] The type of discount provided by the coupon (how the amount discounted is calculated)
|
31
|
+
define_attribute :discount_type, String, {:enum => ["percent", "fixed", "free_trial"]}
|
32
|
+
|
33
|
+
# @!attribute duration
|
34
|
+
# @return [String] This field does not apply when the discount_type is `free_trial`. - "single_use" coupons applies to the first invoice only. - "temporal" coupons will apply to invoices for the duration determined by the `temporal_unit` and `temporal_amount` attributes. - "forever" coupons will apply to invoices forever.
|
35
|
+
define_attribute :duration, String, {:enum => ["forever", "single_use", "temporal"]}
|
36
|
+
|
37
|
+
# @!attribute free_trial_amount
|
38
|
+
# @return [Integer] Sets the duration of time the `free_trial_unit` is for. Required if `discount_type` is `free_trial`.
|
39
|
+
define_attribute :free_trial_amount, Integer
|
40
|
+
|
41
|
+
# @!attribute free_trial_unit
|
42
|
+
# @return [String] Description of the unit of time the coupon is for. Used with `free_trial_amount` to determine the duration of time the coupon is for. Required if `discount_type` is `free_trial`.
|
43
|
+
define_attribute :free_trial_unit, String, {:enum => ["day", "week", "month"]}
|
44
|
+
|
45
|
+
# @!attribute plan_codes
|
46
|
+
# @return [Array[String]] List of plan codes to which this coupon applies. See `applies_to_all_plans`
|
47
|
+
define_attribute :plan_codes, Array, {:item_type => String}
|
48
|
+
|
49
|
+
# @!attribute redemption_resource
|
50
|
+
# @return [String] Whether the discount is for all eligible charges on the account, or only a specific subscription.
|
51
|
+
define_attribute :redemption_resource, String, {:enum => ["account", "subscription"]}
|
52
|
+
|
53
|
+
# @!attribute temporal_amount
|
54
|
+
# @return [Integer] If `duration` is "temporal" than `temporal_amount` is an integer which is multiplied by `temporal_unit` to define the duration that the coupon will be applied to invoices for.
|
55
|
+
define_attribute :temporal_amount, Integer
|
56
|
+
|
57
|
+
# @!attribute temporal_unit
|
58
|
+
# @return [String] If `duration` is "temporal" than `temporal_unit` is multiplied by `temporal_amount` to define the duration that the coupon will be applied to invoices for.
|
59
|
+
define_attribute :temporal_unit, String, {:enum => ["day", "week", "month", "year"]}
|
60
|
+
|
61
|
+
# @!attribute unique_code_template
|
62
|
+
# @return [String] On a bulk coupon, the template from which unique coupon codes are generated. - You must start the template with your coupon_code wrapped in single quotes. - Outside of single quotes, use a 9 for a character that you want to be a random number. - Outside of single quotes, use an "x" for a character that you want to be a random letter. - Outside of single quotes, use an * for a character that you want to be a random number or letter. - Use single quotes ' ' for characters that you want to remain static. These strings can be alphanumeric and may contain a - _ or +. For example: "'abc-'****'-def'"
|
63
|
+
define_attribute :unique_code_template, String
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
module Recurly
|
2
|
+
module Requests
|
3
|
+
class CouponUpdatable < Request
|
4
|
+
|
5
|
+
# @!attribute hosted_description
|
6
|
+
# @return [String] This description will show up when a customer redeems a coupon on your Hosted Payment Pages, or if you choose to show the description on your own checkout page.
|
7
|
+
define_attribute :hosted_description, String
|
8
|
+
|
9
|
+
# @!attribute invoice_description
|
10
|
+
# @return [String] Description of the coupon on the invoice.
|
11
|
+
define_attribute :invoice_description, String
|
12
|
+
|
13
|
+
# @!attribute max_redemptions
|
14
|
+
# @return [Integer] A maximum number of redemptions for the coupon. The coupon will expire when it hits its maximum redemptions.
|
15
|
+
define_attribute :max_redemptions, Integer
|
16
|
+
|
17
|
+
# @!attribute max_redemptions_per_account
|
18
|
+
# @return [Integer] Redemptions per account is the number of times a specific account can redeem the coupon. Set redemptions per account to `1` if you want to keep customers from gaming the system and getting more than one discount from the coupon campaign.
|
19
|
+
define_attribute :max_redemptions_per_account, Integer
|
20
|
+
|
21
|
+
# @!attribute name
|
22
|
+
# @return [String] The internal name for the coupon.
|
23
|
+
define_attribute :name, String
|
24
|
+
|
25
|
+
# @!attribute redeem_by_date
|
26
|
+
# @return [String] The date and time the coupon will expire and can no longer be redeemed. Time is always 11:59:59, the end-of-day Pacific time.
|
27
|
+
define_attribute :redeem_by_date, String
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,62 @@
|
|
1
|
+
module Recurly
|
2
|
+
module Requests
|
3
|
+
class CreateAccount < Request
|
4
|
+
|
5
|
+
# @!attribute acquisition
|
6
|
+
# @return [AccountAcquisitionUpdatable]
|
7
|
+
define_attribute :acquisition, :AccountAcquisitionUpdatable
|
8
|
+
|
9
|
+
# @!attribute address
|
10
|
+
# @return [Address]
|
11
|
+
define_attribute :address, :Address
|
12
|
+
|
13
|
+
# @!attribute billing_info
|
14
|
+
# @return [BillingInfoCreate]
|
15
|
+
define_attribute :billing_info, :BillingInfoCreate
|
16
|
+
|
17
|
+
# @!attribute cc_emails
|
18
|
+
# @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.
|
19
|
+
define_attribute :cc_emails, String
|
20
|
+
|
21
|
+
# @!attribute code
|
22
|
+
# @return [String] The unique identifier of the account. This cannot be changed once the account is created.
|
23
|
+
define_attribute :code, String
|
24
|
+
|
25
|
+
# @!attribute company
|
26
|
+
# @return [String]
|
27
|
+
define_attribute :company, String
|
28
|
+
|
29
|
+
# @!attribute email
|
30
|
+
# @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.
|
31
|
+
define_attribute :email, String
|
32
|
+
|
33
|
+
# @!attribute first_name
|
34
|
+
# @return [String]
|
35
|
+
define_attribute :first_name, String
|
36
|
+
|
37
|
+
# @!attribute last_name
|
38
|
+
# @return [String]
|
39
|
+
define_attribute :last_name, String
|
40
|
+
|
41
|
+
# @!attribute preferred_locale
|
42
|
+
# @return [String] Used to determine the language and locale of emails sent on behalf of the merchant to the customer. The list of locales is restricted to those the merchant has enabled on the site.
|
43
|
+
define_attribute :preferred_locale, String, {:enum => ["da-DK", "de-CH", "de-DE", "en-AU", "en-CA", "en-GB", "en-NZ", "en-US", "es-ES", "es-MX", "es-US", "fr-CA", "fr-FR", "hi-IN", "ja-JP", "nl-BE", "nl-NL", "pt-BR", "pt-PT", "ru-RU", "tr-TR", "zh-CN"]}
|
44
|
+
|
45
|
+
# @!attribute shipping_addresses
|
46
|
+
# @return [Array[ShippingAddressCreate]]
|
47
|
+
define_attribute :shipping_addresses, Array, {:item_type => :ShippingAddressCreate}
|
48
|
+
|
49
|
+
# @!attribute tax_exempt
|
50
|
+
# @return [Boolean] The tax status of the account. `true` exempts tax on the account, `false` applies tax on the account.
|
51
|
+
define_attribute :tax_exempt, :Boolean
|
52
|
+
|
53
|
+
# @!attribute username
|
54
|
+
# @return [String] A secondary value for the account.
|
55
|
+
define_attribute :username, String
|
56
|
+
|
57
|
+
# @!attribute vat_number
|
58
|
+
# @return [String] The VAT number of the account (to avoid having the VAT applied). This is only used for manually collected invoices.
|
59
|
+
define_attribute :vat_number, String
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
@@ -0,0 +1,90 @@
|
|
1
|
+
module Recurly
|
2
|
+
module Requests
|
3
|
+
class CreateCoupon < Request
|
4
|
+
|
5
|
+
# @!attribute applies_to_all_plans
|
6
|
+
# @return [Boolean] The coupon is valid for all plans if true. If false then `plans` and `plans_names` will list the applicable plans.
|
7
|
+
define_attribute :applies_to_all_plans, :Boolean
|
8
|
+
|
9
|
+
# @!attribute applies_to_non_plan_charges
|
10
|
+
# @return [Boolean] The coupon is valid for one-time, non-plan charges if true.
|
11
|
+
define_attribute :applies_to_non_plan_charges, :Boolean
|
12
|
+
|
13
|
+
# @!attribute code
|
14
|
+
# @return [String] The code the customer enters to redeem the coupon.
|
15
|
+
define_attribute :code, String
|
16
|
+
|
17
|
+
# @!attribute coupon_type
|
18
|
+
# @return [String] Whether the coupon is "single_code" or "bulk". Bulk coupons will require a `unique_code_template` and will generate unique codes through the `/generate` endpoint.
|
19
|
+
define_attribute :coupon_type, String, {:enum => ["single_code", "bulk"]}
|
20
|
+
|
21
|
+
# @!attribute currencies
|
22
|
+
# @return [Array[String]] Fixed discount currencies by currency. Required if the coupon type is `fixed`. This parameter should contain the coupon discount values
|
23
|
+
define_attribute :currencies, Array, {:item_type => String}
|
24
|
+
|
25
|
+
# @!attribute discount_percent
|
26
|
+
# @return [Integer] The percent of the price discounted by the coupon. Required if `discount_type` is `percent`.
|
27
|
+
define_attribute :discount_percent, Integer
|
28
|
+
|
29
|
+
# @!attribute discount_type
|
30
|
+
# @return [String] The type of discount provided by the coupon (how the amount discounted is calculated)
|
31
|
+
define_attribute :discount_type, String, {:enum => ["percent", "fixed", "free_trial"]}
|
32
|
+
|
33
|
+
# @!attribute duration
|
34
|
+
# @return [String] This field does not apply when the discount_type is `free_trial`. - "single_use" coupons applies to the first invoice only. - "temporal" coupons will apply to invoices for the duration determined by the `temporal_unit` and `temporal_amount` attributes. - "forever" coupons will apply to invoices forever.
|
35
|
+
define_attribute :duration, String, {:enum => ["forever", "single_use", "temporal"]}
|
36
|
+
|
37
|
+
# @!attribute free_trial_amount
|
38
|
+
# @return [Integer] Sets the duration of time the `free_trial_unit` is for. Required if `discount_type` is `free_trial`.
|
39
|
+
define_attribute :free_trial_amount, Integer
|
40
|
+
|
41
|
+
# @!attribute free_trial_unit
|
42
|
+
# @return [String] Description of the unit of time the coupon is for. Used with `free_trial_amount` to determine the duration of time the coupon is for. Required if `discount_type` is `free_trial`.
|
43
|
+
define_attribute :free_trial_unit, String, {:enum => ["day", "week", "month"]}
|
44
|
+
|
45
|
+
# @!attribute hosted_description
|
46
|
+
# @return [String] This description will show up when a customer redeems a coupon on your Hosted Payment Pages, or if you choose to show the description on your own checkout page.
|
47
|
+
define_attribute :hosted_description, String
|
48
|
+
|
49
|
+
# @!attribute invoice_description
|
50
|
+
# @return [String] Description of the coupon on the invoice.
|
51
|
+
define_attribute :invoice_description, String
|
52
|
+
|
53
|
+
# @!attribute max_redemptions
|
54
|
+
# @return [Integer] A maximum number of redemptions for the coupon. The coupon will expire when it hits its maximum redemptions.
|
55
|
+
define_attribute :max_redemptions, Integer
|
56
|
+
|
57
|
+
# @!attribute max_redemptions_per_account
|
58
|
+
# @return [Integer] Redemptions per account is the number of times a specific account can redeem the coupon. Set redemptions per account to `1` if you want to keep customers from gaming the system and getting more than one discount from the coupon campaign.
|
59
|
+
define_attribute :max_redemptions_per_account, Integer
|
60
|
+
|
61
|
+
# @!attribute name
|
62
|
+
# @return [String] The internal name for the coupon.
|
63
|
+
define_attribute :name, String
|
64
|
+
|
65
|
+
# @!attribute plan_codes
|
66
|
+
# @return [Array[String]] List of plan codes to which this coupon applies. See `applies_to_all_plans`
|
67
|
+
define_attribute :plan_codes, Array, {:item_type => String}
|
68
|
+
|
69
|
+
# @!attribute redeem_by_date
|
70
|
+
# @return [String] The date and time the coupon will expire and can no longer be redeemed. Time is always 11:59:59, the end-of-day Pacific time.
|
71
|
+
define_attribute :redeem_by_date, String
|
72
|
+
|
73
|
+
# @!attribute redemption_resource
|
74
|
+
# @return [String] Whether the discount is for all eligible charges on the account, or only a specific subscription.
|
75
|
+
define_attribute :redemption_resource, String, {:enum => ["account", "subscription"]}
|
76
|
+
|
77
|
+
# @!attribute temporal_amount
|
78
|
+
# @return [Integer] If `duration` is "temporal" than `temporal_amount` is an integer which is multiplied by `temporal_unit` to define the duration that the coupon will be applied to invoices for.
|
79
|
+
define_attribute :temporal_amount, Integer
|
80
|
+
|
81
|
+
# @!attribute temporal_unit
|
82
|
+
# @return [String] If `duration` is "temporal" than `temporal_unit` is multiplied by `temporal_amount` to define the duration that the coupon will be applied to invoices for.
|
83
|
+
define_attribute :temporal_unit, String, {:enum => ["day", "week", "month", "year"]}
|
84
|
+
|
85
|
+
# @!attribute unique_code_template
|
86
|
+
# @return [String] On a bulk coupon, the template from which unique coupon codes are generated. - You must start the template with your coupon_code wrapped in single quotes. - Outside of single quotes, use a 9 for a character that you want to be a random number. - Outside of single quotes, use an "x" for a character that you want to be a random letter. - Outside of single quotes, use an * for a character that you want to be a random number or letter. - Use single quotes ' ' for characters that you want to remain static. These strings can be alphanumeric and may contain a - _ or +. For example: "'abc-'****'-def'"
|
87
|
+
define_attribute :unique_code_template, String
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
module Recurly
|
2
|
+
module Requests
|
3
|
+
class InvoiceCreate < Request
|
4
|
+
|
5
|
+
# @!attribute charge_customer_notes
|
6
|
+
# @return [String] This will default to the Customer Notes text specified on the Invoice Settings for charge invoices. Specify custom notes to add or override Customer Notes on charge invoices.
|
7
|
+
define_attribute :charge_customer_notes, String
|
8
|
+
|
9
|
+
# @!attribute collection_method
|
10
|
+
# @return [String] An automatic invoice means a corresponding transaction is run using the account's billing information at the same time the invoice is created. Manual invoices are created without a corresponding transaction. The merchant must enter a manual payment transaction or have the customer pay the invoice with an automatic method, like credit card, PayPal, Amazon, or ACH bank payment.
|
11
|
+
define_attribute :collection_method, String, {:enum => ["automatic", "manual"]}
|
12
|
+
|
13
|
+
# @!attribute credit_customer_notes
|
14
|
+
# @return [String] This will default to the Customer Notes text specified on the Invoice Settings for credit invoices. Specify customer notes to add or override Customer Notes on credit invoices.
|
15
|
+
define_attribute :credit_customer_notes, String
|
16
|
+
|
17
|
+
# @!attribute currency
|
18
|
+
# @return [String] 3-letter ISO 4217 currency code.
|
19
|
+
define_attribute :currency, String
|
20
|
+
|
21
|
+
# @!attribute net_terms
|
22
|
+
# @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.
|
23
|
+
define_attribute :net_terms, Integer
|
24
|
+
|
25
|
+
# @!attribute po_number
|
26
|
+
# @return [String] For manual invoicing, this identifies the PO number associated with the subscription.
|
27
|
+
define_attribute :po_number, String
|
28
|
+
|
29
|
+
# @!attribute terms_and_conditions
|
30
|
+
# @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.
|
31
|
+
define_attribute :terms_and_conditions, String
|
32
|
+
|
33
|
+
# @!attribute type
|
34
|
+
# @return [String] Specify a type to limit the type of line items that will be invoiced.
|
35
|
+
define_attribute :type, String, {:enum => ["charge", "credit"]}
|
36
|
+
|
37
|
+
# @!attribute vat_reverse_charge_notes
|
38
|
+
# @return [String] VAT Reverse Charge Notes only appear if you have EU VAT enabled or are using your own Avalara AvaTax account and the customer is in the EU, has a VAT number, and is in a different country than your own. This will default to the VAT Reverse Charge Notes text specified on the Tax Settings page in your Recurly admin, unless custom notes were created with the original subscription.
|
39
|
+
define_attribute :vat_reverse_charge_notes, String
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
module Recurly
|
2
|
+
module Requests
|
3
|
+
class InvoiceRefund < Request
|
4
|
+
|
5
|
+
# @!attribute amount
|
6
|
+
# @return [Integer] The amount to be refunded. The amount will be split between the line items. If no amount is specified, it will default to refunding the total refundable amount on the invoice.
|
7
|
+
define_attribute :amount, Integer
|
8
|
+
|
9
|
+
# @!attribute credit_customer_notes
|
10
|
+
# @return [String] Used as the Customer Notes on the credit invoice. This field can only be include when the Credit Invoices feature is enabled.
|
11
|
+
define_attribute :credit_customer_notes, String
|
12
|
+
|
13
|
+
# @!attribute external_refund
|
14
|
+
# @return [Hash] Indicates that the refund was settled outside of Recurly, and a manual transaction should be created to track it in Recurly. Required when: - refunding a manually collected charge invoice, and `refund_method` is not `all_credit` - refunding a credit invoice that refunded manually collecting invoices - refunding a credit invoice for a partial amount This field can only be included when the Credit Invoices feature is enabled.
|
15
|
+
define_attribute :external_refund, Hash
|
16
|
+
|
17
|
+
# @!attribute line_items
|
18
|
+
# @return [Array[String]] The line items to be refunded. This is required when `type=line_items`.
|
19
|
+
define_attribute :line_items, Array, {:item_type => String}
|
20
|
+
|
21
|
+
# @!attribute refund_method
|
22
|
+
# @return [String] Indicates how the invoice should be refunded when both a credit and transaction are present on the invoice: - `transaction_first` – Refunds the transaction first, then any amount is issued as credit back to the account. Default value when Credit Invoices feature is enabled. - `credit_first` – Issues credit back to the account first, then refunds any remaining amount back to the transaction. Default value when Credit Invoices feature is not enabled. - `all_credit` – Issues credit to the account for the entire amount of the refund. Only available when the Credit Invoices feature is enabled. - `all_transaction` – Refunds the entire amount back to transactions, using transactions from previous invoices if necessary. Only available when the Credit Invoices feature is enabled.
|
23
|
+
define_attribute :refund_method, String, {:enum => ["transaction_first", "credit_first", "all_credit", "all_transaction"]}
|
24
|
+
|
25
|
+
# @!attribute type
|
26
|
+
# @return [String] The type of refund. Amount and line items cannot both be specified in the request.
|
27
|
+
define_attribute :type, String, {:enum => ["amount", "line_items"]}
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,46 @@
|
|
1
|
+
module Recurly
|
2
|
+
module Requests
|
3
|
+
class LineItemCreate < Request
|
4
|
+
|
5
|
+
# @!attribute credit_reason_code
|
6
|
+
# @return [String] The reason the credit was given when line item is `type=credit`. When the Credit Invoices feature is enabled, the value can be set and will default to `general`. When the Credit Invoices feature is not enabled, the value will always be `null`.
|
7
|
+
define_attribute :credit_reason_code, String, {:enum => ["general", "service", "promotional"]}
|
8
|
+
|
9
|
+
# @!attribute currency
|
10
|
+
# @return [String] 3-letter ISO 4217 currency code.
|
11
|
+
define_attribute :currency, String
|
12
|
+
|
13
|
+
# @!attribute description
|
14
|
+
# @return [String] Description that appears on the invoice.
|
15
|
+
define_attribute :description, String
|
16
|
+
|
17
|
+
# @!attribute end_date
|
18
|
+
# @return [DateTime] If this date is provided, it indicates the end of a time range.
|
19
|
+
define_attribute :end_date, DateTime
|
20
|
+
|
21
|
+
# @!attribute quantity
|
22
|
+
# @return [Integer] This number will be multiplied by the unit amount to compute the subtotal before any discounts or taxes.
|
23
|
+
define_attribute :quantity, Integer
|
24
|
+
|
25
|
+
# @!attribute start_date
|
26
|
+
# @return [DateTime] If an end date is present, this is value indicates the beginning of a billing time range. If no end date is present it indicates billing for a specific date. Defaults to the current date-time.
|
27
|
+
define_attribute :start_date, DateTime
|
28
|
+
|
29
|
+
# @!attribute tax_code
|
30
|
+
# @return [String] Optional field for EU VAT merchants and Avalara AvaTax Pro merchants. If you are using Recurly's EU VAT feature, you can use values of unknown, physical, or digital. If you have your own AvaTax account configured, you can use Avalara tax codes to assign custom tax rules.
|
31
|
+
define_attribute :tax_code, String
|
32
|
+
|
33
|
+
# @!attribute tax_exempt
|
34
|
+
# @return [Boolean] `true` exempts tax on charges, `false` applies tax on charges. If not defined, then defaults to the Plan and Site settings. This attribute does not work for credits (negative line items). Credits are always applied post-tax. Pre-tax discounts should use the Coupons feature.
|
35
|
+
define_attribute :tax_exempt, :Boolean
|
36
|
+
|
37
|
+
# @!attribute type
|
38
|
+
# @return [String] Line item type.
|
39
|
+
define_attribute :type, String, {:enum => ["charge", "credit"]}
|
40
|
+
|
41
|
+
# @!attribute unit_amount
|
42
|
+
# @return [Float] A positive or negative amount with `type=charge` will result in a positive `unit_amount`. A positive or negative amount with `type=credit` will result in a negative `unit_amount`.
|
43
|
+
define_attribute :unit_amount, Float
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
@@ -0,0 +1,66 @@
|
|
1
|
+
module Recurly
|
2
|
+
module Requests
|
3
|
+
class PlanCreate < Request
|
4
|
+
|
5
|
+
# @!attribute accounting_code
|
6
|
+
# @return [String] Accounting code for invoice line items for the plan. If no value is provided, it defaults to plan's code.
|
7
|
+
define_attribute :accounting_code, String
|
8
|
+
|
9
|
+
# @!attribute add_ons
|
10
|
+
# @return [Array[String]] Add Ons
|
11
|
+
define_attribute :add_ons, Array, {:item_type => String}
|
12
|
+
|
13
|
+
# @!attribute code
|
14
|
+
# @return [String] Unique code to identify the plan. This is used in Hosted Payment Page URLs and in the invoice exports.
|
15
|
+
define_attribute :code, String
|
16
|
+
|
17
|
+
# @!attribute currencies
|
18
|
+
# @return [Array[String]] Pricing
|
19
|
+
define_attribute :currencies, Array, {:item_type => String}
|
20
|
+
|
21
|
+
# @!attribute description
|
22
|
+
# @return [String] Optional description, not displayed.
|
23
|
+
define_attribute :description, String
|
24
|
+
|
25
|
+
# @!attribute hosted_pages
|
26
|
+
# @return [Hash] Hosted pages settings
|
27
|
+
define_attribute :hosted_pages, Hash
|
28
|
+
|
29
|
+
# @!attribute interval_length
|
30
|
+
# @return [Integer] Length of the plan's billing interval in `interval_unit`.
|
31
|
+
define_attribute :interval_length, Integer
|
32
|
+
|
33
|
+
# @!attribute interval_unit
|
34
|
+
# @return [String] Unit for the plan's billing interval.
|
35
|
+
define_attribute :interval_unit, String, {:enum => ["days", "months"]}
|
36
|
+
|
37
|
+
# @!attribute name
|
38
|
+
# @return [String] This name describes your plan and will appear on the Hosted Payment Page and the subscriber's invoice.
|
39
|
+
define_attribute :name, String
|
40
|
+
|
41
|
+
# @!attribute setup_fee_accounting_code
|
42
|
+
# @return [String] Accounting code for invoice line items for the plan's setup fee. If no value is provided, it defaults to plan's accounting code.
|
43
|
+
define_attribute :setup_fee_accounting_code, String
|
44
|
+
|
45
|
+
# @!attribute tax_code
|
46
|
+
# @return [String] Optional field for EU VAT merchants and Avalara AvaTax Pro merchants. If you are using Recurly's EU VAT feature, you can use values of 'unknown', 'physical', or 'digital'. If you have your own AvaTax account configured, you can use Avalara tax codes to assign custom tax rules.
|
47
|
+
define_attribute :tax_code, String
|
48
|
+
|
49
|
+
# @!attribute tax_exempt
|
50
|
+
# @return [Boolean] `true` exempts tax on the plan, `false` applies tax on the plan.
|
51
|
+
define_attribute :tax_exempt, :Boolean
|
52
|
+
|
53
|
+
# @!attribute total_billing_cycles
|
54
|
+
# @return [Integer] Automatically terminate plans after a defined number of billing cycles.
|
55
|
+
define_attribute :total_billing_cycles, Integer
|
56
|
+
|
57
|
+
# @!attribute trial_length
|
58
|
+
# @return [Integer] Length of plan's trial period in `trial_units`. `0` means `no trial`.
|
59
|
+
define_attribute :trial_length, Integer
|
60
|
+
|
61
|
+
# @!attribute trial_unit
|
62
|
+
# @return [String] Units for the plan's trial period.
|
63
|
+
define_attribute :trial_unit, String, {:enum => ["days", "months"]}
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
@@ -0,0 +1,70 @@
|
|
1
|
+
module Recurly
|
2
|
+
module Requests
|
3
|
+
class PlanUpdate < Request
|
4
|
+
|
5
|
+
# @!attribute accounting_code
|
6
|
+
# @return [String] Accounting code for invoice line items for the plan. If no value is provided, it defaults to plan's code.
|
7
|
+
define_attribute :accounting_code, String
|
8
|
+
|
9
|
+
# @!attribute add_ons
|
10
|
+
# @return [Array[String]] Add Ons
|
11
|
+
define_attribute :add_ons, Array, {:item_type => String}
|
12
|
+
|
13
|
+
# @!attribute code
|
14
|
+
# @return [String] Unique code to identify the plan. This is used in Hosted Payment Page URLs and in the invoice exports.
|
15
|
+
define_attribute :code, String
|
16
|
+
|
17
|
+
# @!attribute currencies
|
18
|
+
# @return [Array[String]] Pricing
|
19
|
+
define_attribute :currencies, Array, {:item_type => String}
|
20
|
+
|
21
|
+
# @!attribute description
|
22
|
+
# @return [String] Optional description, not displayed.
|
23
|
+
define_attribute :description, String
|
24
|
+
|
25
|
+
# @!attribute hosted_pages
|
26
|
+
# @return [Hash] Hosted pages settings
|
27
|
+
define_attribute :hosted_pages, Hash
|
28
|
+
|
29
|
+
# @!attribute [r] id
|
30
|
+
# @return [String] Plan ID
|
31
|
+
define_attribute :id, String, {:read_only => true}
|
32
|
+
|
33
|
+
# @!attribute interval_length
|
34
|
+
# @return [Integer] Length of the plan's billing interval in `interval_unit`.
|
35
|
+
define_attribute :interval_length, Integer
|
36
|
+
|
37
|
+
# @!attribute interval_unit
|
38
|
+
# @return [String] Unit for the plan's billing interval.
|
39
|
+
define_attribute :interval_unit, String, {:enum => ["days", "months"]}
|
40
|
+
|
41
|
+
# @!attribute name
|
42
|
+
# @return [String] This name describes your plan and will appear on the Hosted Payment Page and the subscriber's invoice.
|
43
|
+
define_attribute :name, String
|
44
|
+
|
45
|
+
# @!attribute setup_fee_accounting_code
|
46
|
+
# @return [String] Accounting code for invoice line items for the plan's setup fee. If no value is provided, it defaults to plan's accounting code.
|
47
|
+
define_attribute :setup_fee_accounting_code, String
|
48
|
+
|
49
|
+
# @!attribute tax_code
|
50
|
+
# @return [String] Optional field for EU VAT merchants and Avalara AvaTax Pro merchants. If you are using Recurly's EU VAT feature, you can use values of 'unknown', 'physical', or 'digital'. If you have your own AvaTax account configured, you can use Avalara tax codes to assign custom tax rules.
|
51
|
+
define_attribute :tax_code, String
|
52
|
+
|
53
|
+
# @!attribute tax_exempt
|
54
|
+
# @return [Boolean] `true` exempts tax on the plan, `false` applies tax on the plan.
|
55
|
+
define_attribute :tax_exempt, :Boolean
|
56
|
+
|
57
|
+
# @!attribute total_billing_cycles
|
58
|
+
# @return [Integer] Automatically terminate plans after a defined number of billing cycles.
|
59
|
+
define_attribute :total_billing_cycles, Integer
|
60
|
+
|
61
|
+
# @!attribute trial_length
|
62
|
+
# @return [Integer] Length of plan's trial period in `trial_units`. `0` means `no trial`.
|
63
|
+
define_attribute :trial_length, Integer
|
64
|
+
|
65
|
+
# @!attribute trial_unit
|
66
|
+
# @return [String] Units for the plan's trial period.
|
67
|
+
define_attribute :trial_unit, String, {:enum => ["days", "months"]}
|
68
|
+
end
|
69
|
+
end
|
70
|
+
end
|
@@ -0,0 +1,58 @@
|
|
1
|
+
module Recurly
|
2
|
+
module Requests
|
3
|
+
class ShippingAddressCreate < Request
|
4
|
+
|
5
|
+
# @!attribute city
|
6
|
+
# @return [String]
|
7
|
+
define_attribute :city, String
|
8
|
+
|
9
|
+
# @!attribute company
|
10
|
+
# @return [String]
|
11
|
+
define_attribute :company, String
|
12
|
+
|
13
|
+
# @!attribute country
|
14
|
+
# @return [String] Country, 2-letter ISO code.
|
15
|
+
define_attribute :country, String
|
16
|
+
|
17
|
+
# @!attribute email
|
18
|
+
# @return [String]
|
19
|
+
define_attribute :email, String
|
20
|
+
|
21
|
+
# @!attribute first_name
|
22
|
+
# @return [String]
|
23
|
+
define_attribute :first_name, String
|
24
|
+
|
25
|
+
# @!attribute last_name
|
26
|
+
# @return [String]
|
27
|
+
define_attribute :last_name, String
|
28
|
+
|
29
|
+
# @!attribute nickname
|
30
|
+
# @return [String]
|
31
|
+
define_attribute :nickname, String
|
32
|
+
|
33
|
+
# @!attribute phone
|
34
|
+
# @return [String]
|
35
|
+
define_attribute :phone, String
|
36
|
+
|
37
|
+
# @!attribute postal_code
|
38
|
+
# @return [String] Zip or postal code.
|
39
|
+
define_attribute :postal_code, String
|
40
|
+
|
41
|
+
# @!attribute region
|
42
|
+
# @return [String] State or province.
|
43
|
+
define_attribute :region, String
|
44
|
+
|
45
|
+
# @!attribute street1
|
46
|
+
# @return [String]
|
47
|
+
define_attribute :street1, String
|
48
|
+
|
49
|
+
# @!attribute street2
|
50
|
+
# @return [String]
|
51
|
+
define_attribute :street2, String
|
52
|
+
|
53
|
+
# @!attribute vat_number
|
54
|
+
# @return [String]
|
55
|
+
define_attribute :vat_number, String
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|