Webiant Logo Webiant Logo
  1. No results found.

    Try your search with a different keyword or use * as a wildcard.

IPaymentService.cs

using Nop.Core.Domain.Orders;

namespace Nop.Services.Payments;

/// 
/// Payment service interface
/// 
public partial interface IPaymentService
{
    /// 
    /// Process a payment
    /// 
    /// Payment info required for an order processing
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the process payment result
    /// 
    Task ProcessPaymentAsync(ProcessPaymentRequest processPaymentRequest);

    /// 
    /// Post process payment (used by payment gateways that require redirecting to a third-party URL)
    /// 
    /// Payment info required for an order processing
    /// A task that represents the asynchronous operation
    Task PostProcessPaymentAsync(PostProcessPaymentRequest postProcessPaymentRequest);

    /// 
    /// Gets a value indicating whether customers can complete a payment after order is placed but not completed (for redirection payment methods)
    /// 
    /// Order
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the result
    /// 
    Task CanRePostProcessPaymentAsync(Order order);

    /// 
    /// Gets an additional handling fee of a payment method
    /// 
    /// Shopping cart
    /// Payment method system name
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the additional handling fee
    /// 
    Task GetAdditionalHandlingFeeAsync(IList cart, string paymentMethodSystemName);

    /// 
    /// Gets a value indicating whether capture is supported by payment method
    /// 
    /// Payment method system name
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains a value indicating whether capture is supported
    /// 
    Task SupportCaptureAsync(string paymentMethodSystemName);

    /// 
    /// Captures payment
    /// 
    /// Capture payment request
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the capture payment result
    /// 
    Task CaptureAsync(CapturePaymentRequest capturePaymentRequest);

    /// 
    /// Gets a value indicating whether partial refund is supported by payment method
    /// 
    /// Payment method system name
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains a value indicating whether partial refund is supported
    /// 
    Task SupportPartiallyRefundAsync(string paymentMethodSystemName);

    /// 
    /// Gets a value indicating whether refund is supported by payment method
    /// 
    /// Payment method system name
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains a value indicating whether refund is supported
    /// 
    Task SupportRefundAsync(string paymentMethodSystemName);

    /// 
    /// Refunds a payment
    /// 
    /// Request
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the result
    /// 
    Task RefundAsync(RefundPaymentRequest refundPaymentRequest);

    /// 
    /// Gets a value indicating whether void is supported by payment method
    /// 
    /// Payment method system name
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains a value indicating whether void is supported
    /// 
    Task SupportVoidAsync(string paymentMethodSystemName);

    /// 
    /// Voids a payment
    /// 
    /// Request
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the result
    /// 
    Task VoidAsync(VoidPaymentRequest voidPaymentRequest);

    /// 
    /// Gets a recurring payment type of payment method
    /// 
    /// Payment method system name
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains a recurring payment type of payment method
    /// 
    Task GetRecurringPaymentTypeAsync(string paymentMethodSystemName);

    /// 
    /// Process recurring payment
    /// 
    /// Payment info required for an order processing
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the process payment result
    /// 
    Task ProcessRecurringPaymentAsync(ProcessPaymentRequest processPaymentRequest);

    /// 
    /// Cancels a recurring payment
    /// 
    /// Request
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the result
    /// 
    Task CancelRecurringPaymentAsync(CancelRecurringPaymentRequest cancelPaymentRequest);

    /// 
    /// Gets masked credit card number
    /// 
    /// Credit card number
    /// Masked credit card number
    string GetMaskedCreditCardNumber(string creditCardNumber);

    /// 
    /// Serialize CustomValues of ProcessPaymentRequest
    /// 
    /// Request
    /// Serialized CustomValues
    string SerializeCustomValues(ProcessPaymentRequest request);

    /// 
    /// Deserialize CustomValues of Order
    /// 
    /// Order
    /// Serialized CustomValues CustomValues
    Dictionary DeserializeCustomValues(Order order);

    /// 
    /// Generate an order GUID
    /// 
    /// Process payment request
    Task GenerateOrderGuidAsync(ProcessPaymentRequest processPaymentRequest);
}