namespace CashLineERP.Contracts.Finance;

public sealed record CardTokenReferenceResponse(
    long CardTokenReferenceId,
    string CardTokenReferenceNumber,
    long PartyId,
    string PartyTypeCode,
    string IntegrationProviderCode,
    string UsageCode,
    string CardBrandCode,
    string MaskedPan,
    int ExpiryMonth,
    int ExpiryYear,
    string TokenReference,
    string? ExternalCustomerReference,
    bool IsDefault,
    string StatusCode,
    bool IsActive,
    string? Notes,
    DateTime? SubmittedAtUtc,
    long? SubmittedByUserId,
    DateTime? ApprovedAtUtc,
    long? ApprovedByUserId,
    DateTime? ActivatedAtUtc,
    long? ActivatedByUserId,
    DateTime? SuspendedAtUtc,
    long? SuspendedByUserId,
    string? SuspensionReasonCode,
    string? SuspensionNotes);
