public PaymentResultDisplay VoidPayment(PaymentRequestDisplay request) { var processor = new PaymentProcessor(MerchelloContext, request); var voided = processor.Void(); var result = new PaymentResultDisplay() { Success = voided.Payment.Success, Invoice = voided.Invoice.ToInvoiceDisplay(), Payment = voided.Payment.Result.ToPaymentDisplay(), ApproveOrderCreation = voided.ApproveOrderCreation }; if (voided.Payment.Success) { voided.Payment.Result.AuditPaymentVoided(); } return result; }
public PaymentResultDisplay CapturePayment(PaymentRequestDisplay request) { var processor = new PaymentProcessor(MerchelloContext, request); var capture = processor.Capture(); var result = new PaymentResultDisplay() { Success = capture.Payment.Success, Invoice = capture.Invoice.ToInvoiceDisplay(), Payment = capture.Payment.Result.ToPaymentDisplay(), ApproveOrderCreation = capture.ApproveOrderCreation }; if (!capture.Payment.Success) { capture.Payment.Result.AuditPaymentDeclined(); } else { capture.Payment.Result.AuditPaymentCaptured(request.Amount); } return result; }
/// <summary> /// Returns a payment result for an refund operation /// /// GET /umbraco/Merchello/PaymentApi/RefundPayment/ /// </summary> /// <param name="request"> /// The request. /// </param> /// <returns> /// The <see cref="PaymentDisplay"/>. /// </returns> public PaymentResultDisplay RefundPayment(PaymentRequestDisplay request) { var processor = new PaymentProcessor(MerchelloContext, request); var refund = processor.Refund(); var result = new PaymentResultDisplay() { Success = refund.Payment.Success, Invoice = refund.Invoice.ToInvoiceDisplay(), Payment = refund.Payment.Result.ToPaymentDisplay(), ApproveOrderCreation = refund.ApproveOrderCreation }; if (refund.Payment.Success) { refund.Payment.Result.AuditPaymentRefunded(request.Amount); } return result; }
public PaymentResultDisplay AuthorizePayment(PaymentRequestDisplay request) { var processor = new PaymentProcessor(MerchelloContext, request); var authorize = processor.Authorize(); var result = new PaymentResultDisplay() { Success = authorize.Payment.Success, Invoice = authorize.Invoice.ToInvoiceDisplay(), Payment = authorize.Payment.Result.ToPaymentDisplay(), ApproveOrderCreation = authorize.ApproveOrderCreation }; if (!authorize.Payment.Success) { authorize.Payment.Result.AuditPaymentDeclined(); } else { authorize.Payment.Result.AuditPaymentAuthorize(authorize.Invoice); } return result; }