Braintree
A Braintree, que é de propriedade do PayPal, é uma plataforma de pagamento utilizada em mais de 40 países e que aceita diversas formas de pagamento, entre elas: Paypal, Venmo e carteira digital(Apple Pay, Google Pay e Samsung Pay).
Alguns métodos de pagamento estão disponíveis apenas em determinados países e regiões, confira a lista completa acessando: https://developer.paypal.com/braintree/articles/get-started/payment-methods
Configurando um Perfil
No menu Ferramentas > API é possível criar perfis da API para utilização em seus projetos, desta forma, será necessário informar suas credenciais uma única vez para utilização da API no projeto.
Veja como obter as credenciais necessárias para configuração do perfil.
Ao realizar a publicação do seu projeto será necessário configurar as credenciais da API no Prod, acessando o menu API.
Para criação do perfil devemos adicionar as seguintes informações:
Nome
Define o nome para identificação do perfil da API. Este nome é único e será utilizado para referenciar o perfil da API nas aplicações do seu projeto.
Modo
O modo define a disponibilidade de uso do Perfil no Scriptcase.
- Público - Os usuários de todos os projetos poderão visualizar e utilizar o perfil criado.
- Projeto - Os usuários poderão visualizar e utilizar o perfil no projeto em que foi configurado.
- Usuário - Apenas o usuário criador do perfil poderá visualizar e utilizar nas aplicações.
Independente do modo utilizado na criação, os perfis so poderão ser editados por usuários com acesso de administrador no projeto. Veja como definir o nível de acesso dos usuários no scriptcase.
Gateway
Define a API que será utilizada na criação do perfil.
Marchant ID
Seu ID de comerciante é o identificador exclusivo de toda a sua conta de gateway, incluindo as várias contas de comerciante que podem estar em seu gateway. Muitas vezes chamado de ID público ou ID de produção, seu Merchant Id será diferente para seus gateways de produção e sandbox.
Publick Key
Este é o seu Public Id específico do usuário. Cada usuário associado ao seu gateway Braintree terá sua própria chave pública.
Private Key
Este é o seu Private Key específico do usuário. Cada usuário associado ao seu gateway Braintree terá sua própria chave privada. Sua chave privada não deve ser compartilhada fora do uso de uma chamada de API – mesmo conosco.
Modo de teste
Habilita ou desabilita o modo de teste da API.
Exemplos de utilização
Ao utilizar a macro sc_call_api
um objeto é instanciado, clique aqui para ver todos os métodos da Braintree.
Para utilização da API seu servidor será responsável por gerar o token do cliente, contendo as informações de autorização e configuração para inicializar o SDK e se comunicar com a Braintree, veja como gerar um client token
Se o cliente não for encontrado, retorna um erro de validação.
Para inicializar o SDK do JavaScript devemos ter o token de cliente gerado pelo SDK do servidor Braintree, veja como obter um client token
Recomenda-se ainda que todas as transações iniciadas pelo cliente incluam os dados do dispositivo, para aumentar a precisão e segurança da transação, veja como colar os dados do dispositivo.
Veja abaixo alguns exemplos de utilização da API.
Exemplo informando o perfil da API criada na interface como parâmetro na macro
$gateway = sc_call_api('braintree');
$response = $gateway->transaction()->sale([
'amount' => '10.00',
'paymentMethodNonce' => $nonceFromTheClient,
'deviceData' => $deviceDataFromTheClient,
'options' => [
'submitForSettlement' => True
]
]);
echo '<pre>';
print_r($response);
Exemplo utilizando credenciais na macro
$merchantId = 'MERCHANT_ID';
$privateKey = 'PRIVATE_KEY';
$publicKey = 'PUBLIC_KEY';
$arr_settings = array('settings' => ['gateway' => 'braintree', 'merchantId'=> $merchantId, 'publicKey' => $publicKey, 'privateKey' => $privateKey, 'testMode' => TRUE]);
$gateway = sc_call_api('', $arr_settings);
echo($clientToken = $gateway->clientToken()->generate());