Manage credit notes
Learn how to manage your credit notes.
Overview
There are two ways to create a credit note:
- Create a credit note via API by providing the amount, currency, and other details.
- Upload a credit note in PDF, PNG, or JPEG formats via API.
When a credit note is created from a PDF, PNG, or JPEG file, Monite’s OCR service automatically extracts the credit note information from the file and a new credit note is created with the extracted data fields accordingly. The file property of the credit note contains the file metadata and the link to access the original source file.
Roles and permissions
To create and manage credit notes using an entity user token, this entity user must have a role with the payables
permission.
If a partner-level token is used, no special permissions are needed.
Create a credit note from data
To create a new credit note, call POST /payable_credit_notes
. You can provide the base64-encoded contents of the original invoice file in the field base64_encoded_file
:
Requirements and considerations
- The fields
payable_id
,document_id
,issued_at
, andtotal_amount
are mandatory. - The
issued_at
field cannot be a future date. - The
issued_at
must be after or equal to the payables’sissued_at
. - All the amount fields in the credit notes and line items must be greater than 0, except the
total_amount
field, which is optional. - A credit note cannot be linked to a canceled payable.
Upload files via API
You can upload credit notes in the PDF, PNG, or JPG format to Monite by calling POST /payable_credit_notes/upload_from_file
. The maximum file size is 10 MB:
The successful response contains the credit note ID and other fields:
You will also receive a webhook indicating that this credit note resource has been created:
Note that at this stage the credit note resource is incomplete and waiting for the results of the OCR service, which automatically scans the details from the uploaded credit note and maps the information from the credit note to the corresponding data field in the system. Its status is set as processing
.
To cancel the OCR process, call POST /payable_credit_notes/{id}/cancel_ocr
. The credit note status will be changed to canceled
.
When the OCR scanning is finished (this might take up to 5-7 minutes), you will receive the credit_note.ocr_finished
webhook event.
Change credit note status
You can manually change the status of the credit notes and move them through the lifecycle until their application. See the credit notes lifecycle for more information.
Alternatively, we recommend that you implement approval policies to manage the credit notes transitions.
List all credit notes
To list all credit notes, call GET /payable_credit_notes
. You can sort and filter the results by the amount, status, and other fields. For the full list of available sort and filter parameters, see the GET /payable_credit_notes
endpoint:
The data
array in the response contains a list of related credit notes, if any:
Find all credit notes of a payable
To check if there are credit notes linked to a specific payable, call GET /payable_credit_notes?based_on={payable_id}
:
Update a credit note
Credit notes in the draft
and new
statuses can be updated, for example, to provide additional details or fix the information extracted by OCR. To update a credit note, call PATCH /payable_credit_notes/{payable_credit_notes_id}
with the request body containing the new field values. For example, to update the description
field:
Delete a credit note
Credit notes in any status can be deleted by calling the DELETE /payable_credit_notes/{payable_credit_notes_id}
endpoint:
This action is irreversible, and once deleted, credit notes can no longer be accessed.