stripe 5.38.0 → 15.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +742 -0
- data/CONTRIBUTING.md +25 -0
- data/Gemfile +12 -4
- data/Makefile +22 -0
- data/OPENAPI_VERSION +1 -0
- data/README.md +137 -27
- data/Rakefile +3 -6
- data/VERSION +1 -1
- data/examples/README.md +16 -0
- data/examples/example_template.rb +36 -0
- data/examples/meter_event_stream.rb +57 -0
- data/examples/thinevent_webhook_handler.rb +39 -0
- data/{bin → exe}/stripe-console +1 -1
- data/justfile +43 -0
- data/lib/data/ca-certificates.crt +1241 -1937
- data/lib/stripe/api_operations/create.rb +6 -2
- data/lib/stripe/api_operations/delete.rb +12 -7
- data/lib/stripe/api_operations/list.rb +6 -9
- data/lib/stripe/api_operations/nested_resource.rb +59 -31
- data/lib/stripe/api_operations/request.rb +30 -65
- data/lib/stripe/api_operations/save.rb +20 -10
- data/lib/stripe/api_operations/search.rb +21 -0
- data/lib/stripe/api_operations/singleton_save.rb +90 -0
- data/lib/stripe/api_requestor.rb +1136 -0
- data/lib/stripe/api_resource.rb +49 -34
- data/lib/stripe/api_resource_test_helpers.rb +53 -0
- data/lib/stripe/{resources/usage_record.rb → api_version.rb} +2 -2
- data/lib/stripe/connection_manager.rb +28 -11
- data/lib/stripe/errors.rb +11 -20
- data/lib/stripe/event_types.rb +15 -0
- data/lib/stripe/events/v1_billing_meter_error_report_triggered_event.rb +23 -0
- data/lib/stripe/events/v1_billing_meter_no_meter_found_event.rb +13 -0
- data/lib/stripe/events/v2_core_event_destination_ping_event.rb +21 -0
- data/lib/stripe/instrumentation.rb +37 -15
- data/lib/stripe/list_object.rb +5 -3
- data/lib/stripe/multipart_encoder.rb +7 -7
- data/lib/stripe/oauth.rb +14 -21
- data/lib/stripe/object_types.rb +157 -91
- data/lib/stripe/request_options.rb +129 -0
- data/lib/stripe/request_params.rb +24 -0
- data/lib/stripe/resources/account.rb +4854 -30
- data/lib/stripe/resources/account_link.rb +66 -0
- data/lib/stripe/resources/account_session.rb +868 -0
- data/lib/stripe/resources/alipay_account.rb +1 -1
- data/lib/stripe/resources/apple_pay_domain.rb +91 -0
- data/lib/stripe/resources/application.rb +20 -0
- data/lib/stripe/resources/application_fee.rb +96 -2
- data/lib/stripe/resources/application_fee_refund.rb +26 -2
- data/lib/stripe/resources/apps/secret.rb +196 -0
- data/lib/stripe/resources/balance.rb +178 -0
- data/lib/stripe/resources/balance_transaction.rb +124 -0
- data/lib/stripe/resources/bank_account.rb +137 -6
- data/lib/stripe/resources/billing/alert.rb +222 -0
- data/lib/stripe/resources/billing/alert_triggered.rb +26 -0
- data/lib/stripe/resources/billing/credit_balance_summary.rb +54 -0
- data/lib/stripe/resources/billing/credit_balance_transaction.rb +133 -0
- data/lib/stripe/resources/billing/credit_grant.rb +307 -0
- data/lib/stripe/resources/billing/meter.rb +254 -0
- data/lib/stripe/resources/billing/meter_event.rb +61 -0
- data/lib/stripe/resources/billing/meter_event_adjustment.rb +69 -0
- data/lib/stripe/resources/billing/meter_event_summary.rb +32 -0
- data/lib/stripe/resources/billing_portal/configuration.rb +587 -0
- data/lib/stripe/resources/billing_portal/session.rb +298 -0
- data/lib/stripe/resources/capability.rb +91 -2
- data/lib/stripe/resources/card.rb +111 -3
- data/lib/stripe/resources/cash_balance.rb +43 -0
- data/lib/stripe/resources/charge.rb +1682 -2
- data/lib/stripe/resources/checkout/session.rb +3666 -2
- data/lib/stripe/resources/climate/order.rb +234 -0
- data/lib/stripe/resources/climate/product.rb +74 -0
- data/lib/stripe/resources/climate/supplier.rb +71 -0
- data/lib/stripe/resources/confirmation_token.rb +1498 -0
- data/lib/stripe/resources/connect_collection_transfer.rb +24 -0
- data/lib/stripe/resources/country_spec.rb +68 -0
- data/lib/stripe/resources/coupon.rb +236 -0
- data/lib/stripe/resources/credit_note.rb +709 -9
- data/lib/stripe/resources/credit_note_line_item.rb +71 -0
- data/lib/stripe/resources/customer.rb +1015 -16
- data/lib/stripe/resources/customer_balance_transaction.rb +38 -1
- data/lib/stripe/resources/customer_cash_balance_transaction.rb +124 -0
- data/lib/stripe/resources/customer_session.rb +188 -0
- data/lib/stripe/resources/discount.rb +37 -0
- data/lib/stripe/resources/dispute.rb +650 -2
- data/lib/stripe/resources/entitlements/active_entitlement.rb +63 -0
- data/lib/stripe/resources/entitlements/active_entitlement_summary.rb +23 -0
- data/lib/stripe/resources/entitlements/feature.rb +130 -0
- data/lib/stripe/resources/ephemeral_key.rb +44 -0
- data/lib/stripe/resources/event.rb +130 -0
- data/lib/stripe/resources/exchange_rate.rb +58 -0
- data/lib/stripe/resources/file.rb +139 -15
- data/lib/stripe/resources/file_link.rb +129 -0
- data/lib/stripe/resources/financial_connections/account.rb +363 -0
- data/lib/stripe/resources/financial_connections/account_owner.rb +31 -0
- data/lib/stripe/resources/financial_connections/account_ownership.rb +23 -0
- data/lib/stripe/resources/financial_connections/session.rb +121 -0
- data/lib/stripe/resources/financial_connections/transaction.rb +118 -0
- data/lib/stripe/resources/forwarding/request.rb +208 -0
- data/lib/stripe/resources/funding_instructions.rb +332 -0
- data/lib/stripe/resources/identity/verification_report.rb +287 -0
- data/lib/stripe/resources/identity/verification_session.rb +474 -4
- data/lib/stripe/resources/invoice.rb +3525 -17
- data/lib/stripe/resources/invoice_item.rb +453 -0
- data/lib/stripe/resources/invoice_line_item.rb +372 -1
- data/lib/stripe/resources/invoice_payment.rb +112 -0
- data/lib/stripe/resources/invoice_rendering_template.rb +120 -0
- data/lib/stripe/resources/issuing/authorization.rb +1313 -4
- data/lib/stripe/resources/issuing/card.rb +785 -4
- data/lib/stripe/resources/issuing/cardholder.rb +684 -0
- data/lib/stripe/resources/issuing/dispute.rb +828 -2
- data/lib/stripe/resources/issuing/personalization_design.rb +395 -0
- data/lib/stripe/resources/issuing/physical_bundle.rb +80 -0
- data/lib/stripe/resources/issuing/token.rb +198 -0
- data/lib/stripe/resources/issuing/transaction.rb +991 -0
- data/lib/stripe/resources/line_item.rb +51 -0
- data/lib/stripe/resources/login_link.rb +12 -0
- data/lib/stripe/resources/mandate.rb +146 -0
- data/lib/stripe/resources/payment_intent.rb +8876 -6
- data/lib/stripe/resources/payment_link.rb +1692 -0
- data/lib/stripe/resources/payment_method.rb +1570 -4
- data/lib/stripe/resources/payment_method_configuration.rb +3189 -0
- data/lib/stripe/resources/payment_method_domain.rb +236 -0
- data/lib/stripe/resources/payout.rb +271 -4
- data/lib/stripe/resources/person.rb +295 -1
- data/lib/stripe/resources/plan.rb +352 -0
- data/lib/stripe/resources/price.rb +642 -0
- data/lib/stripe/resources/product.rb +534 -0
- data/lib/stripe/resources/product_feature.rb +25 -0
- data/lib/stripe/resources/promotion_code.rb +237 -0
- data/lib/stripe/resources/quote.rb +1015 -38
- data/lib/stripe/resources/radar/early_fraud_warning.rb +85 -0
- data/lib/stripe/resources/radar/value_list.rb +171 -0
- data/lib/stripe/resources/radar/value_list_item.rb +131 -0
- data/lib/stripe/resources/refund.rb +494 -0
- data/lib/stripe/resources/reporting/report_run.rb +172 -0
- data/lib/stripe/resources/reporting/report_type.rb +48 -1
- data/lib/stripe/resources/reserve_transaction.rb +22 -0
- data/lib/stripe/resources/reversal.rb +38 -2
- data/lib/stripe/resources/review.rb +122 -2
- data/lib/stripe/resources/setup_attempt.rb +380 -0
- data/lib/stripe/resources/setup_intent.rb +3432 -4
- data/lib/stripe/resources/shipping_rate.rb +287 -0
- data/lib/stripe/resources/sigma/scheduled_query_run.rb +62 -0
- data/lib/stripe/resources/source.rb +1250 -10
- data/lib/stripe/resources/source_mandate_notification.rb +66 -0
- data/lib/stripe/resources/source_transaction.rb +93 -0
- data/lib/stripe/resources/subscription.rb +1871 -3
- data/lib/stripe/resources/subscription_item.rb +399 -10
- data/lib/stripe/resources/subscription_schedule.rb +1455 -4
- data/lib/stripe/resources/tax/calculation.rb +430 -0
- data/lib/stripe/resources/tax/calculation_line_item.rb +71 -0
- data/lib/stripe/resources/tax/registration.rb +2667 -0
- data/lib/stripe/resources/tax/settings.rb +134 -0
- data/lib/stripe/resources/tax/transaction.rb +314 -0
- data/lib/stripe/resources/tax/transaction_line_item.rb +44 -0
- data/lib/stripe/resources/tax_code.rb +35 -0
- data/lib/stripe/resources/tax_deducted_at_source.rb +22 -0
- data/lib/stripe/resources/tax_id.rb +144 -11
- data/lib/stripe/resources/tax_rate.rb +217 -0
- data/lib/stripe/resources/terminal/configuration.rb +1328 -0
- data/lib/stripe/resources/terminal/connection_token.rb +34 -0
- data/lib/stripe/resources/terminal/location.rb +222 -0
- data/lib/stripe/resources/terminal/reader.rb +886 -0
- data/lib/stripe/resources/test_helpers/test_clock.rb +156 -0
- data/lib/stripe/resources/token.rb +1249 -0
- data/lib/stripe/resources/topup.rb +204 -2
- data/lib/stripe/resources/transfer.rb +173 -6
- data/lib/stripe/resources/treasury/credit_reversal.rb +120 -0
- data/lib/stripe/resources/treasury/debit_reversal.rb +131 -0
- data/lib/stripe/resources/treasury/financial_account.rb +833 -0
- data/lib/stripe/resources/treasury/financial_account_features.rb +204 -0
- data/lib/stripe/resources/treasury/inbound_transfer.rb +356 -0
- data/lib/stripe/resources/treasury/outbound_payment.rb +638 -0
- data/lib/stripe/resources/treasury/outbound_transfer.rb +493 -0
- data/lib/stripe/resources/treasury/received_credit.rb +284 -0
- data/lib/stripe/resources/treasury/received_debit.rb +243 -0
- data/lib/stripe/resources/treasury/transaction.rb +193 -0
- data/lib/stripe/resources/treasury/transaction_entry.rb +178 -0
- data/lib/stripe/resources/v2/amount.rb +9 -0
- data/lib/stripe/resources/v2/billing/meter_event.rb +34 -0
- data/lib/stripe/resources/v2/billing/meter_event_adjustment.rb +36 -0
- data/lib/stripe/resources/v2/billing/meter_event_session.rb +29 -0
- data/lib/stripe/resources/v2/event.rb +41 -0
- data/lib/stripe/resources/v2/event_destination.rb +73 -0
- data/lib/stripe/resources/webhook_endpoint.rb +167 -0
- data/lib/stripe/resources.rb +70 -12
- data/lib/stripe/search_result_object.rb +89 -0
- data/lib/stripe/services/account_capability_service.rb +71 -0
- data/lib/stripe/services/account_external_account_service.rb +317 -0
- data/lib/stripe/services/account_link_service.rb +63 -0
- data/lib/stripe/services/account_login_link_service.rb +28 -0
- data/lib/stripe/services/account_person_service.rb +1019 -0
- data/lib/stripe/services/account_service.rb +4171 -0
- data/lib/stripe/services/account_session_service.rb +569 -0
- data/lib/stripe/services/apple_pay_domain_service.rb +100 -0
- data/lib/stripe/services/application_fee_refund_service.rb +114 -0
- data/lib/stripe/services/application_fee_service.rb +92 -0
- data/lib/stripe/services/apps/secret_service.rb +168 -0
- data/lib/stripe/services/apps_service.rb +13 -0
- data/lib/stripe/services/balance_service.rb +21 -0
- data/lib/stripe/services/balance_transaction_service.rb +101 -0
- data/lib/stripe/services/billing/alert_service.rb +187 -0
- data/lib/stripe/services/billing/credit_balance_summary_service.rb +67 -0
- data/lib/stripe/services/billing/credit_balance_transaction_service.rb +70 -0
- data/lib/stripe/services/billing/credit_grant_service.rb +240 -0
- data/lib/stripe/services/billing/meter_event_adjustment_service.rb +45 -0
- data/lib/stripe/services/billing/meter_event_service.rb +40 -0
- data/lib/stripe/services/billing/meter_event_summary_service.rb +58 -0
- data/lib/stripe/services/billing/meter_service.rb +211 -0
- data/lib/stripe/services/billing_portal/configuration_service.rb +496 -0
- data/lib/stripe/services/billing_portal/session_service.rb +192 -0
- data/lib/stripe/services/billing_portal_service.rb +14 -0
- data/lib/stripe/services/billing_service.rb +20 -0
- data/lib/stripe/services/charge_service.rb +471 -0
- data/lib/stripe/services/checkout/session_line_item_service.rb +37 -0
- data/lib/stripe/services/checkout/session_service.rb +2495 -0
- data/lib/stripe/services/checkout_service.rb +13 -0
- data/lib/stripe/services/climate/order_service.rb +170 -0
- data/lib/stripe/services/climate/product_service.rb +57 -0
- data/lib/stripe/services/climate/supplier_service.rb +57 -0
- data/lib/stripe/services/climate_service.rb +15 -0
- data/lib/stripe/services/confirmation_token_service.rb +26 -0
- data/lib/stripe/services/country_spec_service.rb +55 -0
- data/lib/stripe/services/coupon_service.rb +202 -0
- data/lib/stripe/services/credit_note_line_item_service.rb +35 -0
- data/lib/stripe/services/credit_note_preview_lines_service.rb +169 -0
- data/lib/stripe/services/credit_note_service.rb +457 -0
- data/lib/stripe/services/customer_balance_transaction_service.rb +113 -0
- data/lib/stripe/services/customer_cash_balance_service.rb +57 -0
- data/lib/stripe/services/customer_cash_balance_transaction_service.rb +55 -0
- data/lib/stripe/services/customer_funding_instructions_service.rb +61 -0
- data/lib/stripe/services/customer_payment_method_service.rb +68 -0
- data/lib/stripe/services/customer_payment_source_service.rb +255 -0
- data/lib/stripe/services/customer_service.rb +664 -0
- data/lib/stripe/services/customer_session_service.rb +113 -0
- data/lib/stripe/services/customer_tax_id_service.rb +94 -0
- data/lib/stripe/services/dispute_service.rb +422 -0
- data/lib/stripe/services/entitlements/active_entitlement_service.rb +66 -0
- data/lib/stripe/services/entitlements/feature_service.rb +128 -0
- data/lib/stripe/services/entitlements_service.rb +14 -0
- data/lib/stripe/services/ephemeral_key_service.rb +64 -0
- data/lib/stripe/services/event_service.rb +87 -0
- data/lib/stripe/services/exchange_rate_service.rb +55 -0
- data/lib/stripe/services/file_link_service.rb +132 -0
- data/lib/stripe/services/file_service.rb +124 -0
- data/lib/stripe/services/financial_connections/account_owner_service.rb +46 -0
- data/lib/stripe/services/financial_connections/account_service.rb +177 -0
- data/lib/stripe/services/financial_connections/session_service.rb +98 -0
- data/lib/stripe/services/financial_connections/transaction_service.rb +100 -0
- data/lib/stripe/services/financial_connections_service.rb +15 -0
- data/lib/stripe/services/forwarding/request_service.rb +147 -0
- data/lib/stripe/services/forwarding_service.rb +13 -0
- data/lib/stripe/services/identity/verification_report_service.rb +95 -0
- data/lib/stripe/services/identity/verification_session_service.rb +337 -0
- data/lib/stripe/services/identity_service.rb +14 -0
- data/lib/stripe/services/invoice_item_service.rb +394 -0
- data/lib/stripe/services/invoice_line_item_service.rb +252 -0
- data/lib/stripe/services/invoice_payment_service.rb +83 -0
- data/lib/stripe/services/invoice_rendering_template_service.rb +101 -0
- data/lib/stripe/services/invoice_service.rb +2900 -0
- data/lib/stripe/services/issuing/authorization_service.rb +169 -0
- data/lib/stripe/services/issuing/card_service.rb +507 -0
- data/lib/stripe/services/issuing/cardholder_service.rb +577 -0
- data/lib/stripe/services/issuing/dispute_service.rb +696 -0
- data/lib/stripe/services/issuing/personalization_design_service.rb +245 -0
- data/lib/stripe/services/issuing/physical_bundle_service.rb +70 -0
- data/lib/stripe/services/issuing/token_service.rb +114 -0
- data/lib/stripe/services/issuing/transaction_service.rb +118 -0
- data/lib/stripe/services/issuing_service.rb +20 -0
- data/lib/stripe/services/mandate_service.rb +26 -0
- data/lib/stripe/services/oauth_service.rb +63 -0
- data/lib/stripe/services/payment_intent_service.rb +7202 -0
- data/lib/stripe/services/payment_link_line_item_service.rb +35 -0
- data/lib/stripe/services/payment_link_service.rb +1333 -0
- data/lib/stripe/services/payment_method_configuration_service.rb +2306 -0
- data/lib/stripe/services/payment_method_domain_service.rb +142 -0
- data/lib/stripe/services/payment_method_service.rb +843 -0
- data/lib/stripe/services/payout_service.rb +225 -0
- data/lib/stripe/services/plan_service.rb +297 -0
- data/lib/stripe/services/price_service.rb +545 -0
- data/lib/stripe/services/product_feature_service.rb +91 -0
- data/lib/stripe/services/product_service.rb +494 -0
- data/lib/stripe/services/promotion_code_service.rb +228 -0
- data/lib/stripe/services/quote_computed_upfront_line_items_service.rb +35 -0
- data/lib/stripe/services/quote_line_item_service.rb +35 -0
- data/lib/stripe/services/quote_service.rb +703 -0
- data/lib/stripe/services/radar/early_fraud_warning_service.rb +93 -0
- data/lib/stripe/services/radar/value_list_item_service.rb +130 -0
- data/lib/stripe/services/radar/value_list_service.rb +165 -0
- data/lib/stripe/services/radar_service.rb +15 -0
- data/lib/stripe/services/refund_service.rb +200 -0
- data/lib/stripe/services/reporting/report_run_service.rb +147 -0
- data/lib/stripe/services/reporting/report_type_service.rb +48 -0
- data/lib/stripe/services/reporting_service.rb +14 -0
- data/lib/stripe/services/review_service.rb +89 -0
- data/lib/stripe/services/setup_attempt_service.rb +68 -0
- data/lib/stripe/services/setup_intent_service.rb +3107 -0
- data/lib/stripe/services/shipping_rate_service.rb +250 -0
- data/lib/stripe/services/sigma/scheduled_query_run_service.rb +57 -0
- data/lib/stripe/services/sigma_service.rb +13 -0
- data/lib/stripe/services/source_service.rb +665 -0
- data/lib/stripe/services/source_transaction_service.rb +35 -0
- data/lib/stripe/services/subscription_item_service.rb +372 -0
- data/lib/stripe/services/subscription_schedule_service.rb +1224 -0
- data/lib/stripe/services/subscription_service.rb +1590 -0
- data/lib/stripe/services/tax/calculation_line_item_service.rb +37 -0
- data/lib/stripe/services/tax/calculation_service.rb +246 -0
- data/lib/stripe/services/tax/registration_service.rb +1774 -0
- data/lib/stripe/services/tax/settings_service.rb +104 -0
- data/lib/stripe/services/tax/transaction_line_item_service.rb +37 -0
- data/lib/stripe/services/tax/transaction_service.rb +159 -0
- data/lib/stripe/services/tax_code_service.rb +49 -0
- data/lib/stripe/services/tax_id_service.rb +116 -0
- data/lib/stripe/services/tax_rate_service.rb +193 -0
- data/lib/stripe/services/tax_service.rb +16 -0
- data/lib/stripe/services/terminal/configuration_service.rb +1059 -0
- data/lib/stripe/services/terminal/connection_token_service.rb +31 -0
- data/lib/stripe/services/terminal/location_service.rb +207 -0
- data/lib/stripe/services/terminal/reader_service.rb +488 -0
- data/lib/stripe/services/terminal_service.rb +16 -0
- data/lib/stripe/services/test_helpers/confirmation_token_service.rb +655 -0
- data/lib/stripe/services/test_helpers/customer_service.rb +37 -0
- data/lib/stripe/services/test_helpers/issuing/authorization_service.rb +832 -0
- data/lib/stripe/services/test_helpers/issuing/card_service.rb +110 -0
- data/lib/stripe/services/test_helpers/issuing/personalization_design_service.rb +84 -0
- data/lib/stripe/services/test_helpers/issuing/transaction_service.rb +675 -0
- data/lib/stripe/services/test_helpers/issuing_service.rb +19 -0
- data/lib/stripe/services/test_helpers/refund_service.rb +28 -0
- data/lib/stripe/services/test_helpers/terminal/reader_service.rb +108 -0
- data/lib/stripe/services/test_helpers/terminal_service.rb +15 -0
- data/lib/stripe/services/test_helpers/test_clock_service.rb +119 -0
- data/lib/stripe/services/test_helpers/treasury/inbound_transfer_service.rb +81 -0
- data/lib/stripe/services/test_helpers/treasury/outbound_payment_service.rb +141 -0
- data/lib/stripe/services/test_helpers/treasury/outbound_transfer_service.rb +141 -0
- data/lib/stripe/services/test_helpers/treasury/received_credit_service.rb +81 -0
- data/lib/stripe/services/test_helpers/treasury/received_debit_service.rb +81 -0
- data/lib/stripe/services/test_helpers/treasury_service.rb +19 -0
- data/lib/stripe/services/test_helpers_service.rb +19 -0
- data/lib/stripe/services/token_service.rb +1224 -0
- data/lib/stripe/services/topup_service.rb +191 -0
- data/lib/stripe/services/transfer_reversal_service.rb +122 -0
- data/lib/stripe/services/transfer_service.rb +166 -0
- data/lib/stripe/services/treasury/credit_reversal_service.rb +100 -0
- data/lib/stripe/services/treasury/debit_reversal_service.rb +104 -0
- data/lib/stripe/services/treasury/financial_account_features_service.rb +196 -0
- data/lib/stripe/services/treasury/financial_account_service.rb +554 -0
- data/lib/stripe/services/treasury/inbound_transfer_service.rb +140 -0
- data/lib/stripe/services/treasury/outbound_payment_service.rb +310 -0
- data/lib/stripe/services/treasury/outbound_transfer_service.rb +176 -0
- data/lib/stripe/services/treasury/received_credit_service.rb +82 -0
- data/lib/stripe/services/treasury/received_debit_service.rb +70 -0
- data/lib/stripe/services/treasury/transaction_entry_service.rb +117 -0
- data/lib/stripe/services/treasury/transaction_service.rb +125 -0
- data/lib/stripe/services/treasury_service.rb +22 -0
- data/lib/stripe/services/v1_services.rb +90 -0
- data/lib/stripe/services/v2/billing/meter_event_adjustment_service.rb +44 -0
- data/lib/stripe/services/v2/billing/meter_event_service.rb +46 -0
- data/lib/stripe/services/v2/billing/meter_event_session_service.rb +23 -0
- data/lib/stripe/services/v2/billing/meter_event_stream_service.rb +56 -0
- data/lib/stripe/services/v2/billing_service.rb +18 -0
- data/lib/stripe/services/v2/core/event_destination_service.rb +235 -0
- data/lib/stripe/services/v2/core/event_service.rb +48 -0
- data/lib/stripe/services/v2/core_service.rb +16 -0
- data/lib/stripe/services/v2_services.rb +14 -0
- data/lib/stripe/services/webhook_endpoint_service.rb +156 -0
- data/lib/stripe/services.rb +180 -0
- data/lib/stripe/singleton_api_resource.rb +3 -3
- data/lib/stripe/stripe_client.rb +56 -1021
- data/lib/stripe/stripe_configuration.rb +63 -42
- data/lib/stripe/stripe_object.rb +75 -39
- data/lib/stripe/stripe_response.rb +1 -3
- data/lib/stripe/stripe_service.rb +32 -0
- data/lib/stripe/thin_event.rb +37 -0
- data/lib/stripe/util.rb +161 -39
- data/lib/stripe/v2_list_object.rb +84 -0
- data/lib/stripe/version.rb +1 -1
- data/lib/stripe/webhook.rb +3 -2
- data/lib/stripe.rb +44 -1
- data/rbi/stripe/resources/account.rbi +4926 -0
- data/rbi/stripe/resources/account_link.rbi +74 -0
- data/rbi/stripe/resources/account_session.rbi +1013 -0
- data/rbi/stripe/resources/apple_pay_domain.rbi +88 -0
- data/rbi/stripe/resources/application.rbi +20 -0
- data/rbi/stripe/resources/application_fee.rbi +118 -0
- data/rbi/stripe/resources/application_fee_refund.rbi +37 -0
- data/rbi/stripe/resources/apps/secret.rbi +195 -0
- data/rbi/stripe/resources/balance.rbi +235 -0
- data/rbi/stripe/resources/balance_transaction.rbi +147 -0
- data/rbi/stripe/resources/bank_account.rbi +127 -0
- data/rbi/stripe/resources/billing/alert.rbi +201 -0
- data/rbi/stripe/resources/billing/alert_triggered.rbi +28 -0
- data/rbi/stripe/resources/billing/credit_balance_summary.rbi +63 -0
- data/rbi/stripe/resources/billing/credit_balance_transaction.rbi +147 -0
- data/rbi/stripe/resources/billing/credit_grant.rbi +291 -0
- data/rbi/stripe/resources/billing/meter.rbi +226 -0
- data/rbi/stripe/resources/billing/meter_event.rbi +64 -0
- data/rbi/stripe/resources/billing/meter_event_adjustment.rbi +64 -0
- data/rbi/stripe/resources/billing/meter_event_summary.rbi +35 -0
- data/rbi/stripe/resources/billing_portal/configuration.rbi +645 -0
- data/rbi/stripe/resources/billing_portal/session.rbi +345 -0
- data/rbi/stripe/resources/capability.rbi +125 -0
- data/rbi/stripe/resources/card.rbi +125 -0
- data/rbi/stripe/resources/cash_balance.rbi +32 -0
- data/rbi/stripe/resources/charge.rbi +2069 -0
- data/rbi/stripe/resources/checkout/session.rbi +4004 -0
- data/rbi/stripe/resources/climate/order.rbi +245 -0
- data/rbi/stripe/resources/climate/product.rbi +75 -0
- data/rbi/stripe/resources/climate/supplier.rbi +72 -0
- data/rbi/stripe/resources/confirmation_token.rbi +1807 -0
- data/rbi/stripe/resources/connect_collection_transfer.rbi +26 -0
- data/rbi/stripe/resources/country_spec.rbi +85 -0
- data/rbi/stripe/resources/coupon.rbi +250 -0
- data/rbi/stripe/resources/credit_note.rbi +752 -0
- data/rbi/stripe/resources/credit_note_line_item.rbi +101 -0
- data/rbi/stripe/resources/customer.rbi +1005 -0
- data/rbi/stripe/resources/customer_balance_transaction.rbi +56 -0
- data/rbi/stripe/resources/customer_cash_balance_transaction.rbi +151 -0
- data/rbi/stripe/resources/customer_session.rbi +200 -0
- data/rbi/stripe/resources/discount.rbi +53 -0
- data/rbi/stripe/resources/dispute.rbi +761 -0
- data/rbi/stripe/resources/entitlements/active_entitlement.rbi +58 -0
- data/rbi/stripe/resources/entitlements/active_entitlement_summary.rbi +23 -0
- data/rbi/stripe/resources/entitlements/feature.rbi +117 -0
- data/rbi/stripe/resources/ephemeral_key.rbi +44 -0
- data/rbi/stripe/resources/event.rbi +149 -0
- data/rbi/stripe/resources/exchange_rate.rbi +66 -0
- data/rbi/stripe/resources/file.rbi +143 -0
- data/rbi/stripe/resources/file_link.rbi +141 -0
- data/rbi/stripe/resources/financial_connections/account.rbi +339 -0
- data/rbi/stripe/resources/financial_connections/account_owner.rbi +35 -0
- data/rbi/stripe/resources/financial_connections/account_ownership.rbi +23 -0
- data/rbi/stripe/resources/financial_connections/session.rbi +123 -0
- data/rbi/stripe/resources/financial_connections/transaction.rbi +124 -0
- data/rbi/stripe/resources/forwarding/request.rbi +216 -0
- data/rbi/stripe/resources/funding_instructions.rbi +437 -0
- data/rbi/stripe/resources/identity/verification_report.rbi +360 -0
- data/rbi/stripe/resources/identity/verification_session.rbi +526 -0
- data/rbi/stripe/resources/invoice.rbi +3812 -0
- data/rbi/stripe/resources/invoice_item.rbi +473 -0
- data/rbi/stripe/resources/invoice_line_item.rbi +432 -0
- data/rbi/stripe/resources/invoice_payment.rbi +121 -0
- data/rbi/stripe/resources/invoice_rendering_template.rbi +104 -0
- data/rbi/stripe/resources/issuing/authorization.rbi +1283 -0
- data/rbi/stripe/resources/issuing/card.rbi +741 -0
- data/rbi/stripe/resources/issuing/cardholder.rbi +744 -0
- data/rbi/stripe/resources/issuing/dispute.rbi +913 -0
- data/rbi/stripe/resources/issuing/personalization_design.rbi +338 -0
- data/rbi/stripe/resources/issuing/physical_bundle.rbi +79 -0
- data/rbi/stripe/resources/issuing/token.rbi +226 -0
- data/rbi/stripe/resources/issuing/transaction.rbi +1061 -0
- data/rbi/stripe/resources/line_item.rbi +72 -0
- data/rbi/stripe/resources/login_link.rbi +19 -0
- data/rbi/stripe/resources/mandate.rbi +187 -0
- data/rbi/stripe/resources/payment_intent.rbi +9647 -0
- data/rbi/stripe/resources/payment_link.rbi +1801 -0
- data/rbi/stripe/resources/payment_method.rbi +1761 -0
- data/rbi/stripe/resources/payment_method_configuration.rbi +3550 -0
- data/rbi/stripe/resources/payment_method_domain.rbi +228 -0
- data/rbi/stripe/resources/payout.rbi +300 -0
- data/rbi/stripe/resources/person.rbi +401 -0
- data/rbi/stripe/resources/plan.rbi +371 -0
- data/rbi/stripe/resources/price.rbi +694 -0
- data/rbi/stripe/resources/product.rbi +555 -0
- data/rbi/stripe/resources/product_feature.rbi +26 -0
- data/rbi/stripe/resources/promotion_code.rbi +261 -0
- data/rbi/stripe/resources/quote.rbi +1126 -0
- data/rbi/stripe/resources/radar/early_fraud_warning.rbi +98 -0
- data/rbi/stripe/resources/radar/value_list.rbi +168 -0
- data/rbi/stripe/resources/radar/value_list_item.rbi +129 -0
- data/rbi/stripe/resources/refund.rbi +523 -0
- data/rbi/stripe/resources/reporting/report_run.rbi +191 -0
- data/rbi/stripe/resources/reporting/report_type.rbi +57 -0
- data/rbi/stripe/resources/reserve_transaction.rbi +23 -0
- data/rbi/stripe/resources/reversal.rbi +51 -0
- data/rbi/stripe/resources/review.rbi +154 -0
- data/rbi/stripe/resources/setup_attempt.rbi +477 -0
- data/rbi/stripe/resources/setup_intent.rbi +3655 -0
- data/rbi/stripe/resources/shipping_rate.rbi +305 -0
- data/rbi/stripe/resources/sigma/scheduled_query_run.rbi +75 -0
- data/rbi/stripe/resources/source.rbi +1496 -0
- data/rbi/stripe/resources/source_mandate_notification.rbi +77 -0
- data/rbi/stripe/resources/source_transaction.rbi +127 -0
- data/rbi/stripe/resources/subscription.rbi +2027 -0
- data/rbi/stripe/resources/subscription_item.rbi +404 -0
- data/rbi/stripe/resources/subscription_schedule.rbi +1623 -0
- data/rbi/stripe/resources/tax/calculation.rbi +478 -0
- data/rbi/stripe/resources/tax/calculation_line_item.rbi +91 -0
- data/rbi/stripe/resources/tax/registration.rbi +2713 -0
- data/rbi/stripe/resources/tax/settings.rbi +141 -0
- data/rbi/stripe/resources/tax/transaction.rbi +351 -0
- data/rbi/stripe/resources/tax/transaction_line_item.rbi +54 -0
- data/rbi/stripe/resources/tax_code.rbi +44 -0
- data/rbi/stripe/resources/tax_deducted_at_source.rbi +23 -0
- data/rbi/stripe/resources/tax_id.rbi +165 -0
- data/rbi/stripe/resources/tax_rate.rbi +239 -0
- data/rbi/stripe/resources/terminal/configuration.rbi +1386 -0
- data/rbi/stripe/resources/terminal/connection_token.rbi +37 -0
- data/rbi/stripe/resources/terminal/location.rbi +222 -0
- data/rbi/stripe/resources/terminal/reader.rbi +847 -0
- data/rbi/stripe/resources/test_helpers/test_clock.rbi +132 -0
- data/rbi/stripe/resources/token.rbi +1283 -0
- data/rbi/stripe/resources/topup.rbi +222 -0
- data/rbi/stripe/resources/transfer.rbi +199 -0
- data/rbi/stripe/resources/treasury/credit_reversal.rbi +119 -0
- data/rbi/stripe/resources/treasury/debit_reversal.rbi +131 -0
- data/rbi/stripe/resources/treasury/financial_account.rbi +865 -0
- data/rbi/stripe/resources/treasury/financial_account_features.rbi +260 -0
- data/rbi/stripe/resources/treasury/inbound_transfer.rbi +295 -0
- data/rbi/stripe/resources/treasury/outbound_payment.rbi +592 -0
- data/rbi/stripe/resources/treasury/outbound_transfer.rbi +431 -0
- data/rbi/stripe/resources/treasury/received_credit.rbi +302 -0
- data/rbi/stripe/resources/treasury/received_debit.rbi +256 -0
- data/rbi/stripe/resources/treasury/transaction.rbi +215 -0
- data/rbi/stripe/resources/treasury/transaction_entry.rbi +192 -0
- data/rbi/stripe/resources/v2/amount.rbi +14 -0
- data/rbi/stripe/resources/v2/billing/meter_event.rbi +37 -0
- data/rbi/stripe/resources/v2/billing/meter_event_adjustment.rbi +41 -0
- data/rbi/stripe/resources/v2/billing/meter_event_session.rbi +31 -0
- data/rbi/stripe/resources/v2/event.rbi +48 -0
- data/rbi/stripe/resources/v2/event_destination.rbi +91 -0
- data/rbi/stripe/resources/webhook_endpoint.rbi +168 -0
- data/rbi/stripe/services/account_capability_service.rbi +51 -0
- data/rbi/stripe/services/account_external_account_service.rbi +304 -0
- data/rbi/stripe/services/account_link_service.rbi +58 -0
- data/rbi/stripe/services/account_login_link_service.rbi +22 -0
- data/rbi/stripe/services/account_person_service.rbi +1011 -0
- data/rbi/stripe/services/account_service.rbi +4213 -0
- data/rbi/stripe/services/account_session_service.rbi +646 -0
- data/rbi/stripe/services/apple_pay_domain_service.rbi +76 -0
- data/rbi/stripe/services/application_fee_refund_service.rbi +93 -0
- data/rbi/stripe/services/application_fee_service.rbi +78 -0
- data/rbi/stripe/services/apps/secret_service.rbi +151 -0
- data/{lib/stripe/resources/usage_record_summary.rb → rbi/stripe/services/apps_service.rbi} +4 -3
- data/rbi/stripe/services/balance_service.rbi +21 -0
- data/rbi/stripe/services/balance_transaction_service.rbi +93 -0
- data/rbi/stripe/services/billing/alert_service.rbi +152 -0
- data/rbi/stripe/services/billing/credit_balance_summary_service.rbi +68 -0
- data/rbi/stripe/services/billing/credit_balance_transaction_service.rbi +59 -0
- data/rbi/stripe/services/billing/credit_grant_service.rbi +211 -0
- data/rbi/stripe/services/billing/meter_event_adjustment_service.rbi +42 -0
- data/rbi/stripe/services/billing/meter_event_service.rbi +42 -0
- data/rbi/stripe/services/billing/meter_event_summary_service.rbi +54 -0
- data/rbi/stripe/services/billing/meter_service.rbi +163 -0
- data/rbi/stripe/services/billing_portal/configuration_service.rbi +511 -0
- data/rbi/stripe/services/billing_portal/session_service.rbi +204 -0
- data/rbi/stripe/services/billing_portal_service.rbi +10 -0
- data/rbi/stripe/services/billing_service.rbi +15 -0
- data/rbi/stripe/services/charge_service.rbi +448 -0
- data/rbi/stripe/services/checkout/session_line_item_service.rbi +33 -0
- data/rbi/stripe/services/checkout/session_service.rbi +2614 -0
- data/rbi/stripe/services/checkout_service.rbi +9 -0
- data/rbi/stripe/services/climate/order_service.rbi +142 -0
- data/rbi/stripe/services/climate/product_service.rbi +46 -0
- data/rbi/stripe/services/climate/supplier_service.rbi +46 -0
- data/rbi/stripe/services/climate_service.rbi +11 -0
- data/rbi/stripe/services/confirmation_token_service.rbi +20 -0
- data/rbi/stripe/services/country_spec_service.rbi +44 -0
- data/rbi/stripe/services/coupon_service.rbi +194 -0
- data/rbi/stripe/services/credit_note_line_item_service.rbi +31 -0
- data/rbi/stripe/services/credit_note_preview_lines_service.rbi +167 -0
- data/rbi/stripe/services/credit_note_service.rbi +415 -0
- data/rbi/stripe/services/customer_balance_transaction_service.rbi +92 -0
- data/rbi/stripe/services/customer_cash_balance_service.rbi +45 -0
- data/rbi/stripe/services/customer_cash_balance_transaction_service.rbi +44 -0
- data/rbi/stripe/services/customer_funding_instructions_service.rbi +59 -0
- data/rbi/stripe/services/customer_payment_method_service.rbi +57 -0
- data/rbi/stripe/services/customer_payment_source_service.rbi +232 -0
- data/rbi/stripe/services/customer_service.rbi +647 -0
- data/rbi/stripe/services/customer_session_service.rbi +116 -0
- data/rbi/stripe/services/customer_tax_id_service.rbi +70 -0
- data/rbi/stripe/services/dispute_service.rbi +424 -0
- data/rbi/stripe/services/entitlements/active_entitlement_service.rbi +55 -0
- data/rbi/stripe/services/entitlements/feature_service.rbi +107 -0
- data/rbi/stripe/services/entitlements_service.rbi +10 -0
- data/rbi/stripe/services/ephemeral_key_service.rbi +53 -0
- data/rbi/stripe/services/event_service.rbi +83 -0
- data/rbi/stripe/services/exchange_rate_service.rbi +44 -0
- data/rbi/stripe/services/file_link_service.rbi +124 -0
- data/rbi/stripe/services/file_service.rbi +116 -0
- data/rbi/stripe/services/financial_connections/account_owner_service.rbi +42 -0
- data/rbi/stripe/services/financial_connections/account_service.rbi +133 -0
- data/rbi/stripe/services/financial_connections/session_service.rbi +88 -0
- data/rbi/stripe/services/financial_connections/transaction_service.rbi +92 -0
- data/rbi/stripe/services/financial_connections_service.rbi +11 -0
- data/rbi/stripe/services/forwarding/request_service.rbi +134 -0
- data/rbi/stripe/services/forwarding_service.rbi +9 -0
- data/rbi/stripe/services/identity/verification_report_service.rbi +87 -0
- data/rbi/stripe/services/identity/verification_session_service.rbi +323 -0
- data/rbi/stripe/services/identity_service.rbi +10 -0
- data/rbi/stripe/services/invoice_item_service.rbi +366 -0
- data/rbi/stripe/services/invoice_line_item_service.rbi +259 -0
- data/rbi/stripe/services/invoice_payment_service.rbi +71 -0
- data/rbi/stripe/services/invoice_rendering_template_service.rbi +82 -0
- data/rbi/stripe/services/invoice_service.rbi +2981 -0
- data/rbi/stripe/services/issuing/authorization_service.rbi +146 -0
- data/rbi/stripe/services/issuing/card_service.rbi +495 -0
- data/rbi/stripe/services/issuing/cardholder_service.rbi +587 -0
- data/rbi/stripe/services/issuing/dispute_service.rbi +707 -0
- data/rbi/stripe/services/issuing/personalization_design_service.rbi +243 -0
- data/rbi/stripe/services/issuing/physical_bundle_service.rbi +59 -0
- data/rbi/stripe/services/issuing/token_service.rbi +99 -0
- data/rbi/stripe/services/issuing/transaction_service.rbi +105 -0
- data/rbi/stripe/services/issuing_service.rbi +16 -0
- data/rbi/stripe/services/mandate_service.rbi +20 -0
- data/rbi/stripe/services/payment_intent_service.rbi +7659 -0
- data/rbi/stripe/services/payment_link_line_item_service.rbi +31 -0
- data/rbi/stripe/services/payment_link_service.rbi +1352 -0
- data/rbi/stripe/services/payment_method_configuration_service.rbi +2487 -0
- data/rbi/stripe/services/payment_method_domain_service.rbi +112 -0
- data/rbi/stripe/services/payment_method_service.rbi +776 -0
- data/rbi/stripe/services/payout_service.rbi +205 -0
- data/rbi/stripe/services/plan_service.rbi +282 -0
- data/rbi/stripe/services/price_service.rbi +546 -0
- data/rbi/stripe/services/product_feature_service.rbi +67 -0
- data/rbi/stripe/services/product_service.rbi +477 -0
- data/rbi/stripe/services/promotion_code_service.rbi +214 -0
- data/rbi/stripe/services/quote_computed_upfront_line_items_service.rbi +31 -0
- data/rbi/stripe/services/quote_line_item_service.rbi +31 -0
- data/rbi/stripe/services/quote_service.rbi +686 -0
- data/rbi/stripe/services/radar/early_fraud_warning_service.rbi +85 -0
- data/rbi/stripe/services/radar/value_list_item_service.rbi +109 -0
- data/rbi/stripe/services/radar/value_list_service.rbi +141 -0
- data/rbi/stripe/services/radar_service.rbi +11 -0
- data/rbi/stripe/services/refund_service.rbi +185 -0
- data/rbi/stripe/services/reporting/report_run_service.rbi +135 -0
- data/rbi/stripe/services/reporting/report_type_service.rbi +35 -0
- data/rbi/stripe/services/reporting_service.rbi +10 -0
- data/rbi/stripe/services/review_service.rbi +84 -0
- data/rbi/stripe/services/setup_attempt_service.rbi +65 -0
- data/rbi/stripe/services/setup_intent_service.rbi +3391 -0
- data/rbi/stripe/services/shipping_rate_service.rbi +241 -0
- data/rbi/stripe/services/sigma/scheduled_query_run_service.rbi +46 -0
- data/rbi/stripe/services/sigma_service.rbi +9 -0
- data/rbi/stripe/services/source_service.rbi +663 -0
- data/rbi/stripe/services/source_transaction_service.rbi +31 -0
- data/rbi/stripe/services/subscription_item_service.rbi +350 -0
- data/rbi/stripe/services/subscription_schedule_service.rbi +1290 -0
- data/rbi/stripe/services/subscription_service.rbi +1648 -0
- data/rbi/stripe/services/tax/calculation_line_item_service.rbi +33 -0
- data/rbi/stripe/services/tax/calculation_service.rbi +234 -0
- data/rbi/stripe/services/tax/registration_service.rbi +1845 -0
- data/rbi/stripe/services/tax/settings_service.rbi +93 -0
- data/rbi/stripe/services/tax/transaction_line_item_service.rbi +33 -0
- data/rbi/stripe/services/tax/transaction_service.rbi +146 -0
- data/rbi/stripe/services/tax_code_service.rbi +44 -0
- data/rbi/stripe/services/tax_id_service.rbi +110 -0
- data/rbi/stripe/services/tax_rate_service.rbi +185 -0
- data/rbi/stripe/services/tax_service.rbi +12 -0
- data/rbi/stripe/services/terminal/configuration_service.rbi +1118 -0
- data/rbi/stripe/services/terminal/connection_token_service.rbi +25 -0
- data/rbi/stripe/services/terminal/location_service.rbi +182 -0
- data/rbi/stripe/services/terminal/reader_service.rbi +455 -0
- data/rbi/stripe/services/terminal_service.rbi +12 -0
- data/rbi/stripe/services/test_helpers/confirmation_token_service.rbi +739 -0
- data/rbi/stripe/services/test_helpers/customer_service.rbi +33 -0
- data/rbi/stripe/services/test_helpers/issuing/authorization_service.rbi +848 -0
- data/rbi/stripe/services/test_helpers/issuing/card_service.rbi +76 -0
- data/rbi/stripe/services/test_helpers/issuing/personalization_design_service.rbi +69 -0
- data/rbi/stripe/services/test_helpers/issuing/transaction_service.rbi +711 -0
- data/rbi/stripe/services/test_helpers/issuing_service.rbi +14 -0
- data/rbi/stripe/services/test_helpers/refund_service.rbi +22 -0
- data/rbi/stripe/services/test_helpers/terminal/reader_service.rbi +93 -0
- data/rbi/stripe/services/test_helpers/terminal_service.rbi +11 -0
- data/rbi/stripe/services/test_helpers/test_clock_service.rbi +90 -0
- data/rbi/stripe/services/test_helpers/treasury/inbound_transfer_service.rbi +64 -0
- data/rbi/stripe/services/test_helpers/treasury/outbound_payment_service.rbi +125 -0
- data/rbi/stripe/services/test_helpers/treasury/outbound_transfer_service.rbi +125 -0
- data/rbi/stripe/services/test_helpers/treasury/received_credit_service.rbi +87 -0
- data/rbi/stripe/services/test_helpers/treasury/received_debit_service.rbi +87 -0
- data/rbi/stripe/services/test_helpers/treasury_service.rbi +15 -0
- data/rbi/stripe/services/test_helpers_service.rbi +15 -0
- data/rbi/stripe/services/token_service.rbi +1257 -0
- data/rbi/stripe/services/topup_service.rbi +176 -0
- data/rbi/stripe/services/transfer_reversal_service.rbi +101 -0
- data/rbi/stripe/services/transfer_service.rbi +152 -0
- data/rbi/stripe/services/treasury/credit_reversal_service.rbi +84 -0
- data/rbi/stripe/services/treasury/debit_reversal_service.rbi +88 -0
- data/rbi/stripe/services/treasury/financial_account_features_service.rbi +198 -0
- data/rbi/stripe/services/treasury/financial_account_service.rbi +562 -0
- data/rbi/stripe/services/treasury/inbound_transfer_service.rbi +117 -0
- data/rbi/stripe/services/treasury/outbound_payment_service.rbi +304 -0
- data/rbi/stripe/services/treasury/outbound_transfer_service.rbi +157 -0
- data/rbi/stripe/services/treasury/received_credit_service.rbi +72 -0
- data/rbi/stripe/services/treasury/received_debit_service.rbi +59 -0
- data/rbi/stripe/services/treasury/transaction_entry_service.rbi +111 -0
- data/rbi/stripe/services/treasury/transaction_service.rbi +122 -0
- data/rbi/stripe/services/treasury_service.rbi +18 -0
- data/rbi/stripe/services/v1_services.rbi +77 -0
- data/rbi/stripe/services/v2/billing/meter_event_adjustment_service.rbi +39 -0
- data/rbi/stripe/services/v2/billing/meter_event_service.rbi +42 -0
- data/rbi/stripe/services/v2/billing/meter_event_session_service.rbi +18 -0
- data/rbi/stripe/services/v2/billing/meter_event_stream_service.rbi +55 -0
- data/rbi/stripe/services/v2/billing_service.rbi +14 -0
- data/rbi/stripe/services/v2/core/event_destination_service.rbi +192 -0
- data/rbi/stripe/services/v2/core/event_service.rbi +36 -0
- data/rbi/stripe/services/v2/core_service.rbi +12 -0
- data/rbi/stripe/services/v2_services.rbi +10 -0
- data/rbi/stripe/services/webhook_endpoint_service.rbi +129 -0
- data/stripe.gemspec +10 -7
- metadata +599 -18
- data/lib/stripe/resources/bitcoin_receiver.rb +0 -24
- data/lib/stripe/resources/bitcoin_transaction.rb +0 -16
- data/lib/stripe/resources/issuing/card_details.rb +0 -9
- data/lib/stripe/resources/order.rb +0 -33
- data/lib/stripe/resources/order_return.rb +0 -10
- data/lib/stripe/resources/recipient.rb +0 -14
- data/lib/stripe/resources/sku.rb +0 -13
- data/lib/stripe/resources/three_d_secure.rb +0 -14
data/lib/stripe/util.rb
CHANGED
@@ -4,25 +4,8 @@ require "cgi"
|
|
4
4
|
|
5
5
|
module Stripe
|
6
6
|
module Util
|
7
|
-
|
8
|
-
|
9
|
-
:api_key,
|
10
|
-
:idempotency_key,
|
11
|
-
:stripe_account,
|
12
|
-
:stripe_version
|
13
|
-
].freeze
|
14
|
-
|
15
|
-
# Options that should be copyable from one StripeObject to another
|
16
|
-
# including options that may be internal.
|
17
|
-
OPTS_COPYABLE = (
|
18
|
-
OPTS_USER_SPECIFIED + Set[:api_base]
|
19
|
-
).freeze
|
20
|
-
|
21
|
-
# Options that should be persisted between API requests. This includes
|
22
|
-
# client, which is an object containing an HTTP client to reuse.
|
23
|
-
OPTS_PERSISTABLE = (
|
24
|
-
OPTS_USER_SPECIFIED + Set[:client] - Set[:idempotency_key]
|
25
|
-
).freeze
|
7
|
+
LEGAL_FIRST_CHARACTER = /[a-zA-Z_]/.freeze
|
8
|
+
LEGAL_VARIABLE_CHARACTER = /[a-zA-Z0-9_]/.freeze
|
26
9
|
|
27
10
|
def self.objects_to_ids(obj)
|
28
11
|
case obj
|
@@ -43,10 +26,65 @@ module Stripe
|
|
43
26
|
@object_classes ||= Stripe::ObjectTypes.object_names_to_classes
|
44
27
|
end
|
45
28
|
|
29
|
+
def self.v2_object_classes
|
30
|
+
@v2_object_classes ||= Stripe::ObjectTypes.v2_object_names_to_classes
|
31
|
+
end
|
32
|
+
|
33
|
+
def self.thin_event_classes
|
34
|
+
@thin_event_classes ||= Stripe::EventTypes.thin_event_names_to_classes
|
35
|
+
end
|
36
|
+
|
46
37
|
def self.object_name_matches_class?(object_name, klass)
|
47
38
|
Util.object_classes[object_name] == klass
|
48
39
|
end
|
49
40
|
|
41
|
+
# Adds a custom method to a resource class. This is used to add support for
|
42
|
+
# non-CRUDL API requests, e.g. capturing charges. custom_method takes the
|
43
|
+
# following parameters:
|
44
|
+
# - name: the name of the custom method to create (as a symbol)
|
45
|
+
# - http_verb: the HTTP verb for the API request (:get, :post, or :delete)
|
46
|
+
# - http_path: the path to append to the resource's URL. If not provided,
|
47
|
+
# the name is used as the path
|
48
|
+
# - resource: the resource implementation class
|
49
|
+
# - target: the class that custom static method will be added to
|
50
|
+
#
|
51
|
+
# For example, this call:
|
52
|
+
# custom_method :capture, http_verb: post
|
53
|
+
# adds a `capture` class method to the resource class that, when called,
|
54
|
+
# will send a POST request to `/v1/<object_name>/capture`.
|
55
|
+
# TODO: are we comfortable with deleting this?
|
56
|
+
def self.custom_method(resource, target, name, http_verb, http_path)
|
57
|
+
unless %i[get post delete].include?(http_verb)
|
58
|
+
raise ArgumentError,
|
59
|
+
"Invalid http_verb value: #{http_verb.inspect}. Should be one " \
|
60
|
+
"of :get, :post or :delete."
|
61
|
+
end
|
62
|
+
unless target.respond_to?(:resource_url)
|
63
|
+
raise ArgumentError,
|
64
|
+
"Invalid target value: #{target}. Target class should have a " \
|
65
|
+
"`resource_url` method."
|
66
|
+
end
|
67
|
+
http_path ||= name.to_s
|
68
|
+
target.define_singleton_method(name) do |id, params = {}, opts = {}|
|
69
|
+
unless id.is_a?(String)
|
70
|
+
raise ArgumentError,
|
71
|
+
"id should be a string representing the ID of an API resource"
|
72
|
+
end
|
73
|
+
|
74
|
+
url = "#{target.resource_url}/" \
|
75
|
+
"#{CGI.escape(id)}/" \
|
76
|
+
"#{CGI.escape(http_path)}"
|
77
|
+
|
78
|
+
resource.execute_resource_request(
|
79
|
+
http_verb,
|
80
|
+
url,
|
81
|
+
:api,
|
82
|
+
params,
|
83
|
+
opts
|
84
|
+
)
|
85
|
+
end
|
86
|
+
end
|
87
|
+
|
50
88
|
# Converts a hash of fields or an array of hashes into a +StripeObject+ or
|
51
89
|
# array of +StripeObject+s. These new objects will be created as a concrete
|
52
90
|
# type as dictated by their `object` field (e.g. an `object` value of
|
@@ -57,19 +95,73 @@ module Stripe
|
|
57
95
|
# ==== Attributes
|
58
96
|
#
|
59
97
|
# * +data+ - Hash of fields and values to be converted into a StripeObject.
|
98
|
+
# * +params+ - Params for +StripeObject+ like filters used in search that
|
99
|
+
# will be reused on subsequent API calls.
|
60
100
|
# * +opts+ - Options for +StripeObject+ like an API key that will be reused
|
61
101
|
# on subsequent API calls.
|
62
|
-
def self.convert_to_stripe_object(data, opts = {})
|
102
|
+
def self.convert_to_stripe_object(data, opts = {}, api_mode: :v1, requestor: nil)
|
103
|
+
convert_to_stripe_object_with_params(data, {}, opts, api_mode: api_mode, requestor: requestor)
|
104
|
+
end
|
105
|
+
|
106
|
+
# Converts a hash of fields or an array of hashes into a +StripeObject+ or
|
107
|
+
# array of +StripeObject+s. These new objects will be created as a concrete
|
108
|
+
# type as dictated by their `object` field (e.g. an `object` value of
|
109
|
+
# `charge` would create an instance of +Charge+), but if `object` is not
|
110
|
+
# present or of an unknown type, the newly created instance will fall back
|
111
|
+
# to being a +StripeObject+.
|
112
|
+
#
|
113
|
+
# ==== Attributes
|
114
|
+
#
|
115
|
+
# * +data+ - Hash of fields and values to be converted into a StripeObject.
|
116
|
+
# * +opts+ - Options for +StripeObject+ like an API key that will be reused
|
117
|
+
# on subsequent API calls.
|
118
|
+
# * +last_response+ - The raw response associated with the object.
|
119
|
+
# * +api_mode+ - The API mode to use when converting the object, either :v1 or :v2.
|
120
|
+
# * +requestor+ - The requestor to use when constructing the object.
|
121
|
+
def self.convert_to_stripe_object_with_params(
|
122
|
+
data,
|
123
|
+
params,
|
124
|
+
opts = {},
|
125
|
+
last_response = nil,
|
126
|
+
api_mode: :v1,
|
127
|
+
requestor: nil
|
128
|
+
)
|
63
129
|
opts = normalize_opts(opts)
|
64
130
|
|
65
131
|
case data
|
66
132
|
when Array
|
67
|
-
data.map { |i| convert_to_stripe_object(i, opts) }
|
133
|
+
data.map { |i| convert_to_stripe_object(i, opts, api_mode: api_mode, requestor: requestor) }
|
68
134
|
when Hash
|
135
|
+
# TODO: This is a terrible hack.
|
136
|
+
# Waiting on https://jira.corp.stripe.com/browse/API_SERVICES-3167 to add
|
137
|
+
# an object in v2 lists
|
138
|
+
if api_mode == :v2 && data.include?(:data) && data.include?(:next_page_url)
|
139
|
+
return V2::ListObject.construct_from(data, opts, last_response, api_mode, requestor)
|
140
|
+
end
|
141
|
+
|
69
142
|
# Try converting to a known object class. If none available, fall back
|
70
143
|
# to generic StripeObject
|
71
|
-
|
72
|
-
|
144
|
+
object_type = data[:type] || data["type"]
|
145
|
+
object_name = data[:object] || data["object"]
|
146
|
+
object_class = if api_mode == :v2
|
147
|
+
if object_name == "v2.core.event" && thin_event_classes.key?(object_type)
|
148
|
+
thin_event_classes.fetch(object_type)
|
149
|
+
else
|
150
|
+
v2_object_classes.fetch(
|
151
|
+
object_name, StripeObject
|
152
|
+
)
|
153
|
+
end
|
154
|
+
else
|
155
|
+
object_classes.fetch(object_name, StripeObject)
|
156
|
+
end
|
157
|
+
|
158
|
+
obj = object_class.construct_from(data, opts, last_response, api_mode, requestor)
|
159
|
+
|
160
|
+
# set filters so that we can fetch the same limit, expansions, and
|
161
|
+
# predicates when accessing the next and previous pages
|
162
|
+
obj.filters = params.dup if obj && (obj.is_a?(SearchResultObject) || obj.is_a?(ListObject))
|
163
|
+
|
164
|
+
obj
|
73
165
|
else
|
74
166
|
data
|
75
167
|
end
|
@@ -79,7 +171,7 @@ module Stripe
|
|
79
171
|
config = data.delete(:config) || Stripe.config
|
80
172
|
logger = config.logger || Stripe.logger
|
81
173
|
if !logger.nil? ||
|
82
|
-
!config.log_level.nil? && config.log_level <= Stripe::LEVEL_ERROR
|
174
|
+
(!config.log_level.nil? && config.log_level <= Stripe::LEVEL_ERROR)
|
83
175
|
log_internal(message, data, color: :cyan, level: Stripe::LEVEL_ERROR,
|
84
176
|
logger: Stripe.logger, out: $stderr)
|
85
177
|
end
|
@@ -89,7 +181,7 @@ module Stripe
|
|
89
181
|
config = data.delete(:config) || Stripe.config
|
90
182
|
logger = config.logger || Stripe.logger
|
91
183
|
if !logger.nil? ||
|
92
|
-
!config.log_level.nil? && config.log_level <= Stripe::LEVEL_INFO
|
184
|
+
(!config.log_level.nil? && config.log_level <= Stripe::LEVEL_INFO)
|
93
185
|
log_internal(message, data, color: :cyan, level: Stripe::LEVEL_INFO,
|
94
186
|
logger: Stripe.logger, out: $stdout)
|
95
187
|
end
|
@@ -99,7 +191,7 @@ module Stripe
|
|
99
191
|
config = data.delete(:config) || Stripe.config
|
100
192
|
logger = config.logger || Stripe.logger
|
101
193
|
if !logger.nil? ||
|
102
|
-
!config.log_level.nil? && config.log_level <= Stripe::LEVEL_DEBUG
|
194
|
+
(!config.log_level.nil? && config.log_level <= Stripe::LEVEL_DEBUG)
|
103
195
|
log_internal(message, data, color: :blue, level: Stripe::LEVEL_DEBUG,
|
104
196
|
logger: Stripe.logger, out: $stdout)
|
105
197
|
end
|
@@ -111,10 +203,10 @@ module Stripe
|
|
111
203
|
new_hash = {}
|
112
204
|
object.each do |key, value|
|
113
205
|
key = (begin
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
206
|
+
key.to_sym
|
207
|
+
rescue StandardError
|
208
|
+
key
|
209
|
+
end) || key
|
118
210
|
new_hash[key] = symbolize_names(value)
|
119
211
|
end
|
120
212
|
new_hash
|
@@ -129,8 +221,8 @@ module Stripe
|
|
129
221
|
# parameters in a URI or as form parameters in a request body. This mainly
|
130
222
|
# involves escaping special characters from parameter keys and values (e.g.
|
131
223
|
# `&`).
|
132
|
-
def self.encode_parameters(params)
|
133
|
-
Util.flatten_params(params)
|
224
|
+
def self.encode_parameters(params, api_mode)
|
225
|
+
Util.flatten_params(params, api_mode)
|
134
226
|
.map { |k, v| "#{url_encode(k)}=#{url_encode(v)}" }.join("&")
|
135
227
|
end
|
136
228
|
|
@@ -145,7 +237,7 @@ module Stripe
|
|
145
237
|
gsub("%5B", "[").gsub("%5D", "]")
|
146
238
|
end
|
147
239
|
|
148
|
-
def self.flatten_params(params, parent_key = nil)
|
240
|
+
def self.flatten_params(params, api_mode, parent_key = nil)
|
149
241
|
result = []
|
150
242
|
|
151
243
|
# do not sort the final output because arrays (and arrays of hashes
|
@@ -153,9 +245,9 @@ module Stripe
|
|
153
245
|
params.each do |key, value|
|
154
246
|
calculated_key = parent_key ? "#{parent_key}[#{key}]" : key.to_s
|
155
247
|
if value.is_a?(Hash)
|
156
|
-
result += flatten_params(value, calculated_key)
|
248
|
+
result += flatten_params(value, api_mode, calculated_key)
|
157
249
|
elsif value.is_a?(Array)
|
158
|
-
result += flatten_params_array(value, calculated_key)
|
250
|
+
result += flatten_params_array(value, api_mode, calculated_key)
|
159
251
|
else
|
160
252
|
result << [calculated_key, value]
|
161
253
|
end
|
@@ -164,15 +256,19 @@ module Stripe
|
|
164
256
|
result
|
165
257
|
end
|
166
258
|
|
167
|
-
def self.flatten_params_array(value, calculated_key)
|
259
|
+
def self.flatten_params_array(value, api_mode, calculated_key)
|
168
260
|
result = []
|
169
261
|
value.each_with_index do |elem, i|
|
170
262
|
if elem.is_a?(Hash)
|
171
|
-
result += flatten_params(elem, "#{calculated_key}[#{i}]")
|
263
|
+
result += flatten_params(elem, api_mode, "#{calculated_key}[#{i}]")
|
172
264
|
elsif elem.is_a?(Array)
|
173
|
-
result += flatten_params_array(elem, calculated_key)
|
265
|
+
result += flatten_params_array(elem, api_mode, calculated_key)
|
174
266
|
else
|
175
|
-
result <<
|
267
|
+
result << if api_mode == :v2
|
268
|
+
[calculated_key, elem]
|
269
|
+
else
|
270
|
+
["#{calculated_key}[#{i}]", elem]
|
271
|
+
end
|
176
272
|
end
|
177
273
|
end
|
178
274
|
result
|
@@ -216,6 +312,14 @@ module Stripe
|
|
216
312
|
end
|
217
313
|
end
|
218
314
|
|
315
|
+
# Return false for strings that are invalid variable names
|
316
|
+
# Does NOT expect there to be a preceding '@' for instance variables
|
317
|
+
def self.valid_variable_name?(key)
|
318
|
+
return false if key.empty? || key[0] !~ LEGAL_FIRST_CHARACTER
|
319
|
+
|
320
|
+
key[1..-1].chars.all? { |char| char =~ LEGAL_VARIABLE_CHARACTER }
|
321
|
+
end
|
322
|
+
|
219
323
|
def self.check_string_argument!(key)
|
220
324
|
raise TypeError, "argument must be a string" unless key.is_a?(String)
|
221
325
|
|
@@ -262,6 +366,15 @@ module Stripe
|
|
262
366
|
res.zero?
|
263
367
|
end
|
264
368
|
|
369
|
+
# Returns either v1 or v2 as api_mode based on the given path
|
370
|
+
def self.get_api_mode(path)
|
371
|
+
if path.start_with?("/v2/")
|
372
|
+
:v2
|
373
|
+
else
|
374
|
+
:v1
|
375
|
+
end
|
376
|
+
end
|
377
|
+
|
265
378
|
#
|
266
379
|
# private
|
267
380
|
#
|
@@ -343,6 +456,15 @@ module Stripe
|
|
343
456
|
# Hopefully val is a string, but protect in case it's not.
|
344
457
|
val = val.to_s
|
345
458
|
|
459
|
+
# Some values returned by the server are encoded in ASCII-8BIT before
|
460
|
+
# being parsed as UTF-8 by Marshal. If we don't transform these here, then
|
461
|
+
# puts will fail as it tries to render UTF-8 characters as ASCII-8BIT
|
462
|
+
# which is not valid.
|
463
|
+
if val && val.encoding == Encoding::ASCII_8BIT
|
464
|
+
# Dup the string as it is a frozen literal.
|
465
|
+
val = val.dup.force_encoding("UTF-8")
|
466
|
+
end
|
467
|
+
|
346
468
|
if %r{[^\w\-/]} =~ val
|
347
469
|
# If the string contains any special characters, escape any double
|
348
470
|
# quotes it has, remove newlines, and wrap the whole thing in quotes.
|
@@ -0,0 +1,84 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Stripe
|
4
|
+
module V2
|
5
|
+
class ListObject < StripeObject
|
6
|
+
OBJECT_NAME = "list"
|
7
|
+
def self.object_name
|
8
|
+
"list"
|
9
|
+
end
|
10
|
+
|
11
|
+
# An empty list object. This is returned from +fetch_next_page+ when we know that
|
12
|
+
# there isn't a next page.
|
13
|
+
def self.empty_list(opts = {})
|
14
|
+
ListObject.construct_from({ data: [] }, opts, nil, :v2)
|
15
|
+
end
|
16
|
+
|
17
|
+
def [](key)
|
18
|
+
case key
|
19
|
+
when String, Symbol
|
20
|
+
super
|
21
|
+
else
|
22
|
+
raise ArgumentError,
|
23
|
+
"You tried to access the #{key.inspect} index, but ListObject " \
|
24
|
+
"types only support String keys. (HINT: List calls return an " \
|
25
|
+
"object with a 'data' (which is the data array). You likely " \
|
26
|
+
"want to call #data[#{key.inspect}])"
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
# Iterates through each resource in the page represented by the current
|
31
|
+
# `ListObject`.
|
32
|
+
#
|
33
|
+
# Note that this method makes no effort to fetch a new page when it gets to
|
34
|
+
# the end of the current page's resources. See also +auto_paging_each+.
|
35
|
+
def each(&blk)
|
36
|
+
data.each(&blk)
|
37
|
+
end
|
38
|
+
|
39
|
+
# Iterates through each resource in the page represented by the current
|
40
|
+
# `ListObject` in reverse.
|
41
|
+
def reverse_each(&blk)
|
42
|
+
data.reverse_each(&blk)
|
43
|
+
end
|
44
|
+
|
45
|
+
# Iterates through each resource in all pages, making additional fetches to
|
46
|
+
# the API as necessary.
|
47
|
+
#
|
48
|
+
# Note that this method will make as many API calls as necessary to fetch
|
49
|
+
# all resources. For more granular control, please see +each+ and
|
50
|
+
# +fetch_next_page+.
|
51
|
+
def auto_paging_each(&blk)
|
52
|
+
return enum_for(:auto_paging_each) unless block_given?
|
53
|
+
|
54
|
+
page = self
|
55
|
+
loop do
|
56
|
+
page.each(&blk)
|
57
|
+
|
58
|
+
break if page.next_page_url.nil?
|
59
|
+
|
60
|
+
page = page.fetch_next_page
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
# Returns true if the page object contains no elements.
|
65
|
+
def empty?
|
66
|
+
data.empty?
|
67
|
+
end
|
68
|
+
|
69
|
+
# Fetches the next page in the resource list (if there is one).
|
70
|
+
#
|
71
|
+
# This method will try to respect the limit of the current page. If none
|
72
|
+
# was given, the default limit will be fetched again.
|
73
|
+
def fetch_next_page(opts = {})
|
74
|
+
return self.class.empty_list(opts) if next_page_url.nil?
|
75
|
+
|
76
|
+
_request(
|
77
|
+
method: :get,
|
78
|
+
path: next_page_url,
|
79
|
+
base_address: :api
|
80
|
+
)
|
81
|
+
end
|
82
|
+
end
|
83
|
+
end
|
84
|
+
end
|
data/lib/stripe/version.rb
CHANGED
data/lib/stripe/webhook.rb
CHANGED
@@ -18,7 +18,7 @@ module Stripe
|
|
18
18
|
# doesn't GC symbols. It also decreases the likelihood that we receive a
|
19
19
|
# bad payload that fails to parse and throws an exception.
|
20
20
|
data = JSON.parse(payload, symbolize_names: true)
|
21
|
-
Event.construct_from(data)
|
21
|
+
Event.construct_from(data, {}, nil, :v1, APIRequestor.active_requestor)
|
22
22
|
end
|
23
23
|
|
24
24
|
module Signature
|
@@ -108,8 +108,9 @@ module Stripe
|
|
108
108
|
end
|
109
109
|
|
110
110
|
if tolerance && timestamp < Time.now - tolerance
|
111
|
+
formatted_timestamp = Time.at(timestamp).strftime("%F %T")
|
111
112
|
raise SignatureVerificationError.new(
|
112
|
-
"Timestamp outside the tolerance zone (#{
|
113
|
+
"Timestamp outside the tolerance zone (#{formatted_timestamp})",
|
113
114
|
header, http_body: payload
|
114
115
|
)
|
115
116
|
end
|
data/lib/stripe.rb
CHANGED
@@ -15,6 +15,7 @@ require "uri"
|
|
15
15
|
require "forwardable"
|
16
16
|
|
17
17
|
# Version
|
18
|
+
require "stripe/api_version"
|
18
19
|
require "stripe/version"
|
19
20
|
|
20
21
|
# API operations
|
@@ -24,28 +25,41 @@ require "stripe/api_operations/list"
|
|
24
25
|
require "stripe/api_operations/nested_resource"
|
25
26
|
require "stripe/api_operations/request"
|
26
27
|
require "stripe/api_operations/save"
|
28
|
+
require "stripe/api_operations/singleton_save"
|
29
|
+
require "stripe/api_operations/search"
|
27
30
|
|
28
31
|
# API resource support classes
|
29
32
|
require "stripe/errors"
|
30
33
|
require "stripe/object_types"
|
34
|
+
require "stripe/event_types"
|
35
|
+
require "stripe/request_options"
|
36
|
+
require "stripe/request_params"
|
31
37
|
require "stripe/util"
|
32
38
|
require "stripe/connection_manager"
|
33
39
|
require "stripe/multipart_encoder"
|
40
|
+
require "stripe/api_requestor"
|
41
|
+
require "stripe/stripe_service"
|
34
42
|
require "stripe/stripe_client"
|
35
43
|
require "stripe/stripe_object"
|
36
44
|
require "stripe/stripe_response"
|
37
45
|
require "stripe/list_object"
|
46
|
+
require "stripe/v2_list_object"
|
47
|
+
require "stripe/search_result_object"
|
38
48
|
require "stripe/error_object"
|
39
49
|
require "stripe/api_resource"
|
50
|
+
require "stripe/api_resource_test_helpers"
|
40
51
|
require "stripe/singleton_api_resource"
|
41
52
|
require "stripe/webhook"
|
42
53
|
require "stripe/stripe_configuration"
|
54
|
+
require "stripe/thin_event"
|
43
55
|
|
44
56
|
# Named API resources
|
45
57
|
require "stripe/resources"
|
58
|
+
require "stripe/services"
|
46
59
|
|
47
60
|
# OAuth
|
48
61
|
require "stripe/oauth"
|
62
|
+
require "stripe/services/oauth_service"
|
49
63
|
|
50
64
|
module Stripe
|
51
65
|
DEFAULT_CA_BUNDLE_PATH = __dir__ + "/data/ca-certificates.crt"
|
@@ -55,6 +69,34 @@ module Stripe
|
|
55
69
|
LEVEL_ERROR = Logger::ERROR
|
56
70
|
LEVEL_INFO = Logger::INFO
|
57
71
|
|
72
|
+
# API base constants
|
73
|
+
DEFAULT_API_BASE = "https://api.stripe.com"
|
74
|
+
DEFAULT_CONNECT_BASE = "https://connect.stripe.com"
|
75
|
+
DEFAULT_UPLOAD_BASE = "https://files.stripe.com"
|
76
|
+
DEFAULT_METER_EVENTS_BASE = "https://meter-events.stripe.com"
|
77
|
+
|
78
|
+
# Options that can be configured globally by users
|
79
|
+
USER_CONFIGURABLE_GLOBAL_OPTIONS = Set.new(%i[
|
80
|
+
api_key
|
81
|
+
api_version
|
82
|
+
stripe_account
|
83
|
+
api_base
|
84
|
+
uploads_base
|
85
|
+
connect_base
|
86
|
+
meter_events_base
|
87
|
+
open_timeout
|
88
|
+
read_timeout
|
89
|
+
write_timeout
|
90
|
+
proxy
|
91
|
+
verify_ssl_certs
|
92
|
+
ca_bundle_path
|
93
|
+
log_level
|
94
|
+
logger
|
95
|
+
max_network_retries
|
96
|
+
enable_telemetry
|
97
|
+
client_id
|
98
|
+
])
|
99
|
+
|
58
100
|
@app_info = nil
|
59
101
|
|
60
102
|
@config = Stripe::StripeConfiguration.setup
|
@@ -71,6 +113,7 @@ module Stripe
|
|
71
113
|
def_delegators :@config, :api_base, :api_base=
|
72
114
|
def_delegators :@config, :uploads_base, :uploads_base=
|
73
115
|
def_delegators :@config, :connect_base, :connect_base=
|
116
|
+
def_delegators :@config, :meter_events_base, :meter_events_base=
|
74
117
|
def_delegators :@config, :open_timeout, :open_timeout=
|
75
118
|
def_delegators :@config, :read_timeout, :read_timeout=
|
76
119
|
def_delegators :@config, :write_timeout, :write_timeout=
|
@@ -103,7 +146,7 @@ module Stripe
|
|
103
146
|
# with API requests. Useful for plugin authors to identify their plugin when
|
104
147
|
# communicating with Stripe.
|
105
148
|
#
|
106
|
-
# Takes a name and optional
|
149
|
+
# Takes a name and optional partner program ID, plugin URL, and version.
|
107
150
|
def self.set_app_info(name, partner_id: nil, url: nil, version: nil)
|
108
151
|
@app_info = {
|
109
152
|
name: name,
|