Jump to content

Search the Community

Showing results for tags 'expresscheckout'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Q&A Desenvolvimento
    • Perguntas e respostas rápidas
  • Desenvolvimento e Banco de Dados
    • HTML e CSS
    • Java
    • Javascript
    • .NET
    • PHP
    • Python
    • Ruby
    • Mobile
    • Ambientes de Desenvolvimento
    • Arquitetura e Métodos Ágeis
    • Banco de Dados
    • DevOps
    • Desenvolvimento de Games
    • E-Commerce e Pagamentos Online
    • SEO e Otimizações
    • WordPress
    • Algoritmos & Outras Tecnologias
  • Design e Produto
    • Fotografia
    • Photoshop
    • Design de interfaces e UX
    • Edição/Produção de Vídeos
    • Marketing Online
    • Desenho, Ilustração e 3D
  • Entretenimento e uso pessoal
    • Geral
    • Segurança & Malwares
    • Gadgets e wearable
    • Softwares e Apps
    • Entretenimento

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Google+


Hangouts


Skype


Twitter


deviantART


Github


Flickr


LinkedIn


Pinterest


Facebook


Site Pessoal


Localização


Interesses

Found 1 result

  1. João Assef

    PayPal não Finaliza a Transação

    Bom dia, Estou desenvolvendo um sistema e tentando fazer integração com Paypal, feito a integração, nada de erros aparentemente o pagamento conclui normalmente. Quando eu entro na conta do PayPal tanto de quem fez a compra ou da conta setada na API nada aparece e também não desconta nada do cartão de créditos. Não da erros o ACK retorna sucesso, faz o redirecionamento para página de retorno mas é como se não tivesse feito nada. Alguém ja passou por isso e pode me ajudar? Segue os códigos: sendNvpRequest.php <?php /** * Envia uma requisição NVP para uma API PayPal. * * @param array $requestNvp Define os campos da requisição. * @param boolean $sandbox Define se a requisição será feita no sandbox ou no * ambiente de produção. * * @return array Campos retornados pela operação da API. O array de retorno poderá * ser vazio, caso a operação não seja bem sucedida. Nesse caso, os * logs de erro deverão ser verificados. */ function sendNvpRequest(array $requestNvp, $sandbox = false) { //Endpoint da API $apiEndpoint = 'https://api-3t.' . ($sandbox? 'sandbox.': null); $apiEndpoint .= 'paypal.com/nvp'; //Executando a operação $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $apiEndpoint); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($requestNvp)); $response = urldecode(curl_exec($curl)); curl_close($curl); //Tratando a resposta $responseNvp = array(); if (preg_match_all('/(?<name>[^\=]+)\=(?<value>[^&]+)&?/', $response, $matches)) { foreach ($matches['name'] as $offset => $name) { $responseNvp[$name] = $matches['value'][$offset]; } } //Verificando se deu tudo certo e, caso algum erro tenha ocorrido, //gravamos um log para depuração. if (isset($responseNvp['ACK']) && $responseNvp['ACK'] != 'Success') { for ($i = 0; isset($responseNvp['L_ERRORCODE' . $i]); ++$i) { $message = sprintf("PayPal NVP %s[%d]: %s\n", $responseNvp['L_SEVERITYCODE' . $i], $responseNvp['L_ERRORCODE' . $i], $responseNvp['L_LONGMESSAGE' . $i]); error_log($message); } }else{ //sucesso } return $responseNvp; } setExpressCheckout.php <?php //Incluindo o arquivo que contém a função sendNvpRequest require 'sendNvpRequest.php'; //configuração require 'configuracao.php'; //Campos da requisição da operação SetExpressCheckout, como ilustrado acima. $requestNvp = array( 'USER' => $user, 'PWD' => $pswd, 'SIGNATURE' => $signature, 'VERSION' => '108.0', 'METHOD'=> 'SetExpressCheckout', 'PAYMENTREQUEST_0_PAYMENTACTION' => 'SALE', 'PAYMENTREQUEST_0_AMT' => '15.00', 'PAYMENTREQUEST_0_CURRENCYCODE' => 'BRL', 'PAYMENTREQUEST_0_ITEMAMT' => '15.00', 'PAYMENTREQUEST_0_INVNUM' => '1', 'L_PAYMENTREQUEST_0_NAME0' => 'Produto teste', 'L_PAYMENTREQUEST_0_DESC0' => 'teste teste', 'L_PAYMENTREQUEST_0_AMT0' => '15.00', 'L_PAYMENTREQUEST_0_QTY0' => '1', 'L_PAYMENTREQUEST_0_ITEMAMT' => '15.00', 'RETURNURL' => 'https://meusite.com.br/retorno.php', 'CANCELURL' => 'https://meusite.com.br/cancelar.php', 'BUTTONSOURCE' => 'EMPRESA-X' ); //Envia a requisição e obtém a resposta da PayPal $responseNvp = sendNvpRequest($requestNvp, $sandbox); //Se a operação tiver sido bem sucedida, redirecionamos o cliente para o //ambiente de pagamento. if (isset($responseNvp['ACK']) && $responseNvp['ACK'] == 'Success') { $query = array( 'cmd' => '_express-checkout', 'token' => $responseNvp['TOKEN'] ); $redirectURL = sprintf('%s?%s', $paypalURL, http_build_query($query)); header('Location: ' . $redirectURL); } else { //Opz, alguma coisa deu errada. //Verifique os logs de erro para depuração. } Obrigado
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.