Comments (1)
Minimal steps needed to clean an activity report (surely needs more - this is from memory). Start with these tweaks from a Google Sheets import (apologies for the GIF; I'm low on time; I bet there's a GIF-to-video out there):
Payments + Invoicing
*When mentioning select all and deleting something, this excludes headers -- always exclude headers for deleting things.
- Dupe the email field and call it
Email Dupe (Name - Unique Id)
- Dupe the phone number and call it
Phone Dupe (Customer - Phone)
, where the other isContact - Phone
- Create 2 fields to the right of Full Name:
First Name
+Last Name
💡InvoiceNinja's "Name" is mysteriously a unique ID for a
business, not to be confused with full name. Email is NOT a unique id (additionally mysterious). - Ask chatgpt to make you a formula to extract the first + last names. I used this:
// First name
=IF(ISNUMBER(FIND(" ", D2)), TRIM(LEFT(D2, FIND("#", SUBSTITUTE(D2, " ", "#", LEN(D2) - LEN(SUBSTITUTE(D2, " ", "")))) - 1)), D2)
// Last name
=IF(ISNUMBER(FIND(" ", D2)), TRIM(RIGHT(D2, LEN(D2) - FIND("#", SUBSTITUTE(D2, " ", "#", LEN(D2) - LEN(SUBSTITUTE(D2, " ", "")))))), "Unknown")
- Convert amounts to currency type (default is string)
- Dupe the amount paid and create a
normalized paid
field +refund amt
field: If >0, it's normalized paid. If <0, it's refund. Cut and special paste as "values" so you can delete the un-normalized column to prevent confusion (since it has both payments and refunds). - Dupe the normalized amt paid field ( for
product - product
), other forpayment - amount
Date
is nice for a custom client 1 field for sort of a "1st pmt date" if tracking seniority- Filter
names
-> select none -> select (empty) -> Delete all columns showing -> clear filter - Filter
emails
-> select none -> select (empty) -> Delete all columns showing -> clear filter - Filter
status
-> select none -> select (empty) -> Delete all columns showing -> clear filter - Filter
invoice number
-> select none -> select (empty) -> Delete all columns showing -> clear filter - Select all -> data -> clear dupes -> checkbox row1=headers -> select
invoice numbers
-> clear dupes -> clean empty rows - Filter
currency
-> select none -> select (empty) -> Delete all columns showing -> clear filter - While
currency
still filtered, show any non-USD only. If !tracking, delete. If tracking, you'll need to make a formula in a new column to convert to USD (or use the currency exchange import mapping which I haven't used before; no idea if it works) -- this part gets complex. I personally just deleted non-USD to simplify it at the cost of history. - Filter
type
(payment method) -> select none -> select (empty) -> Delete all columns showing -> clear filter - While
type
is still filtered, only show anything irrelevant to customer payment gateways -> Delete these rows -> delete empty rows. - If you have any unicode notes that are patterned, CTRL+H to replace since importninja won't import unicode (it'll show as garbled text).
- Find qty -> change it all to static 1 (since your line items will be lost -- paypal mixes them up, making them impossible to parse).
- Create a new column called
Product - Product
and fill with "Unknown" since item name is required (the app won't tell you this). - Delete
Reference Txn ID
column - that's not to be confused with transaction id - PayPal fees and net can be deleted - these are NOT subcharges since paypal shows inclusive amounts.
...this has been hell 🔥but I did get it to work. I tried recording a macro more than once, but replaying always fails early.
Clients
- Dupe the sheet above to a new sheet and call it
clients
. - CTRL+A -> data -> clean dupes
- Checkbox 1st row are headers -> uncheck all -> check only email from field -> delete dupes
- Clean empty rows
from invoiceninja.
Related Issues (20)
- [FEATURE REQUEST] Footer totals feature in last parts of the app
- [FEATURE REQUEST] Vendor extension with "Payment" and overview "Balances" feature as with clients
- Group and subtotal quotes
- Currency format option
- Have expense taxes be opaque to the client
- unable to generate invoice pdf HOT 52
- Need and option to add Advance paid in Invoice HOT 1
- Reduce metadata in PDFs for better OpSec/Privacy HOT 1
- flutter admin panel HOT 1
- Cannot edit clients HOT 1
- Products in projects
- Seperate “$entity.terms” content from “table-totals”
- multiple tax rates with same name should be possible HOT 1
- Cannot update from 5.8.57 to 5.10.13 - 500 error on component HOT 1
- Feature Request - Recurring Credits
- Payments without invoices HOT 10
- Payment handling HOT 3
- Upcoming Invoices on Dashboard shows every invoice after upgrade HOT 1
- Refreshing the browser on any InvoiceNinja page displays a 404 error HOT 8
- Expense category options not displaying in drop down menu when entering expense (repeat bug) HOT 8
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from invoiceninja.