stripe_shared/
payment_intent_payment_method_options.rs

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