public virtual Refund Refund(string chargeId, RefundOptions options)
        {
            var url = string.Format("{0}/{1}/refund", Urls.Charges, chargeId);

            var response = Requestor.PostJson(url, ParameterBuilder.BuildJsonPostParameters(options), SecretKey);

            return(Mapper <Refund> .MapFromJson(response));
        }
        public virtual Refund Refund(string chargeId, int?refundAmountInCents, string reference = null, object data = null)
        {
            var url = string.Format("{0}/{1}/refund", Urls.Charges, chargeId);

            var options = new RefundOptions
            {
                AmountInCents = refundAmountInCents,
                Reference     = reference,
                Data          = data
            };
            var response = Requestor.PostJson(url, ParameterBuilder.BuildJsonPostParameters(options), SecretKey);

            return(Mapper <Refund> .MapFromJson(response));
        }