muvasco / picpay-php-sdk
用于与PicPay E-Commerce API集成的PHP SDK
此软件包的规范仓库似乎已消失,因此已冻结该软件包。
1.0
2020-07-06 13:45 UTC
Requires
- php: >=5.6
- guzzlehttp/guzzle: ~6.0
This package is not auto-updated.
Last update: 2024-09-10 11:04:41 UTC
README
适用于PicPay E-Commerce API的PHP SDK。
依赖关系
- PHP >= 5.6
示例
以下代码片段展示了如何使用此软件包与PicPay进行通信。
执行支付
<?php require_once('vendor/autoload.php'); use Picpay\Payment; use Picpay\Buyer; use Picpay\Seller; use Picpay\Request\PaymentRequest; use Picpay\Exception\RequestException; // Dados da loja (PicPay Token e Seller Token) $seller = new Seller('5b008cef7f321d00ef2367b2', '4ef4edbd-5cda-42da-860b-0e8d7b90c784'); // Dados do comprador $buyer = new Buyer('João', 'Da Silva', '123.456.789-10', 'teste@picpay.com', '+55 27 12345-6789'); // Dados do pedido $payment = new Payment('102030', 'http://www.sualoja.com.br/callback', 20.51, $buyer, 'http://www.sualoja.com.br/cliente/pedido/102030'); // PAGAMENTO try { // Cria uma nova requisição de pagamento com os dados da loja e do pagamento $paymentRequest = new PaymentRequest($seller, $payment); // O retorno tem a url de pagamento no PicPay, o qrcode, data de expiracao e seu id do pedido $paymentResponse = $paymentRequest->execute(); } catch (RequestException $e) { // Tratar os erros da requisição aqui $errorMessage = $e->getMessage(); $statusCode = $e->getCode(); $errors = $e->getErrors(); }
处理通知帖子
<?php require_once('vendor/autoload.php'); use Picpay\Request\NotificationRemoteRequest; // A implementação do tratamento da requisição de notificação (um POST na url enviada em callbackUrl - http://www.sualoja.com.br/callback nesse exemplo) varia de acordo com a tecnologia utilizada na loja. // Para que o callback seja considerado confirmado, deve-se responder com HTTP Status 200. // Podemos usar a classe NotificationRemoteRequest desse pacote para obter o authorizationId a partir do body da requisição enviada pelo PicPay $remoteNotification = new NotificationRemoteRequest('{"referenceId": "102030","authorizationId": "5b01780ba8914c001a007673"}'); $authorizationId = $remoteNotification->getAuthorizationId();
获取支付状态
<?php require_once('vendor/autoload.php'); use Picpay\Seller; use Picpay\Exception\RequestException; use Picpay\Request\StatusRequest; // Dados da loja (PicPay Token e Seller Token) $seller = new Seller('5b008cef7f321d00ef2367b2', '4ef4edbd-5cda-42da-860b-0e8d7b90c784'); // STATUS try { // Cria uma nova requisição de status do pagamento com os dados da loja e id do pedido $statusRequest = new StatusRequest($seller, '102030'); // Faze a requisição. O retorno contém o status do pagamento, seu id do pedido e numero de autorizaçao caso esteja pago $statusResponse = $statusRequest->execute(); } catch (RequestException $e) { // Tratar os erros da requisição aqui $errorMessage = $e->getMessage(); $statusCode = $e->getCode(); $errors = $e->getErrors(); }
取消支付
<?php require_once('vendor/autoload.php'); use Picpay\Seller; use Picpay\Exception\RequestException; use Picpay\Request\CancelRequest; // Dados da loja (PicPay Token e Seller Token) $seller = new Seller('5b008cef7f321d00ef2367b2', '4ef4edbd-5cda-42da-860b-0e8d7b90c784'); // CANCELAMENTO try { // Cria uma nova requisição de cancelamento do pagamento com os dados da loja, id do pedido e codigo de autorização $cancelRequest = new CancelRequest($seller, '102030', '555008cef7f321d00ef236333'); // Faze a requisição. O retorno contém o id do cancelamento e seu id do pedido $cancelResponse = $cancelRequest->execute(); } catch (RequestException $e) { // Tratar os erros da requisição aqui $errorMessage = $e->getMessage(); $statusCode = $e->getCode(); $errors = $e->getErrors(); }
文档
有关更多信息,请参阅PicPay E-Commerce API文档: E-Commerce API 文档