/// <summary>
        /// Envia uma requisição-cancelamento para o webservice Cielo para cancelar uma transação
        /// </summary>
        /// <returns>A transação com o respectivo status retornada pela Cielo</returns>
        /// <param name="transaction">A transação que será cancelada</param>
        /// <param name="total">Total do cancelamento</param>
        public Transaction cancellationRequest(string tid, int total, Merchant merchant = null)
        {
            CancellationRequest request = CancellationRequest.create(tid, merchant ?? this.merchant, total);

            return(TransacaoElement.unserialize(null, sendHttpRequest(serialize(request))));
        }
        /// <summary>
        /// Envia uma requisição-cancelamento para o webservice Cielo para cancelar uma transação
        /// </summary>
        /// <returns>A transação com o respectivo status retornada pela Cielo</returns>
        /// <param name="transaction">A transação que será cancelada</param>
        /// <param name="total">Total do cancelamento</param>
        public Transaction cancellationRequest(Transaction transaction, int total)
        {
            CancellationRequest request = CancellationRequest.create(transaction, total);

            return(TransacaoElement.unserialize(transaction, sendHttpRequest(serialize(request))));
        }