# ProInvoice — Frequently Asked Questions (FAQ)

Quick answers for **CodeCanyon buyers** and **end users**. For detailed steps, see the linked guides.

---

## Purchasing & licensing

### Can I use one purchase code on multiple domains?

**Usually no** for **live production** sites. Marketplace licenses typically allow **one** active installation per purchase unless the item description or extended license says otherwise. Check your **CodeCanyon license type** and the author’s terms.

**Related:** [LICENSE_GUIDE.md](LICENSE_GUIDE.md)

---

### Is the Envato purchase code the same as the installer license key?

**Often no.** Many products require you to enter the purchase code on the **author’s license website** to receive a **product activation key** for the installer.

---

### How do I move my installation to a new server or domain?

**Typical process:**

1. **Back up** files and database.  
2. Restore on the new server.  
3. Update `.env` (database, `APP_URL`).  
4. **Deactivate** or **transfer** the license binding on the author’s portal—or **contact support** with proof of purchase.  

> **Tip:** Never run **two live copies** on different domains on one regular license.

---

### Can I reset my license?

**Depends on the author’s portal.** Many systems let you **deactivate** an old domain. If not, **email support** with your **purchase code** and explanation.

---

## Installation & hosting

### Can I use this on shared hosting?

**Yes**, if the host supports **PHP 8.2+**, **MySQL**, **cron**, and allows **Laravel-style** rewrites. The hardest part is pointing the domain to the **`public`** folder—some shared hosts make this easy, others require support tickets.

**Related:** [INSTALLATION_GUIDE.md](INSTALLATION_GUIDE.md)

---

### cPanel vs VPS — which is easier?

- **cPanel shared:** Easiest **GUI** for databases and file upload; document root change varies by host.  
- **VPS + aaPanel:** More steps, but you usually get **full control** over PHP, cron, and document root.  

---

### What if my host blocks cron jobs?

**Symptoms:** No automated reminders, recurring invoices stuck.

**Options:**

1. Ask host to **enable cron** (many allow at least 5-minute intervals—less ideal but better than nothing).  
2. Use an **external cron ping** service only if the author documents support for it.  
3. Upgrade to **VPS** where you control cron.  

---

### Do I need SSL (HTTPS)?

**Strongly yes** for production. It protects **passwords**, **cookies**, and **customer trust**. Many license checks and modern browsers expect HTTPS.

---

## Installer & demo data

### Can I skip demo data?

**Yes**, if the installer offers **Stage 4** as optional. Skipping gives you a **clean** database for production.

---

### I imported demo data by mistake—now what?

You can **delete** demo records manually (customers/invoices) if the UI allows, or **reinstall** on a **fresh database** (only if you have no real data yet).

---

## Using the software

### How do I create my first invoice?

**Customers** → add customer → **Invoices** → **New** → select customer → add line items → save → **Send** or **PDF**.

**Related:** [USER_MANUAL.md](USER_MANUAL.md)

---

### How do reminders work?

Under **Settings → Billing Reminders**, enable the events you want (due soon, overdue, etc.). The server must run **cron** (`schedule:run`). You can also send **manual reminders** from an invoice page.

---

### Why didn’t my customer get an email?

Check:

1. **Customer email** is correct.  
2. **SMTP** settings and **test email**.  
3. **Reminder toggles** are on.  
4. **Reminder logs** for **failed** status.  
5. **Queue** mode needs a **worker** running.  

---

## Email & SMTP

### Does Gmail work for sending?

**Often yes** with an **App Password** and **2FA**. Gmail is not ideal for **high volume**; consider a transactional provider for many invoices per day.

---

### What is Mailtrap?

A **safe inbox** for **testing**—emails never reach real customers. Use during setup.

---

## Addons

### How do I install addons?

Usually **Addon Manager** in admin → upload ZIP → activate → enter **addon license** if required.

**Related:** [USER_MANUAL.md](USER_MANUAL.md) → Addon Manager

---

### Addon license failed—why?

Wrong key, wrong domain, incompatible **ProInvoice version**, or expired addon subscription (if applicable). Contact **addon author** with proof.

---

## Updates

### How do I update the software?

1. **Full backup** (files + DB).  
2. Read **CHANGELOG.md** and author **update notes**.  
3. Apply update package / replace files per instructions.  
4. Run **migrations** if documented.  
5. Clear caches if documented.  

**Never** update live without a backup.

---

## Support scope

### What should I send when asking for help?

- **Domain**  
- **Hosting** type  
- **PHP version**  
- **Error message** (exact text)  
- **Screenshots** (blur keys/passwords)  
- **Steps** to reproduce  

---

### Do you customize my chart of accounts / taxes for my country?

**Usually not included** in standard item support—that is **accounting advice**. The software provides **tools**; your accountant configures **accounts and tax rules**.

---

## Security

### Is my data safe?

Security depends on **your hosting**, **passwords**, **SSL**, **backups**, and **who you give admin access**. Read **[SECURITY.md](SECURITY.md)**.

---

*For errors and fixes, see [TROUBLESHOOTING.md](TROUBLESHOOTING.md).*

*End of FAQ*
