1mod currency;
10#[allow(clippy::module_inception)]
11#[allow(clippy::new_without_default)]
12pub mod generated;
13mod types;
14
15#[path = "resources"]
16mod core {
17 pub mod account_ext;
18 pub mod balance_ext;
19 pub mod balance_transaction_ext;
20 pub mod charge_ext;
21 pub mod customer_ext;
22 pub mod payment_intent_ext;
23 pub mod payment_source;
24 pub mod payout_ext;
25 pub mod placeholders;
26 pub mod setup_intent_ext;
27 pub mod test_clock_ext;
28 pub mod token_ext;
29 pub mod transfer_reversal_ext;
30}
31
32#[path = "resources"]
33mod payment {
34 pub mod bank_account_ext;
35 pub mod card;
36 pub mod payment_method_ext;
37 pub mod source_ext;
38}
39
40#[cfg(feature = "events")]
41mod webhook_events;
42
43#[path = "resources"]
44#[cfg(feature = "billing")]
45mod billing {
46 pub mod credit_note_ext;
47 pub mod customer_balance_transaction_ext;
48 pub mod invoice_ext;
49 pub mod line_item_ext;
50 pub mod subscription_ext;
51 pub mod usage_record_ext;
52}
53
54#[path = "resources"]
55#[cfg(feature = "products")]
56mod products {
57 pub mod price_ext;
58 pub mod product_ext;
59 pub mod promotion_code_ext;
60}
61
62#[path = "resources"]
63#[cfg(feature = "checkout")]
64mod checkout {
65 pub mod checkout_session_ext;
66}
67
68#[path = "resources"]
69#[cfg(feature = "connect")]
70mod connect {
71 pub mod login_links_ext;
72}
73
74#[path = "resources"]
75#[cfg(feature = "fraud")]
76mod fraud {
77 pub mod review_ext;
78}
79
80#[path = "resources"]
81#[cfg(feature = "issuing")]
82mod issuing {
83 pub mod issuing_authorization_ext;
84 pub mod issuing_card_ext;
85 pub mod issuing_dispute_ext;
86 pub mod issuing_merchant_data;
87 pub mod issuing_transaction_ext;
88}
89
90#[path = "resources"]
91#[cfg(feature = "orders")]
92mod orders {
93 pub mod order_ext;
94}
95
96#[path = "resources"]
97#[cfg(feature = "webhook-endpoints")]
98mod webhook_endpoints {
99 pub mod webhook_endpoint_ext;
100}
101
102#[rustfmt::skip]
103pub use {
104 currency::*,
105 types::*,
106
107 self::core::{
108 account_ext::*,
109 balance_transaction_ext::*,
110 charge_ext::*,
111 transfer_reversal_ext::*,
112 customer_ext::*,
113 payment_intent_ext::*,
114 payment_source::*,
115 placeholders::*,
116 payout_ext::*,
117 test_clock_ext::*,
118 token_ext::*,
119 setup_intent_ext::*,
120 },
121 generated::core::{
122 address::*,
123 balance::*,
124 balance_amount_by_source_type::*,
125 balance_transaction::*,
126 billing_details::*,
127 charge::*,
128 connect_account_reference::*,
129 customer::*,
130 customer_session::*,
131 custom_unit_amount::*,
132 cash_balance::*,
133 dispute::*,
134 ephemeral_key::*,
135 file::*,
136 file_link::*,
137 invoice_setting_rendering_options::*,
138 mandate::*,
139 payment_intent::*,
140 payment_intent_next_action_cashapp_handle_redirect_or_display_qr_code::*,
141 linked_account_options_us_bank_account::*,
142 payment_method_details_card_wallet_apple_pay::*,
143 payment_method_details_card_wallet_google_pay::*,
144 payment_method_options_customer_balance_eu_bank_account::*,
145 payment_method_options_us_bank_account_mandate_options::*,
146 payment_method_config_biz_payment_method_configuration_details::*,
147 payout::*,
148 platform_tax_fee::*,
149 price::*,
150 product::*,
151 radar_radar_options::*,
152 refund::*,
153 reserve_transaction::*,
154 setup_attempt::*,
155 setup_intent::*,
156 shipping::*,
157 shipping_rate::*,
158 tax_code::*,
159 tax_deducted_at_source::*,
160 test_helpers_test_clock::*,
161 token::*,
162 api_errors::*,
163 },
164
165 payment::{
166 bank_account_ext::*,
167 card::*,
168 payment_method_ext::*,
169 source_ext::*
170 },
171 generated::payment::{
172 card::*,
173 bank_account::*,
174 payment_method::*,
175 payment_method_card_present_networks::*,
176 source::*,
177 },
178};
179
180#[rustfmt::skip]
181#[cfg(feature = "events")]
182pub use {
183 webhook_events::*,
184 webhook_events::NotificationEventData,
185 generated::event::*,
186};
187
188#[rustfmt::skip]
189#[cfg(feature = "checkout")]
190pub use {
191 checkout::checkout_session_ext::*,
192 generated::checkout::{
193 checkout_session::*,
194 payment_link::*,
195 item::*
196 },
197};
198
199#[rustfmt::skip]
200#[cfg(feature = "products")]
201pub use {
202 products::{
203 product_ext::*,
204 price_ext::*,
205 promotion_code_ext::*,
206 }
207};
208
209#[rustfmt::skip]
210#[cfg(feature = "billing")]
211pub use {
212 billing::{
213 customer_balance_transaction_ext::*,
214 invoice_ext::*,
215 line_item_ext::*,
216 subscription_ext::*,
217 usage_record_ext::*,
218 },
219 generated::billing::{
220 billing_portal_session::*,
221 billing_portal_configuration::*,
222 coupon::*,
223 credit_note::*,
224 credit_note_line_item::*,
225 customer_balance_transaction::*,
226 discount::*,
227 invoice::*,
228 invoice_payment_method_options_acss_debit::*,
229 invoice_payment_method_options_bancontact::*,
230 invoice_payment_method_options_konbini::*,
231 invoice_payment_method_options_customer_balance::*,
232 invoice_payment_method_options_us_bank_account::*,
233 invoiceitem::*,
234 invoices_shipping_cost::*,
235 line_item::*,
236 plan::*,
237 plan::PlanInterval,
238 promotion_code::*,
239 quote::*,
240 quotes_resource_total_details::*,
241 subscription_item::*,
242 subscription_item::PlanInterval as SubscriptionItemInterval,
243 subscription_item::SubscriptionItemPriceDataRecurring as SubscriptionItemPriceDataRecurring,
244 subscription_item::SubscriptionItemPriceData as SubscriptionItemPriceData,
245 subscription_item::SubscriptionPaymentBehavior as SubscriptionItemPaymentBehavior,
246 subscription::*,
249 subscriptions_trials_resource_trial_settings::*,
250 subscription::PlanInterval as SubscriptionInterval,
251 subscription::SubscriptionItemPriceDataRecurring as SubscriptionPriceDataRecurring,
252 subscription::SubscriptionItemPriceData as SubscriptionPriceData,
253 subscription::SubscriptionPaymentBehavior as SubscriptionPaymentBehavior,
254 subscription_schedule::*,
255 subscription_billing_thresholds::*,
256 subscription_item_billing_thresholds::*,
257 tax_id::*,
258 tax_rate::*,
259 usage_record::*,
260 usage_record_summary::*,
261 },
262};
263
264#[rustfmt::skip]
265#[cfg(feature = "tax-calculation")]
266pub use {
267 generated::tax_calculation::{
268 tax_calculation::*,
269 tax_calculation_line_item::*,
270 tax_product_resource_customer_details::*,
271 }
272};
273
274#[rustfmt::skip]
275#[cfg(feature = "connect")]
276pub use {
277 connect::{
278 login_links_ext::*,
279 },
280 generated::connect::{
281 account_link::*,
282 account::*,
283 application::*,
284 application_fee::*,
285 connect_collection_transfer::*,
286 fee_refund::*,
287 login_link::*,
288 person::*,
289 topup::*,
290 transfer::*,
291 transfer_reversal::*,
292 }
293};
294
295#[rustfmt::skip]
296#[cfg(feature = "fraud")]
297pub use {
298 fraud::review_ext::*,
299 generated::fraud::review::*
300};
301
302#[rustfmt::skip]
303#[cfg(feature = "issuing")]
304pub use {
305 issuing::{
306 issuing_authorization_ext::*,
307 issuing_card_ext::*,
308 issuing_dispute_ext::*,
309 issuing_merchant_data::*,
310 issuing_transaction_ext::*,
311 },
312 generated::issuing::{
313 issuing_authorization::*,
314 issuing_card::*,
315 issuing_token::*,
316 issuing_cardholder::*,
317 issuing_dispute::*,
318 issuing_transaction::*,
319 },
320};
321
322#[rustfmt::skip]
323#[cfg(feature = "orders")]
324pub use {
325 orders::order_ext::*,
326};
327
328#[rustfmt::skip]
329#[cfg(feature = "sigma")]
330pub use {
331 generated::scheduled_query_run::*,
332};
333
334#[rustfmt::skip]
335#[cfg(feature = "terminal")]
336pub use {
337 generated::terminal::{
338 terminal_configuration::*,
339 terminal_connection_token::*,
340 terminal_location::*,
341 terminal_reader::*,
342 },
343};
344
345#[rustfmt::skip]
346#[cfg(feature = "webhook-endpoints")]
347pub use {
348 webhook_endpoints::webhook_endpoint_ext::*,
349 generated::webhook_endpoints::webhook_endpoint::*,
350};
351
352#[cfg(not(feature = "full"))]
353pub use generated::placeholders::*;
354
355#[cfg(not(feature = "connect"))]
360#[derive(Clone, Debug, serde::Deserialize, serde::Serialize)]
361pub struct CompanyParams {
362 #[serde(default)]
363 pub metadata: crate::params::Metadata,
364}
365
366#[cfg(not(feature = "connect"))]
371#[derive(Clone, Debug, serde::Deserialize, serde::Serialize)]
372pub struct PersonParams {
373 #[serde(default)]
374 pub metadata: crate::params::Metadata,
375}