Fastbucks is a simple, no-frills JIRA Add-On that automates invoicing your clients from JIRA projects. Invoices are based on JIRA worklogs. Fastbucks connects to an online invoicing system such as Xero and Freshbooks (Classic) via OAuth or token, schedules the invoicing process and creates invoices per JIRA project. The summary of time spent on each issue is invoiced as a separate item.

Setup

Global Xero Configuration

  1. For Fastbucks to authenticate with Xero create a public/private key pair.
  2. Register Fastbucks as a private application in Xero. Keep a copy of the ASCII version of the private key used to generate the X.509 certificate. You need this later to configure the Fastbucks-Xero connection.
  3. Goto to the JIRA Add-on Management console and select ‘Fastbucks’, click the ‘Configure’ button.
  4. A list with installed clients loads, click on ‘Edit’ in the Xero row.
  5. Enter the ‘Consumer Key’ as provided by Xero
  6. Enter the ‘Consumer Secret’ as provided by Xero
  7. Copy and paste the private key contents into the private key field
  8. Enter the Xero API Url as specified by Xero.
  9. Save and Test the connection.

Global Freshbooks (Classic*) Setup

  1. For your classic Freshbooks account, you’ll be given a unique authentication token. The admin user’s authentication token can be found on the “FreshBooks API” page.
  2. Goto to the JIRA Add-on Management console and select ‘Fastbucks’, click the ‘Configure’ button.
  3. A list with installed clients loads, click on ‘Edit’ in the Freshbooks row.
  4. Enter the API key as provided by your Freshbooks home > My Account > Freshbooks API
  5. Enter the API URL as provided by your Freshbooks home > My Account > Freshbooks API
  6. Save and test the connection
1290572_orig
The new version (2) of Freshbooks uses a different authentication which is not yet supported by Fastbucks. To use JIRA + Fastbucks with Freshbooks register for Freshbooks Classic when you sign up.

Project Setup

5662129
  1. In your JIRA project administration summary screen click the cog button in the ‘Accounting’ section.
  2. Select Xero or Freshbooks as the project client
  3. Enter the hourly rate for this project. This value will be multiplied with the amount of time spent on issues.
  4. Select the status an issue must be in to be eligible for invoicing. For example select ‘Resolved’ to invoice only issues that have been resolved. Select blank to ignore this setting.
  5. For manual invoicing via Fastbucks InvoiceNow™  uncheck ‘Use Scheduler’. Once the configuration is complete use the action screen to preview and send invoices instantly.
  6. For automated invoicing enter the schedule and first date to start from. Either use the cron editor by clicking on the icon next to the Cron Expression input field or enter a cron expression directly.  The Cron Expression value tells the Fastbucks scheduler when to send an invoice.  When the time is up, Fastbucks will analyse the project’s issue worklog, accumulate the time spent and send an itemized (per issue) invoice to Xero
  7. Enter the Billing Contact. This must be the name of an existing Xero Contact to which the invoice will be sent to.
  8. Select the invoice type – per user or per issue. This determines if the invoice is itemised on a per-issue basis or on a per-user basis. The per-user basis is useful when you have different hourly rates for different users. If items on the invoice are per-user you can adjust the rate for each user in your invoicing system manually before sending it out – see here.
  9. Save and test to verify the contact.

Fastbucks Actions

Choose ‘Test‘ to test the Fastbucks project configuration by verifying the invoice contact in the remote accounting system.

Choose ‘Invoice Now’ to preview an invoice for a chosen period and optionally send the invoice instantly.


Invoice Preview and InvoiceNow™

Fastbucks provides an invoice preview and an option to send the current invoice immediately. In the JIRA project’s Fastbucks admin panel select ‘Invoice Now’, select an invoice period. A preview is rendered based on the Fastbucks project configuration parameters ‘Issue status filter’ and ‘Invoice Type’. The preview offers a ‘Send’ button to send the currently viewed invoice instantly to the remote accounting system.

728566_orig

Integration with Other Accounting Systems

Fastbucks has a generic and pluggable accounting system client interface. We will add client support for freshbooks and other systems in the upcoming releases. Once the Fastbucks client API is stable it will be open-sourced to enable others to provide support for more accounting systems.