flutterwave_v3_models/transactions/
transaction.rs

1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Serialize, Deserialize)]
4pub struct Transaction {
5    pub id: String,
6    pub tx_ref: String,
7    pub flw_ref: String,
8    pub device_fingerprint: String,
9    pub amount: i64,
10    pub currency: String,
11    pub charged_amount: i64,
12    pub app_fee: Option<f64>, // Note: Using Option to handle null
13    pub merchant_fee: i64,
14    pub processor_response: Option<String>, // Note: Using Option to handle null
15    pub auth_model: String,
16    pub ip: String,
17    pub narration: String,
18    pub status: String,
19    pub payment_type: String,
20    pub created_at: String,
21    pub amount_settled: Option<f64>, // Note: Using Option to handle null
22    pub account: TransAccount,
23    pub customer_name: String,
24    pub customer_email: String,
25    pub account_id: String
26}
27
28#[derive(Debug, Serialize, Deserialize)]
29pub struct TransAccount {
30    pub nuban: String,
31    pub bank: String
32}