Realizando cadastro de um novo cliente¶
Para fazer um cadastro de um novo cliente deve ser usado o serviço a seguir:
POST "api/Partnes"
Com os seguintes dados sendo passados para o serviço, (Lembre-se que para alguns campos, pode-se usar o padrão descrito na seção ‘Obtento os valores padrões para um novo cliente‘):
{
//Não é obrigatório quando se tratar de Novo Cliente
"cardCode": "String",
//Razão Social
"cardFName": "String",
//Nome Fantasia
"cardName": "String",
//Tipo de Cliente: 0 - Lead , 1 - Cliente (Novos Sempre serão leads)
"cardType": 0,
//Código da Transportadora - Os códigos possíveis para esses campos devem ser capturados em /api/carriers
"carrierCode": "String",
//Celular
"cellular": "String",
//Tipo de Cliente: 0 - Pessoa Fisica / 1 - Jurídica
"cmpPrivate": 0,
//Observações
"comments": "String",
//Desconto Especial - Somente se o usuário logado tiver acesso.
"discCustom": 0,
//Desconto do Parceiro - Somente se o usuário logado tiver acesso.
"discount": 0,
//E-Mail do Cliente é obrigatório
"e_Mail": "String",
//Caso tenha sido feito a consulta na SEFAZ em
// /api/partner/GetByTaxId/{CNPJ}?sefaz=true&uf={Estado}& deve passar true nesse campo
"fromSefaz": false,
//Grupo do Cliente : Capturar os grupos disponíveis em /api/partnes/new conforme descrito na seção 1.1
"groupCode": 0,
//Condição de Pagamento : Capturar os grupos disponíveis em /api/partnes/new conforme descrito na seção 1.1
"groupNum": 0,
// 0 para CIF e 1 para FOB, : Existe um valor padrão apra esse campo que pode ser capturado em Capturar os grupos disponíveis em /api/partnes/new conforme descrito na seção 1.1
"incotermsId": 0,
// Site do Cliente
"intrntSite": "String",
// Taxa de Juros
"intrstRate": 0,
// Lista de preço, caso tenha acesso pode ser capturado através de /api/partnes/new ou deixe em branco para o SalesOne preenche-lo com o valor da resposta da query
"listNum": 0,
// Observações curtas
"notes": "String",
// Lista de endereços do cliente, pode se repetir várias vezes, pode-se capturar o endereço atravéz de /api/address/ByZipCode/{CEP}
"partnerAddresses": [
{
//Tipo de Endereço - 0 Endereço de Cobrança. 1 - Endereço de Faturamento
"addressType": 0,
//Tipo do Logradouro
"addrType": "String",
//Nome do Endereço - Alias para o endereço.: Explo : "Matriz"
"address": "String",
//Bairro
"block": "String",
//Complemento
"building": "String",
//Código do Cliente Caso o cliente já exista
"cardCode": "String",
//País
"country": "String",
//Município
"county": "String",
//Detalhes do Município
"countyName": {
"absId": 0,
"country": "String",
"ibgeCode": "String",
"name": "String",
"state": "String"
},
//Geolocalização do Endereço
"glbLocNum": "String",
//Estado
"state": "String",
//Endereço
"street": "String",
//Número do Endereço
"streetNo": "String",
//CNPJ do Endereço Caso for depósito
"taxId0": "String",
//CEP
"zipCode": "String"
}
],
//Empresas que o cliente pode fazer pedido
"partnerCompanies": [
{
//Id da Empresa
"companyId": 0
}
],
//Contato dos parceiros
"partnerContacts": [
{
//Endereço
"address": "String",
//Telefone Celular
"cellolar": "String",
//E-mail
"e_Mail": "String",
//Primeiro Nome
"firstName": "String",
//Último Nome
"lastName": "String",
//Nome do Mail
"middleName": "String",
//Nome do Contato
"name": "String",
//Posição (Pode ser um valor novo ou as sugestão apresentada na seção 2.2)
"position": "String",
//Telefone
"tel1": "String",
//Telefone
"tel2": "String",
//Titulo (Sr(a), Dr(a), Pr.. etc)
"title": "String"
}
],
//Forma de Pagamento do Parceiro
"partnerPayMethods": [
{
"cardCode": "String",
"pymCode": "String"
}
],
//Telefone
"phone1": "String",
//Telefone
"phone2": "String",
//Forma de Pagamento Padrão (Deve ser uma das presentes em partnerPayMethods)
"pymCode": "String",
//Todos os campos que qryGroup são uma referência ao campo partnerProperties o id é o valor presente depois de qryGroup, por exemplo: O id da primeira característica é 1 , então o campo que deve ser preenchido com "Y" é qryGroup1... se caso não desejar habilite essa característica e preencha com "N" em qryGroup1 e assim por diante:
"qryGroup1": "Y or N",
"qryGroup10": "Y or N",
"qryGroup11": "Y or N",
"qryGroup12": "Y or N",
"qryGroup13": "Y or N",
"qryGroup14": "Y or N",
"qryGroup15": "Y or N",
"qryGroup16": "Y or N",
"qryGroup17": "Y or N",
"qryGroup18": "Y or N",
"qryGroup19": "Y or N",
"qryGroup2": "Y or N",
"qryGroup20": "Y or N",
"qryGroup21": "Y or N",
"qryGroup22": "Y or N",
"qryGroup23": "Y or N",
"qryGroup24": "Y or N",
"qryGroup25": "Y or N",
"qryGroup26": "Y or N",
"qryGroup27": "Y or N",
"qryGroup28": "Y or N",
"qryGroup29": "Y or N",
"qryGroup3": "Y or N",
"qryGroup30": "Y or N",
"qryGroup4": "Y or N",
"qryGroup5": "Y or N",
"qryGroup6": "Y or N",
"qryGroup7": "Y or N",
"qryGroup8": "Y or N",
"qryGroup9": "Y or N",
//Endereço Padrão de Entrega, deve ser um valor presente em partnerAddress.address
"shipToDef": "String",
//Código do Vendedor, pode-se capturar o valor padrão presente em
"slpCode": 0,
//Endereço Padrão de Entrega, deve ser um valor presente em partnerAddress.address
"billToDef": "String",
//CNPJ do Parceiro
"taxId0": "String",
//Inscrição Estadual, quando não houver IE deve ser preenchido com o valor "Isento"
"taxId1": "String",
//CPF, quando se tratar de pessoa física
"taxId4": "String",
}
O resultado dessa chamada será o retorno do cadastro completo do cliente caso obtiver sucesso na requisição (Status 201) ou a mensagem de erro que será reportado na propriedade responseStatus (Status 40x) conforme reportado an seção ‘Caminho do SalesOne e status das requisições‘.