Open iltonbarbosa opened 2 years ago
Oi, Estou fazendo testes no XAMPP em máquina local. A implementação do createPaymentRequestLightBox está retornando "MetadataItem Value is required".
Segue o mesmo código que peguei no exemplo:
<?php /**
*/
require_once "../vendor/autoload.php";
\PagSeguro\Library::initialize(); \PagSeguro\Library::cmsVersion()->setName("Nome")->setRelease("1.0.0"); \PagSeguro\Library::moduleVersion()->setName("Nome")->setRelease("1.0.0");
?> <!DOCTYPE html>
<?php
$payment = new \PagSeguro\Domains\Requests\Payment();
$payment->addItems()->withParameters( '0001', 'Notebook prata', 2, 130.00 );
$payment->addItems()->withParameters( '0002', 'Notebook preto', 2, 430.00 );
$payment->setCurrency("BRL"); $payment->setReference("LIBPHP000001");
$payment->setRedirectUrl("http://www.fvweb.com.br");
// Set your customer information. $payment->setSender()->setName('João Comprador'); $payment->setSender()->setEmail('email@comprador.com.br'); $payment->setSender()->setPhone()->withParameters( 11, 56273440 ); $payment->setSender()->setDocument()->withParameters( 'CPF', '[aqui coloquei meu cpf]' );
$payment->setShipping()->setAddress()->withParameters( 'Av. Brig. Faria Lima', '1384', 'Jardim Paulistano', '01452002', 'São Paulo', 'SP', 'BRA', 'apto. 114' ); $payment->setShipping()->setCost()->withParameters(20.00); $payment->setShipping()->setType()->withParameters(\PagSeguro\Enum\Shipping\Type::SEDEX);
//Add metadata items $payment->addMetadata()->withParameters('PASSENGER_CPF', 'insira um numero de CPF valido'); $payment->addMetadata()->withParameters('GAME_NAME', 'DOTA'); $payment->addMetadata()->withParameters('PASSENGER_PASSPORT', '23456', 1);
//Add items by parameter $payment->addParameter()->withParameters('itemId', '0003')->index(3); $payment->addParameter()->withParameters('itemDescription', 'Notebook Rosa')->index(3); $payment->addParameter()->withParameters('itemQuantity', '1')->index(3); $payment->addParameter()->withParameters('itemAmount', '201.40')->index(3);
//Add items by parameter using an array $payment->addParameter()->withArray(['notificationURL', '[aqui coloquei a minha url de notificação]']);
$payment->setRedirectUrl(""); $payment->setNotificationUrl("[aqui coloquei a minha url de notificação]");
try { $onlyCheckoutCode = true; $result = $payment->register( \PagSeguro\Configuration\Configure::getAccountCredentials(), $onlyCheckoutCode );
echo "<h2>Criando requisição de pagamento. Aguarde...</h2>" . "<p>Código da transação: <strong>" . $result->getCode() . "</strong></p>" . "<script>PagSeguroLightbox('" . $result->getCode() . "');</script>";
} catch (Exception $e) { die($e->getMessage()); }
Descobri que precisava passar um CPF válido aqui
$payment->addMetadata()->withParameters('PASSENGER_CPF', '[insira um cpf válido]');
Oi, Estou fazendo testes no XAMPP em máquina local. A implementação do createPaymentRequestLightBox está retornando "MetadataItem Value is required".
Segue o mesmo código que peguei no exemplo:
<?php /**
*/
require_once "../vendor/autoload.php";
\PagSeguro\Library::initialize(); \PagSeguro\Library::cmsVersion()->setName("Nome")->setRelease("1.0.0"); \PagSeguro\Library::moduleVersion()->setName("Nome")->setRelease("1.0.0");
?> <!DOCTYPE html>
getEnvironment() == "sandbox") : ?><?php
$payment = new \PagSeguro\Domains\Requests\Payment();
$payment->addItems()->withParameters( '0001', 'Notebook prata', 2, 130.00 );
$payment->addItems()->withParameters( '0002', 'Notebook preto', 2, 430.00 );
$payment->setCurrency("BRL"); $payment->setReference("LIBPHP000001");
$payment->setRedirectUrl("http://www.fvweb.com.br");
// Set your customer information. $payment->setSender()->setName('João Comprador'); $payment->setSender()->setEmail('email@comprador.com.br'); $payment->setSender()->setPhone()->withParameters( 11, 56273440 ); $payment->setSender()->setDocument()->withParameters( 'CPF', '[aqui coloquei meu cpf]' );
$payment->setShipping()->setAddress()->withParameters( 'Av. Brig. Faria Lima', '1384', 'Jardim Paulistano', '01452002', 'São Paulo', 'SP', 'BRA', 'apto. 114' ); $payment->setShipping()->setCost()->withParameters(20.00); $payment->setShipping()->setType()->withParameters(\PagSeguro\Enum\Shipping\Type::SEDEX);
//Add metadata items $payment->addMetadata()->withParameters('PASSENGER_CPF', 'insira um numero de CPF valido'); $payment->addMetadata()->withParameters('GAME_NAME', 'DOTA'); $payment->addMetadata()->withParameters('PASSENGER_PASSPORT', '23456', 1);
//Add items by parameter $payment->addParameter()->withParameters('itemId', '0003')->index(3); $payment->addParameter()->withParameters('itemDescription', 'Notebook Rosa')->index(3); $payment->addParameter()->withParameters('itemQuantity', '1')->index(3); $payment->addParameter()->withParameters('itemAmount', '201.40')->index(3);
//Add items by parameter using an array $payment->addParameter()->withArray(['notificationURL', '[aqui coloquei a minha url de notificação]']);
$payment->setRedirectUrl(""); $payment->setNotificationUrl("[aqui coloquei a minha url de notificação]");
try { $onlyCheckoutCode = true; $result = $payment->register( \PagSeguro\Configuration\Configure::getAccountCredentials(), $onlyCheckoutCode );
} catch (Exception $e) { die($e->getMessage()); }