Jump to content

Messhias

Members
  • Content count

    1
  • Joined

  • Last visited

Community Reputation

0 Comum

About Messhias

  1. Messhias

    Dúvida API CIELO 3.0

    Bom dia galera, Estou com um problema e umas dúvidas sobre a API 3.0 da CIELO, estou tentando fazer uma requisição de venda no ambiente de testes da sandbox e mesmo assim não consigo ter nenhum tipo de retorno. Estou usando o framework codeigniter e to tentando fazer através de uma controller, algo basico e a aplicação ainda está no inicio de seu desenvolvimento. Tentei tanto com PHP como Javascript: Script PHP da controller (na minha tentativa com o PHP) <?php defined('BASEPATH') OR exit('No direct script access allowed'); class Pagamento extends CI_Controller { public function index() { $url = 'https://apiquerysandbox.cieloecommerce.cielo.com.br/1/sales/'; $headers = array( 'MerchantId' => 'XXXXX-XXX-XXX-XXX-XXX', 'MerchantKey' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX', 'Content-Type' => 'Content-Type: application/json', 'RequestId' => rand(10,1000) ); $data = array( "MerchantOrderId"=>rand(0,99999), "Customer"=>array( "Name"=>"Comprador Teste" ), ); print_r($this->curl->submit_data($url,$data,$headers)); } } /* End of file Checkout.php */ /* Location: ./application/controllers/Checkout.php */ Aqui está o script da library que eu criei para ler cURL: <?php defined('BASEPATH') OR exit('No direct script access allowed'); class Curl { private $response; protected $ci; public function __construct() { $this->ci =& get_instance(); } public function submit_data($url = '', $data = array(),$headers = array()){ ini_set('max_execution_time', 300); $ch = curl_init(); $timeout = 500000; curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data,true)); $this->response = curl_exec($ch); curl_close($ch); return $this->response; } public function setResponse($response = ""){ $this->response = $response; } public function getResponse(){ return $this->response; } } /* End of file Curl_library.php */ /* Location: ./application/libraries/Curl_library.php */ Achando que era um possivel problema de implementação minha no PHP eu criei uma uma requisição também com JQuery, porém, não obtive sucesso; Javascript/JQuery: <script type="text/javascript"> $(document).ready(function() { $.ajaxSetup({ beforeSend: function(xhr) { xhr.setRequestHeader("MerchantId", 'XXXXXXX-XXXX-XXXX-XXX-XXXXXXXXXXXXX'); xhr.setRequestHeader('MerchantKey', "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"); xhr.setRequestHeader('X-Requested-With','XMLHttpRequest') } }); $.ajax({ url: 'https://apiquerysandbox.cieloecommerce.cielo.com.br/1/sales/', type: 'POST', dataType: 'json', contentType: 'application/json', crossDomain:false, data: { }, error:function(e,text,xhr) { console.log(e); }, complete:function(e,text,xhr){ console.log(e); } }); }); </script> Link da documentação da API: https://developercielo.github.io/Webservice-3.0/ Link para criação do MerchantID e Key e chave para utilizar o sandbox: https://cadastrosandbox.cieloecommerce.cielo.com.br/ Estou a uns 3 dias encalhado nisso e não to conseguindo entender ainda onde foi que cometi algum erro ou se algo na doc não está claro ou se estou fazendo o procedimento errado. Espero que possam me ajudar. Com o uso da cURL o php me retorna em branco, não tenho retorno de nada. No javascript / jquery meu retorno é apenas "error". Obrigado
×

Important Information

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