stripe 1.27.2 → 5.33.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/CHANGELOG.md +942 -0
- data/CODE_OF_CONDUCT.md +77 -0
- data/Gemfile +29 -4
- data/History.txt +1 -361
- data/README.md +349 -0
- data/Rakefile +33 -3
- data/VERSION +1 -1
- data/bin/stripe-console +14 -5
- data/lib/data/ca-certificates.crt +4016 -5138
- data/lib/stripe.rb +102 -320
- data/lib/stripe/api_operations/create.rb +5 -9
- data/lib/stripe/api_operations/delete.rb +32 -4
- data/lib/stripe/api_operations/list.rb +11 -9
- data/lib/stripe/api_operations/nested_resource.rb +73 -0
- data/lib/stripe/api_operations/request.rb +66 -11
- data/lib/stripe/api_operations/save.rb +97 -0
- data/lib/stripe/api_resource.rb +96 -12
- data/lib/stripe/connection_manager.rb +164 -0
- data/lib/stripe/error_object.rb +94 -0
- data/lib/stripe/errors.rb +177 -0
- data/lib/stripe/instrumentation.rb +82 -0
- data/lib/stripe/list_object.rb +118 -13
- data/lib/stripe/multipart_encoder.rb +131 -0
- data/lib/stripe/oauth.rb +65 -0
- data/lib/stripe/object_types.rb +104 -0
- data/lib/stripe/resources.rb +87 -0
- data/lib/stripe/resources/account.rb +170 -0
- data/lib/stripe/resources/account_link.rb +10 -0
- data/lib/stripe/resources/alipay_account.rb +34 -0
- data/lib/stripe/resources/apple_pay_domain.rb +17 -0
- data/lib/stripe/resources/application_fee.rb +14 -0
- data/lib/stripe/resources/application_fee_refund.rb +30 -0
- data/lib/stripe/resources/balance.rb +8 -0
- data/lib/stripe/resources/balance_transaction.rb +10 -0
- data/lib/stripe/resources/bank_account.rb +43 -0
- data/lib/stripe/resources/billing_portal/configuration.rb +14 -0
- data/lib/stripe/resources/billing_portal/session.rb +12 -0
- data/lib/stripe/resources/bitcoin_receiver.rb +24 -0
- data/lib/stripe/resources/bitcoin_transaction.rb +15 -0
- data/lib/stripe/resources/capability.rb +33 -0
- data/lib/stripe/resources/card.rb +38 -0
- data/lib/stripe/resources/charge.rb +23 -0
- data/lib/stripe/resources/checkout/session.rb +16 -0
- data/lib/stripe/resources/country_spec.rb +10 -0
- data/lib/stripe/resources/coupon.rb +13 -0
- data/lib/stripe/resources/credit_note.rb +33 -0
- data/lib/stripe/resources/credit_note_line_item.rb +7 -0
- data/lib/stripe/resources/customer.rb +41 -0
- data/lib/stripe/resources/customer_balance_transaction.rb +30 -0
- data/lib/stripe/resources/discount.rb +7 -0
- data/lib/stripe/resources/dispute.rb +22 -0
- data/lib/stripe/resources/ephemeral_key.rb +20 -0
- data/lib/stripe/resources/event.rb +10 -0
- data/lib/stripe/resources/exchange_rate.rb +10 -0
- data/lib/stripe/resources/file.rb +36 -0
- data/lib/stripe/resources/file_link.rb +12 -0
- data/lib/stripe/resources/identity/verification_report.rb +12 -0
- data/lib/stripe/resources/identity/verification_session.rb +35 -0
- data/lib/stripe/resources/invoice.rb +74 -0
- data/lib/stripe/resources/invoice_item.rb +13 -0
- data/lib/stripe/resources/invoice_line_item.rb +7 -0
- data/lib/stripe/resources/issuing/authorization.rb +34 -0
- data/lib/stripe/resources/issuing/card.rb +25 -0
- data/lib/stripe/resources/issuing/card_details.rb +9 -0
- data/lib/stripe/resources/issuing/cardholder.rb +14 -0
- data/lib/stripe/resources/issuing/dispute.rb +25 -0
- data/lib/stripe/resources/issuing/transaction.rb +13 -0
- data/lib/stripe/resources/line_item.rb +7 -0
- data/lib/stripe/resources/login_link.rb +14 -0
- data/lib/stripe/resources/mandate.rb +8 -0
- data/lib/stripe/resources/order.rb +33 -0
- data/lib/stripe/resources/order_return.rb +10 -0
- data/lib/stripe/resources/payment_intent.rb +43 -0
- data/lib/stripe/resources/payment_method.rb +33 -0
- data/lib/stripe/resources/payout.rb +33 -0
- data/lib/stripe/resources/person.rb +31 -0
- data/lib/stripe/resources/plan.rb +13 -0
- data/lib/stripe/resources/price.rb +12 -0
- data/lib/stripe/resources/product.rb +13 -0
- data/lib/stripe/resources/promotion_code.rb +12 -0
- data/lib/stripe/resources/radar/early_fraud_warning.rb +12 -0
- data/lib/stripe/resources/radar/value_list.rb +15 -0
- data/lib/stripe/resources/radar/value_list_item.rb +14 -0
- data/lib/stripe/resources/recipient.rb +14 -0
- data/lib/stripe/resources/recipient_transfer.rb +7 -0
- data/lib/stripe/resources/refund.rb +12 -0
- data/lib/stripe/resources/reporting/report_run.rb +13 -0
- data/lib/stripe/resources/reporting/report_type.rb +13 -0
- data/lib/stripe/resources/reversal.rb +29 -0
- data/lib/stripe/resources/review.rb +21 -0
- data/lib/stripe/resources/setup_attempt.rb +10 -0
- data/lib/stripe/resources/setup_intent.rb +33 -0
- data/lib/stripe/resources/sigma/scheduled_query_run.rb +16 -0
- data/lib/stripe/resources/sku.rb +13 -0
- data/lib/stripe/resources/source.rb +47 -0
- data/lib/stripe/resources/source_transaction.rb +7 -0
- data/lib/stripe/resources/subscription.rb +26 -0
- data/lib/stripe/resources/subscription_item.rb +26 -0
- data/lib/stripe/resources/subscription_schedule.rb +33 -0
- data/lib/stripe/resources/tax_id.rb +26 -0
- data/lib/stripe/resources/tax_rate.rb +12 -0
- data/lib/stripe/resources/terminal/connection_token.rb +12 -0
- data/lib/stripe/resources/terminal/location.rb +15 -0
- data/lib/stripe/resources/terminal/reader.rb +15 -0
- data/lib/stripe/resources/three_d_secure.rb +14 -0
- data/lib/stripe/resources/token.rb +10 -0
- data/lib/stripe/resources/topup.rb +23 -0
- data/lib/stripe/resources/transfer.rb +27 -0
- data/lib/stripe/resources/usage_record.rb +7 -0
- data/lib/stripe/resources/usage_record_summary.rb +7 -0
- data/lib/stripe/resources/webhook_endpoint.rb +13 -0
- data/lib/stripe/singleton_api_resource.rb +13 -7
- data/lib/stripe/stripe_client.rb +989 -0
- data/lib/stripe/stripe_configuration.rb +194 -0
- data/lib/stripe/stripe_object.rb +481 -148
- data/lib/stripe/stripe_response.rb +82 -0
- data/lib/stripe/util.rb +265 -70
- data/lib/stripe/version.rb +3 -1
- data/lib/stripe/webhook.rb +121 -0
- data/stripe.gemspec +35 -21
- metadata +118 -198
- data/.gitignore +0 -4
- data/.travis.yml +0 -22
- data/README.rdoc +0 -43
- data/gemfiles/default-with-activesupport.gemfile +0 -10
- data/gemfiles/json.gemfile +0 -12
- data/gemfiles/yajl.gemfile +0 -12
- data/lib/stripe/account.rb +0 -39
- data/lib/stripe/api_operations/update.rb +0 -19
- data/lib/stripe/application_fee.rb +0 -20
- data/lib/stripe/application_fee_refund.rb +0 -14
- data/lib/stripe/balance.rb +0 -4
- data/lib/stripe/balance_transaction.rb +0 -9
- data/lib/stripe/bank_account.rb +0 -19
- data/lib/stripe/bitcoin_receiver.rb +0 -20
- data/lib/stripe/bitcoin_transaction.rb +0 -9
- data/lib/stripe/card.rb +0 -21
- data/lib/stripe/charge.rb +0 -62
- data/lib/stripe/coupon.rb +0 -8
- data/lib/stripe/customer.rb +0 -75
- data/lib/stripe/dispute.rb +0 -16
- data/lib/stripe/errors/api_connection_error.rb +0 -4
- data/lib/stripe/errors/api_error.rb +0 -4
- data/lib/stripe/errors/authentication_error.rb +0 -4
- data/lib/stripe/errors/card_error.rb +0 -12
- data/lib/stripe/errors/invalid_request_error.rb +0 -11
- data/lib/stripe/errors/rate_limit_error.rb +0 -4
- data/lib/stripe/errors/stripe_error.rb +0 -26
- data/lib/stripe/event.rb +0 -5
- data/lib/stripe/file_upload.rb +0 -22
- data/lib/stripe/invoice.rb +0 -27
- data/lib/stripe/invoice_item.rb +0 -8
- data/lib/stripe/order.rb +0 -19
- data/lib/stripe/plan.rb +0 -8
- data/lib/stripe/product.rb +0 -16
- data/lib/stripe/recipient.rb +0 -12
- data/lib/stripe/refund.rb +0 -7
- data/lib/stripe/reversal.rb +0 -14
- data/lib/stripe/sku.rb +0 -8
- data/lib/stripe/subscription.rb +0 -25
- data/lib/stripe/token.rb +0 -5
- data/lib/stripe/transfer.rb +0 -17
- data/test/stripe/account_test.rb +0 -118
- data/test/stripe/api_resource_test.rb +0 -632
- data/test/stripe/application_fee_refund_test.rb +0 -47
- data/test/stripe/application_fee_test.rb +0 -22
- data/test/stripe/balance_test.rb +0 -11
- data/test/stripe/bitcoin_receiver_test.rb +0 -61
- data/test/stripe/bitcoin_transaction_test.rb +0 -29
- data/test/stripe/charge_refund_test.rb +0 -55
- data/test/stripe/charge_test.rb +0 -118
- data/test/stripe/coupon_test.rb +0 -20
- data/test/stripe/customer_card_test.rb +0 -63
- data/test/stripe/customer_test.rb +0 -88
- data/test/stripe/dispute_test.rb +0 -45
- data/test/stripe/file_upload_test.rb +0 -28
- data/test/stripe/invoice_test.rb +0 -40
- data/test/stripe/list_object_test.rb +0 -16
- data/test/stripe/metadata_test.rb +0 -129
- data/test/stripe/order_test.rb +0 -52
- data/test/stripe/product_test.rb +0 -41
- data/test/stripe/recipient_card_test.rb +0 -57
- data/test/stripe/refund_test.rb +0 -55
- data/test/stripe/reversal_test.rb +0 -47
- data/test/stripe/sku_test.rb +0 -24
- data/test/stripe/stripe_object_test.rb +0 -28
- data/test/stripe/subscription_test.rb +0 -72
- data/test/stripe/transfer_test.rb +0 -25
- data/test/stripe/util_test.rb +0 -34
- data/test/test_data.rb +0 -666
- data/test/test_helper.rb +0 -41
data/.gitignore
DELETED
data/.travis.yml
DELETED
@@ -1,22 +0,0 @@
|
|
1
|
-
language: ruby
|
2
|
-
|
3
|
-
rvm:
|
4
|
-
- 1.8.7
|
5
|
-
- 1.9.2
|
6
|
-
- 1.9.3
|
7
|
-
- 2.0.0
|
8
|
-
- 2.1
|
9
|
-
- 2.2
|
10
|
-
- jruby-19mode
|
11
|
-
|
12
|
-
gemfile:
|
13
|
-
- gemfiles/default-with-activesupport.gemfile
|
14
|
-
- gemfiles/json.gemfile
|
15
|
-
- gemfiles/yajl.gemfile
|
16
|
-
|
17
|
-
matrix:
|
18
|
-
exclude:
|
19
|
-
- rvm: jruby-19mode
|
20
|
-
gemfile: gemfiles/yajl.gemfile
|
21
|
-
|
22
|
-
sudo: false
|
data/README.rdoc
DELETED
@@ -1,43 +0,0 @@
|
|
1
|
-
= Stripe Ruby bindings {<img src="https://travis-ci.org/stripe/stripe-ruby.svg?branch=master" alt="Build Status" />}[https://travis-ci.org/stripe/stripe-ruby]
|
2
|
-
|
3
|
-
== Documentation
|
4
|
-
|
5
|
-
{Ruby API Docs}[https://stripe.com/docs/api/ruby#intro]
|
6
|
-
|
7
|
-
== Installation
|
8
|
-
|
9
|
-
You don't need this source code unless you want to modify the gem. If
|
10
|
-
you just want to use the Stripe Ruby bindings, you should run:
|
11
|
-
|
12
|
-
gem install stripe
|
13
|
-
|
14
|
-
If you want to build the gem from source:
|
15
|
-
|
16
|
-
gem build stripe.gemspec
|
17
|
-
|
18
|
-
== Requirements
|
19
|
-
|
20
|
-
* Ruby 1.8.7 or above. (Ruby 1.8.6 may work if you load
|
21
|
-
ActiveSupport.) For Ruby versions before 1.9.2, you'll need to add this to your Gemfile:
|
22
|
-
|
23
|
-
if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('1.9.2')
|
24
|
-
gem 'rest-client', '~> 1.6.8'
|
25
|
-
end
|
26
|
-
|
27
|
-
|
28
|
-
* rest-client, json
|
29
|
-
|
30
|
-
== Bundler
|
31
|
-
|
32
|
-
If you are installing via bundler, you should be sure to use the https
|
33
|
-
rubygems source in your Gemfile, as any gems fetched over http could potentially be
|
34
|
-
compromised in transit and alter the code of gems fetched securely over https:
|
35
|
-
|
36
|
-
source 'https://rubygems.org'
|
37
|
-
|
38
|
-
gem 'rails'
|
39
|
-
gem 'stripe'
|
40
|
-
|
41
|
-
== Development
|
42
|
-
|
43
|
-
Test cases can be run with: `bundle exec rake test`
|
@@ -1,10 +0,0 @@
|
|
1
|
-
source "https://rubygems.org"
|
2
|
-
gemspec :path => File.join(File.dirname(__FILE__), "..")
|
3
|
-
|
4
|
-
if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('1.9.3')
|
5
|
-
gem 'i18n', '< 0.7'
|
6
|
-
gem 'rest-client', '~> 1.6.8'
|
7
|
-
gem 'activesupport', '~> 3.2'
|
8
|
-
else
|
9
|
-
gem 'activesupport'
|
10
|
-
end
|
data/gemfiles/json.gemfile
DELETED
@@ -1,12 +0,0 @@
|
|
1
|
-
source "https://rubygems.org"
|
2
|
-
gemspec :path => File.join(File.dirname(__FILE__), "..")
|
3
|
-
|
4
|
-
if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('1.9.3')
|
5
|
-
gem 'i18n', '< 0.7'
|
6
|
-
gem 'rest-client', '~> 1.6.8'
|
7
|
-
gem 'activesupport', '~> 3.2'
|
8
|
-
else
|
9
|
-
gem 'activesupport'
|
10
|
-
end
|
11
|
-
|
12
|
-
gem 'json'
|
data/gemfiles/yajl.gemfile
DELETED
@@ -1,12 +0,0 @@
|
|
1
|
-
source "https://rubygems.org"
|
2
|
-
gemspec :path => File.join(File.dirname(__FILE__), "..")
|
3
|
-
|
4
|
-
if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('1.9.3')
|
5
|
-
gem 'i18n', '< 0.7'
|
6
|
-
gem 'rest-client', '~> 1.6.8'
|
7
|
-
gem 'activesupport', '~> 3.2'
|
8
|
-
else
|
9
|
-
gem 'activesupport'
|
10
|
-
end
|
11
|
-
|
12
|
-
gem 'yajl-ruby'
|
data/lib/stripe/account.rb
DELETED
@@ -1,39 +0,0 @@
|
|
1
|
-
module Stripe
|
2
|
-
class Account < APIResource
|
3
|
-
include Stripe::APIOperations::Create
|
4
|
-
include Stripe::APIOperations::Delete
|
5
|
-
include Stripe::APIOperations::List
|
6
|
-
include Stripe::APIOperations::Update
|
7
|
-
|
8
|
-
def url
|
9
|
-
if self['id']
|
10
|
-
super
|
11
|
-
else
|
12
|
-
"/v1/account"
|
13
|
-
end
|
14
|
-
end
|
15
|
-
|
16
|
-
# @override To make id optional
|
17
|
-
def self.retrieve(id=ARGUMENT_NOT_PROVIDED, opts={})
|
18
|
-
id = id.equal?(ARGUMENT_NOT_PROVIDED) ? nil : Util.check_string_argument!(id)
|
19
|
-
# Account used to be a singleton, where this method's signature was `(opts={})`.
|
20
|
-
# For the sake of not breaking folks who pass in an OAuth key in opts, let's lurkily
|
21
|
-
# string match for it.
|
22
|
-
if opts == {} && id.is_a?(String) && id.start_with?('sk_')
|
23
|
-
# `super` properly assumes a String opts is the apiKey and normalizes as expected.
|
24
|
-
opts = id
|
25
|
-
id = nil
|
26
|
-
end
|
27
|
-
super(id, opts)
|
28
|
-
end
|
29
|
-
|
30
|
-
def deauthorize(client_id, opts={})
|
31
|
-
opts = {:api_base => Stripe.connect_base}.merge(Util.normalize_opts(opts))
|
32
|
-
response, opts = request(:post, '/oauth/deauthorize', { 'client_id' => client_id, 'stripe_user_id' => self.id }, opts)
|
33
|
-
opts.delete(:api_base) # the api_base here is a one-off, don't persist it
|
34
|
-
Util.convert_to_stripe_object(response, opts)
|
35
|
-
end
|
36
|
-
|
37
|
-
ARGUMENT_NOT_PROVIDED = Object.new
|
38
|
-
end
|
39
|
-
end
|
@@ -1,19 +0,0 @@
|
|
1
|
-
module Stripe
|
2
|
-
module APIOperations
|
3
|
-
module Update
|
4
|
-
def save(params={})
|
5
|
-
# Let the caller override the URL but avoid serializing it.
|
6
|
-
req_url = params.delete(:req_url) || url
|
7
|
-
values = self.class.serialize_params(self).merge(params)
|
8
|
-
|
9
|
-
if values.length > 0
|
10
|
-
values.delete(:id)
|
11
|
-
|
12
|
-
response, opts = request(:post, req_url, values)
|
13
|
-
refresh_from(response, opts)
|
14
|
-
end
|
15
|
-
self
|
16
|
-
end
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
@@ -1,20 +0,0 @@
|
|
1
|
-
module Stripe
|
2
|
-
class ApplicationFee < APIResource
|
3
|
-
include Stripe::APIOperations::List
|
4
|
-
|
5
|
-
def self.url
|
6
|
-
'/v1/application_fees'
|
7
|
-
end
|
8
|
-
|
9
|
-
def refund(params={}, opts={})
|
10
|
-
response, opts = request(:post, refund_url, params, opts)
|
11
|
-
refresh_from(response, opts)
|
12
|
-
end
|
13
|
-
|
14
|
-
private
|
15
|
-
|
16
|
-
def refund_url
|
17
|
-
url + '/refund'
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
@@ -1,14 +0,0 @@
|
|
1
|
-
module Stripe
|
2
|
-
class ApplicationFeeRefund < APIResource
|
3
|
-
include Stripe::APIOperations::Update
|
4
|
-
include Stripe::APIOperations::List
|
5
|
-
|
6
|
-
def url
|
7
|
-
"#{ApplicationFee.url}/#{CGI.escape(fee)}/refunds/#{CGI.escape(id)}"
|
8
|
-
end
|
9
|
-
|
10
|
-
def self.retrieve(id, api_key=nil)
|
11
|
-
raise NotImplementedError.new("Refunds cannot be retrieved without an application fee ID. Retrieve a refund using appfee.refunds.retrieve('refund_id')")
|
12
|
-
end
|
13
|
-
end
|
14
|
-
end
|
data/lib/stripe/balance.rb
DELETED
data/lib/stripe/bank_account.rb
DELETED
@@ -1,19 +0,0 @@
|
|
1
|
-
module Stripe
|
2
|
-
class BankAccount < APIResource
|
3
|
-
include Stripe::APIOperations::Update
|
4
|
-
include Stripe::APIOperations::Delete
|
5
|
-
include Stripe::APIOperations::List
|
6
|
-
|
7
|
-
def url
|
8
|
-
if respond_to?(:customer)
|
9
|
-
"#{Customer.url}/#{CGI.escape(customer)}/sources/#{CGI.escape(id)}"
|
10
|
-
elsif respond_to?(:account)
|
11
|
-
"#{Account.url}/#{CGI.escape(account)}/external_accounts/#{CGI.escape(id)}"
|
12
|
-
end
|
13
|
-
end
|
14
|
-
|
15
|
-
def self.retrieve(id, opts=nil)
|
16
|
-
raise NotImplementedError.new("Bank accounts cannot be retrieved without an account ID. Retrieve a bank account using account.external_accounts.retrieve('card_id')")
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
@@ -1,20 +0,0 @@
|
|
1
|
-
module Stripe
|
2
|
-
class BitcoinReceiver < APIResource
|
3
|
-
include Stripe::APIOperations::Create
|
4
|
-
include Stripe::APIOperations::Update
|
5
|
-
include Stripe::APIOperations::Delete
|
6
|
-
include Stripe::APIOperations::List
|
7
|
-
|
8
|
-
def self.url
|
9
|
-
"/v1/bitcoin/receivers"
|
10
|
-
end
|
11
|
-
|
12
|
-
def url
|
13
|
-
if respond_to?(:customer)
|
14
|
-
"#{Customer.url}/#{CGI.escape(customer)}/sources/#{CGI.escape(id)}"
|
15
|
-
else
|
16
|
-
"#{self.class.url}/#{CGI.escape(id)}"
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
data/lib/stripe/card.rb
DELETED
@@ -1,21 +0,0 @@
|
|
1
|
-
module Stripe
|
2
|
-
class Card < APIResource
|
3
|
-
include Stripe::APIOperations::Update
|
4
|
-
include Stripe::APIOperations::Delete
|
5
|
-
include Stripe::APIOperations::List
|
6
|
-
|
7
|
-
def url
|
8
|
-
if respond_to?(:recipient)
|
9
|
-
"#{Recipient.url}/#{CGI.escape(recipient)}/cards/#{CGI.escape(id)}"
|
10
|
-
elsif respond_to?(:customer)
|
11
|
-
"#{Customer.url}/#{CGI.escape(customer)}/sources/#{CGI.escape(id)}"
|
12
|
-
elsif respond_to?(:account)
|
13
|
-
"#{Account.url}/#{CGI.escape(account)}/external_accounts/#{CGI.escape(id)}"
|
14
|
-
end
|
15
|
-
end
|
16
|
-
|
17
|
-
def self.retrieve(id, opts=nil)
|
18
|
-
raise NotImplementedError.new("Cards cannot be retrieved without a customer ID. Retrieve a card using customer.sources.retrieve('card_id')")
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
data/lib/stripe/charge.rb
DELETED
@@ -1,62 +0,0 @@
|
|
1
|
-
module Stripe
|
2
|
-
class Charge < APIResource
|
3
|
-
include Stripe::APIOperations::List
|
4
|
-
include Stripe::APIOperations::Create
|
5
|
-
include Stripe::APIOperations::Update
|
6
|
-
|
7
|
-
def refund(params={}, opts={})
|
8
|
-
response, opts = request(:post, refund_url, params, opts)
|
9
|
-
refresh_from(response, opts)
|
10
|
-
end
|
11
|
-
|
12
|
-
def capture(params={}, opts={})
|
13
|
-
response, opts = request(:post, capture_url, params, opts)
|
14
|
-
refresh_from(response, opts)
|
15
|
-
end
|
16
|
-
|
17
|
-
def update_dispute(params={}, opts={})
|
18
|
-
response, opts = request(:post, dispute_url, params, opts)
|
19
|
-
refresh_from({ :dispute => response }, opts, true)
|
20
|
-
dispute
|
21
|
-
end
|
22
|
-
|
23
|
-
def close_dispute(params={}, opts={})
|
24
|
-
response, opts = request(:post, close_dispute_url, params, opts)
|
25
|
-
refresh_from(response, opts)
|
26
|
-
end
|
27
|
-
|
28
|
-
def mark_as_fraudulent
|
29
|
-
params = {
|
30
|
-
:fraud_details => { :user_report => 'fraudulent' }
|
31
|
-
}
|
32
|
-
response, opts = request(:post, url, params)
|
33
|
-
refresh_from(response, opts)
|
34
|
-
end
|
35
|
-
|
36
|
-
def mark_as_safe
|
37
|
-
params = {
|
38
|
-
:fraud_details => { :user_report => 'safe' }
|
39
|
-
}
|
40
|
-
response, opts = request(:post, url, params)
|
41
|
-
refresh_from(response, opts)
|
42
|
-
end
|
43
|
-
|
44
|
-
private
|
45
|
-
|
46
|
-
def refund_url
|
47
|
-
url + '/refund'
|
48
|
-
end
|
49
|
-
|
50
|
-
def capture_url
|
51
|
-
url + '/capture'
|
52
|
-
end
|
53
|
-
|
54
|
-
def dispute_url
|
55
|
-
url + '/dispute'
|
56
|
-
end
|
57
|
-
|
58
|
-
def close_dispute_url
|
59
|
-
url + '/dispute/close'
|
60
|
-
end
|
61
|
-
end
|
62
|
-
end
|
data/lib/stripe/coupon.rb
DELETED
data/lib/stripe/customer.rb
DELETED
@@ -1,75 +0,0 @@
|
|
1
|
-
module Stripe
|
2
|
-
class Customer < APIResource
|
3
|
-
include Stripe::APIOperations::Create
|
4
|
-
include Stripe::APIOperations::Delete
|
5
|
-
include Stripe::APIOperations::Update
|
6
|
-
include Stripe::APIOperations::List
|
7
|
-
|
8
|
-
def add_invoice_item(params, opts={})
|
9
|
-
opts = @opts.merge(Util.normalize_opts(opts))
|
10
|
-
InvoiceItem.create(params.merge(:customer => id), opts)
|
11
|
-
end
|
12
|
-
|
13
|
-
def invoices(params={}, opts={})
|
14
|
-
opts = @opts.merge(Util.normalize_opts(opts))
|
15
|
-
Invoice.all(params.merge(:customer => id), opts)
|
16
|
-
end
|
17
|
-
|
18
|
-
def invoice_items(params={}, opts={})
|
19
|
-
opts = @opts.merge(Util.normalize_opts(opts))
|
20
|
-
InvoiceItem.all(params.merge(:customer => id), opts)
|
21
|
-
end
|
22
|
-
|
23
|
-
def upcoming_invoice(params={}, opts={})
|
24
|
-
opts = @opts.merge(Util.normalize_opts(opts))
|
25
|
-
Invoice.upcoming(params.merge(:customer => id), opts)
|
26
|
-
end
|
27
|
-
|
28
|
-
def charges(params={}, opts={})
|
29
|
-
opts = @opts.merge(Util.normalize_opts(opts))
|
30
|
-
Charge.all(params.merge(:customer => id), opts)
|
31
|
-
end
|
32
|
-
|
33
|
-
def create_upcoming_invoice(params={}, opts={})
|
34
|
-
opts = @opts.merge(Util.normalize_opts(opts))
|
35
|
-
Invoice.create(params.merge(:customer => id), opts)
|
36
|
-
end
|
37
|
-
|
38
|
-
def cancel_subscription(params={}, opts={})
|
39
|
-
response, opts = request(:delete, subscription_url, params, opts)
|
40
|
-
refresh_from({ :subscription => response }, opts, true)
|
41
|
-
subscription
|
42
|
-
end
|
43
|
-
|
44
|
-
def update_subscription(params={}, opts={})
|
45
|
-
response, opts = request(:post, subscription_url, params, opts)
|
46
|
-
refresh_from({ :subscription => response }, opts, true)
|
47
|
-
subscription
|
48
|
-
end
|
49
|
-
|
50
|
-
def create_subscription(params={}, opts={})
|
51
|
-
response, opts = request(:post, subscriptions_url, params, opts)
|
52
|
-
refresh_from({ :subscription => response }, opts, true)
|
53
|
-
subscription
|
54
|
-
end
|
55
|
-
|
56
|
-
def delete_discount
|
57
|
-
_, opts = request(:delete, discount_url)
|
58
|
-
refresh_from({ :discount => nil }, opts, true)
|
59
|
-
end
|
60
|
-
|
61
|
-
private
|
62
|
-
|
63
|
-
def discount_url
|
64
|
-
url + '/discount'
|
65
|
-
end
|
66
|
-
|
67
|
-
def subscription_url
|
68
|
-
url + '/subscription'
|
69
|
-
end
|
70
|
-
|
71
|
-
def subscriptions_url
|
72
|
-
url + '/subscriptions'
|
73
|
-
end
|
74
|
-
end
|
75
|
-
end
|