Skip to main content

Manipulação de erros

Ao utilizar o SDK de PHP, espera-se que a integração seja robusta; sendo assim, é fundamental lidar com possíveis imprevistos da API ou do transporte de dados na forma de exceptions.

Quando a API retorna um erro, uma exception do tipo \OpenPix\PhpSdk\ApiErrorException é lançada.

Caso ocorra algum erro no transporte dos dados, o cliente HTTP utilizado irá lançar uma exceção que estende \Psr\Http\Client\ClientExceptionInterface de acordo com a PSR-18.

A mensagem de erro de uma possível exceção pode ser obtida pelo método getMessage.

Veja como você pode capturar todos os possíveis erros do SDK:

use OpenPix\PhpSdk\ApiErrorException;
use Psr\Http\Client\ClientExceptionInterface;

try {
$charge = [
"value" => 100, // R$ 100,00
"correlationID" => "anothercorrelationid-" . strval(time()),
];

/** @var \OpenPix\PhpSdk\Client $client */
$result = $client->charges()->create($charge);
} catch (ApiErrorException|ClientExceptionInterface $e) {
// Lida com os erros relacionados ao SDK.
echo "Ocorreu um erro durante a criação da cobrança: " . $e->getMessage() . "<br>\n";
}