Closed Biscuri closed 8 years ago
Vamos verificar e retornaremos com uma posição.
Att.
Isaque de Souza
Em 6 de set de 2016 2:03 PM, "Biscuri" notifications@github.com escreveu:
Estou utilizando sua biblioteca do Laravel para efetuar transações em minha aplicação, e estou com um pequeno problema.
O problema é o seguinte: O CEP que envio para o Pagseguro não está sendo preenchido automaticamente, enquanto que todos os demais campos são preenchidos normalmente (nome, CPF, endereço, etc.).
Estou usando Laravel 5.0, segue o método que envia a requisição do pagamento:
public static function pagamento($input){ try { //trata nome para o Pagseguro não encher a paciência $name = Auth::User()->nome; $name = preg_replace('/\d/', '', $name); $name = preg_replace('/[\n\t\r]/', ' ', $name); $name = preg_replace('/\s(?=\s)/', '', $name); $name = trim($name); $name = explode(' ', $name);
if(count($name) == 1 ) { $name[] = 'dos Santos'; } $name = implode(' ', $name); $data = [ 'items' => [ [ 'id' => '1', 'description' => 'R$' . $input['valor'] . ' em créditos.', 'quantity' => '1', 'amount' => $input['valor'], 'weight' => '0', 'shippingCost' => '0.00', 'width' => '0', 'height' => '0', 'length' => '0', ] ], 'shipping' => [ 'address' => [ 'street' => $input['rua'], 'number' => $input['numero'], 'district' => $input['bairro'], 'postalCode' => str_replace('-', '', $input['cep']), 'city' => $input['cidade'], 'state' => $input['UF'], 'country' => 'BRA', ], 'type' => 3, 'cost' => 0.00, ], 'sender' => [ 'email' => Auth::User()->email, 'name' => $name, 'documents' => [ [ 'number' => str_replace(['.', '-'], '', Auth::User()->cpfcnpj), 'type' => 'CPF' ] ], 'phone' => str_replace(['-', '(', ')'], '', Auth::User()->telefone), 'bornDate' => Auth::User()->datanascimento, ], 'redirectURL' => '(minhaurl)', 'notificationURL' => '(minhaurl)' ]; $pagseguro = new PagSeguro(); $checkout = $pagseguro->checkout()->createFromArray($data); $credentials = $pagseguro->credentials()->get(); $information = $checkout->send($credentials); // Retorna um objeto de laravel\pagseguro\Checkout\Information\Information return $information; } catch (\Exception $e){ throw $e; }
}
O dump da variável checkout me retorna o seguinte:
SimpleCheckout {#236 ▼
currency: "BRL"
items: ItemCollection {#234 ▶}
sender: Sender {#221 ▶}
shipping: Shipping {#235 ▼
address: Address {#227 ▼
postalCode: "44004592"
street: "Rua teste"
number: "123"
complement: null
district: "Teste1"
city: "Teste"
state: "BA"
country: "BRA"
validator: null
}
cost: 0.0
type: 3
validator: null
}
receiver: null
charset: "UTF-8"
extraAmount: null
maxAge: null
maxUses: null
metadata: null
notificationURL: "(minhaurl)"
redirectURL: "(minhaurl)"
reference: null
validator: null
}
Como dá pra perceber, o CEP é enviado ao pagseguro, mas lá ele pede novamente para digitar o CEP, não sei a razão. Estou testando no sandbox, com um e-mail não cadastrado (123456789@sandbox.pagseguro.com.br).
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/michaeldouglas/laravel-pagseguro/issues/77, or mute the thread https://github.com/notifications/unsubscribe-auth/AC7J58TcJPco19y9ixg9Ylq2DFTrNKF4ks5qnZz7gaJpZM4J2EAN .
Possível réplica de: #73
Verifiquei a #73, mas não vi a resposta do problema lá. Também me parece ser diferente, pois é apenas o CEP que está com problema, o restante todo passa.
Pra mim ele passava tudo menos o CEP e o telefone.
Ele está recebendo o telefone aqui, só o CEP que ele não recebe. Então é do próprio Pagseguro não receber o CEP, não tem jeito mesmo? Ou tem como passar o CEP?
Vamos verificar o problema. Por enquanto ninguém mais teve esse problema. Há algumas divergências entre os ambientes de produção e sandbox do próprio PagSeguro, verificaremos se é uma delas.
att.
Isaque de Souza
2016-09-06 15:12 GMT-03:00 Biscuri notifications@github.com:
Ele está recebendo o telefone aqui, só o CEP que ele não recebe. Então é do próprio Pagseguro não receber o CEP, não tem jeito mesmo? Ou tem como passar o CEP?
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/michaeldouglas/laravel-pagseguro/issues/77#issuecomment-245039409, or mute the thread https://github.com/notifications/unsubscribe-auth/AC7J563p3IKGyJacLk7AxPFc_sFEs-Lgks5qna0ngaJpZM4J2EAN .
Isaque de Souza
@Biscuri
Desculpe a demora, Corrigi esse problema no último commit. No sandbox consegui verificar. To sem conta vendedor de produção, mas acredito que esteja ok também. Qualquer coisa notifica ai blz? Vlw.!
Estou utilizando sua biblioteca do Laravel para efetuar transações em minha aplicação, e estou com um pequeno problema.
O problema é o seguinte: O CEP que envio para o Pagseguro não está sendo preenchido automaticamente, enquanto que todos os demais campos são preenchidos normalmente (nome, CPF, endereço, etc.).
Estou usando Laravel 5.0, segue o método que envia a requisição do pagamento:
`public static function pagamento($input){ try { //trata nome para o Pagseguro não encher a paciência $name = Auth::User()->nome; $name = preg_replace('/\d/', '', $name); $name = preg_replace('/[\n\t\r]/', ' ', $name); $name = preg_replace('/\s(?=\s)/', '', $name); $name = trim($name); $name = explode(' ', $name);
O dump da variável checkout me retorna o seguinte:
SimpleCheckout {#236 ▼
currency: "BRL"
items: ItemCollection {#234 ▶}
sender: Sender {#221 ▶}
shipping: Shipping {#235 ▼
}
receiver: null
charset: "UTF-8"
extraAmount: null
maxAge: null
maxUses: null
metadata: null
notificationURL: "(minhaurl)"
redirectURL: "(minhaurl)"
reference: null
validator: null
}
Como dá pra perceber, o CEP é enviado ao pagseguro, mas lá ele pede novamente para digitar o CEP, não sei a razão. Estou testando no sandbox, com um e-mail não cadastrado (123456789@sandbox.pagseguro.com.br).