bitwarden_api_api/models/
payment_request_model.rs1use serde::{Deserialize, Serialize};
12
13use crate::models;
14
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct PaymentRequestModel {
17 #[serde(rename = "country", alias = "Country")]
18 pub country: String,
19 #[serde(
20 rename = "postalCode",
21 alias = "PostalCode",
22 skip_serializing_if = "Option::is_none"
23 )]
24 pub postal_code: Option<String>,
25 #[serde(
26 rename = "taxId",
27 alias = "TaxId",
28 skip_serializing_if = "Option::is_none"
29 )]
30 pub tax_id: Option<String>,
31 #[serde(
32 rename = "line1",
33 alias = "Line1",
34 skip_serializing_if = "Option::is_none"
35 )]
36 pub line1: Option<String>,
37 #[serde(
38 rename = "line2",
39 alias = "Line2",
40 skip_serializing_if = "Option::is_none"
41 )]
42 pub line2: Option<String>,
43 #[serde(
44 rename = "city",
45 alias = "City",
46 skip_serializing_if = "Option::is_none"
47 )]
48 pub city: Option<String>,
49 #[serde(
50 rename = "state",
51 alias = "State",
52 skip_serializing_if = "Option::is_none"
53 )]
54 pub state: Option<String>,
55 #[serde(rename = "paymentMethodType", alias = "PaymentMethodType")]
56 pub payment_method_type: models::PaymentMethodType,
57 #[serde(rename = "paymentToken", alias = "PaymentToken")]
58 pub payment_token: String,
59}
60
61impl PaymentRequestModel {
62 pub fn new(
63 country: String,
64 payment_method_type: models::PaymentMethodType,
65 payment_token: String,
66 ) -> PaymentRequestModel {
67 PaymentRequestModel {
68 country,
69 postal_code: None,
70 tax_id: None,
71 line1: None,
72 line2: None,
73 city: None,
74 state: None,
75 payment_method_type,
76 payment_token,
77 }
78 }
79}