paypal_rust/resources/enums/
capture_status_reason.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
5pub enum CaptureStatusReason {
6 #[serde(rename = "BUYER_COMPLAINT")]
8 BuyerComplaint,
9 #[serde(rename = "CHARGEBACK")]
12 Chargeback,
13 #[serde(rename = "ECHECK")]
15 Echeck,
16 #[serde(rename = "INTERNATIONAL_WITHDRAWAL")]
18 InternationalWithdrawal,
19 #[serde(rename = "OTHER")]
22 Other,
23 #[serde(rename = "PENDING_REVIEW")]
25 PendingReview,
26 #[serde(rename = "RECEIVING_PREFERENCE_MANDATES_MANUAL_ACTION")]
30 ReceivingPreferenceMandatesManualAction,
31 #[serde(rename = "REFUNDED")]
33 Refunded,
34 #[serde(rename = "TRANSACTION_APPROVED_AWAITING_FUNDING")]
37 TransactionApprovedAwaitingFunding,
38 #[serde(rename = "UNILATERAL")]
40 Unilateral,
41 #[serde(rename = "VERIFICATION_REQUIRED")]
43 VerificationRequired,
44}
45
46impl CaptureStatusReason {
47 pub const fn as_str(self) -> &'static str {
48 match self {
49 Self::BuyerComplaint => "BUYER_COMPLAINT",
50 Self::Chargeback => "CHARGEBACK",
51 Self::Echeck => "ECHECK",
52 Self::InternationalWithdrawal => "INTERNATIONAL_WITHDRAWAL",
53 Self::Other => "OTHER",
54 Self::PendingReview => "PENDING_REVIEW",
55 Self::ReceivingPreferenceMandatesManualAction => {
56 "RECEIVING_PREFERENCE_MANDATES_MANUAL_ACTION"
57 }
58 Self::Refunded => "REFUNDED",
59 Self::TransactionApprovedAwaitingFunding => "TRANSACTION_APPROVED_AWAITING_FUNDING",
60 Self::Unilateral => "UNILATERAL",
61 Self::VerificationRequired => "VERIFICATION_REQUIRED",
62 }
63 }
64}
65
66impl AsRef<str> for CaptureStatusReason {
67 fn as_ref(&self) -> &str {
68 self.as_str()
69 }
70}
71
72impl std::fmt::Display for CaptureStatusReason {
73 fn fmt(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
74 self.as_str().fmt(formatter)
75 }
76}