1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
/*
* Ponto Connect
*
* For more info, please refer to the documentation: https://documentation.ibanity.com/ponto-connect/
*
* The version of the OpenAPI document: 2
*
* Generated by: https://openapi-generator.tech
*/
use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct PendingTransactionAttributes {
/// Description of the pending transaction
#[serde(rename = "description", skip_serializing_if = "Option::is_none")]
pub description: Option<String>,
/// Currency of the pending transaction, in <a href='https://en.wikipedia.org/wiki/ISO_4217'>ISO4217</a> format
#[serde(rename = "currency", skip_serializing_if = "Option::is_none")]
pub currency: Option<String>,
/// A Base64-encoded SHA-256 digest of the transaction payload from the financial institution. This may NOT be unique if the exact same transaction happens on the same day, on the same account.
#[serde(rename = "digest", skip_serializing_if = "Option::is_none")]
pub digest: Option<String>,
/// When this pending transaction was created. Formatted according to <a href='https://en.wikipedia.org/wiki/ISO_8601'>ISO8601</a> spec
#[serde(rename = "createdAt", skip_serializing_if = "Option::is_none")]
pub created_at: Option<String>,
/// When this pending transaction was last synchronized successfully. Formatted according to <a href='https://en.wikipedia.org/wiki/ISO_8601'>ISO8601</a> spec
#[serde(rename = "updatedAt", skip_serializing_if = "Option::is_none")]
pub updated_at: Option<String>,
/// Amount of the pending transaction. Can be positive or negative
#[serde(rename = "amount", skip_serializing_if = "Option::is_none")]
pub amount: Option<f64>,
/// A fee that was withheld from this transaction at the financial institution
#[serde(rename = "fee", skip_serializing_if = "Option::is_none")]
pub fee: Option<f64>,
/// Additional transaction-related information provided from the financial institution to the customer
#[serde(rename = "additionalInformation", skip_serializing_if = "Option::is_none")]
pub additional_information: Option<String>,
/// Bank transaction code, based on <a href='https://www.iso20022.org/catalogue-messages/additional-content-messages/external-code-sets'>ISO 20022</a>
#[serde(rename = "bankTransactionCode", skip_serializing_if = "Option::is_none")]
pub bank_transaction_code: Option<String>,
/// Reference for card related to the transaction (if any). For example the last 4 digits of the card number.
#[serde(rename = "cardReference", skip_serializing_if = "Option::is_none")]
pub card_reference: Option<String>,
/// Type of card reference (can be <code>PAN</code> or <code>MASKEDPAN</code>)
#[serde(rename = "cardReferenceType", skip_serializing_if = "Option::is_none")]
pub card_reference_type: Option<String>,
/// Legal name of the counterpart
#[serde(rename = "counterpartName", skip_serializing_if = "Option::is_none")]
pub counterpart_name: Option<serde_json::Value>,
/// Number representing the counterpart's account
#[serde(rename = "counterpartReference", skip_serializing_if = "Option::is_none")]
pub counterpart_reference: Option<String>,
/// Identification of the creditor, e.g. a SEPA Creditor ID.
#[serde(rename = "creditorId", skip_serializing_if = "Option::is_none")]
pub creditor_id: Option<String>,
/// Identifier assigned by the initiating party to identify the transaction. This identification is passed on, unchanged, throughout the entire end-to-end chain. Limited to 35 characters in the set <code>a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 / - ? : ( ) . , ' + Space</code> to ensure it is not rejected by the financial institution.
#[serde(rename = "endToEndId", skip_serializing_if = "Option::is_none")]
pub end_to_end_id: Option<String>,
/// Date representing the moment when the financial institution recorded the {resource}. This field may be 'null'.
#[serde(rename = "executionDate", skip_serializing_if = "Option::is_none")]
pub execution_date: Option<String>,
/// Unique reference of the mandate which is signed between the remitter and the debtor
#[serde(rename = "mandateId", skip_serializing_if = "Option::is_none")]
pub mandate_id: Option<String>,
/// Bank transaction code prorietary to the financial institution. Content will vary per financial institution
#[serde(rename = "proprietaryBankTransactionCode", skip_serializing_if = "Option::is_none")]
pub proprietary_bank_transaction_code: Option<String>,
/// Purpose code, based on <a href='https://www.iso20022.org/'>ISO 20022</a>
#[serde(rename = "purposeCode", skip_serializing_if = "Option::is_none")]
pub purpose_code: Option<String>,
/// Content of the remittance information (aka communication)
#[serde(rename = "remittanceInformation", skip_serializing_if = "Option::is_none")]
pub remittance_information: Option<String>,
/// Type of remittance information, can be <code>structured</code> or <code>unstructured</code>
#[serde(rename = "remittanceInformationType", skip_serializing_if = "Option::is_none")]
pub remittance_information_type: Option<String>,
/// Date representing the moment the pending transaction is considered effective
#[serde(rename = "valueDate", skip_serializing_if = "Option::is_none")]
pub value_date: Option<String>,
/// Internal resource reference given by the financial institution
#[serde(rename = "internalReference", skip_serializing_if = "Option::is_none")]
pub internal_reference: Option<String>,
}
impl PendingTransactionAttributes {
pub fn new() -> PendingTransactionAttributes {
PendingTransactionAttributes {
description: None,
currency: None,
digest: None,
created_at: None,
updated_at: None,
amount: None,
fee: None,
additional_information: None,
bank_transaction_code: None,
card_reference: None,
card_reference_type: None,
counterpart_name: None,
counterpart_reference: None,
creditor_id: None,
end_to_end_id: None,
execution_date: None,
mandate_id: None,
proprietary_bank_transaction_code: None,
purpose_code: None,
remittance_information: None,
remittance_information_type: None,
value_date: None,
internal_reference: None,
}
}
}