feat: Airwallex 发卡管理后台完整实现
- 后端: FastAPI + SQLAlchemy + SQLite, JWT认证, 代理支持的AirwallexClient - 前端: React 18 + Vite + Ant Design 5, 中文界面 - 功能: 卡片管理, 持卡人管理, 交易记录, API令牌, 系统设置, 审计日志 - 第三方API: X-API-Key认证, 权限控制 - Docker部署: docker-compose编排前后端
This commit is contained in:
41
airwallex-sdk/airwallex/models/issuing_authorization.py
Normal file
41
airwallex-sdk/airwallex/models/issuing_authorization.py
Normal file
@@ -0,0 +1,41 @@
|
||||
"""
|
||||
Models for the Airwallex Issuing Authorization API.
|
||||
"""
|
||||
from typing import Optional, List, Dict, Any
|
||||
from datetime import datetime
|
||||
from pydantic import Field
|
||||
from .base import AirwallexModel
|
||||
from .issuing_common import Merchant, RiskDetails, HasMoreResponse
|
||||
|
||||
|
||||
class Authorization(AirwallexModel):
|
||||
"""Model for an Airwallex issuing authorization."""
|
||||
resource_name: str = "issuing/authorizations"
|
||||
|
||||
acquiring_institution_identifier: Optional[str] = Field(None, description="Unique Identifier for acquiring institution")
|
||||
auth_code: Optional[str] = Field(None, description="Authorization Code")
|
||||
billing_amount: float = Field(..., description="Billing Amount")
|
||||
billing_currency: str = Field(..., description="Billing Currency")
|
||||
card_id: str = Field(..., description="Unique Identifier for card")
|
||||
card_nickname: Optional[str] = Field(None, description="The nickname of the card used")
|
||||
client_data: Optional[str] = Field(None, description="Client data stored against the card record")
|
||||
create_time: datetime = Field(..., description="The time this outstanding authorization was created")
|
||||
digital_wallet_token_id: Optional[str] = Field(None, description="Unique Identifier for digital token")
|
||||
expiry_date: Optional[datetime] = Field(None, description="The authorization will expire after this date if not posted")
|
||||
failure_reason: Optional[str] = Field(None, description="The reason why this authorization failed (if status is FAILED)")
|
||||
lifecycle_id: Optional[str] = Field(None, description="A identifier that links multiple related transactions")
|
||||
masked_card_number: Optional[str] = Field(None, description="Masked card number")
|
||||
merchant: Optional[Merchant] = Field(None, description="Merchant details")
|
||||
network_transaction_id: Optional[str] = Field(None, description="The transaction ID from network")
|
||||
retrieval_ref: Optional[str] = Field(None, description="Transaction retrieval reference number")
|
||||
risk_details: Optional[RiskDetails] = Field(None, description="Risk details")
|
||||
status: str = Field(..., description="The status of this authorization")
|
||||
transaction_amount: float = Field(..., description="Transaction amount")
|
||||
transaction_currency: str = Field(..., description="Transaction currency")
|
||||
transaction_id: str = Field(..., description="Unique id for transaction")
|
||||
updated_by_transaction: Optional[str] = Field(None, description="Id of the transaction which updated status of this transaction")
|
||||
|
||||
|
||||
class AuthorizationListResponse(HasMoreResponse):
|
||||
"""Model for authorization list response."""
|
||||
items: List[Authorization] = Field(..., description="List of authorizations")
|
||||
Reference in New Issue
Block a user