Understanding Document Status and Lifecycle in BreezeDoc

BreezeDoc documents move through a clear lifecycle from creation to completion. Understanding these stages helps you track document progress, identify issues, and manage your signing workflows effectively. This guide explains each status, how documents transition between stages, and what happens at each step.

Document Lifecycle Overview

Every BreezeDoc document follows this basic lifecycle:

  1. Creation – Document uploaded or created from template
  2. Configuration – Fields added, recipients assigned
  3. Draft – Prepared but not sent to recipients
  4. Sent – Emailed to recipients for signing
  5. In Progress – Recipients are viewing and signing
  6. Completed – All recipients have signed
  7. (Optional) Expired – Past expiration date before completion
  8. (Optional) Deleted – Removed from active documents

Prerequisites

  • Account: Active BreezeDoc account
  • Documents: Understanding of document creation process
  • Access: Document owner or team member permissions

Document Statuses Explained

Draft (Not Sent)

Definition: Document has been created but not yet sent to any recipients.

Characteristics:

  • No recipients notified: Recipients have not received signing emails
  • Fully editable: Can modify fields, recipients, settings freely
  • No sent_at timestamp: Recipients table shows NULL for sent_at
  • Recipients may exist: Recipients can be added but not yet sent to
  • No completion possible: Cannot be completed until sent

How to Identify:

  • Filter documents by "Not sent" status
  • Check document list – drafts show no sent date
  • Recipients table has no sent_at values

Next Actions:

  • Add or modify fields
  • Assign recipients
  • Set expiration date
  • Configure passcodes or custom emails (if on Pro/Agency plan)
  • Send document to recipients

Sent

Definition: Document has been sent to recipients but signing is not yet complete.

Characteristics:

  • Recipients notified: At least one recipient has received signing email
  • Limited editing: Cannot modify fields or recipients after sending
  • sent_at timestamp: Recipients have sent_at value in database
  • No completed_at: No recipients have completed yet, or some are incomplete
  • Active signing links: Recipients can access signing pages

How to Identify:

  • Filter documents by "Sent" status
  • Document shows sent date but no completion date
  • Activity log shows "sent" events but no "completed" events

What Happens:

  • Recipients receive email with signing link
  • Document marked as sent in your dashboard
  • Activity tracking begins (opens, views recorded)
  • Reminders sent automatically (Pro/Agency plans)

Next Actions:

  • Monitor activity to see if recipients opened document
  • Wait for recipients to complete signing
  • Resend reminder emails if needed
  • Clone and resend if modifications needed

In Progress

Definition: Recipients are actively viewing or signing the document, and it hasn't expired.

Characteristics:

  • Active engagement: Recipients have opened or are signing the document
  • Partial completion possible: Some recipients may have completed, others haven't
  • Not expired: expiration_date is still in the future (or NULL)
  • Mixed recipient states: Some may have sent_at only, others have completed_at
  • Awaiting action: At least one recipient still needs to sign

How to Identify:

  • Filter documents by "In progress" status
  • Activity log shows "viewed" or "opened" events
  • Some recipients show completed_at, others don't
  • Document expiration_date is in future

Code Reference: In progress filter logic is in app/Http/Controllers/DocumentController.php:76-81 .

What Happens:

  • Recipients view document and fill fields
  • Activity events recorded (viewed, opened, completed)
  • Sequential signing: Next recipient notified when previous completes
  • Parallel signing: All recipients can sign simultaneously

Next Actions:

  • Check activity log to see who has signed
  • Send reminders to incomplete recipients
  • Monitor progress toward completion
  • Extend expiration date if nearing deadline

Completed

Definition: All recipients have signed the document, and the final PDF has been generated.

Characteristics:

  • All recipients signed: Every recipient has completed_at timestamp
  • Document completed_at set: Document model has completed_at value
  • Final PDF stored: completed_document_path contains immutable PDF
  • Locked from editing: Cannot modify fields or resend
  • Completion emails sent: All recipients and owner receive final PDF via email

How to Identify:

  • Filter documents by "Completed" status
  • Document shows completion date in list
  • Activity log shows all recipients have "completed" events
  • Green checkmark or "Completed" badge in UI

Code Reference: Completion logic is in app/Http/Controllers/RecipientController.php:298-306  and app/Models/Document.php:466-476 .

What Happens Automatically:

  • Final PDF generated with all signature/field values
  • PDF stored permanently with random filename
  • completed_at timestamp set on document
  • Completion emails sent to all recipients with PDF attachment
  • Owner receives completion email with PDF and activity log
  • CC recipients receive PDF and activity log (if configured)
  • Activity log marked as complete

Next Actions:

  • Download final PDF for records
  • Review activity log for audit trail
  • Archive or delete document if no longer needed
  • Use as template for similar documents

Expired

Definition: Document has passed its expiration date without being completed by all recipients.

Characteristics:

  • Past expiration_date: expiration_date is in the past
  • Signing blocked: Recipients cannot complete the document
  • Not automatically deleted: Document remains in your list
  • May be partially signed: Some recipients may have completed before expiration
  • Expired page shown: Recipients see expiration message instead of signing page

How to Identify:

  • Filter documents by "Expired" status
  • Document shows expiration date in the past
  • Recipients see "This document has expired" message

What Happens:

  • Recipients cannot access signing page (redirected to expired page)
  • Expiration warning emails sent 3 days before expiration (automatic)
  • Document marked with expired status in filters
  • No further activity tracking for signing (opens still tracked)

Next Actions:

  • Clone document to create new copy with extended expiration
  • Resend cloned document to recipients who didn't complete
  • Delete expired document if no longer needed
  • Review why document expired (slow response, too short deadline)

Deleted (Soft Deleted)

Definition: Document has been removed from active list but remains in database for recovery.

Characteristics:

  • Soft delete: deleted_at timestamp set, but data not permanently removed
  • Hidden from lists: Does not appear in Documents page
  • Links broken: Recipients see 404 error when accessing signing links
  • Recoverable: Can be restored by admin if needed (not exposed in UI)
  • Still in database: Data remains for audit/compliance purposes

How to Delete:

  1. Go to Documents page.
  2. Find the document to delete.
  3. Click MoreDelete.
  4. Confirm deletion.
  5. Document removed from list immediately.

Code Reference: Soft delete functionality uses Laravel's SoftDeletes  trait in app/Models/Document.php:17,30 .

What Happens:

  • deleted_at timestamp added to document record
  • Document hidden from all filters and searches
  • Recipient signing links return 404 error
  • Document remains in database with deleted_at marker

Important Notes:

  • Cannot be undone in UI: No "restore" button for users
  • Permanent for recipients: Signing links stop working immediately
  • Not counted in limits: Deleted documents don't count toward monthly plan limits
  • Data retained: Compliance and audit data remains in database

Document Lifecycle Transitions

Creation → Draft

Trigger: Upload PDF or create from template

What happens:

  • Document record created with created_at timestamp
  • PDF file stored and converted to images for editor
  • Document appears in "Not sent" filter
  • Unique slug generated for URLs

Draft → Sent

Trigger: Click "Send" button after adding recipients

What happens:

  • sent_at timestamp added to each recipient
  • Email sent to recipients with signing link
  • Document moved to "Sent" filter
  • Fields and recipients locked from editing
  • Activity tracking begins

Code Reference: Send logic is in app/Http/Controllers/DocumentController.php:510-576 .

Sent → In Progress

Trigger: Recipient opens document signing link

What happens:

  • "Opened" event recorded in activity log
  • opened_at timestamp set on recipient
  • Document shown in "In progress" filter
  • Recipient can view and fill fields

In Progress → Completed

Trigger: Last recipient submits completed document

What happens:

  • completed_at timestamp set on final recipient
  • Document.isComplete() returns true (all recipients completed)
  • Final PDF generated via storeCompletedPDF()
  • completed_at timestamp set on document
  • Completion emails sent to all parties
  • Document moved to "Completed" filter

Code Reference: Completion transition is in app/Http/Controllers/RecipientController.php:298-306 .

Any Status → Expired

Trigger: System clock passes expiration_date

What happens:

  • Recipients see expired page when accessing signing link
  • Document appears in "Expired" filter
  • 3-day warning email sent automatically before expiration
  • Signing functionality disabled
  • Document remains in current partial state (if some signed)

Any Status → Deleted

Trigger: User clicks Delete button

What happens:

  • deleted_at timestamp set (soft delete)
  • Document hidden from all lists and filters
  • Recipient links return 404 error
  • Data retained in database for compliance

Timestamps and Tracking

Document-Level Timestamps

  • created_at: When document was first uploaded/created
  • updated_at: Last modification to document record
  • completed_at: When final recipient completed signing
  • expiration_date: Deadline for signing (user-configurable, default +90 days)
  • deleted_at: When document was soft-deleted (NULL if not deleted)

Recipient-Level Timestamps

  • created_at: When recipient was added to document
  • sent_at: When signing email was sent to recipient
  • opened_at: When recipient first opened signing link
  • completed_at: When recipient submitted signed document

Code Reference: Recipient timestamps are defined in app/Models/Recipient.php:24-29 .

Activity Event Types

BreezeDoc tracks detailed activity events:

  • SENT: Document sent to recipient
  • OPENED: Recipient opened email (tracking pixel)
  • VIEWED: Recipient accessed signing page
  • COMPLETED: Recipient submitted signed document

Each event includes metadata: IP address, user agent, timestamp, session ID.

Best Practices for Managing Document Lifecycle

Setting Expiration Dates

  • Default 90 days: BreezeDoc sets expiration to +90 days by default
  • Adjust based on urgency: Use 7-14 days for urgent contracts, 30-60 for standard
  • Consider recipient availability: Allow time for busy executives or international signers
  • Set reminders: Pro/Agency plans auto-send reminders to increase completion rate

Monitoring Document Progress

  • Check "In progress" daily: Review documents awaiting completion
  • Use activity logs: See who opened but hasn't signed
  • Send manual reminders: Follow up with recipients via email if taking too long
  • Monitor expiration dates: Extend or resend documents approaching deadline

Handling Incomplete Documents

  • Clone expired documents: Create new copy with extended expiration
  • Review blocking issues: Check if passcodes are missing or emails bounced
  • Contact slow signers: Reach out via phone/email to understand delays
  • Simplify if needed: Reduce required fields if causing recipient confusion

Archiving Completed Documents

  • Download PDFs: Save completed documents to local/cloud storage
  • Export activity logs: Keep audit trails for compliance
  • Delete old documents: Remove clutter from dashboard after archiving
  • Use consistent naming: Include completion date in downloaded filenames

Troubleshooting Status Issues

Issue: Document stuck in "Sent" status for days

Fix: Check activity log to see if recipients opened email. Verify email addresses are correct. Ask recipients to check spam/junk folder. Resend document if needed. Check passcode was provided if protection enabled.

Issue: Document shows "Completed" but I can't download PDF

Fix: Check completion email for PDF attachment. Use "Download" button in document activity page. Verify all recipients actually completed (check activity log). Contact support if PDF generation failed.

Issue: Document expired before recipient could sign

Fix: Clone document via MoreClone. Update expiration date to future date. Resend to recipients who didn't complete. Original expired document cannot be modified.

Issue: One recipient completed but document not marked complete

Fix: Check if all recipients have signed – document needs 100% completion. Review activity log to identify incomplete recipients. Send reminders to outstanding signers. Verify sequential signing order if enabled.

Issue: Accidentally deleted document, need to recover

Fix: Soft-deleted documents cannot be restored via UI. Contact BreezeDoc support with document ID/name. Support can restore from database if needed. Prevention: be careful with delete action (no undo).

Issue: Document shows in wrong status filter

Fix: Refresh page to update status. Check expiration date – expired docs won't show in "In progress". Verify all recipients were actually sent to (check sent_at timestamps). Clear browser cache if status persists incorrectly.

FAQ

Q: Can I edit a document after sending it?

A: No. Documents are locked once sent to prevent tampering. To make changes, clone the document, edit the clone, and resend to recipients.

Q: What happens if only some recipients complete before expiration?

A: The document enters "Expired" status. Partially signed documents are not finalized. Clone and resend to incomplete recipients with extended deadline.

Q: How long does BreezeDoc store completed documents?

A: Completed documents are stored indefinitely unless you delete them. Deleted documents are soft-deleted (retained in database) for compliance purposes.

Q: Can recipients still access completed documents?

A: Yes. Recipient signing links remain active after completion, showing a confirmation page. They receive the final PDF via email when all signers complete.

Q: What's the difference between "Sent" and "In Progress"?

A: "Sent" means recipients received emails but haven't opened documents yet. "In Progress" means recipients have viewed the signing page and may be actively signing.

Q: Do deleted documents count toward my monthly limit?

A: No. Only sent documents (not deleted) count toward your plan's monthly document limit. Deleting a sent document does not refund the count.

Q: Can I see the exact time each recipient signed?

A: Yes. Go to document Activity page to see detailed timeline with exact timestamps for sent, opened, viewed, and completed events per recipient.


Need more help? Contact our support team – we're here to help!

Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.