NF-e
Register correction letter
Registers a correction letter (CC-e) on an authorized invoice; the protocol is returned synchronously.
/openapi/v2/empresas/{empresaId}/nf-e/{nfeId}/carta-correcaoRequires the token, timestamp and sign signature headers, see Authentication.
Registers a correction letter (event 110110) on an authorized invoice. The call is synchronous: HTTP 200 is returned only after SEFAZ registers the event, and the response body is the result; no callback involved. Authentication errors (10009xxx) are listed under Authentication.
Parameters
Path parameters
empresaIdstringrequiredCompany identifier returned by Register company.
Example:1934811222334455nfeIdstringrequiredThe
idsent at issuance.Example:NFe-000014553
Request body
correcaostringrequiredCorrection text, 15–1000 characters after sanitising (accents stripped, printable ASCII kept; colons, parentheses and percent signs survive). Only information that does not affect tax amounts may be corrected (remarks, nature-of-operation wording, transport data). Amounts, quantities, unit prices, tax bases, tax amounts, party documents and dates must go through cancellation + reissue or a return invoice; SEFAZ does not validate semantics and the issuer is liable.
Example:Correcao do transportador: item (2) sem alteracao de valor
Responses
Event registered with SEFAZ.
chaveAcessostringAccess key of the corrected NF-e.
tipostringFixed
CartaCorrecao.codigostringFixed
110110.sequenciaintegerSequence number
nSeqof this letter.statusstringFixed
Registrada.motivostringSEFAZ status code and description.
protocolostringEvent protocol number.
datastringSEFAZ registration time, ISO-8601 UTC.
correcaostringSanitised text actually sent to SEFAZ.
linkXmlstringDownload link of the
procEventoNFereceipt XML, see File download.linkDaccestringDownload link of the DACCE (correction-letter PDF, see File download); empty when the rendering service is unavailable, retry through the list endpoint.
Errors
| Code | HTTP | |
|---|---|---|
| NFe0001 | 404 | The |
| 10003000 | 404 |
|
| 10004012 | 400 | Invoice not in authorized status. Query to confirm the status. |
| 10004015 | 400 | 20 letters already registered on the invoice. No further letters; cancel + reissue or return invoice. |
| 10004016 | 400 | Refused by SEFAZ (status code and reason attached). Act on the SEFAZ reason. |
| 10004017 | 400 | Fewer than 15 characters after sanitising. Rewrite in Portuguese / ASCII. |
| 10004019 | 400 | Outside the 720-hour window after authorization. Cancel + reissue or return invoice only. |
| 10001001 | 400 | Request field validation failed (one entry per field). Fix per |
Rules
- Only
Autorizadainvoices (10004012otherwise). - Within 720 hours of authorization (
10004019). - At most 20 letters per invoice (
10004015); sequence numbers are assigned by the platform and each letter supersedes the previous one on the SEFAZ side while history is fully kept. - Text shorter than 15 characters after sanitising:
10004017. - SEFAZ refusal:
10004016with the SEFAZ status code and reason. - There is still no
invoice.cce.registeredcallback; rely on the synchronous response or List correction letters.
