Endpoint
Parâmetros
| Parâmetro | Tipo | Ocorrência | Descrição |
|---|---|---|---|
| token | string | obrigatório | Chave gerada para identificar sua empresa |
| contato | object | obrigatório | Estrutura de dados do contato conforme layout |
| formato | string | obrigatório | Formato do retorno. Use json |
Estrutura do objeto contato
Campos principais
| Campo | Tipo | Tamanho | Ocorrência | Descrição |
|---|---|---|---|---|
| sequencia | int | - | obrigatório | Número sequencial para identificar cada contato |
| codigo | string | 30 | opcional | Código do contato |
| nome | string | 50 | obrigatório | Nome ou razão social |
| fantasia | string | 60 | opcional | Nome fantasia |
| tipo_pessoa | string | 1 | opcional | F (Física), J (Jurídica), E (Estrangeiro) |
| cpf_cnpj | string | 18 | opcional | CPF ou CNPJ |
| situacao | string | 1 | obrigatório | A (Ativo), I (Inativo), S (Sem movimento) |
Informações pessoais
| Campo | Tipo | Tamanho | Ocorrência | Descrição |
|---|---|---|---|---|
| ie | string | 18 | opcional | Inscrição estadual |
| rg | string | 10 | opcional | RG |
| im | string | 18 | opcional | Inscrição municipal |
| estadoCivil | int | - | opcional | Código do estado civil (1) |
| profissao | string | 50 | opcional | Profissão (1) |
| sexo | string | 10 | opcional | ”masculino” ou “feminino” (1) |
| data_nascimento | string | 10 | opcional | Data de nascimento no formato dd/mm/aaaa (1) (2) |
| naturalidade | string | 40 | opcional | Naturalidade (1) |
| nome_pai | string | 100 | opcional | Nome do pai (1) |
| cpf_pai | string | 18 | opcional | CPF do pai (1) |
| nome_mae | string | 100 | opcional | Nome da mãe (1) |
| cpf_mae | string | 18 | opcional | CPF da mãe (1) |
Endereço principal
| Campo | Tipo | Tamanho | Ocorrência | Descrição |
|---|---|---|---|---|
| endereco | string | 50 | opcional | Logradouro |
| numero | string | 10 | opcional | Número do endereço |
| complemento | string | 50 | opcional | Complemento do endereço |
| bairro | string | 30 | opcional | Bairro |
| cep | string | 10 | opcional | CEP |
| cidade | string | 30 | opcional | Cidade conforme tabela de municípios (3) |
| uf | string | 30 | opcional | Unidade Federativa |
| pais | string | 50 | opcional | País conforme tabela de países (3) |
Endereço de cobrança
| Campo | Tipo | Tamanho | Ocorrência | Descrição |
|---|---|---|---|---|
| endereco_cobranca | string | 50 | opcional | Logradouro de cobrança (4) |
| numero_cobranca | string | 10 | opcional | Número do endereço de cobrança (4) |
| complemento_cobranca | string | 50 | opcional | Complemento do endereço de cobrança (4) |
| bairro_cobranca | string | 30 | opcional | Bairro de cobrança (4) |
| cep_cobranca | string | 10 | opcional | CEP de cobrança (4) |
| cidade_cobranca | string | 30 | opcional | Cidade de cobrança (4) |
| uf_cobranca | string | 30 | opcional | UF de cobrança (4) |
Informações de contato
| Campo | Tipo | Tamanho | Ocorrência | Descrição |
|---|---|---|---|---|
| contatos | string | 100 | opcional | Pessoas de contato |
| fone | string | 40 | opcional | Telefone |
| fax | string | 40 | opcional | Fax |
| celular | string | 40 | opcional | Telefone celular |
| string | 50 | opcional | ||
| email_nfe | string | 50 | opcional | E-mail para recebimento de NFe |
| site | string | 40 | opcional | Website |
Informações comerciais
| Campo | Tipo | Tamanho | Ocorrência | Descrição |
|---|---|---|---|---|
| crt | int | 1 | opcional | Código de regime tributário: 0 (Não informado), 1 (Simples Nacional), 3 (Normal) (5) |
| limite_credito | decimal | - | opcional | Limite de crédito (usar ”.” como separador decimal) (6) |
| contribuinte | string | 1 | opcional | 0 (Não informado), 1 (Contribuinte ICMS), 2 (Isento), 9 (Não contribuinte) |
| id_vendedor | int | - | opcional | ID do vendedor (7) |
| nome_vendedor | string | 50 | opcional | Nome do vendedor (8) |
| obs | string | 200 | opcional | Observações gerais |
Listas de tipos e pessoas
| Campo | Tipo | Ocorrência | Descrição |
|---|---|---|---|
| tipos_contato | array | opcional | Lista de tipos de contato |
| tipos_contato[].tipo | string | condicional | Descrição do tipo (ex: “Cliente”, “Fornecedor”) |
| pessoas_contato | array | opcional | Lista de pessoas de contato |
| pessoas_contato[].nome | string | condicional | Nome da pessoa de contato (max 50) |
| pessoas_contato[].telefone | string | condicional | Telefone (max 30) |
| pessoas_contato[].ramal | string | condicional | Ramal (max 20) |
| pessoas_contato[].email | string | condicional | E-mail (max 50) |
| pessoas_contato[].departamento | string | condicional | Departamento (max 50) |
(1) Campos de informações pessoais se aplicam apenas a pessoas físicas (tipo_pessoa = “F”) (2) Data de nascimento deve estar no formato dd/mm/aaaa. Exemplo: “01/01/2012” (3) Os valores de cidade e país devem estar de acordo com as tabelas oficiais de municípios e países (4) Campos de endereço de cobrança são opcionais e devem ser informados apenas se diferentes do endereço principal (5) O campo CRT é desconsiderado para pessoas físicas (tipo_pessoa = “F”) (6) Valores decimais devem usar ”.” como separador decimal. Exemplo: “5.25” (7) O ID do vendedor informado deve existir no sistema, caso contrário retornará erro (8) O campo nome_vendedor é desconsiderado se id_vendedor for informado
Retorno
| Campo | Tipo | Ocorrência | Descrição |
|---|---|---|---|
| retorno.status_processamento | int | obrigatório | Código de status do processamento |
| retorno.status | string | obrigatório | ”OK” ou “Erro” |
| retorno.codigo_erro | int | condicional | Código do erro conforme tabela da API (9) |
| retorno.erros | array | condicional | Lista de erros ocorridos (9) |
| retorno.erros[].erro | string | condicional | Descrição do erro |
| retorno.registros | array | condicional | Lista de resultados para cada contato enviado (10) |
| registros[].registro.sequencia | int | condicional | Número sequencial do contato |
| registros[].registro.status | string | condicional | ”OK” ou “Erro” |
| registros[].registro.codigo_erro | int | condicional | Código do erro específico do registro |
| registros[].registro.id | int | condicional | ID do contato criado na Olist (11) |
| registros[].registro.erros | array | condicional | Erros específicos do registro |
| registros[].registro.erros[].erro | string | condicional | Descrição do erro |
(9) Retornado quando status = “Erro” (10) Retornado quando o processamento gera resultados individuais por registro (11) Retornado quando o registro foi incluído com sucesso
Exemplo de chamada
Exemplo de retorno
Sucesso
Erro - Token inválido
Erro - Dados inválidos
Observações
- É possível incluir múltiplos contatos em uma única chamada através do array
contatos - O campo
sequenciaé obrigatório para identificar cada contato no retorno - Consulte a tabela de cidades para valores válidos de município
- Consulte a tabela de códigos de erro para interpretação dos erros
- Campos de pessoa física são aplicáveis apenas quando tipo_pessoa = “F”
