AuthorizationCreate - Thiago-Medeiros/pagseguro-php-sdk GitHub Wiki
Solicitando autorização
Para utilizar o modelo de aplicações do PagSeguro é necessário que você crie uma aplicação. Esta aplicação será responsável por centralizar as autorizações concedidas pelos seus clientes. Para criar uma nova aplicação, acesse os menus Aplicações >>> Minhas aplicações ou o link https://pagseguro.uol.com.br/aplicacao/listagem.jhtml e clique em “Criar nova aplicação”
Exemplo
/**
* Para utilizar o modelo de aplicações do PagSeguro é necessário que você crie uma aplicação. Esta aplicação será
* responsável por centralizar as autorizações concedidas pelos seus clientes.
*
* @see https://devpagseguro.readme.io/docs/modelo-de-aplicacoes-criando-sua-aplicacao
*/
$authorization = new \PagSeguro\Domains\Requests\Authorization();
/**
* Identificador usado para fazer referência à autorização da sua requisição.
*
* Presença: Opcional.
* Tipo: Texto.
* Formato: Livre, com limite total de 20 caracteres.
*
* @var string $reference
*/
$authorization->setReference($reference);
/**
* URL para onde o comprador será redirecionado após a finalização do fluxo de autorização. Caso seja informado na
* chamada, será utilizada esta ao invés da URL informada no cadastro da aplicação.
*
* Presença: Obrigatória.
* Tipo: Texto.
* Formato: Uma URL válida, com limite de 255 caracteres
*
* @var string $redirectUrl
*/
$authorization->setRedirectUrl($redirectUrl);
/**
* URL para onde a notificação será direcionada após a finalização do fluxo de autorização. Caso seja informado na
* chamada, será utilizada esta ao invés da URL informada no cadastro da aplicação.
*
* Presença: Obrigatória.
* Tipo: Texto.
* Formato: Uma URL válida, com limite de 255 caracteres.
*
* @var string $notificationUrl
*/
$authorization->setNotificationUrl($notificationUrl);
/**
* Permissões a serem autorizadas
* Presença: Obrigatória.
* Tipo: Texto.
*
* Valores aceitos:
* CREATE_CHECKOUTS - A aplicação poderá direcionar compradores para o PagSeguro e intermediar pagamentos
* RECEIVE_TRANSACTION_NOTIFICATIONS - A aplicação poderá receber e consultar notificações das transações que ela intermediou
* SEARCH_TRANSACTIONS - A aplicação poderá consultar as transações que ela intermediou
* MANAGE_PAYMENT_PRE_APPROVALS - A aplicação poderá gerenciar e utilizar pré-aprovações de pagamentos
* DIRECT_PAYMENT - A aplicação poderá gerenciar pagamentos via checkout transparente.
*/
$authorization->addPermission(\PagSeguro\Enum\Authorization\Permissions::CREATE_CHECKOUTS);
$authorization->addPermission(\PagSeguro\Enum\Authorization\Permissions::SEARCH_TRANSACTIONS);
$authorization->addPermission(\PagSeguro\Enum\Authorization\Permissions::RECEIVE_TRANSACTION_NOTIFICATIONS);
$authorization->addPermission(\PagSeguro\Enum\Authorization\Permissions::MANAGE_PAYMENT_PRE_APPROVALS);
$authorization->addPermission(\PagSeguro\Enum\Authorization\Permissions::DIRECT_PAYMENT);
try {
$response = $authorization->register(
/** @var \PagSeguro\Domains\ApplicationCredentials $credential */
$credential
);
} catch (Exception $e) {
die($e->getMessage());
}