http://api.sigecloud.com.br/request/pedidos/salvarefaturar
Este método destinasse ao cadastro e alteração de pedidos no Maincloud sendo que devem ser feitas requisições POST através do modulo do cliente para a API de Integração.
Cabe ressaltar que a alteração é realiza quando é enviada para a API de Integração uma requisição contendo um pedido com o código já existente em um pedido cadastrado no Maincloud, sendo que o pedido existente no Maincloud é sobrescrito pelo novo pedido enviado a API de Integração.
Para o cadastro/alteração de pedidos, deve ser enviado pelo modulo do cliente no Body da requisição a seguinte entidade no formato json:
| Elemento | Tipo | Descrição |
|---|---|---|
| Codigo | int | Código do pedido a ser assumido pelo sistema |
| OrigemVenda | string | Origem da Venda |
| Deposito | string | Nome do depósito do qual os produtos da venda serão retirados |
| StatusSistema | string | Status padrão do sistema para os pedidos sendo que devem ser respeitadas as seguintes opções: Orçamento, Pedido, Pedido Não Faturado, Pedido Faturado, Pedido Cancelado |
| Status | string | Status definido pelo usuário |
| Categoria | string | Categoria da venda. Deve estar previamente cadastrada no sistema. |
| Validade | date | Data de validade do Pedido/Orçamento |
| Empresa | string | Nome da empresa responsável pela venda |
| Cliente | string | Nome do cliente relacionado a venda |
| ClienteCNPJ | string | CNPJ do cliente relacionado a venda e utilizado como atributo de vinculo com clientes e fornecedores já cadastrados no sistema |
| Vendedor | string | Nome do vendedor relacionado a venda |
| LancarComissaoVendedor | boolean | Indica se a comissão do vendedor, referente aos itens do pedido será lançada no financeiro ao salvar o pedido |
| PlanoDeConta | string | Plano de conta da venda, sendo que deve estar previamente cadastrado no sistema |
| FormaPagamento | string | Forma de Pagamento escolhida, deve estar previamente cadastrada |
| NumeroParcelas | string | Número de Parcelas em que será efetuado o pagamento |
| Transportadora | string | Nome da responsável pelo transporte da mercadoria |
| FreteFormaEnvio | string | Formato de Envio do Produto |
| DataEnvio | date | Data de envio da mercadoria |
| PrevisaoEntrega | date | Data de previsão de entrega |
| DataPostagem | date | Data de postagem |
| Enviado | boolean | Informa se a mercadoria foi enviada |
| ValorFrete | double | Valor do Frete |
| FreteContaEmitente | boolena | Indica se o frete é por conta do emitente |
| CodigoRastreio | string | Código de rastreamento da entrega |
| ValorSeguro | double | Valor do Seguro |
| Descricao | string | Descrição e observações relacionados ao pedido |
| OutrasDespesas | double | Outras despesas que devem ser acrescentadas ao valor final do pedido |
| TransacaoCartao | string | Código da Transação de Cartão (TID) |
| ValorFinal | double | Valor Final do Pedido |
| Finalizado | boolean | Pedido finalizado não pode sofrer alterações |
| Lancado | boolean | Pedido já lançado pelo financeiro |
| NumeroNFe | string | Número da NFe do Pedido, caso esta já foi gerada fora do Maincloud |
| Municipio | string | DADOS DE ENTREGA: nome do município |
| CodigoMunicipio | string | DADOS DE ENTREGA: código do município. |
| Pais | string | DADOS DE ENTREGA: Nome do pais. |
| CEP | striing | DADOS DE ENTREGA: CEP 99999-999. |
| UF | string | DADOS DE ENTREGA:UF |
| UFCodigo | string | DADOS DE ENTREGA: Código UF |
| Bairro | string | DADOS DE ENTREGA: Nome do Bairro |
| Logradouro | string | DADOS DE ENTREGA: Logradouro |
| LogradouroNumero | string | DADOS DE ENTREGA: Número do Logradouro |
| LogradouroComplemento | string | DADOS DE ENTREGA: Complemento |
| Items | PedidoProduto[] | Array do tipo PedidoProduto contendo os produtos do pedido |
| Banco(1) | string | Banco do Lançamento escolhido, deve estar previamente cadastrado |
| Data (1) | date | Data do Lançamento |
| Pagamentos(1) | PedidoPagamentos[] | Array do tipo PedidoPagamentos contendos os pagamentos do pedido |
(1) - Campos adicionados a Entidade Pedido do método /pedidos/salvar
| Elemento | Tipo | Descrição |
|---|---|---|
| Codigo | string | Código do produto |
| Unidade | string | Unidade de Medida do produto |
| Descricao | string | Descrição do produto |
| Quantidade | double | Quantidade de itens do produto |
| ValorUnitario | double | Valor de Venda Unitário |
| ValorFrete | double | Valor de frete do item |
| DescontoUnitario | double | Desconto de Venda Unitário |
| DescontoTotal | double | Desconto Total |
| ComissaoVendedor | double | O percentual de comissão que o vendedor recebe sobre este item |
| PesoKG | double | Peso em KG |
| Comprimento | double | Comprimento |
| Altura | double | Altura do item |
| Largura | double | Largura do item |
| FreteGratis | boolean | Indica se o frete é grátis |
| ValorUnitarioFrete | double | Valor Unitário do Frete |
| PrazoEntregaFrete | int | Prazo de Entrega em dias |
(2) Entidade PedidoProduto idêntica a de /pedidos/salvar
| Campo | Tipo | Descrição |
|---|---|---|
| FormaPagamento | string | Forma de Pagamento escolhida, deve estar previamente cadastrada |
| DescricaoPagamento | string | Descrição do pagamento |
| ValorPagamento | double | Valor do pagamento |
| BandeiraCartao | string |
A bandeira do cartão dentre as opções Visa = 01, Mastercard = 02, American Express = 03, Sorocred = 04, Outros = 99 |
| NumeroTerminal | string | Número do Terminal/Caixa |
| DataTransacao | date | Data da Transação do Cartão |
| CredenciadoraCartao | string | Credenciadora do Cartão escolhida, deve estar previamente cadastrada |
| CredenciadoraCNPJ | string | CNPJ da Credenciadora do Cartão escolhida |
| CV_NSU | string | CV_NSU da Transação |
| CondicaoPagamento | int | A condição de Pagamento dentre as opções A Vista = 0 e A Prazo = 1 |
| Parcelas | int | A quantidade de parcelas |
| PeriodoParcelas | int | O intervalo de dias entre as parcelas |
| Adiantamento | double | Valor do Adiantamento |
Exemplos do retorno das entidades do serviço em JSON
A API de Integração realiza diversas validações nos dados recebidos, sendo que caso os dados enviados não sejam validados, a API de Integração irá retornar uma mensagem informando o não sucesso na operação de modificação/inclusão com a descrição da falha de validação ocorrida. Abaixo o exemplo da estrutura em JSON:
{"Codigo":169,
"OrigemVenda":"Venda Direta",
"Deposito":"Tupandi",
"StatusSistema":"Orçamento",
"Status":"",
"Categoria":"",
"Validade":"2013-11-14T00:00:00-02:00",
"Empresa":"Creative Mais",
"Cliente":"Venda do Diego",
"Vendedor":"login@vendedor.com",
"LancarComissaoVendedor":true,
"PlanoDeConta":"",
"FormaPagamento":"",
"NumeroParcelas":0,
"Transportadora":"",
"DataEnvio":"0001-01-01T00:00:00-02:00",
"Enviado":false,
"ValorFrete":0.0,
"FreteContaEmitente":false,
"ValorSeguro":0.0,
"Descricao":"",
"OutrasDespesas":0.0,
"ValorFinal":1532.65,
"Finalizado":false,
"Lancado":false,
"NumeroNFe":"1234",
"Municipio":"Bom Princípio",
"CodigoMunicipio":"4302352",
"Pais":"Brasil",
"CEP":"95765000",
"UF":"RS",
"UFCodigo":"43",
"Bairro":"",
"Logradouro":"Rua Mambuí",
"LogradouroNumero":"951",
"LogradouroComplemento":"Casa ",
"Items":[
{"Codigo":"41", "Unidade":"",
"Descricao":"SERVIÇOS GERAIS",
"Quantidade":1.0,
"ValorUnitario":10.0,
"DescontoUnitario":0.0,
"ValorTotal":10.0},
{"Codigo":"12",
"Unidade":"",
"Descricao":"WEB CAN",
"Quantidade":15.0,
"ValorUnitario":101.51,
"DescontoUnitario":0.0,
"ComissaoVendedor":10.0,
"ValorTotal":1522.65}],
"Banco":"Santander",
"Data":"0001-01-01T00:00:00",
"Pagamentos":[
{"FormaPagamento":"Cartão de Crédito",
"DescricaoPagamento":"Pagamento",
"ValorPagamento":100.0,
"BandeiraCartao":"99",
"NumeroTerminal":"1",
"DataTransacao":"2015-08-12T19:14:38-02:00",
"CredenciadoraCartao":"",
"CredenciadoraCNPJ":"",
"CV_NSU":"",
"CondicaoPagamento":1,
"Parcelas":0,
"PeriodoParcelas":0
"Adiantamento":10.0}]}