Tutorials · February 5, 2026 · By João Pereira, Founder, Build Up Labs · Updated August 28, 2026 · 8 min

Stripe Credit Notes: How to Manage Refunds

How to reconcile Stripe refunds with Portuguese credit notes, including partial refunds, disputes, and the link to the original invoice.

A Stripe refund returns money, but it neither creates nor replaces a Portuguese credit note. If a fiscal invoice has already been issued and the transaction amount decreases, the linked rectification must be assessed and documented. The treatment depends on the reason, amount, and available evidence.

Is a Stripe refund a credit note?

No. A refund is a financial movement that returns some or all of a payment to the customer. A credit note is a rectifying fiscal document. They can be part of the same process, but they have different purposes, identifiers, and timing.

Stripe Billing also has an object called a credit note. That object reduces the amount due on an open Stripe invoice or assigns a credit, refund, or out-of-band amount to an invoice that has already been paid. It remains a Stripe billing object, not a Portuguese fiscal credit note issued by certified invoicing software.

RecordPurposeDoes it replace a Portuguese NC?
Stripe refundReturns money associated with a paymentNo
Stripe Billing credit noteCorrects the balance of an invoice in StripeNo
Portuguese credit noteRectifies a fiscal invoice that has already been issuedIt is the relevant fiscal document

When is a credit note required in Portugal?

Article 29(7) of the Portuguese VAT Code requires a rectifying document when the taxable amount of a transaction or the corresponding tax is changed for any reason, including an inaccuracy. Article 78 covers, among other situations, the cancellation or reduction of a transaction, returned goods, and rebates or discounts.

Therefore, when a Portuguese invoice already exists and the refund represents a genuine reduction in the invoiced transaction, the correction must be reflected in a rectifying document, normally a credit note identified by document type NC. The original invoice does not disappear. It remains in the history, and the NC links the initial value to the correction.

The existence of a refund alone does not reveal the tax treatment. It is necessary to confirm whether a fiscal invoice existed, which transaction was corrected, and whether the movement represents a return, discount, error, contract termination, or only a financial adjustment. Cancelling a subscription without returning or reducing an amount already invoiced does not automatically produce an NC.

What must the rectifying document contain?

Under Article 36(6) of the Portuguese VAT Code, rectifying documents must include a date, sequential number, supplier and customer identification, a reference to the original invoice, and the invoice details being changed. These elements preserve a verifiable document chain between the sale and its correction.

The NC should also reflect only what changed. Its description, lines, amounts, and tax treatment should come from the original invoice and the documented reason for the correction. A tax rate must not be inferred from location, postal code, tax number, or another heuristic. When the source data cannot reliably identify the affected lines, the case should go to accounting review instead of receiving an invented allocation.

For a broader view of the mandatory fields, see the guide to Portuguese invoice requirements. The NC is a different document, but the quality of the original invoice data determines the quality of the entire rectification.

How should full and partial refunds be handled?

The amount returned must be reconciled with the invoiced transaction before issuance. Neither the refund amount nor the payment status alone identifies which fiscal lines should be corrected.

SituationTreatment to assess
Full refund after a finalized invoiceNC for the content actually cancelled, linked to the original invoice
Partial refund of one lineNC for only the affected line or quantity and its original tax treatment
Partial refund allocated across several linesAllocation supported by the original records, with review if the correspondence is not unambiguous
Return before a fiscal invoice is issuedFirst check whether receiving payment already made the invoice due; payment reconciliation alone is enough only when no document was due or issued

A partial refund should not cause the whole invoice to be cancelled and another one issued by default. That approach changes more documents than necessary and can separate the correction from its real cause. The affected portion should be rectified while retaining the applicable lines and tax data from the source. If an invoice has different tax treatments, an overall percentage is not a substitute for mapping the corrected lines.

What is the difference between FT, FR, and NC?

FT, FR, and NC identify documents with different purposes. A refund does not turn an FT or FR into an NC, and an NC does not erase the document it corrects.

TypePurposeRelationship to payment
FT, invoiceDocuments the sale or supplyDoes not prove receipt of payment by itself
FR, invoice-receiptDocuments the transaction and its associated receiptUsed when invoicing and payment coincide
NC, credit noteRectifies all or part of an earlier documentCan accompany a refund, but is not the refund

This separation also explains why an invoice created in Stripe is not enough for every domestic obligation. The context is covered in the article about whether a Stripe invoice is valid in Portugal.

Which Stripe events help with reconciliation?

Stripe documentation recommends the refund.created event for receiving information about each refund. Thecharge.refunded event is also sent when a payment is refunded, including partially, and can update the aggregate payment status. A reliable process should retain the identifiers for the refund, payment, Stripe invoice, and corresponding fiscal document.

When Stripe Billing is used, credit_note.created marks the creation of a credit note on that platform. None of these events proves that a Portuguese NC has been issued. The webhook should start an idempotent reconciliation: locate the original invoice, classify the reason, validate the amounts and lines, and only then create or route the appropriate fiscal document.

Retries and out-of-order deliveries are normal in webhook integrations. The same occurrence must not create two credit notes. Retaining the processed event ID and enforcing a unique key for the relationship between refund and correction can prevent duplicates. The practical guide to Stripe webhooks explains signature verification, retries, and idempotency.

How should disputes and chargebacks be handled?

A dispute is not the same as a voluntary refund. When a dispute opens, Stripe debits the disputed amount and the applicable fee from the balance while the process runs. The merchant can accept the dispute or submit evidence, and the card issuer decides the outcome. While the dispute remains open, Stripe does not allow a standard refund outside that process.

For that reason, charge.dispute.created should not automatically produce an NC. The outcome should be followed first, and its economic and documentary effect reconciled. If the dispute is won, the disputed amount is returned to the balance. If it is lost, an accountant should assess whether the invoiced transaction was reduced or cancelled and which rectifying document is needed. The technical dispute status does not replace that analysis.

What evidence is needed to adjust VAT?

For a tax adjustment in the supplier's favour, Article 78(5) requires evidence that the customer became aware of the rectification or was reimbursed for the tax. Without that evidence, the deduction is treated as improper. The process therefore does not end when a PDF is issued or a Stripe event is received.

The NC, the link to the original invoice, the refund identifier and status, the communication to the customer, and evidence of the returned amount should be retained. If the customer is a taxable person who has already deducted the tax, Article 78(4) provides for correction of that deduction in the applicable period. The timing and accounting entry should be confirmed by the accountant for the specific case.

In a certified flow, ATCUD and QR code rules apply to the relevant documents. Further context is available in the guide to ATCUD and QR codes.

How should a credit-note process be organised?

  1. Record the Stripe refund with its identifiers, amount, currency, reason, and link to the original payment.
  2. Locate the associated Portuguese FT or FR without relying only on matching dates or values.
  3. Confirm whether the invoiced transaction was cancelled or reduced and identify the lines actually affected.
  4. Reuse the tax treatment recorded on the original invoice without calculating rates from geographic rules or customer data.
  5. Issue the NC with its own number, reference to the original, and a description of the change, or send an ambiguous case for review.
  6. Retain the relationship between refund and documents, deliver the NC to the customer, and preserve the required evidence.
  7. Periodically reconcile refunds, Stripe credit notes, disputes, FT, FR, and NC records to identify gaps or duplicates.

Automation should reduce repetitive work without deciding tax matters that the data cannot support. Values above the original, different currencies, several candidate invoices, a missing document, or incompatible lines are reasons to block issuance and request review. To place this flow in the full process, see the guide to automating Stripe invoicing in Portugal.

Which errors should be avoided?

  • Treating a Stripe refund as a Portuguese NC.
  • Deleting or replacing the original invoice without a document chain.
  • Cancelling the whole invoice when only one line or quantity was corrected.
  • Deriving a VAT rate from location or allocating tax without respecting the original lines.
  • Issuing an NC only because a dispute was opened.
  • Adjusting VAT without evidence of customer awareness or reimbursement of the tax.
  • Processing the same webhook again and creating duplicate documents.

The operational rule is to separate money, Stripe billing, and fiscal documentation, then link the three records through verifiable identifiers. That distinction makes it possible to correct what changed without rewriting the history or turning a payment event into an automatic tax decision.

Frequently asked questions

Does a Stripe refund automatically create a Portuguese credit note?

No. A refund returns the payment. If it changes an already invoiced transaction, the appropriate Portuguese rectifying document must be issued separately.

What must a Portuguese credit note contain?

A date, sequential number, identification of both parties, reference to the original invoice, and the details being changed.

How should a partial refund be handled?

Only the affected lines or quantities should be rectified, retaining the original invoice's tax treatment. Ambiguous cases require accounting review.

Does an open Stripe dispute require a credit note?

Not automatically. Its outcome should be followed before assessing whether the invoiced transaction was actually reduced or cancelled.

What evidence is needed to adjust VAT?

Article 78(5) requires evidence that the customer became aware of the rectification or was reimbursed for the tax.

Sources

Automate Stripe invoicing with Faturado

Connect Stripe, TOConline, or InvoiceXpress and validate the flow with usage-based pricing.