mercadopago_sdk_rust/card_tokens/
responses.rs

1use serde::{Deserialize, Serialize};
2
3use crate::common_types::Card;
4
5#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
6pub struct CardTokenResponse {
7    #[serde(rename = "id")]
8    pub card_token_id: String,
9
10    #[serde(flatten)]
11    pub card: Card,
12
13    /// Public key that was used to create this token.
14    /// Only populated if `public_key` was passed to create a token first.
15    pub public_key: Option<String>,
16
17    pub live_mode: bool,
18    pub luhn_validation: bool,
19    pub require_esc: bool,
20    pub status: String,
21}
22
23#[cfg(test)]
24mod tests {
25    use super::*;
26
27    #[test]
28    fn t_token_response() {
29        let payload = serde_json::from_slice::<CardTokenResponse>(include_bytes!(
30            "../../tests/assets/card_tokens_create_response.json"
31        ));
32        assert!(payload.is_ok());
33    }
34}