Checkout Transparente Pagseguro em PHP, JS e Python - #02 Cartao de Crédito Criptografado
08/05/2023Nesse tutorial aprenderemos como realizar o checkout transparente do Pagseguro utilizando cartão de crédito criptografado e linguagem de programação PHP.
PHP - Pagseguro - Cartão de Crédito
Antes de mais nada cabe lembrar que precisaremos inicializar o servidor de PHP, no caso o Xampp. Para o projeto criaremos 4 arquivos:
- index.php
- KeyController.php
- PayController.php
- javascript.js
javascript.js
O javascript ficará responsável por criptografar o cartão. Vamos iniciar deixando pronta nossa função de invocação:
(function(win,doc){
'use strict';
})(window,document);
index.php
O index.php abrigará o formulário html em que o usuário digitará os dados do cartão de crédito:
<?php
include('KeyController.php');
$objKey = new KeyController();
?>
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha3/dist/css/bootstrap.min.css">
</head>
<body>
<form method="post" name="formCard" id="formCard" action="PayController.php">
<div class="col-6 m-auto">
<input type="text" name="publicKey" id="publicKey" value="<?php echo $objKey::getPublicKey(); ?>">
<input type="text" name="encriptedCard" id="encriptedCard">
<input type="text" class="form-control" name="cardNumber" id="cardNumber" maxlength="16" placeholder="Número do Cartão">
<input type="text" class="form-control" name="cardHolder" id="cardHolder" placeholder="Nome no Cartão">
<input type="text" class="form-control" name="cardMonth" id="cardMonth" maxlength="2" placeholder="Mês de Validade do Cartão">
<input type="text" class="form-control" name="cardYear" id="cardYear" maxlength="4" placeholder="Ano do Cartão">
<input type="text" class="form-control" name="cardCvv" id="cardCvv" maxlength="4" placeholder="CVV do Cartão">
<input type="submit" class="btn btn-primary" value="Pagar">
</div>
</form>
<script src="javascript.js"></script>
</body>
</html>
KeyController.php
No arquivo KeyController buscaremos a chave pública do nosso sistema:
<?php
class KeyController{
public static function getPublicKey()
{
$data['type'] = "card";
$curl = curl_init('https://sandbox.api.pagseguro.com/public-keys/');
curl_setopt($curl,CURLOPT_HTTPHEADER,Array(
'Content-Type: application/json',
'Authorization: SEU_TOKEN'
));
curl_setopt($curl,CURLOPT_POST,true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER,true);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER,false);
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($data));
$retorno = curl_exec($curl);
curl_close($curl);
return json_decode($retorno)->public_key;
}
}
Por hoje é só! Fiquem com Deus! Sucesso nos códigos e na vida!
Precisa de um professor? webdesignemfoco@gmail.com