Recibos de Venda
Last updated
Last updated
{
"date": "2020-06-01", // [OPCIONAL] Data do recibo; por omissão, a data do pedido
"payment_mechanism": "MO", // [OPCIONAL] Por omissão, "MO". Meios de pagamento aceites: "MO": Numerário, "CH": Cheque, "DC": Cartão de débito, "CC": Cartão de crédito, "TR": Transferência bancária, "DDA": Débito direto autorizado, "MB": Referências de pagamento Multibanco.
// [OPCIONAL] Recursos associados ao recibo. Caso nenhum seja indicado, os restantes devem atributos devem ser omitidos. Caso contrário, todos os atributos devem ser preenchidos.
"commercial_document_series_id": 1, // [OBRIGATÓRIO] Série de recibos associada. Não precisa de ser indicada; por omissão o recibo é criado na série por omissão associada ao tipo de documento. Vd. NOTA 1
"bank_account_id": 2, // [OBRIGATÓRIO] Conta bancária da empresa para onde o recebimento é feito. Usado apenas quando o meio de pagamento é "DC", "CC", "TR" ou "DDA", e apenas se for necessário indicar uma conta bancária específica. Vd. NOTA 2
"cash_account_id": 3, // [OBRIGATÓRIO] Conta de caixa da empresa para onde o recebimento é feito. Usado apenas quando o meio de pagamento é "MO", e apenas se for necessário indicar uma conta de caixa específica. Vd. NOTA 3
"lines": [
{
"receivable_type": "Document", // [OBRIGATÓRIO]
"receivable_id": "<id do documento a liquidar>", // [OBRIGATÓRIO] Vd. NOTA 1
"received_value": 50, // [OBRIGATÓRIO] Valor total a receber (não é necessário receber a totalidade do documento, pode fazer-se um recebimento parcial)
"settlement_percentage": "3" // [OPCIONAL] Desconto de pagamento, em percentagem; são suportados descontos compostos, como "3+5"
}
]
}
No pedido acima, o <access_token> corresponde ao token de acesso válido devolvido pelo serviço de OAuth
É na linha do recibo que se indica qual o documento (FT, ou outro) que foi pago.
Se necessário, pode criar-se mais do que uma linha (e nesse caso o recibo é emitido de uma só vez para todos os documentos referenciados)
O seguinte pedido pode ser realizado, após a criação do recibo, e permite alterar informações sobre o mesmo. A estrutura do payload é a mesma do POST de criação. Neste, deverá enviar no id do pedido o id do recibo a alterar. Os atributos enviados no body irão substituir os guardados no momento, e cada linha enviada dentro de lines irá substituir os dados guardados na linha com id especificado em receipt_line_id
{
"date": "2024-02-24",
"document_no": "RC 2023/1",
"document_series_id": 66,
"payment_mechanism": "MO",
"gross_total": 10.69,
"net_total": 9.25,
"third_party_type": null,
"third_party_id": null,
"check_number": null,
"currency_conversion_rate": 1,
"internal_observations": "",
"observations": "",
"standalone": true,
"saft_import_id": null,
"deleted": true,
"manual_registration_type": null,
"manual_registration_series": null,
"manual_registration_number": null,
"created_at": "2024-02-23 11:49:25.209661",
"updated_at": "2024-02-27 11:19:15.761393",
"id": 2,
"cash_account_id": 2,
"company_id": 800000046,
"country_id": 1,
"currency_id": 1,
"customer_id": 57,
"user_id": 800000863,
"lines": [
{
"receipt_id": 2,
"receivable_type": "Document",
"receivable_id": 12,
"received_value": 10.69,
"settlement_percentage": 0,
"cashed_vat_amount": null,
"gross_total": 11.38,
"settlement_amount": 0.0,
"net_total": 9.25,
"retention_total": 0.69,
"id": 2
}
]
}
Caso pretenda adicionar novas linhas ao recibo, após a sua criação, pode utilizar a seguinte rota, que utiliza o mesmo payload das lines do pedido POST de criação.
No pedido acima, o <access_token> corresponde ao token de acesso válido devolvido pelo serviço de OAuth, e o <payload JSON> deverá ter o seguinte formato
{
"data": {
"type": "commercial_sales_receipt_lines", // [OBRIGATÓRIO]
"attributes": {
"receivable_type": "Document", // [OBRIGATÓRIO]
"receivable_id": "<id do documento a liquidar>", // [OBRIGATÓRIO] Vd. Nota 1
"received_value": 50, // [OBRIGATÓRIO] Valor total a receber (não é necessário receber a totalidade do documento, pode fazer-se um recebimento parcial)
"settlement_percentage": "3" // [OPCIONAL] Desconto de pagamento, em percentagem; são suportados descontos compostos, como "3+5"
"receipt_id" : "<id do recibo>" // [OBRIGATÓRIO] Recibo a que esta linha pertence. Este "id" é o devolvido na resposta ao pedido de criação do cabeçalho, ver acima
}
}
}
É na linha do recibo que se indica qual o documento (FT, ou outro) que foi pago.
Se necessário, pode criar-se mais do que uma linha (e nesse caso o recibo é emitido de uma só vez para todos os documentos referenciados)
Do mesmo modo, caso pretenda remover linhas de um recibo, pode utilizar a seguinte rota, onde apenas tem de indicar o id da linha a remover, no path.
DELETE
/v1/commercial_sales_receipt_lines/{id}
id*
Integer
id of the receipt line to delete
Por fim, se pretender obter informações sobre um dado recibo pode utilizar a seguinte rota, onde deverá especificar o id do documento a analisar no path.
GET
/v1/commercial_sales_receipts/{id}
id*
integer
id of the receipt to get the information of
Criar Cabeçalho Recibo de Venda
2
800000046
1
2024-02-23 11:49:25.209661
1
1
57
2024-02-24
true
10.69
9.25
MO
true
2024-02-28 14:04:52.678033
800000863
POST /api/v1/commercial_sales_receipts HTTP/1.1
Host: {{base_url}}
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 789
{
"cash_account_id": 2,
"check_number": null,
"company_id": 800000046,
"country_id": 1,
"created_at": "2024-02-23 11:49:25.209661",
"currency_conversion_rate": 1,
"currency_id": 1,
"customer_id": 57,
"date": "2024-02-24",
"deleted": true,
"gross_total": 10.69,
"internal_observations": "",
"lines": [
{
"cashed_vat_amount": null,
"gross_total": 11.38,
"net_total": 9.25,
"receivable_id": 12,
"receivable_type": "Document",
"received_value": 10.69,
"retention_total": 0.69,
"settlement_amount": 0,
"settlement_percentage": 0
}
],
"manual_registration_number": null,
"manual_registration_series": null,
"manual_registration_type": null,
"net_total": 9.25,
"observations": "",
"payment_mechanism": "MO",
"saft_import_id": null,
"standalone": true,
"third_party_id": null,
"third_party_type": null,
"updated_at": "2024-02-28 14:04:52.678033",
"user_id": 800000863
}
No content
Adicionar Linha a Recibo de Venda
POST /api/commercial_sales_receipt_lines HTTP/1.1
Host: {{base_url}}
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 285
{
"data": {
"attributes": {
"cashed_vat_amount": null,
"gross_total": 10.69,
"net_total": 9.27,
"receipt_id": 13,
"receivable_id": 12,
"receivable_type": "Document",
"received_value": 10.69,
"retention_total": 0.72,
"settlement_amount": 0,
"settlement_percentage": 0
},
"type": "commercial_sales_receipt_lines"
}
}
No content
Atualizar Recibo de Venda
2
800000046
1
2024-02-23 11:49:25.209661
1
1
57
2024-02-24
true
RC 2023/1
66
10.69
2
9.25
MO
true
2024-02-27 11:19:15.761393
800000863
PATCH /api/v1/commercial_sales_receipts/{salesReceiptId} HTTP/1.1
Host: {{base_url}}
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 868
{
"cash_account_id": 2,
"check_number": null,
"company_id": 800000046,
"country_id": 1,
"created_at": "2024-02-23 11:49:25.209661",
"currency_conversion_rate": 1,
"currency_id": 1,
"customer_id": 57,
"date": "2024-02-24",
"deleted": true,
"document_no": "RC 2023/1",
"document_series_id": 66,
"gross_total": 10.69,
"id": 2,
"internal_observations": "",
"lines": [
{
"cashed_vat_amount": null,
"gross_total": 11.38,
"id": 2,
"net_total": 9.25,
"receipt_id": 2,
"receivable_id": 12,
"receivable_type": "Document",
"received_value": 10.69,
"retention_total": 0.69,
"settlement_amount": 0,
"settlement_percentage": 0
}
],
"manual_registration_number": null,
"manual_registration_series": null,
"manual_registration_type": null,
"net_total": 9.25,
"observations": "",
"payment_mechanism": "MO",
"saft_import_id": null,
"standalone": true,
"third_party_id": null,
"third_party_type": null,
"updated_at": "2024-02-27 11:19:15.761393",
"user_id": 800000863
}
No content
Adicionar Linha a Recibo de Venda
POST /api/commercial_sales_receipt_lines HTTP/1.1
Host: {{base_url}}
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 285
{
"data": {
"attributes": {
"cashed_vat_amount": null,
"gross_total": 10.69,
"net_total": 9.27,
"receipt_id": 13,
"receivable_id": 12,
"receivable_type": "Document",
"received_value": 10.69,
"retention_total": 0.72,
"settlement_amount": 0,
"settlement_percentage": 0
},
"type": "commercial_sales_receipt_lines"
}
}
No content