stripe 12.5.0 → 15.0.0
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 +197 -9
- data/Gemfile +4 -0
- data/Makefile +2 -0
- data/OPENAPI_VERSION +1 -1
- data/README.md +48 -13
- data/Rakefile +0 -5
- 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/justfile +43 -0
- data/lib/stripe/api_operations/nested_resource.rb +1 -21
- data/lib/stripe/api_operations/request.rb +20 -69
- data/lib/stripe/api_operations/save.rb +5 -3
- data/lib/stripe/api_operations/singleton_save.rb +6 -2
- data/lib/stripe/api_requestor.rb +1136 -0
- data/lib/stripe/api_resource.rb +38 -17
- data/lib/stripe/api_version.rb +1 -1
- data/lib/stripe/connection_manager.rb +1 -1
- data/lib/stripe/errors.rb +8 -9
- data/lib/stripe/event_types.rb +14 -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/list_object.rb +2 -3
- data/lib/stripe/oauth.rb +8 -15
- data/lib/stripe/object_types.rb +26 -3
- data/lib/stripe/request_options.rb +129 -0
- data/lib/stripe/request_params.rb +24 -0
- data/lib/stripe/resources/account.rb +4642 -8
- data/lib/stripe/resources/account_link.rb +54 -0
- data/lib/stripe/resources/account_session.rb +739 -0
- data/lib/stripe/resources/apple_pay_domain.rb +58 -9
- data/lib/stripe/resources/application.rb +20 -0
- data/lib/stripe/resources/application_fee.rb +89 -2
- data/lib/stripe/resources/application_fee_refund.rb +17 -0
- data/lib/stripe/resources/apps/secret.rb +143 -2
- data/lib/stripe/resources/balance.rb +122 -0
- data/lib/stripe/resources/balance_transaction.rb +105 -2
- data/lib/stripe/resources/bank_account.rb +85 -3
- data/lib/stripe/resources/billing/alert.rb +137 -2
- 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 +180 -9
- data/lib/stripe/resources/billing/meter_event.rb +37 -3
- data/lib/stripe/resources/billing/meter_event_adjustment.rb +44 -1
- data/lib/stripe/resources/billing/meter_event_summary.rb +17 -0
- data/lib/stripe/resources/billing_portal/configuration.rb +557 -4
- data/lib/stripe/resources/billing_portal/session.rb +271 -0
- data/lib/stripe/resources/capability.rb +84 -0
- data/lib/stripe/resources/card.rb +78 -1
- data/lib/stripe/resources/cash_balance.rb +17 -0
- data/lib/stripe/resources/charge.rb +1616 -4
- data/lib/stripe/resources/checkout/session.rb +3534 -10
- data/lib/stripe/resources/climate/order.rb +171 -4
- data/lib/stripe/resources/climate/product.rb +49 -2
- data/lib/stripe/resources/climate/supplier.rb +47 -2
- data/lib/stripe/resources/confirmation_token.rb +1448 -0
- data/lib/stripe/resources/connect_collection_transfer.rb +24 -0
- data/lib/stripe/resources/country_spec.rb +56 -2
- data/lib/stripe/resources/coupon.rb +195 -6
- data/lib/stripe/resources/credit_note.rb +641 -2
- data/lib/stripe/resources/credit_note_line_item.rb +67 -0
- data/lib/stripe/resources/customer.rb +832 -9
- data/lib/stripe/resources/customer_balance_transaction.rb +29 -0
- data/lib/stripe/resources/customer_cash_balance_transaction.rb +109 -0
- data/lib/stripe/resources/customer_session.rb +163 -0
- data/lib/stripe/resources/discount.rb +29 -0
- data/lib/stripe/resources/dispute.rb +614 -4
- data/lib/stripe/resources/entitlements/active_entitlement.rb +39 -2
- data/lib/stripe/resources/entitlements/active_entitlement_summary.rb +23 -0
- data/lib/stripe/resources/entitlements/feature.rb +83 -2
- data/lib/stripe/resources/ephemeral_key.rb +23 -2
- data/lib/stripe/resources/event.rb +92 -2
- data/lib/stripe/resources/exchange_rate.rb +26 -2
- data/lib/stripe/resources/file.rb +123 -15
- data/lib/stripe/resources/file_link.rb +107 -4
- data/lib/stripe/resources/financial_connections/account.rb +239 -2
- data/lib/stripe/resources/financial_connections/account_owner.rb +17 -0
- data/lib/stripe/resources/financial_connections/account_ownership.rb +9 -0
- data/lib/stripe/resources/financial_connections/session.rb +95 -0
- data/lib/stripe/resources/financial_connections/transaction.rb +94 -2
- data/lib/stripe/resources/forwarding/request.rb +158 -2
- data/lib/stripe/resources/funding_instructions.rb +308 -0
- data/lib/stripe/resources/identity/verification_report.rb +259 -2
- data/lib/stripe/resources/identity/verification_session.rb +356 -4
- data/lib/stripe/resources/invoice.rb +3210 -27
- data/lib/stripe/resources/invoice_item.rb +406 -6
- data/lib/stripe/resources/invoice_line_item.rb +356 -3
- data/lib/stripe/resources/invoice_payment.rb +105 -0
- data/lib/stripe/resources/invoice_rendering_template.rb +120 -0
- data/lib/stripe/resources/issuing/authorization.rb +1132 -6
- data/lib/stripe/resources/issuing/card.rb +682 -5
- data/lib/stripe/resources/issuing/cardholder.rb +653 -5
- data/lib/stripe/resources/issuing/dispute.rb +785 -4
- data/lib/stripe/resources/issuing/personalization_design.rb +280 -4
- data/lib/stripe/resources/issuing/physical_bundle.rb +56 -2
- data/lib/stripe/resources/issuing/token.rb +170 -4
- data/lib/stripe/resources/issuing/transaction.rb +916 -4
- data/lib/stripe/resources/line_item.rb +47 -0
- data/lib/stripe/resources/login_link.rb +7 -0
- data/lib/stripe/resources/mandate.rb +142 -0
- data/lib/stripe/resources/payment_intent.rb +8660 -4
- data/lib/stripe/resources/payment_link.rb +1636 -4
- data/lib/stripe/resources/payment_method.rb +1546 -4
- data/lib/stripe/resources/payment_method_configuration.rb +2780 -4
- data/lib/stripe/resources/payment_method_domain.rb +154 -10
- data/lib/stripe/resources/payout.rb +213 -4
- data/lib/stripe/resources/person.rb +264 -1
- data/lib/stripe/resources/plan.rb +308 -6
- data/lib/stripe/resources/price.rb +609 -5
- data/lib/stripe/resources/product.rb +474 -2
- data/lib/stripe/resources/product_feature.rb +12 -0
- data/lib/stripe/resources/promotion_code.rb +216 -4
- data/lib/stripe/resources/quote.rb +927 -10
- data/lib/stripe/resources/radar/early_fraud_warning.rb +70 -2
- data/lib/stripe/resources/radar/value_list.rb +122 -6
- data/lib/stripe/resources/radar/value_list_item.rb +90 -4
- data/lib/stripe/resources/refund.rb +396 -4
- data/lib/stripe/resources/reporting/report_run.rb +143 -2
- data/lib/stripe/resources/reporting/report_type.rb +29 -2
- data/lib/stripe/resources/reserve_transaction.rb +22 -0
- data/lib/stripe/resources/reversal.rb +21 -0
- data/lib/stripe/resources/review.rb +101 -2
- data/lib/stripe/resources/setup_attempt.rb +370 -2
- data/lib/stripe/resources/setup_intent.rb +3477 -4
- data/lib/stripe/resources/shipping_rate.rb +254 -4
- data/lib/stripe/resources/sigma/scheduled_query_run.rb +47 -2
- data/lib/stripe/resources/source.rb +1203 -4
- data/lib/stripe/resources/source_mandate_notification.rb +66 -0
- data/lib/stripe/resources/source_transaction.rb +85 -0
- data/lib/stripe/resources/subscription.rb +1697 -11
- data/lib/stripe/resources/subscription_item.rb +319 -11
- data/lib/stripe/resources/subscription_schedule.rb +1285 -4
- data/lib/stripe/resources/tax/calculation.rb +378 -0
- data/lib/stripe/resources/tax/calculation_line_item.rb +56 -0
- data/lib/stripe/resources/tax/registration.rb +2375 -2
- data/lib/stripe/resources/tax/settings.rb +117 -0
- data/lib/stripe/resources/tax/transaction.rb +258 -0
- data/lib/stripe/resources/tax/transaction_line_item.rb +31 -0
- data/lib/stripe/resources/tax_code.rb +28 -2
- data/lib/stripe/resources/tax_deducted_at_source.rb +22 -0
- data/lib/stripe/resources/tax_id.rb +114 -2
- data/lib/stripe/resources/tax_rate.rb +197 -6
- data/lib/stripe/resources/terminal/configuration.rb +1266 -6
- data/lib/stripe/resources/terminal/connection_token.rb +18 -0
- data/lib/stripe/resources/terminal/location.rb +172 -6
- data/lib/stripe/resources/terminal/reader.rb +433 -6
- data/lib/stripe/resources/test_helpers/test_clock.rb +81 -4
- data/lib/stripe/resources/token.rb +1160 -1
- data/lib/stripe/resources/topup.rb +169 -4
- data/lib/stripe/resources/transfer.rb +148 -4
- data/lib/stripe/resources/treasury/credit_reversal.rb +85 -2
- data/lib/stripe/resources/treasury/debit_reversal.rb +96 -2
- data/lib/stripe/resources/treasury/financial_account.rb +749 -5
- data/lib/stripe/resources/treasury/financial_account_features.rb +189 -0
- data/lib/stripe/resources/treasury/inbound_transfer.rb +231 -3
- data/lib/stripe/resources/treasury/outbound_payment.rb +491 -3
- data/lib/stripe/resources/treasury/outbound_transfer.rb +346 -3
- data/lib/stripe/resources/treasury/received_credit.rb +239 -2
- data/lib/stripe/resources/treasury/received_debit.rb +198 -2
- data/lib/stripe/resources/treasury/transaction.rb +169 -2
- data/lib/stripe/resources/treasury/transaction_entry.rb +150 -2
- 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 +119 -11
- data/lib/stripe/resources.rb +19 -2
- data/lib/stripe/search_result_object.rb +1 -1
- data/lib/stripe/services/account_capability_service.rb +71 -0
- data/lib/stripe/services/account_external_account_service.rb +318 -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 +936 -0
- data/lib/stripe/services/account_service.rb +4100 -0
- data/lib/stripe/services/account_session_service.rb +501 -0
- data/lib/stripe/services/apple_pay_domain_service.rb +101 -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 +2466 -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 +203 -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 +458 -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 +666 -0
- data/lib/stripe/services/customer_session_service.rb +113 -0
- data/lib/stripe/services/customer_tax_id_service.rb +95 -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 +395 -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 +2831 -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 +7258 -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 +2054 -0
- data/lib/stripe/services/payment_method_domain_service.rb +142 -0
- data/lib/stripe/services/payment_method_service.rb +894 -0
- data/lib/stripe/services/payout_service.rb +225 -0
- data/lib/stripe/services/plan_service.rb +298 -0
- data/lib/stripe/services/price_service.rb +545 -0
- data/lib/stripe/services/product_feature_service.rb +92 -0
- data/lib/stripe/services/product_service.rb +495 -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 +131 -0
- data/lib/stripe/services/radar/value_list_service.rb +166 -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 +3268 -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 +346 -0
- data/lib/stripe/services/subscription_schedule_service.rb +1134 -0
- data/lib/stripe/services/subscription_service.rb +1539 -0
- data/lib/stripe/services/tax/calculation_line_item_service.rb +37 -0
- data/lib/stripe/services/tax/calculation_service.rb +242 -0
- data/lib/stripe/services/tax/registration_service.rb +1618 -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 +117 -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 +1060 -0
- data/lib/stripe/services/terminal/connection_token_service.rb +31 -0
- data/lib/stripe/services/terminal/location_service.rb +208 -0
- data/lib/stripe/services/terminal/reader_service.rb +384 -0
- data/lib/stripe/services/terminal_service.rb +16 -0
- data/lib/stripe/services/test_helpers/confirmation_token_service.rb +661 -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 +65 -0
- data/lib/stripe/services/test_helpers/terminal_service.rb +15 -0
- data/lib/stripe/services/test_helpers/test_clock_service.rb +120 -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 +1163 -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 +24 -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 +241 -0
- data/lib/stripe/services/v2/core/event_service.rb +49 -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 +157 -0
- data/lib/stripe/services.rb +180 -0
- data/lib/stripe/singleton_api_resource.rb +1 -18
- data/lib/stripe/stripe_client.rb +53 -1031
- data/lib/stripe/stripe_configuration.rb +52 -19
- data/lib/stripe/stripe_object.rb +54 -20
- data/lib/stripe/stripe_service.rb +32 -0
- data/lib/stripe/thin_event.rb +37 -0
- data/lib/stripe/util.rb +78 -37
- data/lib/stripe/v2_list_object.rb +84 -0
- data/lib/stripe/version.rb +1 -1
- data/lib/stripe/webhook.rb +1 -1
- data/lib/stripe.rb +38 -25
- data/rbi/stripe/resources/account.rbi +4840 -0
- data/rbi/stripe/resources/account_link.rbi +74 -0
- data/rbi/stripe/resources/account_session.rbi +894 -0
- data/rbi/stripe/resources/apple_pay_domain.rbi +90 -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 +180 -0
- data/rbi/stripe/resources/balance_transaction.rbi +144 -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 +2054 -0
- data/rbi/stripe/resources/checkout/session.rbi +3951 -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 +1793 -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 +252 -0
- data/rbi/stripe/resources/credit_note.rbi +747 -0
- data/rbi/stripe/resources/credit_note_line_item.rbi +101 -0
- data/rbi/stripe/resources/customer.rbi +1009 -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 +146 -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 +351 -0
- data/rbi/stripe/resources/identity/verification_session.rbi +517 -0
- data/rbi/stripe/resources/invoice.rbi +3733 -0
- data/rbi/stripe/resources/invoice_item.rbi +475 -0
- data/rbi/stripe/resources/invoice_line_item.rbi +432 -0
- data/rbi/stripe/resources/invoice_payment.rbi +114 -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 +18 -0
- data/rbi/stripe/resources/mandate.rbi +187 -0
- data/rbi/stripe/resources/payment_intent.rbi +9731 -0
- data/rbi/stripe/resources/payment_link.rbi +1801 -0
- data/rbi/stripe/resources/payment_method.rbi +1822 -0
- data/rbi/stripe/resources/payment_method_configuration.rbi +3154 -0
- data/rbi/stripe/resources/payment_method_domain.rbi +212 -0
- data/rbi/stripe/resources/payout.rbi +300 -0
- data/rbi/stripe/resources/person.rbi +371 -0
- data/rbi/stripe/resources/plan.rbi +373 -0
- data/rbi/stripe/resources/price.rbi +694 -0
- data/rbi/stripe/resources/product.rbi +557 -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 +1123 -0
- data/rbi/stripe/resources/radar/early_fraud_warning.rbi +98 -0
- data/rbi/stripe/resources/radar/value_list.rbi +170 -0
- data/rbi/stripe/resources/radar/value_list_item.rbi +131 -0
- data/rbi/stripe/resources/refund.rbi +516 -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 +3860 -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 +1964 -0
- data/rbi/stripe/resources/subscription_item.rbi +370 -0
- data/rbi/stripe/resources/subscription_schedule.rbi +1495 -0
- data/rbi/stripe/resources/tax/calculation.rbi +474 -0
- data/rbi/stripe/resources/tax/calculation_line_item.rbi +88 -0
- data/rbi/stripe/resources/tax/registration.rbi +2485 -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 +167 -0
- data/rbi/stripe/resources/tax_rate.rbi +239 -0
- data/rbi/stripe/resources/terminal/configuration.rbi +1388 -0
- data/rbi/stripe/resources/terminal/connection_token.rbi +37 -0
- data/rbi/stripe/resources/terminal/location.rbi +224 -0
- data/rbi/stripe/resources/terminal/reader.rbi +587 -0
- data/rbi/stripe/resources/test_helpers/test_clock.rbi +134 -0
- data/rbi/stripe/resources/token.rbi +1217 -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 +170 -0
- data/rbi/stripe/services/account_capability_service.rbi +51 -0
- data/rbi/stripe/services/account_external_account_service.rbi +306 -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 +923 -0
- data/rbi/stripe/services/account_service.rbi +4143 -0
- data/rbi/stripe/services/account_session_service.rbi +572 -0
- data/rbi/stripe/services/apple_pay_domain_service.rbi +78 -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/rbi/stripe/services/apps_service.rbi +9 -0
- 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 +2585 -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 +196 -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 +416 -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 +651 -0
- data/rbi/stripe/services/customer_session_service.rbi +116 -0
- data/rbi/stripe/services/customer_tax_id_service.rbi +72 -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 +368 -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 +2920 -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 +7759 -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 +2211 -0
- data/rbi/stripe/services/payment_method_domain_service.rbi +112 -0
- data/rbi/stripe/services/payment_method_service.rbi +840 -0
- data/rbi/stripe/services/payout_service.rbi +205 -0
- data/rbi/stripe/services/plan_service.rbi +284 -0
- data/rbi/stripe/services/price_service.rbi +546 -0
- data/rbi/stripe/services/product_feature_service.rbi +69 -0
- data/rbi/stripe/services/product_service.rbi +479 -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 +111 -0
- data/rbi/stripe/services/radar/value_list_service.rbi +143 -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 +3596 -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 +324 -0
- data/rbi/stripe/services/subscription_schedule_service.rbi +1192 -0
- data/rbi/stripe/services/subscription_service.rbi +1596 -0
- data/rbi/stripe/services/tax/calculation_line_item_service.rbi +33 -0
- data/rbi/stripe/services/tax/calculation_service.rbi +230 -0
- data/rbi/stripe/services/tax/registration_service.rbi +1689 -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 +112 -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 +1120 -0
- data/rbi/stripe/services/terminal/connection_token_service.rbi +25 -0
- data/rbi/stripe/services/terminal/location_service.rbi +184 -0
- data/rbi/stripe/services/terminal/reader_service.rbi +344 -0
- data/rbi/stripe/services/terminal_service.rbi +12 -0
- data/rbi/stripe/services/test_helpers/confirmation_token_service.rbi +746 -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 +62 -0
- data/rbi/stripe/services/test_helpers/terminal_service.rbi +11 -0
- data/rbi/stripe/services/test_helpers/test_clock_service.rbi +92 -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 +1189 -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 +20 -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 +200 -0
- data/rbi/stripe/services/v2/core/event_service.rbi +38 -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 +131 -0
- metadata +533 -4
- data/lib/stripe/resources/usage_record.rb +0 -17
- data/lib/stripe/resources/usage_record_summary.rb +0 -11
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9ac9a4371f393b1650cd2b5198d4e2ceed046c9676183b0d339fd985c4b8b815
|
4
|
+
data.tar.gz: 3fc59d72c6450657a7797088c39f5c85d9b8bba505992cfc3fdbdc7a8d27fb7d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4f156649ca332eff3a2837ec1f038ebcc8ab9f5c35194d031e2610b45ef6b74cb0b651b3402d0afa98375a7ac293f0e54761e191dd6237e58e372b42b2cba681
|
7
|
+
data.tar.gz: 1cb72620268bf94d44b0ddd6090b41404efc0b25606759907c2a3d6821577b45b488738bdfdac34b6ba3a6e9fb769d9646ad1b184580d84fac3df6451a0fd172
|
data/CHANGELOG.md
CHANGED
@@ -1,4 +1,192 @@
|
|
1
1
|
# Changelog
|
2
|
+
## 15.0.0 - 2025-04-09
|
3
|
+
|
4
|
+
### Breaking change
|
5
|
+
* [#1574](https://github.com/stripe/stripe-ruby/pull/1574) Rename `object_id` in V2::Core::EventService::ListParams to `object_id_`
|
6
|
+
* ⚠️ Change name of parameter from `object_id` to `object_id_` on `Stripe::V2::Core::EventService::ListParams` to avoid conflict with Ruby native attribute, as found in https://github.com/stripe/stripe-ruby/issues/1567
|
7
|
+
* This is a no-op unless you are using this specific parameter that was introduced in `v14.0.0`
|
8
|
+
|
9
|
+
* [#1576](https://github.com/stripe/stripe-ruby/pull/1576) Explicitly pass through custom headers in retrieve
|
10
|
+
* Fix custom options passing for resource-based retrieve
|
11
|
+
* [#1571](https://github.com/stripe/stripe-ruby/pull/1571) Validate all instance variable keys returned from the API
|
12
|
+
* Validate all keys returned from the API, including custom response fields, to make sure they can be set in an instance variable, as brought up in https://github.com/stripe/stripe-ruby/issues/1564
|
13
|
+
* We do not set instance variables for invalid field names (as defined by the [Ruby spec](https://ruby-doc.org/docs/ruby-doc-bundle/Manual/man-1.4/syntax.html#ident)). We recommend for custom hash map response fields, use the `[]` accessor.
|
14
|
+
```ruby
|
15
|
+
c = client.v1.customers.retrieve("cus_123")
|
16
|
+
c.metadata["invalid-variable-name!"]
|
17
|
+
c.metadata["valid_key_name_works_too"]
|
18
|
+
```
|
19
|
+
* [#1575](https://github.com/stripe/stripe-ruby/pull/1575) Remove unused youtube playlist link
|
20
|
+
* [#1573](https://github.com/stripe/stripe-ruby/pull/1573) Remove link for stale youtube video playlist
|
21
|
+
|
22
|
+
## 14.0.0 - 2025-04-01
|
23
|
+
* [#1559](https://github.com/stripe/stripe-ruby/pull/1559) Add RBI annotations for fields and params
|
24
|
+
* Adds explicit field types for resources and parameters for methods, and add RBI static annotations for all resources and services
|
25
|
+

|
26
|
+
* See [the wiki](https://github.com/stripe/stripe-ruby/wiki/Static-Type-Annotations) for more details
|
27
|
+
|
28
|
+
* [#1543](https://github.com/stripe/stripe-ruby/pull/1543) Support for APIs in the new API version 2025-03-31.basil
|
29
|
+
|
30
|
+
This release changes the pinned API version to `2025-03-31.basil`.
|
31
|
+
|
32
|
+
### ⚠️ Breaking changes due to changes in the Stripe API
|
33
|
+
|
34
|
+
Please review details for the breaking changes and alternatives in the [Stripe API changelog](https://docs.stripe.com/changelog/basil) before upgrading.
|
35
|
+
|
36
|
+
* Remove support for resources `SubscriptionItemUsageRecordSummary` and `SubscriptionItemUsageRecord`
|
37
|
+
* Remove support for `create` method on resource `SubscriptionItemUsageRecord`
|
38
|
+
* Remove support for `list` method on resource `SubscriptionItemUsageRecordSummary`
|
39
|
+
* Remove support for `upcomingLines` and `upcoming` methods on resource `Invoice`
|
40
|
+
|
41
|
+
### ⚠️ Other breaking changes in the SDK
|
42
|
+
* [#1553](https://github.com/stripe/stripe-ruby/pull/1553) Remove public idempotent_replayed? method
|
43
|
+
* ⚠️ Remove the `idempotent_replayed?` method on `StripeError`
|
44
|
+
* The information is accessible indirectly via the raw response headers, `StripeResponse.http_headers`. For example, use `resource.last_response.http_headers['Idempotent-Replayed']`
|
45
|
+
|
46
|
+
### Additions to the Stripe API
|
47
|
+
|
48
|
+
* Add support for new resource `InvoicePayment`
|
49
|
+
* Add support for `list` and `retrieve` methods on resource `InvoicePayment`
|
50
|
+
|
51
|
+
|
52
|
+
## 13.5.0 - 2025-02-24
|
53
|
+
* [#1534](https://github.com/stripe/stripe-ruby/pull/1534) Update generated code
|
54
|
+
* Fixed `Stripe::InvoiceLineItem.update` method.
|
55
|
+
* [#1536](https://github.com/stripe/stripe-ruby/pull/1536) Fix InvoiceLineItem parent class
|
56
|
+
* Fix bug where `Stripe::InvoiceLineItem` had the incorrect parent class, making it error when `update` was called
|
57
|
+
* [#1533](https://github.com/stripe/stripe-ruby/pull/1533) add codeowners file
|
58
|
+
|
59
|
+
## 13.4.1 - 2025-01-28
|
60
|
+
* [#1528](https://github.com/stripe/stripe-ruby/pull/1528) Update generated code
|
61
|
+
* ⚠️ Bugfix: `invoice` and `line_item_id` can be passed to `update` method in `InvoiceLineItem`.
|
62
|
+
|
63
|
+
## 13.4.0 - 2025-01-27
|
64
|
+
* [#1510](https://github.com/stripe/stripe-ruby/pull/1510) Update generated code
|
65
|
+
* Add support for `close` method on resource `Treasury.FinancialAccount`
|
66
|
+
* [#1521](https://github.com/stripe/stripe-ruby/pull/1521) pipe rubocop output to devnull
|
67
|
+
* [#1519](https://github.com/stripe/stripe-ruby/pull/1519) Fixed typos in CONTRIBUTING.MD
|
68
|
+
* [#1513](https://github.com/stripe/stripe-ruby/pull/1513) add justfile
|
69
|
+
* [#1515](https://github.com/stripe/stripe-ruby/pull/1515) Added CONTRIBUTING.md file
|
70
|
+
|
71
|
+
## 13.3.1 - 2025-01-13
|
72
|
+
* [#1512](https://github.com/stripe/stripe-ruby/pull/1512) Import global configuration for options not available on StripeClient options
|
73
|
+
* Fixes bug where `StripeClient` was not falling back to global options for options that are not available to be set per-client
|
74
|
+
* [#1516](https://github.com/stripe/stripe-ruby/pull/1516) ThinEvent reason and livemode
|
75
|
+
- Add `livemode` and optional `reason` fields to ThinEvent
|
76
|
+
* [#1518](https://github.com/stripe/stripe-ruby/pull/1518) Pin ubuntu version in Test action
|
77
|
+
* [#1508](https://github.com/stripe/stripe-ruby/pull/1508) Added pull request template
|
78
|
+
|
79
|
+
## 13.3.0 - 2024-12-18
|
80
|
+
* [#1500](https://github.com/stripe/stripe-ruby/pull/1500) This release changes the pinned API version to `2024-12-18.acacia`.
|
81
|
+
|
82
|
+
* [#1507](https://github.com/stripe/stripe-ruby/pull/1507) Pass requestor to all deserialized objects including lists
|
83
|
+
|
84
|
+
* Fixes bug where `StripeObject` retrieved from lists could not be used to make requests, such as `refresh`
|
85
|
+
|
86
|
+
## 13.2.0 - 2024-11-20
|
87
|
+
* [#1486](https://github.com/stripe/stripe-ruby/pull/1486) This release changes the pinned API version to `2024-11-20.acacia`.
|
88
|
+
* Add support for `respond` test helper method on resource `Issuing.Authorization`
|
89
|
+
|
90
|
+
## 13.1.2 - 2024-11-15
|
91
|
+
* [#1488](https://github.com/stripe/stripe-ruby/pull/1488) Fix incorrect key in param encoding
|
92
|
+
|
93
|
+
## 13.1.1 - 2024-11-06
|
94
|
+
* [#1483](https://github.com/stripe/stripe-ruby/pull/1483) Fix APIResource#retrieve not sending `stripe_version`
|
95
|
+
|
96
|
+
## 13.1.0 - 2024-10-29
|
97
|
+
* [#1472](https://github.com/stripe/stripe-ruby/pull/1472) This release changes the pinned API version to `2024-10-28.acacia`.
|
98
|
+
* Add support for `submit_card` test helper method on resource `Issuing.Card`
|
99
|
+
* Add support for new resource `V2.EventDestinations`
|
100
|
+
* Add support for `create`, `retrieve`, `update`, `list`, `delete`, `disable`, `enable` and `ping` methods on resource `V2.EventDestinations`
|
101
|
+
* [#1476](https://github.com/stripe/stripe-ruby/pull/1476) Fix APIResource#retrieve bug not returning instance of custom resources
|
102
|
+
* Fix bug in APIResource#refresh and APIResource#retrieve where they returned an instance of `StripeObject` for custom resources. They should now return the instance of the custom resource.
|
103
|
+
|
104
|
+
## 13.0.2 - 2024-10-23
|
105
|
+
* [#1473](https://github.com/stripe/stripe-ruby/pull/1473) Always return the result of APIResource#refresh in APIResource.retrieve
|
106
|
+
|
107
|
+
* Fix bug where we would not return the mutated `self` object when calling `APIResource.retrieve`
|
108
|
+
|
109
|
+
## 13.0.1 - 2024-10-18
|
110
|
+
* [#1471](https://github.com/stripe/stripe-ruby/pull/1471) update object tags for meter-related classes
|
111
|
+
|
112
|
+
- fixes a bug where the `object` property of the `MeterEvent`, `MeterEventAdjustment`, and `MeterEventSession` didn't match the server.
|
113
|
+
* [#1470](https://github.com/stripe/stripe-ruby/pull/1470) Cleaned up examples and added documentation
|
114
|
+
|
115
|
+
## 13.0.0 - 2024-10-01
|
116
|
+
* [#1458](https://github.com/stripe/stripe-ruby/pull/1458) Support for APIs in the new API version 2024-09-30.acacia
|
117
|
+
|
118
|
+
This release changes the pinned API version to `2024-09-30.acacia`. Please read the [API Upgrade Guide](https://stripe.com/docs/upgrades#2024-09-30.acacia) and carefully review the API changes before upgrading.
|
119
|
+
|
120
|
+
### ⚠️ Breaking changes
|
121
|
+
|
122
|
+
Please refer to our [migration guide for v13](https://github.com/stripe/stripe-ruby/wiki/Migration-guide-for-v13) for more information about the backwards incompatible changes.
|
123
|
+
|
124
|
+
#### ❗ `StripeClient` and related changes
|
125
|
+
* Move `StripeClient` and requestor logic to `APIRequestor`.
|
126
|
+
* `StripeClient#request` is still available, but is deprecated and will be removed. We encourage `StripeClient#raw_request` as a replacement (see other breaking changes for more detail).
|
127
|
+
* Repurpose and introduce `StripeClient` as the the entry-point to the service-based pattern, a new interface for calling the Stripe API with many benefits over the existing resource-based paradigm. Services are available under the `v1` and `v2` accessors.
|
128
|
+
* No global config: you can simultaneously use multiple clients with different configuration options (such as API keys)
|
129
|
+
* No extra API calls. All API endpoints can be accessed with a single method call. You don't have to call `retrieve` before doing an `update`.
|
130
|
+
* No static methods. Much easier mocking.
|
131
|
+
|
132
|
+
#### Other breaking changes
|
133
|
+
|
134
|
+
* Adjust default values around retries for HTTP requests. You can use the old defaults by setting them explicitly. New values are:
|
135
|
+
- max retries: `0` -> `2`
|
136
|
+
- max retry delay (seconds) `2` -> `5`
|
137
|
+
* Remove `StripeClient#connection_manager`. This was a legacy method from years ago.
|
138
|
+
* Singleton `retrieve` method now requires `params` to be passed as the first argument. Existing calls to singleton `retrieve` method with only `opts` argument will have to be updated to account for the addition of `params` argument.
|
139
|
+
```ruby
|
140
|
+
params = { expand: ["available"] }
|
141
|
+
opts = { stripe_account: "acct_123" }
|
142
|
+
|
143
|
+
# ❌ No longer works
|
144
|
+
Stripe::Balance.retrieve(opts)
|
145
|
+
|
146
|
+
# ✅ Correct way to call retrieve method
|
147
|
+
Stripe::Balance.retrieve(params, opts)
|
148
|
+
```
|
149
|
+
* Moved the `Stripe.raw_request()` method that was recently added to `StripeClient`. This will use the configuration set on the StripeClient instead of the global configuration used before.
|
150
|
+
* Remove `APIResource.request`. Instead, use `StripeClient#raw_request` now.
|
151
|
+
```ruby
|
152
|
+
# Instead of
|
153
|
+
Stripe::APIResource.request(:get, "/v1/endpoint", params, opts)
|
154
|
+
|
155
|
+
# do
|
156
|
+
client = Stripe::StripeClient.new(...)
|
157
|
+
resp = client.raw_request(:get, "/v1/endpoint", params: params, opts: opts)
|
158
|
+
```
|
159
|
+
* Add an additional parameter to `APIResource.execute_resource_request`. However, we discourage use of this in favor of `StripeClient#raw_request`.
|
160
|
+
```ruby
|
161
|
+
APIResource.execute_resource_request(method, url, params = {}, opts = {}, usage = [])
|
162
|
+
# is now, with base_address being one of [:api, :files, :connect, :meter_events]
|
163
|
+
APIResource.execute_resource_request(method, url, base_address = :api, params = {}, opts = {}, usage = [])
|
164
|
+
```
|
165
|
+
* Change parameters to `APIRequestor.execute_request` (previously `StripeClient.execute_request`). It now returns all request options from our internal request framework as the second value in the returned tuple, instead of only the API key used:
|
166
|
+
```ruby
|
167
|
+
# Before
|
168
|
+
obj, api_key = StripeClient.execute_request(method, path, api_base: nil,
|
169
|
+
api_key: nil, headers: {}, params: {}, usage: [])
|
170
|
+
|
171
|
+
# is now, with base_address being one of [:api, :files, :connect, :meter_events]
|
172
|
+
|
173
|
+
obj, opts = APIRequestor.execute_request(method, path, base_address,
|
174
|
+
params: {}, opts: {}, usage: [])
|
175
|
+
puts(opts) # will output {api_key: "sk_test_123", stripe_account: "acct_123"}
|
176
|
+
```
|
177
|
+
|
178
|
+
|
179
|
+
### Additions
|
180
|
+
* Add support for new Usage Billing APIs `Billing.MeterEvent`, `Billing.MeterEventAdjustments`, `Billing.MeterEventSession`, `Billing.MeterEventStream` and the new Events API `Core.Events` in the [v2 namespace ](https://docs.corp.stripe.com/api-v2-overview)
|
181
|
+
* Add method `parse_thin_event()` on the `StripeClient` class to parse [thin events](https://docs.corp.stripe.com/event-destinations#events-overview).
|
182
|
+
|
183
|
+
|
184
|
+
## 12.6.0 - 2024-09-12
|
185
|
+
* [#1442](https://github.com/stripe/stripe-ruby/pull/1442) Update generated code
|
186
|
+
* Add support for new resource `InvoiceRenderingTemplate`
|
187
|
+
* Add support for `archive`, `list`, `retrieve`, and `unarchive` methods on resource `InvoiceRenderingTemplate`
|
188
|
+
* [#1443](https://github.com/stripe/stripe-ruby/pull/1443) Removed v1/files override
|
189
|
+
|
2
190
|
## 12.5.0 - 2024-08-08
|
3
191
|
* [#1440](https://github.com/stripe/stripe-ruby/pull/1440) Update generated code
|
4
192
|
* Add support for new resources `Billing.AlertTriggered` and `Billing.Alert`
|
@@ -18,21 +206,21 @@
|
|
18
206
|
|
19
207
|
* [#1433](https://github.com/stripe/stripe-ruby/pull/1433) Add usage to raw_request call
|
20
208
|
* [#1431](https://github.com/stripe/stripe-ruby/pull/1431) Add `raw_request`
|
21
|
-
|
209
|
+
|
22
210
|
- Adds the ability to make raw requests to the Stripe API, by providing an HTTP method and url. This is an alternative to using `Stripe::APIResource.request(...)` to make custom requests, which is discouraged and will be broken in a future major version.
|
23
211
|
|
24
212
|
## 12.1.0 - 2024-07-05
|
25
213
|
* [#1425](https://github.com/stripe/stripe-ruby/pull/1425) Update generated code
|
26
214
|
* Add support for `add_lines`, `remove_lines`, and `update_lines` methods on resource `Invoice`
|
27
215
|
* [#1420](https://github.com/stripe/stripe-ruby/pull/1420) Update static methods for delete/list on BankAccount/Card to throw NotImplementedError
|
28
|
-
* The below methods have been throwing `InvalidRequestError` because the urls used to make the requests have been buggy. Updating them to throw `NotImplementedError` instead just like their counterparts for update & retrieve because they cannot be implemented without the parent id.
|
29
|
-
|
30
|
-
Methods affected | Use these instead in the context of payment method | Use these in the context of external accounts
|
31
|
-
------ | ------ | ----
|
32
|
-
Stripe:: BankAccount.delete | Stripe::Customer.delete_source | Stripe::Account.delete_external_account
|
33
|
-
Stripe:: BankAccount.list | Stripe::Customer.list_sources | Stripe::Customer.list_external_accounts
|
34
|
-
Stripe:: Card.delete | Stripe::Customer.delete_source | Stripe::Account.delete_external_account
|
35
|
-
Stripe:: Card.list | Stripe::Customer.list_sources | Stripe::Customer.list_external_accounts
|
216
|
+
* The below methods have been throwing `InvalidRequestError` because the urls used to make the requests have been buggy. Updating them to throw `NotImplementedError` instead just like their counterparts for update & retrieve because they cannot be implemented without the parent id.
|
217
|
+
|
218
|
+
Methods affected | Use these instead in the context of payment method | Use these in the context of external accounts
|
219
|
+
------ | ------ | ----
|
220
|
+
Stripe:: BankAccount.delete | Stripe::Customer.delete_source | Stripe::Account.delete_external_account
|
221
|
+
Stripe:: BankAccount.list | Stripe::Customer.list_sources | Stripe::Customer.list_external_accounts
|
222
|
+
Stripe:: Card.delete | Stripe::Customer.delete_source | Stripe::Account.delete_external_account
|
223
|
+
Stripe:: Card.list | Stripe::Customer.list_sources | Stripe::Customer.list_external_accounts
|
36
224
|
* [#1427](https://github.com/stripe/stripe-ruby/pull/1427) Regenerate rbis
|
37
225
|
* [#1426](https://github.com/stripe/stripe-ruby/pull/1426) Remove coveralls and re-added JRuby
|
38
226
|
|
data/Gemfile
CHANGED
data/Makefile
CHANGED
data/OPENAPI_VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
v1642
|
data/README.md
CHANGED
@@ -20,8 +20,6 @@ The library also provides other features. For example:
|
|
20
20
|
|
21
21
|
See the [Ruby API docs](https://stripe.com/docs/api?lang=ruby).
|
22
22
|
|
23
|
-
See [video demonstrations][youtube-playlist] covering how to use the library.
|
24
|
-
|
25
23
|
## Installation
|
26
24
|
|
27
25
|
You don't need this source code unless you want to modify the gem. If you just
|
@@ -158,6 +156,9 @@ print(customer.last_response.http_status) # to retrieve status code
|
|
158
156
|
print(customer.last_response.http_headers) # to retrieve headers
|
159
157
|
```
|
160
158
|
|
159
|
+
If you are accessing a response field with custom hashes provided by you, such as `Customer.metadata`,
|
160
|
+
please access your fields with the `[]` accessor.
|
161
|
+
|
161
162
|
### Configuring a proxy
|
162
163
|
|
163
164
|
A proxy can be configured with `Stripe.proxy`:
|
@@ -317,6 +318,35 @@ You can disable this behavior if you prefer:
|
|
317
318
|
Stripe.enable_telemetry = false
|
318
319
|
```
|
319
320
|
|
321
|
+
### Types
|
322
|
+
|
323
|
+
In [v14.0.0](https://github.com/stripe/stripe-python/releases/tag/v7.1.0) and newer, the library provides RBI
|
324
|
+
static type annotations. See [the wiki](https://github.com/stripe/stripe-ruby/wiki/Static-Type-Annotations)
|
325
|
+
for an detailed guide.
|
326
|
+
|
327
|
+
Please note that these types are available only for static analysis and we only support RBIs at the moment.
|
328
|
+
Please [report an issue](https://github.com/stripe/stripe-ruby/issues/new/choose)
|
329
|
+
if you find discrepancies or have issues using types.
|
330
|
+
|
331
|
+
The RBIs can be found in the `rbi/stripe/` directory, and to decrease `Tapioca` loading time we pack the gem with the
|
332
|
+
combined RBI at `rbi/stripe.rbi`.
|
333
|
+
|
334
|
+
#### Types and the Versioning Policy
|
335
|
+
|
336
|
+
We release type changes in minor releases. While stripe-ruby follows semantic versioning, our semantic
|
337
|
+
versions describe the runtime behavior of the library alone. Our type annotations are not reflected in the
|
338
|
+
semantic version. That is, upgrading to a new minor version of `stripe-ruby` might result in your type checker
|
339
|
+
producing a type error that it didn't before. You can use `~> x.x` or `x.x.x` constrain the version
|
340
|
+
of `stripe-ruby` in your Gemfile to a certain version or range of `stripe-ruby`.
|
341
|
+
|
342
|
+
#### Types and API Versions
|
343
|
+
|
344
|
+
The types describe the [Stripe API version](https://stripe.com/docs/api/versioning)
|
345
|
+
that was the latest at the time of release. This is the version that your library sends
|
346
|
+
by default. If you are overriding `Stripe.api_version` / `stripe_version` on the StripeClient,
|
347
|
+
or using a webhook endpoint tied to an older version, be aware that the data
|
348
|
+
you see at runtime may not match the types.
|
349
|
+
|
320
350
|
### Beta SDKs
|
321
351
|
|
322
352
|
Stripe has features in the beta phase that can be accessed via the beta version of this package.
|
@@ -346,13 +376,14 @@ If you:
|
|
346
376
|
- prefer to bypass the method definitions in the library and specify your request details directly,
|
347
377
|
- used the method `Stripe::APIResource.request(...)` to specify your own requests, which will soon be broken
|
348
378
|
|
349
|
-
you can now use the `raw_request` method on `
|
379
|
+
you can now use the `raw_request` method on `StripeClient`.
|
350
380
|
|
351
381
|
```ruby
|
352
|
-
|
382
|
+
client = Stripe::StripeClient.new(...)
|
383
|
+
resp = client.raw_request(:post, "/v1/beta_endpoint", {param: 123}, {stripe_version: "2022-11-15; feature_beta=v3"})
|
353
384
|
|
354
385
|
# (Optional) resp is a StripeResponse. You can use `Stripe.deserialize` to get a StripeObject.
|
355
|
-
deserialized_resp =
|
386
|
+
deserialized_resp = client.deserialize(resp.http_body)
|
356
387
|
```
|
357
388
|
|
358
389
|
## Support
|
@@ -361,19 +392,22 @@ New features and bug fixes are released on the latest major version of the Strip
|
|
361
392
|
|
362
393
|
## Development
|
363
394
|
|
364
|
-
|
365
|
-
|
366
|
-
instructions for installing via Homebrew and other methods):
|
395
|
+
[Contribution guidelines for this project](CONTRIBUTING.md)
|
396
|
+
|
397
|
+
The test suite depends on [stripe-mock], so make sure to fetch and run it from a background terminal ([stripe-mock's README][stripe-mock] also contains instructions for installing via Homebrew and other methods):
|
367
398
|
|
368
399
|
```sh
|
369
|
-
go
|
400
|
+
go install github.com/stripe/stripe-mock@latest
|
370
401
|
stripe-mock
|
371
402
|
```
|
372
403
|
|
404
|
+
We use [just](https://github.com/casey/just) for common development tasks. You can install it or run the underlying commands directly (by copying them from the `justfile`). Common tasks include:
|
405
|
+
|
373
406
|
Run all tests:
|
374
407
|
|
375
408
|
```sh
|
376
|
-
|
409
|
+
just test
|
410
|
+
# or: bundle exec rake test
|
377
411
|
```
|
378
412
|
|
379
413
|
Run a single test suite:
|
@@ -391,13 +425,15 @@ bundle exec ruby -Ilib/ test/stripe/util_test.rb -n /should.convert.names.to.sym
|
|
391
425
|
Run the linter:
|
392
426
|
|
393
427
|
```sh
|
394
|
-
|
428
|
+
just lint
|
429
|
+
# or: bundle exec rubocop
|
395
430
|
```
|
396
431
|
|
397
432
|
Update bundled CA certificates from the [Mozilla cURL release][curl]:
|
398
433
|
|
399
434
|
```sh
|
400
|
-
|
435
|
+
just update-certs
|
436
|
+
# or: bundle exec rake update_certs
|
401
437
|
```
|
402
438
|
|
403
439
|
Update the bundled [stripe-mock] by editing the version number found in
|
@@ -409,7 +445,6 @@ Update the bundled [stripe-mock] by editing the version number found in
|
|
409
445
|
[idempotency-keys]: https://stripe.com/docs/api/idempotent_requests?lang=ruby
|
410
446
|
[stripe-mock]: https://github.com/stripe/stripe-mock
|
411
447
|
[versioning]: https://stripe.com/docs/api/versioning?lang=ruby
|
412
|
-
[youtube-playlist]: https://www.youtube.com/playlist?list=PLy1nL-pvL2M50RmP6ie-gdcSnfOuQCRYk
|
413
448
|
|
414
449
|
<!--
|
415
450
|
# vim: set tw=79:
|
data/Rakefile
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
15.0.0
|
data/examples/README.md
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
## Running an example
|
2
|
+
|
3
|
+
From the examples folder, run:
|
4
|
+
`RUBYLIB=../lib ruby your_example.rb`
|
5
|
+
|
6
|
+
e.g.
|
7
|
+
|
8
|
+
`RUBYLIB=../lib ruby thinevent_webhook_handler.rb`
|
9
|
+
|
10
|
+
## Adding a new example
|
11
|
+
|
12
|
+
1. Clone new_example.rb
|
13
|
+
2. Implement your example
|
14
|
+
3. Fill out the file comment. Include a description and key steps that are being demonstrated.
|
15
|
+
4. Run it (as per above)
|
16
|
+
5. 👍
|
@@ -0,0 +1,36 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# example_template.py - This is a template for defining new examples. It is not intended to be used directly.
|
4
|
+
#
|
5
|
+
# <describe what this example does>
|
6
|
+
#
|
7
|
+
# In this example, we:
|
8
|
+
# - <key step 1>
|
9
|
+
# - <key step 2
|
10
|
+
# - ...
|
11
|
+
#
|
12
|
+
# <describe assumptions about the user's stripe account, environment, or configuration;
|
13
|
+
# or things to watch out for when running>
|
14
|
+
|
15
|
+
require "stripe"
|
16
|
+
require "date"
|
17
|
+
|
18
|
+
class ExampleTemplate
|
19
|
+
attr_accessor :api_key
|
20
|
+
|
21
|
+
def initialize(api_key)
|
22
|
+
@api_key = api_key
|
23
|
+
end
|
24
|
+
|
25
|
+
def do_something_great
|
26
|
+
puts "Hello World"
|
27
|
+
# client = Stripe::StripeClient.new(api_key)
|
28
|
+
# client.v1
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
# Send meter events
|
33
|
+
api_key = "{{API_KEY}}"
|
34
|
+
|
35
|
+
example = ExampleTemplate.new(api_key)
|
36
|
+
example.do_something_great
|
@@ -0,0 +1,57 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# meter_event_stream.py - use the high-throughput meter event stream to report create billing meter events.
|
4
|
+
#
|
5
|
+
# In this example, we:
|
6
|
+
# - create a meter event session and store the session's authentication token
|
7
|
+
# - define an event with a payload
|
8
|
+
# - use the meter_event_stream service accessor in StripeClient to create an event stream that reports this event
|
9
|
+
#
|
10
|
+
# This example expects a billing meter with an event_name of 'alpaca_ai_tokens'. If you have
|
11
|
+
# a different meter event name, you can change it before running this example.
|
12
|
+
|
13
|
+
require "stripe"
|
14
|
+
require "date"
|
15
|
+
|
16
|
+
class MeterEventManager
|
17
|
+
attr_accessor :api_key, :meter_event_session
|
18
|
+
|
19
|
+
def initialize(api_key)
|
20
|
+
@api_key = api_key
|
21
|
+
@meter_event_session = nil
|
22
|
+
end
|
23
|
+
|
24
|
+
def refresh_meter_event_session
|
25
|
+
return unless @meter_event_session.nil? || DateTime.parse(@meter_event_session.expires_at) <= DateTime.now
|
26
|
+
|
27
|
+
# Create a new meter event session in case the existing session expired
|
28
|
+
client = Stripe::StripeClient.new(api_key)
|
29
|
+
@meter_event_session = client.v2.billing.meter_event_session.create
|
30
|
+
end
|
31
|
+
|
32
|
+
def send_meter_event(meter_event)
|
33
|
+
# Refresh the meter event session if necessary
|
34
|
+
refresh_meter_event_session
|
35
|
+
|
36
|
+
# Create a meter event with the current session's authentication token
|
37
|
+
client = Stripe::StripeClient.new(meter_event_session.authentication_token)
|
38
|
+
client.v2.billing.meter_event_stream.create(
|
39
|
+
events: [meter_event]
|
40
|
+
)
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
# Send meter events
|
45
|
+
api_key = "{{API_KEY}}"
|
46
|
+
customer_id = "{{CUSTOMER_ID}}"
|
47
|
+
|
48
|
+
manager = MeterEventManager.new(api_key)
|
49
|
+
manager.send_meter_event(
|
50
|
+
{
|
51
|
+
event_name: "alpaca_ai_tokens",
|
52
|
+
payload: {
|
53
|
+
"stripe_customer_id" => customer_id,
|
54
|
+
"value" => "25",
|
55
|
+
},
|
56
|
+
}
|
57
|
+
)
|
@@ -0,0 +1,39 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
# typed: false
|
3
|
+
|
4
|
+
# thinevent_webhook_handler.rb - receive and process thin events like the
|
5
|
+
# v1.billing.meter.error_report_triggered event.
|
6
|
+
#
|
7
|
+
# In this example, we:
|
8
|
+
# - create a StripeClient called client
|
9
|
+
# - use client.parse_thin_event to parse the received thin event webhook body
|
10
|
+
# - call client.v2.core.events.retrieve to retrieve the full event object
|
11
|
+
# - if it is a V1BillingMeterErrorReportTriggeredEvent event type, call
|
12
|
+
# event.fetchRelatedObject to retrieve the Billing Meter object associated
|
13
|
+
# with the event.
|
14
|
+
|
15
|
+
require "stripe"
|
16
|
+
require "sinatra"
|
17
|
+
|
18
|
+
api_key = ENV.fetch("STRIPE_API_KEY", nil)
|
19
|
+
# Retrieve the webhook secret from the environment variable
|
20
|
+
webhook_secret = ENV.fetch("WEBHOOK_SECRET", nil)
|
21
|
+
|
22
|
+
client = Stripe::StripeClient.new(api_key)
|
23
|
+
|
24
|
+
post "/webhook" do
|
25
|
+
webhook_body = request.body.read
|
26
|
+
sig_header = request.env["HTTP_STRIPE_SIGNATURE"]
|
27
|
+
thin_event = client.parse_thin_event(webhook_body, sig_header, webhook_secret)
|
28
|
+
|
29
|
+
# Fetch the event data to understand the failure
|
30
|
+
event = client.v2.core.events.retrieve(thin_event.id)
|
31
|
+
if event.instance_of? Stripe::V1BillingMeterErrorReportTriggeredEvent
|
32
|
+
meter = event.fetch_related_object
|
33
|
+
meter_id = meter.id
|
34
|
+
puts "Success!", meter_id
|
35
|
+
end
|
36
|
+
|
37
|
+
# Record the failures and alert your team
|
38
|
+
status 200
|
39
|
+
end
|
data/justfile
ADDED
@@ -0,0 +1,43 @@
|
|
1
|
+
set quiet
|
2
|
+
|
3
|
+
import? '../sdk-codegen/utils.just'
|
4
|
+
|
5
|
+
_default:
|
6
|
+
just --list --unsorted
|
7
|
+
|
8
|
+
install *args:
|
9
|
+
bundle install {{ if is_dependency() == "true" {"--quiet"} else {""} }} {{ args }}
|
10
|
+
|
11
|
+
# ⭐ run all unit tests
|
12
|
+
test: install
|
13
|
+
bundle exec rake test
|
14
|
+
|
15
|
+
# check linting / formatting status of files
|
16
|
+
format-check *args: install
|
17
|
+
bundle exec rubocop {{ args }}
|
18
|
+
alias lint-check := format-check
|
19
|
+
|
20
|
+
# ⭐ check style & formatting for all files, fixing what we can
|
21
|
+
lint: (format-check "--autocorrect")
|
22
|
+
|
23
|
+
# NOTE: "-o /dev/null" is vital - rubocop has super noisy output and codegen will crash when formatting ruby if everything gets printed
|
24
|
+
# so, we send all its output to the void
|
25
|
+
# copy of `lint` with less output
|
26
|
+
format: (format-check "-o /dev/null --autocorrect")
|
27
|
+
|
28
|
+
update-certs: install
|
29
|
+
bundle exec rake update_certs
|
30
|
+
|
31
|
+
# run sorbet to check type definitions
|
32
|
+
typecheck: install
|
33
|
+
{{ if semver_matches(`ruby -e "puts RUBY_VERSION"`, ">=2.7") == "true" { \
|
34
|
+
"bundle exec srb tc" \
|
35
|
+
} else { \
|
36
|
+
"echo \"Ruby version < 2.7, skipping srb tc\"" \
|
37
|
+
} }}
|
38
|
+
|
39
|
+
# called by tooling
|
40
|
+
[private]
|
41
|
+
update-version version:
|
42
|
+
echo "{{ version }}" > VERSION
|
43
|
+
perl -pi -e 's|VERSION = "[.\-\w\d]+"|VERSION = "{{ version }}"|' lib/stripe/version.rb
|
@@ -35,7 +35,6 @@ module Stripe
|
|
35
35
|
end
|
36
36
|
end
|
37
37
|
|
38
|
-
# rubocop:disable Metrics/MethodLength
|
39
38
|
private def define_operation(
|
40
39
|
resource,
|
41
40
|
operation,
|
@@ -54,26 +53,8 @@ module Stripe
|
|
54
53
|
)
|
55
54
|
end
|
56
55
|
when :retrieve
|
57
|
-
# TODO: (Major) Split params_or_opts to params and opts and get rid of the complicated way to add params
|
58
56
|
define_singleton_method(:"retrieve_#{resource}") \
|
59
|
-
do |id, nested_id,
|
60
|
-
opts = nil
|
61
|
-
params = nil
|
62
|
-
if definitely_opts.nil?
|
63
|
-
unrecognized_key = params_or_opts.keys.find { |k| !Util::OPTS_USER_SPECIFIED.include?(k) }
|
64
|
-
if unrecognized_key
|
65
|
-
raise ArgumentError,
|
66
|
-
"Unrecognized request option: #{unrecognized_key}. Did you mean to specify this as " \
|
67
|
-
"retrieve params? " \
|
68
|
-
"If so, you must explicitly pass an opts hash as a fourth argument. " \
|
69
|
-
"For example: .retrieve(#{id}, #{nested_id}, {#{unrecognized_key}: 'foo'}, {})"
|
70
|
-
end
|
71
|
-
|
72
|
-
opts = params_or_opts
|
73
|
-
else
|
74
|
-
opts = definitely_opts
|
75
|
-
params = params_or_opts
|
76
|
-
end
|
57
|
+
do |id, nested_id, params = {}, opts = {}|
|
77
58
|
request_stripe_object(
|
78
59
|
method: :get,
|
79
60
|
path: send(resource_url_method, id, nested_id),
|
@@ -115,7 +96,6 @@ module Stripe
|
|
115
96
|
raise ArgumentError, "Unknown operation: #{operation.inspect}"
|
116
97
|
end
|
117
98
|
end
|
118
|
-
# rubocop:enable Metrics/MethodLength
|
119
99
|
end
|
120
100
|
end
|
121
101
|
end
|