DirectCheckoutCreditCard - Thiago-Medeiros/pagseguro-php-sdk GitHub Wiki
Checkout transparente: Cartão de Crédito
Exemplo
$creditCard = new \PagSeguro\Domains\Requests\DirectPayment\CreditCard();
/**
* Modo do pagamento
*
* Presença: Obrigatória.
* Tipo: Texto.
* Formato: aceita a opção default.
*
* @var string $paymentMode
* @options=['default']
*/
$creditCard->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
*/
$creditCard->setReceiverEmail($receiverEmail);
/**
* 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
*/
$creditCard->setReference($reference);
/**
* 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']
*/
$creditCard->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];
$creditCard->setItems($items);
/**
* 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
*/
$creditCard->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
*/
$creditCard->setSender()->setEmail($senderEmail);
/** @var \PagSeguro\Domains\Phone $phone */
$creditCard->setSender()->setPhone()->instance($phone);
/** @var \PagSeguro\Domains\Document $document */
$creditCard->setSender()->setDocument()->instance($document);
/**
* 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
*/
$creditCard->setSender()->setHash($senderHash);
/** @var \PagSeguro\Domains\Address $address */
$creditCard->setShipping()->setAddress()->instance($address);
/** @var \PagSeguro\Domains\Address $address */
$creditCard->setBilling()->setAddress()->instance($address);
/**
* Token do Cartão de Crédito. Token retornado no serviço de obtenção de token do cartão de crédito.
*
* Presença: Obrigatório para Cartão de Crédito.
* Tipo: Texto.
* Formato: Não tem limite de caracteres.
*
* @var string $token
*/
$creditCard->setToken($token);
/**
* Quantidade de parcelas. Quantidade de parcelas escolhidas pelo cliente.
*
* Presença: Obrigatório para Cartão de Crédito.
* Tipo: Inteiro.
* Valores aceitos: [1, 18].
*
* @var integer $quantity
*/
/** @var float $value */
$creditCard->setInstallment()->withParameters($quantity, $value);
// Set the credit card holder information
$creditCard->setHolder()->setBirthdate('01/10/1979');
$creditCard->setHolder()->setName('João Comprador'); // Equals in Credit Card
/** @var \PagSeguro\Domains\Phone $phone */
$creditCard->setHolder()->setPhone()->instance($phone);
/** @var \PagSeguro\Domains\Document $document */
$creditCard->setHolder()->setDocument()->instance($document);
try {
$result = $creditCard->register(
/** @var \PagSeguro\Domains\AccountCredentials | \PagSeguro\Domains\ApplicationCredentials $credential */
$credential
);
} catch (Exception $e) {
die($e->getMessage());
}