agentic_commerce_protocol/models/
checkout_session_status.rs1use std::fmt;
3
4use serde::{Deserialize, Serialize};
5
6#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
7pub enum CheckoutSessionStatus {
8 #[serde(rename = "not_ready_for_payment")]
9 NotReadyForPayment,
10 #[serde(rename = "ready_for_payment")]
11 ReadyForPayment,
12 #[serde(rename = "completed")]
13 Completed,
14 #[serde(rename = "canceled")]
15 Canceled,
16 #[serde(rename = "in_progress")]
17 InProgress,
18}
19
20impl fmt::Display for CheckoutSessionStatus {
21 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
22 let value = match self {
23 Self::NotReadyForPayment => "not_ready_for_payment",
24 Self::ReadyForPayment => "ready_for_payment",
25 Self::Completed => "completed",
26 Self::Canceled => "canceled",
27 Self::InProgress => "in_progress",
28 };
29 f.write_str(value)
30 }
31}