Created
October 10, 2018 19:44
-
-
Save viniciusbig/a2907f88d3ac955516df6b841991e55d to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Obter identificação do comprador | |
var getSenderHash = function () { | |
console.log('getSenderHash >>>'); | |
PagSeguroDirectPayment.onSenderHashReady(function(response) { | |
if (response.status == 'error') { | |
console.log(response.message); | |
return false; | |
} | |
console.log(response); | |
hashField.val(response.senderHash); | |
formEl.submit(); | |
}); | |
} | |
var bindEvents = function() { | |
submitEl.click(function (e) { | |
e.preventDefault(); | |
getSenderHash(); | |
}); | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
$boleto = new \PagSeguro\Domains\Requests\DirectPayment\Boleto(); | |
/** | |
* Modo do pagamento | |
* | |
* Presença: Obrigatória. | |
* Tipo: Texto. | |
* Formato: aceita a opção default. | |
* | |
* @var string $paymentMode | |
* @options=['default'] | |
*/ | |
$paymentMode = 'DEFAULT'; | |
$boleto->setMode($paymentMode); | |
/** | |
* Especifica o e-mail que vai receber o pagamento | |
* | |
* Presença: Obrigatória. | |
* Tipo: Texto. | |
* Presença: Obrigatória. | |
* Formato: Um e-mail válido, com limite de 60 caracteres. O e-mail informado deve estar vinculado à conta PagSeguro que | |
* está realizando a chamada. | |
* | |
* @var string $receiverEmail | |
*/ | |
$receiverEmail = 'meu-email-pagseguro@uol.com.br'; | |
$boleto->setReceiverEmail($receiverEmail); | |
/** | |
* Moeda utilizada. Indica a moeda na qual o pagamento será feito. No momento, a única opção disponível é BRL (Real). | |
* | |
* Presença: Obrigatória. | |
* Tipo: Texto. | |
* Formato: Somente o valor BRL é aceito. | |
* | |
* @var string $currency | |
* @options=['BRL'] | |
*/ | |
$currency = 'BRL'; | |
$boleto->setCurrency($currency); | |
/** | |
* Lista de itens contidos na transação. O número de itens sob este elemento corresponde ao valor de itemCount. | |
* | |
* @var \PagSeguro\Domains\Item $item | |
* @var array $items | |
*/ | |
// $items = [$item]; | |
// $boleto->setItems($items); | |
// Add an item for this payment request | |
$boleto->addItems()->withParameters('0001', 'Notebook prata', 2, 130.00); | |
$boleto->addItems()->withParameters('0002', 'Notebook preto', 2, 430.00); | |
/** | |
* Código de referência da transação. Informa o código que foi usado para fazer referência ao pagamento. Este código | |
* foi fornecido no momento do pagamento e é útil para vincular as transações do PagSeguro às vendas registradas no seu | |
* sistema. | |
* | |
* Presença: Opcional. | |
* Formato: Livre, com o limite de 200 caracteres. | |
* Tipo: Texto. | |
* | |
* @var string $reference | |
*/ | |
$reference = 'LIBPHP000001-boleto'; | |
$boleto->setReference($reference); | |
/** | |
* Valor extra. Informa um valor extra que foi somado ou subtraído do valor pago pelo comprador. Este valor é | |
* especificado por você no pagamento e pode representar um valor que você quer cobrar separadamente do comprador ou um | |
* desconto que quer dar a ele. | |
* | |
* Presença: Obrigatória. | |
* Tipo: Número. | |
* Formato: Decimal, com duas casas decimais separadas por ponto (“.”). | |
* Por exemplo, 1234.56 ou -1234.56. | |
* | |
* @var float $amount | |
*/ | |
$amount = 11.5; | |
$boleto->setExtraAmount($amount); | |
/** | |
* Nome completo do comprador. Informa o nome completo do comprador que realizou o pagamento. | |
* | |
* Presença: Opcional. | |
* Tipo: Texto. | |
* Formato:* No mínimo duas sequências de caracteres, com o limite total de 50 caracteres. | |
* | |
* @var string $senderName | |
*/ | |
$senderName = 'João Comprador'; | |
$boleto->setSender()->setName($senderName); | |
/** | |
* E-mail do comprador. Informa o e-mail do comprador que realizou a transação. | |
* | |
* Presença: Obrigatória. | |
* Tipo: Texto. | |
* Formato: um e-mail válido (p.e., usuario\@site.com.br), com no máximo 60 caracteres. | |
* | |
* @var string $senderEmail | |
*/ | |
$senderEmail = 'email-cliente@sandbox.pagseguro.com.br'; | |
$boleto->setSender()->setEmail($senderEmail); | |
/** @var \PagSeguro\Domains\Phone $phone */ | |
// $boleto->setSender()->setPhone()->instance($phone); | |
$boleto->setSender()->setPhone()->withParameters(11, 56273440); | |
/** @var \PagSeguro\Domains\Document $document */ | |
// $boleto->setSender()->setDocument()->instance($document); | |
$boleto->setSender()->setDocument()->withParameters('CPF', '357.681.098-62'); | |
/** | |
* Identificador do vendedor (fingerprint) gerado pelo JavaScript do PagSeguro. | |
* | |
* Presença: Obrigatória. | |
* Tipo: Texto. | |
* Formato: Obtido a partir de uma chamada javascript PagseguroDirectPayment.getSenderHash(). | |
* | |
* @var string $senderHash | |
* | |
* @see https://devpagseguro.readme.io/docs/checkout-web-usando-a-sua-tela#obter-indicacao-do-comprador | |
*/ | |
$senderHash = $data['senderHash']; // pega a hash no POST | |
$boleto->setSender()->setHash($senderHash); | |
// $clientIp = $this->request->clientIp(); | |
// $boleto->setSender()->setIp($clientIp); | |
/** @var \PagSeguro\Domains\Address $address */ | |
// $boleto->setShipping()->setAddress()->instance($address); | |
// $boleto->setShipping()->setAddress()->withParameters( | |
// 'Av. Brig. Faria Lima','1384', 'Jardim Paulistano', '01452002', | |
// 'São Paulo', 'SP', 'BRA', 'apto. 114' | |
// ); | |
/** | |
* Obrigatoriedade do endereço de entrega | |
* Define a obrigatoriedade dos campos de endereço. | |
* | |
* Tipo: Boolean. | |
* Formato: Somente os valores true e false são aceitos. | |
* Presença: Obrigatória. | |
* | |
* @var string $shippingRequired | |
* @options=['TRUE', 'FALSE'] | |
*/ | |
$shippingRequired = 'FALSE'; | |
$boleto->setShipping()->setAddressRequired()->withParameters($shippingRequired); | |
try { | |
$credential = \PagSeguro\Configuration\Configure::getAccountCredentials(); | |
/** @var \PagSeguro\Domains\Requests\Authorization $authorization */ | |
$response = $boleto->register( | |
/** @var \PagSeguro\Domains\AccountCredentials | \PagSeguro\Domains\ApplicationCredentials $credential */ | |
$credential | |
); | |
/** | |
* You can use methods like getCode() to get the transaction | |
* code and getPaymentLink() for the Payment's URL. | |
*/ | |
debug($result->getCode()); | |
} catch (Exception $e) { | |
debug($e);die; | |
die($e->getMessage()); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment