Movimentação avulsa de estoque
O objetivo deste serviço é desativar um equipamento que está alocado em comodato em um cliente. Abaixo, segue exemplo do json de envio:
{
"inventory_movement":
{
"product_id": 1254,
"operation_type": "input",
"location_id_source": 10,
"quantity": 2,
"unit_cost": 10.5,
"invoice_series": 157,
"invoice_number": 12546587
"serial":
[
{
"value": "CFD21458",
"complementary_fields":
[
{
"name": "modelo",
"value": "B1"
},
{
"name": "cor",
"value": "azul"
}
]
},
{
"value": "CFD31648",
"complementary_fields":
[
{
"name": "modelo",
"value": "B1"
},
{
"name": "cor",
"value": "preto"
}
]
}
],
"datetime": "2019-10-05 08:00:00"
}
}
Detalhamento dos campos
ID | Campo | Obrigatório | Pai | Tipo | Observações |
A01 | Dados do produto | Sim | Raiz | - | |
A02 | product_id | Sim | A01 | Número |
Código interno do produto (id). |
A03 | operation_type | Sim | A01 | Texto |
Tipo de operação de estoque. Valores permitidos:
|
A04 | location_id_source | Sim* | A01 | Número |
Para movimentações de entrada: código da locação de estoque onde o produto irá entrar. Para movimentações de saída: código da locação de estoque de onde o produto está saindo. Este campo é obrigatório nos seguintes casos:
|
A05 | location_id_destination | Não* | A01 | Número |
Código da locação de estoque onde o produto irá entrar. Este campo só deve ser informado nas operações de estoque de transferência de locação. |
A06 | quantity | Sim | A01 | Decimal (15.2) |
Quantidade do produto que será movimentado. Valores aceitos:
|
A07 | unit_cost | Sim* | A01 | Decimal (15.2) |
Este campo é obrigatório nas operações abaixo e possui o seguinte conteúdo:
|
A08 | invoice_series | Não | A01 | Número |
Número da série referente à nota fiscal da movimentação. Não pode ser informado nas operações abaixo:
|
A09 | invoice_number | Não | A01 | Número |
Número da nota referente à nota fiscal da movimentação. Não pode ser informado nas operações abaixo:
|
A10 | reason | Não* | A01 | Texto |
Contém o motivo do descarte do produto. É obrigatório na operação discard. |
A11 | serial | Sim* | A01 | Lista |
Contém uma lista de seriais que estão sendo movimentados. |
B01 | value | Sim | A11 | Texto |
Serial do produto |
B02 | complementary_fields | Não | A11 | Objeto |
Campo do tipo lista contendo um ou mais dados de campos complementares do serial. |
C01 | name | Sim | B02 | Texto |
Nome do campo complementar, conforme cadastrado no sistema. |
C02 | value | Sim | B02 | Texto |
Valor do campo complementar. |
A12 | datetime | Sim | A01 | Data |
Data e hora da movimentação do produto no formato AAAA-MM-DD HH:II:SS. Atenção: não são permitidas movimentações de estoque com data e hora anteriores a alguma movimentação já existente para o produto. |
A13 | assign_equipment | Não | A01 | Objeto |
Elemento que conterá dados do cliente para alocação do equipamento. Este elemento só pode ser informado na operação sale. |
D01 | customer_id | Sim | A13 | Número |
Código do cliente. |
D02 | contract_id | Sim | A13 | Número |
Número do contrato. |
Mensagem de retorno
Em caso de sucesso, será retornado um json conforme o exemplo abaixo:
{
"status": 1,
"error_code": 0,
"error_description": "",
"result": ["Successfully included move"]
}
Em caso de falha, será retornado um json conforme o exemplo abaixo:
{
"status": 0,
"error_code": 12,
"error_description": "Internal Server Error!",
"result": ""
}