stripe/model/
source_transaction.rs1use serde::{Serialize, Deserialize};
2use super::{
3 SourceTransactionAchCreditTransferData, SourceTransactionChfCreditTransferData,
4 SourceTransactionGbpCreditTransferData, SourceTransactionPaperCheckData,
5 SourceTransactionSepaCreditTransferData,
6};
7#[derive(Debug, Clone, Serialize, Deserialize, Default)]
12pub struct SourceTransaction {
13 #[serde(skip_serializing_if = "Option::is_none")]
15 pub ach_credit_transfer: Option<SourceTransactionAchCreditTransferData>,
16 pub amount: i64,
18 #[serde(skip_serializing_if = "Option::is_none")]
20 pub chf_credit_transfer: Option<SourceTransactionChfCreditTransferData>,
21 pub created: i64,
23 pub currency: String,
25 #[serde(skip_serializing_if = "Option::is_none")]
27 pub gbp_credit_transfer: Option<SourceTransactionGbpCreditTransferData>,
28 pub id: String,
30 pub livemode: bool,
32 pub object: String,
34 #[serde(skip_serializing_if = "Option::is_none")]
36 pub paper_check: Option<SourceTransactionPaperCheckData>,
37 #[serde(skip_serializing_if = "Option::is_none")]
39 pub sepa_credit_transfer: Option<SourceTransactionSepaCreditTransferData>,
40 pub source: String,
42 pub status: String,
44 #[serde(rename = "type")]
46 pub type_: String,
47}
48impl std::fmt::Display for SourceTransaction {
49 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> Result<(), std::fmt::Error> {
50 write!(f, "{}", serde_json::to_string(self).unwrap())
51 }
52}