Back to Blog
Guides6 min read

How Invoice Share Links Actually Work

IN
Invoice Generator TeamAuthor
August 24, 2026Published
Also available in:NederlandsDeutsch

A share link doesn't point to your live invoice — it points to a frozen snapshot taken the moment you created the link. If you edit the invoice afterward, anyone holding the old link keeps seeing the version that existed when they got it, not your latest changes. That single fact explains most of the behavior people find surprising about share links, so it's worth understanding exactly what a share link actually is under the hood.

What Gets Stored When You Create a Share Link

When you generate a share link, the system creates a random token — effectively an unguessable string of characters — and stores it alongside a full copy of the invoice's data at that exact moment, not a live reference back to the invoice record. It also stores an optional password hash if you protected the link, an optional expiration timestamp, and the workspace and invoice group it belongs to. The link itself is just that token appended to a URL; anyone with the link can open it, but nobody can guess it by trying random values, since it's generated from cryptographically random bytes rather than a predictable sequence.

Why Editing the Invoice Doesn't Update Old Links

Because the share link stored a copy of the invoice data at creation time, not a pointer to the live invoice, any edits you make afterward — correcting a line item, changing the total, updating the due date — do not propagate to links that were already generated. If you need a client to see the corrected version, the reliable approach is to generate a new share link after making your changes, rather than assuming the old link will pick up the update automatically. This is a deliberate tradeoff: a frozen snapshot means the client always sees a consistent, unambiguous version of the document, and you have a permanent record of exactly what a specific link showed at the exact moment someone might have viewed and acted on it.

Password Protection

If you set a password when creating the link, it's never stored in plain text — only a bcrypt hash of it is saved. When someone tries to view a password-protected invoice, they submit the password, and the system compares it against the stored hash rather than looking up a stored plaintext value anywhere. This means even direct database access wouldn't reveal what the actual password was, only whether a guess matches.

Expiration

If you set an expiration window in days when creating the link, that gets converted into an absolute expiration timestamp at creation time — not a rolling window that resets on each view. Every time someone tries to open the link, the system checks whether the current time has passed that stored expiration timestamp. Once it has, the link stops working for everyone, including you, regardless of how many times it was viewed before that point or how recently it was last opened.

Revocation

Beyond expiration, you can revoke a share link manually at any time. Revocation sets a timestamp on the record rather than deleting it outright, and every lookup for that link explicitly checks that this revocation timestamp is empty before allowing access. A revoked link fails immediately and permanently — there's no way to un-revoke it and restore access to that specific link; you'd generate a fresh one instead.

What You Can See About Your Own Share Links

For any share link you've created, you can see whether it's password protected, its expiration date, when it was created, how many times it's been viewed, and when it was last viewed — all without exposing the password itself or requiring you to re-enter it. This gives you a way to audit who might have accessed a document and when, without needing to open the link yourself to check.

Frequently Asked Questions

If I delete the original invoice, does the share link still work? The share link's data was copied at creation time and stored independently, so it isn't directly dependent on the original invoice record continuing to exist in the same form. The link's own expiration and revocation rules are what determine whether it still resolves.

Can I change the password on an existing link? Passwords are set at creation time as part of that link's record. To use a different password, the practical approach is to revoke the old link and create a new one with the password you want, rather than trying to update the existing link in place.

Does viewing the link count toward anything, like a read receipt? The view count and last-viewed timestamp are tracked and visible to you, which functions as a lightweight read receipt — you can tell whether a link has been opened at all and roughly when, even without any separate notification system.

Related Articles

Guides8 min read

Client Statement vs. Accountant Report: What's the Difference

Two reports pull from the same data but serve opposite purposes — one is safe to hand to a client, the other very much isn't.

IN
Invoice Generator TeamSeptember 10, 2026
Guides9 min read

How the Reusable Service Catalog Speeds Up Invoicing

Why editing a rate in your service catalog never rewrites invoices you've already sent, and how the save-or-update logic actually works.

IN
Invoice Generator TeamSeptember 6, 2026
Guides8 min read

What's Actually Inside Your Account Data Export

A full breakdown of what the account data export includes, what it deliberately leaves out, and how it's generated on demand.

IN
Invoice Generator TeamSeptember 5, 2026
Guides8 min read

How the Accounts Receivable Aging Report Buckets Your Invoices

The exact day thresholds, currency grouping, and client-matching logic behind the aging report — and what it deliberately excludes.

IN
Invoice Generator TeamSeptember 2, 2026
Guides5 min read

How Discounts Are Applied Before Tax on Your Invoices

Tax is calculated on the discounted amount, not the original subtotal — a discount reduces your tax bill too, not just the price the client pays.

IN
Invoice Generator TeamAugust 30, 2026
Guides6 min read

How Expense Rebilling Status Works

Every logged expense carries one of three rebill statuses — unbilled, rebilled, or non-rebillable — and that field is what stops the same expense from being billed twice.

IN
Invoice Generator TeamAugust 29, 2026

Mastered Invoicing?

Put your knowledge into practice and create your first professional invoice today.

Create Your Invoice Now
How Invoice Share Links Actually Work | Invoice Generator