Пример #1
0
        public Invoice RefundAmount(int amountInCents, RefundMethod method = RefundMethod.CreditFirst)
        {
            var refundInvoice = new Invoice();
            var refund        = new OpenAmountRefund(amountInCents, method);

            var statusCode = Client.Instance.PerformRequest(Client.HttpRequestMethod.Post,
                                                            memberUrl() + "/refund",
                                                            refund.WriteXml,
                                                            refundInvoice.ReadXml);

            if (HttpStatusCode.Created == statusCode || HttpStatusCode.OK == statusCode)
            {
                return(refundInvoice);
            }
            else
            {
                return(null);
            }
        }
Пример #2
0
        public Invoice Refund(IEnumerable <Adjustment> adjustments, bool prorate = false, int quantity = 0, RefundMethod method = RefundMethod.CreditFirst)
        {
            var refunds = new RefundList(adjustments, prorate, quantity, method);
            var invoice = new Invoice();

            var statusCode = Client.Instance.PerformRequest(Client.HttpRequestMethod.Post,
                                                            memberUrl() + "/refund",
                                                            refunds.WriteXml,
                                                            invoice.ReadXml);

            if (HttpStatusCode.Created == statusCode || HttpStatusCode.OK == statusCode)
            {
                return(invoice);
            }
            else
            {
                return(null);
            }
        }
Пример #3
0
        public Invoice Refund(Adjustment adjustment, bool prorate = false, int quantity = 0, RefundMethod method = RefundMethod.CreditFirst)
        {
            var adjustments = new List <Adjustment>();

            adjustments.Add(adjustment);

            return(Refund(adjustments, prorate, quantity, method));
        }