/// <summary> /// Authorizes and Captures a Payment /// </summary> /// <param name="invoice">The <see cref="IInvoice"/></param> /// <param name="paymentMethodKey">The <see cref="IPaymentMethod"/> key</param> /// <param name="args">Additional arguements required by the payment processor</param> /// <returns>A <see cref="IPaymentResult"/></returns> public static IPaymentResult AuthorizeCapturePayment(this IInvoice invoice, Guid paymentMethodKey, ProcessorArgumentCollection args) { return invoice.AuthorizeCapturePayment(MerchelloContext.Current, paymentMethodKey, args); }
/// <summary> /// Authorizes and Captures a Payment /// </summary> /// <param name="invoice">The <see cref="IInvoice"/></param> /// <param name="merchelloContext">The <see cref="IMerchelloContext"/></param> /// <param name="paymentMethodKey">The <see cref="IPaymentMethod"/> key</param> /// <param name="args">Additional arguements required by the payment processor</param> /// <returns>A <see cref="IPaymentResult"/></returns> internal static IPaymentResult AuthorizeCapturePayment(this IInvoice invoice, IMerchelloContext merchelloContext, Guid paymentMethodKey, ProcessorArgumentCollection args) { var paymentMethod = merchelloContext.Gateways.Payment.GetPaymentGatewayMethodByKey(paymentMethodKey); return invoice.AuthorizeCapturePayment(paymentMethod, args); }
/// <summary> /// Authorizes and Captures a Payment /// </summary> /// <param name="invoice">The <see cref="IInvoice"/></param> /// <param name="paymentGatewayMethod">The <see cref="IPaymentMethod"/></param> /// <returns>A <see cref="IPaymentResult"/></returns> public static IPaymentResult AuthorizeCapturePayment(this IInvoice invoice, IPaymentGatewayMethod paymentGatewayMethod) { return invoice.AuthorizeCapturePayment(paymentGatewayMethod, new ProcessorArgumentCollection()); }
/// <summary> /// Authorizes and Captures a Payment /// </summary> /// <param name="invoice">The <see cref="IInvoice"/></param> /// <param name="paymentMethodKey">The <see cref="IPaymentMethod"/> key</param> /// <returns>A <see cref="IPaymentResult"/></returns> public static IPaymentResult AuthorizeCapturePayment(this IInvoice invoice, Guid paymentMethodKey) { return invoice.AuthorizeCapturePayment(paymentMethodKey, new ProcessorArgumentCollection()); }