namespace Fitness_core_BE.DTOs.PaymentsEnablement { // Gym owner's own payout track selection, KYC submission, wallet and payout schedule — // distinct from Fitness_Core_BE.DTOs.PaymentGateways, which is the platform-admin's // gateway catalog (proxied to Payment-Service). public record PaymentTrackOption(string Track, object FeeSummary); public record SelectPaymentTrackRequest(string Track); public record PaymentTrackSelectionResult(string Track, bool KycRequired); public record SubmitGatewayOnboardingRequest(Guid GatewayId); public record GatewayOnboardingStatusDto( string KycStatus, Guid? GatewayId, string? GatewayName, string? RejectionReason); public record ClientPayoutKycDto( Guid Id, Guid ClientId, string? ClientName, Guid? GatewayId, string? GatewayName, string KycStatus, DateTime SubmittedAt, DateTime? ReviewedAt, string? RejectionReason, string? NicNumber, int? NicFrontDocId, int? NicBackDocId); public record ReviewPayoutKycRequest(string Status, string? Reason); public record WalletDto(decimal Balance, string Currency, List Ledger, DateTime? LastPayoutDate); public record WalletLedgerEntryDto(Guid Id, string EntryType, decimal Amount, string? Description, DateTime CreatedAt); public record PayoutScheduleDto(DateTime NextPayoutDate, string Cadence, decimal PendingAmount); }