The Backup Settings page lets you configure automated database backups for your ISPBills installation. Regular backups protect your ISP's data — customer records, billing history, payment logs, and network configuration — against accidental deletion, database corruption, or server failure.

ISPBills uses spatie/laravel-backup under the hood to manage backup scheduling and storage.

Cloud-hosted customers: ISPBills performs daily backups on your behalf. This page allows you to configure additional backup destinations and notifications on top of the managed backups.


Accessing Backup Settings

Navigate to Routers & Packages > Backup Settings in the left sidebar.


Configuring Backup Destination

ISPBills can store backups to one or more destinations simultaneously.

Local Storage

By default, backups are stored on the server's local disk. This is suitable as a short-term copy but should be supplemented with an offsite destination.

Provider Notes
Amazon S3 Provide Bucket Name, Region, Access Key ID, and Secret Access Key.
S3-Compatible (e.g., Cloudflare R2, Wasabi) Provide endpoint URL plus S3 credentials.
FTP / SFTP Provide host, port, username, password, and remote path.
Google Drive Requires OAuth2 configuration.

To configure a cloud destination:

  1. Go to Routers & Packages > Backup Settings.
  2. Under Backup Destination, select your preferred storage driver.
  3. Enter the required credentials.
  4. Click Test Connection to verify ISPBills can reach the destination.
  5. Click Save.

Setting the Backup Schedule

Schedule Use Case
Daily Recommended for production ISPs. Backups run once per day at a configured time.
Weekly Suitable for low-activity periods or supplementary backups.

To set the schedule:

  1. Under Backup Schedule, select Daily or Weekly.
  2. Set the time (UTC) when the backup job should run. Choose an off-peak time, such as 02:00 AM, to minimize server load.
  3. Click Save.

Backup Notifications

ISPBills can send email alerts after each backup job completes.

Notification Type Description
Success Sent when a backup completes without errors.
Failure Sent when a backup job fails (e.g., disk full, destination unreachable).

To configure notifications:

  1. Under Backup Notifications, enter one or more email addresses.
  2. Toggle Notify on success and/or Notify on failure.
  3. Click Save.

Ensure your ISPBills mail settings are configured in Settings > ISP Profile for email delivery to work.


Restoring from Backup

To restore your ISPBills database from a backup file:

  1. Locate the backup archive (.zip) in your configured storage destination.
  2. Download the archive to your server.
  3. Extract the SQL dump file from the archive.
  4. Import the SQL dump into your MySQL or PostgreSQL database:
# MySQL
mysql -u root -p ispbills_db < backup.sql

# PostgreSQL
psql -U postgres ispbills_db < backup.sql
  1. Restart your web server and PHP-FPM service.

Contact ISPBills support for assistance with restoring a cloud-hosted instance.


Best Practices

Practice Recommendation
Retention period Keep at least 30 days of daily backups. Configure your storage provider's lifecycle policy to automatically delete older archives.
Offsite storage Always store at least one backup copy in a location separate from your server (cloud storage or remote FTP). A backup on the same server as the application does not protect against total server loss.
Test restores Periodically restore a backup to a test environment to confirm the archives are valid and the restore process works.
Monitor failure alerts Act immediately on backup failure notifications. A failed backup is as dangerous as no backup.
Encrypt backups If storing backups containing personal customer data in cloud storage, enable server-side encryption on the storage bucket.