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

25 lines
1.4 KiB
C#

using Microsoft.AspNetCore.Http;
namespace Fitness_core_BE.Interfaces.Services
{
public interface IPaymentService
{
Task<object> CreateCustomerPayment(object payload, HttpContext httpContext);
Task<object> CreateClientPayment(object payload, HttpContext httpContext);
Task<object> GetPaymentById(object payload, HttpContext httpContext);
Task<object> GetPaymentsByCustomerInvoice(object payload, HttpContext httpContext);
Task<object> GetPaymentsByClientInvoice(object payload, HttpContext httpContext);
Task<object> ApprovePayment(object payload, HttpContext httpContext);
Task<object> RecordSubscriptionPayment(object payload, HttpContext httpContext);
Task<object> GetSubscriptionPayments(object payload, HttpContext httpContext);
// "Charge now": owner-triggered attempt against the member's consented auto-charge card.
Task<object> AttemptAutoCharge(Guid customerInvoiceId, HttpContext httpContext);
// Emails/texts the member a link to pay the invoice online themselves.
Task<object> SendPaymentLink(Guid customerInvoiceId, HttpContext httpContext);
// Public pay-by-link surface (token proves authorization; no logged-in session).
Task<object> GetInvoiceByPaymentToken(string token);
Task<object> ChargeInvoiceByPaymentToken(string token, object payload);
}
}