ASP .NET MVC - Fazendo a a integração com o PayPal


Neste artigo eu vou mostrar como podemos realizar a integração do componente PayPal com uma
aplicação ASP .NET MVC permitindo assim que sua aplicação aceite pagamentos via PayPal.

Obs: Você pode fazer a integração usando o PayPal na loja virtual criada com o WebMatrix no curso
:
WebMatrix - Criando uma Loja Virtual (Curso)

PayPal é a maneira simples e segura de pagar suas compras na Internet, no celular, no tablet ou onde você estiver.
Com PayPal, seus dados financeiros (como os números de cartão de crédito e conta bancária) não são compartilhados
 com os vendedores e apenas você tem acesso à sua conta do PayPal. Proteja seus pagamentos com PayPal, a sua
carteira digital.(https://www.paypal.com/br/webapps/mpp/home)

Para isso eu vou usar o Helper PayPal que permite integrar pagamentos PayPal dentro do seu site ASP .NET, WebMatrix
ou aplicação e-commerce aplicação
. Com algumas linhas de código, você vai permitir que os seus clientes façam o
pagamento de suas compras com suas contas do PayPal.

O Helper suporta tanto a API PayPal Button Manager como API Adaptive Payments. Utilizando a primeira você será capaz
de criar (e gerenciar) botões PayPal como Adicionar ao carrinho ou Comprar, que permitirá que seus clientes comprem itens
únicos ou múltiplos. Com a segunda API você pode processar transações em seu web site.  Dessa forma usando o Helper você
pode construir aplicativos na web que tratem os pagamentos a serem feitos.

Como exemplo eu vou criar uma aplicação ASP .NET MVC 4 usando o Visual Studio Express 2012 for Web.

Abra o Visual Studio Express 2012 for Web e no menu File clique em New Project;

A seguir selecione o template Visual C# -> Web  e selecione ASP .NET MVC 4 Web Application informando o
nome Mvc4PayPal e clicando no botão OK;

A seguir selecione o template - Internet Application e o engine Razor e clique no botão OK;

Seria criado um projeto com uma estrutura padrão de uma aplicação ASP .NET MVC que vamos usar para implementar o PayPal.

Antes de continuar você deverá acessar o site https://developer.paypal.com/ e criar uma conta de desenvolvimento PayPal
onde deverá criar sua conta de teste com o cartão de crédito para testes em ambiente de desenvolvimento. (Você não tem que pagar nada.)

Obs: Voce pode acessar o site do PayPal no Brasil e realizar os mesmos procedimentos: https://www.paypal.com/br/webapps/mpp/home

Você deverá cria a sua conta de teste onde receberá o email da conta, o nome do usuário para acesso a API; a senha da API é uma
assinatura que é um hash gerado para garantir a segurança.

No meu caso vejas informações da conta de teste abaixo: (Por questões óbvias ocultei as minhas informações)

Após criar a sua conta de teste e gerar a suas credenciais para autenticação você pode prosseguir. (Essas informações
serão usadas mais à frente)

Vamos agora incluir as referências ao Helper do PayPal em nosso projeto. Podemos fazer isso usando o gerenciador
de pacotes Nuget ou o Package Manager Console;

No menu TOOLS clique em Library Package Manager e a seguir em Package Manager Console;

A  seguir no console digite : Install-Package PayPal.Helper e tecle ENTER;

Após alguns segundos você deverá ver as mensagens indicando que o pacote foi instalado e referenciado
com êxito no seu projeto:

Agora vamos definir a inicialização da API em nosso projeto.

Abra o arquivo Global.asax.cs e no método Application_Start inclua a linha de código indicada a seguir:

A linha de código usa as informações da minha conta, minha senha, e minha assinatura. Aqui você deve incluir as
suas credencias obtidas no site do PayPal.

Após isso vamos abrir a view Index.cshtml na pasta /Home e incluir o código abaixo no início do arquivo:

Este código criará o botão Add to Cart para o produto Meu Produto com o valor 9.99 para a minha conta de testes.
(Aqui você deve usar a sua conta de testes obtida no PayPal).

Com essas implementações podemos rodar a aplicação onde obteremos na página gerada pela view Index.cshtml
o botão Add to Cart conforme abaixo:

Clicando no botão Add to Cart iremos para a página de informação do produto onde podemos definir a
quantidade e obter o valor a ser pago.

Ao clicar no botão Check out with PayPal teremos a exibição do pedido a solicitação das credenciais da
 conta para que o pagamento seja efetuado:

A seguir clique no botão Agree e Continue para concordar com a política do PayPal:

Será exibida uma janela com as informações do pedido, o endereço do cliente e a solicitação do pagamento no botão Pay Now;

A tela informando que o pagamento foi feito pode ser vista a seguir:

Verificando a conta de testes no PayPal veremos que o valor foi debitado do saldo inicial da conta:

Verificando os detalhes da conta de testes também vemos as informações atualizadas:

Dessa forma mostrei como é bem simples implementar a solução de pagamentos PayPal em uma aplicação
ASP .NET MVC
usando o Helper PayPal.

Pegue o projeto completo aqui: Mvc4PayPal.zip (exclui o pacote com as referências para diminuir o tamanho do download)

Luc 21:33 Passará o céu e a terra, mas as minhas palavras jamais passarão. (Jesus Cristo)

Heb 13:8 Jesus Cristo é o mesmo, ontem, e hoje, e eternamente.

Jesus Cristo não é religião é uma pessoa, é o Salvador.

Referências:


José Carlos Macoratti