stripe 13.2.0 → 13.3.0.pre.beta.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +1391 -645
- data/OPENAPI_VERSION +1 -1
- data/VERSION +1 -1
- data/lib/stripe/object_types.rb +22 -0
- data/lib/stripe/request_signing_authenticator.rb +79 -0
- data/lib/stripe/resources/account_notice.rb +32 -0
- data/lib/stripe/resources/capital/financing_offer.rb +49 -0
- data/lib/stripe/resources/capital/financing_summary.rb +15 -0
- data/lib/stripe/resources/capital/financing_transaction.rb +27 -0
- data/lib/stripe/resources/financial_connections/account.rb +3 -0
- data/lib/stripe/resources/financial_connections/account_inferred_balance.rb +14 -0
- data/lib/stripe/resources/financial_connections/institution.rb +26 -0
- data/lib/stripe/resources/gift_cards/card.rb +59 -0
- data/lib/stripe/resources/gift_cards/transaction.rb +93 -0
- data/lib/stripe/resources/invoice.rb +81 -0
- data/lib/stripe/resources/invoice_payment.rb +12 -0
- data/lib/stripe/resources/issuing/credit_underwriting_record.rb +88 -0
- data/lib/stripe/resources/issuing/dispute_settlement_detail.rb +26 -0
- data/lib/stripe/resources/issuing/fraud_liability_debit.rb +26 -0
- data/lib/stripe/resources/margin.rb +37 -0
- data/lib/stripe/resources/order.rb +120 -0
- data/lib/stripe/resources/payment_attempt_record.rb +27 -0
- data/lib/stripe/resources/payment_intent.rb +70 -0
- data/lib/stripe/resources/payment_record.rb +115 -0
- data/lib/stripe/resources/quote.rb +104 -0
- data/lib/stripe/resources/quote_preview_invoice.rb +43 -0
- data/lib/stripe/resources/quote_preview_subscription_schedule.rb +11 -0
- data/lib/stripe/resources/subscription_schedule.rb +20 -0
- data/lib/stripe/resources/tax/association.rb +24 -0
- data/lib/stripe/resources/tax/form.rb +49 -0
- data/lib/stripe/resources/terminal/reader.rb +60 -0
- data/lib/stripe/resources/terminal/reader_collected_data.rb +14 -0
- data/lib/stripe/resources.rb +21 -0
- data/lib/stripe/services/account_notice_service.rb +39 -0
- data/lib/stripe/services/capital/financing_offer_service.rb +42 -0
- data/lib/stripe/services/capital/financing_summary_service.rb +19 -0
- data/lib/stripe/services/capital/financing_transaction_service.rb +31 -0
- data/lib/stripe/services/capital_service.rb +15 -0
- data/lib/stripe/services/financial_connections/account_inferred_balance_service.rb +19 -0
- data/lib/stripe/services/financial_connections/account_service.rb +3 -1
- data/lib/stripe/services/financial_connections/institution_service.rb +30 -0
- data/lib/stripe/services/financial_connections_service.rb +2 -1
- data/lib/stripe/services/gift_cards/card_service.rb +63 -0
- data/lib/stripe/services/gift_cards/transaction_service.rb +74 -0
- data/lib/stripe/services/gift_cards_service.rb +14 -0
- data/lib/stripe/services/invoice_payment_service.rb +28 -0
- data/lib/stripe/services/invoice_service.rb +44 -1
- data/lib/stripe/services/issuing/credit_underwriting_record_service.rb +74 -0
- data/lib/stripe/services/issuing/dispute_settlement_detail_service.rb +30 -0
- data/lib/stripe/services/issuing/fraud_liability_debit_service.rb +30 -0
- data/lib/stripe/services/issuing_service.rb +5 -1
- data/lib/stripe/services/margin_service.rb +50 -0
- data/lib/stripe/services/order_line_item_service.rb +17 -0
- data/lib/stripe/services/order_service.rb +78 -0
- data/lib/stripe/services/payment_attempt_record_service.rb +28 -0
- data/lib/stripe/services/payment_intent_service.rb +37 -0
- data/lib/stripe/services/payment_record_service.rb +78 -0
- data/lib/stripe/services/quote_line_service.rb +17 -0
- data/lib/stripe/services/quote_preview_invoice_service.rb +17 -0
- data/lib/stripe/services/quote_preview_subscription_schedule_service.rb +17 -0
- data/lib/stripe/services/quote_service.rb +49 -1
- data/lib/stripe/services/subscription_schedule_service.rb +11 -0
- data/lib/stripe/services/tax/association_service.rb +19 -0
- data/lib/stripe/services/tax/form_service.rb +37 -0
- data/lib/stripe/services/tax_service.rb +3 -1
- data/lib/stripe/services/terminal/reader_collected_data_service.rb +19 -0
- data/lib/stripe/services/terminal/reader_service.rb +33 -0
- data/lib/stripe/services/terminal_service.rb +2 -1
- data/lib/stripe/services/v1_services.rb +8 -1
- data/lib/stripe/services.rb +25 -0
- data/lib/stripe/stripe_configuration.rb +3 -1
- data/lib/stripe/util.rb +7 -1
- data/lib/stripe/version.rb +1 -1
- data/lib/stripe.rb +45 -0
- metadata +51 -4
@@ -0,0 +1,74 @@
|
|
1
|
+
# File generated from our OpenAPI spec
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Stripe
|
5
|
+
module GiftCards
|
6
|
+
class TransactionService < StripeService
|
7
|
+
# Cancel a gift card transaction
|
8
|
+
def cancel(id, params = {}, opts = {})
|
9
|
+
request(
|
10
|
+
method: :post,
|
11
|
+
path: format("/v1/gift_cards/transactions/%<id>s/cancel", { id: CGI.escape(id) }),
|
12
|
+
params: params,
|
13
|
+
opts: opts,
|
14
|
+
base_address: :api
|
15
|
+
)
|
16
|
+
end
|
17
|
+
|
18
|
+
# Confirm a gift card transaction
|
19
|
+
def confirm(id, params = {}, opts = {})
|
20
|
+
request(
|
21
|
+
method: :post,
|
22
|
+
path: format("/v1/gift_cards/transactions/%<id>s/confirm", { id: CGI.escape(id) }),
|
23
|
+
params: params,
|
24
|
+
opts: opts,
|
25
|
+
base_address: :api
|
26
|
+
)
|
27
|
+
end
|
28
|
+
|
29
|
+
# Create a gift card transaction
|
30
|
+
def create(params = {}, opts = {})
|
31
|
+
request(
|
32
|
+
method: :post,
|
33
|
+
path: "/v1/gift_cards/transactions",
|
34
|
+
params: params,
|
35
|
+
opts: opts,
|
36
|
+
base_address: :api
|
37
|
+
)
|
38
|
+
end
|
39
|
+
|
40
|
+
# List gift card transactions for a gift card
|
41
|
+
def list(params = {}, opts = {})
|
42
|
+
request(
|
43
|
+
method: :get,
|
44
|
+
path: "/v1/gift_cards/transactions",
|
45
|
+
params: params,
|
46
|
+
opts: opts,
|
47
|
+
base_address: :api
|
48
|
+
)
|
49
|
+
end
|
50
|
+
|
51
|
+
# Retrieves the gift card transaction.
|
52
|
+
def retrieve(id, params = {}, opts = {})
|
53
|
+
request(
|
54
|
+
method: :get,
|
55
|
+
path: format("/v1/gift_cards/transactions/%<id>s", { id: CGI.escape(id) }),
|
56
|
+
params: params,
|
57
|
+
opts: opts,
|
58
|
+
base_address: :api
|
59
|
+
)
|
60
|
+
end
|
61
|
+
|
62
|
+
# Update a gift card transaction
|
63
|
+
def update(id, params = {}, opts = {})
|
64
|
+
request(
|
65
|
+
method: :post,
|
66
|
+
path: format("/v1/gift_cards/transactions/%<id>s", { id: CGI.escape(id) }),
|
67
|
+
params: params,
|
68
|
+
opts: opts,
|
69
|
+
base_address: :api
|
70
|
+
)
|
71
|
+
end
|
72
|
+
end
|
73
|
+
end
|
74
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
# File generated from our OpenAPI spec
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Stripe
|
5
|
+
class GiftCardsService < StripeService
|
6
|
+
attr_reader :cards, :transactions
|
7
|
+
|
8
|
+
def initialize(requestor)
|
9
|
+
super(requestor)
|
10
|
+
@cards = Stripe::GiftCards::CardService.new(@requestor)
|
11
|
+
@transactions = Stripe::GiftCards::TransactionService.new(@requestor)
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
# File generated from our OpenAPI spec
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Stripe
|
5
|
+
class InvoicePaymentService < StripeService
|
6
|
+
# When retrieving an invoice, there is an includable payments property containing the first handful of those items. There is also a URL where you can retrieve the full (paginated) list of payments.
|
7
|
+
def list(invoice, params = {}, opts = {})
|
8
|
+
request(
|
9
|
+
method: :get,
|
10
|
+
path: format("/v1/invoices/%<invoice>s/payments", { invoice: CGI.escape(invoice) }),
|
11
|
+
params: params,
|
12
|
+
opts: opts,
|
13
|
+
base_address: :api
|
14
|
+
)
|
15
|
+
end
|
16
|
+
|
17
|
+
# Retrieves the invoice payment with the given ID.
|
18
|
+
def retrieve(invoice, invoice_payment, params = {}, opts = {})
|
19
|
+
request(
|
20
|
+
method: :get,
|
21
|
+
path: format("/v1/invoices/%<invoice>s/payments/%<invoice_payment>s", { invoice: CGI.escape(invoice), invoice_payment: CGI.escape(invoice_payment) }),
|
22
|
+
params: params,
|
23
|
+
opts: opts,
|
24
|
+
base_address: :api
|
25
|
+
)
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
@@ -3,10 +3,11 @@
|
|
3
3
|
|
4
4
|
module Stripe
|
5
5
|
class InvoiceService < StripeService
|
6
|
-
attr_reader :line_items, :upcoming_lines
|
6
|
+
attr_reader :payments, :line_items, :upcoming_lines
|
7
7
|
|
8
8
|
def initialize(requestor)
|
9
9
|
super(requestor)
|
10
|
+
@payments = Stripe::InvoicePaymentService.new(@requestor)
|
10
11
|
@line_items = Stripe::InvoiceLineItemService.new(@requestor)
|
11
12
|
@upcoming_lines = Stripe::InvoiceUpcomingLinesService.new(@requestor)
|
12
13
|
end
|
@@ -22,6 +23,48 @@ module Stripe
|
|
22
23
|
)
|
23
24
|
end
|
24
25
|
|
26
|
+
# Attaches a PaymentIntent or an Out of Band Payment to the invoice, adding it to the list of payments.
|
27
|
+
#
|
28
|
+
# For Out of Band Payment, the payment is credited to the invoice immediately, increasing the amount_paid
|
29
|
+
# of the invoice and subsequently transitioning the status of the invoice to paid if necessary.
|
30
|
+
#
|
31
|
+
# For the PaymentIntent, when the PaymentIntent's status changes to succeeded, the payment is credited
|
32
|
+
# to the invoice, increasing its amount_paid. When the invoice is fully paid, the
|
33
|
+
# invoice's status becomes paid.
|
34
|
+
#
|
35
|
+
# If the PaymentIntent's status is already succeeded when it's attached, it's
|
36
|
+
# credited to the invoice immediately.
|
37
|
+
#
|
38
|
+
# See: [Create an invoice payment](https://stripe.com/docs/invoicing/payments/create) to learn more.
|
39
|
+
def attach_payment(invoice, params = {}, opts = {})
|
40
|
+
request(
|
41
|
+
method: :post,
|
42
|
+
path: format("/v1/invoices/%<invoice>s/attach_payment", { invoice: CGI.escape(invoice) }),
|
43
|
+
params: params,
|
44
|
+
opts: opts,
|
45
|
+
base_address: :api
|
46
|
+
)
|
47
|
+
end
|
48
|
+
|
49
|
+
# Attaches a PaymentIntent to the invoice, adding it to the list of payments.
|
50
|
+
# When the PaymentIntent's status changes to succeeded, the payment is credited
|
51
|
+
# to the invoice, increasing its amount_paid. When the invoice is fully paid, the
|
52
|
+
# invoice's status becomes paid.
|
53
|
+
#
|
54
|
+
# If the PaymentIntent's status is already succeeded when it is attached, it is
|
55
|
+
# credited to the invoice immediately.
|
56
|
+
#
|
57
|
+
# Related guide: [Create an invoice payment](https://stripe.com/docs/invoicing/payments/create)
|
58
|
+
def attach_payment_intent(invoice, params = {}, opts = {})
|
59
|
+
request(
|
60
|
+
method: :post,
|
61
|
+
path: format("/v1/invoices/%<invoice>s/attach_payment_intent", { invoice: CGI.escape(invoice) }),
|
62
|
+
params: params,
|
63
|
+
opts: opts,
|
64
|
+
base_address: :api
|
65
|
+
)
|
66
|
+
end
|
67
|
+
|
25
68
|
# This endpoint creates a draft invoice for a given customer. The invoice remains a draft until you [finalize the invoice, which allows you to [pay](#pay_invoice) or <a href="#send_invoice">send](https://stripe.com/docs/api#finalize_invoice) the invoice to your customers.
|
26
69
|
def create(params = {}, opts = {})
|
27
70
|
request(method: :post, path: "/v1/invoices", params: params, opts: opts, base_address: :api)
|
@@ -0,0 +1,74 @@
|
|
1
|
+
# File generated from our OpenAPI spec
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Stripe
|
5
|
+
module Issuing
|
6
|
+
class CreditUnderwritingRecordService < StripeService
|
7
|
+
# Update a CreditUnderwritingRecord object to correct mistakes.
|
8
|
+
def correct(credit_underwriting_record, params = {}, opts = {})
|
9
|
+
request(
|
10
|
+
method: :post,
|
11
|
+
path: format("/v1/issuing/credit_underwriting_records/%<credit_underwriting_record>s/correct", { credit_underwriting_record: CGI.escape(credit_underwriting_record) }),
|
12
|
+
params: params,
|
13
|
+
opts: opts,
|
14
|
+
base_address: :api
|
15
|
+
)
|
16
|
+
end
|
17
|
+
|
18
|
+
# Creates a CreditUnderwritingRecord object with information about a credit application submission.
|
19
|
+
def create_from_application(params = {}, opts = {})
|
20
|
+
request(
|
21
|
+
method: :post,
|
22
|
+
path: "/v1/issuing/credit_underwriting_records/create_from_application",
|
23
|
+
params: params,
|
24
|
+
opts: opts,
|
25
|
+
base_address: :api
|
26
|
+
)
|
27
|
+
end
|
28
|
+
|
29
|
+
# Creates a CreditUnderwritingRecord object from an underwriting decision coming from a proactive review of an existing accountholder.
|
30
|
+
def create_from_proactive_review(params = {}, opts = {})
|
31
|
+
request(
|
32
|
+
method: :post,
|
33
|
+
path: "/v1/issuing/credit_underwriting_records/create_from_proactive_review",
|
34
|
+
params: params,
|
35
|
+
opts: opts,
|
36
|
+
base_address: :api
|
37
|
+
)
|
38
|
+
end
|
39
|
+
|
40
|
+
# Retrieves a list of CreditUnderwritingRecord objects. The objects are sorted in descending order by creation date, with the most-recently-created object appearing first.
|
41
|
+
def list(params = {}, opts = {})
|
42
|
+
request(
|
43
|
+
method: :get,
|
44
|
+
path: "/v1/issuing/credit_underwriting_records",
|
45
|
+
params: params,
|
46
|
+
opts: opts,
|
47
|
+
base_address: :api
|
48
|
+
)
|
49
|
+
end
|
50
|
+
|
51
|
+
# Update a CreditUnderwritingRecord object from a decision made on a credit application.
|
52
|
+
def report_decision(credit_underwriting_record, params = {}, opts = {})
|
53
|
+
request(
|
54
|
+
method: :post,
|
55
|
+
path: format("/v1/issuing/credit_underwriting_records/%<credit_underwriting_record>s/report_decision", { credit_underwriting_record: CGI.escape(credit_underwriting_record) }),
|
56
|
+
params: params,
|
57
|
+
opts: opts,
|
58
|
+
base_address: :api
|
59
|
+
)
|
60
|
+
end
|
61
|
+
|
62
|
+
# Retrieves a CreditUnderwritingRecord object.
|
63
|
+
def retrieve(credit_underwriting_record, params = {}, opts = {})
|
64
|
+
request(
|
65
|
+
method: :get,
|
66
|
+
path: format("/v1/issuing/credit_underwriting_records/%<credit_underwriting_record>s", { credit_underwriting_record: CGI.escape(credit_underwriting_record) }),
|
67
|
+
params: params,
|
68
|
+
opts: opts,
|
69
|
+
base_address: :api
|
70
|
+
)
|
71
|
+
end
|
72
|
+
end
|
73
|
+
end
|
74
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# File generated from our OpenAPI spec
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Stripe
|
5
|
+
module Issuing
|
6
|
+
class DisputeSettlementDetailService < StripeService
|
7
|
+
# Returns a list of Issuing DisputeSettlementDetail objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.
|
8
|
+
def list(params = {}, opts = {})
|
9
|
+
request(
|
10
|
+
method: :get,
|
11
|
+
path: "/v1/issuing/dispute_settlement_details",
|
12
|
+
params: params,
|
13
|
+
opts: opts,
|
14
|
+
base_address: :api
|
15
|
+
)
|
16
|
+
end
|
17
|
+
|
18
|
+
# Retrieves an Issuing DisputeSettlementDetail object.
|
19
|
+
def retrieve(dispute_settlement_detail, params = {}, opts = {})
|
20
|
+
request(
|
21
|
+
method: :get,
|
22
|
+
path: format("/v1/issuing/dispute_settlement_details/%<dispute_settlement_detail>s", { dispute_settlement_detail: CGI.escape(dispute_settlement_detail) }),
|
23
|
+
params: params,
|
24
|
+
opts: opts,
|
25
|
+
base_address: :api
|
26
|
+
)
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# File generated from our OpenAPI spec
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Stripe
|
5
|
+
module Issuing
|
6
|
+
class FraudLiabilityDebitService < StripeService
|
7
|
+
# Returns a list of Issuing FraudLiabilityDebit objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.
|
8
|
+
def list(params = {}, opts = {})
|
9
|
+
request(
|
10
|
+
method: :get,
|
11
|
+
path: "/v1/issuing/fraud_liability_debits",
|
12
|
+
params: params,
|
13
|
+
opts: opts,
|
14
|
+
base_address: :api
|
15
|
+
)
|
16
|
+
end
|
17
|
+
|
18
|
+
# Retrieves an Issuing FraudLiabilityDebit object.
|
19
|
+
def retrieve(fraud_liability_debit, params = {}, opts = {})
|
20
|
+
request(
|
21
|
+
method: :get,
|
22
|
+
path: format("/v1/issuing/fraud_liability_debits/%<fraud_liability_debit>s", { fraud_liability_debit: CGI.escape(fraud_liability_debit) }),
|
23
|
+
params: params,
|
24
|
+
opts: opts,
|
25
|
+
base_address: :api
|
26
|
+
)
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -3,14 +3,18 @@
|
|
3
3
|
|
4
4
|
module Stripe
|
5
5
|
class IssuingService < StripeService
|
6
|
-
attr_reader :authorizations, :cards, :cardholders, :disputes, :personalization_designs, :physical_bundles, :tokens, :transactions
|
6
|
+
attr_reader :authorizations, :cards, :cardholders, :credit_underwriting_records, :disputes, :dispute_settlement_details, :fraud_liability_debits, :personalization_designs, :physical_bundles, :tokens, :transactions
|
7
7
|
|
8
8
|
def initialize(requestor)
|
9
9
|
super(requestor)
|
10
10
|
@authorizations = Stripe::Issuing::AuthorizationService.new(@requestor)
|
11
11
|
@cards = Stripe::Issuing::CardService.new(@requestor)
|
12
12
|
@cardholders = Stripe::Issuing::CardholderService.new(@requestor)
|
13
|
+
@credit_underwriting_records = Stripe::Issuing::CreditUnderwritingRecordService
|
14
|
+
.new(@requestor)
|
13
15
|
@disputes = Stripe::Issuing::DisputeService.new(@requestor)
|
16
|
+
@dispute_settlement_details = Stripe::Issuing::DisputeSettlementDetailService.new(@requestor)
|
17
|
+
@fraud_liability_debits = Stripe::Issuing::FraudLiabilityDebitService.new(@requestor)
|
14
18
|
@personalization_designs = Stripe::Issuing::PersonalizationDesignService.new(@requestor)
|
15
19
|
@physical_bundles = Stripe::Issuing::PhysicalBundleService.new(@requestor)
|
16
20
|
@tokens = Stripe::Issuing::TokenService.new(@requestor)
|
@@ -0,0 +1,50 @@
|
|
1
|
+
# File generated from our OpenAPI spec
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Stripe
|
5
|
+
class MarginService < StripeService
|
6
|
+
# Create a margin object to be used with invoices, invoice items, and invoice line items for a customer to represent a partner discount. A margin has a percent_off which is the percent that will be taken off the subtotal after all items and other discounts and promotions) of any invoices for a customer. Calculation of prorations do not include any partner margins applied on the original invoice item.
|
7
|
+
def create(params = {}, opts = {})
|
8
|
+
request(
|
9
|
+
method: :post,
|
10
|
+
path: "/v1/billing/margins",
|
11
|
+
params: params,
|
12
|
+
opts: opts,
|
13
|
+
base_address: :api
|
14
|
+
)
|
15
|
+
end
|
16
|
+
|
17
|
+
# Retrieve a list of your margins.
|
18
|
+
def list(params = {}, opts = {})
|
19
|
+
request(
|
20
|
+
method: :get,
|
21
|
+
path: "/v1/billing/margins",
|
22
|
+
params: params,
|
23
|
+
opts: opts,
|
24
|
+
base_address: :api
|
25
|
+
)
|
26
|
+
end
|
27
|
+
|
28
|
+
# Retrieve a margin object with the given ID.
|
29
|
+
def retrieve(margin, params = {}, opts = {})
|
30
|
+
request(
|
31
|
+
method: :get,
|
32
|
+
path: format("/v1/billing/margins/%<margin>s", { margin: CGI.escape(margin) }),
|
33
|
+
params: params,
|
34
|
+
opts: opts,
|
35
|
+
base_address: :api
|
36
|
+
)
|
37
|
+
end
|
38
|
+
|
39
|
+
# Update the specified margin object. Certain fields of the margin object are not editable.
|
40
|
+
def update(margin, params = {}, opts = {})
|
41
|
+
request(
|
42
|
+
method: :post,
|
43
|
+
path: format("/v1/billing/margins/%<margin>s", { margin: CGI.escape(margin) }),
|
44
|
+
params: params,
|
45
|
+
opts: opts,
|
46
|
+
base_address: :api
|
47
|
+
)
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# File generated from our OpenAPI spec
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Stripe
|
5
|
+
class OrderLineItemService < StripeService
|
6
|
+
# When retrieving an order, there is an includable line_items property containing the first handful of those items. There is also a URL where you can retrieve the full (paginated) list of line items.
|
7
|
+
def list(id, params = {}, opts = {})
|
8
|
+
request(
|
9
|
+
method: :get,
|
10
|
+
path: format("/v1/orders/%<id>s/line_items", { id: CGI.escape(id) }),
|
11
|
+
params: params,
|
12
|
+
opts: opts,
|
13
|
+
base_address: :api
|
14
|
+
)
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,78 @@
|
|
1
|
+
# File generated from our OpenAPI spec
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Stripe
|
5
|
+
class OrderService < StripeService
|
6
|
+
attr_reader :line_items
|
7
|
+
|
8
|
+
def initialize(requestor)
|
9
|
+
super(requestor)
|
10
|
+
@line_items = Stripe::OrderLineItemService.new(@requestor)
|
11
|
+
end
|
12
|
+
|
13
|
+
# Cancels the order as well as the payment intent if one is attached.
|
14
|
+
def cancel(id, params = {}, opts = {})
|
15
|
+
request(
|
16
|
+
method: :post,
|
17
|
+
path: format("/v1/orders/%<id>s/cancel", { id: CGI.escape(id) }),
|
18
|
+
params: params,
|
19
|
+
opts: opts,
|
20
|
+
base_address: :api
|
21
|
+
)
|
22
|
+
end
|
23
|
+
|
24
|
+
# Creates a new open order object.
|
25
|
+
def create(params = {}, opts = {})
|
26
|
+
request(method: :post, path: "/v1/orders", params: params, opts: opts, base_address: :api)
|
27
|
+
end
|
28
|
+
|
29
|
+
# Returns a list of your orders. The orders are returned sorted by creation date, with the most recently created orders appearing first.
|
30
|
+
def list(params = {}, opts = {})
|
31
|
+
request(method: :get, path: "/v1/orders", params: params, opts: opts, base_address: :api)
|
32
|
+
end
|
33
|
+
|
34
|
+
# Reopens a submitted order.
|
35
|
+
def reopen(id, params = {}, opts = {})
|
36
|
+
request(
|
37
|
+
method: :post,
|
38
|
+
path: format("/v1/orders/%<id>s/reopen", { id: CGI.escape(id) }),
|
39
|
+
params: params,
|
40
|
+
opts: opts,
|
41
|
+
base_address: :api
|
42
|
+
)
|
43
|
+
end
|
44
|
+
|
45
|
+
# Retrieves the details of an existing order. Supply the unique order ID from either an order creation request or the order list, and Stripe will return the corresponding order information.
|
46
|
+
def retrieve(id, params = {}, opts = {})
|
47
|
+
request(
|
48
|
+
method: :get,
|
49
|
+
path: format("/v1/orders/%<id>s", { id: CGI.escape(id) }),
|
50
|
+
params: params,
|
51
|
+
opts: opts,
|
52
|
+
base_address: :api
|
53
|
+
)
|
54
|
+
end
|
55
|
+
|
56
|
+
# Submitting an Order transitions the status to processing and creates a PaymentIntent object so the order can be paid. If the Order has an amount_total of 0, no PaymentIntent object will be created. Once the order is submitted, its contents cannot be changed, unless the [reopen](https://stripe.com/docs/api#reopen_order) method is called.
|
57
|
+
def submit(id, params = {}, opts = {})
|
58
|
+
request(
|
59
|
+
method: :post,
|
60
|
+
path: format("/v1/orders/%<id>s/submit", { id: CGI.escape(id) }),
|
61
|
+
params: params,
|
62
|
+
opts: opts,
|
63
|
+
base_address: :api
|
64
|
+
)
|
65
|
+
end
|
66
|
+
|
67
|
+
# Updates the specific order by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
|
68
|
+
def update(id, params = {}, opts = {})
|
69
|
+
request(
|
70
|
+
method: :post,
|
71
|
+
path: format("/v1/orders/%<id>s", { id: CGI.escape(id) }),
|
72
|
+
params: params,
|
73
|
+
opts: opts,
|
74
|
+
base_address: :api
|
75
|
+
)
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
# File generated from our OpenAPI spec
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Stripe
|
5
|
+
class PaymentAttemptRecordService < StripeService
|
6
|
+
# List all the Payment Attempt Records attached to the specified Payment Record.
|
7
|
+
def list(params = {}, opts = {})
|
8
|
+
request(
|
9
|
+
method: :get,
|
10
|
+
path: "/v1/payment_attempt_records",
|
11
|
+
params: params,
|
12
|
+
opts: opts,
|
13
|
+
base_address: :api
|
14
|
+
)
|
15
|
+
end
|
16
|
+
|
17
|
+
# Retrieves a Payment Attempt Record with the given ID
|
18
|
+
def retrieve(id, params = {}, opts = {})
|
19
|
+
request(
|
20
|
+
method: :get,
|
21
|
+
path: format("/v1/payment_attempt_records/%<id>s", { id: CGI.escape(id) }),
|
22
|
+
params: params,
|
23
|
+
opts: opts,
|
24
|
+
base_address: :api
|
25
|
+
)
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
@@ -99,6 +99,32 @@ module Stripe
|
|
99
99
|
)
|
100
100
|
end
|
101
101
|
|
102
|
+
# Perform a decremental authorization on an eligible
|
103
|
+
# [PaymentIntent](https://stripe.com/docs/api/payment_intents/object). To be eligible, the
|
104
|
+
# PaymentIntent's status must be requires_capture and
|
105
|
+
# [decremental_authorization.status](https://stripe.com/docs/api/charges/object#charge_object-payment_method_details-card-decremental_authorization)
|
106
|
+
# must be available.
|
107
|
+
#
|
108
|
+
# Decremental authorizations decrease the authorized amount on your customer's card
|
109
|
+
# to the new, lower amount provided. A single PaymentIntent can call this endpoint multiple times to further decrease the authorized amount.
|
110
|
+
#
|
111
|
+
# After decrement, the PaymentIntent object
|
112
|
+
# returns with the updated
|
113
|
+
# [amount](https://stripe.com/docs/api/payment_intents/object#payment_intent_object-amount).
|
114
|
+
# The PaymentIntent will now be capturable up to the new authorized amount.
|
115
|
+
#
|
116
|
+
# Each PaymentIntent can have a maximum of 10 decremental or incremental authorization attempts, including declines.
|
117
|
+
# After it's fully captured, a PaymentIntent can no longer be decremented.
|
118
|
+
def decrement_authorization(intent, params = {}, opts = {})
|
119
|
+
request(
|
120
|
+
method: :post,
|
121
|
+
path: format("/v1/payment_intents/%<intent>s/decrement_authorization", { intent: CGI.escape(intent) }),
|
122
|
+
params: params,
|
123
|
+
opts: opts,
|
124
|
+
base_address: :api
|
125
|
+
)
|
126
|
+
end
|
127
|
+
|
102
128
|
# Perform an incremental authorization on an eligible
|
103
129
|
# [PaymentIntent](https://stripe.com/docs/api/payment_intents/object). To be eligible, the
|
104
130
|
# PaymentIntent's status must be requires_capture and
|
@@ -173,6 +199,17 @@ module Stripe
|
|
173
199
|
)
|
174
200
|
end
|
175
201
|
|
202
|
+
# Trigger an external action on a PaymentIntent.
|
203
|
+
def trigger_action(intent, params = {}, opts = {})
|
204
|
+
request(
|
205
|
+
method: :post,
|
206
|
+
path: format("/v1/test/payment_intents/%<intent>s/trigger_action", { intent: CGI.escape(intent) }),
|
207
|
+
params: params,
|
208
|
+
opts: opts,
|
209
|
+
base_address: :api
|
210
|
+
)
|
211
|
+
end
|
212
|
+
|
176
213
|
# Updates properties on a PaymentIntent object without confirming.
|
177
214
|
#
|
178
215
|
# Depending on which properties you update, you might need to confirm the
|
@@ -0,0 +1,78 @@
|
|
1
|
+
# File generated from our OpenAPI spec
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Stripe
|
5
|
+
class PaymentRecordService < StripeService
|
6
|
+
# Report a new Payment Record. You may report a Payment Record as it is
|
7
|
+
# initialized and later report updates through the other report_* methods, or report Payment
|
8
|
+
# Records in a terminal state directly, through this method.
|
9
|
+
def report_payment(params = {}, opts = {})
|
10
|
+
request(
|
11
|
+
method: :post,
|
12
|
+
path: "/v1/payment_records/report_payment",
|
13
|
+
params: params,
|
14
|
+
opts: opts,
|
15
|
+
base_address: :api
|
16
|
+
)
|
17
|
+
end
|
18
|
+
|
19
|
+
# Report a new payment attempt on the specified Payment Record. A new payment
|
20
|
+
# attempt can only be specified if all other payment attempts are canceled or failed.
|
21
|
+
def report_payment_attempt(id, params = {}, opts = {})
|
22
|
+
request(
|
23
|
+
method: :post,
|
24
|
+
path: format("/v1/payment_records/%<id>s/report_payment_attempt", { id: CGI.escape(id) }),
|
25
|
+
params: params,
|
26
|
+
opts: opts,
|
27
|
+
base_address: :api
|
28
|
+
)
|
29
|
+
end
|
30
|
+
|
31
|
+
# Report that the most recent payment attempt on the specified Payment Record
|
32
|
+
# was canceled.
|
33
|
+
def report_payment_attempt_canceled(id, params = {}, opts = {})
|
34
|
+
request(
|
35
|
+
method: :post,
|
36
|
+
path: format("/v1/payment_records/%<id>s/report_payment_attempt_canceled", { id: CGI.escape(id) }),
|
37
|
+
params: params,
|
38
|
+
opts: opts,
|
39
|
+
base_address: :api
|
40
|
+
)
|
41
|
+
end
|
42
|
+
|
43
|
+
# Report that the most recent payment attempt on the specified Payment Record
|
44
|
+
# failed or errored.
|
45
|
+
def report_payment_attempt_failed(id, params = {}, opts = {})
|
46
|
+
request(
|
47
|
+
method: :post,
|
48
|
+
path: format("/v1/payment_records/%<id>s/report_payment_attempt_failed", { id: CGI.escape(id) }),
|
49
|
+
params: params,
|
50
|
+
opts: opts,
|
51
|
+
base_address: :api
|
52
|
+
)
|
53
|
+
end
|
54
|
+
|
55
|
+
# Report that the most recent payment attempt on the specified Payment Record
|
56
|
+
# was guaranteed.
|
57
|
+
def report_payment_attempt_guaranteed(id, params = {}, opts = {})
|
58
|
+
request(
|
59
|
+
method: :post,
|
60
|
+
path: format("/v1/payment_records/%<id>s/report_payment_attempt_guaranteed", { id: CGI.escape(id) }),
|
61
|
+
params: params,
|
62
|
+
opts: opts,
|
63
|
+
base_address: :api
|
64
|
+
)
|
65
|
+
end
|
66
|
+
|
67
|
+
# Retrieves a Payment Record with the given ID
|
68
|
+
def retrieve(id, params = {}, opts = {})
|
69
|
+
request(
|
70
|
+
method: :get,
|
71
|
+
path: format("/v1/payment_records/%<id>s", { id: CGI.escape(id) }),
|
72
|
+
params: params,
|
73
|
+
opts: opts,
|
74
|
+
base_address: :api
|
75
|
+
)
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# File generated from our OpenAPI spec
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Stripe
|
5
|
+
class QuoteLineService < StripeService
|
6
|
+
# Retrieves a paginated list of lines for a quote. These lines describe changes that will be used to create new subscription schedules or update existing subscription schedules when the quote is accepted.
|
7
|
+
def list(quote, params = {}, opts = {})
|
8
|
+
request(
|
9
|
+
method: :get,
|
10
|
+
path: format("/v1/quotes/%<quote>s/lines", { quote: CGI.escape(quote) }),
|
11
|
+
params: params,
|
12
|
+
opts: opts,
|
13
|
+
base_address: :api
|
14
|
+
)
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# File generated from our OpenAPI spec
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Stripe
|
5
|
+
class QuotePreviewInvoiceService < StripeService
|
6
|
+
# Preview the invoices that would be generated by accepting the quote.
|
7
|
+
def list(quote, params = {}, opts = {})
|
8
|
+
request(
|
9
|
+
method: :get,
|
10
|
+
path: format("/v1/quotes/%<quote>s/preview_invoices", { quote: CGI.escape(quote) }),
|
11
|
+
params: params,
|
12
|
+
opts: opts,
|
13
|
+
base_address: :api
|
14
|
+
)
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|