use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum VerificationStatus {
#[serde(rename = "$success")]
Success,
#[serde(rename = "$failure")]
Failure,
#[serde(rename = "$pending")]
Pending,
}
#[derive(Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum VerifiedEvent {
#[serde(rename = "$add_item_to_cart")]
AddItemToCart,
#[serde(rename = "$add_promotion")]
AddPromotion,
#[serde(rename = "$content_status")]
ContentStatus,
#[serde(rename = "$create_account")]
CreateAccount,
#[serde(rename = "$create_content")]
CreateContent,
#[serde(rename = "$create_order")]
CreateOrder,
#[serde(rename = "$flag_content")]
FlagContent,
#[serde(rename = "$login")]
Login,
#[serde(rename = "$order_status")]
OrderStatus,
#[serde(rename = "$remove_item_from_cart")]
RemoveItemFromCart,
#[serde(rename = "$transaction")]
Transaction,
#[serde(rename = "$update_account")]
UpdateAccount,
#[serde(rename = "$update_content")]
UpdateContent,
#[serde(rename = "$update_order")]
UpdateOrder,
#[serde(rename = "$update_password")]
UpdatePassword,
}
#[derive(Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum VerificationType {
#[serde(rename = "$sms")]
Sms,
#[serde(rename = "$phone_call")]
PhoneCall,
#[serde(rename = "$email")]
Email,
#[serde(rename = "$app_tfa")]
AppTfa,
#[serde(rename = "$captcha")]
Captcha,
#[serde(rename = "$shared_knowledge")]
SharedKnowledge,
#[serde(rename = "$face")]
Face,
#[serde(rename = "$fingerprint")]
Fingerprint,
#[serde(rename = "$push")]
Push,
#[serde(rename = "$security_key")]
SecurityKey,
}
#[derive(Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum VerificationReason {
#[serde(rename = "$user_setting")]
UserSetting,
#[serde(rename = "$manual_review")]
ManualReview,
#[serde(rename = "$automated_rule")]
AutomatedRule,
}
#[derive(Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum ChargebackState {
#[serde(rename = "$received")]
Received,
#[serde(rename = "$accepted")]
Accepted,
#[serde(rename = "$disputed")]
Disputed,
#[serde(rename = "$won")]
Won,
#[serde(rename = "$lost")]
Lost,
}
#[derive(Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum ChargebackReason {
#[serde(rename = "$fraud")]
Fraud,
#[serde(rename = "$duplicate")]
Duplicate,
#[serde(rename = "$product_not_received")]
ProductNotReceived,
#[serde(rename = "$product_unacceptable")]
ProductUnacceptable,
#[serde(rename = "$other")]
Other,
}
#[derive(Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum LoginFailureReason {
#[serde(rename = "$account_unknown")]
AccountUnknown,
#[serde(rename = "$account_suspended")]
AccountSuspended,
#[serde(rename = "$account_disabled")]
AccountDisabled,
#[serde(rename = "$wrong_password")]
WrongPassword,
}
#[derive(Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum SocialSignOn {
#[serde(rename = "$facebook")]
FaceBook,
#[serde(rename = "$google")]
Google,
#[serde(rename = "$linkedin")]
LinkedIn,
#[serde(rename = "$twitter")]
Twitter,
#[serde(rename = "$yahoo")]
Yahoo,
#[serde(rename = "$microsoft")]
Microsoft,
#[serde(rename = "$amazon")]
Amazon,
#[serde(rename = "$apple")]
Apple,
#[serde(rename = "$other")]
Other,
}
#[derive(Debug, Serialize, Deserialize)]
#[serde(rename_all = "lowercase")]
#[non_exhaustive]
pub enum AccountType {
Merchant,
Shopper,
Regular,
Premium,
}
#[derive(Copy, Clone, Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum LoginStatus {
#[serde(rename = "$success")]
Success,
#[serde(rename = "$failure")]
Failure,
}
#[derive(Copy, Clone, Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum UpdatePasswordReason {
#[serde(rename = "$user_update")]
UserUpdate,
#[serde(rename = "$forgot_password")]
ForgotPassword,
#[serde(rename = "$forced_reset")]
ForcedReset,
}
#[derive(Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum UpdatePasswordStatus {
#[serde(rename = "$success")]
Success,
#[serde(rename = "$failure")]
Failure,
#[serde(rename = "$pending")]
Pending,
}
#[derive(Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum OrderStatus {
#[serde(rename = "$approved")]
Approved,
#[serde(rename = "$canceled")]
Canceled,
#[serde(rename = "$held")]
Held,
#[serde(rename = "$fulfilled")]
Fulfilled,
#[serde(rename = "$returned")]
Returned,
}
#[derive(Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum OrderCancellationReason {
#[serde(rename = "$payment_risk")]
PaymentRisk,
#[serde(rename = "$abuse")]
Abuse,
#[serde(rename = "$policy")]
Policy,
#[serde(rename = "$other")]
Other,
}
#[derive(Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum DecisionSource {
#[serde(rename = "$automated")]
Automated,
#[serde(rename = "$manual_review")]
ManualReview,
}
#[derive(Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum SecurityNotificationType {
#[serde(rename = "$email")]
Email,
#[serde(rename = "$sms")]
Sms,
#[serde(rename = "$push")]
Push,
}
#[derive(Debug, Serialize, Deserialize)]
pub enum PaymentMethodVerificationStatus {
#[serde(rename = "$success")]
Success,
#[serde(rename = "$failure")]
Failure,
#[serde(rename = "$pending")]
Pending,
}
#[derive(Debug, Serialize, Deserialize)]
pub enum PaymentType {
#[serde(rename = "$cash")]
Cash,
#[serde(rename = "$check")]
Check,
#[serde(rename = "$credit_card")]
CreditCard,
#[serde(rename = "$crypto_currency")]
CryptoCurrency,
#[serde(rename = "$debit_card")]
DebitCard,
#[serde(rename = "$digital_wallet")]
DigitalWallet,
#[serde(rename = "$electronic_fund_transfer")]
ElectronicFundTransfer,
#[serde(rename = "$financing")]
Financing,
#[serde(rename = "$gift_card")]
GiftCard,
#[serde(rename = "$invoice")]
Invoice,
#[serde(rename = "$in_app_purchase")]
InAppPurchase,
#[serde(rename = "$money_order")]
MoneyOrder,
#[serde(rename = "$points")]
Points,
#[serde(rename = "$prepaid_card")]
PrepaidCard,
#[serde(rename = "$store_credit")]
StoreCredit,
#[serde(rename = "$third_party_processor")]
ThirdPartyProcessor,
#[serde(rename = "$voucher")]
Voucher,
#[serde(rename = "$sepa_credit")]
SepaCredit,
#[serde(rename = "$sepa_instant_credit")]
SepaInstantCredit,
#[serde(rename = "$sepa_direct_debit")]
SepaDirectDebit,
#[serde(rename = "$ach_credit")]
AchCredit,
#[serde(rename = "$ach_debit")]
AchDebit,
#[serde(rename = "$wire_credit")]
WireCredit,
#[serde(rename = "$wire_debit")]
WireDebit,
}
#[derive(Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum TransactionType {
#[serde(rename = "$sale")]
Sale,
#[serde(rename = "$authorize")]
Authorize,
#[serde(rename = "$capture")]
Capture,
#[serde(rename = "$void")]
Void,
#[serde(rename = "$refund")]
Refund,
#[serde(rename = "$deposit")]
Deposit,
#[serde(rename = "$withdrawal")]
Withdrawal,
#[serde(rename = "$transfer")]
Transfer,
#[serde(rename = "$buy")]
Buy,
#[serde(rename = "$sell")]
Sell,
#[serde(rename = "$send")]
Send,
#[serde(rename = "$receive")]
Receive,
}
#[derive(Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum TransactionStatus {
#[serde(rename = "$success")]
Success,
#[serde(rename = "$failure")]
Failure,
#[serde(rename = "$pending")]
Pending,
}
#[derive(Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum DeclineCategory {
#[serde(rename = "$fraud")]
Fraud,
#[serde(rename = "$lost_or_stolen")]
LostOrStolen,
#[serde(rename = "$risky")]
Risky,
#[serde(rename = "$bank_decline")]
BankDeclined,
#[serde(rename = "$invalid")]
Invalid,
#[serde(rename = "$expired")]
Expired,
#[serde(rename = "$insufficient_funds")]
InsufficientFunds,
#[serde(rename = "$limit_exceeded")]
LimitExceeded,
#[serde(rename = "$additional_verification_required")]
AdditionalValidationRequired,
#[serde(rename = "$invalid_verification")]
InvalidVerification,
#[serde(rename = "$other")]
Other,
}
#[derive(Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum Status3Ds {
#[serde(rename = "$successful")]
Successful,
#[serde(rename = "$attempted")]
Attempted,
#[serde(rename = "$failed")]
Failed,
#[serde(rename = "$unavailable")]
Unavailable,
#[serde(rename = "$rejected")]
Rejected,
}
#[derive(Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum Triggered3Ds {
#[serde(rename = "$processor")]
Processor,
#[serde(rename = "$merchant")]
Merchant,
}
#[derive(Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum ShippingMethod {
#[serde(rename = "$electronic")]
Electronic,
#[serde(rename = "$physical")]
Physical,
}
#[derive(Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum ContentStatus {
#[serde(rename = "$draft")]
Draft,
#[serde(rename = "$pending")]
Pending,
#[serde(rename = "$active")]
Active,
#[serde(rename = "$paused")]
Paused,
#[serde(rename = "$deleted_by_user")]
DeletedByUser,
#[serde(rename = "$deleted_by_company")]
DeletedByCompany,
}
#[derive(Debug, Serialize, Deserialize)]
#[non_exhaustive]
pub enum ContentFlagReason {
#[serde(rename = "$toxic")]
Toxic,
#[serde(rename = "$irrelevant")]
Irrelevant,
#[serde(rename = "$commercial")]
Commercial,
#[serde(rename = "$phishing")]
Phishing,
#[serde(rename = "$private")]
Private,
#[serde(rename = "$scam")]
Scam,
#[serde(rename = "$copyright")]
Copyright,
#[serde(rename = "$other")]
Other,
}