Edit and resubmit a sales credit note
Updates and resubmits a specific sales credit note after fixing validation issues.
Rate limit
60 requests/minute per authenticated account. See Rate limiting for response headers (X-RateLimit-*) and retry guidance.
Path parameters
Request body
Resubmit requires the complete sales credit note JSON — send the full document payload again, not a partial patch. Include every root-level field you would send on create; corrected values replace the stored document. Omitting fields may clear or reset them.
Request fields
Fields in the request JSON. Rows are ordered Required → Conditional → Optional. The Required column shows whether each field is always needed, sometimes needed, or optional. Object fields have dedicated sections further down this page.
Do not send: accounting_supplier_party — the API sets the supplier from {profileId}. Do not send calculated or system fields (id, org_id, document_sequence, totals, meta_info, etc.) — those appear in the response only.
Conditional field rules
Meta info object
The meta_info field is an object with the following attributes:
Peppol status object
The meta_info.peppol_status field is an object with the following attributes:
Status values
VALIDATION_FAILED applies only to overall_status.
Client processing guidance:
Treat
overall_statusas the primary state for workflow decisions.Use
participant_statusandfta_statusas stage-specific diagnostics for UI and support logs.If
overall_statusisPENDING, keep the credit note in a processing state and poll/re-fetch later.If
overall_statusisAPPROVED, mark the Peppol flow as successful and continue normal downstream actions.If
overall_statusisREJECTEDorVALIDATION_FAILED, stop submission-dependent actions and surface the failure to users.When
validation_resultsis not empty, display user-friendly error summaries fromtext, and retainflag,reasonCode,location, andtestfor troubleshooting.participant_statusorfta_statuscan benullin early/failed validation stages; do not treatnullalone as success or failure.
Example `meta_info` values
Typical meta_info.peppol_status shapes:
APPROVED
{
"meta_info": {
"peppol_status": {
"participant_status": "APPROVED",
"fta_status": "APPROVED",
"overall_status": "APPROVED",
"validation_results": []
}
}
}REJECTED
{
"meta_info": {
"peppol_status": {
"participant_status": "REJECTED",
"fta_status": "APPROVED",
"overall_status": "REJECTED",
"validation_results": []
}
}
}VALIDATION_FAILED
VALIDATION_FAILED applies only to overall_status. participant_status and fta_status can be null.
{
"meta_info": {
"peppol_status": {
"participant_status": null,
"fta_status": null,
"overall_status": "VALIDATION_FAILED",
"validation_results": [
{
"flag": "fatal",
"reasonCode": "IBR-128-AE",
"text": "Country subentity must be a valid UAE subdivision code",
"location": "/Invoice/cac:AccountingCustomerParty/cac:Party/cac:PostalAddress/cbc:CountrySubentity",
"test": "normalize-space(.) = 'AUH' or normalize-space(.) = 'DXB' or normalize-space(.) = 'SHJ' or normalize-space(.) = 'UAQ' or normalize-space(.) = 'FUJ' or normalize-space(.) = 'AJM' or normalize-space(.) = 'RAK'"
}
]
}
}
}Resubmit condition
Resubmit is allowed only when:
meta_info.peppol_status.overall_status = VALIDATION_FAILED
Attachments
Each attachments item requires file_name, file_type, and Base64 file_content. On resubmit:
Omit
attachmentsto keep the existing attachment set unchanged.Send
attachmentsto replace the full set (client uploads are re-persisted).
The response attachments array includes id, file_name, and file_type only. The create-only 8MB payload limit does not apply to this PUT endpoint.
Error responses
{
"errors": {
"document_status": "document status is still pending state you cannot resubmit"
}
}{
"errors": {
"message": "Business profile not found with id: {business_profile_id}"
}
}