Files
Core_Be/Interfaces/Services/IClientPaymentMethodService.cs
Dhananjaya99 bffc9b1686 first commit
2026-09-28 11:44:26 +05:30

34 lines
1.3 KiB
C#

using Fitness_core_BE.DTOs.PlatformBilling;
using Microsoft.AspNetCore.Http;
namespace Fitness_core_BE.Interfaces.Services
{
// The gym owner's own card(s) on file for their HexaFitness platform subscription, and
// the transaction history behind those charges — backed by Payment-Service via
// IPaymentGatewayClient, scoped to the caller's own Client (see UserRoleHelper.GetClientId).
public interface IClientPaymentMethodService
{
Task<StartCardOnboardingResult> StartCardOnboardingAsync(
HttpContext httpContext,
StartCardOnboardingRequest request,
CancellationToken ct = default);
Task<CardOnboardingStatusResult> CompleteCardOnboardingAsync(
HttpContext httpContext,
string sessionId,
CancellationToken ct = default);
Task<List<ClientCardDto>> ListCardsAsync(HttpContext httpContext, CancellationToken ct = default);
Task RemoveCardAsync(HttpContext httpContext, string cardToken, CancellationToken ct = default);
Task<ClientCardDto> SetDefaultCardAsync(HttpContext httpContext, string cardToken, CancellationToken ct = default);
Task<TransactionHistoryResult> GetTransactionHistoryAsync(
HttpContext httpContext,
int page,
int pageSize,
CancellationToken ct = default);
}
}