1#[derive(Clone, Eq, PartialEq)]
2#[cfg_attr(not(feature = "redact-generated-debug"), derive(Debug))]
3#[cfg_attr(feature = "serialize", derive(serde::Serialize))]
4#[cfg_attr(feature = "deserialize", derive(serde::Deserialize))]
5pub struct PaymentIntentPaymentMethodOptions {
6 pub acss_debit: Option<stripe_shared::PaymentIntentPaymentMethodOptionsAcssDebit>,
7 pub affirm: Option<stripe_shared::PaymentMethodOptionsAffirm>,
8 pub afterpay_clearpay: Option<stripe_shared::PaymentMethodOptionsAfterpayClearpay>,
9 pub alipay: Option<stripe_shared::PaymentMethodOptionsAlipay>,
10 pub alma: Option<stripe_shared::PaymentMethodOptionsAlma>,
11 pub amazon_pay: Option<stripe_shared::PaymentMethodOptionsAmazonPay>,
12 pub au_becs_debit: Option<stripe_shared::PaymentIntentPaymentMethodOptionsAuBecsDebit>,
13 pub bacs_debit: Option<stripe_shared::PaymentIntentPaymentMethodOptionsBacsDebit>,
14 pub bancontact: Option<stripe_shared::PaymentMethodOptionsBancontact>,
15 pub billie: Option<stripe_shared::PaymentMethodOptionsBillie>,
16 pub bizum: Option<stripe_shared::PaymentMethodOptionsBizum>,
17 pub blik: Option<stripe_shared::PaymentIntentPaymentMethodOptionsBlik>,
18 pub boleto: Option<stripe_shared::PaymentMethodOptionsBoleto>,
19 pub card: Option<stripe_shared::PaymentIntentPaymentMethodOptionsCard>,
20 pub card_present: Option<stripe_shared::PaymentMethodOptionsCardPresent>,
21 pub cashapp: Option<stripe_shared::PaymentMethodOptionsCashapp>,
22 pub crypto: Option<stripe_shared::PaymentMethodOptionsCrypto>,
23 pub customer_balance: Option<stripe_shared::PaymentMethodOptionsCustomerBalance>,
24 pub eps: Option<stripe_shared::PaymentIntentPaymentMethodOptionsEps>,
25 pub fpx: Option<stripe_shared::PaymentMethodOptionsFpx>,
26 pub giropay: Option<stripe_shared::PaymentMethodOptionsGiropay>,
27 pub grabpay: Option<stripe_shared::PaymentMethodOptionsGrabpay>,
28 pub ideal: Option<stripe_shared::PaymentMethodOptionsIdeal>,
29 pub interac_present: Option<stripe_shared::PaymentMethodOptionsInteracPresent>,
30 pub kakao_pay:
31 Option<stripe_shared::PaymentFlowsPrivatePaymentMethodsKakaoPayPaymentMethodOptions>,
32 pub klarna: Option<stripe_shared::PaymentMethodOptionsKlarna>,
33 pub konbini: Option<stripe_shared::PaymentMethodOptionsKonbini>,
34 pub kr_card: Option<stripe_shared::PaymentMethodOptionsKrCard>,
35 pub link: Option<stripe_shared::PaymentIntentPaymentMethodOptionsLink>,
36 pub mb_way: Option<stripe_shared::PaymentMethodOptionsMbWay>,
37 pub mobilepay: Option<stripe_shared::PaymentIntentPaymentMethodOptionsMobilepay>,
38 pub multibanco: Option<stripe_shared::PaymentMethodOptionsMultibanco>,
39 pub naver_pay:
40 Option<stripe_shared::PaymentFlowsPrivatePaymentMethodsNaverPayPaymentMethodOptions>,
41 pub nz_bank_account: Option<stripe_shared::PaymentIntentPaymentMethodOptionsNzBankAccount>,
42 pub oxxo: Option<stripe_shared::PaymentMethodOptionsOxxo>,
43 pub p24: Option<stripe_shared::PaymentMethodOptionsP24>,
44 pub pay_by_bank: Option<stripe_shared::PaymentMethodOptionsPayByBank>,
45 pub payco: Option<stripe_shared::PaymentFlowsPrivatePaymentMethodsPaycoPaymentMethodOptions>,
46 pub paynow: Option<stripe_shared::PaymentMethodOptionsPaynow>,
47 pub paypal: Option<stripe_shared::PaymentMethodOptionsPaypal>,
48 pub payto: Option<stripe_shared::PaymentIntentPaymentMethodOptionsPayto>,
49 pub pix: Option<stripe_shared::PaymentMethodOptionsPix>,
50 pub promptpay: Option<stripe_shared::PaymentMethodOptionsPromptpay>,
51 pub revolut_pay: Option<stripe_shared::PaymentMethodOptionsRevolutPay>,
52 pub samsung_pay:
53 Option<stripe_shared::PaymentFlowsPrivatePaymentMethodsSamsungPayPaymentMethodOptions>,
54 pub satispay: Option<stripe_shared::PaymentMethodOptionsSatispay>,
55 pub scalapay: Option<stripe_shared::PaymentMethodOptionsScalapay>,
56 pub sepa_debit: Option<stripe_shared::PaymentIntentPaymentMethodOptionsSepaDebit>,
57 pub sofort: Option<stripe_shared::PaymentMethodOptionsSofort>,
58 pub sunbit: Option<stripe_shared::PaymentMethodOptionsSunbit>,
59 pub swish: Option<stripe_shared::PaymentIntentPaymentMethodOptionsSwish>,
60 pub twint: Option<stripe_shared::PaymentMethodOptionsTwint>,
61 pub upi: Option<stripe_shared::PaymentMethodOptionsUpi>,
62 pub us_bank_account: Option<stripe_shared::PaymentIntentPaymentMethodOptionsUsBankAccount>,
63 pub wechat_pay: Option<stripe_shared::PaymentMethodOptionsWechatPay>,
64 pub zip: Option<stripe_shared::PaymentMethodOptionsZip>,
65}
66#[cfg(feature = "redact-generated-debug")]
67impl std::fmt::Debug for PaymentIntentPaymentMethodOptions {
68 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
69 f.debug_struct("PaymentIntentPaymentMethodOptions").finish_non_exhaustive()
70 }
71}
72#[doc(hidden)]
73pub struct PaymentIntentPaymentMethodOptionsBuilder {
74 acss_debit: Option<Option<stripe_shared::PaymentIntentPaymentMethodOptionsAcssDebit>>,
75 affirm: Option<Option<stripe_shared::PaymentMethodOptionsAffirm>>,
76 afterpay_clearpay: Option<Option<stripe_shared::PaymentMethodOptionsAfterpayClearpay>>,
77 alipay: Option<Option<stripe_shared::PaymentMethodOptionsAlipay>>,
78 alma: Option<Option<stripe_shared::PaymentMethodOptionsAlma>>,
79 amazon_pay: Option<Option<stripe_shared::PaymentMethodOptionsAmazonPay>>,
80 au_becs_debit: Option<Option<stripe_shared::PaymentIntentPaymentMethodOptionsAuBecsDebit>>,
81 bacs_debit: Option<Option<stripe_shared::PaymentIntentPaymentMethodOptionsBacsDebit>>,
82 bancontact: Option<Option<stripe_shared::PaymentMethodOptionsBancontact>>,
83 billie: Option<Option<stripe_shared::PaymentMethodOptionsBillie>>,
84 bizum: Option<Option<stripe_shared::PaymentMethodOptionsBizum>>,
85 blik: Option<Option<stripe_shared::PaymentIntentPaymentMethodOptionsBlik>>,
86 boleto: Option<Option<stripe_shared::PaymentMethodOptionsBoleto>>,
87 card: Option<Option<stripe_shared::PaymentIntentPaymentMethodOptionsCard>>,
88 card_present: Option<Option<stripe_shared::PaymentMethodOptionsCardPresent>>,
89 cashapp: Option<Option<stripe_shared::PaymentMethodOptionsCashapp>>,
90 crypto: Option<Option<stripe_shared::PaymentMethodOptionsCrypto>>,
91 customer_balance: Option<Option<stripe_shared::PaymentMethodOptionsCustomerBalance>>,
92 eps: Option<Option<stripe_shared::PaymentIntentPaymentMethodOptionsEps>>,
93 fpx: Option<Option<stripe_shared::PaymentMethodOptionsFpx>>,
94 giropay: Option<Option<stripe_shared::PaymentMethodOptionsGiropay>>,
95 grabpay: Option<Option<stripe_shared::PaymentMethodOptionsGrabpay>>,
96 ideal: Option<Option<stripe_shared::PaymentMethodOptionsIdeal>>,
97 interac_present: Option<Option<stripe_shared::PaymentMethodOptionsInteracPresent>>,
98 kakao_pay: Option<
99 Option<stripe_shared::PaymentFlowsPrivatePaymentMethodsKakaoPayPaymentMethodOptions>,
100 >,
101 klarna: Option<Option<stripe_shared::PaymentMethodOptionsKlarna>>,
102 konbini: Option<Option<stripe_shared::PaymentMethodOptionsKonbini>>,
103 kr_card: Option<Option<stripe_shared::PaymentMethodOptionsKrCard>>,
104 link: Option<Option<stripe_shared::PaymentIntentPaymentMethodOptionsLink>>,
105 mb_way: Option<Option<stripe_shared::PaymentMethodOptionsMbWay>>,
106 mobilepay: Option<Option<stripe_shared::PaymentIntentPaymentMethodOptionsMobilepay>>,
107 multibanco: Option<Option<stripe_shared::PaymentMethodOptionsMultibanco>>,
108 naver_pay: Option<
109 Option<stripe_shared::PaymentFlowsPrivatePaymentMethodsNaverPayPaymentMethodOptions>,
110 >,
111 nz_bank_account: Option<Option<stripe_shared::PaymentIntentPaymentMethodOptionsNzBankAccount>>,
112 oxxo: Option<Option<stripe_shared::PaymentMethodOptionsOxxo>>,
113 p24: Option<Option<stripe_shared::PaymentMethodOptionsP24>>,
114 pay_by_bank: Option<Option<stripe_shared::PaymentMethodOptionsPayByBank>>,
115 payco:
116 Option<Option<stripe_shared::PaymentFlowsPrivatePaymentMethodsPaycoPaymentMethodOptions>>,
117 paynow: Option<Option<stripe_shared::PaymentMethodOptionsPaynow>>,
118 paypal: Option<Option<stripe_shared::PaymentMethodOptionsPaypal>>,
119 payto: Option<Option<stripe_shared::PaymentIntentPaymentMethodOptionsPayto>>,
120 pix: Option<Option<stripe_shared::PaymentMethodOptionsPix>>,
121 promptpay: Option<Option<stripe_shared::PaymentMethodOptionsPromptpay>>,
122 revolut_pay: Option<Option<stripe_shared::PaymentMethodOptionsRevolutPay>>,
123 samsung_pay: Option<
124 Option<stripe_shared::PaymentFlowsPrivatePaymentMethodsSamsungPayPaymentMethodOptions>,
125 >,
126 satispay: Option<Option<stripe_shared::PaymentMethodOptionsSatispay>>,
127 scalapay: Option<Option<stripe_shared::PaymentMethodOptionsScalapay>>,
128 sepa_debit: Option<Option<stripe_shared::PaymentIntentPaymentMethodOptionsSepaDebit>>,
129 sofort: Option<Option<stripe_shared::PaymentMethodOptionsSofort>>,
130 sunbit: Option<Option<stripe_shared::PaymentMethodOptionsSunbit>>,
131 swish: Option<Option<stripe_shared::PaymentIntentPaymentMethodOptionsSwish>>,
132 twint: Option<Option<stripe_shared::PaymentMethodOptionsTwint>>,
133 upi: Option<Option<stripe_shared::PaymentMethodOptionsUpi>>,
134 us_bank_account: Option<Option<stripe_shared::PaymentIntentPaymentMethodOptionsUsBankAccount>>,
135 wechat_pay: Option<Option<stripe_shared::PaymentMethodOptionsWechatPay>>,
136 zip: Option<Option<stripe_shared::PaymentMethodOptionsZip>>,
137}
138
139#[allow(
140 unused_variables,
141 irrefutable_let_patterns,
142 clippy::let_unit_value,
143 clippy::match_single_binding,
144 clippy::single_match
145)]
146const _: () = {
147 use miniserde::de::{Map, Visitor};
148 use miniserde::json::Value;
149 use miniserde::{Deserialize, Result, make_place};
150 use stripe_types::miniserde_helpers::FromValueOpt;
151 use stripe_types::{MapBuilder, ObjectDeser};
152
153 make_place!(Place);
154
155 impl Deserialize for PaymentIntentPaymentMethodOptions {
156 fn begin(out: &mut Option<Self>) -> &mut dyn Visitor {
157 Place::new(out)
158 }
159 }
160
161 struct Builder<'a> {
162 out: &'a mut Option<PaymentIntentPaymentMethodOptions>,
163 builder: PaymentIntentPaymentMethodOptionsBuilder,
164 }
165
166 impl Visitor for Place<PaymentIntentPaymentMethodOptions> {
167 fn map(&mut self) -> Result<Box<dyn Map + '_>> {
168 Ok(Box::new(Builder {
169 out: &mut self.out,
170 builder: PaymentIntentPaymentMethodOptionsBuilder::deser_default(),
171 }))
172 }
173 }
174
175 impl MapBuilder for PaymentIntentPaymentMethodOptionsBuilder {
176 type Out = PaymentIntentPaymentMethodOptions;
177 fn key(&mut self, k: &str) -> Result<&mut dyn Visitor> {
178 Ok(match k {
179 "acss_debit" => Deserialize::begin(&mut self.acss_debit),
180 "affirm" => Deserialize::begin(&mut self.affirm),
181 "afterpay_clearpay" => Deserialize::begin(&mut self.afterpay_clearpay),
182 "alipay" => Deserialize::begin(&mut self.alipay),
183 "alma" => Deserialize::begin(&mut self.alma),
184 "amazon_pay" => Deserialize::begin(&mut self.amazon_pay),
185 "au_becs_debit" => Deserialize::begin(&mut self.au_becs_debit),
186 "bacs_debit" => Deserialize::begin(&mut self.bacs_debit),
187 "bancontact" => Deserialize::begin(&mut self.bancontact),
188 "billie" => Deserialize::begin(&mut self.billie),
189 "bizum" => Deserialize::begin(&mut self.bizum),
190 "blik" => Deserialize::begin(&mut self.blik),
191 "boleto" => Deserialize::begin(&mut self.boleto),
192 "card" => Deserialize::begin(&mut self.card),
193 "card_present" => Deserialize::begin(&mut self.card_present),
194 "cashapp" => Deserialize::begin(&mut self.cashapp),
195 "crypto" => Deserialize::begin(&mut self.crypto),
196 "customer_balance" => Deserialize::begin(&mut self.customer_balance),
197 "eps" => Deserialize::begin(&mut self.eps),
198 "fpx" => Deserialize::begin(&mut self.fpx),
199 "giropay" => Deserialize::begin(&mut self.giropay),
200 "grabpay" => Deserialize::begin(&mut self.grabpay),
201 "ideal" => Deserialize::begin(&mut self.ideal),
202 "interac_present" => Deserialize::begin(&mut self.interac_present),
203 "kakao_pay" => Deserialize::begin(&mut self.kakao_pay),
204 "klarna" => Deserialize::begin(&mut self.klarna),
205 "konbini" => Deserialize::begin(&mut self.konbini),
206 "kr_card" => Deserialize::begin(&mut self.kr_card),
207 "link" => Deserialize::begin(&mut self.link),
208 "mb_way" => Deserialize::begin(&mut self.mb_way),
209 "mobilepay" => Deserialize::begin(&mut self.mobilepay),
210 "multibanco" => Deserialize::begin(&mut self.multibanco),
211 "naver_pay" => Deserialize::begin(&mut self.naver_pay),
212 "nz_bank_account" => Deserialize::begin(&mut self.nz_bank_account),
213 "oxxo" => Deserialize::begin(&mut self.oxxo),
214 "p24" => Deserialize::begin(&mut self.p24),
215 "pay_by_bank" => Deserialize::begin(&mut self.pay_by_bank),
216 "payco" => Deserialize::begin(&mut self.payco),
217 "paynow" => Deserialize::begin(&mut self.paynow),
218 "paypal" => Deserialize::begin(&mut self.paypal),
219 "payto" => Deserialize::begin(&mut self.payto),
220 "pix" => Deserialize::begin(&mut self.pix),
221 "promptpay" => Deserialize::begin(&mut self.promptpay),
222 "revolut_pay" => Deserialize::begin(&mut self.revolut_pay),
223 "samsung_pay" => Deserialize::begin(&mut self.samsung_pay),
224 "satispay" => Deserialize::begin(&mut self.satispay),
225 "scalapay" => Deserialize::begin(&mut self.scalapay),
226 "sepa_debit" => Deserialize::begin(&mut self.sepa_debit),
227 "sofort" => Deserialize::begin(&mut self.sofort),
228 "sunbit" => Deserialize::begin(&mut self.sunbit),
229 "swish" => Deserialize::begin(&mut self.swish),
230 "twint" => Deserialize::begin(&mut self.twint),
231 "upi" => Deserialize::begin(&mut self.upi),
232 "us_bank_account" => Deserialize::begin(&mut self.us_bank_account),
233 "wechat_pay" => Deserialize::begin(&mut self.wechat_pay),
234 "zip" => Deserialize::begin(&mut self.zip),
235 _ => <dyn Visitor>::ignore(),
236 })
237 }
238
239 fn deser_default() -> Self {
240 Self {
241 acss_debit: Some(None),
242 affirm: Some(None),
243 afterpay_clearpay: Some(None),
244 alipay: Some(None),
245 alma: Some(None),
246 amazon_pay: Some(None),
247 au_becs_debit: Some(None),
248 bacs_debit: Some(None),
249 bancontact: Some(None),
250 billie: Some(None),
251 bizum: Some(None),
252 blik: Some(None),
253 boleto: Some(None),
254 card: Some(None),
255 card_present: Some(None),
256 cashapp: Some(None),
257 crypto: Some(None),
258 customer_balance: Some(None),
259 eps: Some(None),
260 fpx: Some(None),
261 giropay: Some(None),
262 grabpay: Some(None),
263 ideal: Some(None),
264 interac_present: Some(None),
265 kakao_pay: Some(None),
266 klarna: Some(None),
267 konbini: Some(None),
268 kr_card: Some(None),
269 link: Some(None),
270 mb_way: Some(None),
271 mobilepay: Some(None),
272 multibanco: Some(None),
273 naver_pay: Some(None),
274 nz_bank_account: Some(None),
275 oxxo: Some(None),
276 p24: Some(None),
277 pay_by_bank: Some(None),
278 payco: Some(None),
279 paynow: Some(None),
280 paypal: Some(None),
281 payto: Some(None),
282 pix: Some(None),
283 promptpay: Some(None),
284 revolut_pay: Some(None),
285 samsung_pay: Some(None),
286 satispay: Some(None),
287 scalapay: Some(None),
288 sepa_debit: Some(None),
289 sofort: Some(None),
290 sunbit: Some(None),
291 swish: Some(None),
292 twint: Some(None),
293 upi: Some(None),
294 us_bank_account: Some(None),
295 wechat_pay: Some(None),
296 zip: Some(None),
297 }
298 }
299
300 fn take_out(&mut self) -> Option<Self::Out> {
301 let (
302 Some(acss_debit),
303 Some(affirm),
304 Some(afterpay_clearpay),
305 Some(alipay),
306 Some(alma),
307 Some(amazon_pay),
308 Some(au_becs_debit),
309 Some(bacs_debit),
310 Some(bancontact),
311 Some(billie),
312 Some(bizum),
313 Some(blik),
314 Some(boleto),
315 Some(card),
316 Some(card_present),
317 Some(cashapp),
318 Some(crypto),
319 Some(customer_balance),
320 Some(eps),
321 Some(fpx),
322 Some(giropay),
323 Some(grabpay),
324 Some(ideal),
325 Some(interac_present),
326 Some(kakao_pay),
327 Some(klarna),
328 Some(konbini),
329 Some(kr_card),
330 Some(link),
331 Some(mb_way),
332 Some(mobilepay),
333 Some(multibanco),
334 Some(naver_pay),
335 Some(nz_bank_account),
336 Some(oxxo),
337 Some(p24),
338 Some(pay_by_bank),
339 Some(payco),
340 Some(paynow),
341 Some(paypal),
342 Some(payto),
343 Some(pix),
344 Some(promptpay),
345 Some(revolut_pay),
346 Some(samsung_pay),
347 Some(satispay),
348 Some(scalapay),
349 Some(sepa_debit),
350 Some(sofort),
351 Some(sunbit),
352 Some(swish),
353 Some(twint),
354 Some(upi),
355 Some(us_bank_account),
356 Some(wechat_pay),
357 Some(zip),
358 ) = (
359 self.acss_debit.take(),
360 self.affirm.take(),
361 self.afterpay_clearpay.take(),
362 self.alipay.take(),
363 self.alma.take(),
364 self.amazon_pay.take(),
365 self.au_becs_debit.take(),
366 self.bacs_debit.take(),
367 self.bancontact.take(),
368 self.billie.take(),
369 self.bizum,
370 self.blik.take(),
371 self.boleto.take(),
372 self.card.take(),
373 self.card_present.take(),
374 self.cashapp.take(),
375 self.crypto.take(),
376 self.customer_balance.take(),
377 self.eps.take(),
378 self.fpx.take(),
379 self.giropay.take(),
380 self.grabpay.take(),
381 self.ideal.take(),
382 self.interac_present,
383 self.kakao_pay.take(),
384 self.klarna.take(),
385 self.konbini.take(),
386 self.kr_card.take(),
387 self.link.take(),
388 self.mb_way.take(),
389 self.mobilepay.take(),
390 self.multibanco.take(),
391 self.naver_pay.take(),
392 self.nz_bank_account.take(),
393 self.oxxo.take(),
394 self.p24.take(),
395 self.pay_by_bank,
396 self.payco.take(),
397 self.paynow.take(),
398 self.paypal.take(),
399 self.payto.take(),
400 self.pix.take(),
401 self.promptpay.take(),
402 self.revolut_pay.take(),
403 self.samsung_pay.take(),
404 self.satispay.take(),
405 self.scalapay.take(),
406 self.sepa_debit.take(),
407 self.sofort.take(),
408 self.sunbit.take(),
409 self.swish.take(),
410 self.twint.take(),
411 self.upi.take(),
412 self.us_bank_account.take(),
413 self.wechat_pay.take(),
414 self.zip.take(),
415 )
416 else {
417 return None;
418 };
419 Some(Self::Out {
420 acss_debit,
421 affirm,
422 afterpay_clearpay,
423 alipay,
424 alma,
425 amazon_pay,
426 au_becs_debit,
427 bacs_debit,
428 bancontact,
429 billie,
430 bizum,
431 blik,
432 boleto,
433 card,
434 card_present,
435 cashapp,
436 crypto,
437 customer_balance,
438 eps,
439 fpx,
440 giropay,
441 grabpay,
442 ideal,
443 interac_present,
444 kakao_pay,
445 klarna,
446 konbini,
447 kr_card,
448 link,
449 mb_way,
450 mobilepay,
451 multibanco,
452 naver_pay,
453 nz_bank_account,
454 oxxo,
455 p24,
456 pay_by_bank,
457 payco,
458 paynow,
459 paypal,
460 payto,
461 pix,
462 promptpay,
463 revolut_pay,
464 samsung_pay,
465 satispay,
466 scalapay,
467 sepa_debit,
468 sofort,
469 sunbit,
470 swish,
471 twint,
472 upi,
473 us_bank_account,
474 wechat_pay,
475 zip,
476 })
477 }
478 }
479
480 impl Map for Builder<'_> {
481 fn key(&mut self, k: &str) -> Result<&mut dyn Visitor> {
482 self.builder.key(k)
483 }
484
485 fn finish(&mut self) -> Result<()> {
486 *self.out = self.builder.take_out();
487 Ok(())
488 }
489 }
490
491 impl ObjectDeser for PaymentIntentPaymentMethodOptions {
492 type Builder = PaymentIntentPaymentMethodOptionsBuilder;
493 }
494
495 impl FromValueOpt for PaymentIntentPaymentMethodOptions {
496 fn from_value(v: Value) -> Option<Self> {
497 let Value::Object(obj) = v else {
498 return None;
499 };
500 let mut b = PaymentIntentPaymentMethodOptionsBuilder::deser_default();
501 for (k, v) in obj {
502 match k.as_str() {
503 "acss_debit" => b.acss_debit = FromValueOpt::from_value(v),
504 "affirm" => b.affirm = FromValueOpt::from_value(v),
505 "afterpay_clearpay" => b.afterpay_clearpay = FromValueOpt::from_value(v),
506 "alipay" => b.alipay = FromValueOpt::from_value(v),
507 "alma" => b.alma = FromValueOpt::from_value(v),
508 "amazon_pay" => b.amazon_pay = FromValueOpt::from_value(v),
509 "au_becs_debit" => b.au_becs_debit = FromValueOpt::from_value(v),
510 "bacs_debit" => b.bacs_debit = FromValueOpt::from_value(v),
511 "bancontact" => b.bancontact = FromValueOpt::from_value(v),
512 "billie" => b.billie = FromValueOpt::from_value(v),
513 "bizum" => b.bizum = FromValueOpt::from_value(v),
514 "blik" => b.blik = FromValueOpt::from_value(v),
515 "boleto" => b.boleto = FromValueOpt::from_value(v),
516 "card" => b.card = FromValueOpt::from_value(v),
517 "card_present" => b.card_present = FromValueOpt::from_value(v),
518 "cashapp" => b.cashapp = FromValueOpt::from_value(v),
519 "crypto" => b.crypto = FromValueOpt::from_value(v),
520 "customer_balance" => b.customer_balance = FromValueOpt::from_value(v),
521 "eps" => b.eps = FromValueOpt::from_value(v),
522 "fpx" => b.fpx = FromValueOpt::from_value(v),
523 "giropay" => b.giropay = FromValueOpt::from_value(v),
524 "grabpay" => b.grabpay = FromValueOpt::from_value(v),
525 "ideal" => b.ideal = FromValueOpt::from_value(v),
526 "interac_present" => b.interac_present = FromValueOpt::from_value(v),
527 "kakao_pay" => b.kakao_pay = FromValueOpt::from_value(v),
528 "klarna" => b.klarna = FromValueOpt::from_value(v),
529 "konbini" => b.konbini = FromValueOpt::from_value(v),
530 "kr_card" => b.kr_card = FromValueOpt::from_value(v),
531 "link" => b.link = FromValueOpt::from_value(v),
532 "mb_way" => b.mb_way = FromValueOpt::from_value(v),
533 "mobilepay" => b.mobilepay = FromValueOpt::from_value(v),
534 "multibanco" => b.multibanco = FromValueOpt::from_value(v),
535 "naver_pay" => b.naver_pay = FromValueOpt::from_value(v),
536 "nz_bank_account" => b.nz_bank_account = FromValueOpt::from_value(v),
537 "oxxo" => b.oxxo = FromValueOpt::from_value(v),
538 "p24" => b.p24 = FromValueOpt::from_value(v),
539 "pay_by_bank" => b.pay_by_bank = FromValueOpt::from_value(v),
540 "payco" => b.payco = FromValueOpt::from_value(v),
541 "paynow" => b.paynow = FromValueOpt::from_value(v),
542 "paypal" => b.paypal = FromValueOpt::from_value(v),
543 "payto" => b.payto = FromValueOpt::from_value(v),
544 "pix" => b.pix = FromValueOpt::from_value(v),
545 "promptpay" => b.promptpay = FromValueOpt::from_value(v),
546 "revolut_pay" => b.revolut_pay = FromValueOpt::from_value(v),
547 "samsung_pay" => b.samsung_pay = FromValueOpt::from_value(v),
548 "satispay" => b.satispay = FromValueOpt::from_value(v),
549 "scalapay" => b.scalapay = FromValueOpt::from_value(v),
550 "sepa_debit" => b.sepa_debit = FromValueOpt::from_value(v),
551 "sofort" => b.sofort = FromValueOpt::from_value(v),
552 "sunbit" => b.sunbit = FromValueOpt::from_value(v),
553 "swish" => b.swish = FromValueOpt::from_value(v),
554 "twint" => b.twint = FromValueOpt::from_value(v),
555 "upi" => b.upi = FromValueOpt::from_value(v),
556 "us_bank_account" => b.us_bank_account = FromValueOpt::from_value(v),
557 "wechat_pay" => b.wechat_pay = FromValueOpt::from_value(v),
558 "zip" => b.zip = FromValueOpt::from_value(v),
559 _ => {}
560 }
561 }
562 b.take_out()
563 }
564 }
565};