PDV - Pesquisar Pedidos API 2.0
Serviço destinado a fazer consulta de pedidos.
Parâmetros do serviço
| Elemento | Tipo | Ocorrência | Descrição | 
|---|---|---|---|
| token | string | obrigatório | Chave gerada para identificar a empresa | 
| pagina (1) | int | opcional | Número da página | 
(1) - Número da página de pedidos que deseja obter (por padrão são listados 100 registros por página). O valor padrão é 1.
Retorno do serviço
| Elemento | Tipo | Tamanho | Ocorrência | Descrição | 
|---|---|---|---|---|
| retorno | object | - | obrigatório | Elemento raiz do retorno | 
| retorno.status_processamento | int | - | obrigatório | Conforme tabela "Status de Processamento" | 
| retorno.status | string | - | obrigatório | Contém o status do retorno “OK” ou “Erro”. Para o caso de conter erros estes serão descritos abaixo | 
| retorno.codigo_erro (1) | int | - | condicional | Conforme tabela "Códigos de erro" | 
| retorno.erros[] (1) | list | [0..n] | condicional | Contém a lista dos erros encontrados. | 
| retorno.erros[ ].erro | string | - | condicional | Mensagem contendo a descrição do erro | 
| retorno.pagina (2) | int | - | condicional | Número da página que está sendo retornada | 
| retorno.numero_paginas (2) | int | - | condicional | Número de paginas do retorno | 
| retorno.pedidos[] (2) | list | [1..n] | condicional | Lista de resultados da pesquisa | 
| retorno.pedidos[].id | int | - | obrigatório | Número de identificação do pedido no Tiny | 
| retorno.pedidos[].numero | int | - | obrigatório | Número do pedido | 
| retorno.pedidos[].data (3) | date | - | obrigatório | Data do pedido | 
| retorno.pedidos[].frete | decimal | - | obrigatório | Valor do frete | 
| retorno.pedidos[].desconto | decimal | - | obrigatório | Valor do desconto | 
| retorno.pedidos[].valorICMSSubst | decimal | - | obrigatório | Valor total do ICMS ST | 
| retorno.pedidos[].valorIPI | decimal | - | obrigatório | Valor total do IPI | 
| retorno.pedidos[].totalProdutos | decimal | - | obrigatório | Valor total dos produtos | 
| retorno.pedidos[].totalVenda | decimal | - | obrigatório | Valor total do pedido | 
| retorno.pedidos[].fretePorConta | string | - | obrigatório | Remetente (R), destinatário (D), terceiros (T) ou sem frete (S) | 
| retorno.pedidos[].pesoLiquido | decimal | - | obrigatório | Peso líquido | 
| retorno.pedidos[].pesoBruto | decimal | - | obrigatório | Peso bruto | 
| retorno.pedidos[].observacoes | string | - | obrigatório | Observações gerais | 
| retorno.pedidos[].formaPagamento | string | - | obrigatório | Código conforme tabela de Formas de pagamento | 
| retorno.pedidos[].situacao | string | - | obrigatório | Situação no Tiny | 
| retorno.pedidos[].contato | object | - | obrigatório | Informações sobre o contato | 
| retorno.pedidos[].contato.nome | string | 50 | obrigatório | Nome do contato | 
| retorno.pedidos[].contato.fantasia | string | 60 | obrigatório | Nome fantasia | 
| retorno.pedidos[].contato.codigo | string | 30 | obrigatório | Código | 
| retorno.pedidos[].contato.tipo | string | - | obrigatório | Física (F), Jurídica (J), Extrangeiro (E) ou Extrangeiro no Brasil (X) | 
| retorno.pedidos[].contato.cpfCnpj | string | - | obrigatório | CPF / CNPJ, conforme tipo da pessoa | 
| retorno.pedidos[].contato.endereco | string | - | obrigatório | Endereço | 
| retorno.pedidos[].contato.enderecoNro | string | - | obrigatório | Número | 
| retorno.pedidos[].contato.complemento | string | - | obrigatório | Complemento | 
| retorno.pedidos[].contato.bairro | string | - | obrigatório | Bairro | 
| retorno.pedidos[].contato.cidade | string | - | obrigatório | Cidade | 
| retorno.pedidos[].contato.uf | string | - | obrigatório | Sigla do estado | 
| retorno.pedidos[].contato.cep | string | - | obrigatório | CEP | 
| retorno.pedidos[].contato.fone | string | - | obrigatório | Número do telefone | 
| retorno.pedidos[].contato.celular | string | - | obrigatório | Número do celular | 
| retorno.pedidos[].contato.email | string | - | obrigatório | E-mail de contato | 
| retorno.pedidos[].contato.inscricaoEstadual | string | - | obrigatório | Inscrição estadual | 
| retorno.pedidos[].contato.indIEDest | string | - | obrigatório | Indicador da IE do Destinatário | 
| retorno.pedidos[].enderecoEntrega | object | - | obrigatório | Informações sobre o endereço de entrega | 
| retorno.pedidos[].enderecoEntrega.nome | string | 50 | obrigatório | Nome do contato para entrega | 
| retorno.pedidos[].enderecoEntrega.tipo | string | - | obrigatório | Física (F), Jurídica (J), Extrangeiro (E) ou Extrangeiro no Brasil (X) | 
| retorno.pedidos[].enderecoEntrega.cpfCnpj | string | - | obrigatório | CPF / CNPJ, conforme tipo da pessoa | 
| retorno.pedidos[].enderecoEntrega.endereco | string | - | obrigatório | Endereço | 
| retorno.pedidos[].enderecoEntrega.enderecoNro | string | - | obrigatório | Número | 
| retorno.pedidos[].enderecoEntrega.complemento | string | - | obrigatório | Complemento | 
| retorno.pedidos[].enderecoEntrega.bairro | string | - | obrigatório | Bairro | 
| retorno.pedidos[].enderecoEntrega.cidade | string | - | obrigatório | Cidade | 
| retorno.pedidos[].enderecoEntrega.uf | string | - | obrigatório | Sigla do estado | 
| retorno.pedidos[].enderecoEntrega.cep | string | - | obrigatório | CEP | 
| retorno.pedidos[].enderecoEntrega.fone | string | - | obrigatório | Número do telefone | 
| retorno.pedidos[].itens[] | list | [0..n] | obrigatório | Lista de itens do pedido | 
| retorno.pedidos[].itens[].id | int | - | obrigatório | Número de identificação do item no Tiny | 
| retorno.pedidos[].itens[].idProduto | int | - | obrigatório | Número de identificação do produto no Tiny | 
| retorno.pedidos[].itens[].descricao | string | - | obrigatório | Descrição do produto | 
| retorno.pedidos[].itens[].codigo | string | - | obrigatório | Código do produto | 
| retorno.pedidos[].itens[].valor | decimal | - | obrigatório | Valor do item | 
| retorno.pedidos[].itens[].quantidade | decimal | - | obrigatório | Quantidade | 
| retorno.pedidos[].itens[].desconto | decimal | - | obrigatório | Valor do desconto | 
| retorno.pedidos[].itens[].pesoLiquido | decimal | - | obrigatório | Peso líquido | 
| retorno.pedidos[].itens[].pesoBruto | decimal | - | obrigatório | Peso bruto | 
| retorno.pedidos[].itens[].unidade | string | - | obrigatório | Unidade | 
| retorno.pedidos[].itens[].tipo | string | - | obrigatório | Produto (P) ou serviço (S) | 
| retorno.pedidos[].itens[].ncm | string | - | obrigatório | Nomenclatura comun do Mercosul | 
| retorno.pedidos[].itens[].origem | string | - | obrigatório | Origem do produto conforme ICMS | 
| retorno.pedidos[].itens[].cest | string | - | obrigatório | Código especificador da substituição tributária | 
| retorno.pedidos[].itens[].gtin | string | - | obrigatório | GTIN / EAN do produto | 
| retorno.pedidos[].itens[].gtinTributavel | string | - | obrigatório | GTIN / EAN tributável do produto | 
| retorno.pedidos[].parcelas[] | list | [0..n] | obrigatório | Lista de parcelas do pedido | 
| retorno.pedidos[].parcelas[].formaPagamento | string | - | obrigatório | Código conforme tabela de Formas de pagamento | 
| retorno.pedidos[].parcelas[].dataVencimento (3) | date | - | obrigatório | Data de vencimento da parcela | 
| retorno.pedidos[].parcelas[].valor | decimal | - | obrigatório | Valor da parcela | 
| retorno.pedidos[].parcelas[].tPag | string | - | obrigatório | Código tPag utilizado no XML da nota fiscal | 
			(1) - Somente estará presente no retorno caso o elemento "status" seja "Erro".
			(2) - Somente estará presente no retorno caso o elemento "status" seja "OK".
			(3) - Estes campos utilizam o formato dd/mm/yyyy, exemplo "dd/mm/yyyy".
		
Exemplos de chamada da API
$url = 'https://api.tiny.com.br/api2/pdv.pedidos.php';
$token = 'coloque aqui a sua chave da api';
$pesquisa = 'xxxxx';
$data = "token=$token";
enviarREST($url, $data);
function enviarREST($url, $data, $optional_headers = null) {
	$params = array('http' => array(
		'method' => 'POST',
	    'content' => $data
	));
	if ($optional_headers !== null) {
		$params['http']['header'] = $optional_headers;
	}
	$ctx = stream_context_create($params);
	$fp = @fopen($url, 'rb', false, $ctx);
	if (!$fp) {
		throw new Exception("Problema com $url, $php_errormsg");
	}
	$response = @stream_get_contents($fp);
	if ($response === false) {
		throw new Exception("Problema obtendo retorno de $url, $php_errormsg");
	}
	return $response;
}