public virtual Transaction Sign(string transactionId, SignatureOptions options)
        {
            var url      = string.Format("{0}/{1}/sign", Urls.Transactions, transactionId);
            var response = Requestor.PostJson(url, ParameterBuilder.BuildJsonPostParameters(options), SecretKey);

            return(TransactionMapper.MapFromJson(response));
        }
        public virtual Transaction GetTransaction(string transactionId)
        {
            var url      = string.Format("{0}/{1}", Urls.Transactions, transactionId);
            var response = Requestor.GetString(url, SecretKey);

            return(TransactionMapper.MapFromJson(response));
        }
        public virtual Transaction Void(string transactionId, string reference = null)
        {
            var url       = string.Format("{0}/{1}/void", Urls.Transactions, transactionId);
            var reqparams = new Dictionary <string, string> {
                { "reference", reference }
            };
            var response = Requestor.PostJson(url,
                                              ParameterBuilder.BuildJsonPostParameters(reqparams), SecretKey);

            return(TransactionMapper.MapFromJson(response));
        }