Our Products & Services
Getting Started
First Time Setup
Getting Started With Jobs
Getting Started with Accounts
Getting Started with Inventory
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
Disconnecting an Account
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 & Tasks: Best Practices & Use Cases
Scheduled Events: Overview & Use Cases
Serviceable Addresses: Overview and Usage
Specify Account ID upon Creation
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
Considerations When Using Avalara with Voice Services
Creating Discounts for Services and Packages
Delinquency Billing Best Practices
Delinquency Exclusions: Overview and Use Cases
Email Invoice Batch: Overview
General Ledger Codes: Overview
General Transactions: Best Practices
How Sonar Prorates Billing
How to Take Bank Account Payments
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
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
Call Logs: General Best Practices
Communication Tools: 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
Financial
Contract Templates
Invoice Attachment Use Cases & PDF Examples
Invoice Messages: Overview & Use Cases
Invoices in Sonar: Examples, Creation & Contents
Integrations
Calix SMx Integration: Overview
CrowdFiber Integration
External Marketing Providers
GPS Tracking Providers: Overview
GoCardless Integration: Overview & Setup
How to Connect Cambium to your Sonar Instance
How to Connect Preseem to your Sonar System
How to: Using Webhooks in Sonar
RemoteWinBox - Integration with Sonar
The Sonar Field Tech App
Tower Coverage Integration: Overview
Vetro FiberMap Integration: 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 How-to: Creating and Booking a Job
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
Networking
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
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 Integration: 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
Using Multiple Network Devices in Sonar
Purchase Orders
Release Notes
Reporting
Enhanced Business Intelligence - Tips & Tricks for Advanced Users
How To Enhance Your Reporting With Custom Field Data
Report Licenses
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
sonarPay Chargebacks & Disputes: Overview
sonarPay Disbursements: 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
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'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
Ticketing
Advanced Ticketing Features
Canned Replies Examples & Templates
Canned Reply Categories
Exploring Ticket Groups
How to Integrate Inbound Mailboxes with Slack
Inbound Mailboxes Example Build
Ticket Categories Best Practices & Example Build
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
Sonar and General Data Protection Regulation (GDPR)
Sonar's Security Strategies
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
Table of Contents
- All Categories
- Billing
- General Transactions: Best Practices
General Transactions: Best Practices
Updated
by Mitchell Paul-Soumis
Read Time: 5 mins
In Sonar, you're able to create transactions and apply them directly to a customer account. We've previously covered the process behind how to make Manual Transactions, and in this article, we'll be reviewing some commonly made transactions and how best to handle and process them in Sonar.
Voiding an Invoice & Providing a Partial Refund
Scenario
You, or your technician, have completed the installation of a customer's service. As a result, their account was activated and an invoice was generated for the services they've subscribed to. The customer pays the invoice but after a few days, a cause for a partial refund occurs. In many cases, billing teams will attempt to void the original invoice and provide a partial refund back to the customer's original payment method.
Recommended Best Practice Within Sonar
The simplest method of issuing a partial refund and voiding an invoice is to do neither of those things. Issuing an Adjustment Credit or some other One-Time Transaction that is applied as a credit to the next invoice will correct the balances and remove the need to modify past transactions.
An alternative to applying credits on the account would be to void the invoice and do a complete refund, rather than attempting a void and a partial refund. This way, you can adjust the base cost on the invoice before applying the payment, leading to a tidier accounting process.
Keep in mind that this will change the billing and payment reports for that month. You may need to contact your accounting team to confirm what change they would prefer (e.g., correcting an invoice over a month or a different year).
Taking a Deposit Before Installation
Scenario
Your organization has a standard policy of requiring the prospective customers to pay a deposit - either on the hardware they're receiving or on the installation itself. This deposit is simply a one-time transaction in Sonar.
Recommended Best Practice Within Sonar
This particular scenario has a variety of ways to approach it, depending on how your organization operates:
- The first option is also the simplest from an operational standpoint - when a customer calls (or is called) to arrange for service installation, the transaction is added to the account, invoiced, and paid by the customer all at once. This approach results in the least overhead, however, some customers will be hesitant to pay a significant deposit prior to receiving any service or guarantees.
- The second solution incorporates certain elements of the first - when the customer calls to set up the installation appointment, a one-time transaction is added to the account and an invoice is generated. Where it differs is that rather than taking payment over the phone, the technician assigned to the job will take payment upon arrival at the customer's premises. Once payment is received, they'll enter it on the account and pay the invoice.Using this solution, we encourage you to make use of Task Templates and ensure a task is added to have the technician take a picture of either the payment method or cash/check payment.If you're allowing your technicians to directly receive cash or check payments, ensure enough time is left between their appointments for them to deposit the payments back at the dispatch office.
- The third solution is for use only if your organization has some compelling reason to not create an invoice for your customers immediately. In this particular solution, the one-time transaction would be added but no invoice would be created. Your technician would receive payment from the customer and simply log it using the field technician app as soon as possible. Both the transaction and the payment would need to be invoiced at a later date.Using this solution, we encourage you to make use of Task Templates and ensure a task is added to have the technician take a picture of either the payment method or cash/check payment.If you're allowing your technicians to directly receive cash or check payments, ensure enough time is left between their appointments for them to deposit the payments back at the dispatch office.
Charging Hourly (for Technician Appointments or Other Work)
Scenario
There may be times when the job scheduled at the customer premises requires additional charges. While some jobs might be able to get scheduled at a flat rate, very frequently you'll want to charge hourly for these particular technician visits. While there's no true way to bill hourly in Sonar, there are still a few solutions.
Recommended Best Practice Within Sonar
In Sonar there are 2 primary methods of billing hourly:
- If you charge purely by the hour - either by rounding up or rounding down incomplete hours - we recommend using a single service and modifying the quantity of the service as it's added to the account.
- If you charge to the minute, we recommend using a single service and placing a price override on the service to ensure the amount being billed accurately reflects the exact amount of time that was spent by your technician on the project or job.
In both these solutions, there are some important reporting considerations:
- If you were to run a historical report in the first scenario, you would only see the total number of services, and which account they were billed on. This means on account A, which you billed for a 3 hour job (so 3 of the same service using a quantity change). When a report is run on the account in several months, or at any point in the future, it will simply reflect that the service occurred 3 times, not as part of a quantity adjustment. This makes it difficult to report on how long a job is taking without opening the account or specific invoice.
- Using the second solution, the reporting will show the service and the adjusted price. This will allow you to obtain the time spent with some calculation, but if the base price of the technician visit changes, it can potentially cause human error in the future.