public async Task <PagamentoResult> InserirAsync(PagamentoSignature signature) { var pagamento = new Models.Pagamento(signature.NumeroCartao, signature.NumeroParcelas, signature.Total); if (!pagamento.ValidarCartao()) { throw new System.ArgumentException("Cartão de crédito inválido"); } await _pagamentoRepository.InserirAsync(pagamento); return(pagamento.ToResult()); }