Skip to main content

fattureincloud_rs/models/
payment_method_2.rs

1/*
2 * Fatture in Cloud API v2 - API Reference
3 *
4 * Connect your software with Fatture in Cloud, the invoicing platform chosen by more than 500.000 businesses in Italy.   The Fatture in Cloud API is based on REST, and makes possible to interact with the user related data prior authorization via OAuth2 protocol.
5 *
6 * The version of the OpenAPI document: 2.0.32
7 * Contact: info@fattureincloud.it
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12
13/// PaymentMethod2 : [Only for client] Client default payment method
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct PaymentMethod2 {
16    /// Payment method id
17    #[serde(rename = "id", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
18    pub id: Option<Option<i32>>,
19    /// Payment method name
20    #[serde(rename = "name", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
21    pub name: Option<Option<String>>,
22    /// Payment method type
23    #[serde(rename = "type", skip_serializing_if = "Option::is_none")]
24    pub r#type: Option<Type>,
25    /// Payment method is default
26    #[serde(rename = "is_default", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
27    pub is_default: Option<Option<bool>>,
28    #[serde(rename = "default_payment_account", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
29    pub default_payment_account: Option<Option<Box<models::PaymentAccount>>>,
30    /// Payment method details
31    #[serde(rename = "details", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
32    pub details: Option<Option<Vec<models::PaymentMethodDetails>>>,
33    /// Payment method bank iban
34    #[serde(rename = "bank_iban", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
35    pub bank_iban: Option<Option<String>>,
36    /// Payment method bank name
37    #[serde(rename = "bank_name", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
38    pub bank_name: Option<Option<String>>,
39    /// Payment method bank beneficiary
40    #[serde(rename = "bank_beneficiary", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
41    pub bank_beneficiary: Option<Option<String>>,
42    /// E-invoice payment method
43    #[serde(rename = "ei_payment_method", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
44    pub ei_payment_method: Option<Option<String>>,
45}
46
47impl PaymentMethod2 {
48    /// [Only for client] Client default payment method
49    pub fn new() -> PaymentMethod2 {
50        PaymentMethod2 {
51            id: None,
52            name: None,
53            r#type: None,
54            is_default: None,
55            default_payment_account: None,
56            details: None,
57            bank_iban: None,
58            bank_name: None,
59            bank_beneficiary: None,
60            ei_payment_method: None,
61        }
62    }
63}
64/// Payment method type
65#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
66pub enum Type {
67    #[serde(rename = "standard")]
68    Standard,
69    #[serde(rename = "riba")]
70    Riba,
71}
72
73impl Default for Type {
74    fn default() -> Type {
75        Self::Standard
76    }
77}
78