Skip to content

cclambie/Xero-Cash-Coding-Filter

Repository files navigation

Xero Cash Coding Filter

A Firefox browser extension that enhances the Xero Cash Coding page with powerful filtering and bulk loading capabilities.

Features

1. Load All Button

  • Adds a "Load all" button next to the existing "Show more" button
  • Automatically clicks "Show more" repeatedly until all transactions are loaded
  • Automatically checks the "Show lines with suggested matches" checkbox

2. Advanced Filtering

  • Adds a filter row in the table header with:
    • Checkbox column: Select/deselect all currently visible (filtered) items
    • Date column: Displays "Filter:" label
    • Payee, Reference, Description columns: Text input boxes for filtering
    • Other columns remain empty for clean interface

3. Real-time Filtering

  • Filters update as you type (onchange and oninput events)
  • Case-insensitive text matching
  • AND logic across multiple filters (all conditions must match)
  • Only visible rows can be selected with the "select all" checkbox

Installation Instructions

Method 1: Temporary Installation (for testing)

  1. Open Firefox and navigate to about:debugging
  2. Click on "This Firefox" in the left sidebar
  3. Click the "Load Temporary Add-on..." button
  4. Navigate to the xero_cash_coding_filter directory
  5. Select the manifest.json file
  6. The extension will be loaded temporarily (until you close Firefox)

Method 2: Permanent Installation (for daily use)

Option A: Create unsigned XPI (Developer Edition/Nightly)

  1. Install web-ext (requires Node.js):

    npm install -g web-ext
  2. Navigate to the extension directory:

    cd /home/ubuntu/xero_cash_coding_filter
  3. Build the extension:

    web-ext build
  4. Install in Firefox Developer Edition or Nightly:

    • In Firefox, navigate to about:config
    • Set xpinstall.signatures.required to false
    • Drag and drop the .zip file from web-ext-artifacts/ onto Firefox

Option B: Sign with Mozilla (Recommended for regular Firefox)

  1. Create an account at addons.mozilla.org
  2. Go to Developer Hub
  3. Submit your extension for signing
  4. Once signed, download and install the .xpi file

Option C: Manual Installation (Developer Edition)

  1. Package the extension manually:

    cd /home/ubuntu/xero_cash_coding_filter
    zip -r xero_cash_coding_filter.xpi manifest.json content.js styles.css icon.png
  2. Install the XPI:

    • Open Firefox Developer Edition or Nightly
    • Navigate to about:config and set xpinstall.signatures.required to false
    • Drag and drop the .xpi file onto Firefox

Usage

  1. Navigate to your Xero Cash Coding page: https://go.xero.com/Bank/FastCoding.aspx
  2. The extension will automatically activate
  3. You'll see:
    • A new "Load all" button next to "Show more"
    • A filter row at the top of the table

To Load All Transactions:

  • Click the "Load all" button
  • Wait while all transactions are loaded (this may take a few moments)
  • The "Show lines with suggested matches" checkbox will be automatically checked

To Filter Transactions:

  • Type in any of the filter input boxes (Payee, Reference, or Description)
  • The table will filter in real-time
  • Use multiple filters to narrow down results (AND logic)
  • Click the checkbox in the filter row to select/deselect all visible items

Technical Details

  • Manifest Version: 2 (compatible with Firefox ESR and current versions)
  • Permissions: Only runs on https://go.xero.com/Bank/FastCoding.aspx*
  • Content Script: Injects filtering and loading functionality
  • No external dependencies: Pure vanilla JavaScript

File Structure

xero_cash_coding_filter/
├── manifest.json       # Extension configuration
├── content.js          # Main functionality script
├── styles.css          # Filter UI styling
├── icon.png           # Extension icon (optional)
└── README.md          # This file

Browser Compatibility

  • Firefox 48+
  • Firefox Developer Edition
  • Firefox Nightly
  • Firefox ESR

Notes

  • The extension only activates on the Xero Cash Coding page
  • All filtering happens client-side for instant results
  • The "Load all" feature may take time depending on the number of transactions
  • Filtering does not modify the Xero data, only the display

Troubleshooting

Extension doesn't load:

  • Check that you're on the correct URL: https://go.xero.com/Bank/FastCoding.aspx
  • Open the Browser Console (Ctrl+Shift+J) and look for messages starting with "Xero Cash Coding Filter:"
  • Reload the page

Filters not working:

  • Ensure rows are loaded (click "Load all" or "Show more" first)
  • Check the Browser Console for errors
  • Try refreshing the page

Load all button not appearing:

  • The page may still be loading
  • Check that the "Show more" button exists on the page
  • Reload the page

License

This extension is provided as-is for personal use.

Support

For issues or feature requests, please check the browser console for error messages and verify all files are properly loaded.

About

A firefix Extension that allows you to filter the cash coding page

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors