A API V3 JÁ ESTÁ DISPONÍVEL
As integrações API v2 que já estão configuradas, seguirão funcionando temporariamente. |
Insere um contato
Insere um contato no sistema.
curl |
curl -X POST "https://bling.com.br/Api/v2/contato/" |
PHP |
$url = 'https://bling.com.br/Api/v2/contato/'; $xml = '>...'; $posts = array ( "apikey" => "{apikey}", "xml" => rawurlencode($xml) ); $retorno = executeInsertContact($url, $posts); echo $retorno; function executeInsertContact($url, $data){ $curl_handle = curl_init(); curl_setopt($curl_handle, CURLOPT_URL, $url); curl_setopt($curl_handle, CURLOPT_POST, count($data)); curl_setopt($curl_handle, CURLOPT_POSTFIELDS, $data); curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, TRUE); $response = curl_exec($curl_handle); curl_close($curl_handle); return $response; } |
C# |
public static void ExecuteInsertContact() { HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://bling.com.br/Api/v2/contato/"); ASCIIEncoding encoding = new ASCIIEncoding(); string postData = "apikey={apiKey}&xml={xml_do_contato}"; byte[] data = encoding.GetBytes(postData); request.Method = "POST"; request.ContentType = "application/x-www-form-urlencoded"; request.ContentLength = data.Length; using (Stream stream = request.GetRequestStream()) stream.Write(data,0,data.Length); HttpWebResponse response = (HttpWebResponse)request.GetResponse(); string responseString = new StreamReader(response.GetResponseStream()).ReadToEnd(); Console.Out.WriteLine("Response Body: \r\n {0}", responseString); } |
Parâmetro | Descrição | Tipo |
apikey |
apikey gerada no sistema | string |
xml |
xml do contato | string |
Para o parâmetro xml
, é necessário seguir um padrão definido na tabela a seguir.
Tabela de campos do XML
Grupo | Campo | Informação | Tipo | Padrão | Opcional | Nota |
---|---|---|---|---|---|---|
raiz | contato | Obrigatório | ||||
contato | nome | Nome do contato | STRING(120) | Obrigatório | ||
contato | fantasia | Nome fantasia do contato | STRING(30) | Opcional | ||
contato | tipoPessoa | Tipo do contato | STRING(1) | F, J ou E | Obrigatório | 1 |
contato | contribuinte | 1 - Contribuinte do ICMS, 2 - Contribuinte isento do ICMS ou 9 - Não contribuinte | INTEGER(1) | 1, 2 ou 9 | Obrigatório | 6 |
contato | cpf_cnpj | CPF ou CNPJ do contato | STRING(18) | 99999999999999 | Obrigatório | 2, 6 |
contato | ie_rg | RG ou Inscrição Estadual do cliente | STRING(18) | 9999999999 | Opcional | 3 |
contato | endereco | Endereço do Cliente | STRING(50) | Opcional | ||
contato | numero | Número do endereço do cliente | STRING(10) | Opcional | ||
contato | complemento | Complemento do endereço do cliente | STRING(100) | Opcional | ||
contato | bairro | Bairro do cliente | STRING(30) | Opcional | ||
contato | cep | CEP do cliente | STRING(10) | 99.999-999 | Opcional | |
contato | cidade | Cidade do cliente | STRING(30) | Opcional | ||
contato | uf | Sigla do estado do cliente | STRING(2) | RS, SP, RJ... | Opcional | |
contato | fone | Telefone do cliente | STRING(40) | Opcional | ||
contato | celular | Celular do cliente | STRING(40) | Opcional | ||
contato | E-mail do cliente | STRING(100) | Opcional | |||
contato | emailNfe | E-mail para envio da NFe | STRING(80) | Opcional | 7 | |
contato | informacaoContato | Informações do contato | STRING(100) | Opcional | ||
contato | limiteCredito | Limite de credito do cliente | DECIMAL(11,2) | Opcional | ||
contato | paisOrigem | País de origem do cliente estrangeiro | STRING(50) | Opcional | 5 | |
contato | codigo | Código do contato | STRING(15) | Opcional | ||
contato | site | site do contato | STRING(40) | Opcional | ||
contato | obs | Observações | TEXT | Opcional | ||
contato | tipos_contatos | |||||
tipos_contatos | tipo_contato |
|
||||
tipo_contato | descricao | Nome do tipo do contato | STRING(50) | Opcional |
Notas:
- "F" caracteriza pessoa física; "J" caracteriza pessoa jurídica e "E" caracteriza pessoa estrangeira;
- Caso seja pessoa física, é obrigatório informar o CPF; caso seja pessoa jurídica é obrigatório informar o CNPJ;
- Caso seja pessoa jurídica é obrigatório informar a Inscrição Estadual; Para contribuintes do ICMS é obrigatório o preenchimento; Para contribuintes isentos do ICMS é necessário informar o valor ISENTO na tag ie_rg.
- Em caso de cadastro com CNPJ/CPF duplicados, acesse Cadastros > Clientes e Fornecedores > busque o contato pelo CNPJ/CPF e exclua ou remova a informação duplicada.
- Caso seja pessoa estrangeira, pode-se informar o país de origem através da tag "paisOrigem";
- Campo não é obrigatório caso seja pessoa estrangeira.
- Deve ser um E-mail válido com comprimento máximo de 60 caracteres para a NF-e e NFC-e e para a NFS-e de 80 caracteres.
Exemplo de XML
<?xml version="1.0" encoding="UTF-8"?>
<contato>
<nome>Contato Teste</nome>
<fantasia>CT</fantasia>
<tipoPessoa>F</tipoPessoa>
<contribuinte>9</contribuinte>
<cpf_cnpj>999.999.999-99</cpf_cnpj>
<ie_rg>999/9999999</ie_rg>
<endereco>Rua Visconde de São Gabriel</endereco>
<numero>123</numero>
<complemento>Sala 123</complemento>
<bairro>Centro</bairro>
<cep>95.700-000</cep>
<cidade>Bento Gonçalves</cidade>
<uf>RS</uf>
<fone>(99) 9999-9999</fone>
<celular>(99) 99999-9999</celular>
<email>teste@mail.com.br</email>
<emailNfe>testeNfe@mail.com.br</emailNfe>
<informacaoContato>Informações adicionais do contato</informacaoContato>
<limiteCredito>9999.99</limiteCredito>
<tipos_contatos>
<tipo_contato>
<descricao>Transportador</descricao>
</tipo_contato>
<tipo_contato>
<descricao>Fornecedor</descricao>
</tipo_contato>
</tipos_contatos>
</contato>
Mensagens de erros específicos
Código | Mensagem |
---|---|
60 | O contato não pode ser cadastrado sem nome |
61 | O campo tipoPessoa deve ser informado |
62 | O campo cpf_cnpj deve ser informado |
63 | O campo contribuinte deve ser informado |
64 | CPF/CNPJ já cadastrado |
65 | O campo tipoPessoa possui valor invalido |
66 | O tipo do contato informado e invalido |
67 | O contato informado não foi encontrado |
68 | O campo cpf_cnpj é invalido |
69 | O pais informado é invalido |
70 | Contato já cadastrado |
71 | Para contribuintes do ICMS é obrigatória a informação da tag ie_rg |
72 | Para contribuintes isentos do ICMS é necessário informar o valor ISENTO na tag ie_rg |
73 | Para não contribuintes do ICMS o valor ISENTO não é permitido na tag ie_rg |
74 | O campo informacaoContato possui valor invalido |
75 | O campo emailNfe possui valor invalido |
Retorno
Em caso de sucesso, retornará o contato cadastrado, no mesmo modelo do exemplo a seguir. Caso contrário, retornará um erro.
A resposta será no formato especificado na URL (XML ou JSON).
Exemplo de retorno
{ "retorno": { "contatos": [ { "contato": { "id": 13, "nome": "Teste", "cpf_cnpj": "50000000001", } } ] } }