Our Products & Services
Getting Started
First Time Setup
Getting Started with Inventory
Getting Started With Jobs
Getting Started with Accounts
Getting Started with Ticketing
Setting Sonar up for Billing
Baseline Configuration
How To: Using Sonar's Customer Portal
User Specific Resources
Accounts
Account Groups: Overview & Example Use Cases
Account List View: Overview
Account Management View: Overview
Account Overview Customization
Account Statuses: Overview & Example Use Cases
Account Types: Overview & Example Use Cases
Anchor & Linked Serviceable Addresses: Overview and Best Practices
Archiving an Account: Overview
CPUC Fixed Broadband Deployment by Address
Child Accounts: Best Practices & How Tos
Creating a New Account
Direct Messages: Overview
Disconnecting an Account
Disconnection Reason Management: Overview
Exploring Task Groups
FCC Broadband Data Collection (BDC) Filings: How Sonar Can Help
FCC Data Exports: General Overview and Usage
Future Serviceable Addresses: Overview
Lead Intake Form Processing
Notes: Best Practices & Use Cases
Scheduled Events: Overview & Use Cases
Serviceable Addresses: Overview and Usage
Specify Account ID upon Creation
Tasks & Task Templates: Overview
Using Sonar's FCC Broadband Label Generation Tool
Billing
ACH Batching: Overview
Accounts in Vacation Mode
Avalara: Overview & Setup
Batch Payments & Deposit Slips: Overview
Billing Calculator
Billing Defaults
Billing Settings
Building Packages
Building a Data Service
Canadian ACH tool
Changing Service Pricing in Sonar: Best Practices
Configure Service Eligibility Criteria: Overview
Considerations When Using Avalara with Voice Services
Creating Discounts for Services and Packages
Delinquency Billing Best Practices
Delinquency Exclusions: Overview
Dual Data Services: Overview
Email Invoice Batch: Overview
General Ledger Codes: Overview
General Transactions: Best Practices
How Sonar Prorates Billing
How to Take Bank Account Payments
How to Use SKUs: Overview
How to: Adding a Service to an Account
Invoice Templates: Overview
Leveraging PayPal as a Payment Method in Sonar
Manual Transactions
Multi-Month Billing & Multi-Month Services
Print to Mail
Printed Invoice Batches: Overview
Reversals and Refunds: Overview
Services: Overview
Setting Up Payment Methods and Taking Payments
Setting up Bank Account & Credit Card Processors
Taxes Setup
Usage Based Billing Policies: Overview and Usage
Usage Based Billing Policy Free Periods: Overview and Usage
Using Tax Exemptions - How To
Communication
Communications: Call Logs Overview & Best Practices
Communications: Messages Overview
Email Variables & Conditions
Message Categories: Overview & Use Cases
Phone Number Types: Overview and Use Cases
Saved Messages: Overview
Setting up an Outbound Email Domain
Trigger Explanations
Triggered Messages: Setup
Using Outbound SMS
Using the Mass Message Tool
Companies
How to: Setting Up a Company in Sonar
Managing Multiple Companies in Sonar: Best Practices
Rebranding your Sonar Instance
Field Tech App
Financial
Agreement Templates
Invoice Attachment Use Cases & PDF Examples
Invoice Messages: Overview & Use Cases
Invoices in Sonar: Examples, Creation & Contents
Integrations
Atlas Digital CORE Integration
Calix Cloud Data Field Mappings
Calix SMx Integration: Overview
CrowdFiber Integration
External Marketing Providers
GPS Tracking Providers: Overview
GoCardless Integration: Overview & Setup
Handling Static IPs with the Calix SMx Integration
How to Connect Cambium to your Sonar Instance
How to Connect Preseem to your Sonar System
How to: Using Webhooks in Sonar
Integrating with Calix Cloud
RemoteWinBox - Integration with Sonar
Sonar Retain: AI-Powered Customer Retention & Quality Intelligence
Tower Coverage Integration: Overview
Troubleshooting Calix SMx Operational Issues
VETRO FiberMap V2 Integration: Overview
VETRO FiberMap V3 Integration: Overview
Webhook Events: Overview
Webhooks in Sonar: Basic PHP Example
iCalendar Integration
Inventory
Inventory List View: Overview
Inventory Model Management: General Overview
Network Inventory: How-to & Usage Guide
Segmentable Inventory: How-to & Usage Guide
Setup of Inventory: Manufacturers, Categories, and Assignees
Tracking and Using Consumable Inventory
Jobs
Applying Task Templates to Jobs
Edit Job Options
Example Jobs & Templates
Geofences: Overview
Job Types: Best Practices
Jobs and Scheduling: Overview
Scheduling Dispatcher View: Overview
Scheduling How-to: Creating and Booking a Job
Scheduling Table View: Overview
Scheduling Week View: Overview
Setting Up Schedules General Overview
Mapping
Misc.
Combining Custom Fields & Task Templates for Information Storage
Custom Fields Overview & Use Cases
Custom Links: Overview
Task Templates Overview & Use Cases
Monitoring
Building Alerting Rotations
Building a Monitoring Template
Poller Troubleshooting
Pollers: General Overview, Deployment Strategy, Build Out & Setup
Troubleshooting Poller and Monitoring Issues
Networking
Adtran Mosaic Cloud Platform Integration: Overview
Assigning RADIUS Addresses
Assigning an IP Address Using Sonar's IPAM: How to
Automating IP Assignments, Data Rates, and Network Access in Sonar
Building Address Lists
Building RADIUS Groups
Building a Device Mapper
Cable Modem Provisioning
Controlling Customer Speeds with Sonar: General Overview
DHCP Delivery
Data Usage Available Methods
Finding your OIDs
FreeRADIUS 3: Build-Out & Integration
How Sonar Communicates - Egress IPs Explained
IP Assignments & Sonar
IPAM: Basic Setup
IPAM: Overview
LTE Integration
MikroTik as an Inline Device: Integration With Sonar
MikroTik: Controlling Access
MikroTik: Controlling Speeds
MikroTik: Setting Up a Sonar Controlled DHCP Server
Netflow On-Premise Integration: Setup and Overview
Network Dashboard: Overview
Network Sites: Management View Overview
PacketLogic: Integration With Sonar
Pulse, Polling, and PHP
RADIUS: Build-Out & Integration with Sonar
RADIUS: Building Reply Attributes
Setting Up CoA Proxy
Sonar Flow
Sonar IP Addressing
Troubleshooting DHCP: Why Isn't My Subscriber Getting an Address?
Troubleshooting MikroTik Integration Issues
Using Multiple Network Devices in Sonar
Purchase Orders
Release Notes
Reporting
Common Custom Report Uses
Enhanced Business Intelligence - Tips & Tricks for Advanced Users
How To Enhance Your Reporting With Custom Field Data
How to Unpublish a Report or Dashboard
Managing Scheduled Reports
Report Licenses
Reporting Time Zone Behavior
Sonar's Business Intelligence: Overview
Understanding Sonar Reports
Using Sonar DataConnect to Connect BI Applications with Your Sonar Instance
Security
Application Firewall: General Overview and Best Practices
Auth0: Overview
Multi-Factor Authentication: Overview
Password Policy In Depth
Removing a Terminated Employee In Sonar
Role Creation using GraphiQL
User Role Creation & Best Practices
Users: Overview
Sonar Billing
sonarPay
How to Find Your Processing Rates in the sonarPay Portal
Reconciling sonarPay Disbursements with Bank Deposits
What to Expect After sonarPay Enrollment
sonarPay Canada Disbursements: Overview
sonarPay Chargebacks & Disputes: Overview
sonarPay Disbursements: Overview
sonarPay Migration: Approving Your Match & Going Live
sonarPay Migration: The Token Transfer & Matching Process
sonarPay Monthly Statement: Overview
sonarPay Overview
sonarPay Reversals, Voids, & Refunds: Overview
sonarPay: Token Migration Process
System
A Deeper Dive into the New Sonar API
API Calls Using Third Party Applications: Personal Access Tokens
Browser Compatibility and Minimum Hardware Requirements for Sonar
Consuming the Sonar API
Controlling Your Landing Page: Personal Preferences
Customizing Your Customer Portal
Date/Time Picker: Overview
Dynamic Time Zones in Sonar
Filtering: Overview
Frequently Used Terms
Getting Your Data into Sonar
GraphQL Rate Limiting Overview
How To Use GraphiQL to Understand the Sonar API
How Your Data is Backed Up
How to Best Use Global Search
Interacting with Files via the API
Introducing the New Sidebar
Main Menu: Overview
Mutations in the Sonar API
Notification Preferences
REST API Wrappers for V1 Compatibility
SMS Notifications
Sonar Feels Slow: What to Check First
Sonar's Rich Text Editor
System Settings: Overview
The New Sonar API
Troubleshooting the Customer Portal
Upgrading your Ubuntu OS - Customer Portal Upgrades
User Profile: Your Personal User Settings
View History & All Logs: Overview
Ticketing
Advanced Ticketing Features
Canned Replies Examples & Templates
Canned Reply Categories
Exploring Ticket Groups
How Sonar Manages Spam Tickets
How to Integrate Inbound Mailboxes with Slack
Inbound Mailboxes Example Build
Ticket Category Families & Ticket Categories: Overview
Ticket Resolution Reasons: Overview
Ticketing: Overview
Using Parent Tickets
Voice
API Changes for Voice Billing
Best Practices to Remain CPNI Compliant
Billing Voice Services in Sonar
Deploying Voice Services in Sonar
Working With the Sonar Team & Additional Resources
Sonar's Security Practices & Certifications
Security & Compliance
Sonar and General Data Protection Regulation (GDPR)
Technical Security Overview
Best Practices for Fast Tracking a Support Request
Feedback Portal / Suggest a Feature
Learning with Sonar: Tools and Resources
New Client Training Overview
Sonar Casts Table of Contents
Submitting Bugs vs. Feature Requests
The Sonar Community Forum
The Sonar Status Page
Third Party Customer Support Referrals
Where Sonar Stores Your Data
Table of Contents
- Common Pre-Installation Issues
- Common Post-Installation Issues
- I need to make changes to the portal install, but can't find the directory
- The installation completed successfully, but 401 errors pop up trying to access the portal
- Emails aren't sending from the portal's "Register" or "Reset" pages
- The Customer Portal certificate isn't renewing automatically
- The Customer Portal installation is having trouble performing updates
- I've forgotten the Settings Key generated for the Customer Portal
- I've made changes to the Customer Portal but they aren't showing
- All Categories
- System
- Troubleshooting the Customer Portal
Troubleshooting the Customer Portal
Updated
by Mitchell Ivany
- Common Pre-Installation Issues
- Common Post-Installation Issues
- I need to make changes to the portal install, but can't find the directory
- The installation completed successfully, but 401 errors pop up trying to access the portal
- Emails aren't sending from the portal's "Register" or "Reset" pages
- The Customer Portal certificate isn't renewing automatically
- The Customer Portal installation is having trouble performing updates
- I've forgotten the Settings Key generated for the Customer Portal
- I've made changes to the Customer Portal but they aren't showing
Read Time: 5 mins
After installing the Customer Portal, there are a few things that can go wrong. In most cases, these issues will have simple fixes, and in this article, we'll review some common installation missteps, and how you can correct them.
Common Pre-Installation Issues
Let's Encrypt / Certbot is failing to install the SSL certificate on my portal
The Let's Encrypt certificate installation utility, also called "Certbot", automatically queries the domain name you supplied for ownership. You can read more about the specific process Certbot uses in Let's Encrypt documentation here, but at a baseline, it requires a DNS A Record pointed towards your server and firewall rules allowing access over port 80 (HTTP traffic) and port 443 (HTTPS traffic).
If the Let's Encrypt verification process is failing, this is likely due to the DNS settings, or firewall rules. For the DNS settings, repeat the steps highlighted in the "Update Your DNS Records" portion of the Customer Portal setup Knowledge Base article, while configuring the firewall rules should be detailed in the usage guide for your network hardware.
Certbot is saying my domain has hit the maximum number of requests
If you had issues with the automatic installation of the certificate, whether due to ownership or firewall issues, and you try to repeat the installation multiple times, you'll eventually encounter an error that states too many failed authorizations recently. If this happens, unfortunately, the only thing you can do is troubleshoot the reasons behind ownership verification and wait an hour before making any additional requests. You can read more about Let's Encrypt's various forms of Rate Limiting here.
--dry-run flag to a Certbot request.My VM / terminal is telling me I have insufficient permissions
For the customer portal to install correctly, we recommend you run the commands using sudo. Should you get an error that there aren't sufficient privileges with sudo then you will either have to login as root or run sudo su if you don't have the credentials for root.
sudo su as it provides an elevated permission level and can irreversibly affect your VM if the wrong commands are used.Common Post-Installation Issues
I need to make changes to the portal install, but can't find the directory
The command find / -type d -name "customer_portal" -print 2>/dev/null will search the server and return the directory that the customer_portal directory is located. This will also bypass any permissions issues so you don't have to run it with root, but you may have to be in root to access the directory once you find out where it's located.
The installation completed successfully, but 401 errors pop up trying to access the portal
If this happens, there are a few possible causes. Either the portal user doesn't have the correct credentials/permissions or the password/username is incorrect when they were entered during the initial portal setup.
In either scenario, restart the customer portal installation process on your docker container and verify the credentials and permissions of the API user
Emails aren't sending from the portal's "Register" or "Reset" pages
Generally speaking, issues with emails sending from your portal will typically be caused by incorrect configuration on the settings page, or an issue with security settings from your email provider, although this is more common when using an email account hosted by Google. To correct this, please review the following troubleshooting steps:
- In the system settings page at https://[your portal URL]/settings, confirm that the mail username is the complete email address, along with verifying the password is correct.
- If using a Gmail domain, confirm the following:
- The password used for the email address in https://[your portal URL]/settings should be an app-specific password. See the Google documentation linked here.
- Google no longer supports the use of "Less secure apps" or devices which ask you to sign in to your Google Account using only your username and password. See the Google Documentation linked here.
- Once these settings changes have been made, you can add a contact and email to a test account, then enter that email into the form at https://[your portal URL]/register. If these settings are correct you should get a registration email sent successfully. Please ensure you use an email that is unique to a single account, or this process will fail.
The Customer Portal certificate isn't renewing automatically
This particular issue has an article dedicated to addressing it, available here.
The Customer Portal installation is having trouble performing updates
The most likely cause of this is the VM running out of storage space. In this case, the first thing to attempt is assigning more storage to your VM or your system, especially if the initial installation wasn't provided the recommended 25 GB.
I've forgotten the Settings Key generated for the Customer Portal
If you've forgotten your Settings key, you can perform a few simple commands to generate a new one:
- From the
customer_portaldirectory, you can executesudo docker-compose exec app /bin/bashto access the docker container the portal is running in - The command
php artisan sonar:settingskeywill generate a new key for the "/settings" page of your Customer Portal to replace the forgotten keyOther useful commands includephp artisan sonar:test:smtp {email}to test your mail settings to some destination email address
I've made changes to the Customer Portal but they aren't showing
After changes are made to the customer portal, your docker container must be restarted to ensure the changes can be reflected. To do so, the following commands must be executed:
- The command
customer_portal# docker-compose stopwill stop running containers, but won't remove them.The portal will be unavailable for customers when this command is initiated and will not become accessible until the command below is issued. - And
customer_portal# docker-compose startwill restart the containers stopped previously.
Once both commands have been executed successfully, the prior changes should be visible.