insert

Disponível na versão: 1.13+

Insere uma nova nota de encomenda de fornecedor.

Os campos financial_discount e o discount de cada elemento do conjunto products, caso sejam preenchidos, devem ser valores em percentagem, de 0 a 100.

O campo exemption_reason de cada elemento do conjunto products torna-se obrigatório caso o conjuntotaxes esteja vazio, não contenha elementos cujo imposto correspondente seja do tipo IVA ou que estes tenham valor zero.

O campo value de cada elemento dos conjuntos taxes existentes torna-se obrigatório caso o imposto definido por tax_id seja um imposto cujo valor seja definido por artigo.

Todos os campos *_id apenas aceitam valores válidos. Esses valores podem ser consultados nos respectivos endpoints da API.

O campo status aceita os valores 0 (por defeito, caso não seja preenchido) e 1, que correspondem, respectivamente, aos estados de rascunho e fechado.

Para criar documentos noutras moedas, os campos exchange_currency_id e exchange_rate devem ser preenchidos. O campo exchange_currency_id deverá ser preenchido com um id de moeda válido, que pode consultar no endpoint currencies/getAll. O campo exchange_rate deverá ser preenchido com o valor monetário apropriado. Pode consultar as tabelas de conversão que actualizamos todos os dias, no endpoint currencyExchange/getAll.

Caso o artigo que está a tentar inserir seja um artigo composto, é preciso enviar a estrutura child_productsde cada artigo, que corresponde aos artigos"filhos". Se não enviar esta estrutura, o artigo "pai" é adicionado ao documento como um artigo normal. É preciso ter em atenção o seguinte:

 - Os artigos "filhos" deverão estar já configurados no moloni como sendo "filhos" do artigo composto. É obrigatório que os "filhos" pertençam ao "pai", mas não é obrigatório enviar todos os "filhos" de um "pai". 

 - O campo price do artigo "pai" deverá corresponder à soma dos preços dos artigos "filhos", por exemplo, um artigo filho com um price de 1.5 e qty de 2, terá que ter um "pai" com um price de 3 e qty de 1, ou price de 1.5 e qty de 2, de forma a que os totais sejam iguais.

 - Caso o artigo "pai" tenha descontos, os mesmos deverão ser aplicados aos "filhos", e não ao "pai". Se enviar descontos diferentes para cada "filho", no artigo "pai" é calculada a percentagem de desconto correcta sobre o total. 

 - As taxes deverão ser aplicadas aos artigos "filhos", sendo que depois serão replicadas no artigo "pai". 

Ao contrário do que sucede na área de cliente, ao inserir uma nota de encomenda de fornecedor, os preços de compra para esse fornecedor não serão atualizados nos artigos. Deverá efetuar as alterações relevantes no respetivo endpoint, products/update.

Pedido

https://api.moloni.pt/v1/supplierPurchaseOrder/insert/?access_token=[current_access_token]

Parâmetros
company_id int

Obrigatório

date date

Obrigatório

expiration_date date

Obrigatório

document_set_id int

Obrigatório

supplier_id int

Obrigatório

our_reference string
your_reference string
financial_discount float
products array

Obrigatório

product_id int

Obrigatório

name string

Obrigatório

summary string
qty float

Obrigatório

price float

Obrigatório

discount float
order int
exemption_reason string
taxes array
tax_id int

Obrigatório

value float
order int
cumulative int
child_products array
product_id int

Obrigatório

name string

Obrigatório

summary string
qty float

Obrigatório

price float

Obrigatório

discount float
deduction_id int
order int
origin_id int
exemption_reason string
warehouse_id int
properties array
title string
value string
taxes array
tax_id int

Obrigatório

value float
order int
cumulative int
exchange_currency_id int
exchange_rate float
notes string
status int
Nota
- O parâmetro qty tem como default 50 e o offset 0, sendo que o máximo qty é 50;
- Campos de preenchimento facultativo, significa que podem ser uma string vazia ou zero, dependendo do respectivo tipo.
Resposta
{
	valid: 1,
	document_id: int
}
Lista de erros possíveis
Sempre que existir um erro no preenchimento dos campos, será devolvido via JSON o objeto com os erros indexado pela ordem dos campos.
As mensagens de erro, são devolvidas sob a forma de códigos, e para perceber quais os erros disponíveis e como interpretar as mensagens recebidas, consulte esta ligação.

© 2024 Moloni

Software de faturação online

Certificado pela Autoridade Tributária N.º 2860