fireblocks_sdk/models/
lbt_payment_info.rs1use {
10 crate::models,
11 serde::{Deserialize, Serialize},
12};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
17pub struct LbtPaymentInfo {
18 #[serde(rename = "rail")]
20 pub rail: Rail,
21 #[serde(rename = "addressingSystem")]
24 pub addressing_system: AddressingSystem,
25 #[serde(rename = "accountHolderGivenName")]
27 pub account_holder_given_name: String,
28 #[serde(rename = "accountHolderSurname")]
30 pub account_holder_surname: String,
31 #[serde(rename = "country")]
33 pub country: String,
34 #[serde(rename = "accountNumber")]
36 pub account_number: String,
37 #[serde(rename = "bankName")]
39 pub bank_name: String,
40 #[serde(rename = "bankCode")]
42 pub bank_code: String,
43}
44
45impl LbtPaymentInfo {
46 pub fn new(
49 rail: Rail,
50 addressing_system: AddressingSystem,
51 account_holder_given_name: String,
52 account_holder_surname: String,
53 country: String,
54 account_number: String,
55 bank_name: String,
56 bank_code: String,
57 ) -> LbtPaymentInfo {
58 LbtPaymentInfo {
59 rail,
60 addressing_system,
61 account_holder_given_name,
62 account_holder_surname,
63 country,
64 account_number,
65 bank_name,
66 bank_code,
67 }
68 }
69}
70#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
72pub enum Rail {
73 #[serde(rename = "LBT")]
74 Lbt,
75}
76
77impl Default for Rail {
78 fn default() -> Rail {
79 Self::Lbt
80 }
81}
82#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
84pub enum AddressingSystem {
85 #[serde(rename = "BAN")]
86 Ban,
87}
88
89impl Default for AddressingSystem {
90 fn default() -> AddressingSystem {
91 Self::Ban
92 }
93}