feat(payouts): apple pay decrypt payout (#9857)

This commit is contained in:
Sakil Mostak
2025-10-16 12:29:32 +05:30
committed by GitHub
parent 1f34f89063
commit e7dee751b5
22 changed files with 818 additions and 4 deletions

View File

@ -209,6 +209,8 @@ pub enum WalletAdditionalData {
Paypal(Box<PaypalAdditionalData>),
/// Additional data for venmo wallet payout method
Venmo(Box<VenmoAdditionalData>),
/// Additional data for Apple pay decrypt wallet payout method
ApplePayDecrypt(Box<ApplePayDecryptAdditionalData>),
}
/// Masked payout method details for paypal wallet payout method
@ -241,6 +243,25 @@ pub struct VenmoAdditionalData {
pub telephone_number: Option<MaskedPhoneNumber>,
}
/// Masked payout method details for Apple pay decrypt wallet payout method
#[derive(
Default, Eq, PartialEq, Clone, Debug, Deserialize, Serialize, FromSqlRow, AsExpression, ToSchema,
)]
#[diesel(sql_type = Jsonb)]
pub struct ApplePayDecryptAdditionalData {
/// Card expiry month
#[schema(value_type = String, example = "01")]
pub card_exp_month: Secret<String>,
/// Card expiry year
#[schema(value_type = String, example = "2026")]
pub card_exp_year: Secret<String>,
/// Card holder name
#[schema(value_type = String, example = "John Doe")]
pub card_holder_name: Option<Secret<String>>,
}
/// Masked payout method details for wallet payout method
#[derive(
Eq, PartialEq, Clone, Debug, Deserialize, Serialize, FromSqlRow, AsExpression, ToSchema,