# Configure a Draft Invoice
Source: https://help.ruddr.io/billing/configure-a-draft-invoice
Edit a draft invoice in Ruddr, including the header, settings, line items, and footer, plus invoice variables, numbering, taxes, and discounts.
When a draft invoice is created from the [Ready to Bill](/billing/ready-to-bill) screen, you will be taken to the edit view of the invoice (Figure 1).
From here you can control the items that will be included on the invoice, the grouping and display of those items, and general invoice information such as the client street address, purchase order number, discount, and taxes. Note that in order to create a draft invoice, you must have the **Create and edit draft invoices** permission on your security role.
When viewing the invoice in draft mode, you can edit individual areas of the invoice:
* [Invoice Header](#invoice-header)
* [Invoice Settings](#invoice-settings)
* [Invoice Line Items](#invoice-line-items)
* [Invoice Footer](#invoice-footer)
### Invoice Header
The invoice header (Figure 2) shows the high-level invoice information including the client name and street address, issued date, due date, purchase order number, invoice number, and total invoice amount.
When the invoice is created, Ruddr leverages either the client's invoice settings or the project's invoice settings to populate various fields on the invoice.
When a single project is associated with an invoice, the project's invoice settings override the client invoice settings, when those are different. In that case the invoice is populated with the single project's invoice settings. When an invoice is created for multiple projects, the client's invoice settings override the individual projects' settings and are populated on the invoice. These settings include invoice To: recipients, Cc: recipients, billing address, payment terms, etc.
The lone exception to this rule is the PO Number.
**PO Number**
The purchase order number is populated from the [Project](/projects/create-a-new-project) record. If there are multiple projects associated with the invoice, multiple purchase order numbers will be shown. You can also change the [invoice number](#invoice-numbering) and choose to reset the invoice seeding.
To edit the header invoice information, simply click the pencil icon (Figure 2) which is next to the gear icon. This will bring up the **Invoice Header** drawer (Figure 3). The client name will be read-only because an invoice can not have its client changed once the invoice is created. Note that changes to the street address and billing terms on a given invoice will not update those same fields on the Client record. Similarly, any change to the purchase order number will not change the underlying Project record. Changes made in this drawer will only be applied to this invoice.
#### Invoice Variables
Note that you can employ invoice variables in the Invoice Subject on the header by clicking the **Insert Variables** link above this field (Figure 3). Invoice variables provide a way of inserting invoice-specific data into the invoice without the need to rekey the value. When you click on the **Insert Variables** link, you will be presented with a list of variable, such as **Client Name, Due Date, Issue Date Year, Invoice Total, Project Names**, and so on.
Furthermore, you can configure the default text for the Invoice Subject in [Invoice settings](/workspace-administration/invoice-settings) within the workspace settings area.
**NOTE:** When viewing a draft invoice, you will see the invoice variables presented. While in draft mode, variables will resolve on the invoice preview only. Once an invoice is published, the invoice variables will no longer appear - you will see the actual values of the variables presented on the invoice screen, as well as on the web view of the invoice itself (what the client will see).
#### Invoice Numbering
When an invoice is created in Ruddr, Ruddr applies an Invoice Number to the invoice. If, while in Draft mode, you change the invoice number in the Invoice Header, Ruddr will recognize that you are doing so. As such, Ruddr will prompt you (Figure 4), asking if you would like to reset the invoice numbering to increment from the new invoice number you are specifying.
To change the invoice number on the invoice without resetting the invoice seeding, choose **No** on the confirmation prompt (Figure 4). To change the invoice number and to reset the invoice seeding, choose **Yes**. To avoid taking either of these actions, click **Cancel**.
### Invoice Settings
To adjust the settings for the invoice, click the gear icon at the top-right which will bring up the **Invoice Settings** drawer (Figure 5). From this drawer you have the option to associate the invoice with additional projects, include receipts with the invoice as well as a detailed time report. You can also specify which columns on the invoice you want displayed for the client-facing versions (digital and PDF) of the invoice. The details to be provided in the time report can be specified as well.
When the Time Detail Report and / or Include Receipts options are enabled, buttons will show at the top of the invoice (Figure 6). These buttons can be used by the client to review the receipts and time detail associated with the invoice. Additionally, a button will be available to download a compressed (zip) file with the expenses.
When viewing the Time Detail report, you can download it using the export menu in the top-right corner of the report. Choose **Export to CSV** for a spreadsheet or **Export to PDF** for a formatted document. The PDF matches the detailed time report that Ruddr attaches to invoice emails, and both files include the columns you selected in the invoice's time report settings.
You can also access details regarding the history (Figure 7) of the invoice record in Ruddr by clicking on the View History button (Figure 8) at the top right of the screen (Figure 2).
### Invoice Line Items
Below the header information are the invoice line items (Figure 9). The lines represent the fees that will be charged to the customer. You can add, edit, remove, or reorder the line items.
The first column in the invoice line items list is the **Invoice Item**. Any invoice row that has a total amount must have an Invoice Item selected. Each Ruddr workspace includes two built-in Invoice Items which are "Service" and "Expense". Additional items can be created by a Workspace Admin using the [**Custom Data**](/workspace-administration/custom-data) tab within the **Settings** area. For example, if your company sells products or different types of services, you can set up distinct Invoice Items for those.
You can edit any of the fields on the draft invoice for each line item. If you edit a quantity, rate, or amount, you will see a warning indicator (Figure 10) if the new amount does not match the original amount. If you put your mouse over this indicator, you will see a message explaining that the amount no longer matches the underlying time entries, fixed-fee milestones, or expense items.
While you can make these types of changes directly to an invoice, it is recommended that you change the underlying time entries, expense items, or milestones and then recreate the invoice. Changing items in an ad-hoc manner on an invoice will cause a disconnect between invoice amounts and the underlying operational data.
**Add Custom Line Items to an Invoice**
To add a custom line to an invoice, simply click the **+ Add Line** button at the bottom of the invoice item list (Figure 9). You can then specify the item, details, quantity, rate, amount (calculated for you), and whether or not the item is taxable. Any invoice line items that are manually added to an invoice will not be correlated with underlying operational data.
You can associate a custom line item (or ad hoc line item) to a project by specifying the project in the Invoice Line Details drawer (Figure 11) that is available when clicking on the Edit (pencil) icon on the invoice line item row (Figure 9) on the invoice.
**Setting Invoice Line Items as Taxable**
Individual line items on a draft invoice can be designated as taxable. To do this, simple click the checkbox in the **Tax** column on the right-side of the invoice line item (Figure 9). Tax will be calculated for any taxable items using the tax rate specified in the footer area (Figure 14) of the invoice.
**Adjust the Invoice Line Settings**
Click the settings wheel icon at the top-right of the line items (Figure 9) to bring up the **Line Settings** drawer (Figure 12). The settings on this drawer allow you to control the display format for time entries and expense items. Any changes made to these settings will cause the draft invoice to be recreated.
For services and expenses, you have the option of listing all time or expense items on the invoice or you can group those items. For a large project with multiple team members and a large volume of hours, you likely would not want to show each time and expense item because this can result in the invoice being many pages. If your client prefers to view this detail, you may option to include a detailed time report in lieu of displaying all of the items on the invoice itself.
**Remove Items from the Invoice**
The pencil icon at the top-right of the list (Figure 9) will open the **Items to Bill** drawer (Figure 13) that will allow you to remove any time entries, expense items, or billing schedule milestones that you don't want to invoice at this time. Any items that are unchecked from the drawer will be available to bill in the future from the [**Ready to Bill**](/billing/ready-to-bill) screen.
Note that you can also remove time, expenses, or milestones from an invoice by deleting an entire line item via the delete button on the right side of the row (Figure 9). Any items associated with the deleted line will move back to the **Ready to Bill** screen.
If you do not want to bill for the time/expense items in the future, you should edit the underlying items and set them to non-billable or move them to a non-billable role.
### Invoice Footer
At the bottom of the draft invoice is the footer (Figure 14). The footer summarizes the invoice totals and also allows you to apply a discount or tax to the invoice. Additionally, you can provide a note to the client.
When applying a discount to the invoice (Figure 15), you can specify a computed dollar amount by which to discount the invoice (**Discount Amount)** or you can specify a percentage discount (**Discount Percentage**)**.** When supplying a percentage discount, you will enter the percentage and Ruddr will calculate the amount of monies by which to discount the invoice based on that percentage.
#### Invoice Variables
Note that you can employ invoice variables in the Note to Client field by clicking the **Insert Variables** link above this field (Figure 14). Invoice variables provide a way of inserting invoice-specific data into the invoice without the need to rekey the value. When you click on the **Insert Variables** link, you will be presented with a list of variable, such as **Client Name, Due Date, Issue Date Year, Invoice Total, Project Names**, and so on.
Furthermore, you can configure the default text for the Invoice Note in [Invoice settings](/workspace-administration/invoice-settings) within the workspace settings area.
**NOTE:** When viewing a draft invoice, you will see the invoice variables presented. While in draft mode, variables will resolve on the invoice preview only. Once an invoice is published, the invoice variables will no longer appear - you will see the actual values of the variables presented on the invoice screen, as well as on the web view of the invoice itself (what the client will see).
### Preview the Invoice
Once you have made the necessary changes to the invoice, click the Preview button in the bar (Figure 16) at the bottom of the screen. This will bring up a preview of how the invoice will look to the client.
The invoice preview will have the word "DRAFT" across the top until the invoice is published.
# Credit Notes
Source: https://help.ruddr.io/billing/credit-notes
Create, publish, send, and delete credit notes in Ruddr to adjust issued invoices and earned revenue, including how credits sync with QuickBooks Online and Xero.
Credit notes (often referred to as credit memos) allow you to make changes to invoices after they have been published / issued. By issuing a credit note, you are reducing the amount of an invoice(s) to account for changes in the invoiced amount or the expected amount to be received via payment. Credit notes can also be used to offset the entire amount of an invoice. All of these scenarios allow you to make changes to the invoice without the need to delete and re-create an invoice once it has been issued or some payment has been received.
When you publish a credit note, you can also choose to reduce the earned revenue of the credited projects by the amount of the credit note. See [Publish a Credit Note](#publish-a-credit-note) for details.
In Ruddr, there are three actions related to credit notes:
* [Create a Credit Note](#create-a-credit-note)
* [For an Invoice](#creating-a-credit-note-for-an-invoice)
* [Ad-Hoc Credit Note](#creating-an-ad-hoc-credit-note)
* [Publish a Credit Note](#publish-a-credit-note)
* [With the QuickBooks Online integration](#publishing-a-credit-note-with-the-quickbooks-online-integration)
* [With the Xero integration](#publishing-a-credit-note-with-the-xero-integration)
* [Send a Credit Note](#send-a-credit-note)
* [Delete a Credit Note](#delete-a-credit-note)
Generally speaking, credit notes are very similar to Invoices in Ruddr. They have the following sections, as do invoices:
* Credit Note Header
* Credit Note Line Items
* Credit Note Footer
### Create a Credit Note
You can issue a [credit note in Ruddr for a specific invoice](#creating-a-credit-note-for-an-invoice) from within the invoice itself or via the [invoices list](/billing/invoices-list). You can also [create an ad-hoc credit note](#creating-an-ad-hoc-credit-note) from within the **Credit Notes** section (Figure 1) in the **Billing** area of Ruddr.
Issuing a credit note for a specific invoice, will allow you to credit individual line items or individual transactions (time entries, expenses, products, additional services, other items, billing milestones) associated with that invoice.
Issuing an ad-hoc credit note will allow you to associate the credit note with one or more projects and to apply a credit one or more invoices without the need to associate the credit note with transactions from a specific invoice.
#### Creating a Credit Note for an Invoice
To create a credit note from within the invoice, simply click on the credit note menu (Figure 2) and select the **Issue Credit Note** option.
This will bring up the **Issue Credit Note** drawer (Figure 3). From this drawer, you can select the invoice's associated items that you wish to credit.
In the Issue Credit Note drawer, you will see a list of invoice line items. You can credit entire line items, or expand the line items to select individual time entries, expenses, products, additional services, other items, or fixed fee billing milestones to credit.
Items that were already credited on a previous credit note are disabled in the drawer so that they cannot be credited twice. Hovering over a disabled item shows which credit note already credited it, and if every item on a line has already been credited, that entire line is disabled. Ruddr also prevents an item from being credited on more than one credit note, even if you try to add it another way.
Once you have chosen the items, click the **Save & Close** button at the bottom of the drawer. You will be prompted to confirm that you want to issue the credit note for the selected amount. Click **Issue** to create the credit note.
The credited items remain associated with the invoice. To reduce the earned revenue of the affected projects, choose the earned revenue adjustment option when you [publish the credit note](#publish-a-credit-note).
Upon issuing the credit note, you will be taken to the draft credit note (Figure 4).
Once the credit note has been created, you can preview the credit note, just as you can preview an invoice. Once you have configured the credit note, you can publish the credit note and apply the credit to the invoice.
#### Creating an Ad-hoc Credit Note
You do not have to create a credit note for items on a specific invoice - you can create an ad-hoc credit note, in which you specify a specific credit amount for a specific client, or specific projects for a client. With an ad-hoc credit note, you can apply any amount of credit across multiple invoices.
To create an ad-hoc credit note, click the **Create Credit Note** button on the Credit Notes screen (Figure 5).
You will be prompted (Figure 6) to specify both the client for whom to create the credit note and the currency for the credit to be applied.
Once a client and currency have been specified, you will be taken to a draft credit note (Figure 7). In the draft credit note, you can associate projects with the credit note by clicking the **Settings** gear button at the top of the credit note.
In the **Credit Note Settings** drawer (Figure 8), you can select one or more projects from the **Projects** dropdown. Doing so will make these projects available for association with individual, ad-hoc line items on the credit note.
With projects selected, the next step will be to add ad-hoc line items to the credit note. The total of these line items should equate to the total amount of credit being issued. To add an ad-hoc line item to the credit note, click the **+ Add Line** link (Figure 9) in the credit note line item area of the credit note.
Once the ad-hoc line item has been added, you will need to supply any relevant information needed to signify the credit being issued:
* Item (required)
* Details
* Quantity
* Rate
* Amount (required)
* Taxable
Any credit note line items that are manually added to a credit note will not be correlated with underlying operational data. To associate operational data with a credit note, you will want to [create a credit note for a specific invoice](#creating-a-credit-note-for-an-invoice).
The first column in the credit note line items list is the **Item**. Any credit note row that has a total amount must have an Item selected. The values available for selection are the Invoice Items that have been setup in the workspace. Each Ruddr workspace includes two built-in Invoice Items which are "Service" and "Expense". Additional items can be created by a Workspace Admin using the [**Custom Data**](/workspace-administration/custom-data) tab within the **Settings** area. For example, if your company sells products or different types of services, you can set up distinct Invoice Items for those.
If you have associated projects with the credit note, as outlined above, you can associate a custom line item (or ad hoc line item) with a project and a revenue type by clicking the **Edit** (pencil) button on the ad-hoc credit note line item row to open the **Credit Note Line Details** drawer (Figure 10). In this drawer you can set:
* **Project** - The project the line applies to.
* **Revenue Type** - The type of revenue the line represents: **Services**, **Expenses**, **Products**, or **Other Items**.
The **Project** and **Revenue Type** are what allow an ad-hoc line to be included in an earned revenue adjustment when the credit note is published. A line without both a project and a revenue type (or whose project is in a different currency than the credit note) cannot be adjusted - see [Publish a Credit Note](#publish-a-credit-note).
Once you have added all of the line items to the credit note, save the credit note by clicking on the **Save** or **Save & Preview** button at the bottom of the draft credit note.
Once the credit note has been created, you can preview the credit note, just as you can preview an invoice. Once you have configured the credit note, you can publish the credit note and apply the credit to the invoice(s).
### Publish a Credit Note
Once a credit note has been created and reviewed for accuracy, it is ready to be published. A credit note can be published from the Credit Notes screen or from within the draft credit note itself. In order to publish a credit note, you must have client-level or project-level **Publish and send invoices, and record payments** permissions on your security role. To publish a credit note from the Credit Notes screen, simply click the **Publish** option from the credit note action menu (Figure 11).
When publishing a credit note, the **Publish Credit Note** drawer (Figure 12) will be presented. From this drawer, you choose whether to adjust earned revenue and you apply the value of the credit note to one or more Open invoices.
#### Adjusting Earned Revenue
In the **Earned Revenue** section of the Publish Credit Note drawer, you choose how publishing the credit note should affect the earned revenue of the credited projects:
* **Do not adjust the project's earned revenue** - Publishing the credit note applies the credit to invoices but leaves earned revenue unchanged.
* **Adjust the earned revenue by the credit note amount** - Publishing the credit note creates a negative, pre-tax earned revenue adjustment as of the credit note's issue date.
When you choose to adjust earned revenue, every line with an amount must have a **project** and a **revenue type**, and each line's project must use the same currency as the credit note. For credit notes issued from an invoice, the project and revenue type are set automatically from the credited items. For [ad-hoc credit notes](#creating-an-ad-hoc-credit-note), you set the project and revenue type on each line in the [Credit Note Line Details drawer](#creating-an-ad-hoc-credit-note). If any lines are missing this information, Ruddr lists the lines that need to be updated and prevents you from publishing with the adjustment option until they are corrected.
Each earned revenue adjustment created this way appears as a read-only entry in the affected project's [Earned Revenue Adjustment Ledger](/projects/earned-revenue-adjustment-ledger). Because the adjustment is managed by the credit note, it cannot be edited or deleted directly from the ledger. A published credit note that adjusted earned revenue is marked with an **Earned Revenue Adjusted** tag, and [unpublishing](#unpublish-a-credit-note) or [deleting](#delete-a-credit-note) the credit note removes the adjustment and restores the amount to the project's earned revenue.
#### Applying the Credit to Invoices
Below the Earned Revenue section, you apply the value of the credit note to one or more Open invoices. Ruddr pre-fills a default allocation:
* For a credit note issued from an invoice, the credit defaults to the source invoice first.
* For an ad-hoc credit note, the credit defaults to the projects' oldest open invoices, spilling to the next oldest as each invoice's balance is used up.
You can adjust the allocation as needed before publishing. Once published, the invoices are credited as specified during the publishing process and their open balances are adjusted accordingly.
#### Publishing a Credit Note with the QuickBooks Online Integration
When you publish a credit note in a workspace that leverages the [QuickBooks Online integration](/integrations/quickbooks-online-integration-overview), you have the option to save the credit note to QuickBooks Online (QBO). This option will appear at the bottom of the Publish Credit Note drawer (Figure 12).
Ruddr adopts the credit memo process from QBO - both a credit note and a payment are created and then saved to QBO.
Saving the credit note to QBO will result in the following:
* A credit memo is created in QBO
* A payment is created in QBO to allocate the credit across any credited invoices
* The payment created in QBO is replicated in Ruddr. That payment would be available in the [Payments](/billing/taking-payments) section of Ruddr
**NOTE:** in order to save a credit note to QBO, the credit must be applied to invoices that are synced with QBO. Any attempt to apply a credit to an invoice not in QBO will prevent the credit memo from being saved to QBO as part of the publishing process.
#### Publishing a Credit Note with the Xero Integration
When you publish a credit note in a workspace that leverages the [Xero integration](/integrations/xero-integration-overview), you have the option to save the credit note to Xero. This option will appear at the bottom of the Publish Credit Note drawer (Figure 12). Saving the credit note to Xero will result in the following:
* Xero will create a credit note
* Credit is applied to invoices in Xero and in Ruddr
You would have a credit note in Ruddr and Xero and any number of credits applied to invoices would exist in both Ruddr and in Xero.
**NOTE:** in order to save a credit note to Xero, the credit must be applied to invoices that are synced with Xero. Any attempt to apply a credit to an invoice not in Xero will prevent the credit memo from being saved to Xero as part of the publishing process.
### Send a Credit Note
Once a credit note has been [published](#publish-a-credit-note), you can send it to your client. On the credit note, you will see a **Send** button. Clicking on that button will open the **Send Credit Note via Email** drawer (Figure 13). If you would like to attach any supporting documents or attach a PDF of the credit note , you can provide those on the Attachment tab on the drawer.
Once you have validated the contact information, click the **Send** button on the drawer to send the credit note to the client.
### Unpublish a Credit Note
You can unpublish a published credit note from the credit note itself. Unpublishing removes any credit that was applied to invoices, and if the credit note adjusted earned revenue, it also removes the earned revenue adjustments, restoring the adjusted amounts to the projects' earned revenue.
### Delete a Credit Note
To delete a credit note, either select the **Delete** action item from the Credit Notes action menu (Figure 11) or click the **Delete** button on the credit note itself. You will be prompted (Figure 14) by Ruddr to confirm this delete action
Deleting the credit note in Ruddr will remove all credits that have been applied to invoices. If the credit note adjusted earned revenue, deleting it also removes those earned revenue adjustments, restoring the adjusted amounts to the projects' earned revenue.
#### Deleting a Credit Note with the QuickBooks Online Integration
As denoted in [publishing a credit note with the QuickBooks Online integration](#publishing-a-credit-note-with-the-quickbooks-online-integration), QBO creates a credit memo and any number of payments needed to credit invoices when a credit note is saved to QBO via the integration. Those payments are replicated in Ruddr.
When you delete a credit note in Ruddr, you will be prompted to also remove that credit note from QBO. If you choose to remove the credit note in QBO, it will delete the QBO credit memo, all QBO payments created in support of the credit memo, all payments created in Ruddr, and the credit note in Ruddr.
#### Deleting a Credit Note with the Xero Integration
As denoted in [publishing a credit note with the Xero Online integration](#publishing-a-credit-note-with-the-xero-integration), Xero creates a credit note and applies the credit to any specified invoices when a Ruddr credit note is saved to Xero via the integration.
When you delete a credit note in Ruddr, you will be prompted to also remove that credit note from Xero. If you choose to remove the credit note in Xero, that credit note in Xero will be deleted, all Xero applied credits to invoices will be deleted, and the Ruddr credit note will be deleted as well.
# Invoices List
Source: https://help.ruddr.io/billing/invoices-list
Navigate the invoices list in Ruddr to filter invoices, review accounts receivable aging, and take actions on draft, open, and paid invoices.
To access invoices in Ruddr, click on the **Invoices** sub-menu item (Figure 1) within the **Billing** area.
In order to access invoices, you must have [client-level invoice permissions](/workspace-administration/security-roles#client-permissions).
* To view the invoices list (Figure 2), you must have the **View published invoices** permission on your [security role](/workspace-administration/security-roles).
* To create or edit [draft invoices](/billing/configure-a-draft-invoice), you must have the **Create and edit draft invoices** permission.
* To [publish invoices](/billing/publish-an-invoice) and send them to clients, you must have the **Publish and send invoices, and record payments** permission.
At the top of the page is a set of filters that allow you to narrow down the invoice list by client, invoice number, invoice status, issue date, receivable age, and client practice.
At the top-right of the page, you will find buttons to download the list of invoices, view the filters drawer to filter the list, and a create invoice button.
The create invoice button will allow you to create a blank invoice, such that you can create an ad-hoc invoice. Ad-hoc invoices are invoices that are created "from scratch", as opposed to invoices that are created from the [Ready to Bill](/billing/ready-to-bill) screen. In Ruddr, ad-hoc invoices should very rarely be created, as you will want to generate invoices from transactional data on your projects. You can make this button unavailable by disabling the **Allow ad-hoc invoice creation** setting in the [Invoices settings](/workspace-administration/invoice-settings) section of workspace settings.
Below the filters (Figure 2) is a breakdown of the total dollar amount of the published invoices broken down by their accounts receivable age. The bar chart shows:
* Current invoices in **green**
* Invoices 1-30 days past due in **yellow**
* Invoices greater than 30 days past due in **red**
This allows you to get a quick understanding of your accounts receivable portfolio. Note that this accounts receivable visualization only includes published invoices and not draft invoices.
The list of invoices can be downloaded by clicking the download button to the left of the filters button at the top-right of the list.
When invoicing in Ruddr, you will move items from the [Ready to Bill](/billing/ready-to-bill) screen to [draft invoices](/billing/configure-a-draft-invoice) and ultimately to [published invoices](/billing/publish-an-invoice). Invoices cannot be sent to clients until they are in a published state.
To view the invoice detail of any invoice in the list, simply click on the invoice row. This will bring up the detail view of the invoice. If the invoice is in a draft state, then the invoice will be editable. If the invoice has been published, it will be read-only.
The actions you can take on the invoices in the invoices list depend on the state of the invoice as well as your security role. A draft invoice has a specific set of actions (Figure 3) that allow you to work with the invoice in draft mode but also to publish the invoice.
A published invoice that has not been fully paid will be in an Open status and will has a specific set of actions (Figure 4) attributed to it that allow you to send to the client, receive payments, and even unpublish the invoice to put it back into draft mode. For workspaces that leverage the [QuickBooks Integration](/integrations/quickbooks-online-integration-overview) or the [Xero Integration](/integrations/xero-integration-overview), this action menu will allow the user to save the invoice to QuickBooks / Xero.
Lastly, a published invoice that has been paid will be in the Paid status and will allow for actions (Figure 5) such as sending (or re-sending) to the client, viewing, and saving to QuickBooks (if configured in the workspace).
Note that you cannot delete an invoice if it has payments against it. In order to delete an invoice that has payments you must first delete the payments.
# Publish an Invoice
Source: https://help.ruddr.io/billing/publish-an-invoice
What happens when you publish an invoice in Ruddr, including automatic approval of related items and locking of associated time and expenses.
Once a [draft invoice](/billing/configure-a-draft-invoice) has been reviewed for accuracy, it is ready to be published. An invoice can be published from the [invoices list](/billing/invoices-list) screen or from the draft invoice itself. In order to publish an invoice, you must have client-level **Publish and send invoices, and record payments** permissions on your security role. To publish an invoice, simply click on the **Publish** option from the invoice action menu (Figure 1).
When the publish option is selected, you will be shown a confirmation window (Figure 2). If there are any unapproved time entries or expense items related to the invoice, the confirmation window will explain that those items will be approved as a part of the publishing process. Ruddr does not allow a published invoice to include unapproved time or expense entries.
When an invoice is published, it can no longer be edited within Ruddr in any way. The only way to change a published invoice is to unpublish it first. Also, the time entries, expense items, fixed fee milestones, and other items associated with a published invoice will be locked for all workspace members. This means that no member, regardless of [security role](/workspace-administration/security-roles), will be able to change the these items once they are on a published invoice.
Note that for fixed fee projects, no time entries get locked when an invoice is published. This is because time entries for fixed fee projects are not directly associated with an invoice.
# Ready to Bill
Source: https://help.ruddr.io/billing/ready-to-bill
Use the Ready to Bill screen in Ruddr to review billable services, expenses, and other items and turn them into draft invoices for your clients.
The first step in invoicing your clients is to review the items that are ready to be billed. To do this, click on the **Billing** nav bar item the **Ready to Bill** sub-menu item under Billing (Figure 1) to access the Ready to Bill screen (Figure 2).
The Ready to Bill screen (Figure 2) is a ledger of all services, expenses, products, and other items that can be invoiced for a specified time period. In order to access the Ready to Bill screen, you must have the **Create and edit draft invoices** permission enabled on your [security role](/workspace-administration/security-roles).
At the top of the Ready to Bill screen is a date range selector (Figure 3). This date range will determine which time entries, expense items, fixed fee milestones, and other items will be invoiced. You can choose a predefined date range or you can type in / select a custom range.
Also on this screen is a dropdown (Figure 4) marked **Include Unbilled Prior Items**. Select "Yes" will include any unbilled, billable items prior to the dates specified into Ready to Bill for invoicing. This will allow you to bill a client for items that were not included on prior invoices for whatever reason.
In addition to these filters, you will find another group of refinement inputs to limit the inclusion of items that are ready to bill:
#### Client
The Client dropdown (Figure 5) enables you to filter the returned items to bill to those for a specific client. Often times, you may want to generate an invoice for one or two clients amongst a large number with items to bill. Select the client for which you wish to view items to bill.
#### Client Practice
The Client Practice dropdown (Figure 6) enables you to filter the returned items to bill to those for a specific list of clients associated with a practice. Often times, you may want to generate invoices for clients within a specific practice only. Select the client practice for which you wish to view items to bill.
#### Project Practice
The Project Practice dropdown (Figure 7) enables you to filter the returned items to bill to those for a specific list of projects associated with a practice. Often times, you may want to generate invoices for projects within a specific practice only. Select the project practice for which you wish to view items to bill.
#### Project Admin
To view a list of items to bill for projects administered by a specific Project Admin, you can use the Project Admin dropdown (Figure 8) to filter for that specific member.
#### Approved Items Only
As discussed below in the [Ready to Bill List](#ready-to-bill-list) section, Ruddr will present all items that can be considered for billing. To limit the list of items to bill to those items that are Approved, select "Yes" from the **Approved Items Only** dropdown (Figure 9) at the top of the screen.
#### Project Status
In some cases, you may wish to invoice customers based on [project status](/projects/project-status). For example, perhaps you wish to only generate invoices for "Completed" projects. When needed, specifying a particular set of projects statuses via the Project Status dropdown (Figure 10) will limit the items to bill results to only those ready to bill items on projects with the selected statuses.
#### Task Status
In some cases, you may wish to invoice customers based on project [task status](/projects/project-tasks). For example, perhaps you wish to only generate invoices for "Completed" tasks. When needed, specifying a particular set of task statuses via the Task Status dropdown (Figure 11) will limit the items to bill results to only those ready to bill items on project tasks with the selected statuses.
### Summary Bar
Immediately below the date range selector is the summary bar (Figure 12) which shows the total dollar amount of services, expenses, products, and other items that can be invoiced for the selected date range. Changing the date range will change the totals in the summary bar.
Note that clicking on any of these values will take you to the Uninvoiced Revenue report which provides the full detail.
**Services Total**
* Time and materials projects: the services total is the sum of all billable work delivered on the project during the period.
* Fixed fee projects: the services total is the sum of any [billing schedule](/projects/fixed-fee-billing-schedule) milestones that occur within the period.
**Expenses Total**
The expenses total for a project represents the sum of the project expense items in the time period that are marked as billable. Any expense items associated with the project that are not set as billable will not be shown.
**Other Items**
Other items can be scheduled similarly to fixed fee billing schedule milestones. You simply set the date that you want those other items to bill in the [**Other Items** ledger](/projects/other-items-ledger) of the project's [**Settings**](/projects/project-settings) tab.
### Ready to Bill List
Any project that has billable services, expenses, products, or other items for the period will be shown in a list (Figure 13) beneath the summary bar. Each row in this list represents a potential draft invoice. Or, multiple rows for the same client can be combined into a single draft invoice.
Note that clicking on any of the values in the list will take you to the Uninvoiced Revenue report listing the items included in the respective total (Services, Expenses, Products, Other Items, or All Items).
There may be times where you receive warnings related to items included in Ready to Bill. Putting your mouse over this icon will provide more details on the warning condition (Figure 14).
* **Unapproved Items**: If some of the time or expense items are not in an approved state, a warning icon will be shown to the right of the row. This includes items that have yet to go through client approvals, where instituted.
* **Unsubmitted Timesheets**: In workspaces that utilize the [Timesheets](/time/timesheets-overview) feature, if there are time entries in Ready to Bill that are part of an unsubmitted timesheet, a warning will be shown.
* **Zero-dollar bill rates**: If billable time entries that are assigned a bill rate of \$0.00 are included in Ready to Bill, a warning will be displayed.
Note that you can still create a draft invoice if these warning conditions exist. When the invoice is published, any unapproved time entries or expense items will be automatically approved.
To create a draft invoice for a project, simply click the checkbox on the left side of the project row and then click the **Create Invoice** button at the bottom of the screen. If you wish to create a single invoice for all billable projects within a client, click the checkbox next to the client name and then click the Create Invoice button.
**Invoice Settings and Recipients**
If you create an invoice for a single project within a client, the invoice will first look to leverage the invoice settings on the project. If, for the project, you have specified different invoice settings than what has been provided for the client, then the project's invoice settings, such as billing address, email recipients, payment terms, etc., will be used when creating the invoice. If you are creating an invoice for more than one project for the same client, the client's invoice settings will be used.
When you click the Create Invoice button, you will be shown the **Create Draft Invoice** confirmation window (Figure 15). Note that if you have any running timers associated with the draft invoice, those will be stopped when you click the **Create Invoice** button. If there are any warning conditions related to the time and expenses for this invoice, those will be detailed on this window.
# Send an Invoice
Source: https://help.ruddr.io/billing/send-an-invoice
Email a published invoice to your client from Ruddr, configure recipients and attachments, and send a test email before final delivery.
Once an invoice has been published, it can be sent to the client by Ruddr via email. To do this, simply select the **Send** option from the invoice menu (Figure 1) available on the [invoices list](/billing/invoices-list) or when viewing [invoice details](/billing/configure-a-draft-invoice).
This will bring up the **Send Invoice via Email** drawer (Figure 2). From this drawer, you can set the recipient's email address, the from name, the reply-to email address, anyone that needs to be Cc'd, the email subject, and the email body. Also, you can opt to be Bcc'd on the invoice email.
When a single project is associated with the invoice, the recipient information is populated using the project's invoice settings, as set in the **Invoice Details** section of the project's [**Settings**](/projects/project-settings) tab. When multiple projects are associated with the invoice, the invoice settings from the Edit Client drawer are used to populate the recipient information.
Clicking on the **Attachments** tab (Figure 3) will provide you with the ability to specify files that you wish to attach to the email. You can include external, supporting files, a copy of the invoice's detailed time report as a PDF, XML, or a compressed (ZIP) file containing receipts for expenses associated with the invoice. Note that this option to **Attach a PDF of the detailed time report** is only available if you have specified to include the detailed time report with the invoice. Similarly, **Attach a ZIP file of the expense receipts** is only available if you have chosen to include expense receipts with the invoice.
The maximum attachment limit when sending an invoice is 25 MB.
When the email information on the drawer looks accurate, you can click the **Send Test to Me** button (Figure 4) at the bottom of the screen to send yourself a sample of what your client will receive.
After reviewing the sample email, simply click the **Send** button (Figure 4) on the drawer to send the actual invoice email (Figure 5) to the client.
The email will include a PDF attachment of the invoice. Also, the recipient can click the **View Invoice** button on the email (Figure 5) to view a full-screen web version of the invoice. Depending on the configuration of the invoice, the web version can include receipts as well as a detailed time report.
# Taking Payments
Source: https://help.ruddr.io/billing/taking-payments
Record client payments in Ruddr from an invoice, the invoices list, or the Payments section, and allocate a payment across open invoices.
When you receive payments from your clients, you can enter those payments directly in Ruddr. If you have an accounting integration installed, such as the QuickBooks integration, you can take the payment in either Ruddr or the accounting application.
You can take a payment in Ruddr from the invoice itself, the [invoices list](/billing/invoices-list), or from the **Payments** section (Figure 1) in the **Billing** area of Ruddr. To receive a payment from the invoice, simply click on the invoice menu (Figure 2) and select the **Receive Payment** option.
This will bring up the **Receive Payment** drawer (Figure 3). From this drawer, you can provide the amount received, date received, payment method, reference number, and any notes related to the payment. Additionally, you can allocate the payment to any of the open invoices within that client.
If an invoice is paid in full, its status will automatically change from **Open** to **Paid**. If the invoice has a partial outstanding balance, it will remain in the **Open** state.
# Using Multiple Accounting Integrations
Source: https://help.ruddr.io/billing/using-multiple-accounting-integrations
Set up multiple QuickBooks or Xero integrations in one Ruddr workspace and route invoices to each one using business units.
Ruddr supports the ability to configure more than one accounting integration within a single workspace. This can be helpful for multinational companies that have a separate legal entity in each country where they operate. The [Business Units](/workspace-administration/features#business-units) feature in Ruddr is used to associate an accounting integration with each business unit.
The following key topics are related to using the Multiple Accounting Integrations feature:
* [Setting up multiple accounting integrations](#setting-up-multiple-accounting-integrations)
* [Selecting the accounting integration for the workspace and each business unit](#selecting-the-accounting-integration-for-the-workspace-and-each-business-unit)
* [Aligning business units to projects](#aligning-business-units-to-projects)
* [Understanding how invoices are associated with accounting integrations](#how-invoices-are-associated-with-accounting-integrations)
* [Credit notes and payments](#credit-notes-and-payments)
#### Setting up Multiple Accounting Integrations
In order to utilize multiple accounting integrations, you will need to enable the Multiple Accounting Integrations [feature](/workspace-administration/features) under Settings / Features. Once the feature is enabled, you can install any number of QuickBooks or Xero accounting integrations within your workspace.
* [Xero Integration Setup](/integrations/xero-integration-setup)
* [QuickBooks Online Integration Setup](/integrations/quickbooks-online-integration-setup)
When multiple accounting integrations are configured, you will see a tile for each installed integration (Figure 1) in the [Integrations](/workspace-administration/integrations) area of workspace settings.
Each integration will have the name of the instance listed. You can click the **Settings** button to access the integration configuration as outlined in the setup documentation.
#### Selecting the Accounting Integration for the Workspace and each Business Unit
Once you have connected Ruddr to your various accounting instances, the next step is to set a default accounting integration for the workspace.
In the [Invoices](/workspace-administration/invoice-settings) section of workspace settings, you will find an **Accounting Integration** setting (Figure 2). Here, you will specify the default accounting integration to use for the workspace.
The default workspace accounting integration will be used to save invoices for projects that are not associated with a specific business unit.
Each business unit in [Custom Data](/workspace-administration/custom-data) can be assigned an accounting integration. If an integration is not assigned, invoices for projects using that business unit will use the [workspace's default accounting integration](#selecting-the-accounting-integration-for-the-workspace-and-each-business-unit).
The business unit's accounting integration can be specified on the Edit Business Unit drawer (Figure 3).
#### Aligning Business Units to Projects
As detailed in the [Create a New Project](/projects/create-a-new-project) article, each project has an optional business unit setting. By selecting a business unit, invoices for that project will be created within that business unit's accounting integration.
#### How Invoices are Associated with Accounting Integrations
When you select a project on the [Ready to Bill](/billing/ready-to-bill) screen, Ruddr will disable projects within that client that use a different accounting integration (Figure 4). A project's accounting integration is based on the project's business unit. If the project does not have a business unit, its invoices will be saved to the [workspace's default accounting integration](#selecting-the-accounting-integration-for-the-workspace-and-each-business-unit). If the project has a business unit, its invoices will be saved to the accounting integration associated with that business unit.
Note that changing the accounting integration on a draft invoice (Figure 5) will disassociate all projects and transactions from the invoice.
When publishing an invoice, Ruddr will show the accounting integration that will receive the invoice (Figure 6).
Once an invoice is saved to an accounting integration, you can view the associated integration by hovering over the integration icon on the Invoices list (Figure 7).
#### Credit Notes and Payments
Any [credit notes](/billing/credit-notes) and / or [payments](/billing/taking-payments) that are associated with an invoice in Ruddr will be saved to the accounting integration that houses the invoice.
# Web Link to an Invoice
Source: https://help.ruddr.io/billing/web-link-to-an-invoice
Share an invoice outside Ruddr by copying its unique web link, and see what clients view for draft, published, and paid invoices.
All invoices in Ruddr have an associated web link. A web link is a unique URL that allows you to provide access to the invoice to anyone inside or outside of your company. If you do not use Ruddr's built-in invoice email feature, you can instead paste the web link into an email that you compose and send. To retrieve the web link for an invoice, simply click on the **Get Web Link** option on the invoice menu (Figure 1), available in the [invoices list](/billing/invoices-list) or when viewing the [invoice detail](/billing/configure-a-draft-invoice).
Clicking on this menu item will bring up a window (Figure 2) that will include the web link URL. You can click on the **Copy URL** button to copy the URL to your clipboard.
*It is important to realize that web links are not password protected*. Anyone who has the web link can view the associated invoice. A web link to a draft invoice will only show that single invoice while a web link to a published invoice will include a drop-down (Figure 3) that will show all published invoices related to that client.
When an invoice is a draft or has been fully paid, the word "DRAFT" or "PAID" will be shown (Figure 4) at the top of the web link view of the invoice.
# Archive or Delete a Client
Source: https://help.ruddr.io/clients/archive-or-delete-a-client
Learn when and how to archive or permanently delete a client in Ruddr, and what happens to its projects and associated data.
There may be times when you will need to archive or delete a client in Ruddr. If you have an old client that your team hasn't done work for in years, you may want to archive that client so that it does not show up in the active clients list in Ruddr.
You should only delete a client if it was created by mistake or is a duplicate. If a client has projects, it is highly recommended that the client be archived instead of deleted.
You can [archive](#archiving-a-client) or delete a client from the [client list](/clients/client-list) screen (Figure 2). To bring up this screen, click on **Portfolio** in the nav bar and then select the **Clients** sub-menu option (Figure 1).
Depending on the [security role](/workspace-administration/security-roles) assigned to your member profile, you may only see clients where you are on a project team for that client.
At the right end of each row, there is a menu of actions (Figure 3) you can take against the client. These actions are **View**, **Edit**, **Archive**, and **Delete**. Depending on your permissions, some of these options may be disabled.
### Archiving a Client
In order to archive a client, you must have the **Delete or archive clients** permission on your security role. Simply click the **Archive** menu option on the intended client row. This will bring up a confirmation window.
When a client is archived, each project within that client is also archived. It is not possible to have active projects within an archived client.
Once the client is archived, it is no longer possible to create projects, invoices, time entries, or expense items related to that client. Also, to edit a time or expense entry on an archived project, the member must have member-level **Administer time and expenses** permissions.
An archived client will no longer show up in the active clients list in Ruddr. But, all data associated with the archived client is maintained. Reports can be run against archived clients just as they can with active clients.
If you need to unarchive a client, simply choose the **Unarchive** menu option (Figure 4) on the archived client row in the client list.
### Deleting a Client
In order to delete a client, you must have the **Delete client** permission. Deleting a client should be a rare action and is usually only done to correct a mistake or remove a duplicate client. Once a client has projects, it is recommended that the client be archived instead of deleted.
If there are not associated projects, tasks, time entries, expenses, etc. simply click the **Delete** menu option (Figure 3) on the client row and confirm the deletion (Figure 5).
If there are any projects, tasks, time entries, expenses, etc. you will be required to confirm this action by typing in the client's name (Figure 6). When a client is deleted, all associated data related to that client is also deleted. This includes all projects, time entries, expense items, invoices, and payments.
**Once you delete a client, you cannot reverse this action, and all data related to the client will be gone forever!**
# Client Dashboard
Source: https://help.ruddr.io/clients/client-dashboard
Explore the client dashboard in Ruddr, including client KPIs on the Overview tab plus the Projects, Invoices, Contacts, and Files tabs.
When you click on a client from the [client list](/clients/client-list) screen, you will be taken to the client dashboard (Figure 1). The client dashboard includes five tabs of information which are:
* [Overview](#overview-tab)
* [Projects](#projects-tab)
* [Invoices](#invoices-tab)
* [Contacts](#contacts-tab)
* [Files](#files-tab)
At the top of the client dashboard, the client name is shown and an edit button is available on the right side of the screen. The edit button (a pencil icon) will only be visible if you have the **Edit clients** permission on your [security role](/workspace-administration/security-roles). This button opens up the client drawer where the client information can be edited.
### Overview Tab
On the overview tab of the client dashboard, there are two key areas displayed:
1\. **Client Details:** Here, on the right side of the dashboard, notes about the client are displayed and the relationship owner is identified. The relationship owner must be a workspace member. The relationship owner is likely either the sales or delivery leader who is responsible for the overall health of the client relationship. The team can also find a link to the Cloud Folder, if specified, and can read additional information such as Client Tags and the owning Practice.
2. **Client Key Performance Indicators:** On the left side of the overview tab, client KPIs are provided (Figure 1). These KPIs reflect the aggregate performance of all projects within the client, including both active and archived projects.
The KPIs provided on the overview tab include:
* **Realization Rate** - The realization rate is the percentage of all hours worked toward the client's projects that were billable. Ideally, this figure is close to 100%.
* **Effective Rate** - The effective rate is the sum of all earned services revenue across the client's projects, divided by the hours (billable and non-billable) worked on those projects. The effective rate KPI is only visible if you have project-level **View time and expenses** and project-level **View bill rates** permissions.
* **Services Margin** - The services margin is the sum of the gross profit across the client's projects divided by the sum of all earned revenue on those projects. The services margin is only visible if you have the project-level **View profit margin** permission.
* **Hours** - The total hours worked across all client projects including both billable and non-billable hours.
* **Expenses** - The total expenses across all client projects including both billable and non-billable expenses.
* **Revenue** - This graph displays a comparison of Invoiced vs. Earned Revenue. Revenue is only visible if you have project-level **View revenue** permissions.
The KPIs on the Overview tab reflect the performance of all projects within the client, even if you only have access to a subset of those projects.
### Projects Tab
The projects tab (Figure 2) lists all of the projects within the client. The list includes the project name, project code, status, project admin, billing type (w/budget), and create date. To view the project dashboard for a particular project, simply click on the project name. Depending on your [security role](/workspace-administration/security-roles), you may only see projects listed where you are on the project team.
### Invoices Tab
The invoices tab (Figure 3) lists all of the invoices (draft and published) within the client. Invoices are only visible if you have client-level **Create and edit draft invoices** permission and/or client-level **View published invoices** permission.
From the invoice list, you can view the full invoice by clicking on a row in the list. That will bring up an invoice preview (Figure 4).
### Contacts Tab
The contacts tab (Figure 5) of the client dashboard allows you to keep track of all of your contacts within the client account. To add a contact, simply click the **Create a Contact** button and fill out the information on the **New Contact** drawer (Figure 6).
### Files Tab
The Files tab is available to those workspaces that have turned on the Client and Project Files [feature](/workspace-administration/features) in workspace settings. On the Files tab (Figure 7), a member can upload files to the client record in Ruddr and, subsequently, access those files. (Note that there is a 20MB file upload limit). There are two types of files that can be added to the client:
1. **Administrator Files**: These files are only accessible (and able to be uploaded) by members that edit the client.
2. **Team Files**: These files can be accessed by any workspace member with access to the client. Only members that can edit the client can add Client Team files.
To upload files, client administrators will need click on the **Add Files** button on the top right of the Files tab (Figure 7). This will open the Files drawer (Figure 8), where files can be dropped onto the drawer, or members can click on the screen to select one or more files for upload.
Once a file(s) has been added to the screen, a member with the appropriate access can open the file for viewing, download a copy of the file, or delete the file. This can be accomplished by hovering the mouse over the file (Figure 9) and selecting the appropriate option from the list of buttons made available.
**List View**
An additional view is available on the Files tab of the client dashboard and is the List view (Figure 11). You can toggle between the Grid view (Figure 7) and the List view by clicking the view button (Figure 10) at the top of the Files tab.
From the List view, you can search for files by Filename using the search box just above the list of files. To view, download, or delete an individual file, access the action menu (Figure 12) on the respective file's row.
# Client List
Source: https://help.ruddr.io/clients/client-list
How to view, filter, edit, archive, bulk update, and delete the clients in your workspace from the Ruddr client list screen.
To view all of the clients in your workspace, click on **Portfolio** in the nav bar and then select the **Clients** sub-menu option (Figure 1). This will bring up the client list screen (Figure 2). Depending on the [security role](/workspace-administration/security-roles) assigned to your member profile, you may only see clients where you are on a project team for that client.
If you have the **Create client** permission, you will see an enabled **New Client** (**+**) button. For more on creating clients in Ruddr, see the [Create a New Client](/clients/create-a-new-client) article.
The list of clients can be downloaded by clicking the download button to the left of the **New Client** button at the top-right of the list.
From the client list screen, you have the following filters at the top of the list to help you narrow down the results:
* **Search** - You can type in a partial client name to narrow the results.
* **Client Archived** - Specify "Yes" to view archived clients or "No" to only view non-archived clients. Archived clients are displayed "greyed out" in the list.
* **Client Practice** - The practice that is assigned as the owner of the client. Practices are optional in Ruddr.
* **Client Relationship** **Owner** - Narrow down the results for a specific Client Relationship Owner.
* **Client Tags** - If you leverage client tags in your workspace, search the list of clients by active and/or inactive tags. For more information on client tags, refer to the [Custom Data article](/workspace-administration/custom-data) in the Ruddr Help Center.
Additional filters are available by clicking on the filters button at the top-right of the screen.
To view the [client dashboard](/clients/client-dashboard) for a particular client, simply click on the row in the list. The client dashboard provides high-level information about the client and its associated projects.
At the right end of each client row, you are provided with a menu of actions (Figure 3). These actions are **View**, [**Edit**](#edit-a-client), [**Archive**](#archive-a-client), **View Client Statement**, and [**Delete**](#delete-a-client). Depending on your security role, some of these options may be disabled.
The **View Client Statement** action item will take you to the Client Statement report in the Ruddr [Report library](/reports/accounting-reports).
### Edit a Client
To edit a client, you must have the **Edit clients** permission on your security role. Simply click on the **Edit** menu option on the row that you want to edit. This will open up the same client drawer (Figure 4) that is used to create a client. Alternatively, you can click on the edit button (a pencil icon) at the top-right of the client dashboard.
### Archive a Client
To archive a client, you must have the **Delete or archive clients** permission. Simply click on the **Archive** menu option (Figure 3) on the row that you wish to archive. This will bring up a confirmation window (Figure 5). When you archive a client, you will also archive all of the projects within that client.
For more about archiving a client, see the [Archive or Delete a Client](/clients/archive-or-delete-a-client) article.
### Bulk Updates for Clients
Workspace Admins have the ability to archive or unarchive clients in bulk. Once you select the clients you want to update, select the **Bulk Actions** button in the bottom right corner of the Clients list screen. (Figure 6) You will have the option of archiving, unarchiving, or deleting multiple clients.
Once you have made your selection, you will confirm the updates you want to apply and Ruddr will then show a screen confirming the actions have been completed.
**NOTE**: Ruddr will only allow clients to be deleted in bulk if those clients do not have associated projects, time entries, expenses, invoices, etc.
### Delete a Client
To delete a client, you must have the **Delete client** permission. Simply click on the **Delete** menu option (Figure 3) on the row that you want to delete. This will bring up a confirmation window (Figure 7). If the client has projects, *it is strongly recommended that you archive the client instead of deleting it*.
**Once you delete a client, you cannot reverse this action and all associated data (including projects, time entries, expenses, invoices, and payments) will be gone forever!**
For more about deleting a client, see the [Archive or Delete a Client](/clients/archive-or-delete-a-client) article.
# Client Roles
Source: https://help.ruddr.io/clients/client-roles
Establish a client rate card in Ruddr by linking or adding workspace roles and rates, or by creating client-specific roles.
The **Roles** tab (Figure 1) of the **Edit Client** drawer allows you to manage client roles and rates. Essentially, by assigning roles to a client, you are establishing a client "rate card", that can then be leveraged by the projects under that client. In order to edit a client, you must have access to the project and also have the **Edit Client** permission set on your [security role](/workspace-administration/security-roles).
Often times, roles and corresponding bill rates are defined for a client within a Master Services Agreement or some other contract vehicle. In these circumstances, you may wish to define these roles and rates on a client in Ruddr, such that those roles and rates are established and available to projects created for that client.
There are two ways to add client roles to the client:
1. [Leverage workspace roles and rates](#leverage-workspace-roles-and-rates)
2. [Create roles and assign rates](#create-client-roles)
### Leverage Workspace Roles and Rates
Ruddr provides workspace admins with the ability to define workspace-level Project Roles and Rates within the [Custom Data](/workspace-administration/custom-data) section of [Workspace Settings](/workspace-administration/managing-your-workspace). Once these roles are established, they are available to be used on clients throughout the workspace.
**Note that a member must have a combination of certain permissions on their security role to leverage workspace roles on a client**. This restriction on who can apply workspace roles is due to the sensitivity of established bill rates. In order to use workspace roles on a client, a member's security role must contain the following permissions:
* Create client
* Access all clients
* Edit all clients this member can access
There are two ways to leverage workspace roles and rates on a client:
1. Link to workspace roles and rates
2. Add workspace roles and rates
#### Linking to Workspace Roles
To "link" to workspace roles and rates is to create a linked relationship between the client and the roles and rates established for the workspace. When an workspace administrator links to roles and rates, the following relationship is established:
* Any linked roles and rates on the client are read-only; these are not editable via the client.
* Any changes to the workspace roles and rates will propagate to all clients that are linked to them.
When creating or editing a client via the **Edit Client** drawer (Figure 1), a workspace admin may choose to "link" to workspace roles. On the **Roles** tab, clicking the **Link to a Workspace Role** action item of the **Add a Workspace Role** button will present a list of workspace-level project roles (Figure 2) established in [Custom Data](/workspace-administration/custom-data). Selecting one of these roles will add the linked role and the corresponding rate to the client (Figure 3).
An additional action is supported, enabling the application of all workspace-level roles/rates to the client. By clicking on the action menu (Figure 4) of the **Add a Workspace Role** button, a workspace admin can choose to **Link to all Workspace Roles**, effectively linking the entire rate card for the workspace.
Note that all roles that have been linked from the workspace can be deleted from a client, but can not be edited (Figure 5).
In a related manner, any changes made to a workspace-level role / rate will propagate down to the client. If you inherit a workspace-defined role / rate, and a workspace administrator changes that role / rate in Custom Data, the role inherited on the client will reflect that change.
#### Add a Workspace Role
To "add" a workspace role and rate is to use the predefined role and rate on the client without being linked to the original record. The role and rate can be added to the client and is thereafter editable as part of the client record.
When creating or editing a client via the **Edit Client** drawer (Figure 1), a workspace admin may choose to add workspace roles. On the **Roles** tab, clicking the **Add a Workspace Role** button will present a list of workspace-level project roles (Figure 6) established in [Custom Data](/workspace-administration/custom-data). Selecting one of these roles will add the role and the corresponding rate to the client (Figure 7).
An additional action is supported, enabling the addition of all workspace-level roles/rates to the client. By clicking on the action menu (Figure 8) of the **Add a Workspace Role** button, a workspace admin can choose to **Add all Workspace Roles**, effectively adding the entire rate card for the workspace.
### Create Client Roles
To create a client role, you will need Edit client permissions on your [security role](/workspace-administration/security-roles).
To create a new role, simply click the **+ Quick Add** button at the bottom of the **Client Roles** list. This will allow you to type in the name of the new role (Figure 9); optionally select a role practice, location, and / or discipline; set the role as either billable or non-billable; and provide a rate for billable roles. Disciplines are set by your Workspace Admin and they are used to group associated roles together for reporting purposes.
### Delete a Role
A client role can be deleted by using the menu on the right side of the row (Figure 10). If you have Edit client permissions, you can delete a role from the client.
# Create a New Client
Source: https://help.ruddr.io/clients/create-a-new-client
Learn how to create a client in Ruddr, set client details, roles, and default invoice settings, or add a client from the new project window.
There are two ways to create a new client in Ruddr. The first is by clicking on the **New Client** **(**+**)** button on the [client list](/clients/client-list) screen (Figure 1). You will only see this button if you have the **Create client** permission set on your assigned [security role](/workspace-administration/security-roles).
When you create a client, a drawer (Figure 2) will slide out that will allow you to provide the following information about the client.
* **Name** - The name of the client. Note that Ruddr will not prevent you from creating two or more clients with the same name. However, Ruddr will provide you with a warning that a client with that name already exists.
* **Industry** - Select an industry / vertical to associate with the client.
* **Practice** - The practice that owns the client relationship.
* **Business Unit** - The business unit that owns the client relationship.
* **Relationship Owner** - The workspace member who is responsible for the client relationship.
* **Client Code** - Any internal client identifier that your team may use for the client. This code is searchable from the [Header Bar](/getting-started/navigating-the-ruddr-interface).
* **Client Tags** - Custom tags that be attributed to the client. These tags are unique to your workspace and can be managed in the [Custom Data](/workspace-administration/custom-data) settings in Ruddr.
* **Notes** - Any information about the client that would be helpful for the project team.
* **Cloud Folder** - Assign a shared cloud folder to the client to provide team members with access to view files.
* **Client Roles and Rates** - The **Roles** tab (Figure 2) allows you to provide a client-specific "rate card" that can be inherited by all of the projects under this client. For more on this, please see the [Client Roles](/clients/client-roles) article in the Ruddr Help Center.
#### Invoice Details
When creating a client, you can set up the default invoice information (Figure 3) for any invoices that get created for the client. The fields that can be set are:
The latter four fields are provided as default values in the workspace, which are managed in workspace settings. If you want to differentiate any of the fields on the client, you can uncheck the **Use workspace invoice details** checkbox (Figure 3) and provide client-specific values that will be leveraged when invoices for this client are created.
Note that when creating invoices for an individual project, the project's invoices settings are used. These settings can be inherited from the client, but can also be customized for that specific project. If an invoice is generated for more than one project for the same client, the client's invoice settings are used.
**Multicurrency**
Workspaces that leverage Ruddr's Multicurrency feature will have options to associate a currency with the client. For more on assigning a currency to a client, please refer to the [Client Currency](/multicurrency/client-currency) article in the Ruddr Help Center.
**Client Roles and Rates**
Workspaces that leverage the Workspace and Client Rate Cards feature can also create roles and corresponding rates at a client level. For more on this, please visit the [Client Roles](/clients/client-roles) article in the Ruddr Help Center.
The other way to create a new client is directly from the [new project](/projects/create-a-new-project) window (Figure 4). You can only create a new project if you have the **Create project** permission set on your security profile. You can pick an existing client or type in a new client if you have the **Create client** permission. To create a new client you simply click the **+ Add a New Client** button and supply the new client name.
When a new client is created from the new project screen, the only field that gets set for the client is the client name. You likely will want to edit that client from the clients list screen and provide the additional data for the client record.
# Project Groups
Source: https://help.ruddr.io/clients/project-groups
Group related projects within a client for reporting and filtering using Ruddr project groups, and create, edit, or deactivate them.
There may be cases where you have a subset of related projects amongst a portfolio of engagements within the same client. Ruddr's Project Groups [feature](/workspace-administration/features) provides a mechanism for grouping such a subset of projects for reporting and filtering purposes. For example, you have a collection of various support projects for a client and you want to collectively report on the performance across all of those support projects.
When the Project Groups feature is enabled in the workspace, a **Project Groups** tab (Figure 1) will be added to the Client Dashboard for each client in the workspace.
A list of project groups is displayed on the Project Groups tab, with the name of the project group and the following, additional project group fields displayed:
* Description
* Projects that are associated with the Project Group
Clicking on a project group in the list will open the **Edit Project Group** drawer (Figure 2), which will display the details of the project group.
### Create a Project Group
To create a new project group, click on the **+** button on the Project Groups tab (Figure 1). This will open the **New Project Group** drawer (Figure 3).
Within the drawer, you can specify the name and the description of the project group.
Once you have provided the details of the project group, click the **Save & Close** button to save the project group and return to the Project Groups tab.
Project groups can be associated with a project by editing the project and selecting the project group from the list of project groups currently active for the client.
### Manage a Project Group
#### Edit a Project Group
Those members with Edit Client permissions for the current client can edit any existing project groups by either clicking on the project group listed on the Project Groups tab (Figure 1), clicking the pencil icon on the project group row, or by selecting the **Edit** menu item (Figure 4) from the action menu on the project group row. This will open the Edit Project Group drawer (Figure 2), allowing the member to update details of the project group.
#### Delete / Deactivate a Project Group
When you need for a project group to no longer available, you can either delete the project group or deactivate it. Any project group that have yet to be associated with a project can be deleted. Those project groups that have been specified on a project(s) can be deactivated but not deleted.
Deactivating a project group will prevent that project group from being associated with any additional projects. Members with **Edit Client** permissions for the client can delete or deactivate a project group by selecting either of the **Delete** or **Deactivate** options (Figure 4) from the project group row on the Project Groups tab.
If you choose to delete the project group, you will be prompted to confirm (Figure 5) the deletion. On the confirmation window, click the **Delete** button to proceed with deleting the project group.
# Purchase Orders
Source: https://help.ruddr.io/clients/purchase-orders
Track client purchase orders in Ruddr, associate them with projects, and monitor invoiced amounts against the remaining PO balance.
When your clients require Purchase Orders be associated with projects and invoices, you may often want to track details regarding those POs, including any open / available balance remaining. Ruddr's Purchase Order [feature](/workspace-administration/features) provides a mechanism for recording purchase order details, associating those purchase orders with projects, and tracking the invoiced amounts tied to those purchase orders.
When the Purchase Order feature is enabled in the workspace, a **Purchase Orders** tab (Figure 1) will be added to the Client Dashboard for each client in the workspace.
A list of Purchase Orders is displayed on the Purchase Orders tab, with the name of the purchase order and the following, additional purchase order fields displayed:
* PO Number
* PO Amount
* Amount Used
* Amount Available
Clicking on a purchase order in the list will open the **Edit Purchase Order** drawer (Figure 2), which will display the details of the PO.
When creating / editing a purchase order, you can attach any support files to the PO record in Ruddr, such as a soft copy of the actual PO document.
### Create a Purchase Order
To create a new purchase order, click on the **+** button on the Purchase Orders tab (Figure 1). This will open the **New Purchase Order** drawer (Figure 3).
Within the drawer, you can specify the name of the purchase order and the PO Number associated with the record. In addition, you can provide ancillary details such as the Start / End Date of the PO, the client contact associated with the PO, whether or not the PO includes tax, and any supporting notes.
When "PO amount includes tax" is checked, the total value of this Purchase Order is inclusive of taxes. Any taxes associated with invoice line items will be charged against this Purchase Order and reduce the remaining available amount.
Once you have provided the details of the purchase order, click the **Save & Close** button to save the purchase order and return to the Purchase Orders tab.
Purchase orders can be associated with a project by editing the project and selecting the purchase order from the list of purchase orders currently active for the client.
### Manage a Purchase Order
#### Edit a Purchase Order
Those members with Edit Client permissions for the current client can edit any existing purchase orders by either clicking on the purchase order listed on the Purchase Orders tab (Figure 1), clicking the pencil icon on the purchase order row, or by selecting the **Edit** menu item (Figure 4) from the action menu on the purchase order row. This will open the Edit Purchase Order drawer (Figure 2), allowing the member to update details of the purchase order.
#### Delete / Deactivate a Purchase Order
When you need for a Purchase Order to no longer available, you can either delete the PO or deactivate it. Any purchase orders that have yet to be associated with a project can be deleted. Those POs that have been specified on a project(s) can be deactivated but not deleted.
Deactivating a Purchase Order will prevent that purchase order from being associated with any additional projects. If there are any projects currently aligned with that purchase order, any future invoices generated for those projects will continue to reduce the balance of the purchase order. If you no longer wish to apply invoiced monies to the purchase order, you will need to remove the purchase order from any associated projects by editing the projects and deleting the purchase order there.
Members with **Edit Client** permissions for the client can delete or deactivate a purchase order by selecting either of the **Delete** or **Deactivate** options (Figure 4) from the purchase order row on the Purchase Orders tab.
If you choose to delete the purchase order, you will be prompted to confirm (Figure 5) the deletion. On the confirmation window, click the **Delete** button to proceed with deleting the purchase order.
# Ruddr Desktop App
Source: https://help.ruddr.io/desktop-and-mobile-applications/ruddr-desktop-app
How to download the Ruddr desktop app for MacOS and use it to enter time, run timers, and submit timesheets from your menu bar.
MacOS users have the ability to utilize a desktop version of Ruddr in the navigation bar. The main purpose of this tool is to input time entries quick and efficiently.
## Download the MacOS Desktop App
In the Apple App Store, search for the **Ruddr Desktop** app. (Figure 1)
Once you have downloaded Ruddr from the Apple App Store, you will need to login to Ruddr. If this is your first time logging in, please review these steps for [Accepting Workspace Invitations](/getting-started/accepting-workspace-invitations) and [Logging In](/getting-started/logging-in).
After you enter your email address, you will be prompted to log in either via Ruddr or by using Single Sign-On as configured by your organization.
Once logged in, you will see the **Ruddr icon** in your navigation bar, as well as the time entries added for that day. (Figure 2)
## Time Entries
When you open the desktop app, you will see any existing time entries for the current day. (Figure 3) Here you can edit the time entries or start the timer for existing time entries by pressing the play button on any individual entry. You can also switch to view / edit time for other days.
## Adding a new time entry
If you need to add a new item, you can do so by clicking the **+ button** on the bottom of the screen. You will be able to enter a new time entry for either project time or time off. (Figure 4) The new time entry will default to project time and you can start a timer. If you are just looking to record the hours worked, you can add those hours to the **time** field and will have the option to save.
If a project isn't available under your project list, you will need to be added to the project by your Project Admin.
## Editing a time entry
If you need to make edits to the projects listed, clicking on the project line will open details for you to edit. (Figure 5) Here you can input hours worked or the start / end time if needed.
## Submitting Your Timesheet
You can submit your timesheet directly from the desktop app. Timesheets behave the same way across the web, mobile, and desktop apps. The [Timesheets Overview](/time/timesheets-overview) article covers the underlying concepts: how time entries are grouped, what submission does, and when a timesheet can be unsubmitted.
Dates, day names, and period labels in the desktop app follow the language and region settings on your Mac.
### The timesheet status bar
When the Timesheets feature is enabled in your workspace, a status bar appears above your time entries (Figure 6) describing the week you are viewing:
* **Not Submitted** - no timesheet covers any day of the week.
* **Partially Submitted** - a timesheet covers some, but not all, of the days in the week. Click the information icon next to the status to open a list of the days that are still open.
* **Submitted** - a timesheet covers all seven days of the week.
### Submitting a timesheet
Click the **More** button and choose **Submit Timesheet** (Figure 7). The More button appears only when there is an action available for the week you are viewing, so you will not see it on a week with nothing to submit, unsubmit, or resubmit.
The Submit Timesheet window shows the period you are about to close. Click **Submit** to confirm, or **Cancel** to close the window without submitting. Cancelling discards anything you typed.
Some weeks span two timesheet periods. This happens when your workspace submits time semi-monthly, or when the week crosses the end of a month. In that case the window shows a separate option for each period, labeled **Full week through** or **Partial week through** followed by the end date. Periods that have already been submitted, or that cannot be submitted yet, appear greyed out. Select an eligible period and submit it.
Some members are required to meet their [capacity](/workspace-administration/member-profile#capacity-periods) before they can submit. If you have not entered enough time, the window shows a warning telling you how many hours you are submitting against your capacity, and **Submit** stays disabled until you add the missing time.
### Signing an attestation
If you are required to certify the accuracy of your time, the Submit Timesheet window includes an **Attestation** box showing your organization's attestation statement, followed by a **Signature** field (Figure 8). The statement itself is read-only.
Type your name or initials into the **Signature** field to enable **Submit**. At least three characters are required, and spaces on their own do not count. Your signature is displayed in a script font. For more on how this is configured, see the [Timesheet Attestation](/time/timesheet-attestation) article.
### After a timesheet is submitted
The days covered by a submitted timesheet no longer accept new time entries, and the timers on those days are disabled. In a partially submitted week, you can still start timers on the days that have not been submitted yet.
Each time entry shows its approval status by color, so you can tell at a glance which entries are pending approval, approved, or rejected. See [Time Entry Status](/time/time-entry-status) for what each status means.
### Unsubmitting and resubmitting
The **More** button offers two further actions when they apply to the week you are viewing (Figure 9):
* **Unsubmit Timesheet** reopens a submitted timesheet so you can edit it again. This is available only when your [security role](/workspace-administration/security-roles) and your workspace's [timesheet unsubmission rules](/workspace-administration/general-workspace-settings#timesheet-unsubmission-rules) allow you to unsubmit that timesheet.
* **Resubmit Rejected** sends rejected time entries back for approval. You are not asked to sign the attestation again. In a partially submitted week, you can resubmit rejected entries only on the days that have already been submitted.
## Desktop App Settings
Under your profile in the Desktop App, you have quick access to the Web App version of Ruddr and the [Help Center](/), which is full of helpful articles on how to use Ruddr. (Figure 10)
If you are logged into the desktop app and are not seeing a particular project or task, use the **Refresh** action menu to update the cached list of projects / tasks available in the app.
# Ruddr Mobile App
Source: https://help.ruddr.io/desktop-and-mobile-applications/ruddr-mobile-app
Track time and manage expense reports on the go with the Ruddr mobile app for iOS and Android, including timers and timesheet submission.
Ruddr users can access time entry and expense entry on their iOS and Android devices.
## Downloading the Ruddr Mobile App
For iOS you will want to download the Ruddr app in the Apple App Store by searching for "Ruddr". (Figure 1)
For Android devices, you will want to visit the Google Play store. (Figure 2)
In the app, you can navigate between Time Entries and Expenses (Figure 4) by clicking the three lines in the top left corner of the app. (Figure 3)
## Time Entries
When you open the Mobile App, the first screen will allow you to enter time by day. (Figure 5) Here you can edit the time entries or start the timer to track your time by pressing the play button next to any existing time entry. You can also toggle to other days on this screen by clicking on the date.
The calendar week in the mobile app begins on Monday (Figure 5), which matches the ISO week used by the web app. A given week therefore covers the same seven days no matter which app you are working in.
### Add or edit a time entry
If you need to add a new item, you can do so by clicking the **New Time Entry** button on the bottom of the app. You will be able to enter a new time entry, specifying either Project Time or Time Off as the time type. (Figure 6) The new time entry will default to project time, for which you can start a timer. If you just want to record the hours worked, you need to add hours to the **time** field and then you will have the option to save.
To edit a time entry, select the time entry you want to edit and it will open the details. Make the edits needed and submit.
### Rejected time entries
A time entry that an approver has rejected is shown with a red status, the same as in the web app. You can edit a rejected entry and resubmit it, and you can also start the timer on it to continue tracking against that entry. For more on what each status means, see the [Time Entry Status](/time/time-entry-status) article.
## Submitting Your Timesheet
You can submit your timesheet directly from the mobile app. Timesheets work the same way on both platforms. The [Timesheets Overview](/time/timesheets-overview) article covers the underlying concepts: how time entries are grouped, what submission does, and when a timesheet can be unsubmitted.
What you see on the time entry screen depends on whether the Timesheets feature is enabled in your workspace.
### When timesheets are enabled
A timesheet status bar appears above the calendar (Figure 7). The bar describes the week you are currently viewing:
* **Not Submitted** - no timesheet covers any day of the week.
* **Partially Submitted** - a timesheet covers some, but not all, of the days in the week. Tap the information icon next to the status to see the days that are still open, listed as "Not Submitted: Thursday, 01/01/2026".
* **Submitted** - a timesheet covers all seven days of the week.
Moving to another week updates the bar to reflect that week.
To submit, tap the three-dot button at the bottom of the screen and then choose **Submit Timesheet** (Figure 8). A confirmation sheet opens (Figure 9) showing the period you are about to submit, with a **Start** and an **End** date, and explaining that submitting will close that time period and route all unapproved time entries for approval. Tap **Submit Timesheet** to confirm, or **Cancel** to close the sheet without submitting.
Some weeks span two timesheet periods. This happens when your workspace submits time semi-monthly, or when the week crosses the end of a month. In that case the sheet lists each period as a **Partial week through** option (Figure 10). Select the one you want to submit, and the **Start** and **End** dates update to match your choice.
A few things happen when you submit:
* If a timer is running, Ruddr stops it as part of the submission.
* Time entries on projects that require manual approval move to **Pending Approval**; entries on projects that are approved automatically move to **Approved**.
* The time entries covered by the timesheet are locked. The **New Time Entry** button and the timer buttons on existing entries are disabled for those days until the timesheet is unsubmitted.
To unsubmit, tap the three-dot button again and choose **Unsubmit Timesheet** (Figure 11). This option is available only when your workspace's [timesheet unsubmission rules](/workspace-administration/general-workspace-settings#timesheet-unsubmission-rules) allow you to unsubmit that timesheet.
### When timesheets are disabled
If the Timesheets feature is turned off in your workspace, no status bar appears above the calendar. Instead, the bottom of the time entry screen shows a **Submit for Approval** button with a badge indicating how many unsubmitted time entries exist for the selected day. Tapping it submits the entries for that day and confirms with the message "Time entries have been submitted for approval".
### Signing an attestation
If you are required to certify the accuracy of your time, the submission sheet includes an **Attestation** section showing your attestation text, followed by a **Signature** field (Figure 12). The **Submit Timesheet** button stays disabled until you type your name or initials into the **Signature** field. At least three characters are required. For more on how this is configured, see the [Timesheet Attestation](/time/timesheet-attestation) article.
You can also submit timesheets from the web app — see the [Timesheets Overview](/time/timesheets-overview) article for those instructions.
## Expenses
You can create expenses in the Ruddr mobile app by switching to the expense section. By clicking the three lines in the top left of the app, you will be given the option to move between time and expenses.
Once in the expense you have the option to add to a current expense report or create a new one by clicking **New Expense Report** on the bottom of the app. (Figure 13)
### Add or edit an expense
Once in your expense report, you can either add a new expense or edit an existing expense. To edit an existing expense, (Figure 14) simply click on the expense and you can add further details, receipts or view the history of the expense.
To add a new expense, select the **New Expense Item** in the bottom left of the expense report screen.
### Submitting your expense report
Once you have added all needed expenses, you can submit your expense report for approval utilizing the Submit for Approval button in the bottom right. (Figure 16) If you need to add additional expenses to this report, you can add them with the **New Expense Items** button.
# Add Expense Items to an Expense Report
Source: https://help.ruddr.io/expenses/add-expense-items-to-an-expense-report
Learn how to add expense items to a Ruddr expense report manually or by import, upload receipts, clone items, and apply expense markup.
Once you [create an expense report](/expenses/create-an-expense-report), you will be taken to an empty expense report detail screen (Figure 1). From here, there are two ways to add expense items to an expense report:
1. [Manual Expense Item Creation](#manual-expense-item-creation)
2. [Importing Expense Items](#importing-expense-items)
If the Expense Markup [feature](/workspace-administration/features) has been enabled in your workspace, you will also be able to [specify a markup amount](#expense-markup) for expense as part of creating expense items.
### Manual Expense Item Creation
From the expense report screen (Figure 1), you can click on the **New Expense Item** button to add an expense item to the report.
Figure 1 - Expense Report Detail is where you add Expense Items
Clicking this button will open the **New Item** drawer (Figure 2). From the drawer, you can provide the expense item details, including these fields:
* **Expense Category** - Each new workspace comes with a default set of expense categories (such as Airfare, Mileage, etc.). A Workspace Admin can [modify this set of categories](/workspace-administration/custom-data) to match your company standards.
* **Vendor Name** - The name of the vendor that provided the good or service. Note that some expense categories, such as mileage, will not need a vendor.
* **Expense Date** - The date the expense was incurred.
* **Expense Amount** - The amount of the expense.
* **Project** - The client and project associated with this expense. Even if an expense on a project is not billable, it is important to associate it with the project for budget tracking purposes. For internal expenses, this field can be left blank or it can be associated with an internal project.
* **Reimburse to me** - A checkbox that denotes whether or not you should be reimbursed for the expense. If you paid for the expense personally, this should likely be checked.
* **Bill to client** - A checkbox that denotes whether or not the client should be billed for the expense. If the billing type of the project is set to non-billable, then this checkbox will be disabled.
* **Notes** - Any details about the expense.
Figure 2 - Enter the Details for an Item in the New Expense Item Drawer
In addition to the fields described above, some conditional fields may be shown depending on the expense category selected. Specifically, these fields are conditionally shown:
* **Attendees** - Certain types of expense categories may require you to list the names of the people in attendance. By default, the "Client/Prospect Entertainment" and "Client/Prospect Meal" categories require attendees. This setting can be configured for each expense category by a Workspace Admin.
* **Number of Units** - Expense categories can be set up as a "unit" expense category. These types of expenses will require a number of units and a cost per unit. For example, the "Mileage" expense category will require the number of miles to be provided as well as the cost per mile.
* **Cost per Unit** - As stated above, when an expense category is set up as a unit type, it will require a cost per unit. Each unit expense category can be set up with a default cost per unit by a Workspace Admin.
#### Cloning an Expense
Once you create an expense on your expense report, you can **clone that expense** and update with the new information. You can do this by selecting the arrow under the edit button. Select **Clone** in the drop down (Figure 3).
Figure 3 - Cloning an Expense
At that point, a duplicate of the original expense has been created. You can edit by clicking the pencil on the far right (Figure 4) . An Edit Expense drawer will open to **edit the details** of the expense. Once edits are complete, click save.
Figure 4 - Editing a Cloned Expense
#### Expense Markup
When marking up expenses in Ruddr, you will have an **Expense Amount**, which represents the cost outlay associated with purchasing the item(s). As such, the Expense Amount will be tracked as Expense Cost on a project. Additionally, Ruddr will calculate a **Total to Bill**, which represents the amount that you will bill the client when invoicing the expense. As such, the **Total to Bill** will be tracked as Expense Revenue on a project.
When the Expense Markup [feature](/workspace-administration/features) is enabled, a **Markup Expense** field (Figure 5) will be available on the New Item drawer if the **Bill to Client** fields is selected and an **Expense Amount** has been specified.
Figure 5 - For Billable Expenses, Specify if the Expense Should be Marked Up
When the **Markup Expense** field is selected, an **Expense Markup** section (Figure 6) will be presented in the New Item drawer. Here, you will have the ability to specify whether you want to markup the expense by a percentage of the original expense amount or if you want to markup the expense by a fixed dollar amount.
Figure 6 - Specify How You Want to Markup the Expense
When marking up by percentage (Figure 7), specify the percentage and Ruddr will calculate the **Total to Bill** the client for the expense.
Figure 7 - Markup the Expense by a Percentage of the Expense Amount
When marking up by fixed amount (Figure 8), you specify the amount of markup you want to apply and Ruddr will calculate the **Total to Bill** the client for the expense.
Figure 8 - Markup the Expense by a Specific Fixed Amount
As mentioned above, marking up an expense will result in an **Expense Amount** and a **Total to Bill**. The Expense Amount is what will be tracked as the expense cost. The Total to Bill will be tracked as expense revenue.
### Importing Expense Items
In addition to, or in lieu of, creating individual expense items, members can upload expense items to an expense report. On the expense report screen (Figure 1), members can access the New Expense Item action menu (Figure 9) and select **Import Expenses**.
Figure 9 - Click Import Expenses to Add Multiple Expense Items to the Expense Report
Selecting the **Import Expenses** action item will present a dialog box (Figure 10) that prompts the member to upload a file containing the expense items to be added to the expense report.
Figure 10 - Specify an Expense Item File to Import for an Expense Report
Uploading the file of expense items will add these items to the expense report (Figure 11). Note that a sample file is available for download by clicking the **expenses.csv** link on the dialog box. The uploaded file will need to conform to the format of the sample file. Once expense items have been uploaded, the member can edit these items to provide additional details or to [upload receipts](#uploading-receipts) for the expense item.
Figure 11 - Expense Items on the Expense Report
### Uploading Receipts
As you create new expense items, or as you edit existing ones, you may want to attach receipts to the item. On the receipts tab of the expense item drawer (Figure 12), you can upload one or more receipts that correspond to this expense item. Simply drag expense images to the form or click on the upload box to select a file from your computer. **Note that receipt images can be no larger than 10MB in size.**
Figure 12 - Upload Receipt Files to the Expense Item
Once all of the fields and receipts are correct, click the **Save & Close** button to create the expense item. You should now see the item on the expense report.
### Accepted File Types
Images: jpg, jpeg, png, gif, heic, tiff
Documents: pdf, html, txt, rtf, doc (old msword), docx
Spreadsheets: xls, xlsx, ods, csv
Presentations: ppt, pptx, odp
# Create an Expense Report
Source: https://help.ruddr.io/expenses/create-an-expense-report
How to create a new expense report in Ruddr, including the title, date, and notes fields and how unique report numbers are assigned.
Before you can start creating individual expense items, you must first create an expense report to house those items. From the expense report list page (Figure 2), click the **New Expense Report** button (Figure 1) at the bottom of the screen.
Figure 1 - Create a New Expense Report to which you can add New Expense Items
Figure 2 - Expense Report View
This will bring up the new expense report drawer (Figure 3). To create a report, simply provide the title and date. Optionally, you can provide notes about the nature of the expense report.
Figure 3 - Create a New Expense Report
Once you have these fields entered, simply click the **Save & Close** button at the bottom of the drawer. This will take you to the expense report detail screen (Figure 4) where you can [add the individual expense items](/expenses/add-expense-items-to-an-expense-report) to the report.
When an expense report is created, it is automatically given a unique expense report number. No two expense reports in the workspace can have the same expense report number. The expense report number is assigned by Ruddr and cannot be changed.
Figure 4 - On the Expense Report Detail Screen you can add Multiple Expense Items
# Delete Expense Reports or Expense Items
Source: https://help.ruddr.io/expenses/delete-expense-reports-or-expense-items
Remove expense reports or individual expense items in Ruddr, including bulk deletion, and understand why locked items cannot be deleted.
### Delete an Expense Report
An expense report can be deleted from the expense report list (Figure 1), accessible from the Expense Reports option (Figure 2) in the Ruddr nav bar. To delete an expense report, simply select the **Delete** option on the row for the report that you wish to remove.
Figure 1 - Delete an Expense Report from the Expense Reports Screen
Figure 2 - **Expense Reports** in the Expenses Area
Note that if an expense report contains one or more locked expense items, the report cannot be deleted and the delete menu option will be disabled.
### Bulk Delete Expense Reports
Multiple expense reports can be deleted utilizing the bulk update feature. In the Expense Report section, you can select the expense reports you want to delete. (Figure 3) Once selected, you can select the Bulk Actions option in the bottom right to delete.
Figure 3 - Bulk Deletion of Expense Reports
### Delete an Expense Item
In order for an expense item to be deleted from an expense report, the item cannot be locked. When an expense item is locked, it will be presented with a lock icon next to the amount of the expense item listed in the Expense Report details (Figure 4).
To delete an unlocked expense item, simply click on the item to bring up the expense item drawer. At the bottom-left of the drawer (Figure 5), click the **Delete** button.
You cannot undelete an expense report or expense item. **All deletions are permanent and thus you should be certain that you no longer need the expense report or item before you delete it.**
**
**
Figure 4 - One of the Expense Items in this Expense Report is Locked
**
**
Figure 5 - Use the Delete Button on this Edit Expense Item Drawer to Permanently Delete the Item
# Expense Approval
Source: https://help.ruddr.io/expenses/expense-approval
Understand automatic, manual, and client expense approval in Ruddr, from submitting items to approving, rejecting, and bulk approval actions.
As discussed in [General Workspace Settings](/workspace-administration/general-workspace-settings), default time and expense approval settings can be set for the workspace. However, each project in Ruddr can be set up for either manual or automatic time approval, depending on the requirements of the project. Here are the three types of approvals for time and expense in Ruddr:
* [Automatic](#automatic-expense-approval)
* [Manual](#manual-expense-approval)
* [Client](#client-approval-of-expense-items)
## Automatic Expense Approval
If a project uses automatic expense approval, the expense items will be immediately approved by Ruddr when those items are created. As such, each expense item will enter into an [approved status](/expenses/expense-item-status). Members can continue to edit and delete expense items until they enter into a [locked state](/expenses/expense-item-locking).
## Manual Expense Approval
If the project uses manual expense approval and the Multi-Step Approval Workflow feature is *disabled* in the workspace, the Project Admin will be notified to review and approve (or reject) submitted expense items.
The expense approval configuration for a project can be found in the **Approval Options** section (Figure 1) of the project's [**Settings**](/projects/project-settings) tab.
**Multi-Step Approval Workflow**
If your workspace has the [Multi-Step Approval Workflow](/workspace-administration/multi-step-approval-workflow-overview) feature enabled and your approval options are set to Manual, then you will be able to specify whether you want to leverage the workspace's default approval workflow or if you want to specify a custom workflow for this project. For more information, view the [Managing Multi-Step Approval Workflows](/projects/managing-multi-step-approval-workflows) article in the Ruddr Help Center.
### Submitting Expense Items for Approval
Expense items can be submitted for approval from the expense report detail screen (Figure 2). This screen includes a listing of all expense items associated with an expense report. To get to this detail screen, simply click on any expense report shown on the expenses screen.
At the bottom of the expense report detail screen, there is a **Submit for Approval** button that will show the number of expense items that will be submitted. Clicking this button will submit all expense items on the report that are not currently in the Approved or Pending Approval state.
If a project is setup for automatic expense approval, expense items will be approved immediately when they are saved.
### Pending Approval Notification
When an expense item on a project has been submitted for approval, the Approvers established for the project will be notified in multiple ways. The Approvers will always receive an email message such as the one shown below (Figure 3). From this email, each Approver can click the **Expense Approvals** button and immediately take action.
If your workspace has enabled [Multi-Step Approval Workflow](/workspace-administration/multi-step-approval-workflow-overview), each approver would receive this email notification as the workflow advances through the steps configured for the project. If multiple approvers are specified for a single step, all approvers will receive this notification. If your workspace does not use this feature, the Project Admin would receive all notifications and be tasked with the approval actions.
Additionally, if the workspace has the [Slack integration](/integrations/slack-integration-overview) configured, the Approver will also receive a direct message from the Ruddr bot in Slack.
Finally, any time a workspace member has expense items that are awaiting approval, the member will see a red dot next to the Expenses nav bar item (Figure 5). When the Expenses submenu is shown, the number of items pending approval will be shown in a red circle next to the Approvals menu option.
Note that a workspace member will not see the approvals menu option if the member's assigned security role does not have permission to approve expense entries.
### Approving Expense Items
When an expense item that requires manual approval is submitted, any workspace member who has the appropriate permissions for the associated project can approve or reject the expense item. The Project Admin on the project will be the person notified about the pending approval, but any member with the appropriate permission can take action.
Expenses are approved from the Approvals screen (Figure 6). within the Expenses area. This screen will default to showing all expenses that are pending approval by the logged-in user. The list can be filtered by date, project, status, member, and approver.
The approver can click on any row in the approvals list to see the full details of the expense item. Edits can easily be made to the expense item before it is approved or rejected.
To approve or reject an expense item, the approver should use the "thumbs up" and "thumbs down" buttons (Figure 8) on the right side of each row of the approval list (Figure 6).
Once an entry has been approved, it will be shown with a green "thumbs up" circle as shown below (Figure 9). If the approval needs to be reversed, you can click on the thumbs up circle again to remove the approval.
When an entry has been rejected, it will be shown with a red "thumbs down" circle (Figure 10). If the rejection needs to be reversed, you can click on the thumbs down circle again to remove the rejection.
When an approver rejects an expense item, a reason for the rejection must be provided. After clicking the "thumbs down" button, a window (Figure 11) will be shown that will allow the approver to type in the rejection reason.
Figure 11 - Capture the Reason for Rejecting the Expense Entry
### Bulk Approval Actions
If approvers have a large number of expense items to review and take action on, it is possible to approve or reject items in bulk. To do this, simply select the rows to approve or reject and then click on the bulk action button at the bottom of the approvals list screen (Figure 12). The bulk action button defaults to "Approve" but can be switched to "Reject".
Note that if you reject multiple expense items in bulk, the reason you provide for rejection will be applied to each rejected item.
## Client Approval of Expense Items
On certain projects, your company may be required to get client approval of time and expenses before creating an invoice. For these situations, Ruddr provides a client approvals feature. When client approvals are enabled for a project, a batch of time and expenses can be sent to the client for approval.
For more information, see the [client approvals](/projects/client-approvals) article.
# Expense Auditing
Source: https://help.ruddr.io/expenses/expense-auditing
Use the expense auditing screen in Ruddr to review, edit, and bulk update expense items, view change history, and identify locked entries.
To audit expense items in Ruddr, simply click on the **Auditing** sub-menu item (Figure 1) within the **Expenses** area. Every member of the workspace can see his or her own expense items on the expense auditing screen (Figure 2). Depending on the member's [security role](/workspace-administration/security-roles), the expenses of other members may also show on the auditing screen. If an expense item is locked, it will have a lock icon on the left of the row and will be read-only.
Figure 1 - Select **Auditing** to Administer Expense Entries
Figure 2 - Administer Multiple Expense Entries from the Expense Auditing Screen
If the member's security role has the **View time and expenses** permission, the member will be able to view all expense items within the workspace for which they have those permissions. If the member's security role also has the **Administer time and expenses** general permission, the member will be able to edit or delete any unlocked expense items within the workspace for which they have those permissions, unless those entries are on a published invoice in which case they will appear locked..
For more information regarding View / Administer time and expense permissions, view the [Security Roles](/workspace-administration/security-roles) article in the Ruddr Help Center.
To view the detail of an expense item in the auditing list, simply click on the row to bring up the edit expense item drawer. If the expense item is unlocked and you have administration rights, you will be able to make edits to the information on the drawer and click the **Save & Close** button.
Note that any changes made to an expense item will be reflected in the history of the item. This includes all field edits and receipt additions or removals. The **History** tab (Figure 3) of the expense item drawer will show the chronological history of all changes to the item.
Figure 3 - History Tab shows the Chronological Changes made to an Expense Item
## Bulk Updates
To update multiple expenses at the same time, you can utilize the bulk update actions in the auditing section of expenses.
You will be able to select multiple expense entries (Figure 4) and utilized the Bulk Actions selector in the bottom right.
Figure 4 - Audit Screen for expenses and bulk updates
Once you have selected the expenses you want to bulk update, you will be able to select the type of update you want to make, (Figure 5) whether that is to set the expenses as reimbursed or to apply an approval status or if to delete the expense(s).
**Once you bulk delete, those items are permanently deleted.**
Figure 5 - Select what bulk update you want to make
You will be able to complete your updates and once finalized, (Figure 6) you will receive a confirmation of what was updated. (Figure 7)
Figure 6 - Finalize your selection based on if you want to change approval status
Figure 7 - Confirmation of bulk action approval status
There will be times you see locked expenses for which you can not make any updates (Figure 8). You will see a lock icon next to the check box. Once you hover over the lock, it will give you a description of why that expense was locked.
Figure 8 - Locked Expense
# Expense Item Locking
Source: https://help.ruddr.io/expenses/expense-item-locking
Find out why expense items become locked in Ruddr, how administrative rights affect the locking rules, and what it takes to unlock an item.
When an expense item is locked in Ruddr, it means that you can view the item but cannot edit or delete it. A locked expense item is identified by a closed lock symbol on the expense item row or at the top of the expense item drawer.
Expense items cannot be individually locked or unlocked. The lock is based on the permissions of the [security role](/workspace-administration/security-roles) assigned to the user and specific attributes such as the settings of the associated project. An expense item may be locked for one workspace member but unlocked for another member who has a security role with greater privileges.
When an expense item is locked, you can hover your mouse over the lock symbol to view the reason (Figure 1) for the lock condition.
### Three Types of Administrative Rights to Expense Items
Based on a workspace member's security role, there are three different types of administrative rights to expense items. These are:
* **Workspace Admin rights.** The "Workspace Admin" is a predefined [security role](/workspace-administration/security-roles) in Ruddr that is used for system administrators. The Workspace Admin has special permissions in Ruddr and will only see a locked expense item when that item is associated with a published invoice or has been saved to an accounting system, such as [QuickBooks Online](/integrations/quickbooks-online-integration-overview).
* **Member-based administrative rights.** Within the Member Permissions section of the security role definition, the role may grant administrative rights to a group of member's expense items. The security role could provide administrative rights to all workspace members, to practice members, or to subordinates.
* **Project-based administrative rights.** Within the Project Permissions section of the security role definition, the role may grant administrative rights to a project's expense items. The role may grant this administrative right to all projects the member can access, projects where the member is on the project team, projects where the member is the Project Admin, or projects assigned to the member's practice.
For more on security roles and administrative rights, view the [Security Roles](/workspace-administration/security-roles) article.
Several of the expense locking rules in Ruddr are based on the type of administrative rights that the member has (if any) to the specific expense item, as further described below.
### When will an Expense Item be Locked?
For workspace members assigned to the Workspace Admin security role or who have member-based administrative rights to an expense item, the expense item will be locked in only the following cases:
* The expense item is associated with a published invoice.
* The expense item has been saved to an accounting system, such as [QuickBooks Online](/integrations/quickbooks-online-integration-overview).
For workspace members that have project-based administrative rights to an expense item (but do not have member-based administrative rights), an expense item will be locked if any of the following conditions exist:
* The expense item is associated with a published invoice.
* The expense item's project has been archived.
* The expense item's project has the **Lock time and expenses** setting turned on.
* The expense item is older than the number of days specified in the **Lock time and expenses after X days** workspace setting.
* The expense item is older than the **Lock time and expenses X days after a month ends** workspace setting.
* The expense item has been saved to an accounting system, such as [QuickBooks Online](/integrations/quickbooks-online-integration-overview).
For all other members who do not have any administrative rights to a project's expense items, an expense item will be locked if any of the following conditions exist:
* The expense item is associated with a published invoice.
* The expense item's project has been archived.
* The expense item's project has the **Lock time and expenses** setting turned on.
* The expense item is older than the number of days specified in the **Lock time and expenses after X days** workspace setting.
* The expense item is older than the **Lock time and expenses X days after a month ends** workspace setting.
* The expense item is owned by another workspace member.
* The expense item has been manually approved.
* The expense item has been approved by the client. For more, see the [Client Approvals](/projects/client-approvals) help article.
* The expense item has been marked as [reimbursed](/expenses/expense-reimbursement-tracking).
* The expense item has been saved to an accounting system, such as [QuickBooks Online](/integrations/quickbooks-online-integration-overview).
* The member has been set to inactive on the project team associated with the expense item.
### Creating Locked Expense Items
Ruddr will not allow you to create an expense item that would be immediately locked due to one or more of the rules above.
### Unlocking a Locked Expense Item
Individual expense items cannot be manually locked or unlocked. If expense items for an entire project are locked, they can be unlocked by unchecking the **Lock time and expenses** checkbox in the **Overview** section of the project's [**Settings**](/projects/project-settings) tab.
Other than the bulk locking scenario described above, a locked expense item will only become unlocked if the condition causing the lock is removed. To see why an expense item is locked, hover your mouse over the lock icon and a locking reason will be shown. You, or a member with greater permissions, must first remove the condition causing the lock before the expense item will become unlocked. For example, if an expense item is locked because it is associated with a published invoice, the invoice will need to be unpublished for the expense item to become unlocked.
# Expense Item Status
Source: https://help.ruddr.io/expenses/expense-item-status
Expense items in Ruddr move through four statuses, Not Submitted, Pending Approval, Rejected, and Approved, each shown with a color-coded oval.
The status of an expense item correlates to the item's stage in the approval process. Like time entries, expense items have four possible states which are **Not Submitted**, **Pending Approval**, **Rejected**, and **Approved**.
Each status setting is associated with a color so you can glance at an expense item and immediately know its state. Items in the Not Submitted state will be gray, Pending Approval will be yellow, Rejected will be red, and Approved will be green.
When a project is configured, it can be set up for either manual or automatic expense approvals. With manual approvals, the expenses on expense reports must be submitted for approval, and the items will flow to the expense approver(s) for that project. Expense items on projects that use automatic approval will immediately turn green (Approved) when they are created.
Below is a brief explanation of the four expense item states.
### Not Submitted
All new expense items that require manual approval start in the Not Submitted state. This simply means that the item has been created but has yet to be submitted for approval. When an expense item is in the Not Submitted state, the expense amount will be shown within a gray status oval.
### Pending Approval
The pending approval state means that the expense item has been submitted for approval but the approver has not taken action yet. When an expense item is in the Pending Approval state, it will be shown within a yellow status oval.
For workspaces where Multi-Step Approval Workflow is enabled, hovering over the yellow oval will display the current progress of the expense item in the workflow. An example of this is found below:
### Rejected
When the approver rejects an expense item, the approver must provide an explanation as to why the expense item is being rejected. The original submitter will receive an email notification about the rejection so long as no such rejection notification has been sent in the past 30 minutes. The original submitter can then make any needed adjustments to the expense item and resubmit it for approval. When an expense item is in the Rejected state, it will be shown within a red status oval.
### Approved
If a project is set for automatic approvals, all expense items created for the project will automatically show as approved once they are saved. For projects that use manual approvals, the Project Admin will approve or reject all expenses that are submitted on the project. When an expense item is in the Approved state, it will be shown within a green status oval.
Once an expense item has been approved, it will show up as locked for the submitter unless the submitter's security role has either the **Administer all member time and expenses** general permission or the **Administer project team time and expenses** project permission for the associated project. Once the expense item is associated with a published invoice, the time will be locked for all workspace members.
When an invoice is published in Ruddr, any time and expenses associated with that invoice that are not already approved will be approved as a part of the publishing process.
# Expense Reimbursement Tracking
Source: https://help.ruddr.io/expenses/expense-reimbursement-tracking
Track which expenses have been reimbursed in Ruddr by setting reimbursement status from the auditing screen or an expense report, individually or in bulk.
Expenses in Ruddr can be marked as "Reimbursed" to designate which expenses have been accounted for as part of Accounting's reimbursement procedures. This designation can be applied / unapplied in two, distinct areas of Ruddr:
* [Expense Auditing](#expense-auditing)
* [Expense Reports](#expense-reports)
Setting an expense as "Reimbursed" requires **Administer time and expenses** permissions and can be applied to any / all expenses in Ruddr that were created with **Reimburse to me** set on the expense.
For more information regarding View / Administer time and expense permissions, view the [Security Roles](/workspace-administration/security-roles) article in the Ruddr Help Center.
For more information on expense details and the **Reimburse to me** setting, view the [Add Expense Items to an Expense Report](/expenses/add-expense-items-to-an-expense-report) article.
Once an expense's reimbursement status has been set, an event is logged in the expense item's history (Figure 1) and a **Reimbursed** indicator is now visible at the top of the View / Edit Expense Item drawer.
Figure 1 - In an Expense Item's History, an Event is Logged to Show when the Item was set as **Reimbursed**. Note the Reimbursed Indicator at the top of the View Item Drawer
#### Reporting
As part of tracking the reimbursement status of expense items, members will now be able to filter the Expense Detail report by the **Reimbursed** status.
### Expense Auditing
To audit expense items in Ruddr, simply click on the **Auditing** sub-menu item (Figure 2) within the **Expenses** area.
Figure 2 - Select **Auditing** to Administer Expense Entries
Once on the Auditing screen (Figure 3), select from the various filters at the top of the screen to narrow the returned results.
Figure 3 - Administer Multiple Expense Entries from the Expense Auditing Screen
In the results, each item's reimbursement status will be displayed via a logo (Figure 4) on the item's row.
Figure 4 - This Icon on the Expense Item Row of the Auditing Screen Indicated Reimbursement Status
There are three colors that represent each reimbursement status:
* **Grey**: Expense item is not set for reimbursement. The member that created this expense specified that the expense should not be reimbursed.
* **Black**: Expense item is set for reimbursement but has not yet been marked as reimbursed.
* **Green**: Expense item is set for reimbursement and has been marked as reimbursed for tracking purposes.
When an item's indicator is black or green, an action is available in the item's action menu. Using this action item, a member can either set the expense as **Reimbursed** (Figure 5) or can set the item as **Not Reimbursed**, (Figure 6) respectively.
Figure 5 - Set a Reimbursable Expense Item as **Reimbursed**
Figure 6 - Set a Reimbursed Expense as **Not Reimbursed**
#### Bulk Reimbursement
In addition to marking individual expenses as Reimbursed from the Auditing screen, you can also apply the Reimbursed status to multiple expenses. Each row on the auditing screen (Figure 3) has a checkbox. Selecting the checkbox(s) for the expenses you wish to approve will enable a Set as Reimbursed button (Figure 7).
Figure 7 - Select One or More Expenses to Set as Reimbursed and Click the Set as Reimbursed Button
If you wish to set multiple expenses as Not Reimbursed, you can repeat the action of selecting multiple expenses and selecting the **Set as Not Reimbursed** action from the action menu (Figure 8).
Figure 8 - Expenses Can be Set as Not Reimbursed
### Expense Reports
As noted in the [View and Manage Expense Items of Other Members](/expenses/view-and-manage-expense-items-of-other-members) article, members with appropriate **Administer time and expenses** permissions can impersonate other members on the Expense Reports screen, giving them access to the expense reports and expense items of those other members.
When viewing the details of an individual expense report (Figure 9), a member with the required, administrative permissions can take action to set an expense as **Reimbursed**.
Figure 9 - Expense Report Details
In an expense report, each expense item's reimbursement status will be displayed via a logo (Figure 10) on the item's row.
Figure 10 - This Icon on the Expense Item Row of the Auditing Screen Indicated Reimbursement Status
There are three colors that represent each reimbursement status:
* **Grey**: Expense item is not set for reimbursement. The member that created this expense specified that the expense should not be reimbursed.
* **Black**: Expense item is set for reimbursement but has not yet been marked as reimbursed.
* **Green**: Expense item is set for reimbursement and has been marked as reimbursed for tracking purposes.
When an item's indicator is black or green, an action is available in the item's action menu. Using this action item, a member can either set the expense as **Reimbursed** (Figure 11) or can set the item as **Not Reimbursed**, (Figure 12) respectively.
Figure 11 - Set a Reimbursable Expense Item as **Reimbursed**
Figure 12 - Set a Reimbursed Expense as **Not Reimbursed**
# Expense Tracking Overview
Source: https://help.ruddr.io/expenses/expense-tracking-overview
An overview of expense tracking in Ruddr, covering expense reports, expense items, approvals, the member selector, and exporting reports.
Expense tracking is one of the most fundamental aspects of professional services. In the course of delivering engagements for clients, you will often incur expenses that you will want to charge back to the client. Without accurate expense tracking, the team will fail to invoice properly and the business will underperform.
Ruddr provides simple, yet powerful, expense tracking functionality.
### Expense Reports
All expenses in Ruddr must be contained within an expense report. An expense report is a logical grouping of expense items. You can group expenses and name expense reports in a manner that best suits your organization.
Clicking on the **Expenses** option (Figure 1) in the nav bar will show your list of expense reports (Figure 2). You can adjust the results by selecting a specific year in the **Year** filter.
You cannot create expense items without first creating an expense report. To create an expense report, click the **New Expense Report** button at the bottom of the expense report list screen (Figure 2). To learn more, see the [Create an expense report](/expenses/create-an-expense-report) article.
### Expense Items
When you click on an expense report, you will be shown a report summary at the top and then the list of individual expense items (Figure 3). The summary will include the amount reimbursable to the member, the amount billable to the client, and the total amount of the expense report.
To add an expense item to a report, simply click the **New Expense Item** button at the bottom of the page. To learn more, see the [Add expense items to an expense report](/expenses/add-expense-items-to-an-expense-report) help article.
### Expense Approval
Each project in Ruddr can have expense approvals set to automatic or manual. For projects with manual approval, once all of your expenses are entered, you can click the **Submit for Approval** button (Figure 4) at the bottom of the screen. The button label will show the number of expense items that will be submitted for approval.
If you realize that you need to add more expense items to a report, you can add those items and then click the **Submit for Approval** button again to submit just the new items for approval. It is important to realize that expense reports as a whole do not get approved in Ruddr; only the individual expense items get approved.
As discussed in [General Workspace Settings](/workspace-administration/general-workspace-settings), default time and expense approval settings can be set for the workspace. However, each project in Ruddr can be set up for either manual or automatic expense approval, depending on the requirements of the project.
If a project uses automatic expense approval, expense items will be immediately approved by Ruddr when they are created. If the project uses manual expense approval and the [Multi-Step Approval Workflow](/workspace-administration/multi-step-approval-workflow-overview) is *disabled* in the workspace, the Project Admin will be notified to review and approve submitted time items.
Expense approval configuration is set within the **Approval Options** section (Figure 5) of the project's [**Settings**](/projects/project-settings) tab.
When a project is configured for manual expense approval, the Project Admin of the project will be notified any time expenses are submitted for approval for that project. The Project Admin is responsible for evaluating and approving (or rejecting) each expense item for the project. If a project is configured for automatic expense approval, the expense items will be immediately approved when they are created.
**Multi-Step Approval Workflow**
If your workspace has the [Multi-Step Approval Workflow](/workspace-administration/multi-step-approval-workflow-overview) feature enabled and your approval options are set to Manual, then you will be able to specify whether you want to leverage the workspace's default approval workflow or if you want to specify a custom workflow for this project. For more information, view the [Managing Multi-Step Approval Workflows](/projects/managing-multi-step-approval-workflows) article in the Ruddr Help Center.
To learn more, see the [Expense approval](/expenses/expense-approval) help article.
### Member Selector
If your security role has the **Administer time and expenses** permissions, you will see a **Member** selector (Figure 6) at the top-right of the expense report list. This allows you to select and impersonate any member of the workspace to which you have access.
When impersonating another member, you will see that member's expense reports. Clicking on one of the member's expense reports will show all of the expense items associated with that report. As a member with time and expense administration rights, you will be able to make edits to the expense items so long as those items are not associated with a published invoice or archived project. Any edits you make to an expense item will be reflected in the history of the expense item.
To learn more, see the [View and manage expense items of other members](/expenses/view-and-manage-expense-items-of-other-members) article.
### Exporting Expense Reports
Often times, members and/or expense auditors may need to export the information related to an expense report. Ruddr provides the ability to export an expense report, including data for each of the expense items in that report. By clicking the export button at the top right of the Expense Report Detail screen (Figure 7), users can specify a format and download a copy of the expense report. Exporting an expense report to ZIP will create a compressed file (.zip) containing a PDF copy of the report and all receipts uploaded with the expenses.
# Manage Expense Categories
Source: https://help.ruddr.io/expenses/manage-expense-categories
How Workspace Admins add, edit, deactivate, or delete expense categories in Ruddr, including attendee, receipt, and unit-based settings.
Every expense item on an expense report in Ruddr must be assigned to an expense category. When a workspace is first created, a default set of standard expense categories are created. Workspace Admins have the ability to manage this list of expense categories from the **Custom Data** area within **Settings**.
To access the settings area of Ruddr, your security role must be the Workspace Admin role, which has the **Administer all workspace settings and members** permission. To get to the settings area, simply click on the **Settings** option in the main nav bar, and select the **Custom Data** sub-menu item (Figure 1).
Figure 1 - **Custom Data** in the Settings Area
Within the custom data area, select **Expense Categories** from the set of options. This will bring up a list of all active expense categories. You can filter the expense categories list by typing in a category name or by selecting an active status.
Figure 2 - Managing Expense Categories in the Custom Data area of Ruddr
### Add an Expense Category
To add an expense category, simply scroll to the bottom of the expense category list in Custom Data and click on the + **Add Expense Category** button (Figure 3).
Figure 3 - Use this Button to Create a New Expense Category for Your Workspace
This will create a new row at the bottom of the list (Figure 4). Type in the category name and click on the green checkmark on the right to create the category.
Figure 4 - Enter the Name for the new Expense Category you wish to Add
### Edit an Expense Category
If you wish to edit an expense category, click on the edit (pencil) icon on the right side of the list (Figure 2). This will open up the expense category drawer (Figure 5) that will include additional options for the category.
Figure 5 - Specify Additional Details for your Expense Category
In addition to the category name, you can specify:
* Whether or not the category requires that the submitter provide attendee names. Some companies prefer to know the attendees for expense categories related to meals, entertainment, and events.
* If a receipt is required for all expenses for that expense category. For certain types of expenses, you may want to always require the attachment of a receipt.
* Whether or not the category should use units. If a category uses units, when an expense item is created for the category, the user will provide the number of units and then the expense total will be calculated automatically. The only default category that uses units is mileage.
* The Invoice Item that this type of expense should be associated with. By default, all expense categories are associated with the built-in "Expense" invoice item.
### Delete or Deactivate an Expense Category
Use the dropdown (Figure 6) next to an item in the expense category list (Figure 2) to delete or deactivate an expense category. You can delete an expense category if it is not currently in use within Ruddr. If the category is in use, then the delete option will be disabled and you will only be able to deactivate the value. When an expense category is deactivated, it can no longer be selected for new expense items, but past items will remain unchanged.
Figure 6 - Opt to Deactivate an Expense Category if it is in use and You Cannot Delete
# View and Manage Expense Items of Other Members
Source: https://help.ruddr.io/expenses/view-and-manage-expense-items-of-other-members
See which security role permissions let you view, edit, and impersonate other members' expense items in Ruddr, plus auditing and reporting options.
Depending on the permissions assigned to your security role, you may be able to access the expense items of other workspace members. The following permissions on your [security role](/workspace-administration/security-roles) determine your rights to the time and expense items of others.
* **Administer member time and expenses** for members - If your security role has this general permission, you will be able to view, edit, and delete member expense items for which you have permissions within the workspace.
* With this permission, you will have a **Member** selector at the top-right of the expense reports screen that will allow you to [interact with expense reports as any user](#impersonate-another-member-from-the-expense-report-screen) in the workspace.
* **Administer time and expenses** for projects - If your security role has this permission, you will be able to view, edit, and delete all expense items on the projects that you have access to. Depending on your security role, you will either have access to all projects in the workspace, projects assigned to your practice, or just the projects where you are on the project team.
* **View time and expenses** for projects - If your security role has this project permission set to **All projects the member has access to**, you will be able to view all expense items on the projects that you have access to. Depending on your security role, you will either have access to all projects in the workspace, projects assigned to your practice, or just the projects where you are on the project team.
If your security role does not have any of the permissions above, you will have no access to the expense reports or expense items of other members. The reports and screens within Ruddr will only show your own expense reports and expense items.
### Expense item locking
It is important to note that if an expense item is locked, you cannot edit or delete it. It is possible for an expense item to be locked for one user and unlocked for another user who has greater privileges. But, once an expense item is associated with a published invoice, that expense item will be locked for all members of the workspace. For more information, see the article on [expense item locking](/expenses/expense-item-locking).
### Impersonate Another Member from the Expense Report Screen
If your security role has the **Administer all member time and expenses** permission, you can interact with the expense report screen on behalf of any workspace member. At the top-right of the expense report screen, there is a **Member** selector (Figure 1) that includes all of the workspace members.
Figure 1 - Leverage the Member Selector to View/Manage Expense Entries for other Members in your Workspace
Simply select another member and then you can use the expense report screen as if you were that member. The actions available to you when impersonating will be the actions that are available to that member. So, when you impersonate a member, an expense item could appear locked (and read-only) even though you might be able to change that time item from another area of Ruddr when not impersonating.
Note that if you change another member's expense item via impersonation, the history of the expense item will show that you made that change.
### Expense Auditing
The expense auditing area (Figure 3) of the expense screen allows you to easily view and manage expense items. To access this area, click the **Auditing** sub-menu option (Figure 2) from the Expenses section of the Ruddr nav menu. From this screen, you can always access your own expense items and may be able to access the expense items of other workspace members, depending on your security role settings.
Figure 2 - Select **Auditing** to Easily View and Manage Expense Entries
In order to access expense items of other members, your security role must have the **View all member time and expenses** general permission or the **View project team time and expenses** project permission. In order to edit or delete expense items of other members, your security profile must have the **Administer all member time and expenses** general permission or the **Administer project team time and expenses** project permission.
Figure 3 - The Expense Auditing Screen
If you can view an expense item but can't edit it, the item in the auditing list will show a lock symbol. An expense item can be locked for several reasons, as described in more detail in the [expense item locking](/expenses/expense-item-locking) article.
At the top of the expense auditing tab are filters that allow you to narrow the set of expense items shown. You can filter by expense item date, project, status, member, and member's practice.
For a more detailed discussion, see the [expense auditing](/expenses/expense-auditing) article.
### Expense-related Reports
Within the reports area of Ruddr, you can run various reports related to expense items. The three primary expense-related reports are **Expense Summary by Project**, **Expense Summary by Member**, and **Expense Detail** (Figure 4). These reports show summarized and detailed views of all of the expense items that you have access to within the workspace.
Figure 4 - Expense Detail Report
Clicking on the filter button at the top right of the report screen will open up the Filters drawer (Figure 5). The filters are grouped to present a more organized experience for the member viewing the report.
Figure 5 - The Report Filter Drawer Organizes the Available Filters
Within the report screen, and based on the expense entry permissions that the member has as part of their security role, expense entries can be edited. For expense expense that are not locked, clicking on the expense entry row will open up the Edit Expense Item drawer, allowing the member to update details related to that expense entry.
Expense-related reports can exported in the following formats:
* Excel
* CSV
Clicking on the export button found next to the filter button at the top of the screen will present the user with a menu displaying the file format options.
# How do default Invoice Items get applied in invoices?
Source: https://help.ruddr.io/faqs-and-troubleshooting/billing/how-do-default-invoice-items-get-applied-in-invoices
Ruddr applies default Invoice Items to invoice line items based on the mappings you set on Project Types and Expense Categories in Custom Data.
When generating invoices from the Ready to Bill screen in Ruddr, Invoice Items are applied to each line item that is created on the invoice. In Ruddr, Invoice Items are required for each line item and represent the category of the charge to the customer, such as Service or Expense. Managing which Invoice Item is applied to different services and expenses is done through three entities found in [Custom Data](/workspace-administration/custom-data) in Workspace Settings:
* [Invoice Items](#invoice-items)
* [Project Types](#project-types)
* [Expense Categories](#expense-categories)
### Invoice Items
Invoice Items are managed in [Custom Data](/workspace-administration/custom-data) and can be created as one of either Type: **Income** or **Expense**. The way to apply an Invoice Item to specific services or expenses can be done through Project Types and Expense Categories, respectively.
### Project Types
Every project in Ruddr can optionally be assigned a project type. Assigning a project type helps you analyze the performance of specific segments of your project portfolio. Each Project Type in Ruddr can be associated with a Ruddr Invoice Item, to assist in categorizing the services revenue on an invoice.
To set the Invoice Item for each Project Type, access **Project Types** from the list of Custom Data entities in Ruddr (for more information, view the [Custom Data help](/workspace-administration/custom-data) article). The current Invoice Item for each project type will be shown in the list (Figure 1). You can change the invoice item by clicking on the **Edit** button on the given row.
Figure 1 - Managing Project Types and Associating to Invoice Items
Note that it is common to have multiple Project Types mapped to the same Invoice Item. If you only have one type of revenue (such as "Consulting"), you may choose to map all Project Types to that single Invoice Item.
Once a default Invoice Item is set for a Project Type, all services invoice line items on invoices will default to this associated Invoice Item.
### Expense Categories
Expense categories are used for the individual line items on expense reports. Each expense line item must be assigned a category. For more information of managing expense categories, see the separate [expense category](/expenses/manage-expense-categories) article.
Similar to how you map an Invoice Item to each Project Type, you can also map an Invoice Item to each Expense Category. By default, each Expense Category is mapped to the built-in "Expenses" Invoice Item in Ruddr. This is likely sufficient for most companies but if you need to break out billable expenses into separate income accounts, you will need to map your Expense Categories in Ruddr to specific Invoice Items.
To map an Expense Category to an Invoice Item, select **Expense Categories** from the list of Custom Data in Ruddr (for more information, view the [Custom Data help](/workspace-administration/custom-data) article). This will bring up the list of expense categories within the workspace. To edit the Invoice Item associated with a given Expense Category, simply click the edit button on the category and set the **Invoice Item** drop-down (Figure 2).
Figure 2 - Associate an Invoice Item with a Ruddr Expense Category
Once a default Invoice Item is set for an Expense Category, all expense invoice line items for this category will default to this associated Invoice Item.
# How does the Member Cost Method impact performance reporting?
Source: https://help.ruddr.io/faqs-and-troubleshooting/general/how-does-the-member-cost-method-impact-performance-reporting
Explains how the Hourly Wage, Fixed Wage Per-Hour, and Fixed Wage Per-Month cost methods change member and project cost calculations in performance reports.
Workspace Admins can use the Cost tab of the Member Dashboard to configure the history of a member's labor cost. Each labor cost period has a Start Date, End Date, Currency, Cost Method, Labor Cost, and Overhead Cost.
There are three options for the Cost Method as shown in Figure 1 below.
These three labor cost methods are as follows:
* **Hourly Wage** - This method is designed for members who are paid hourly, including contractors and hourly employees.
* **Fixed Wage Per-Hour** - This method is designed for members who are paid for the number of hours of capacity the member has during the period, not the number of actual hours recorded during the period.
* **Fixed Wage Per-Month** - This method is based on the monthly salary of the member, not the number of capacity hours or actual hours recorded during the month. This is the most common method used for fulltime employees.
### Member Performance Reporting
To show how the distinct labor cost methods impact member-based performance, let's assume we have three employees that each work 200 hours on a project during a given month. Those are the only hours recorded by those members during the month. The members each have eight hours of capacity on business days (Monday through Friday) and there are 22 business days during the month (thus 176 hours of capacity during the month). Each project team member has a different labor cost method, as described below:
* **Member A** - Hourly Wage labor cost method at \$50 per hour.
* **Member B** - Fixed Wage Per-Hour labor cost method at \$50 per hour.
* **Member C** - Fixed Wage Per Month labor cost method at \$9,000 per month.
The costs stated above include labor cost and overhead cost. The total cost per member for the month as shown on the Performance by Member report would be as follows:
* **Member A** - With the Hourly Wage method, every hour recorded by the member would impact their cost on any member-based performance report. Thus, Member A's cost for the given month would be 200 hours \* \$50 = \$10,000.
* **Member B** - With the Fixed Wage Per-Hour method, the member's total cost for the period is based on capacity hours in the month and not on recorded hours. Thus, Member B's cost would be 22 days \* 8 hours of capacity \* \$50 = \$8,800.
* **Member C** - With the Fixed Wage Per-Month method, the member's total cost for the period is the member's monthly salary/wage. Neither the capacity hours nor the recorded hours impact the the member's cost for the period. Thus, Member C's cost would be \$9,000.
### Project Performance Reporting
There is an important distinction with project-based performance reporting in that projects incur cost for every hour recorded against them. Let's assume we have the exact same scenario as described above but we want to evaluate the cost incurred by the project (and not the member).
* **Member A** - With the Hourly Wage method, the cost for Member A's time would be 200 hours \* \$50 = \$10,000. Note that this is **identical to Member A's member-based cost** from the example above.
* **Member B** - With the Fixed Wage Per-Hour method, the project is charged for every hour worked. Thus, Member B's cost incurred by the project would also be 200 hours \* \$50 = \$10,000.
* **Member C** - With the Fixed Wage Per-Month method, Ruddr must first calculate an hourly rate for the given month based on the monthly salary. In this case, the salary is \$9,000 and there are 176 hours of capacity which yields a cost rate of \$51.1363 per hour. The member worked 200 hours in the month and thus the total cost is 200 \* \$51.1363 = \$10,227.27.
So, the key difference with project-based performance reports is that the project incurs services cost for every hour recorded. If a member works overtime in a given month, it does not reduce the hourly cost applied to projects during that month.
# What is the difference between Plan, Actuals, and Forecast?
Source: https://help.ruddr.io/faqs-and-troubleshooting/general/what-is-the-difference-between-plan-actuals-and-forecast
Plan values reflect what was scheduled, actuals reflect delivered work, and forecasts combine both based on an Actuals Through date you choose.
Reports and dashboards in Ruddr may show planned values, actual values, or forecasted values. It is important to understand the relationship between these distinct concepts.
### Plan
A planned value in Ruddr is exactly what it sounds like - it is what you had planned to deliver for a given period of time. Here are some examples of reports that present planned values:
* **Hours Plan by Project and Resource** - shows all of the planned hours (for the reporting period) based on the resource allocations for each project.
* **Utilization Plan by Member** - shows the planned utilization metrics per workspace member based on the resource allocations and each member's capacity.
* **Performance Plan by Project** - shows the comprehensive planned project performance including the hours, revenue, cost, profit, and margin.
An important characteristic of plan values in Ruddr is that they are not impacted by actuals. For example, if you planned for 20 hours on Project X last week, but the team only delivered 15 hours, the plan does not change. If a year later you were to look at the plan for Project X for that week, it would still show that 20 hours were planned. The fact that planned values do not change is important because that enables you to historically compare actuals to plan. [Variance reports](/reports/variance-reports) in Ruddr perform this type of important analysis.
While an hours plan or utilization plan are based on resource allocations, a services revenue plan depends on the Billing Type of the project. A Time and Materials project uses allocations and bill rates to calculate planned services revenue while fixed fee projects use the billing schedule or manual revenue recognition ledger (depending on the revenue recognition method). For more information on how planned services revenue is calculated in Ruddr, [click here](/faqs-and-troubleshooting/revenue-in-ruddr/how-is-planned-services-revenue-calculated-in-ruddr).
### Actuals
While a planned value is what was intended, an actual value is what was ultimately delivered. For example, if I worked 30 hours last week on a Time and Materials project at a bill rate of \$150 per hour, my actual services revenue generated for the week is \$4,500. If I had been allocated to work 40 hours on that project, my 10 hour shortfall would result in a services revenue variance of -\$1,500.
Ruddr tracks actuals for many metrics including hours, revenue, cost, profit, margin, and utilization.
### Forecast
A forecast in Ruddr combines actuals and plan values based on an "Actuals Through" date. For example, let's say that today is the last day of January and I want to estimate our company's first quarter services revenue. I can run the "Performance Forecast by Project by Time Unit" for the quarter with the Actuals Through date set to January 31st. Ruddr will combine actual values for January and plan values for February and March into a single, cohesive report.
The power of forecasting in Ruddr is rooted in this ability to combine actuals and plan based on a date of your choosing. Extending the example above, let's assume that it is February 15th and you need an estimate of first quarter services revenue. You know that many of the personnel in your workspace rarely get their time entered until the end of the month. Since time entry is not up to date, using actuals through February 15th would understate both hours and revenue. By setting the Actuals Through date back to the end of January, you get a more realistic forecast because Ruddr uses plan values for all of February and March.
The screenshot below shows the "Performance Forecast by Project by Time Unit" report from September 1st through December 31st, with an Actuals Through date of October 15th. Note that in the report data, the month of September has an "Actuals" header, the month of October has an "Actuals/Plan" header, and the months of November and December have a "Plan" header. The data shown for October is combining actual values through October 15th and plan values for remainder of the month.
Figure 1 - The Performance Forecast by Project by Time Unit Report
# Why am I unable to login to Ruddr?
Source: https://help.ruddr.io/faqs-and-troubleshooting/general/why-am-i-unable-to-login-to-ruddr
Login problems usually come down to a missing account, an unverified email address, or a forgotten password, each with a simple fix.
There are usually three reasons why one might be unable to login to Ruddr:
1. [You have yet to create an account](#you-have-yet-to-create-an-account)
2. [You have created an account, but have yet to verify your email address](#you-created-an-account-but-have-yet-to-verify-your-email-address)
3. [You have forgotten your password](#you-have-forgotten-your-password)
### You Have Yet to Create an Account
An account with Ruddr can be created one of two ways:
1. You **sign up from the Ruddr.io homepage**. For more on this, please refer to the [Signing Up for Ruddr article](/getting-started/signing-up-for-ruddr) in the Help Center. Please note that as part of this process, you must verify your email address prior to receiving access to Ruddr.
2. You create an account as the result of **accepting an invitation** to a Ruddr workspace. For more on this, please read the [Accepting Workspace Invitations](/getting-started/accepting-workspace-invitations) article in the Ruddr Help Center.
### You Created an Account, but Have Yet to Verify your Email Address
If you create an account with Ruddr by signing up from the homepage (as opposed to creating an account via workspace invitation, you must verify your email address in order to access Ruddr. When you sign up via the homepage, you will receive an email (Figure 1) requesting email verification. Click **Verify Your Email Address** to complete the verification process.
Figure 1 - Email Request for Verification
### You Have Forgotten Your Password
In instances where you have forgotten your password, you can simply click the **Forgot password?** link on the bottom of the Login form to navigate to the Reset Password screen (Figure 2). On this screen, enter your email address and click **Reset Password**. Ruddr will send you a password reset email (Figure 3). Click **Choose a New Password** to begin the password reset process (Figure 4).
Figure 2 - Reset Password Screen
Figure 3 - Password Email Reset Notification
Figure 4 - Password Reset Screen
# Why do I see #NAME in Excel when I open a Ruddr export?
Source: https://help.ruddr.io/faqs-and-troubleshooting/general/why-do-i-see-name-in-excel-when-i-open-a-ruddr-export
Excel treats CSV values that start with a hyphen as formulas; use the From Text/CSV import on the Data tab to display the text correctly.
When Microsoft Excel imports a CSV (comma separated values) file, if a value in the file starts with a hyphen, Excel assumes that that value is a formula. This causes Excel to display "#NAME" in the cell instead of the text.
As an example, let's assume we have a CSV file with three columns. These columns are the employee's name, age, and their hobbies. Below is a sample of what that data might look like in a CSV file. Notice that the list of hobbies for Bill Smith start with a hyphen.
When we open this file in Excel, we see the following:
To keep this from happening, instead of opening the file in Excel, we need to use the **From Text/CSV** data import function within Excel. This is found on the Data tab of the ribbon menu bar.
The Excel data import engine will evaluate each cell in the CSV to determine the most appropriate data type for each column. As you can see below, the data import shows the text in the third column instead of #NAME for Bill Smith's hobbies.
Simply click the **Load** button at the bottom of this import screen to import the data into Excel.
# What currencies are supported in Ruddr?
Source: https://help.ruddr.io/faqs-and-troubleshooting/multicurrency/what-currencies-are-supported-in-ruddr
A complete list of the world currencies supported by the Multicurrency and Localization features in Ruddr, from the Afghan Afghani to the Zimbabwean Dollar.
The following currencies are supported by [Multicurrency](/multicurrency/multicurrency-overview) and [Localization](/workspace-administration/general-workspace-settings#regional-settings) in Ruddr:
Afghan Afghani (AFN)\
Albanian Lek (ALL)\
Algerian Dinar (DZD)\
Angolan Kwanza (AOA)\
Argentine Peso (ARS)\
Armenian Dram (AMD)\
Aruban Florin (AWG)\
Australian Dollar (AUD)\
Azerbaijani Manat (AZN)\
Bahamian Dollar (BSD)\
Bahraini Dinar (BHD)\
Bangladeshi Taka (BDT)\
Barbadian Dollar (BBD)\
Belarusian Ruble (BYN)\
Belize Dollar (BZD)\
Bermudan Dollar (BMD)\
Bhutanese Ngultrum (BTN)\
Bolivian Boliviano (BOB)\
Bosnia-Herzegovina Convertible Mark (BAM)\
Botswanan Pula (BWP)\
Brazilian Real (BRL)\
British Pound (GBP)\
Brunei Dollar (BND)\
Bulgarian Lev (BGN)\
Burundian Franc (BIF)\
CFP Franc (XPF)\
Cambodian Riel (KHR)\
Canadian Dollar (CAD)\
Cape Verdean Escudo (CVE)\
Cayman Islands Dollar (KYD)\
Central African CFA Franc (XAF)\
Chilean Peso (CLP)\
Chinese Yuan (CNY)\
Colombian Peso (COP)\
Comorian Franc (KMF)\
Congolese Franc (CDF)\
Costa Rican Colón (CRC)\
Croatian Kuna (HRK)\
Cuban Convertible Peso (CUC)\
Cuban Peso (CUP)\
Czech Koruna (CZK)\
Danish Krone (DKK)\
Djiboutian Franc (DJF)\
Dominican Peso (DOP)\
East Caribbean Dollar (XCD)\
Egyptian Pound (EGP)\
Eritrean Nakfa (ERN)\
Ethiopian Birr (ETB)\
Euro (EUR)\
Falkland Islands Pound (FKP)\
Fijian Dollar (FJD)\
Gambian Dalasi (GMD)\
Georgian Lari (GEL)\
Ghanaian Cedi (GHS)\
Gibraltar Pound (GIP)\
Guatemalan Quetzal (GTQ)\
Guinean Franc (GNF)\
Guyanaese Dollar (GYD)\
Haitian Gourde (HTG)\
Honduran Lempira (HNL)\
Hong Kong Dollar (HKD)\
Hungarian Forint (HUF)\
Icelandic Króna (ISK)\
Indian Rupee (INR)\
Indonesian Rupiah (IDR)\
Iranian Rial (IRR)\
Iraqi Dinar (IQD)\
Israeli New Shekel (ILS)\
Jamaican Dollar (JMD)\
Japanese Yen (JPY)\
Jordanian Dinar (JOD)\
Kazakhstani Tenge (KZT)\
Kenyan Shilling (KES)\
Kuwaiti Dinar (KWD)\
Kyrgystani Som (KGS)\
Laotian Kip (LAK)\
Lebanese Pound (LBP)\
Lesotho Loti (LSL)\
Liberian Dollar (LRD)\
Libyan Dinar (LYD)\
Macanese Pataca (MOP)\
Macedonian Denar (MKD)\
Malagasy Ariary (MGA)\
Malawian Kwacha (MWK)\
Malaysian Ringgit (MYR)\
Maldivian Rufiyaa (MVR)\
Mauritanian Ouguiya (MRU)\
Mauritian Rupee (MUR)\
Mexican Peso (MXN)\
Moldovan Leu (MDL)\
Mongolian Tugrik (MNT)\
Moroccan Dirham (MAD)\
Mozambican Metical (MZN)\
Myanmar Kyat (MMK)\
Namibian Dollar (NAD)\
Nepalese Rupee (NPR)\
Netherlands Antillean Guilder (ANG)\
New Taiwan Dollar (TWD)\
New Zealand Dollar (NZD)\
Nicaraguan Córdoba (NIO)\
Nigerian Naira (NGN)\
North Korean Won (KPW)\
Norwegian Krone (NOK)\
Omani Rial (OMR)\
Pakistani Rupee (PKR)\
Panamanian Balboa (PAB)\
Papua New Guinean Kina (PGK)\
Paraguayan Guarani (PYG)\
Peruvian Sol (PEN)\
Philippine Peso (PHP)\
Polish Zloty (PLN)\
Qatari Riyal (QAR)\
Romanian Leu (RON)\
Russian Ruble (RUB)\
Rwandan Franc (RWF)\
Salvadoran Colón (SVC)\
Samoan Tala (WST)\
Saudi Riyal (SAR)\
Serbian Dinar (RSD)\
Seychellois Rupee (SCR)\
Sierra Leonean Leone (1964—2022) (SLL)\
Singapore Dollar (SGD)\
Solomon Islands Dollar (SBD)\
Somali Shilling (SOS)\
South African Rand (ZAR)\
South Korean Won (KRW)\
South Sudanese Pound (SSP)\
Special Drawing Rights (XDR)\
Sri Lankan Rupee (LKR)\
St. Helena Pound (SHP)\
Sudanese Pound (SDG)\
Surinamese Dollar (SRD)\
Swazi Lilangeni (SZL)\
Swedish Krona (SEK)\
Swiss Franc (CHF)\
Syrian Pound (SYP)\
São Tomé & Príncipe Dobra (STN)\
Tajikistani Somoni (TJS)\
Tanzanian Shilling (TZS)\
Thai Baht (THB)\
Tongan Paʻanga (TOP)\
Trinidad & Tobago Dollar (TTD)\
Tunisian Dinar (TND)\
Turkish Lira (TRY)\
Turkmenistani Manat (TMT)\
US Dollar (USD)\
Ugandan Shilling (UGX)\
Ukrainian Hryvnia (UAH)\
United Arab Emirates Dirham (AED)\
Uruguayan Peso (UYU)\
Uzbekistani Som (UZS)\
Vanuatu Vatu (VUV)\
Venezuelan Bolívar (VES)\
Vietnamese Dong (VND)\
West African CFA Franc (XOF)\
Yemeni Rial (YER)\
Zambian Kwacha (ZMW)\
Zimbabwean Dollar (2009) (ZWL)
# How do I change bill rates on a project that is in progress?
Source: https://help.ruddr.io/faqs-and-troubleshooting/projects/how-do-i-change-bill-rates-on-a-project-that-is-in-progress
Add a dated project rate card so earlier time keeps its rates, or, without rate cards, deactivate old project roles and create new ones with updated bill rates.
When a project extends for many months, or possibly years, it is not uncommon for bill [rates](/projects/project-bill-rates) to change during the course of the project. Often, a periodic increase in a project's bill rates is built into the contract. You must be careful about how you change bill rates in Ruddr to maintain the rates on previous time entries.
If your workspace is on the Pro plan, the simplest way is [Project Rate Cards](/projects/project-rate-cards). Check **Use rate cards** in the project's settings, then add a rate card that starts on the date the new rates take effect, and enter the new rates on it. Time tracked before that date keeps the previous rates, and time tracked from that date on uses the new ones.
When a project has never had more than one rate card, it has a single set of rates, and changing a rate changes it on every existing time entry. In that case, follow these steps when changing bill rates on a project.
1. **Ensure that all time entries that need to use the old rates have been created.** Since you will be removing the ability to track time at the previous rates, ensure that all time entries that need those rates have been created in Ruddr.
2. **Clone if the project does not use roles.** If a project does not use [roles](/projects/project-roles), you should not change bill rates on the project team members unless you want the bill rate of all previous time entries on the project to use the new rate. When a project does not use roles, the best way to use new bill rates on the project is to clone the project and then archive the original project. You can then update the bill rates on the newly cloned project.
3. **Assuming the project uses roles, deactivate the roles with the old rate.** For any roles on the project that need a new rate, first you should deactivate the old role. You do this from the **Roles** section of the project's [**Settings**](/projects/project-settings) tab. Simply choose the **Deactivate** menu option on the menu at the right side of the role.
4. **Create new roles using the same role name and assign the updated rates.** For each role that will have a new rate, click the Quick Add button at the bottom of the list of project roles. Type in the role name , discipline (optional), billable status, and the new bill rate.
5. **Assign the new roles to the appropriate project team members.** For each of the new project roles, assign project team members in the **Member Assignments** field of the role form, accessed from the **Roles** section of the Settings tab.
Note that if you want project team members to be able to record time to both the previous bill rate and the new bill rate, you would not deactivate the old roles. In order for project team members to differentiate between the roles, you would want to give them unique names (such as "Project Manager 2022" and "Project Manager 2023").
# What are the advantages of using roles on projects?
Source: https://help.ruddr.io/faqs-and-troubleshooting/projects/what-are-the-advantages-of-using-roles-on-projects
Roles let members bill at multiple rates, support mid-project rate changes without altering historical revenue, and can be imported from client rate cards.
Projects in Ruddr can be configured to either use roles or not use roles. This option can be set via the **Use roles** checkbox in the **Settings** section of the project's [**Settings**](/projects/project-settings) tab. When this checkbox is unchecked, bill rates are applied directly to project team members. When this checkbox is checked, bill rates are applied to project roles and then team members are assigned to those roles.
While attaching bill rates directly to project team members is slightly easier and quicker to set up, using roles is more flexible and functional, as described below.
The following are important advantages of using roles for projects in Ruddr:
* **Project team members can be assigned to multiple roles and thus can bill at multiple bill rates on the same project.** Since bill rates are assigned to roles and project team members can be assigned to as many roles as needed, you can easily enable members to bill at different rates on the same project. This can't be done on projects that do not use roles.
* **Bill rates can be changed on long-term projects without changing the historical revenue.** It is fairly common for long-term projects to include standard increases to bill rates on a periodic basis. For example, the bill rates might increase 3-5% per year for each year of a five year contract. When roles are in use on a project in Ruddr, the prior year's roles can easily be deactivated and team members can then be assigned to new roles at the increased bill rate. This allows for all historical financial reporting on the project to remain accurate. [Click here](/faqs-and-troubleshooting/projects/how-do-i-change-bill-rates-on-a-project-that-is-in-progress) to learn more about how to change bill rates on a project.
* **Roles and rates can be imported from the client-level rate card.** Ruddr allows roles and rates to be defined at the workspace level within the **Custom Data** area as well as on a per-client level. When creating a new project for a client, roles and rates can be added to the project from the client entity. Or, all defined roles and rates at the client level can be added to the project. This makes it very easy to set up a new project for an existing client and ensure that the roles and rates being used are the ones that have been negotiated with that client.
One thing to point out is that the **Use roles** checkbox on a project can only be changed when a project does not have any published invoices. Once a project has a published invoice, this checkbox will be disabled.
# Why is an allocation resulting in zero hours being allocated to a member?
Source: https://help.ruddr.io/faqs-and-troubleshooting/resource-allocations/why-is-an-allocation-resulting-in-zero-hours-being-allocated-to-a-member
Zero allocated hours usually mean the member lacks a capacity period, capacity on certain weekdays, or an active date range covering the allocation.
Resource allocations rely on a member's [capacity](/workspace-administration/member-profile#capacity-periods) to determine when and how many hours to allocate to that member.
If a "Hours per day" allocation is created for a member, for example, Ruddr will allocate that number of hours on days where the member has capacity. Take the following example:
* 8 hours per day are allocated to a member.
* The member has capacity on Monday, Tuesday, Wednesday, and Thursday.
* Ruddr would allocate 32 hours over the span of a single week, with 8 hours allocated on Monday through Thursday and 0 hours allocated on Friday.
There are a few different conditions that result in zero hours being allocated for a member:
* The member does not have a capacity period created / specified.
* The member's capacity period does not cover specific day(s) of the week for which you are expecting hours to be allocated.
* The Active Date Range on the [member's profile](/workspace-administration/member-profile#active-date-range) do not span the entirety of the allocation, resulting in a capacity period that does not span the duration of the allocation. A member's capacity must fall within the member's Start Date and End Date.
For more a member's capacity periods, please refer to the [Member Profile](/workspace-administration/member-profile#capacity-periods) article in the Help Center.
# Budgeting for non-billable expense on a Fixed Fee project
Source: https://help.ruddr.io/faqs-and-troubleshooting/revenue-in-ruddr/budgeting-for-non-billable-expense-on-a-fixed-fee-project
On Fixed Fee projects, non-billable expenses count as both expenses revenue and cost, so the services revenue budget must be reduced by that amount.
When [budgeting](/projects/create-a-project-budget) for a fixed fee project, it is important to consider that the treatment of expenses on Fixed Fee projects dictates how those expenses are also treated when budgeting for those projects:
#### Non-billable expenses
It is assumed that the expense is covered by (or built into) the Fixed Fee amount, so the expenses are subtracted from the services revenue associated with billing milestones or rev rec ledger entries. Therefore, non-billable expenses will have both an expenses revenue event and an expenses cost event on Fixed Fee projects. To account for the expenses revenue, the services revenue is decremented by the amount of the non-billable expense.
* For example, let's assume that you have a \$100K Fixed Fee project. If you had a \$10K non-billable expense, the total revenue is still \$100K, but it is comprised of \$90K in services revenue and \$10K in expenses revenue. So, even though that expense is non-billable, it counts as expenses revenue in that it is covered by the Fixed Fee amount.
As such, when you create a Fixed Fee budget, non-billable expenses are treated as both revenue and cost. Your services revenue budget would need to be decremented to account for that. In the above example, your Services Revenue budget would be \$90K (not \$100K) and your non-billable expenses budget would be \$10K - but you would see expenses revenue and cost show up in the [Financial Budget Summary](/projects/create-a-project-budget#financial-budget-summary) on the budget. Your total Revenue budget would sum up to \$100K.
#### Billable expenses
These expenses do not impact Fixed Fee services revenue at all, because they are invoiced and treated as "additional" revenue, apart from the billing milestones on the Fixed Fee Billing Schedule. You would set them up on the budget just as you normally would and would see an additional amount of revenue reflected in the [Financial Budget Summary](/projects/create-a-project-budget#financial-budget-summary).
Once the Fixed Fee project has recognized revenue, you can track how these non-billable expenses are treated by consulting the export of the Performance by Project report. You would see the breakdown of Earned Revenue: Services Revenue, Expenses Revenue, and Other Items Revenue, as well as a breakdown of the costs: Services Cost and Expenses Cost.
# Fixed Fee Revenue Recognition: Automated - Percentage of Billable Hours
Source: https://help.ruddr.io/faqs-and-troubleshooting/revenue-in-ruddr/fixed-fee-revenue-recognition-automated-percentage-of-billable-hours
This automated method recognizes fixed fee revenue based on billable hours delivered against total projected hours, with formulas and worked examples.
The **Percentage of Billable Hours** method recognizes revenue on a fixed fee project based on how much work has been completed.
It uses **billable hours delivered** as a measure of progress.
👉 Use this method when billable hours are a reliable indicator of project completion.
**Best when:**\
All billable hours are roughly equal in value and cost.
**Why you’d choose it:**
* It’s the **simplest and most intuitive** method
* Progress is directly tied to **effort (hours worked)**
* Works well when:
* Team members have **similar bill rates**
* Cost differences between roles are minimal
* Easy to explain and predict
In this method, *every billable hour contributes equally to progress*
***
## Before you start
Make sure your project includes:
* A **Services Revenue Budget**
* A **Billable Hours Budget**
Both can be configured at the **summary or detailed** level.
***
## How this method works
Ruddr recognizes revenue based on how much of the total projected work has been completed.
At a high level:
1. Track billable hours worked to date
2. Estimate total project hours
3. Calculate percent complete
4. Recognize revenue based on that percentage
***
## How Ruddr calculates recognizable revenue
For each recognition period, Ruddr:
1. Calculates **total billable hours worked to date**
2. Determines **total projected billable hours** as the greater of:
* Budgeted hours
* Actual hours + future allocated hours (if using allocations)
3. Calculates **percent complete**
4. Calculates **total revenue earned to date**
5. Subtracts previously recognized revenue to determine the **current period entry**
#### Important: projects with allocations
If your project uses **resource allocations**:
* Projected hours can increase during the project
* This happens when:
* Actual hours + future allocations exceed the original budget
When this occurs:
* Revenue recognition adjusts automatically
* Earlier expectations may shift based on the new projection
***
## Key formulas (reference)
**Percent complete**\
Total billable hours worked ÷ Total projected billable hours
**Total projected hours**\
The great of Budgeted billable hours and (Actual billable hours + future allocated billable hours)
**Revenue earned to date**\
Percent complete × Services revenue budget
**Revenue for current period**\
Revenue earned to date − Previously recognized revenue
***
## How automation works
If automated revenue recognition is enabled:
* Runs **weekly or monthly**
* Monthly runs create entries for the **previous month**
* Weekly runs create entries for the **prior week**
* If using allocations:
* Future **forecasted entries are created**
* Forecasts are **refreshed each run**
***
# Example 1: Project stays within budget
This example shows the standard behavior when projected hours do not change.
**Project setup:**
* Services Revenue Budget: \$120,000
* Billable Hours Budget: 1,200 hours
* Monthly automation enabled
* Project stays within budget
***
### Month 1
* Hours to date: 240
* Percent complete: 20%
* Revenue earned to date: \$24,000
* **Revenue recognized: \$24,000**
***
### Month 2
* Hours to date: 600
* Percent complete: 50%
* Revenue earned to date: \$60,000
* Previously recognized: \$24,000
* **Revenue recognized: \$36,000**
***
### Month 3
* Hours to date: 900
* Percent complete: 75%
* Revenue earned to date: \$90,000
* Previously recognized: \$60,000
* **Revenue recognized: \$30,000**
***
### Month 4
* Hours to date: 1,200
* Percent complete: 100%
* Revenue earned to date: \$120,000
* Previously recognized: \$90,000
* **Revenue recognized: \$30,000**
***
## Summary table
| Month | Billable Hours to Date | % Complete | Revenue Recognized Through Period | Current Month Rev Rec |
| - | - | - | - | - |
| 1 | 240 | 20% | \$24,000 | \$24,000 |
| 2 | 600 | 50% | \$60,000 | \$36,000 |
| 3 | 900 | 75% | \$90,000 | \$30,000 |
| 4 | 1,200 | 100% | \$120,000 | \$30,000 |
## Summary
* Revenue follows **linear progress**
* Each period recognizes the **incremental earned amount**
* Total revenue = **\$120,000**
***
# Example 2: Total forecasted billable hours exceed budgeted billable hours
This example shows what happens when projected hours increase during the project.
**Project setup:**
* Services Revenue Budget: \$120,000
* Original Billable Hours Budget: 1,200 hours
* Monthly automation enabled
* Project uses **resource allocations**
***
## What changes?
In Month 3, projected hours increase because:
* Actual hours + future allocated hours exceed the original budget
Ruddr recalculates total projected hours using:
> max(Budgeted hours, Actual hours + future allocated hours)
***
### Month 1
* Hours to date: 240
* Projected hours: 1,200
* Percent complete: 20%
* Revenue earned to date: \$24,000
* **Revenue recognized: \$24,000**
***
### Month 2
* Hours to date: 600
* Projected hours: 1,200
* Percent complete: 50%
* Revenue earned to date: \$60,000
* Previously recognized: \$24,000
* **Revenue recognized: \$36,000**
***
### Month 3 (projected hours increase)
* Hours to date: 900
* Projected hours: **1,400**
* Percent complete: **64.29%**
* Revenue earned to date: **\$77,142.86**
* Previously recognized: \$60,000
* **Revenue recognized: \$17,142.86**
***
### Month 4
* Hours to date: 1,400
* Projected hours: 1,400
* Percent complete: 100%
* Revenue earned to date: \$120,000
* Previously recognized: \$77,142.86
* **Revenue recognized: \$42,857.14**
***
## Summary table
| Month | Actual Hours to Date | Future Allocated Hours | Projected Total Hours | % Complete | Revenue Recognized Through Period | Current Month Rev Rec |
| - | - | - | - | - | - | - |
| 1 | 240 | 960 | 1,200 | 20.00% | \$24,000.00 | \$24,000.00 |
| 2 | 600 | 600 | 1,200 | 50.00% | \$60,000.00 | \$36,000.00 |
| 3 | 900 | 500 | 1,400 | 64.29% | \$77,142.86 | \$17,142.86 |
| 4 | 1,400 | 0 | 1,400 | 100.00% | \$120,000.00 | \$42,857.14 |
## Why revenue decreases in Month 3
If projected hours had stayed at 1,200:
* Percent complete would be: 900 / 1,200 = 75%
* Revenue earned to date would be: \$90,000
But because projected hours increased to 1,400:
* Percent complete becomes: 900 / 1,400 = 64.29%
* Revenue earned to date becomes: \$77,142.86
👉 This results in **less revenue recognized in Month 3**
***
## Key takeaway
When projected hours increase:
* Percent complete **decreases**
* Revenue is spread across **more total hours**
* Current period revenue may be **lower than expected**
***
## Learn more
* [Fixed Fee Revenue Recognition](/projects/fixed-fee-revenue-recognition)
* [The Revenue Recognition Ledger](/projects/the-revenue-recognition-ledger)
# Fixed Fee Revenue Recognition: Percentage of Services Cost
Source: https://help.ruddr.io/faqs-and-troubleshooting/revenue-in-ruddr/fixed-fee-revenue-recognition-percentage-of-services-cost
This method recognizes fixed fee revenue based on services cost incurred against a cost budget derived from your target gross margin, with worked examples.
The **Percentage of Services Cost** method recognizes revenue on a fixed fee project based on how much **cost has been incurred**.
It uses **services cost** as the measure of project progress. In order to leverage this method, you would want to ensure that all project team members have a cost provided. Member cost periods are set on the [member profile](/workspace-administration/member-profile) of each member.
👉 Use this method when **cost is a better indicator of progress than hours**, such as when team members have significantly different billing rates or costs.
**Best when:**\
Cost—not hours—is the most accurate measure of progress.
**Why you’d choose it:**
* Accounts for **differences in labor cost across roles**
* Reflects **true economic consumption** of the project
* Includes:
* Billable time
* Non-billable time
* More accurate when:
* Senior vs junior resources have very different costs
* Margin management is important
***
## Before you start
Make sure your project includes:
* A **Services Revenue Budget**
* A **Target Services Gross Margin**
Ruddr uses the target gross margin to calculate the project’s **services cost budget**.
***
## How the cost budget is calculated
Ruddr derives the services cost budget using:
Services Cost Budget = Services Revenue Budget × (1 − Target Services Gross Margin)
**Example:**
* Revenue budget: \$120,000
* Target margin: 40%
→ Cost budget = \$120,000 × (1 − 40%) = \$72,000
***
## How this method works
Ruddr recognizes revenue based on how much of the total projected cost has been incurred.
At a high level:
1. Track services cost incurred to date
2. Estimate total project cost
3. Calculate percent complete
4. Recognize revenue based on that percentage
***
## How Ruddr calculates revenue
For each recognition period, Ruddr:
1. Calculates **total services cost incurred to date**
2. Determines **total projected services cost** as the greater of:
* Budgeted cost
* Actual cost + future allocated cost (if using allocations)
3. Calculates **percent complete**
4. Calculates **total revenue earned to date**
5. Subtracts previously recognized revenue to determine the **current period entry**
***
## What’s included in services cost
Services cost includes **all project hours**, not just billable time:
* Billable hours
* Non-billable hours
👉 Both contribute to total project cost and impact revenue recognition.
***
## Key formulas (reference)
**Percent complete**\
Total services cost incurred ÷ Total projected services cost
**Total projected cost**\
The greater of Budgeted cost and (Actual cost + future allocated cost)
**Revenue earned to date**\
Percent complete × Services revenue budget
**Revenue for current period**\
Revenue earned to date − Previously recognized revenue
***
## How automation works
If automated revenue recognition is enabled:
* Runs **weekly or monthly**
* Monthly runs create entries for the **previous month**
* Weekly runs create entries for the prior week
* If using allocations:
* Future **forecasted entries are created**
* Forecasts are **refreshed each run**
***
# Example 1: Project stays within services cost budget
This example shows standard behavior when projected cost does not change.
**Project setup:**
* Services Revenue Budget: \$120,000
* Target Services Gross Margin: 40%
* Services Cost Budget: \$72,000
* Monthly automation enabled
***
### Month 1
* Cost to date: \$14,400
* Percent complete: 20%
* Revenue earned to date: \$24,000
* **Revenue recognized: \$24,000**
***
### Month 2
* Cost to date: \$36,000
* Percent complete: 50%
* Revenue earned to date: \$60,000
* Previously recognized: \$24,000
* **Revenue recognized: \$36,000**
***
### Month 3
* Cost to date: \$54,000
* Percent complete: 75%
* Revenue earned to date: \$90,000
* Previously recognized: \$60,000
* **Revenue recognized: \$30,000**
***
### Month 4
* Cost to date: \$72,000
* Percent complete: 100%
* Revenue earned to date: \$120,000
* Previously recognized: \$90,000
* **Revenue recognized: \$30,000**
***
## Summary table:
| Month | Services Cost to Date | Projected Total Services Cost | % Complete | Revenue Recognized Through Period | Current Month Rev Rec |
| - | - | - | - | - | - |
| 1 | \$14,400.00 | \$72,000.00 | 20.00% | \$24,000.00 | \$24,000.00 |
| 2 | \$36,000.00 | \$72,000.00 | 50.00% | \$60,000.00 | \$36,000.00 |
| 3 | \$54,000.00 | \$72,000.00 | 75.00% | \$90,000.00 | \$30,000.00 |
| 4 | \$72,000.00 | \$72,000.00 | 100.00% | \$120,000.00 | \$30,000.00 |
## Summary
* Revenue follows **progress based on cost incurred**
* Each period recognizes the **incremental earned amount**
* Total revenue = **\$120,000**
***
# Example 2: Project exceeds cost budget
This example shows what happens when projected cost increases during the project.
**Project setup:**
* Services Revenue Budget: \$120,000
* Original Services Cost Budget: \$72,000
* Monthly automation enabled
* Project uses allocations
***
## What changes?
In Month 3, projected cost increases because:
* Actual cost + future allocated cost exceeds the original budget
Ruddr recalculates projected cost using:
> max(Budgeted cost, Actual cost + future allocated cost)
***
### Month 1
* Cost to date: \$14,400
* Projected cost: \$72,000
* Percent complete: 20%
* Revenue earned to date: \$24,000
* **Revenue recognized: \$24,000**
***
### Month 2
* Cost to date: \$36,000
* Projected cost: \$72,000
* Percent complete: 50%
* Revenue earned to date: \$60,000
* Previously recognized: \$24,000
* **Revenue recognized: \$36,000**
***
### Month 3 (projected cost increases)
* Cost to date: \$54,000
* Projected cost: **\$84,000**
* Percent complete: **64.29%**
* Revenue earned to date: **\$77,142.86**
* Previously recognized: \$60,000
* **Revenue recognized: \$17,142.86**
***
### Month 4
* Cost to date: \$84,000
* Projected cost: \$84,000
* Percent complete: 100%
* Revenue earned to date: \$120,000
* Previously recognized: \$77,142.86
* **Revenue recognized: \$42,857.14**
***
## Summary table: projected cost exceeds budget in Month 3
| Month | Services Cost to Date | Future Services Cost | Projected Total Services Cost | % Complete | Revenue Recognized Through Period | Current Month Rev Rec |
| - | - | - | - | - | - | - |
| 1 | \$14,400.00 | \$57,600.00 | \$72,000.00 | 20.00% | \$24,000.00 | \$24,000.00 |
| 2 | \$36,000.00 | \$36,000.00 | \$72,000.00 | 50.00% | \$60,000.00 | \$36,000.00 |
| 3 | \$54,000.00 | \$30,000.00 | \$84,000.00 | 64.29% | \$77,142.86 | \$17,142.86 |
| 4 | \$84,000.00 | \$0.00 | \$84,000.00 | 100.00% | \$120,000.00 | \$42,857.14 |
## Why revenue decreases in Month 3
If projected cost had stayed at \$72,000:
* Percent complete = \$54,000 ÷ \$72,000 = 75%
* Revenue earned to date = \$90,000
But because projected cost increased to \$84,000:
* Percent complete = \$54,000 ÷ \$84,000 = 64.29%
* Revenue earned to date = \$77,142.86
👉 This results in **less revenue recognized in Month 3**
***
## Key takeaway
When projected cost increases:
* Percent complete **decreases**
* Revenue is spread across **more total cost**
* Current period revenue may be **lower than expected**
***
## Important: projects with allocations
If your project uses **resource allocations**:
* Projected cost can increase during the project
* This happens when:
* Actual cost + future allocations exceed the original budget
When this occurs:
* Revenue recognition adjusts automatically
* Earlier expectations may shift based on the new projection
***
## Learn more
* [Fixed Fee Revenue Recognition](/projects/fixed-fee-revenue-recognition)
* [The Revenue Recognition Ledger](/projects/the-revenue-recognition-ledger)
# Fixed Fee Revenue Recognition: Percentage of Time & Materials Revenue
Source: https://help.ruddr.io/faqs-and-troubleshooting/revenue-in-ruddr/fixed-fee-revenue-recognition-percentage-of-time-materials-revenue
This method recognizes fixed fee revenue based on the time and materials value of work delivered at bill rates, ideal when rates vary across roles.
The **Percentage of Time & Materials (T\&M) Revenue** method recognizes revenue on a fixed fee project based on the **value of work delivered**, using T\&M rates.
It measures progress based on **revenue generated at bill rates**, rather than hours or cost.
👉 Use this method when **billable value is the best indicator of progress**, especially when team members have significantly different bill rates. You may also choose to use this when member costs are not available in Ruddr.
**Best when:**\
The **value of work delivered (at bill rates)** is the best measure of progress.
**Why you’d choose it:**
* Accounts for **differences in bill rates across roles**
* Aligns progress with **customer-facing value**, not just effort or cost
* Useful when:
* Pricing varies significantly by role
* You want progress tied to **revenue-generating value**
* Often closest to how work would be valued in a T\&M model
* Is a good option when member costs are not available
In this method, *higher-value work contributes more to progress*
***
## Before you start
Make sure your project includes:
* A **Services Revenue Budget**
* **Bill rates** defined for each project member or role
* A **detailed budget** with billable hours for each role or member
Even though bill rates do not affect invoicing on a fixed fee project, they **do affect revenue recognition** for this method.
***
## How the T and M value is calculated
Ruddr calculates the project’s **budgeted T\&M revenue** using:
* Budgeted billable hours × bill rate (for each role or team member)
Then sums those values across the project. If the project uses [rate cards](/projects/project-rate-cards#fixed-fee-projects), the bill rates come from the budget's rate card.
***
## How this method works
Ruddr recognizes revenue based on how much **T\&M value has been delivered relative to the total projected T\&M value**.
At a high level:
1. Track T\&M revenue generated to date
2. Estimate total projected T\&M revenue
3. Calculate percent complete
4. Recognize revenue based on that percentage
***
## How Ruddr calculates revenue
For each recognition period, Ruddr:
1. Calculates **T\&M revenue to date**
2. Determines **total projected T\&M revenue** as the greater of:
* Budgeted T\&M revenue
* Past T\&M revenue + future forecasted T\&M revenue (if using allocations)
3. Calculates **percent complete**
4. Calculates **total revenue earned to date**
5. Subtracts previously recognized revenue to determine the **current period entry**
***
## Key formulas (reference)
**Budgeted T\&M revenue**\
Sum of (Budgeted hours × bill rate) for each role or member
**Percent complete**\
T\&M revenue to date ÷ Total projected T\&M revenue
**Total projected T\&M revenue**\
The great of Budgeted T\&M revenue and (Past T\&M revenue + future forecasted T\&M revenue)
**Revenue earned to date**\
Percent complete × Fixed fee services revenue budget
**Revenue for current period**\
Revenue earned to date − Previously recognized revenue
***
## How automation works
If automated revenue recognition is enabled:
* Runs **weekly or monthly**
* Monthly runs create entries for the **previous month**
* Weekly runs create entries for the **prior week**
* If using allocations:
* Future **forecasted entries are created**
* Forecasts are **refreshed each run**
***
# Example 1: Project progresses as expected
This example shows standard behavior when projected T\&M revenue does not change.
**Project setup:**
* Fixed Fee Services Revenue Budget: \$120,000
* Budgeted T\&M Revenue: \$160,000
* Monthly automation enabled
***
### Month 1
* T\&M revenue to date: \$32,000
* Percent complete: 20%
* Revenue earned to date: \$24,000
* **Revenue recognized: \$24,000**
***
### Month 2
* T\&M revenue to date: \$80,000
* Percent complete: 50%
* Revenue earned to date: \$60,000
* Previously recognized: \$24,000
* **Revenue recognized: \$36,000**
***
### Month 3
* T\&M revenue to date: \$120,000
* Percent complete: 75%
* Revenue earned to date: \$90,000
* Previously recognized: \$60,000
* **Revenue recognized: \$30,000**
***
### Month 4
* T\&M revenue to date: \$160,000
* Percent complete: 100%
* Revenue earned to date: \$120,000
* Previously recognized: \$90,000
* **Revenue recognized: \$30,000**
***
## Summary table:
| Month | T\&M Revenue to Date | Projected Total T\&M Revenue | % Complete | Revenue Recognized Through Period | Current Month Rev Rec |
| - | - | - | - | - | - |
| 1 | \$32,000.00 | \$160,000.00 | 20.00% | \$24,000.00 | \$24,000.00 |
| 2 | \$80,000.00 | \$160,000.00 | 50.00% | \$60,000.00 | \$36,000.00 |
| 3 | \$120,000.00 | \$160,000.00 | 75.00% | \$90,000.00 | \$30,000.00 |
| 4 | \$160,000.00 | \$160,000.00 | 100.00% | \$120,000.00 | \$30,000.00 |
## Summary
* Revenue follows **progress based on delivered value**
* Each period recognizes the **incremental earned amount**
* Total revenue = **\$120,000**
***
# Example 2: Total forecasted T and M revenue increases
This example shows what happens when projected T\&M revenue increases during the project.
**Project setup:**
* Fixed Fee Services Revenue Budget: \$120,000
* Original Budgeted T\&M Revenue: \$160,000
* Monthly automation enabled
* Project uses allocations
***
## What changes?
In Month 3, projected T\&M revenue increases because:
* Past T\&M revenue + future forecasted T\&M revenue exceeds the original budget
Ruddr recalculates projected revenue using:
> max(Budgeted T\&M revenue, Past + future forecasted T\&M revenue)
***
### Month 1
* T\&M revenue to date: \$32,000
* Projected revenue: \$160,000
* Percent complete: 20%
* Revenue earned to date: \$24,000
* **Revenue recognized: \$24,000**
***
### Month 2
* T\&M revenue to date: \$80,000
* Projected revenue: \$160,000
* Percent complete: 50%
* Revenue earned to date: \$60,000
* Previously recognized: \$24,000
* **Revenue recognized: \$36,000**
***
### Month 3 (projected revenue increases)
* T\&M revenue to date: \$120,000
* Projected revenue: **\$180,000**
* Percent complete: **66.67%**
* Revenue earned to date: **\$80,000**
* Previously recognized: \$60,000
* **Revenue recognized: \$20,000**
***
### Month 4
* T\&M revenue to date: \$180,000
* Projected revenue: \$180,000
* Percent complete: 100%
* Revenue earned to date: \$120,000
* Previously recognized: \$80,000
* **Revenue recognized: \$40,000**
***
## Summary table: projected T and M revenue exceeds budget in Month 3
| Month | T\&M Revenue to Date | Future Forecasted T\&M Revenue | Projected Total T\&M Revenue | % Complete | Revenue Recognized Through Period | Current Month Rev Rec |
| - | - | - | - | - | - | - |
| 1 | \$32,000.00 | \$128,000.00 | \$160,000.00 | 20.00% | \$24,000.00 | \$24,000.00 |
| 2 | \$80,000.00 | \$80,000.00 | \$160,000.00 | 50.00% | \$60,000.00 | \$36,000.00 |
| 3 | \$120,000.00 | \$60,000.00 | \$180,000.00 | 66.67% | \$80,000.00 | \$20,000.00 |
| 4 | \$180,000.00 | \$0.00 | \$180,000.00 | 100.00% | \$120,000.00 | \$40,000.00 |
## Why revenue decreases in Month 3
If projected revenue had stayed at \$160,000:
* Percent complete = \$120,000 ÷ \$160,000 = 75%
* Revenue earned to date = \$90,000
But because projected revenue increased to \$180,000:
* Percent complete = \$120,000 ÷ \$180,000 = 66.67%
* Revenue earned to date = \$80,000
👉 This results in **less revenue recognized in Month 3**
***
## Key takeaway
When projected T\&M revenue increases:
* Percent complete **decreases**
* Revenue is spread across a **larger total value**
* Current period revenue may be **lower than expected**
***
## Important: projects with allocations
If your project uses **resource allocations**:
* Projected T\&M revenue can increase during the project
* This happens when:
* Future work has higher value than originally planned
When this occurs:
* Revenue recognition adjusts automatically
* Earlier expectations may shift based on the new projection
***
## Learn more
* [Fixed Fee Revenue Recognition](/projects/fixed-fee-revenue-recognition)
* [The Revenue Recognition Ledger](/projects/the-revenue-recognition-ledger)
# How is planned services revenue calculated in Ruddr?
Source: https://help.ruddr.io/faqs-and-troubleshooting/revenue-in-ruddr/how-is-planned-services-revenue-calculated-in-ruddr
Planned services revenue comes from allocations and bill rates on time and materials projects, and from billing schedules on fixed fee work.
On the project dashboard and in the Services Revenue Plan by Client and Project report, Ruddr presents a view of planned services revenue. There are multiple ways in which Ruddr calculates planned services revenue, all of which depend on a project's [billing type](/projects/billing-types).
#### Time and Materials
For projects with a billing type of Time and Materials, Ruddr evaluates [resource allocations](/resourcing/overview-of-resourcing). For each allocation on a given project, Ruddr multiplies the allocated hours for a given period times the bill rate of the project role associated with the allocation. As such, in order to be included in the calculation for planned services revenue, an allocation must specify a billable project role with a bill rate.
Essentially, the calculation looks something like this: *allocated project hours \* project role bill rate*
#### Fixed Fee or Fixed Monthly
In analyzing projects with a billing type of Fixed Fee or Fixed Monthly, Ruddr considers the project's fixed fee [revenue recognition method](/projects/fixed-fee-revenue-recognition).
***As Invoiced***
For projects that have [**As Invoiced**](/projects/fixed-fee-revenue-recognition#as-invoiced-method) revenue recognition methods, Ruddr evaluates future Fixed Fee Billing Schedule items. These scheduled items have dates specified. Any scheduled items that are expected to occur in the future are considered planned services revenue.
***Manual / Automated***
For projects that have [**Manual**](/projects/fixed-fee-revenue-recognition#manual-method) or [**Automated**](/projects/fixed-fee-revenue-recognition#automated-methods) revenue recognition methods, Ruddr evaluates future Revenue Recognition Ledger entries. These schedule revenue events have dates specified. Any scheduled revenue events listed in this ledger are considered planned services revenue.
# When is revenue recognized in Ruddr?
Source: https://help.ruddr.io/faqs-and-troubleshooting/revenue-in-ruddr/when-is-revenue-recognized-in-ruddr
Recognition timing varies by revenue type: time and materials revenue is recognized when time is saved, while fixed fee revenue follows invoice or ledger dates.
The method that Ruddr uses to recognize revenue on performance reports and dashboards varies depending on the type of revenue being recognized. The list below covers all types of revenue in Ruddr and when that revenue is recognized.
* **Time & Materials Services Revenue** - Hourly services revenue on a Time & Materials project is recognized immediately when the time entry is saved. So, if today is April 5th and a member creates a billable time entry for April 3rd, that revenue will immediately be recognized on April 3rd. The time entry does not need to be approved and an invoice does not need to be published for this revenue to be recognized.
* **Fixed Fee Services Revenue with "As Invoiced" Revenue Recognition** - When a fixed fee project uses the "As Invoiced" [revenue recognition method](/projects/fixed-fee-revenue-recognition), the revenue for a billing milestone is recognized as of the Issue Date of the invoice that contains the milestone.
* **Fixed Fee Services Revenue with "Manual" or "Automated" Revenue Recognition** - When a fixed fee project uses a [revenue recognition method](/projects/fixed-fee-revenue-recognition) that employs the [Revenue Recognition Ledger](/projects/the-revenue-recognition-ledger), the revenue is recognized as of the date of the revenue recognition ledger entry. An invoice does not need to be published for this revenue to be recognized.
* **Other Items to Bill Revenue Recognition** - Other Items to Bill are recognized as of the date in the item in the ledger. An invoice does not need to be published for this revenue to be recognized.
* **Billable Expense Item Revenue Recognition** - A billable expense item on an expense report is recognized immediately when it is saved. So, if today is April 5th and a member creates a billable expense item for April 3rd, that revenue will immediately be recognized on April 3rd. The expense item does not need to be approved and an invoice does not need to be published for this revenue to be recognized.
* **Billable Project Expense Revenue Recognition** - A billable project expense is recognized as of the date in the project expenses ledger. An invoice does not need to be published for this revenue to be recognized.
# How do I fix a "Failed to refresh tokens" error as indicated in the sync log from the BambooHR integration?
Source: https://help.ruddr.io/faqs-and-troubleshooting/ruddr-and-bamboohr/how-do-i-fix-a-failed-to-refresh-tokens-error-as-indicated-in-the-sync-log-from-
Fix the Failed to refresh tokens sync error by reauthorizing the BambooHR connection from Ruddr integration settings and allowing access via OAuth.
If you receive an error log from Ruddr, indicating that the BambooHR sync failed, you may find that BambooHR produced a "Failed to refresh tokens" error (Figure 1).
Figure 1 - Example of the **Failed to Refresh Tokens** Error from BambooHR
If you encounter this error, you will need to reauthorize the connection between Ruddr and BambooHR. To do this, take the following steps:
**Step 1: Log into BambooHR**
Being logged into BambooHR (having an active browser session) prior to beginning this reauthorization process ensures a seamless experience with setting up the integration. Also, you will want to ensure that you are setting this integration up using a BambooHR user account with full access to all BambooHR users and time off policies.
**Step 2: Reauthorize integration in Ruddr**
In Ruddr, under Settings / Integrations, find the BambooHR integration. Once you are in the settings for the BambooHR integration, select the "Reauthorize Connection" option. (Figure 2)
Figure 2 - Reauthorize Connection in Ruddr
**Step 3: Enter your company domain into the pop up**
You will be prompted to enter your companies BambooHR domain information. (Figure 3) Once added, click Install to be redirected to BambooHR.
Figure 3 - Enter BambooHR domain information
**Step 4: Allow access in BambooHR**
Once you enter your BambooHR domain, you will be directed to BambooHR to allow Ruddr access the desired information. (Figure 4) You can customize in this screen the information you would like sent to Ruddr. Once complete, you can select Allow Access and now you are set up with OAuth.
Figure 4 - Allow Ruddr to Access BambooHR data
# I reauthorized my Bamboo API and now it's not working. How do I re-establish the integration between Ruddr and BambooHR?
Source: https://help.ruddr.io/faqs-and-troubleshooting/ruddr-and-bamboohr/i-reauthorized-my-bamboo-api-and-now-its-not-working-how-do-i-re-establish-the-i
After reauthorizing, the integration must switch from API key authentication to OAuth; a full-access BambooHR admin should reconnect from Ruddr settings.
There are times when a Workspace will need to reauthorize their BambooHR integration. Once you reauthorize in Ruddr, you will need to change your integration to authenticate to BambooHR via Open Authentication (OAuth) as opposed to via an API key from BambooHR.
Midway through 2025, BambooHR introduced Open Authentication as a preferred method for external applications to connect to, and authenticate to, BambooHR. This was a departure from the prior method of authentication, which required BambooHR users to generate, and provide, an API key to those external applications.
Applications that integrate with BambooHR by using an API key were permitted to continue using that process, provided that future connections leveraged OAuth. However, once a change in authentication was initiated, such as by reauthorizing the integration in Ruddr, you needed to then begin authenticating to BambooHR via OAuth.
Important note: The change from API to OAuth needs to be made by an admin with full access in BambooHR. If an admin without full access makes the change, you may risk only partial data being updated.
**Step 1: Log into BambooHR**
Being logged into BambooHR (having an active browser session) prior to beginning this reauthorization process ensures a seamless experience with setting up the integration. Also, you will want to ensure that you are setting this integration up using a BambooHR user account with full access to all BambooHR users and time off policies.
**Step 2: Reauthorize integration in Ruddr**
In Ruddr, under Settings / Integrations, find the BambooHR integration. Once you are in the settings for the BambooHR integration, select the "Reauthorize Connection" option. (Figure 1)
Figure 1 - Reauthorize Connection in Ruddr
**Step 3: Enter your company domain into the pop up**
You will be prompted to enter your companies BambooHR domain information. (Figure 2) Once added, click Install to be redirected to BambooHR.
Figure 2 - Enter BambooHR domain information
**Step 4: Allow access in BambooHR**
Once you enter your BambooHR domain, you will be directed to BambooHR to allow Ruddr access the desired information. (Figure 3) You can customize in this screen the information you would like sent to Ruddr. Once complete, you can select Allow Access and now you are set up with OAuth.
Figure 3 - Allow Ruddr to Access BambooHR data
# What fields sync as part of the BambooHR integration?
Source: https://help.ruddr.io/faqs-and-troubleshooting/ruddr-and-bamboohr/what-fields-sync-as-part-of-the-bamboohr-integration
Details the employee and time off fields that sync one way from BambooHR into Ruddr, including matching rules and per-field update controls.
This integration syncs data from BambooHR into Ruddr. All data flows **one way (BambooHR → Ruddr)**.
Most fields are controlled by integration settings, which determine whether they are updated during sync.
* [Members (Employees)](#members-employees)
* [Time Off](#time-off)
## Members (Employees)
### Syncing employees from BambooHR
When employees are synced, Ruddr imports and updates the following:
**Basic details**
* Internal ID (BambooHR employee ID)
* Email address (set on creation only)
* Name (constructed from first, preferred, middle, and last name based on settings)
**Employment details**
* Job title (matched or created if missing)
* Active status (based on BambooHR status)
**Dates**
* Start date (hire date)
* End date (termination date, if applicable)
**Manager**
* Manager is matched using the supervisor’s email address
### Field update controls
Each of the following can be enabled or disabled in [integration settings](/integrations/bamboohr-integration-setup):
* Update internal ID
* Update name (including preferred and middle name options)
* Update manager
* Update job title
* Update member status
* Update active start and end dates
### Member matching
Members are matched in the following order:
1. By email address (if automatic mapping is enabled)
2. By explicit, manual mapping in the [integration settings](/integrations/bamboohr-integration-setup)
***
## Time Off
### Syncing time off from BambooHR
Time off requests are imported and converted into Ruddr time off entries.
**Core fields**
* Member (from integration mappings)
* Time off type (matched by name or created automatically if enabled)
* Duration (converted to minutes)
* Hours are converted directly
* Days are converted using the member’s capacity
* Notes (from the employee’s request notes) (this is only included if the integration settings specify to do so)
### Status handling
Only the following request statuses are processed:
* Approved
* Superseded
* Canceled
**Sync behavior**
* Approved requests create or update entries in Ruddr
* Canceled or superseded requests are removed
### Field update controls
The following integration setting controls whether notes are synced:
* Update time off notes
# Why are expense receipts not syncing from Expensify to Ruddr?
Source: https://help.ruddr.io/faqs-and-troubleshooting/ruddr-and-expensify/why-are-expense-receipts-not-syncing-from-expensify-to-ruddr
Receipts sync from Expensify only when the Public Receipt Visibility setting is enabled under the Classic interface workspace rules.
In your Expensify workspace, there is a setting, particular to expense receipts, that is labeled **Public Receipt Visibility**. This setting can be found in Settings > Workspaces > Rules > Expenses and is shown below:
You will want to ensure that this setting is Enabled. It is needed to permit access for downloading and syncing receipts with expenses.
NOTE: this setting appears to apply only to those Expensify workspaces leveraging the "Classic" interface and is not available in the "New Expensify" interface. For those of you leveraging the "New Expensify" interface, you will need to revert back to the "Classic" interface, enable the setting, and then you can go back to the "New Expensify" interface.
# What fields sync as part of the HubSpot integration?
Source: https://help.ruddr.io/faqs-and-troubleshooting/ruddr-and-hubspot/what-fields-sync-as-part-of-the-hubspot-integration
Details the company, contact, deal, pipeline, stage, and activity fields that sync one way from HubSpot into Ruddr, plus member matching rules.
This integration syncs data from HubSpot into Ruddr. All data flows **one way (HubSpot → Ruddr)**.
* [Companies](#companies)
* [Contacts](#contacts)
* [Deals (Opportunities)](#deals-opportunities)
* [Pipelines](#pipelines)
* [Stages](#stages)
* [Activities](#activities)
## Companies
### Syncing companies from HubSpot
When companies are synced, Ruddr imports the following:
**Basic details**
* Company name and description
* Phone number (limited to 20 characters)
* Website URL
**Address**
* Billing address is built from street, city, state, postal code, and country
**Ownership**
* Company owner is matched to a Ruddr member by email
* If no match is found, a new member is created automatically
**Additional fields**
* Industry (matched or created if missing)
* Company type (matched or created if missing)
* Annual revenue
* Number of employees
* Year founded
* LinkedIn and Twitter profiles
* Currency (falls back to workspace currency if not set)
***
## Contacts
### Syncing contacts from HubSpot
**Basic details**
* Full name (combined first and last name)
* First name and last name stored separately
* Email address
**Contact information**
* Mobile phone
* Office phone
* Fax
**Additional fields**
* Job title
* Description
**Ownership**
* Contact owner is matched to a Ruddr member
* If no match is found, a new member is created automatically
***
## Deals (Opportunities)
### Syncing deals from HubSpot
**Basic details**
* Deal name and description
* Amount (converted to a numeric value)
* Close date
* Next steps
**Sales data**
* Probability (converted from decimal to percentage)
* Priority
* Stage (based on pipeline and stage combination)
* Opportunity type (matched or created if missing)
**Ownership and relationships**
* Owner is matched to a Ruddr member
* If no match is found, a new member is created automatically
* Associated company is linked
**Dates and currency**
* Open date (created date)
* Currency (Ruddr sets the currency according to the deal's currency. If it can't find one, it checks the company's currency and, if needed, uses the default workspace currency, falling back to USD.)
***
## Pipelines
### Syncing pipelines
* Pipeline name is imported
Only pipelines selected in your [integration settings](/integrations/hubspot-integration-setup) are synced into Ruddr.
***
## Stages
### Syncing stages
* Stage name and description
* Probability (converted from decimal to percentage)
* Active status
**Stage status mapping**
* Closed with 100% probability → Won
* Closed with 0% probability → Lost
* All others → Open
***
## Activities
### Syncing activities from HubSpot
Note that Ruddr only syncs activities according to the [integration settings](/integrations/hubspot-integration-setup), as configured by a Workspace Admin.
Activities are imported and categorized into the following types:
* Calls
* Meetings
* Notes
* Tasks
* Emails
**Common fields**
* Activity type (matched or created automatically)
* Created by and modified by (matched to Ruddr members)
* Activity date (date only)
* Associated company
* Associated opportunity
***
### Activity details by type
**Calls**
* Content (HTML removed)
* Subject
* Direction
* Duration (in seconds)
**Meetings**
* Content (HTML removed)
* Subject
* Duration (calculated from start and end time)
**Notes**
* Content (HTML removed)
**Tasks**
* Content (HTML removed)
* Subject
**Emails**
* Content (HTML removed)
* Subject
**Subject handling**
* Limited to 255 characters
* If missing, falls back to:
* First 100 characters of content, or
* “No subject provided”
***
## Member Mapping
### How users are matched and created
* Members are matched by email address
* If no match is found:
* A new member is created automatically
* Name is pulled from HubSpot owner data
* Assigned the workspace default role
* Set as non-billable
* Not invited to the workspace
# Does Ruddr support QuickBooks Online Sub-Customers?
Source: https://help.ruddr.io/faqs-and-troubleshooting/ruddr-and-quickbooks-online/does-ruddr-support-quickbooks-online-sub-customers
Ruddr does not support QBO sub-customers natively, but sub-customers can be converted to QBO Projects, which the integration fully supports.
Ruddr does not have native support for QuickBooks Online (QBO) sub-customers. But, QBO provides a simple method for converting sub-customers to QBO Projects. Ruddr's integration with QBO has native support for QBO projects and it is recommended that Ruddr customers migrate to QBO projects.
In order to leverage QBO projects, you must be using one of the following editions of QuickBooks Online:
* QuickBooks Online Plus
* QuickBooks Online Advanced
* QuickBooks Online Accountant
Lower versions of QBO, including Simple Start and Essentials, do not support projects.
### Converting from QBO Sub-Customers to QBO Projects
To convert QBO sub-customers into QBO projects, follow these steps:
1. Turn on the **Projects** feature within QBO.
2. Go to Projects in QBO and check each sub-customer's status. If the status is **Not started**, select **In progress** from the Status dropdown.
3. Edit the sub-customer's profile and make sure the **Is a sub-customer** option is checked.
4. Ensure that the correct parent customer is selected.
5. Make sure the sub-customer is connected to only one parent customer. It can't be a sub-customer of a sub-customer.
6. You can either create a new project from a sub-customer or merge the sub-customer with an existing project. When you create a new project from a sub-customer, your sub-customer's existing transactions won't transfer over. But, when you merge a sub-customer with an existing project, your existing sub-customer transactions migrate to that project.
For further information about converting QBO sub-customers to QBO projects, see the following help article from Intuit:
[https://quickbooks.intuit.com/learn-support/en-us/help-article/accounting-bookkeeping/change-sub-customers-projects/L0GzJsoue\_US\_en\_US](https://quickbooks.intuit.com/learn-support/en-us/help-article/accounting-bookkeeping/change-sub-customers-projects/L0GzJsoue_US_en_US)
# How do Custom Transaction Numbers work in QuickBooks Online?
Source: https://help.ruddr.io/faqs-and-troubleshooting/ruddr-and-quickbooks-online/how-do-custom-transaction-numbers-work-in-quickbooks-online
Explains how the QuickBooks Online custom transaction numbers setting controls whether QBO or Ruddr assigns invoice numbers, and how to fix numbering gaps.
The "Custom Transaction Numbers" setting in QuickBooks Online allows you to set your own invoice numbering format. Turning custom transaction numbers on adds an Invoice Number field to the invoice and you can use any number or letter format that you want.
Turn adjust the custom transaction numbers setting in QuickBooks Online, do the following:
1. Go to **Settings** ⚙ and select **Account and settings**.
2. Select **Sales**.
3. In **Sales form content**, select **Edit** ✎.
4. Turn **Custom transaction numbers** on or off.
5. Select **Save**, then select **Done**.
The sales form content section will look as follows:
Figure 1 - Custom Transaction Numbers Setting in QuickBooks Online
When custom transaction numbers are off, QuickBooks Online is in control of invoice numbering. It doesn't matter what invoice number exists on the draft invoice that gets published from Ruddr because QuickBooks Online will override it with the number it determines is next. If some invoices get created manually in QuickBooks Online, it is usually a good idea to keep custom transaction numbers off in QuickBooks so that you don't attempt to create duplicate invoice numbers.
If custom transaction numbers are on, QuickBooks Online will use whatever invoice number Ruddr provides. But, that invoice number must not already exist in QuickBooks Online. If that invoice number already exists, Ruddr will show a "Duplicate invoice number" error message, as shown below.
Figure 2 - Duplicate Invoice Number Error Message
When custom transaction numbers are off and an invoice is deleted, QuickBooks Online will not reuse the deleted invoice number. So, if invoice #1005 is deleted, QuickBooks Online will still use invoice #1006 when the next invoice is published from Ruddr. This will leave a gap in the sequence of invoice numbers. To resolve this, you must turn custom transaction numbers on, set the draft invoice to #1005, publish the draft from Ruddr to QuickBooks Online, and then turn custom transaction numbers back off. At that point, the gap at #1005 has been resolved and QuickBooks Online will use #1006 for the next invoice that is published from Ruddr.
# How do I account for a retainer / prepaid services with Ruddr and QuickBooks Online?
Source: https://help.ruddr.io/faqs-and-troubleshooting/ruddr-and-quickbooks-online/how-do-i-account-for-a-retainer-prepaid-services-with-ruddr-and-quickbooks-onlin
Set up an Unearned Revenue account and Retainer items in QuickBooks Online and Ruddr, then offset invoices with a retainer line to draw down prepayments.
There are times when a customer may pay your company in advance for services that you will render at a later point in time. This is sometimes referred to as a retainer because the amount paid will "retain" your services and ensure that those services are rendered within an acceptable timeframe. A common question we get is how those types of arrangements should be handled in Ruddr and QuickBooks Online (for customers that leverage QuickBooks Online for accounting).
In order to receive retainer payments, you first need to do some basic setup in QuickBooks Online and Ruddr. Then, for each retainer you have just a few steps to do, as further outlined below.
**Step 1: Create an Unearned Revenue account in QuickBooks**
Within QuickBooks, click on the **Settings** wheel and then select the **Chart of accounts** menu option. Click the **New** button to bring up the **Account** window. From here, set the Account Type to "Other Current Liabilities" and the Detail Type to "Deferred Revenue". For the Name, type in "Unearned Revenue" and optionally provide a description of this new account as shown below.
With this step complete, we now have a liability account called "Unearned Revenue" that will show the total client prepaid amounts on the company's Balance Sheet.
\*\*\
Step 2: Create a Product/Service Item called "Retainer"\*\*
Within QuickBooks, click on the **Settings** wheel and then select the **Product and services** menu option. Click the **New** button and choose **Service** as the type. Next, type in "Retainer" as the Name and in the **Income account** dropdown, select the **Unearned Revenue** account that you created in step one above.
**Step 3: Create a Sales Receipt to Record the Retainer Payment**
Within QuickBooks, click **+New** button and choose the **Sales receipt** option. For the Product/Service column on the sales receipt, select the Retainer item that you created in the previous set. Then, provide your description and type in the amount of the prepayment in the Rate column. Once this information is entered, just click the **Save and close** button.
**Step 4: Add a "Retainer" Invoice Item in Ruddr**
Within Ruddr, go to the **Custom Data** area within **Workspace Settings**. Select the Invoice Items custom data option and then click the **+ Add Invoice Item** button at the bottom of the list. Add an invoice item named "Retainer" and set its type to Income.
**Step 5: Update the QuickBooks Integration in Ruddr to Map the new Retainer Invoice Item**
Within the Integrations area of Ruddr, click on the **Settings** of the QuickBooks integration. Then click the pencil icon on the Invoice Items row to edit the invoice item mappings. The new Retainer invoice item should be mapped to the QuickBooks Product/Service item called Retainer that you created in step two above.
**
**
**Step 6: Create your Invoice in Ruddr and Publish it to QuickBooks**
Once you have a Ruddr project set up with the appropriate billing type, you are ready to create an invoice in Ruddr and publish that invoice to QuickBooks. We won't cover invoice creation in this article but you can see a separate [help article](/billing/ready-to-bill) on that topic.\
When your invoice is created, you need to add an ad-hoc line to the bottom of the invoice that uses the Retainer invoice item and offsets the entire amount of the invoice (assuming that you want to pay for the entire invoice from the retainer). This will result in a zero dollar invoice as shown below. Just click on the **Publish** button to push this invoice to QuickBooks.
**Step 7: Review the Income Statement and Balance Sheet in QuickBooks**
Now that the invoice is created, you can verify that the \$7,350 (from our example above) shows as revenue on the Income Statement. Also, you can verify that the Unearned Revenue liability account is reduced by \$7,350 and is now down to \$12,650. You have successfully created a retainer and can pay invoice amounts using the retainer.
# How do I write off part or all of an invoice with QuickBooks Online?
Source: https://help.ruddr.io/faqs-and-troubleshooting/ruddr-and-quickbooks-online/how-do-i-write-off-part-or-all-of-an-invoice-with-quickbooks-online
Write off uncollectible amounts by creating a Bad Debt account and product in QuickBooks Online, issuing a credit memo, and verifying the applied payment.
If all or part of an invoice appears to be uncollectible, you can "write off" (or "charge off") that amount such that the invoice no longer shows up on your Accounts Receivable aging report. The majority of this process is handled within QuickBooks Online and is described below.
**Step 1: Determine whether QuickBooks Online is using an Accrual or Cash basis of accounting**
With cash-based accounting, your company recognizes income when payments are received from clients. With accrual accounting, income is recorded when it is earned (typically when you invoice the client). With a cash-based business, you don't necessarily need to write off the uncollectible amount because you haven't recognized that revenue yet. You could simply reduce the amount of the invoice or delete the invoice altogether if the entire invoice will not be paid. With an accrual-based business, you must write off the uncollectible amount to a Bad Debt account to offset the previously recognized revenue.
To determine if QuickBooks Online is in Accrual or Cash mode, just click on the **Settings** wheel, then select **Accounts and Settings**, and finally choose the **Advanced** menu option. Within the Accounting section of the screen, identify the accounting method that is in use. If you are using a Cash basis, you may choose to just reduce the amount of the invoice rather than proceed with the steps below.
**Step 2: Create a Bad Debt account in QuickBooks Online**
When you write off all or part of an invoice, you need to capture the amount as a charge to a Bad Debt account. This is needed in order for the amount to show up as an expense on the Income Statement. With accrual accounting, the amount has likely previously been recognized and should now be offset by a Bad Debt expense.
It is quite likely that your company's QuickBooks Online instance already has a Bad Debt account. To determine this, just click on the **Settings** wheel and then select **Chart of accounts**. From here, just type in "Bad" into the **Filter by name** textbox to see if the Bad Debt account already exists. If it does, you can skip to the next step.
If the Bad Debt account does not exist, just click the **New** button to bring up the Account window. Select "Expenses" as the Account Type and "Bad Debts" as the Detail Type. Then, name the new account "Bad Debt" as shown below and click the **Save and Close** button.
**Step 3: Create a Product/Service Item in QuickBooks for Bad Debt**
Within QuickBooks, click on the **Settings** wheel and then select the **Product and services** menu option. Click the **New** button and choose **Non-inventory** as the type. Next, type in "Bad Debt" for the Name and in the **Income account** drop-down select the Bad Debt account you created in the previous step.
**Step 4: Create a Credit Memo**
The next step is to create a Credit Memo for the client associated with the invoice that you will be writing off. To create a credit memo, click the **+ New** button and select **Credit memo**. Select the QuickBooks customer at the top-left of the Credit Memo form and then select Bad Debt in the Product/Service column. Then simply type in the amount you wish to write off and click the **Save and close** button.
**Step 5: Validate the Payment that QuickBooks Automatically Created**
When the credit memo is saved, QuickBooks will automatically apply that memo to an outstanding invoice for that customer as a payment. If you only have one outstanding invoice, then the credit will be appropriately applied to that invoice. But, if you have multiple outstanding invoices for that customer, it is possible that QuickBooks will apply the credit memo to the wrong invoice.
To verify that the credit memo was used to pay the correct invoice, click on **Invoicing** main menu option and then select **All Sales**. From this list, click on the zero dollar payment that will show up immediately next to the Credit Memo in the list. Note that this payment will have a note that says "Created by QB Online to link credits to charges."
This screen will show you how the credit was applied to the invoices for that Client. If the credit was not applied correctly, you can simply adjust the application of the credit within the **Outstanding Transactions** section of the screen and then click **Save and close**.
If the invoice to which the credit was applied is synched with Ruddr, QBO will send the credit to Ruddr as a payment. The payment will show a \$0.00 "amount received", but will also update the outstanding balance on the invoice to reflect the updated balance after the credit has been applied.
**Step 6: Confirm the Bad Debt Amount on the Income Statement**
To ensure that the invoice amount was properly written off to Bad Debt, run an Income Statement for the period that includes the write off. You should see a Bad Debt amount within the Expenses section of the Income Statement that matches the amount of the Credit Memo that you created.
# What fields sync as part of the QuickBooks Online integration?
Source: https://help.ruddr.io/faqs-and-troubleshooting/ruddr-and-quickbooks-online/what-fields-sync-as-part-of-the-quickbooks-online-integration
Covers how invoices, payments, credit notes, and reimbursable expenses sync between Ruddr and QuickBooks Online, including reload behavior.
This guide explains how data syncs between Ruddr and QuickBooks Online, including what gets sent to QBO, what comes back, and how updates are handled.
* [Invoices](#invoices)
* [Payments](#payments)
* [Credit Notes](#credit-notes)
* [Reimbursable Expenses](#expenses-vendor-bills)
## Invoices
### Saving invoices to QBO
When you export an invoice from Ruddr, the following happens:
**Basic details**
* Invoice number is sent if custom transaction numbers are enabled in QBO
* Issue date and due date are synced
* Currency is preserved
* Notes are included (up to 1,000 characters)
* Billing address is transferred and formatted by QBO
* Client is matched to an existing QBO customer. If not QBO customer is found, one is created
**Email fields**
* To and CC email addresses are combined into comma-separated lists
* Length limits apply (100 chars for To, 200 chars for CC)
**Tax and discounts**
* Tax is only included if QBO sales tax is enabled
* Tax codes are applied based on your integration settings
* Discounts are included only if configured with a default discount account
**Exchange rates**
* Used only for multicurrency invoices
* Priority order for exchange rates:
1. QBO rate on invoice date
2. QBO current rate
3. Ruddr workspace rate
**Line items**
* Description, quantity, rate, and amount are synced
* Ruddr Invoice Items are matched to QBO Product / Services by name or defaulted from settings
* Taxable status is applied per line
### Invoice Numbers
Once the invoice is created in QBO, Ruddr is updated with:
* Final invoice number
* Total amount
* Tax amount and rate
* Transaction number (parsed from QBO document number)
### Reloading invoices from QBO
If changes are made in QBO, you can reload the invoice into Ruddr.
This updates:
* Invoice number, dates, and notes
* Billing address
* Total, tax, and discount amounts
**Line items**
* Fully re-synced from QBO
* Deleted lines are removed in Ruddr
* New lines are added automatically
**Payments**
* Any [payments](#payments) created in QBO against the invoice are also synced into Ruddr
***
## Credit Notes
### Saving credit notes to QBO
Credit notes behave similarly to invoices:
* Number, dates, currency, and client are synced
* Notes and email fields follow the same rules as invoices
* Tax is included only if enabled in QBO
**Line items**
* Fully re-synced from QBO
* Deleted lines are removed in Ruddr
* New lines are added automatically
A QBO credit memo is created and a payment is applied to respective invoice(s)
### Credit Note Numbers
As a credit note is created in QBO, Ruddr receives:
* Credit note number
* Total and tax amounts
* Tax rate
* Transaction number
### Reloading credit notes
Reloading updates:
* Header details (number, date, notes, billing address)
* Totals and tax
**Line items**
* Synced exactly from QBO
* Removed lines are deleted
***
## Payments
### Saving payments to QBO
When a payment is saved to QBO:
* Amount is reduced by any applied credit notes
* Payment date, reference number, and notes are synced
* Client and currency follow invoice rules
* Deposit account comes from integration settings
* Payment method is matched to QBO
**Linked invoices**
* Payments are applied to invoices already synced to QBO
**Linked credit notes**
* Payments are also applied to synced credit notes
### Reloading payments
Reloading an invoice will ensure the following fields on a payment are updated:
* Payment amount (adjusted to include credit notes)
* Payment date, reference number, and notes
* Payment method
**Reconciliation behavior**
* Invoice links are matched automatically
* Credit notes are matched or created if missing
* Any deleted QBO items are removed from Ruddr
### Payments created directly in QBO
If a payment is created in QBO:
* It is imported into Ruddr automatically
* Client is resolved from the QBO customer
* Amount includes any credit note applications
* Date, reference number, and notes are synced
***
## Expenses (Vendor Bills)
### Saving reimbursable expenses to QBO
Only eligible expenses are saved to QBO:
* Approved
* Reimbursable
* Not yet reimbursed
* Within the configured sync date range
**Bill details**
* Member is mapped to a QBO vendor (or created)
* Bill date is based on the earliest expense
**Line items**
* Each expense becomes a separate line
* Amount is rounded to two decimals
* Description includes client, project, vendor, and notes
* Expense category maps to a QBO account (or default)
* Project is included if mapped
### Reimbursement status
Ruddr checks QBO to determine if expenses are reimbursed:
* Marked as reimbursed only when the bill is fully paid
* No financial details are imported—only status
# Why am I getting a "one foreign currency per transaction" error when saving an invoice to QuickBooks Online?
Source: https://help.ruddr.io/faqs-and-troubleshooting/ruddr-and-quickbooks-online/why-am-i-getting-a-one-foreign-currency-per-transaction-error-when-saving-an-inv
This QBO error occurs when an invoice currency differs from the customer currency; create separate clients and customers per currency and map them.
The [Multicurrency feature](/multicurrency/multicurrency-overview) in Ruddr allows for a currency to be applied at a project level. This can result in a Ruddr client having multiple projects, each with different currency. In this case, Ruddr also allows for project invoicing for each of these currencies, resulting in a single client having invoices that are in different currencies.
For example, the Acme Consulting client may have locations in the US and in Canada. If you have projects for that client in both locations, you may set up US projects to be in USD currency and projects for the Canadian locations may be set to CAD. Invoices can be created for the USD projects in USD currency and for the Canada projects, invoices can be created in CAD.
However, if your Acme Consulting customer in QBO is set to USD, you would be unable to save CAD invoices to this customer. If you attempted to save the CAD invoices to that customer, you would receive the following message:
* *Business Validation Error: You can only use one foreign currency per transaction.*
As such, you will need to ensure that you have two customers created in QBO. You will need a customer that is set to USD and a second one set to CAD. You will need to replicate that setup in Ruddr, having a client in USD, where all of its projects are in USD, and a second client in CAD, with all of its projects in CAD.
The two Ruddr clients would then need to be appropriately mapped to the two QBO customers in the [QBO Integration Settings](/integrations/quickbooks-online-integration-setup) to ensure that all USD invoices were saved to the USD QBO customer, and likewise for the CAD invoices.
# What fields sync as part of the Salesforce integration?
Source: https://help.ruddr.io/faqs-and-troubleshooting/ruddr-and-salesforce/what-fields-sync-as-part-of-the-salesforce-integration
Details the account, contact, opportunity, pipeline, stage, and activity fields that sync one way from Salesforce into Ruddr, plus member matching rules.
This integration syncs data from Salesforce into Ruddr. All data flows **one way (Salesforce → Ruddr)**.
* [Companies](#companies-accounts)
* [Contacts](#contacts)
* [Opportunities](#opportunities)
* [Pipelines](#pipelines)
* [Stages](#stages)
* [Activities](#activities-tasks)
## Companies (Accounts)
### Syncing companies from Salesforce
When accounts are synced, Ruddr imports the following:
**Basic details**
* Company name and description
* Phone number (limited to 20 characters)
* Website URL
**Addresses**
* Billing address (street, city, state, postal code, country)
* Shipping address (if available)
**Ownership**
* Owner is matched to a Ruddr member by email
* If no match is found, a new member is created automatically
**Additional fields**
* Industry (matched or created if missing)
* Company type (matched or created if missing)
* Annual revenue
* Number of employees
* Year founded
* Ticker symbol
* SIC code
* Ownership classification (public, private, subsidiary, or other)
**Status**
* Active status is derived from Salesforce (deleted accounts are marked inactive)
***
## Contacts
### Syncing contacts from Salesforce
**Basic details**
* Full name (first + last name)
* First name and last name stored separately
* Email address
**Contact information**
* Mobile phone
* Office phone
* Fax
**Additional fields**
* Job title
* Description
**Ownership and relationships**
* Owner is matched to a Ruddr member
* Associated company is linked
***
## Opportunities
### Syncing opportunities from Salesforce
**Basic details**
* Opportunity name and description
* Amount
* Close date
* Next steps
**Sales data**
* Probability
* Stage (matched by name and pipeline)
* Lead source (matched or created if missing)
* Opportunity type (matched or created if missing)
**Ownership and relationships**
* Owner is matched to a Ruddr member
* Associated company is required (opportunity is skipped if no match is found)
**Dates and currency**
* Open date (created date)
* Currency (Ruddr sets the currency based on the opportunity's currency. If it doesn't find one, it uses the workspace currency, and if that's not available, it defaults to USD.)
**Pipeline**
* Determined based on Salesforce record type
***
## Pipelines
### Syncing pipelines
Pipelines are derived from Salesforce business processes tied to record types.
**Fields synced**
* Pipeline name
* Pipeline description
Only pipelines selected in your [integration settings](/integrations/salesforce-integration-setup) are synced into Ruddr. If no specific configuration is provided, a default pipeline is created.
***
## Stages
### Syncing stages
**Fields synced**
* Stage name and description
* Probability
* Active status
**Stage status mapping**
* Won → marked as “Won”
* Closed (but not won) → marked as “Lost”
* All others → marked as “Open”
Stages are filtered per pipeline based on Salesforce configuration.
***
## Activities (Tasks)
### Syncing activities from Salesforce
Note that Ruddr only syncs activities according to the [integration settings](/integrations/salesforce-integration-setup), as configured by a Workspace Admin.
**Common fields**
* Subject (if the Salesforce subject simply repeats the activity type name, Ruddr uses the description instead, falling back to “Task Activity”; otherwise the subject is used, falling back to “No Subject”)
* Content (description)
* Activity date (uses activity date or created date)
* Created by and owner (matched to Ruddr members)
* Associated company
* Associated opportunity
* Associated contact
***
### Activity type mapping
Activity type is determined using a multi-step approach:
1. Match by subject
2. Match by Salesforce subtype
3. Match by predefined type
4. Default to “Other” if no match is found
***
### Sync behavior
* Activities missing in Salesforce are removed from Ruddr during full sync
* Email-type activities are parsed to extract structured content
***
## Member Mapping
### How users are matched and created
* Members are matched by email address
* If no match is found:
* A new member is created automatically
* Name is pulled from Salesforce user data
* Active status is preserved from Salesforce
* Assigned the workspace default role
* Set as non-billable
* Not invited to the workspace
# How do I account for a retainer / prepaid services with Ruddr and Xero?
Source: https://help.ruddr.io/faqs-and-troubleshooting/ruddr-and-xero/how-do-i-account-for-a-retainer-prepaid-services-with-ruddr-and-xero
Set up an Unearned Revenue account and Retainer item in Xero and Ruddr, then offset invoices with a retainer line to draw down client prepayments.
There are times when a customer may pay your company in advance for services that you will render at a later point in time. This is sometimes referred to as a retainer because the amount paid will "retain" your services and ensure that those services are rendered within an acceptable timeframe. A common question we get is how those types of arrangements should be handled in Ruddr and Xero (for customers that leverage Xero for accounting).
In order to receive retainer payments, you first need to do some basic setup in Xero and Ruddr. Then, for each retainer you have just a few steps to do, as further outlined below.
**Step 1: Create an Unearned Revenue account in Xero**
Within Xero, click on the **Accounting** main menu option and then select the **Chart of accounts** secondary menu option. Click the **Add Account** button to bring up the **Add New Account** window. From here, set the Account Type to "Current Liability" and type in a General Ledger code per your existing standard. For the Name, type in "Unearned Revenue" and optionally provide a description of this new account as shown below. Click the **Save** button.
With this step complete, we now have a liability account called "Unearned Revenue" that will show the total client prepaid amounts on the company's Balance Sheet.
\*\*\
Step 2: Create a Product Service Item called "Retainer"\*\*
Within Xero, click on the **Business** menu option and then select the **Product and services** secondary menu option. Click the **New item** button to bring up the **New Item** window. On this window, type in the Code per your standard and then type in "Retainer" for the name. Only check the **Sell** checkbox, leaving the other two checkboxes unchecked. For the **Sales account** dropdown, select the liability account that you created in Step 1 above and click the **Save** button.
**Step 3: Record the Receipt of Money from a Client**
Within Xero, click the **Accounting** main menu option and then the **Bank accounts** secondary menu option. Then click the **Manage Account** dropdown for the bank account that will hold the funds and select the **Receive Money** menu option.
In the **Received as** dropdown, select "Prepayment". Then key in the customer name in the **From** textbox. Once you start typing the customer name, Xero will provide you with a list of matching customers and you can select the appropriate one. Type in a description of the funds being received, an amount (in the Unit Price column), and select the Unearned Revenue account that you created in Step 1 above. Click Save to record the prepayment. At this point, you should see the prepaid amount on the company Balance Sheet in the Unearned Revenue liability account.
**Step 4: Add a "Retainer" Invoice Item in Ruddr**
Within Ruddr, go to the **Custom Data** area within **Workspace Settings**. Select the Invoice Items custom data option and then click the **+ Add Invoice Item** button at the bottom of the list. Add an invoice item named "Retainer" and set its type to Income.
**Step 5: Update the Xero Integration in Ruddr to Map the new Retainer Invoice Item**
Within the Integrations area of Ruddr, click on the **Settings** of the Xero integration. Then click the pencil icon on the Invoice Items row to edit the invoice item mappings. The new Retainer invoice item should be mapped to the Xero Product/Service item called Retainer that you created in Step 2 above.
**Step 6: Create your Invoice in Ruddr and Publish it to Xero**
Once you have a Ruddr project set up with the appropriate billing type, you are ready to create an invoice in Ruddr and publish that invoice to Xero. We won't cover invoice creation in this article but you can see a separate [help article](/billing/ready-to-bill) on that topic.
When your invoice is created, you need to add an ad-hoc line to the bottom of the invoice that uses the Retainer invoice item and offsets the entire amount of the invoice (assuming that you want to pay for the entire invoice from the retainer). This will result in a zero dollar invoice as shown below. Just click on the **Publish** button to push this invoice to Xero.
**Step 7: Review the Income Statement and Balance Sheet in Xero**
Now that the invoice is created, you can verify that the services fees show as revenue on the Income Statement in Xero. Also, you can verify that the Unearned Revenue liability account on the Balance Sheet has been reduced by services fees.
# How do I resolve the "Account code or ID must be specified" error message?
Source: https://help.ruddr.io/faqs-and-troubleshooting/ruddr-and-xero/how-do-i-resolve-the-account-code-or-id-must-be-specified-error-message
This Xero publishing error means a Ruddr Invoice Item is not mapped to a Sell-type Product and Service in Xero; fix the mapping or item type to resolve it.
When publishing an invoice from Ruddr to Xero via the [Xero integration for Ruddr](/integrations/xero-integration-overview), you may receive an error message that says "Account code or ID must be specified". This happens when an invoice line item uses a Ruddr Invoice Item that is not properly mapped to a Xero Product Service type.
### What are Products and Services in Xero?
The Products and Services in Xero represent the inventory of products and services that you sell to your clients. These are optional in Xero, so they may not currently be in use within your Xero instance. Ruddr's integration with Xero allows you to map each Invoice Item in your Ruddr workspace to a Product Service type in Xero. **Ruddr requires this mapping in order to connect an invoice line item with the appropriate income account within your chart of accounts.**
### What causes the "Account code or ID must be specified" error?
This error occurs upon publishing an invoice that is being saved to Xero. The error occurs in the following two scenarios:
* There is no mapping at all from the Ruddr Invoice Item to a Product Service type in Ruddr. This mapping can be created within the Xero integration settings within Ruddr.
* The mapping exists, but the Product Service type within Xero is not of type "Sell". There are three types of Product and Services in Xero. These are "Sell", "Purchase", and "Track inventory item". The Invoice Items in Ruddr must be connected to Product Service types in Xero that are of type "Sell".
### Adding a Product and Service Type in Xero
To get to the Products and Services list within Xero (Figure 1), simply click on the **Business** menu option and then select **Products and Services**. From there, click on the **New item** button at the top-right of the screen to create a new Product Service type.
Figure 1 - Product Service Types List Screen in Xero
This will bring up the New Item window. On this window you must uncheck the "Purchase" and "Track inventory item" checkboxes and check the "Sell" checkbox. You then need to select the sales income account from your chart of accounts that will be associated with this new Product Service type.
Figure 2 - The "Sell" Product Service Type
At this point, an invoice in Ruddr that uses an Invoice Item that is mapped to this new Product Service type, will publish without error.
# What fields sync as part of the Xero integration?
Source: https://help.ruddr.io/faqs-and-troubleshooting/ruddr-and-xero/what-fields-sync-as-part-of-the-xero-integration
Covers how invoices, credit notes, and payments sync between Ruddr and Xero, including line item mapping, allocations, and reload behavior.
This guide explains how data syncs between Ruddr and Xero, including what gets sent to Xero, what comes back, and how updates are handled.
* [Invoices](#invoices)
* [Payments](#payments)
* [Credit Notes](#credit-notes)
## Invoices
### Saving invoices to Xero
When you save an invoice from Ruddr to Xero, the following happens:
**Basic details**
* Client is matched to a Xero contact by name or created automatically (using name, currency, and email)
* Currency is preserved
* Issue date and due date are synced
* Reference field is populated (and may be re-sent if recalculated after save)
* Status is set based on integration settings (default status is “Authorised”)
* Notes are added as a history record in Xero
**Line items**
* Description is sent as-is
* Invoice item is matched to a Xero item code or falls back to a default item
* Account code comes from the mapped item (or default settings if unresolved)
* Quantity and rate are synced
* If quantity is greater than zero, rate is used (or calculated as amount ÷ quantity)
* If quantity is zero or less, amount is used directly
* Taxable status determines the tax type:
* Taxable → standard output tax (or mapped tax rate)
* Non-taxable → “NONE”
* Discounts are prorated across all line items
* Lines without an invoice item are sent as description-only
### Invoice Numbers
As the invoice is created in Xero, Ruddr updates with:
* Invoice number
* Total amount
* Tax amount
* Tax rate (derived from line items)
* Transaction number (parsed from the invoice number)
### Reloading invoices from Xero
If changes are made in Xero, you can reload the invoice into Ruddr.
**This updates:**
* Invoice number, issue date, and due date
* Billing address (constructed from the contact in Xero)
* Total, tax, and discount amounts
**Line items**
* Fully re-synced from Xero
* Deleted lines are removed in Ruddr
* New lines are added automatically
**Payments**
* Payments are also synced, including:
* Amount
* Date
* Reference number
* Notes
Batch payments are supported and mapped across invoices. All invoices in a batch payment must belong to the same client in Ruddr. If a Xero batch payment is applied to an invoice that belongs to a different client in Ruddr, Ruddr does not import any part of that payment and shows an error naming the conflicting invoice number. To resolve it, map both invoices to the same Ruddr client, or record the payment in Ruddr manually.
**Credit notes**
* Any linked credit notes in Xero that don’t exist in Ruddr are automatically created
***
## Credit Notes
### Saving credit notes to Xero
When saving a credit note to Xero:
* Client is matched to a Xero contact
* Currency and issue date are synced
* Reference field is included
* Status is always set to “Authorised”
* Notes are added as a history record
**Line items**
* Same behavior as invoice line items
* Includes description, item mapping, account code, quantity, rate, and tax
**Allocations**
* Credit notes are applied to invoices in Xero
* Each allocation includes the amount and target invoice
* Invoices must already exist in Xero
### Credit Note Numbers
Ruddr receives:
* Credit note number
* Total amount
* Tax amount
* Tax rate (derived from line items)
* Transaction number
### Reloading credit notes
Reloading updates:
* Number and issue date
* Billing address
* Total and tax amounts
* Tax rate
**Line items**
* Fully synced from Xero
* Removed lines are deleted
**Allocations**
* Matched to invoices in Ruddr
* Amounts are grouped per invoice
* Skipped if the invoice cannot be found
**Voided credit notes**
* If a credit note is voided in Xero, the sync link is removed
* No updates are written back
***
## Payments
### Saving payments to Xero
Payments in Ruddr are saved as either a single payment or a batch payment in Xero.
**Single payment**
* Amount, date, reference number, and notes are sent
* Linked to a single invoice (must already exist in Xero)
* Payment account is set from integration settings
**Batch payment**
* Same header fields as single payments
* Multiple invoices included with individual amounts
* Requires payment currency to match the workspace base currency
### Reloading payments
Payments are not reloaded independently.
Instead:
* Payments are synced as part of the invoice reload process
* See [Invoices → Reloading invoices](#reloading-invoices-from-xero) for details
# How do I understand my monthly Ruddr invoice?
Source: https://help.ruddr.io/faqs-and-troubleshooting/ruddr-subscription-and-pricing/how-do-i-understand-my-monthly-ruddr-invoice
Ruddr invoices add prorated charge and credit lines whenever billable members are added or removed, so you only pay for active seats you actually use.
If your company adds or removes a lot of workspace members during a month, your Ruddr invoice for that month will look a little busy. The primary reason is that Ruddr adds lines to your invoice any time a workspace member is added or deactivated/removed. Similarly, there will be lines added if your workspace billing frequency is changed. As you will see below, the reason that you end up with a busy invoice with Ruddr is because we are continuously adjusting your spend such that you only pay for the billable workspace members that are active in your workspace. We ensure that you are never paying for idle seats that you don't need.
**Billing Period**
Within the **Billing** tab of **Workspace Settings**, you can select either a monthly or annual billing frequency. We provide a discount to customers who select an annual plan. At the end of each billing period (monthly or annual), you will see a charge at the bottom of your invoice for the billable workspace members for the next period. For example, if you are on a monthly plan and have 47 active billable workspace members, there will be a row at the bottom of your invoice that looks something like this:
This shows that you are subscribed to our Team Plan at \$10 per billable workspace member per month. *Note that your Team Plan price will be different than this simple example.* It shows that you have 47 billable members for a total monthly fee of \$470. Also, you can see that your billing period renews on the 5th of each month.
**Adding a Workspace Member**
Continuing with the example above, let's assume that you hired a new employee on December 6, one day after this billing period started. Rather than charge your credit card for each and every new member that is added to your workspace during the period, Ruddr adds those prorated charges to your next month's invoice. So, you would see two lines on your next invoice, as shown below:
The second line above provides a prorated credit for all unused fees for the current billing period. Since this new hire was added just one day into the new period, \$457.08 of the original \$470.00 is credited back to the account. Then, Ruddr adds a prorated charge for the full 48 billable workspace members for the remainder of the billing period. Every time a workspace member is added or deactivated/removed, you will see two lines that represent that event.
Note that if your workspace is on an annual plan, you will still see a monthly charge any time you add a workspace member. You will be credited for all unused fees for the annual plan and then you will be charged a prorated amount through the end of the annual period for the new number of workspace members.
Also note that you are charged for all active billable workspace members, including those who have been invited but who have not yet accepted their invitation.
**Removing a Workspace Member**
Let's assume that just after you added this 48th team member, you learn that the new hire actually took a job elsewhere and won't be joining your team. When you deactivate/remove the member from your workspace, you will see a prorated credit for the unused portion of the billing period for the 48 workspace members. Then, you will immediately have a prorated charge for the 47 workspace members through the end of the billing period.
Note that this scenario results in a credit on your account. You were credited \$466.72 and immediately charged \$456.99 which leaves a credit of \$9.73. Any time you have a credit, Ruddr will use that credit in the next billing period where you have charges.
**Changing the Billing Frequency**
You are free to switch from monthly billing to annual billing, or vice-versa. You can make this change as often as you like.
When the billing frequency is changed from annual to monthly, you will first get a prorated credit for the remaining portion of the annual plan and then you will be charged a prorated fee for the monthly billing through the end of the monthly billing period. You will not be charged monthly fees until the residual credit is fully exhausted.
When the billing frequency is changed from monthly to annual, you will first get a prorated credit for the remaining portion of the current month's fee and then you will be charged for a full year's annual fee. Switching from monthly billing to annual billing will reset your billing period to the current day of the month.
For more information about our pricing, see our [Fair Pricing Policy](/faqs-and-troubleshooting/ruddr-subscription-and-pricing/what-is-the-ruddr-fair-pricing-policy).
For more information about how billing works, please see the [Billing](/workspace-administration/billing) article.
# What is the Ruddr Fair Pricing Policy?
Source: https://help.ruddr.io/faqs-and-troubleshooting/ruddr-subscription-and-pricing/what-is-the-ruddr-fair-pricing-policy
The Fair Pricing Policy includes a 30-day free trial, charges only for billable members, instant credits for removed seats, and 24-month price guarantees.
At Ruddr, we try to ensure that you realize maximum value from your relationship with us. One of the ways that we do this is through our Fair Pricing Policy (FPP). The Ruddr FPP is comprised of the following principles:
* **You always get a 30-day free trial.** We want you to be certain that Ruddr is the right product for your team. We offer a free trial that does not require you to provide a credit card. In the event that you love Ruddr after a week and add your credit card early, we will not charge your card until your 30-day free trial is over.
* **Non-profit organizations get a 10% discount.** We support non-profit organizations by providing a 10% discount on our subscription fees. Non-profit organizations provide information related to their non-profit status to receive this discount.
* **You only pay for your billable personnel.** The information contained in Ruddr is valuable to employees across your organization, but we only charge for your billable workspace members. We charge no license fee for your non-billable personnel, so long as at least 50% of your workspace members are billable. We align our revenue model with yours. The only limitation on non-billable workspace members is that they cannot record time or expenses to client projects (they can only record time or expenses to the "internal client" associated with your company).
* **You are immediately credited any time a workspace member is deactivated (or removed) from your workspace.** We don't think it is fair for you to pay for services that you aren't using. So, if you deactivate a billable workspace member, Ruddr will instantly credit your account for the remaining unused fees related to that member. As an example, if you start an annual plan with Ruddr today and an employee quits tomorrow, you can deactivate that member and your account will be immediately credited for the 364 days that were not used for that member. That credit will be used to offset any future Ruddr charges.
* **When you add a new member to your workspace, we only charge you a prorated amount for the remainder of the current period.** If you are on a monthly plan that renews tomorrow and you add a new billable member to your workspace today, you will only pay for one day for that member for the current billing period. We'll calculate the prorated cost and bill you the following month for any new members added. If you are on an annual plan, we'll calculate the prorated cost for the rest of the annual period, and bill you at the end of the month for any new members added.
* **Your price per workspace member is guaranteed for the first 24 months, after which it will never increase more than once in any 24-month period.** Selecting a professional services automation platform is a big decision. The last thing you want is to pick a platform and have the price increase a few months later. With Ruddr, we guarantee that your price per member will not change within the first 24 months of being a customer. After that period, if your price does change, that new price per member is guaranteed for another 24 month period.
We believe in candor and fairness. We don't believe in pricing gimmicks. For more information on how billing works in Ruddr, please see our [Billing](/workspace-administration/billing) article.
# Can I approve time and expenses on behalf of another workspace member?
Source: https://help.ruddr.io/faqs-and-troubleshooting/time-and-expense/can-i-approve-time-and-expenses-on-behalf-of-another-workspace-member
Members with administrative permission to time and expenses can pick another member in the Approver dropdown on the Approvals screen to act on their behalf.
There are times when you may need to approve time or expenses on behalf of another workspace member. For example, a manager may have left on vacation before handling all of the time and expense items that were awaiting their approval.
To approve time on behalf of another workspace member, simply go to the Approvals screen within the Time area of Ruddr. In the **Approver** dropdown, select the member for whom you wish to handle approvals. The process approving expenses on behalf of another member is identical.
Figure 1 - Approver Dropdown on the Approvals Screen
After selecting the Approver, you will be shown the time entries (or expense items) that you have administrative access to that are awaiting approval by that member.
Figure 2 - Time Approval Screen
Note that you will only see time entries for members for whom you have member-based administrative permission to their time and expenses. If you have that permission for a subset of workspace members, you will only be able to approve the items of that subset.
The Ruddr Security Role determines whether or not a member has administrative rights to the time and expenses of other members. The assigned security role can provide administrative access to the time and expenses of all workspace members, all members of a member's practice, or all subordinates of a member (based on the manager setting for each member).
Figure 3 - Member Permissions in the Ruddr Security Role Definition
# How are statutory holidays handled in Ruddr?
Source: https://help.ruddr.io/faqs-and-troubleshooting/time-and-expense/how-are-statutory-holidays-handled-in-ruddr
Statutory holiday time off entries are created automatically each week, approved on creation, and locked for everyone except Workspace Admins.
Statutory holidays (often called "stat holidays", "bank holidays", or "public holidays") are holidays officially recognized by law that employees are typically entitled to take off from work and receive pay. They’re "statutory" because they’re established by statute (law) rather than by an employer’s internal policy.
When a Holiday Schedule is created in Ruddr, any holiday can be set as statutory. Below is an example of a Canadian holiday schedule that includes both statutory and standard company holidays.
Figure 1 - Sample Canadian Holiday Schedule Showing Statutory Holidays
Ruddr handles statutory holidays differently than non-statutory holidays, as described below:
* Statutory holiday time off entries are always created automatically by Ruddr. Every Sunday, Ruddr will create statutory holiday time off entries for the forward week.
* Statutory holiday time off entries are automatically approved by Ruddr upon creation. These time off entries do not have to be manually approved.
* Statutory holiday time off entries will be locked for all workspace members, other than Workspace Admins.
* Statutory holiday time off entries are created even if the member does not have permission to create time off entries or does not have permission to create holiday type time off entries.
# How does Ruddr handle unpaid time off?
Source: https://help.ruddr.io/faqs-and-troubleshooting/time-and-expense/how-does-ruddr-handle-unpaid-time-off
Unpaid time off reduces a member's utilization capacity so metrics are not penalized, and it accrues no labor cost on member performance reports.
A Workspace Admin can create the time off types that workspace members can select when tracking time off. Within the Time Off Types custom data entity screen in workspace settings, time off types can be configured as either paid or unpaid.
Figure 1 - "This is paid time off" setting
### Paid Time Off
When a workspace member tracks paid time off, the company will be compensating the member for the time taken. That is typically how holidays and vacation are handled for fulltime employees. Often, those paid time off types are only made available to fulltime employees and not hourly employees or hourly contractors. Within each workspace member's Member Dashboard, the Workspace Admin can select the types of time off that can be tracked by that member.
Figure 2 - Enabling time off types per workspace member
When a workspace member tracks paid time off, that time will incur labor cost that will be reflected in the Performance by Member report and similar member-based performance reports.
### Unpaid Time Off
There are certain situations in which a workspace member may need to take unpaid time off. When a member selects an unpaid time off type, Ruddr will automatically adjust how it calculates the utilization and labor cost associated with that time off entry.
**Impact to Utilization**
When a member takes unpaid time off, Ruddr automatically adjusts that member's capacity for the period, such that utilization metrics are not negatively impacted. Since the company isn't paying for the unpaid time off, Ruddr ignores that capacity with respect to utilization calculations.
For example, let's assume that there are 160 hours of capacity in a month and a member records 80 billable hours and 80 unpaid time off hours. The normal billable utilization calculation is billable hours divided by capacity which would yield a 50% billable utilization rate. But, Ruddr automatically subtracts the unpaid hours from the denominator of the calculation. Thus, the denominator is the original 160 hours of capacity minus the 80 hours of unpaid time off. The resulting 80 hours of "utilization capacity" yields 100% billable utilization for the period.
The various utilization reports in Ruddr will show a "Utilization Capacity" column which is simply the member's original capacity less any unpaid time off taken during the reporting period.
**Impact to Labor Cost**
Since the company is not compensating a member for unpaid time off, Ruddr does not accrue any cost for that time on its member-based performance reports. Paid time off will incur labor cost, but unpaid time off will not.
# I am set up as a time and expense approver. Why can I not see items in my approval queue?
Source: https://help.ruddr.io/faqs-and-troubleshooting/time-and-expense/i-am-set-up-as-a-time-and-expense-approver-why-can-i-not-see-items-in-my-approva
An empty approval queue usually means missing time and expense admin permissions or locked items; use the Include Locked Items filter to view them.
In cases where a member is set up as an Approver -- often as a Project Admin, a Member's Manager, or a Client Relationship Owner -- but cannot see those items in their approval queue, the Approver lacks the necessary Time and Expense administrative permissions. In order to approve time and expense, a member must have administrative rights to those items, as detailed in the [View and Manage Time Entries of Other Members](/time/view-and-manage-time-entries-of-other-members) and [View and Manage Expense Items of Other Members](/expenses/view-and-manage-expense-items-of-other-members) articles in the Ruddr Help Center.
For more on managing member permissions, please refer to the [Security Roles](/workspace-administration/security-roles) article in the Ruddr Help Center.
In instances where time and expense administrative permissions are granted to a member, there may be time and expense locking scenarios that require elevated permissions to approve time and expense.
Some of the more common locking occurrences include:
#### Time-Based Locking of Time Entries and Expense Items
Workspaces can specify that time entries and expense items are to be locked based on either the age of the entries / items or if a certain date has passed in the month following the entries / items. These settings ensure that members cannot edit their time entries or expense items after a certain amount of time has elapsed. When this type of "time lock" has been applied, "Pending Approval" time entries / expense items will not be available for approval via the Approvals screen unless the approver has member-level time and expense administrative permissions to those entries / items. Members that have project-level time and expense administrative privileges will no longer be able to approve items locked in this manner.
To view these items on the Approvals screen, you can leverage the **Include Locked Items** filter (Figure 1). When this filter is set to "Yes", Ruddr will display any locked items that are unavailable for approval.
Figure 1 - Set the **Include Locked Items** filter to "Yes" to View a List of Locked Items on the Approvals Screen
When viewing a locked time entry either on the Approvals screen or in the Time Detail report (or expense item in the Expense Detail report), you will see a lock icon listed with the time entry (Figure 2). Hovering over this icon will inform you as to the nature of why the time entry is locked.
Figure 2 - Locking Information for a Time Entry on the Time Detail Report
For more on this workspace setting, please refer to [Time and Expense Settings](/workspace-administration/general-workspace-settings#time-and-expense-settings) in the [General Workspace Settings](/workspace-administration/general-workspace-settings) article in the Ruddr Help Center. For more on locking and related permissions, please refer to the [Time Entry Locking](/time/time-entry-locking) article in the Ruddr Help Center.
#### Projects / Project Tasks are Locked
A **Lock time and expense** setting is available on projects and on individual project tasks. When this setting is applied and it affects time entries on the project / project task, those time entries are locked and will not be available in the approval queue for anyone other than workspace administrators. Members that have member-level or project-level time and expense administrative privileges will no longer be able to approve items locked in this manner.
To view these items on the Approvals screen, you can leverage the **Include Locked Items** filter (Figure 1). When this filter is set to "Yes", Ruddr will display any locked items that are unavailable for approval.
When viewing a time entry in the Time Detail report (or expense item in the Expense Detail report), you will see a lock icon to the right of the time entry (Figure 3). Hovering over this icon will inform you as to the nature of why the time entry is locked.
Figure 3 - A Project's Task has had the Lock Time and Expense Setting Applied
For more on locking and related permissions, please refer to the [Time Entry Locking](/time/time-entry-locking) article in the Ruddr Help Center.
# What are Productive Hours and Productive Utilization?
Source: https://help.ruddr.io/faqs-and-troubleshooting/time-and-expense/what-are-productive-hours-and-productive-utilization
Productive Hours combine client hours with internal hours flagged as productive, and Productive Utilization divides them by capacity for the period.
All hours in Ruddr fall into one of two main categories which are Time Off Hours and Project Hours. Within the Project Hours category, each time entry is either Client Billable, Client Non-Billable, or Internal. All internal hours are always non-billable.
Internal hours are non-billable project hours associated with the "Internal Client". Each workspace has a special client called the Internal Client that can be used for internal projects. Projects associated with the Internal Client can only be non-billable.
**Productive Hours**
Productive Hours in Ruddr are the sum of:
* Client Billable Hours
* Client Non-Billable Hours
* Internal Hours on projects with the "This internal project counts toward productive utilization" setting checked.
Each internal project in the workspace has a special setting labeled "This internal project counts toward productive utilization". When this is checked, all of the hours worked on the project are considered Productive Hours that count toward Productive Utilization. Client projects do not have this setting because all hours on a client project are considered productive by default.
This setting on internal projects allows you to differentiate between strategic internal work (such as building a new project estimation tool or working on the new company website) and potentially less-valuable "bench time" projects.
**Productive Utilization**
Billable utilization in Ruddr is calculated by dividing the billable hours in the period by the capacity hours in the period. So, if a workspace member had 20 billable hours last week, 20 non-billable internal hours, and 40 hours of capacity, the billable utilization would be 50% (20 billable hours divided by 40 hours of capacity).
But, let's assume that 10 of those 20 internal hours were on a strategic project that has the "This internal project counts toward productive utilization" setting checked. While the billable utilization would remain 50%, the productive utilization would be 75% (30 productive hours divided by 40 hours of capacity).
Productive Utilization is shown to workspace members on the Personal Dashboard, along with Billable Utilization, Client Utilization, and Total Utilization.
Additionally, Productive Utilization is shown on the utilization reports.
# Why am I receiving a notification that my timesheet is unsubmitted when I submitted a timesheet for that week?
Source: https://help.ruddr.io/faqs-and-troubleshooting/time-and-expense/why-am-i-receiving-a-notification-that-my-timesheet-is-unsubmitted-when-i-submit
This reminder typically means the week spans two months and only one of the two required timesheets for that week has been submitted.
In some instances, members may receive a timesheet submission reminder for weeks where a timesheet has been submitted. When that happens, it is most likely that the notification was sent because the timesheet spans more than one period and only a partial timesheet has been submitted.
When a timesheet spans more than month - the end of a month and the beginning of the following month both occur in the same week - the member must submit both periods. For more on this, please refer to the Ruddr FAQ article [Why do I need to submit two timesheets in one week](/faqs-and-troubleshooting/time-and-expense/why-do-i-need-to-submit-two-timesheets-in-one-week).
# Why are time off entries not syncing to Ruddr from our integrated HRIS platform?
Source: https://help.ruddr.io/faqs-and-troubleshooting/time-and-expense/why-are-time-off-entries-not-syncing-to-ruddr-from-our-integrated-hris-platform
Run a manual sync from the HRIS integration and check the sync log; entries often fail because the member lacks capacity configured on the affected days.
If your Ruddr workspace is integrated with an HRIS platform, such as Bamboo HR or Rippling, you can configure the integration to synchronize time off entries to Ruddr. These time off entries will be synchronized to Ruddr and locked such that they can't be edited within Ruddr.
If some or all of the time off entries in the HRIS system are not being synchronized, it is recommended that you run a manual sync by clicking on the **New Manual Sync** button within the HRIS integration in Ruddr.
Figure 1 - Initiating a Manual Sync
This will bring up a window that will allow you to set the entities to sync as well as the start and end date for the time off entries. Just click on the **Start Sync** button to initiate the process. It may take several minutes for the sync to complete.
Figure 2 - New Manual Sync Settings
Once the manual sync process has completed, click on the sync results row to bring up the sync results log file.
Figure 3 - Sync Results List
If a specific member's time off entries are not being synchronized, scroll through the sync results log until you locate that member. If Ruddr is not importing the time off entries, there should be a reason shown. For example, these two days of vacation for Bill Jones (shown in the log excerpt below) are not being imported because Bill's member account in Ruddr is not configured with capacity on the given days.
Figure 4 - Sync Results Log File
For this particular situation, simply navigate to Bill's member dashboard (you must be a Workspace Admin to access this area of Ruddr) and click on the Capacity tab. Ensure that Bill has the proper amount of capacity configured for each day of the week.
Figure 5 - Member Capacity Configuration
One the capacity is corrected, simply re-run the manual sync process and ensure that the time off entries are being properly synchronized.
# Why did Copy Last Week's Time Entries not create all time entries from the prior week?
Source: https://help.ruddr.io/faqs-and-troubleshooting/time-and-expense/why-did-copy-last-weeks-time-entries-not-create-all-time-entries-from-the-prior-
Time entries that violate current project or workspace rules, such as required notes or tasks or exceeded budgets, are skipped when copying the prior week.
In some cases, when [copying last week's time entries](/time/the-week-view-for-time-tracking#copy-last-weeks-time-entries), some of the prior week's time entries may not be copied. If any of the time entries from the prior week fail validation, in the sense that they violate project or workspace time entry constraints, those time entries will not be created for the current week. It could be that the Project Admin on the project has applied a new set of time entry rules to the project or to a specific task, or that the workspace administrator has update time and expense settings since time entries were submitted in the prior week.
Some examples of this include:
* Project has been set to require notes for time entries, but one or more of last week's time entries for that project do no have notes.
* Project has been set to require that time entries are associated with tasks, but one or more of last week's time entries are not associated with tasks.
* The workspace requires that time entries be entered within the project start and end dates, and copying last week's time entries for that project would create time entries beyond the project end date.
* Time entry(s) would exceed the project hours budget or would cause the project's services revenue budget to be exceeded.
* Time entry(s) would exceed the task's hours budget or would cause the task's services budget to be exceeded.
In these, and any other cases where time entry validation fails, the project row may be added to the current week, but some or all time entries for a project / role / task may not be copied.
# Why do I need to submit two timesheets in one week?
Source: https://help.ruddr.io/faqs-and-troubleshooting/time-and-expense/why-do-i-need-to-submit-two-timesheets-in-one-week
When a week spans two months, Ruddr creates two timesheets so month-end time can be submitted without submitting the following month's days.
There are cases where a week spans across two months (Figure 1). In this case, **you will have two timesheets** and Ruddr will prompt (Figure 2) the member to select whether they want to submit the first half of the period, or both. This allows members to submit time at the end of the month (that may impact monthly invoicing) without having to submit future time for the second half of the week (first days of the following month).
Note, however, that the member can submit both timesheets for the entire week.
Figure 1 - Multiple Timesheets in a Week that Spans the End of a Month and the Beginning of a Second Month
Figure 2 - Specify the Timesheet to Submit When Two Timesheets are Present for a Given Week
Once the first timesheet has been submitted, the time entries for those days will be locked and the status of the timesheet changes to **Submitted** (Figure 3). The user will then have the ability to enter time for the remainder of the week, at which point, they can submit the second timesheet (Figure 4).
Figure 3 - The First Timesheet is Shown as **Submitted**
Figure 4 - Submitting the Second Timesheet
# Accepting Workspace Invitations
Source: https://help.ruddr.io/getting-started/accepting-workspace-invitations
Learn how to accept an email invitation to join a Ruddr workspace or request one from your workspace administrator.
If you are expecting to join an existing workspace, you will need to receive an invitation to join that workspace. If you haven't received one, you can [request an invitation](#requesting-an-invitation) from your workspace administrator.
### Receive and Accept a Workspace Invitation
A workspace administrator must send you an invitation to join their workspace. This invitation will be sent via email (Figure 1), which will have a **Join workspace** link that you can click to join the workspace. If you already have an account, you may be prompted to log in, at which time you will be taken to the workspace. If you don't have an account yet, you will be prompted to create one (Figure 2). Upon supplying your name and a password, agreeing to the terms, and clicking **Join Workspace**, you will be taken to the workspace.
### Requesting an Invitation
If your company is already using Ruddr, contact your workspace administrator and ask them to send you an invitation. A workspace administrator can invite you from the **Members** section of the **Settings** area (see [Workspaces](/getting-started/workspaces)). You don't need to sign up for Ruddr first; you will create your account when you accept the invitation.
# Glossary of Terms
Source: https://help.ruddr.io/getting-started/glossary-of-terms
Definitions and formulas for key professional services metrics in Ruddr, including utilization, revenue, realization, and gross margin.
* [Utilization Metrics](#utilization-metrics)
* [Billable Utilization](#billable-utilization)
* [Client Utilization](#client-utilization)
* [Total Utilization](#total-utilization)
* [Utilization Rate](#utilization-rate)
* [Revenue & Billing Metrics](#revenue-and-billing-metrics)
* [Revenue](#revenue)
* [Effective Bill Rate](#effective-bill-rate)
* [Realization Rate](#realization-rate)
* [Project Revenue Components](#project-revenue-components)
* [Services Revenue](#services-revenue)
* [Expense Revenue](#expense-revenue)
* [Other Items to Bill Revenue](#other-items-to-bill-revenue)
* [Total Project Revenue](#total-project-revenue)
* [Cost & Profitability Metrics](#cost-and-profitability-metrics)
* [Services Cost](#services-cost)
* [Services Gross Profit](#services-gross-profit)
* [Services Gross Margin](#services-gross-margin)
* [Project Gross Profit](#project-gross-profit)
* [Project Gross Margin](#project-gross-margin)
* [Gross Margin](#gross-margin)
* [Key Concepts & Relationships](#key-concepts-and-relationships)
* [Services Gross Margin vs Project Gross Margin](#services-gross-margin-vs-project-gross-margin)
* [Expense Markup & Margin Impact](#expense-markup-and-margin-impact)
* [Revenue-to-Profit Flow](#revenue-to-profit-flow)
***
# Utilization Metrics
## Billable Utilization
The percentage of available time spent on **billable client work**.
**Formula:**
```
Billable Utilization % = (Billable Hours / Available Hours) × 100
```
**Why it matters:**\
Billable utilization is one of the strongest predictors of services revenue performance and delivery efficiency.
***
## Client Utilization
The percentage of available time spent on **client-related work**, including billable and non-billable client activity.
**Formula:**
```
Client Utilization % = (Client Hours / Available Hours) × 100
```
**Why it matters:**\
Client utilization helps explain how much time is spent supporting client work, even when not directly billable.
***
## Total Utilization
The percentage of available time spent working across all activities, including internal and client work.
**Formula:**
```
Total Utilization % = (Total Hours Worked / Available Hours) × 100
```
**Why it matters:**\
Total utilization highlights overall workload and potential bench time.
***
## Utilization Rate
A general term that may refer to **billable utilization**, **client utilization**, or **total utilization**, depending on context.
**Why it matters:**\
Utilization rate is a core measure of capacity efficiency and directly impacts profitability.
***
# Revenue and Billing Metrics
## Revenue
Income recognized as work is delivered.
**Time & Materials:**
```
Revenue = Billable Hours × Bill Rate
```
**Fixed Fee / Milestone:**
```
Revenue = % Complete × Contract Value
```
**Why it matters:**\
Revenue is the output of delivery work and pricing performance.
***
## Effective Bill Rate
The actual revenue earned per hour worked.
**Formula:**
```
Effective Bill Rate = Revenue / Total Hours Worked
```
**Why it matters:**\
Effective bill rate reflects the combined effect of utilization, pricing, and realization.
***
## Realization Rate
The percentage of recorded billable time that converts into billed revenue.
**Formula:**
```
Realization % = (Billed Hours / Recorded Billable Hours) × 100
```
**Why it matters:**\
Realization measures how much delivery work is being written off due to scope creep, discounting, or billing adjustments.
***
# Project Revenue Components
## Services Revenue
Revenue generated from delivering professional services.
**Time & Materials:**
```
Services Revenue = Billable Hours × Bill Rate
```
**Fixed Fee:**
```
Services Revenue = Recognized Fixed Fee Services Revenue
```
**Why it matters:**\
Services revenue is typically the primary revenue stream for a professional services firm. For more on this, please refer to the article on [revenue recognition in Ruddr](/faqs-and-troubleshooting/revenue-in-ruddr/when-is-revenue-recognized-in-ruddr).
***
## Expense Revenue
Revenue generated from billable project expenses passed through to a client.
**Examples include:**
* Travel and lodging
* Meals
* Client-specific software
* Third-party vendor costs
**Formula:**
```
Expense Revenue = Sum of Billable Expenses
```
**Why it matters:**\
Expense revenue increases project revenue totals but often has little or no margin unless marked up.
***
## Other Items to Bill Revenue
Revenue from project-related charges that are **not tied to labor (services)** or **reimbursable expenses**.
**Examples include:**
* Administrative or setup fees
* Service-level agreement (SLA) fees
* IP licensing fees
* Platform access fees
**Definition:**\
Any project income that is not derived from services delivery or expense reimbursement.
**Formula:**
```
Other Items to Bill Revenue = Sum of Non-Service, Non-Expense Billable Charges
```
**Why it matters:**\
These items are often high-margin because they are not directly tied to delivery labor or other costs.
***
## Total Project Revenue
The full revenue value of a project across all billable categories.
**Formula:**
```
Total Project Revenue =
Services Revenue
+ Expense Revenue
+ Other Items to Bill Revenue
```
**Expanded view:**
```
Total Project Revenue =
(Billable Hours × Bill Rate)
+ Billable Expenses
+ Other Billable Charges
```
**Why it matters:**\
Total project revenue is the correct top-line number for evaluating project-level profitability.
***
# Cost and Profitability Metrics
## Services Cost
The direct cost required to deliver services revenue.
**Typically includes:**
* Billable staff wages
* Payroll taxes and benefits
* Contractors and subcontractors
**Excludes:**
* Sales and marketing costs
* General & administrative overhead
* Product development costs
**Formula:**
```
Services Cost = Direct Delivery Compensation + Direct Delivery Expenses
```
**Why it matters:**\
Services cost is the largest cost driver in most services businesses.
***
## Services Gross Profit
The profit generated from services delivery.
**Formula:**
```
Services Gross Profit = Services Revenue – Services Cost
```
***
## Services Gross Margin
The percentage of services revenue remaining after delivery costs.
**Formula:**
```
Services Gross Margin % =
((Services Revenue – Services Cost) / Services Revenue) × 100
```
**Why it matters:**\
Services gross margin is the cleanest measure of delivery profitability.
***
## Project Gross Profit
The total profit from a project after subtracting direct project costs.
**Common simplified formula:**
```
Project Gross Profit = Total Project Revenue – Services Cost
```
**More complete version (if expense costs are tracked):**
```
Project Gross Profit = Total Project Revenue – Total Project Direct Costs
```
***
## Project Gross Margin
The percentage of total project revenue remaining after direct project costs.
**Formula:**
```
Project Gross Margin % =
(Project Gross Profit / Total Project Revenue) × 100
```
**Why it matters:**\
Project gross margin is the best indicator of engagement-level profitability.
***
## Gross Margin
A general profitability measure of revenue remaining after direct costs.
**Formula:**
```
Gross Margin % = ((Revenue – Direct Costs) / Revenue) × 100
```
***
# Key Concepts and Relationships
## Services Gross Margin vs Project Gross Margin
**Services Gross Margin**
* Measures profitability of labor delivery only
* Best for evaluating utilization and staffing efficiency
**Project Gross Margin**
* Includes all revenue categories (services + expenses + other items)
* Best for evaluating the full financial performance of an engagement
**Important note:**\
Project margin may appear higher than services margin if high-margin “other billable items” are included.
***
## Expense Markup and Margin Impact
If expenses are billed at cost:
```
Expense Revenue ≈ Expense Cost
```
Expense revenue increases total project revenue but has minimal impact on profit.
If expenses are marked up:
```
Expense Profit = Expense Revenue – Expense Cost
```
This increases:
* Project Gross Profit
* Project Gross Margin
But does not impact services gross margin.
***
## Revenue-to-Profit Flow
```
Billable Utilization
↓
Services Revenue
↓
+ Expense Revenue
+ Other Items to Bill Revenue
--------------------------------
= Total Project Revenue
↓
– Services Cost
--------------------------------
= Project Gross Profit
↓
Project Gross Profit / Total Project Revenue
= Project Gross Margin %
```
***
# Introduction to Ruddr
Source: https://help.ruddr.io/getting-started/introduction-to-ruddr
An introduction to Ruddr, the professional services automation platform, and how it differs in UX, onboarding, pricing, and AI capabilities.
Welcome aboard, we're thrilled to have you as a Ruddr customer!
**What is Ruddr?**
Ruddr is a software product that helps professional services organizations manage and scale their operation. Our mission is simply to help professional services organizations achieve world-class results.
Professional services firms are easy to start but difficult to scale. Growing a firm to 10 employees is fairly trivial, but getting to 100 or 1,000 employees requires greater operational discipline, know-how, and tooling. Ruddr helps you get there.
**Why did we build Ruddr?**
Our leadership team members have spent decades building professional services firms. Our team has started, scaled, and advised many firms and we know the pain points well. We've held leadership roles in boutiques as well as mid-market and publicly-traded firms.
Over those years, our leadership determined that professional services automation tools simply do not create enough enough value for customers. Most of the products were complex, cluttered, and expensive. So, we decided to fix those problems and Ruddr was born.
**How is Ruddr different?**
Ruddr is different than the competition in the following ways:
**1. User Experience (UX).** Ruddr has taken the UX bar to a new level within the PSA category. Gone are the days of struggling with convoluted PSA products.
**2. Rapid Onboarding.** The products from our competitors can take months to implement and require significant end-user training and ongoing management. Ruddr onboarding typically takes just a few weeks and requires minimal training.
**3. Tailored Functionality.** Ruddr is built **by professional services experts for professional services experts**. We have been in the trenches. Our functionality and workflows are highly-opinionated and align to the practical ways that professional services firms operate.
**4. Fair Pricing Policy.** The Ruddr Fair Pricing Policy ensures that 1) you only pay for billable personnel; 2) your pricing is always locked in for 24 months regardless of contract length; and 3) any changes to your active billable workforce will result in prorated credits or charges. With Ruddr, if your billable workforce gets smaller, your spend immediately goes down. Our revenue model is aligned with yours and **you never pay for idle seats**.
**5. AI Native.** Ruddr's codebase is optimized for Artificial Intelligence from the ground up. This enables our Ruddr Assistant and Ruddr agents to operate with maximum effectiveness and drive meaningful business benefits.
**6. Customer Satisfaction Obsessed.** Our success begins and ends with the satisfaction of our customers.
# Logging In
Source: https://help.ruddr.io/getting-started/logging-in
Learn how to log into Ruddr with one or multiple workspaces, retrieve a forgotten Workspace URL ID, and reset your password.
Once you have created an account and a workspace, or you have accepted an invitation to a workspace, you can log into Ruddr by simply navigating to [www.ruddr.io](http://www.ruddr.io). This will bring up the login screen (Figure 1) where you can enter your email address.
NOTE: if you are joining an existing workspace, you will need to accept the invitation into the workspace that will be sent by the workspace administrator. For more on this, please visit the [Accepting Workspace Invitations](/getting-started/accepting-workspace-invitations) article in the Ruddr Help Center.
Once you have entered your email address and clicked the **Next** button, if Ruddr successfully finds an account with this email address, you will be taken to a screen where the prompt will be determined by the number of workspaces to which you are associated. The login experience will be different for members associated with a [single workspace](#associated-with-a-single-workspace) vs. members that are associated with [multiple workspaces](#associated-with-multiple-workspaces).
If Ruddr does not find an account with that email address, you will be prompted (Figure 2) as such.
### Associated with a Single Workspace
If you are associated with a single workspace, you will see a prompt to enter your password (Figure 3).
Once your password is entered, click the **Login** button on the form to proceed to your workspace.
If you have forgotten your password, simply click the **Forgot password?** link on the form to begin the [Reset Password](#reset-your-ruddr-password) process.
### Associated with Multiple Workspaces
If you are associated with multiple workspaces, you will be required to provide a workspace key for the workspace you are logging into. This workspace key is also the **Workspace URL ID** that is managed in [workspace settings](/workspace-administration/general-workspace-settings).
Once you have entered your email address on the Login screen (Figure 1), click the **Next** button and you will then be prompted to provide the Workspace URL ID (Figure 4) for the workspace you are logging into. If you do not know the key for the workspace, you can request the Workspace URL ID from Ruddr.
If Ruddr authorizes the provided email address and Workspace URL ID, you will be prompted to enter your password (Figure 5) for that workspace.
If you have forgotten your password, simply click the **Forgot password?** link on the form to begin the [Reset Password](#reset-your-ruddr-password) process.
#### Retrieving the Workspace URL ID
If you are a member of multiple workspaces and have forgotten the Workspace URL ID needed to log into Ruddr, you may request the Workspace URL ID(s) associated with your email address. To do this, click on the **Forgot your workspace's URL ID?** link under the Workspace URL ID field on the login screen (Figure 4) where you are asked to provide the workspace key.
Upon clicking that link, you will be prompted (Figure 6) to enter your email address. Click the **Get Workspace Links** button on the form.
If your email address is recognized, you will receive an email from Ruddr that lists all of the workspace(s) associated with that email address. The list will be a set of links and the corresponding Workspace URL ID for each workspace. Clicking on the link provided will take you to a login page for that workspace.
#### Reset Your Ruddr Password
On the Reset Password screen (Figure 7), enter your email address and click **Reset Password**. Ruddr will let you know it sent a password reset email (Figure 8). In that email (Figure 9), click **Choose a New Password** to open the Password Reset screen (Figure 10), where you can enter and verify your new password.
# Navigating the Ruddr Interface
Source: https://help.ruddr.io/getting-started/navigating-the-ruddr-interface
A tour of the Ruddr interface, including the header bar, workspace search, help and support options, the timer, and the collapsible nav bar.
Getting around Ruddr is pretty easy. Once you learn the main navigation components, you'll be off and sailing! We've kept the general interface consistent throughout Ruddr, so that you can quickly come up to speed. Notably, you can [access help and provide feedback](#help-and-support) from directly within Ruddr.
### Header Bar
At the top of every screen in Ruddr is the header bar (Figure 1). No matter what area of the application you are working in, the header bar remains the same.
The header bar provides access to multiple components as outlined below, including [search](#workspace-search) and the [Ruddr assistant](/getting-started/ruddr-assistant).
#### Workspace Search
The **Search** button (Figure 2) in the header bar allows you to quickly find clients, projects, and tasks. Simply type in a few letters of the item you are looking for and Ruddr will bring back a categorized list of results.
If you are looking for a specific type of content (i.e. - a Task) you can click into the search dialog box (Figure 3) to narrow your scope. Note that you will only see search results that your assigned [security role](/workspace-administration/security-roles) will allow you to view.
You can also revisit pages in Ruddr that you recently accessed via search.
Note that the search function supports keyboard interactions:
* **Cmd+K or Ctrl+K** — Toggle the search modal open/closed
* **Escape (with query)** — Clears the search query text
* **Escape (empty query)** — Closes the modal
* **Arrow Down / Up** — Navigate through search results
* **Enter** — Navigate to the selected client / project / task
#### Help and Support
To the right of the Search button is the **Help & Support** button (Figure 4).
Clicking the **Help & Support** button will present three menu options:
* [Help Center](#help-center)
* [Submit Support Request](#submit-support-request)
* [Submit Feedback](#submit-feedback)
##### Help Center
The [Ruddr Help Center](https://help.ruddr.io) is a Knowledge Base, containing information and direction on all things Ruddr.
##### Submit Support Request
If you have a need to contact the Ruddr support team, you can submit a support request. Clicking this link under Help & Support will present you with a form (Figure 5), where you can provide details about your support need. Submitting this form will create a support ticket and our team will immediately be notified.
##### Submit Feedback
Clicking the **Submit Feedback** option under Help & Support brings up a dialog (Figure 6) through which you can submit a feature that you would like to see in Ruddr. Once submitted, the team will review and reach out if further discussion is needed.
#### What's New
Clicking the **What's New** button (Figure 7) in the header bar will direct you to a list of enhancements / features that have been released in Ruddr.
#### Ask Ruddr
The Ask Ruddr button (Figure 8) will launch the Ruddr Assistant, an AI-powered chatbot that helps you find answers, explore workspace data, and understand Ruddr features faster. Note that the Ruddr Assistant [feature](/workspace-administration/features) must be enabled in the workspace in order to leverage the assistant.
#### Timer
Towards the right of the header bar is the timer indicator. The timer indicator shows whether or not a timer is currently running. When a timer is not running, the timer is in an inactive state. This inactive state shows a gray Ruddr logo followed by a gray, zeroed-out timer (Figure 9).
When a timer is running, the Ruddr logo will be green and the timer will be black and show the current amount of accrued time (hours and minutes) for the running timer. For example, the time below (Figure 10) represents an active timer with one hour and forty-two minutes.
Also, if you click on this timer, you will be presented with the [time overlay window](/time/the-time-overlay-window) (Figure 11). The time overlay window will default to the current day unless you have a timer running on a different day. You can easily navigate to other nearby days using the arrows or click the calendar icon at the top-right of the window to select a specific day. With the timer overlay window, you can always access your time entries regardless of where you are within Ruddr.
#### User Profile Menu
The final element of the header bar is the user profile menu (Figure 12). Click your avatar to open the menu, which shows your name and the current workspace. From here, you can:
* Click **My Profile** to edit your [profile information](/getting-started/user-profile).
* Click the current workspace to switch to a different [workspace](/getting-started/workspaces), if you are a member of more than one.
* Click **Go to Ruddr.com** to open the Ruddr website.
* Click **Log in to Another Workspace** to log in to a workspace that isn't listed.
* Click **Log Out** to log out of Ruddr.
### Nav Bar
On the left side of every screen in Ruddr is the nav bar. When expanded (Figure 13), the nav bar allows you to easily move between areas of the application, and also see and access related work functions. The current area will be highlighted in green as shown below. NOTE: Your nav bar will be limited to the functional areas of Ruddr that your [security role](/workspace-administration/security-roles) will allow you to access.
Note that you can collapse the nav bar down to a smaller version (Figure 14) if you are using a device with limited horizontal screen space. To expand or collapse the nav bar, click the sidebar icon to the right of the Ruddr logo at the top-left of the screen. When the nav bar is collapsed, click the Ruddr logo to expand it again.
Additionally, when the nav bar has been collapsed, you can view the name of each section by hovering your mouse over its icon (Figure 15). By clicking on an icon, you can view its sub-nav items. Below, the user has clicked the Pipeline icon, which shows the Opportunities, Companies, and Contacts pages within that section (Figure 16).
# Overview of Professional Services Automation
Source: https://help.ruddr.io/getting-started/overview-of-professional-services-automation
Understand what professional services automation software does and how PSA products like Ruddr improve productivity and visibility.
Professional services companies provide high-skill services to customers (who are typically referred to as “clients”) for a fee. There are many types of professional services companies, with areas of expertise ranging from accounting to legal to web design.
A defining characteristic of professional services firms is that the work they deliver is often highly customized for each client. Delivering customized services is challenging and that challenge is compounded by the fact that employees have varying levels of skill and experience. This creates an operation that can be difficult to manage as headcount increases. This is where a Professional Services Automation (or "PSA") product, like [Ruddr](https://www.ruddr.io), can come to the rescue.
Professional Services Automation products exist to maximize productivity, efficiency, and predictability within the professional services operation. They accomplish this by managing important data, guiding workflow and processes, surfacing key insights, and improving visibility into organizational health. PSA products capture and manage data related to personnel, clients, projects, budgets, time, expenses, resource allocations, invoices, and the like.
To learn more about professional services, take a look at [Compass](https://www.ruddr.io/compass), our free guide to building a better professional services operation.
# Ruddr Assistant
Source: https://help.ruddr.io/getting-started/ruddr-assistant
Use the AI-powered Ruddr Assistant to find answers, query workspace data, analyze performance, and generate custom reports and charts.
**NOTE:** The Ruddr Assistant [feature](/workspace-administration/features) must be enabled in workspace settings in order for this to be available in your workspace.
The **Ruddr Assistant** is an AI-powered chatbot that helps you find answers, explore workspace data, and understand Ruddr features faster. A member can ask questions in plain English about essentially any data in the Ruddr workspace that the member has permission to access. The assistant produces text-based answers as well as downloadable custom reports and charts. It can also help you navigate Ruddr documentation and clarify PSA and professional services concepts, making it easier to become proficient with Ruddr.
Just click the **Ask Ruddr** button to begin a conversation with the Ruddr Assistant. The assistant can:
* **Find answers in Ruddr Help Center articles** — features, settings, permissions, and workflows.
* **Query workspace data** — time, expenses, clients, projects, pipeline, billing, and members.
* **Analyze performance** — revenue, margin, utilization, forecasts, and trends.
* **Summarize results** — turn raw data into plain-English takeaways, custom reports, and custom graphs.
* **Build rollups** — like revenue by client, client industry, member, project, or month.
* **Explain general concepts** — PSA and professional services terms
#### Ruddr Assistant Permissions
The Ruddr Assistant is available in all Ruddr plans and to all workspace members. The information the assistant will retrieve and analyze is based on each member's [security role](/workspace-administration/security-roles). The assistant will only return data that the member otherwise has access to via Ruddr reports, dashboards, and screens.
To give members access to the assistant once the feature is enabled, you can set the **Ruddr Assistant enabled** setting on any [member's profile](/workspace-administration/member-profile). Note that this setting can also be managed via the Members bulk editing capabilities within workspace settings.
The same setting also controls whether a member can connect an outside AI application, such as Claude or ChatGPT, to your workspace. See [Connect AI Apps to Ruddr](/integrations/ai-connectors-overview).
#### Accessing the Ruddr Assistant
You can launch the Ruddr Assistant via the **Ask Ruddr** button (Figure 1) at the top of screen.
Clicking on the **Ask Ruddr** button will open a panel (Figure 2), where you can start a conversation with the assistant. Several sample prompts will be shown at the bottom of the screen.
When accessing the assistant, you can enlarge the panel by either dragging on the handle (Figure 3) that lines the left side of the panel or by clicking on the **Expand** icon (Figure 4) at the top-right of the panel.
The **+ Start New Chat** button (Figure 5) begins a fresh conversation. Use it when you want to ask a new question, switch topics, or clear out the context from a previous conversation. Starting a new chat is helpful when you want a clean slate for a different task, such as looking up a report, exploring a new dataset, or asking about a separate Ruddr feature.
Starting a new chat will also save your prior chat for future access. You can access your chat history by clicking on the Chat History button (Figure 6) on the assistant panel.
Accessing your chat history (Figure 7) will give you the ability to review prior conversations. Click on any of the prior chats in the history to load that conversation including any reports and graphs.
The Ruddr Assistant can be closed at any time by clicking the **X** button at the top-right of the panel.
#### Custom Reports and Charts
In addition to providing text-based answers and analysis, the Ruddr Assistant can create custom reports and charts. The assistant allows for easy export of these artifacts for use in software products such as Microsoft PowerPoint or Google Slides.
When showing a custom report, the assistant will include buttons at the bottom that allow you to expand/collapse report rows or save the report data to a CSV (Comma Separated Values) file (Figure 8).
The Ruddr Assistant can also create custom charts. Supported chart types include:
* Bar
* Line
* Pie
* Stacked bar
* Grouped bar
At the bottom of a custom chart, buttons are provided that allow you to easily download the chart as either a PNG (Portable Network Graphic) file or SVG (Scalable Vector Graphics) file (Figure 9). A PNG file is a raster-based format while an SVG file is a vector-based format.
# Signing Up for Ruddr
Source: https://help.ruddr.io/getting-started/signing-up-for-ruddr
Walk through requesting a new Ruddr workspace, finalizing your workspace and account details, and joining an existing workspace instead.
To sign up for Ruddr, you must go to the Ruddr website at [www.ruddr.io](https://www.ruddr.io). From the home page (Figure 1), click on the **Start Trial** button at the top-right of the screen.
The first step in the sign up process is to request a new workspace (Figure 2). Provide your company name, company website, your name, and your email address, then click the **Sign Up** button.
Ruddr will confirm that it received your request. Once our team validates the information you provided, you will receive an email titled **Finalize your Ruddr workspace**. Click the **Finalize workspace** link in that email to continue.
The link opens the **Launch your workspace!** page, where you provide the final workspace and account details:
* **Workspace Details** - your company name, professional service type, workspace name, Workspace URL ID, country, currency, regional format, and time zone. Ruddr suggests a workspace name and Workspace URL ID based on your company name. The Workspace URL ID must be unique.
* **Account Details** - your name and a password for your account.
Read Ruddr's terms, check the box indicating that you agree to them, and click **Launch Workspace!**. Ruddr loads your new workspace with sample data to help you get a feel for its capabilities. You can remove the sample data at any time from the Workspace Settings.
If your company is already using Ruddr, you don't need to sign up. Ask your Workspace Admin to send you an invitation instead (see [Accepting Workspace Invitations](/getting-started/accepting-workspace-invitations)).
# The Home Area
Source: https://help.ruddr.io/getting-started/the-home-area
Explore the Home area in Ruddr, including the Executive and Personal Dashboards plus your projects, tasks, and resource allocations.
When you log in to Ruddr, you will be taken to the Home area. You can always access this area by clicking the **Home** icon (Figure 1) on the nav bar. The Home area provides access to several categories of important data inherent to the current, logged-in Workspace member.
Once in the Home area of Ruddr, you will have additional navigation options available in the nav bar (Figure 2). Below, we walk through each of these functional areas.
### Executive Dashboard
For those members with permissions listed below (Table 1), the Executive Dashboard (Figure 3) will be displayed as the default view when visiting the Home area. Note that the permissions for each available graph on the dashboard are validated on a per-graph basis. If a member has permission to any of the graphs, as noted below, they will have access to those graphs on the Executive Dashboard.
| Graph | Permissions |
| Services Revenue | View time, allocations, rates, and revenue |
| Services Gross Profit | View time, allocations, rates, and revenue |
| Services Gross Margin | View time, allocations, rates, revenue, and cost and profit |
| Billable Utilization | View time and allocations |
| Top Clients by Services Revenue | View time, allocations, rates, and revenue |
| Top Clients by Billable Hours | View time and allocations |
| Services Effective Bill Rate | View time, allocations, rates, and revenue |
| Services Realization Rate | View time and allocations |
| Client Billable Hours | View time and allocations |
| Client Non-Billable Hours | View time and allocations |
| Most Healthy Projects | Edit projects |
| Least Healthy Projects | Edit projects |
| Pipeline By Expected Close Date | View pipeline |
Table 1 - Per-Graph Permissions for the Executive Dashboard
These members will be able to change the view to the [Personal Dashboard](#personal-dashboard) by selecting the down arrow next to the Executive Dashboard title.
The Executive Dashboard displays various "rolled-up" metrics from across the workspace, providing an "executive" view of valuable metrics for the business. The metrics will be aggregated / presented according to the security permissions of the member.
The data feeding the various graphs on the dashboard is automatically refreshed once a day. To view details about when the data was last refreshed, you can hover your mouse over the calendar icon just above the graph. The tooltip that is displayed will list the date and time.
You can also manually refresh the graphs on the dashboard by clicking the refresh button at the top right of the dashboard.
Members that can view the Executive Dashboard can customize the dashboard by selecting which metrics / graphs they want displayed, and the order in which they appear. To edit the view, click on the setting **Gear** icon (Figure 4) at the top-right of the screen to open the **Personalize Dashboard** drawer (Figure 5). Here, you can check / uncheck any checkbox to display / hide any particular dashboard widget, and drag a widget by its handle to rearrange it in your preferred order. The widgets available will be based on the member's security permissions.
Click **Save & Close** to save your arrangement. It will follow you across devices. If you hide a widget, it keeps its place in the order — turning it back on restores it to that same position rather than moving it to the end.
### Personal Dashboard
For members without permissions to see the [Executive Dashboard](#executive-dashboard), the first section of the Home area will display the Personal Dashboard (Figure 6). This dashboard shows you the time you have entered for the selected period as well as your billable utilization for the period. The time frame at the top-right of this screen defaults to **This Week to Date**, but you can change that to report on the current or past week, month, quarter, or year. Ruddr will remember the most recent view that you have specified and present that to you upon your next visit to the Personal Dashboard.
The bar chart on the personal dashboard shows hours broken down into four distinct categories. These time categories are:
* *Client Billable Hours* - billable hours worked on client projects
* *Client Non-Billable Hours* - non-billable hours worked on client projects
* *Internal Hours* - hours worked on non-billable internal projects
* *Time Off Hours* - hours for time off categories such as sick leave or vacation
These four categories are color-coded as such:
* **Green** for *Client Billable Hours*
* **Red** for *Client Non-Billable Hours*
* **Yellow** for *Internal Hours*
* **Blue** for *Time Off Hours*
You can hover your mouse over any segment of the graph to view the total hours represented by that segment (Figure 7). Clicking on any segment of the bar will take you to the Time Detail report and allow you to see the individual time entries that comprise that color of the bar.
Beneath the bar chart, your hours are summarized in two distinct ways. First, they are summarized by the four types described above. Secondly, they are summarized by their status, which can be **Not Submitted**, **Pending Approval**, **Rejected**, or **Approved**.
The next section of the personal dashboard shows additional metrics including allocation-related statistics and utilization metrics. The first three metrics displayed include:
* **Realization rate** - the percentage of the total hours that were billable in the period, or the amount of client billable hours in the period divided by total number of hours for the period.
* **Allocated hours** - the total number of allocation hours for the member in the period.
* **Variance** - the total variance from the allocated number of hours.
The utilization figures shown will be for the same period of time that was selected at the top-right of the screen. Ruddr shows four separate views of utilization (Figure 8) as described below:
**Utilization Capacity**: each member can have a [capacity period](/workspace-administration/member-profile#capacity-periods) set on their member profile. This capacity represents the days and hours that a member is available for work. Utilization capacity is the basis for utilization calculations and is determined by the difference between a member's capacity and any unpaid time off that has been taken in a period.
* **Billable utilization** - Billable utilization is the utilization metric that is most commonly used in the professional services industry. Billable utilization is calculated by taking the total billable hours in the time frame divided by the utilization capacity in the time frame.
* **Client utilization** - Client utilization considers all hours worked on client projects, not just billable hours. Client utilization is the billable and non-billable hours worked on client projects divided by the member's utilization capacity.
* **Productive utilization** - Productive Utilization considers all hours worked on client projects and any internal projects that are considered to be "productive". Internal projects have a **This internal project counts toward productive utilization** setting that, when checked, includes any hours logged to that project as part of this utilization calculation.
* **Total utilization** - Total utilization measures all worked hours, and only excludes time off hours. Total utilization includes all hours worked on client projects or on internal projects. Total utilization is calculated by dividing all hours worked by utilization capacity.
Just below each utilization section, there is an **Adjust for Time Off** setting (Figure 9). When utilization is adjusted for time off, any time recorded as **Time Off** (i.e. - vacation or sick leave), is removed from the capacity. This is useful because it shows the relative utilization excluding the time off.
**NOTE**: for members that have administrative rights, the Personal Dashboard includes a Member dropdown (Figure 10) in the same manner as exists on time and expense screens.
In order to view the Personal Dashboard of other members in the workspace, a member’s security role must have one of the three member-based time and expense administration rights. Those rights can include administration rights to all members of the workspace, all members of the member’s practice, or all members who are subordinate to the member.
### My Projects
The My Projects section (Figure 11) of the Home area shows all of the projects that are assigned to the workspace member. The member can click on any project to get to the project dashboard.
Please note that the My Projects section also includes a Member dropdown (Figure 10) similar to what is included on the Personal Dashboard. In order to view the projects of other members in the workspace, a member’s security role must have one of the three member-based time and expense administration rights. Those rights can include administration rights to all members of the workspace, all members of the member’s practice, or all members who are subordinate to the member.
### My Tasks
Similar to the My Projects section, the My Tasks section (Figure 12) shows all of the tasks that are assigned to the workspace member. The member can click on any task to open the Task Details drawer.
Please note that the My Tasks section also includes a Member dropdown (Figure 10) similar to what is included on the Personal Dashboard. In order to view the tasks of other members in the workspace, a member’s security role must have one of the three member-based time and expense administration rights. Those rights can include administration rights to all members of the workspace, all members of the member’s practice, or all members who are subordinate to the member.
### My Allocations
The My Allocations section (Figure 13) shows all of the resource allocations that have been made for the workspace member. This helps the member understand the current and future projects that the member will be working on.
# Your User Profile
Source: https://help.ruddr.io/getting-started/user-profile
Your user profile is where you manage your personal account settings in Ruddr — your name and photo, your password, two-factor authentication, and the applications you have connected to your account. To open it, click your avatar in the top-right corner of the screen (the **User Profile Menu**) and select **My Profile** (Figure 1).
The profile screen is organized into four sections, selectable from the menu on the left:
* [**My Profile**](#my-profile) — your name, email, photo, time zone, and formatting preferences.
* [**Change Password**](#change-password) — update the password you use to sign in.
* [**Two-factor Authentication**](#two-factor-authentication) — add a second layer of security to your account.
* [**Connected Apps**](#connected-apps) — review and revoke the applications you have authorized.
## My Profile
The **My Profile** screen (Figure 2) is where you manage your personal information and formatting preferences.
You can update the following:
* **Email** — the address you use to sign in and where Ruddr sends notifications. If you need to change it, please contact your workspace administrator.
* **Name** — the name shown throughout the workspace.
* **Time Zone** — used to evaluate your time entries per day and to time notifications, so it is important that each member set the correct time zone. If you do not set one, your workspace's time zone is used.
* **Time Format** — choose whether hours display in clock format (**1:30**) or decimal format (**1.5**). If you do not set one, the workspace setting is used.
* **Regional Format** — sets how dates, times, numbers, currencies, and percentages are displayed, following the standard for your country or region.
* **Show new features upon login** — check this to receive a summary of new Ruddr features each time you log in.
* **Photo** — upload a photo to personalize your account.
Click **Update profile** to save your changes.
Whether you can edit your own name and photo depends on a workspace setting your administrator controls. Some workspaces manage member names and photos centrally — for example, to use official employee photos — in which case those fields are read-only here. See [General Workspace Settings](/workspace-administration/general-workspace-settings) for more.
## Change Password
To change the password you use to sign in, select **Change Password** from the menu on the left (Figure 3). Enter your **Current Password**, then your **New Password**, and repeat the new password to confirm it. Your new password must be at least 8 characters long. Click **Update password** to save it.
If you have forgotten your current password, click the **I forgot my password** link to reset it by email instead.
## Two-factor Authentication
Two-factor authentication (2FA) adds an additional layer of security to your account by requiring more than just a password to sign in. Ruddr supports two methods:
* A third-party authenticator app on your phone (such as 1Password, Authy, Google Authenticator, LastPass Authenticator, or Microsoft Authenticator), or
* SMS (text message).
To set it up, select **Two-factor Authentication** from the menu on the left and click **Enable Two-factor Authentication** (Figure 4).
### Using an Authenticator App
In the first step of the wizard, ensure **Set up using an app** is selected and click **Continue** (Figure 5).
Scan the QR code shown on your screen with the authenticator app on your phone (Figure 6). If you cannot scan a QR code, click **enter this text code** to reveal a code you can type into the app instead. Your app will then display a 6-digit code — enter it in the box provided to verify the connection.
Once verified, Ruddr displays a set of recovery codes (Figure 7). If you lose access to your phone, you can use a recovery code to sign in. Copy these codes to a secure location — a password manager, for example, and not your phone — then check **I have saved my recovery codes** and click **Continue**.
A confirmation lets you know that two-factor authentication is now active (Figure 8). Click **Done** to finish.
### Using SMS
To receive codes by text message, select **Set up using SMS** in the first step and click **Continue**. Specify the country code and phone number where Ruddr should send your codes, then click **Send Authentication Code** (Figure 9). Enter the code you receive to verify the number.
As with the app method, Ruddr then presents a set of recovery codes. Save them to a secure location, check **I have saved my recovery codes**, and click **Continue** to finish.
### Changing or Disabling Two-factor Authentication
Once 2FA is enabled, the **Two-factor Authentication** screen shows your current status and method (Figure 10). From here you can select **(Change)** to switch methods, or click **Disable Two-factor Authentication** to turn it off. Disabling two-factor authentication removes your configured method and recovery codes, and you will no longer be prompted for a code when signing in.
## Connected Apps
The **Connected Apps** screen (Figure 11) lists the applications you have authorized to use Ruddr as you — such as an AI app like Claude or ChatGPT (see [Connect AI Apps to Ruddr](/integrations/ai-connectors-overview)). Each connected application can only see and change the data your [security role](/workspace-administration/security-roles) already allows, so it can never reach anything you could not open yourself.
For each application, you can see:
* **Application** — the name of the connected application.
* **Access** — what the application is allowed to do on your behalf.
* **Connected** — when you authorized the application.
* **Last Used** — when the application last used the connection. This is a good way to spot a connection you no longer need.
To remove a connection, click the **Disconnect** icon at the end of its row and confirm. Disconnecting revokes the application's access immediately — its next request to Ruddr will fail, and it would have to be authorized again to reconnect.
You connect a new application from the application itself, not from this screen. For details on connecting AI applications, see [Connect AI Apps to Ruddr](/integrations/ai-connectors-overview).
# Workspaces
Source: https://help.ruddr.io/getting-started/workspaces
Understand how Ruddr workspaces work and how to join, create, and switch between multiple workspaces.
A workspace is an instance of Ruddr that contains members, clients, projects, time, expenses, and so forth. Anything a user does in Ruddr happens within the context of a workspace. You can create a new workspace by signing up for Ruddr, or join an existing workspace when a Workspace Admin invites you.
You can be a member of multiple workspaces at the same time. You might be a member of your company's workspace but then also maintain a personal workspace for your freelance work. You can quickly switch between workspaces to manage your tasks, time, expenses, etc. The information you create in one workspace is never visible in any other workspace.
**Join a workspace**
To join an existing Ruddr workspace, a Workspace Admin will need to invite you from the **Members** section of the **Settings** area (Figure 1). From there, the Workspace Admin can click the **+** (**New Member**) button, fill in your details, and check **Send an email invitation to this member now** to invite you into the workspace. See [Accepting Workspace Invitations](/getting-started/accepting-workspace-invitations) for what happens next.
**Create a workspace**
To create a new workspace, click the **Start Trial** button on the [www.ruddr.io](https://www.ruddr.io) website and submit a new workspace request. Once our team validates your request, you will receive an email with a link to finalize your workspace. See [Signing Up for Ruddr](/getting-started/signing-up-for-ruddr) for the full process.
When you finalize your workspace, you provide a company name, type of professional service, workspace name, and a unique Workspace URL ID. Ruddr suggests a workspace name and Workspace URL ID based on your company name. While your workspace name does not have to be unique, you cannot choose a Workspace URL ID that is already in use.
Ruddr asks for the professional services type in order to create default values for various types of data entities (such as project types) within the workspace. You can always change this data once your workspace is created.
**Switch workspaces**
If you are a member of multiple workspaces, you can switch between them from the user profile menu (Figure 2). Click your avatar at the top-right of the screen, then click the current workspace below **My Profile** to see a list of your other workspaces. Click any workspace to switch to it. To log in to a workspace that isn't listed, click **Log in to Another Workspace**.
# Connect ChatGPT and Codex to Ruddr
Source: https://help.ruddr.io/integrations/ai-connectors-chatgpt-setup
Add Ruddr to ChatGPT, to a ChatGPT Business or Enterprise workspace, or to the Codex CLI, desktop app, and IDE extension.
**NOTE:** The Ruddr Assistant [feature](/workspace-administration/features) must be enabled in workspace settings in order for this to be available in your workspace.
OpenAI's tools reach outside services through MCP servers. Each one asks for the Ruddr server address:
```text theme={null}
https://www.ruddr.io/api/mcp
```
You are never asked for a password, an API key, or a token. Whichever tool you use, Ruddr asks you to sign in and approve the connection at the end — see [Connecting an Application](/integrations/ai-connectors-overview#connecting-an-application).
OpenAI's settings and menu labels change from time to time, so treat OpenAI's own [MCP documentation](https://learn.chatgpt.com/docs/extend/mcp) as the authority on the screens themselves — what follows is what to enter when you get there.
In ChatGPT itself, Ruddr is added from one of two places depending on your plan. Both open the same form, and you enter the same values in each.
#### Adding Ruddr to Your Own ChatGPT Account
On an individual account, Ruddr is added as a custom plugin. This requires **developer mode**, which you turn on in **Settings > Security and login**. Then go to **Settings > Plugins**, click **+**, and fill in the **New Plugin** dialog (Figure 1). OpenAI's [Connect and test your plugin](https://developers.openai.com/plugins/deploy/connect-chatgpt) covers these screens. On an individual account Ruddr connects for reading only; creating and updating records requires a Business, Enterprise, or Edu workspace.
#### Adding Ruddr to a ChatGPT Business or Enterprise Workspace
In a Business, Enterprise, or Edu workspace, Ruddr is added as a custom app by an admin or owner, not by individual members. This also requires **developer mode**, which an admin turns on in **Workspace settings > Permissions & roles**, under **Connected Data**. The admin then goes to **Workspace settings > Apps**, clicks **+ Create**, and fills in the **New App** dialog (Figure 2), which asks for the same values as the plugin form above.
This is a beta feature in ChatGPT and its screens change as OpenAI iterates, so follow their current instructions in [Developer mode and MCP apps in ChatGPT](https://help.openai.com/en/articles/12584461-developer-mode-and-mcp-apps-in-chatgpt) for the steps themselves. Three things are worth knowing before you start:
* **Which plans.** Full MCP support, including the ability to create and update records, is available on ChatGPT Business, Enterprise, and Edu, on the web only — not on mobile.
* **What publishing does and does not do.** After the app is created it appears as a draft, and an admin publishes it to the workspace from **Workspace settings > Apps > Drafts**. Published apps appear in members' **Apps** settings labeled **Custom**. Publishing gives nobody access to Ruddr data. Each member still connects Ruddr, signs in, and approves it individually, and then sees only what their own [security role](/workspace-administration/security-roles) allows.
* **Updates are not automatic.** ChatGPT freezes the list of Ruddr tools at the moment you publish. When Ruddr adds new capabilities, an admin has to refresh the app's actions in workspace settings before members can use them. Ruddr reorganized its tools in September 2026, so an app published before then should have its actions refreshed — see [How a Connected App Reaches Your Data](/integrations/ai-connectors-overview#how-a-connected-app-reaches-your-data). Until an admin does, the app keeps working as it did.
#### What to Enter
| Field | What to enter |
| - | - |
| **Icon** | Optional. [Download the Ruddr icon](/images/ai-connectors-setup-icon.png) and upload it. ChatGPT accepts PNG files up to 10 KB and suggests 256x256 or larger; the Ruddr icon is within both. |
| **Name** | `Ruddr` |
| **Description** | Optional. Something like `Clients, projects, time, expenses, invoices, and reports from your Ruddr workspace`. |
| **Connection** | Choose **Server URL** rather than **Tunnel**, and enter the Ruddr server address above. |
| **Authentication** | **OAuth**. |
| **Advanced OAuth settings** | Leave these alone. Once the server address is in they read *Review discovered OAuth settings, or enter them manually, then choose a client setup method and configure default scopes* — but Ruddr publishes its own sign-in settings for ChatGPT to discover, so there is no client ID, secret, or scope for you to enter. |
Tick **I understand and want to continue**, then click **Create**. When you connect, ChatGPT sends you to Ruddr to sign in and approve the connection and then returns you to ChatGPT. You are never asked for a password, an API key, or a token — see [Connecting an Application](/integrations/ai-connectors-overview#connecting-an-application) for what that approval screen is asking.
#### About the Risk Warning
Both forms show the warning *Custom MCP servers introduce risk*, along with a note that OpenAI has not reviewed the server. This is OpenAI's standard notice for any MCP server it has not reviewed itself, not a judgment about Ruddr, and it appears no matter which server you add.
The Ruddr server acts as you. It returns only what your own [security role](/workspace-administration/security-roles) allows, so it cannot expose anything you could not already open in Ruddr. ChatGPT identifies itself to Ruddr using OAuth rather than a shared password or key, you approve the connection in Ruddr yourself, and you can revoke it whenever you like from your [Connected Apps](/getting-started/user-profile#connected-apps) page.
#### Codex CLI
Add Ruddr and then sign in, from a terminal:
```bash theme={null}
codex mcp add ruddr --url https://www.ruddr.io/api/mcp
```
```bash theme={null}
codex mcp login ruddr
```
The login command sends you to Ruddr to approve the connection. If you are working over SSH or on a machine with no browser, Codex may show you a short code instead — enter it at [**www.ruddr.io/device**](http://www.ruddr.io/device), as described in [Connecting a Device or Terminal](/integrations/ai-connectors-overview#connecting-a-device-or-terminal).
To confirm the connection, run `codex mcp list`. To remove it, run `codex mcp remove ruddr`.
#### Codex Desktop App and IDE Extension
In the desktop app, open **Settings** and select **MCP servers**. In the IDE extension, open the gear menu and select **MCP servers**. From there the steps are the same:
1. Select **Add server**.
2. Enter `Ruddr` as the name, choose **Streamable HTTP**, and enter the Ruddr server address as the URL.
3. Save the server, then select **Restart** — or **Restart extension** in the IDE.
4. Ruddr appears in the server list marked as needing authentication. Click **Authenticate** and approve the connection in Ruddr.
#### What a Connected Application Can See
A connected application acts as you. It can only read and change what your [security role](/workspace-administration/security-roles) already allows, so it can never reach data you could not open yourself in Ruddr. Anything it records is attributed to you, with the application shown as the source in the entry's history.
To review or revoke a connection, use the [Connected Apps](/getting-started/user-profile#connected-apps) page in your Ruddr profile.
# Connect Claude to Ruddr
Source: https://help.ruddr.io/integrations/ai-connectors-claude-setup
Add Ruddr to the Claude desktop and web apps, to Claude Code, or to your whole Claude organization.
**NOTE:** The Ruddr Assistant [feature](/workspace-administration/features) must be enabled in workspace settings in order for this to be available in your workspace.
Claude reaches outside services through **connectors**. Ruddr is listed in Claude's connector directory, so on most plans it is added with a single click.
Who adds it depends on your Claude plan:
* **Free, Pro, and Max** — you add Ruddr yourself.
* **Team and Enterprise** — an organization owner or admin enables Ruddr once, and it then appears for every member to connect.
Claude Code is separate from all of this and is covered [further down](#claude-code).
#### Adding Ruddr from the Connector Directory
This is the route on a Free, Pro, or Max plan, and for a Team or Enterprise member whose admin has already enabled Ruddr.
1. Go to **Customize > Connectors** in Claude.
2. Choose **Discover**.
3. Find **Ruddr**, either by searching for it or by browsing the **Productivity** category.
4. Open it and click **Connect to Claude** (Figure 1).
Claude then sends you to Ruddr to sign in and approve the connection, which is covered under [Connecting](#connecting) below. Once you approve, the page shows **Connected** (Figure 2).
Ruddr carries a **Community** badge in the directory. That means Anthropic reviewed the connector automatically but does not verify it; Ruddr publishes and maintains it.
#### Enabling Ruddr for a Team or Enterprise Organization
Members of a Team or Enterprise organization cannot connect Ruddr until an owner or admin enables it for the organization. The owner goes to **Customize > Connectors**, chooses **Discover**, opens **Ruddr**, and clicks **Connect for your team** (Figure 3).
Enabling Ruddr is a one-time setup in Claude and does not give anyone access to Ruddr data on its own. Ruddr then appears under **Customize > Connectors** for every member, each of whom connects with their own Ruddr sign-in.
#### Adding Ruddr as a Custom Connector
Use this route if Ruddr does not appear in the directory for your organization or region, or if your admin would rather manage it as a custom connector. Both routes reach the same server and behave identically. You enter the Ruddr server address yourself:
```text theme={null}
https://www.ruddr.io/api/mcp
```
Claude's settings change from time to time, so treat Anthropic's own [Get started with custom connectors using remote MCP](https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp) article as the authority on the screens themselves — what follows is what to enter when you get there.
##### On a Free, Pro, or Max Plan
1. Go to **Customize > Connectors** in Claude.
2. Click **+**, then **Add custom connector**.
3. Enter `Ruddr` as the name and the Ruddr server address as the URL.
4. Leave the authentication settings as Claude detects them. Ruddr publishes its own sign-in requirements, so there is no OAuth client ID or secret for you to create.
5. Click **Add**.
A Free plan is limited to one custom connector in total.
##### For a Team or Enterprise Organization
An owner does this once for the whole organization. Individual members cannot add custom connectors themselves.
1. Go to **Organization settings > Connectors** in Claude.
2. Select **Add**, then **Custom**. If Claude asks for the connector type, choose **Web**.
3. Enter `Ruddr` as the name and the Ruddr server address as the URL.
4. Leave the authentication settings as Claude detects them. If you are asked how Claude should identify itself, **Use Anthropic's hosted client metadata** is the option Ruddr supports and the one to choose.
5. Click **Add**.
Ruddr then appears in your organization's connector list, labeled **Custom**. Removing it there takes it away from everyone.
#### Connecting
However the connector was added, each member connects individually. Go to **Customize > Connectors**, find **Ruddr**, and click **Connect**. Claude sends you to Ruddr to sign in and approve the connection — see [Connecting an Application](/integrations/ai-connectors-overview#connecting-an-application) for what that screen is asking.
A member can only connect if they have the Ruddr Assistant enabled on their [member profile](/workspace-administration/member-profile), and once connected they see exactly the data their [security role](/workspace-administration/security-roles) allows. Members of your Claude organization who are not members of your Ruddr workspace cannot connect at all.
#### Using Ruddr in a Conversation
Connectors are turned on per conversation. Click the **+** button in the chat, choose **Connectors**, and switch **Ruddr** on. Claude will then use it when your question calls for it — asking about a client's budget, this week's hours, or an unbilled balance, for example.
#### Claude Code
Claude Code runs in your terminal and is configured with two commands rather than through the connector settings. For anything about Claude Code itself, see Anthropic's own [MCP documentation for Claude Code](https://code.claude.com/docs/en/mcp).
Add the Ruddr server:
```bash theme={null}
claude mcp add --transport http --scope user ruddr https://www.ruddr.io/api/mcp
```
`--scope user` makes Ruddr available in every project you work on. Leave it off if you only want Ruddr in the project folder you are currently in.
Then start Claude Code and run the `/mcp` command, select **ruddr**, and choose the authenticate option. Claude Code opens your browser, where you sign in to Ruddr and approve the connection.
If you are working over SSH or on a machine with no browser, authenticate from the command line instead:
```bash theme={null}
claude mcp login ruddr --no-browser
```
Claude Code prints an authorization link rather than opening one. Open it on a device where you can sign in to Ruddr, approve the connection, and paste the address you land on back into the terminal when prompted.
To confirm Ruddr is configured and reachable, run `claude mcp list`. To remove it, run `claude mcp remove ruddr`.
#### Removing the Connection
Removing the connector, or running `claude mcp remove`, stops Claude from using Ruddr. The authorization itself lives in Ruddr, so to revoke it there as well, delete the connection from your [Connected Apps](/getting-started/user-profile#connected-apps) page.
# Connect Microsoft 365 Copilot to Ruddr
Source: https://help.ruddr.io/integrations/ai-connectors-microsoft-copilot-setup
Add Ruddr to Microsoft 365 Copilot for your organization, so every member can ask Copilot about their Ruddr work.
**NOTE:** The Ruddr Assistant [feature](/workspace-administration/features) must be enabled in workspace settings in order for this to be available in your workspace.
Ruddr is available as an app in Microsoft Marketplace. A Microsoft 365 administrator installs it once for the whole organization, and each member then connects their own Ruddr account from Copilot. Installing the app gives nobody access to Ruddr data on its own.
Each member who uses Ruddr in Copilot needs a Microsoft 365 Copilot license. Microsoft makes MCP connectors available only with that license, so members who have Copilot Chat without it do not see Ruddr.
If your organization prefers to set up the connection itself, you can create a custom connector instead, as described in [Creating a Custom Connector](#creating-a-custom-connector).
#### Installing Ruddr from Microsoft Marketplace
1. Sign in to Microsoft 365 as an administrator, open the [Ruddr listing in Microsoft Marketplace](https://marketplace.microsoft.com/en-us/product/WA200012456), and select **Get it now** (Figure 1).
2. Confirm your details and select **Get it now** in the dialog (Figure 2). Marketplace takes you to **Settings > Integrated apps** in the Microsoft 365 admin center, where the **Deploy New App** panel opens with Ruddr in it.
3. Select **Next**, then choose who gets Ruddr under **Assign users**: **Just me**, **All users**, or **Specific users or groups** (Figure 3). Start with a few users if you want to try it before rolling it out to everyone.
4. Select **Next**, review the settings, and select **Finish deployment**. The panel reports **Deployment completed** (Figure 4).
Ruddr then appears in Copilot for the users you assigned. It can take a few minutes to show up.
#### Connecting
Each member connects once for themselves, from a Copilot chat on the web, in Teams or in Outlook.
1. Select the **+** (Add content) button in the message box, then **Change data sources**.
2. Find **Ruddr** in the **Select sources** dialog and select **Connect** (Figure 5).
3. In the **Connect Ruddr** dialog, select **Continue to Ruddr** (Figure 6).
4. Sign in to Ruddr if asked, choose the workspace to connect, and select **Authorize** on Ruddr's consent page (Figure 7). See [Connecting an Application](/integrations/ai-connectors-overview#connecting-an-application) for what it is asking.
The popup closes, Copilot confirms that Ruddr is now connected, and the Ruddr row shows a toggle, switched on (Figure 8). The member can now ask questions like "Using Ruddr, list my projects" and get answers from your workspace, and log time by asking Copilot to do it.
From then on, Copilot acts as that member. A member can only connect if they have the Ruddr Assistant enabled on their [member profile](/workspace-administration/member-profile), and once connected they see exactly the data their [security role](/workspace-administration/security-roles) allows. Members of your Microsoft 365 organization who are not members of your Ruddr workspace cannot connect at all.
In the first few minutes after Ruddr is deployed or a connector is created, **Connect** can fail with "Something went wrong while connecting the source". Wait a little and try again from the same sources menu.
If Ruddr's consent page says that an application can only be connected by a member signed in to Ruddr directly, the browser is in a Ruddr administrator's impersonation session. Sign out, sign in to Ruddr as yourself, and connect again.
If your organization ends up with more than one Ruddr entry, a member can check which connector answered. Type `-developer on` in the chat, ask the question again, and open **Agent debug info** — **Executed actions** lists each call with the connector's id.
#### Creating a Custom Connector
Instead of installing the Marketplace app, an administrator can add Ruddr to Copilot as a custom MCP connector, using the Ruddr server address:
```text theme={null}
https://www.ruddr.io/api/mcp
```
A custom connector shows a generic **RU** icon in Copilot instead of the Ruddr logo, because Microsoft does not let you upload an icon for one. Members connect to it the same way, as described in [Connecting](#connecting).
Do the setup signed in to Microsoft 365 as the account that created your Microsoft 365 organization. When an administrator added to the organization later runs it, **Authorize** can fail with "Something went wrong. Please try again." even with the Global Administrator role, while the same steps work for the original account.
Setup has three parts, in this order: register Ruddr as an OAuth client to get a client ID and secret, use those to create an OAuth client registration in the Teams Developer Portal, and then create the connector in the Microsoft 365 admin center.
Microsoft's settings and menu labels change from time to time, so treat Microsoft's own documentation as the authority on the screens themselves — what follows is what to enter when you get there.
##### Registering Ruddr as an OAuth Client
Copilot asks for an OAuth client ID and secret of your own, so you register one for your organization. Ruddr has no screen for this. Run the following command once, from any terminal.
Claude and ChatGPT register themselves with Ruddr automatically when you add Ruddr, through a standard called dynamic client registration. Microsoft 365 Copilot does not support it yet, which is why this one-time command is needed. Once Microsoft adds support, this step and the Developer Portal registration below will no longer be necessary.
```bash theme={null}
curl -s -X POST https://www.ruddr.io/api/oauth/register -H 'Content-Type: application/json' -d '{"client_name":"Microsoft 365 Copilot","redirect_uris":["https://teams.microsoft.com/api/platform/v1.0/oAuthRedirect"],"grant_types":["authorization_code","refresh_token"],"token_endpoint_auth_method":"client_secret_post","scope":"mcp:read mcp:write"}'
```
The response contains a `client_id` and a `client_secret`. The secret is shown this one time only, so copy both somewhere safe before you close the terminal — you will need them in the next step.
**NOTE:** The `mcp:write` scope lets members log time and open support tickets from Copilot. To keep Copilot to answering questions, use `mcp:read` alone here and in the registration below.
##### Creating the OAuth Client Registration
The client ID and secret do not go into Copilot directly. They go into an OAuth client registration in the Teams Developer Portal, which hands back a registration ID that Copilot asks for as the **Reference ID**.
1. Go to the [Developer Portal's OAuth client registration tool](https://dev.teams.microsoft.com/tools/oauth-configuration) and select **Register client**.
2. Enter a **Registration name** — `Ruddr` is a good choice — and `https://www.ruddr.io` as the **Base URL**.
3. Set **Restrict usage by org** to **My organization only**, and **Restrict usage by app** to **Any Teams app**.
4. Enter the **Client ID** and **Client secret** from the previous step.
5. Enter `https://www.ruddr.io/api/oauth/authorize` as the **Authorization endpoint**, and `https://www.ruddr.io/api/oauth/token` as both the **Token endpoint** and the **Refresh endpoint**. Ruddr uses the same address for the last two.
6. Enter `mcp:read mcp:write` as the **Scope**, with a space between the two, matching the scope you registered in the previous step.
7. Turn on the **Enable Proof Key for Code Exchange (PKCE)** switch, and leave **Client password authentication method** on **Request body parameters (default)**.
8. Save the registration (Figure 9).
Saving generates the OAuth client registration ID. Copy it — that is the Reference ID you enter in the admin center. It is not a secret, unlike the client secret above.
**NOTE:** Ruddr requires PKCE, and Copilot takes its copy of the registration at the moment the connector is created. Turn PKCE on and save before you create the connector. If it is off, **Authorize** fails on a Microsoft error page reporting error `invalid_request`, with `The code_challenge parameter is required` in the address bar, and turning it on afterwards is not picked up right away — Microsoft says changes take up to 15 minutes.
Microsoft documents this form in [Configure OAuth in Developer Portal](https://learn.microsoft.com/en-us/microsoftteams/platform/messaging-extensions/api-based-oauth#configure-oauth-in-developer-portal).
##### Creating the Connector in the Microsoft 365 Admin Center
1. In the Microsoft 365 admin center, go to **Copilot > Connectors** and open the **Gallery** tab.
2. Under **Created by your org**, select the **Create a new connector** tile (Figure 10), then select **Add**.
3. In the **Custom connector** dialog, under **Connect to MCP server**, select **Add**.
The **Connect to MCP server** panel collects the rest.
1. Enter `Ruddr` as the **Display name**, and a short **Description** — the description is required.
2. Enter the Ruddr server address as the **MCP endpoint URL**.
3. Enter `Ruddr` as the **Developer name**, `https://www.ruddr.com` as the **Website URL**, `https://www.ruddr.com/privacy-policy` as the **Privacy policy URL**, and `https://www.ruddr.com/master-subscription-agreement` as the **Terms of use URL**.
4. Choose **OAuth 2.0** as the **Authentication type**. **None** would leave the server unauthenticated, and **Entra SSO** does not apply, because Ruddr is not protected by Microsoft Entra.
5. Paste the OAuth client registration ID into the **Reference ID** field, which appears once OAuth 2.0 is chosen, and select **Authorize** beneath it (Figure 11).
6. Approve the connection in the popup that opens (Figure 12). The popup closes on success and a green check appears beside the Reference ID.
7. Tick the **Notice** checkbox to consent to Microsoft's connector terms, then select **Create**. A **Success** screen reports "Created connection" and "Linking data source".
Microsoft says the connection is ready to use in Copilot within about 30 minutes. You can also roll it out in stages, to selected users or groups first rather than to everyone at once.
To check on it, open **Copilot > Connectors > Your Connections** and select **Ruddr**. Its **Status** reads **Ready** once it is set up (Figure 13).
Members then connect as described in [Connecting](#connecting).
#### Removing the Connection
To remove the Marketplace app, an administrator opens **Settings > Integrated apps** in the admin center, selects **Ruddr**, and removes it. A custom connector is removed from **Copilot > Connectors** instead, though the admin center's list of MCP connections does not always show custom connectors. Either way, the authorization itself lives in Ruddr, so the reliable per-member cut-off is for the member to delete the connection from their [Connected Apps](/integrations/ai-connectors-overview#managing-your-connected-apps) page.
# Connect AI Apps to Ruddr
Source: https://help.ruddr.io/integrations/ai-connectors-overview
Connect Claude, ChatGPT, and other AI applications to your Ruddr workspace so they can access data, answer questions, and provide analysis.
**NOTE**: The Ruddr Assistant [feature](/workspace-administration/features) must be enabled in workspace settings in order to connect AI applications to Ruddr.
The [Ruddr Assistant](/getting-started/ruddr-assistant) answers questions inside Ruddr. You can also connect an outside AI application — such as Claude or ChatGPT — directly to your workspace, and ask it the same kinds of questions. A connected application can look up your projects, time, expenses, budgets, billing, and pipeline, and can record time on your behalf.
Connections use MCP (Model Context Protocol), an open standard that AI applications use to reach outside data. Any application that supports MCP can connect to Ruddr.
#### Connected App Permissions
A connected application acts as you. It can only see and change data that your [security role](/workspace-administration/security-roles) allows, so it can never retrieve data you could not access within Ruddr.
Each member must connect their own AI applications to the Ruddr MCP server. In order to do this, the Ruddr Assistant [feature](/workspace-administration/features) must be enabled for the workspace and enabled on the [member's profile](/workspace-administration/member-profile). Turning either setting off also ends the connections that member has already made.
#### Setting Up Your Application
Claude lists Ruddr in its own connector directory and adds it with a single click, while other applications, such as ChatGPT, add Ruddr as a custom connector and ask for the address of the service you want to connect. For Ruddr, that address is:
```text theme={null}
https://www.ruddr.io/api/mcp
```
You are never asked for a password, an API key, or a token. If an application asks you for one to connect to Ruddr, stop and check what you are actually connecting to.
If the application asks for an icon or logo, [download the Ruddr icon](/images/ai-connectors-setup-icon.png), a 256x256 PNG with a transparent background.
Follow the article for the application you use:
* [Connect Claude to Ruddr](/integrations/ai-connectors-claude-setup) — the Claude desktop and web apps, Claude Code, and Claude Team and Enterprise organizations.
* [Connect ChatGPT and Codex to Ruddr](/integrations/ai-connectors-chatgpt-setup) — ChatGPT Business and Enterprise workspaces, and the Codex CLI, desktop app, and IDE extension.
Each of those articles covers what to enter on the Ruddr side and links to Anthropic's or OpenAI's own documentation for the application's screens, which change more often than Ruddr's do.
#### Connecting an Application
Once you add that address, the application will send you to Ruddr to approve the connection (Figure 1).
The approval screen tells you four things:
* **Which application is asking.** The name comes from the application itself and has not been verified by Ruddr, so only continue if you just started this from an application you recognize.
* **Which workspace it will connect to.** If you belong to more than one workspace, choose the one you want. Only workspaces with the Ruddr Assistant enabled are listed.
* **What it will be able to do.** The application decides what to ask for, and you either approve all of it or cancel. See [What a Connected App Can Do](#what-a-connected-app-can-do) below.
* **Where you will be sent afterward.** Check that you recognize the address, then tick **I recognize and trust this address**. The **Authorize** button stays disabled until you do.
Clicking **Authorize** completes the connection and returns you to the application, which can start asking Ruddr questions right away.
#### Connecting a Device or Terminal
Some applications cannot open a browser for you — a tool running over SSH, or one on a machine with no browser at all. Those show you a short code instead and ask you to enter it somewhere you can browse.
Go to [**www.ruddr.io/device**](http://www.ruddr.io/device) on any device where you can sign in to Ruddr, and enter the code exactly as the application displayed it (Figure 2).
Clicking **Continue** brings up the same decision as the approval screen (Figure 3): which application is asking, which workspace it will connect to, and what it will be able to do. There is no redirect address to check, because the application is not sending you anywhere — it is waiting for your answer.
Click **Authorize** and you can go back to the application, which picks up the connection on its own within a few seconds. The code expires after fifteen minutes; if it does, start the connection again in the application to get a fresh one.
#### What a Connected App Can Do
An application asks for one or both of the following:
* **Read your Ruddr data** — projects, time, expenses, billing, and reporting.
* **Create and update Ruddr records on your behalf** — such as tracking time.
These are requested by the application, not chosen by you, so an application that asks to create records is approved with that ability or not connected at all. Either way your security role still applies on every request.
Anything a connected application records is attributed to you, and shows the application as its source in the entry's history.
#### How a Connected App Reaches Your Data
Ruddr does not hand a connected application a list of every report and record type it could ask for. It offers two tools — one for reading your data and one for making changes — and the application works through them in three steps:
* **Search** for the kind of data the question needs, such as time entries, invoices, or project budgets.
* **Load** what it found, to learn which filters, groupings, and date ranges that data accepts.
* **Run** it and read the result.
Most AI applications limit how many tools a connection may offer, and start choosing badly between them well before that limit. Ruddr covers a lot of ground, so routing everything through two tools keeps the connection comfortably inside those limits and gives every request the same shape, whichever application you connect.
The application does all of this on its own. You just ask in plain language — "how many hours did we bill Acme in August?" — and it works out which Ruddr data to search for and how to ask for it.
#### Managing Your Connected Apps
Every application you have authorized is listed under **Connected Apps** in your Ruddr profile (Figure 4), where you can see what each one is allowed to do, when you connected it, and when it last used the connection — and disconnect any you no longer need. See [Connected Apps](/getting-started/user-profile#connected-apps) for the full details.
#### If the Connection Is Refused
A few things will stop the approval screen from completing:
* **No workspace is listed.** The Ruddr Assistant is not enabled for you in any workspace. Ask a workspace admin to turn on the [feature](/workspace-administration/features) and the **Ruddr Assistant enabled** setting on your [member profile](/workspace-administration/member-profile), then connect again.
* **You are being impersonated.** An application can only be connected by a member signed in to Ruddr directly, not by an administrator viewing the workspace as you. Sign in yourself and try again.
* **The connection stops working later.** Turning off either the workspace feature or your **Ruddr Assistant enabled** setting ends existing connections as well as new ones.
# BambooHR Integration Overview
Source: https://help.ruddr.io/integrations/bamboohr-integration-overview
Learn how Ruddr's BambooHR integration creates and manages workspace members and syncs approved time off from BambooHR into Ruddr.
BambooHR is a commonly-used Human Resources platform that provides employee-management capabilities to businesses. These capabilities include:
* Applicant Tracking
* Employee Onboarding
* Payroll Management
* Performance Management
* Time Off Management
* Employee Offboarding
To learn more about the features of BambooHR, visit [https://www.bamboohr.com/tour](https://www.bamboohr.com/tour/).
### Key Integration Benefits
The Ruddr integration for BambooHR provides an enriched, member-management experience for Ruddr Workspace Admins. From creating new members to synching approved time off, Ruddr's integration with BambooHR facilitates member and time management between the two systems.
#### Automatically Create New Members in Ruddr
The BambooHR integration can be configured to create a new member in the Ruddr workspace when an employee is added to BambooHR. Additionally, Workspace Admins can configure the integration to:
* Automatically invite the new Ruddr member to the workspace
* Automatically set the new Ruddr member as billable
#### Manage Member Status via BambooHR
If configured, the integration can manage the Active / Inactive status of Ruddr members. If a BambooHR employee is deactivated, the integration will deactivate the member in Ruddr. If the employee is later reactivated in BambooHR, the integration will reactivate the member in the Ruddr workspace.
#### Manage Key Member Data Fields via BambooHR
If configured, the integration can manage key fields related Ruddr members:
* Name
* Job Title
* Manager
* Internal ID
#### Sync Approved Time Off Time Entries in Ruddr
BambooHR is often used for managing Paid Time Off ("PTO") and other types of time off. With the BambooHR integration configured, any approved time off entry in BambooHR will automatically sync to Ruddr. This includes both new time entries and updated time entries.
### Setting up the Integration
For step-by-step instructions on setting up the Ruddr integration for BambooHR, see the [BambooHR Integration Setup](/integrations/bamboohr-integration-setup) article.
# BambooHR Integration Setup
Source: https://help.ruddr.io/integrations/bamboohr-integration-setup
Install the BambooHR integration in Ruddr, authorize access, and configure member, time off, and sync settings.
Integrating BambooHR with Ruddr provides numerous benefits as outlined in the [BambooHR Integration Overview](/integrations/bamboohr-integration-overview) article. To install the BambooHR integration, simply follow the steps below. Note that you must be a Ruddr Workspace Admin to install integrations in Ruddr.
### Step 1: Find the Bamboo Integration
To get to the Integrations area of Ruddr, simply click on the **Settings** main nav bar option and then select the **Integrations** menu option (see [Integrations](/workspace-administration/integrations) for more information). The Integrations screen is separated into two sections which are Active Integrations and Available Integrations. If you have yet to set up the BambooHR integration, it will be listed in the Available Integrations section. Simply click on the **Install** button at the bottom of the integration widget (Figure 1).
### Step 2: Authorize the Integration
Being logged into BambooHR (having an active browser session) prior to beginning this process ensures a seamless experience with setting up the integration. Also, you will want to ensure that you are setting this integration up using a BambooHR user account with full access to all BambooHR users and time off policies.
Once you click on the **Install** button, you will be presented with a window (Figure 2) that will ask for your BambooHR **companydomain**.
### Step 3: Authorize Ruddr and BambooHR access
Once you enter your BambooHR domain, you will be directed to BambooHR to allow Ruddr to access the desired information. (Figure 3) You can customize in this screen the information you would like sent to Ruddr. Once complete, you can select Allow Access and now you are set up with OAuth.
### Step 4: Configure BambooHR Integration Settings
There are a number of BambooHR configuration settings in Ruddr, available from the Settings screen (Figure 4).
* [Member Settings](#member-settings)
* [Time Off Settings](#time-off-settings)
* [Sync Settings](#sync-settings)
This screen is immediately available after supplying the companydomain and API key, and is also accessible by clicking the **Settings** button on the BambooHR integration widget (Figure 5) once the integration is enabled.
The following sections will cover each of these groups of settings.
#### Member Settings
In the Member Settings section (Figure 6), you can specify how you want the integration to manage Ruddr workspace members and relevant member data fields.
Clicking the **Change Settings** button will open the Member Settings drawer (Figure 7).
The following Member Settings are available:
* **Invite Created Members** - by default, the integration is set to create new workspace members in Ruddr but not send invitations to those members. By toggling this setting to **On**, the integration will automatically send invitations to Ruddr members when they are created in BambooHR. Note that when members are created in Ruddr, their [Security Role](/workspace-administration/security-roles) is set to the default Security Role in the workspace.
* **Set Created Members to Billable** - by default, Ruddr members that are created by the BambooHR integration are set as non-billable workspace members in Ruddr. Changing this to **On** will configure all newly created Ruddr members as billable in your workspace.
* **Update Member Status** - This setting controls whether or not the integration will automatically update a Ruddr member's status (Active or Inactive) based on the employee status in BambooHR. If an employee in BambooHR is terminated, and this setting is set to **On**, the integration will automatically deactivate the member in the Ruddr workspace. Conversely, if an inactive employee in BambooHR is reactivated, or a new employee is created, the integration will set this member's workspace status to Active in Ruddr. By default, this setting is set to **Off**.
* **Update Member Active Dates** - enabling this setting will ensure that the BambooHR hire date and termination date will be used as the Ruddr member's active date and inactive date, respectively.
* **Update Member Name** - sync the employee name from BambooHR to Ruddr members.
* **Update Job Title** - this setting allows the integration to sync an employee's job title from BambooHR to Ruddr members. If the Job Title does not exist as a record in [Custom Data](/workspace-administration/custom-data), then Ruddr will create the Job Title record.
* **Update Manager** - if the email of the employee's manager maps to a Ruddr member, the manager will be set on the employee's member record.
* **Update Internal ID** - enabling this setting will sync the employee's BambooHR employee ID to the Internal ID field on the member profile in Ruddr.
* **Member Mapping** - This setting controls how the integration maps BambooHR employees to Ruddr members. Provided your workspace members use the same email address in both systems, you can leave this set to **Automatic**. Setting this to **Manual** requires you to manually map BambooHR employees to Ruddr members. The default setting is **Automatic**.
**NOTE**: In order for Ruddr to create a member, an email address must be found in BambooHR. There are multiple email values on an employee record in BambooHR; the email must be entered on the "Work Email" field in order to be used by Ruddr in creating a member.
When Ruddr is set to automatically map members with BambooHR, the Member Settings section (Figure 6) will present a **Preview Members** button. Clicking this button will open up the **Member Matching** drawer (Figure 8), which will display the Ruddr member and email address in the left column, and the BambooHR employee and email address in the right column. In this drawer, you will be able to see the following:
* Successfully mapped members
* Members found in Ruddr but not in BambooHR
* Members found in BambooHR but not in Ruddr
When automatic mapping is set, the integration will automatically create a Ruddr member when a BambooHR employee has no corresponding member in Ruddr.
When you select to manually set the Member Mapping, the Member Settings section will display an **Edit Mappings** button.
Clicking the **Edit Mappings** button will present you with a Member Matching drawer (Figure 9) that will allow you to map each member in Ruddr to the corresponding employee in BambooHR.
#### Time Off Settings
In the Time Off Settings section (Figure 10), you can specify how you want to manage time off time entries from BambooHR.
The following Time Off Settings are available:
* **Import Start Date** - Setting this date establishes the first date of time off requests that Ruddr will import from BambooHR. You may prefer to import time off time entries beginning on the date the integration is setup.
* **Time Off Type Mapping** - In Ruddr and BambooHR, you can specify the types of time off available to employees. For example, you may allow employees to enter Vacation, Sick Leave, or Holiday time. The integration allows for BambooHR time off types to be mapped to Ruddr time off types. Setting this to **Manual** will allow you to control the mappings between the two systems. The default setting is **Automatic**.
* **Create Time Off Types** - The default setting is **On**. In this case, the integration will map time off types between the two systems when the time off type name is identical. If no match is found, the time off type will be created in Ruddr and the time off entry will be imported. If this setting is switched to **Off** and the integration does not find a matching time off type, the time off entry will not be imported.
* **Update Time Off Notes** - Ruddr will sync any description associated with a time off request in BambooHR as Notes on the time entry that gets created. If you do not want these notes to be available on time entries in Ruddr, you can change this setting to **Off**.
When the integration is set to automatically map time off types with BambooHR, the Time Off Settings section (Figure 4) will present a **Preview Time Off Types** button. Clicking this button will open up the **Time Off Types Matching** drawer (Figure 11), which will display the Ruddr time off type in the left column and the BambooHR time off type in the right column. In this drawer, you will be able to see the following:
* Successfully mapped types
* Time off types found in Ruddr but not in BambooHR
* Time off types found in BambooHR but not in Ruddr
When you choose to manually set the Time Off Type Mapping, the Time Off Settings section (Figure 12) will display an **Edit Mappings** button, as shown below.
Clicking the **Edit Mappings** button will present a Time Off Type Matching drawer (Figure 13) that will allow you to map each time off type in BambooHR to any time off type in Ruddr.
Note that multiple BambooHR time off types can be mapped to a single Ruddr time off type. This allows you to consolidate multiple BambooHR time off types into a single Ruddr time off type. It also provides for a level of data privacy in that what might otherwise be sensitive time off information can be represented in Ruddr as any time off type you choose.
#### Sync Settings
The final step in the BambooHR integration setup is to configure the sync settings. To do this, click the **Change Settings** button in the Sync Settings section (Figure 14).
Clicking the **Change Settings** button will open the Sync Settings drawer (Figure 15). From this drawer, you first specify whether or not you want the sync process to run on an automatic schedule. Although the default setting is **Off**, you most likely will want this setting turned **On**. When turned on, Ruddr will sync with BambooHR on an hourly basis.
Next, you choose whether or not you want Members synchronized to Ruddr as part of this integration.
Finally, you specify whether or not you want approved time off requests in BambooHR synched to Ruddr time off entries.
Note that from the **Sync Settings** section (Figure 15), you can also initiate a manual sync by clicking on the **New Manual Sync** button.
At this point, your BambooHR integration is configured and ready to go. But, there are a couple of other areas of the BambooHR integration to point out.
### Imported Data
The Imported Data section (Figure 16) of the BambooHR integration settings shows statistics about the data that has been synchronized from BambooHR to Ruddr. This section also provides a mechanism to delete time off entries that have been synched from BambooHR.
Clicking the **Delete Time Off Entries** button will present a dialog (Figure 17), asking you to confirm that you want to delete time entries synched from BambooHR.
### Latest Sync Results / Sync Logs
At the bottom of the BambooHR integration settings screen, you will find a log of sync results (Figure 18) for both Manual and Automatic syncs. Clicking on a row in the log will display the details (Figure 19) regarding that synchronization. Viewing these logs can assist the Workspace Admin in evaluating the Ruddr records that have been created by the sync as well as information related to the Member mapping and the Time Off Type mapping.
# Cloud Storage Integration
Source: https://help.ruddr.io/integrations/cloud-storage-integration
Connect Ruddr projects to shared folders in Google Drive, OneDrive, SharePoint, Box, Dropbox, and other cloud storage providers for one-click file access.
You can connect any Ruddr project to a cloud folder from any of the major cloud storage providers.
Supported cloud storage providers include Google Drive, OneDrive, Microsoft Teams, SharePoint, Box, Dropbox, and more. These cloud storage platforms allow you to store, share, and collaborate on files and folders from any mobile device, tablet, or computer.
### Key Integration Benefit**s**
The Ruddr integration for these cloud storage provides allows you to associate a cloud folder with each project in Ruddr. This provides your team with simple one-click access to all of the important files related to the project. This could include the contract, deliverables, design artifacts, status reports, background materials, and the like.
### Cloud Storage Setup
The cloud storage integration for Ruddr is enabled by default and you do not need to install it. You simply need to copy the URL of the shared folder into the **Cloud Folder** field in the **Overview** section of the project's [**Settings**](/projects/project-settings) tab (for more information on Ruddr projects, visit the [Projects section](/projects/project-list) in the help center).
Once the folder URL has been added to Ruddr for a given project, the Overview tab of the Project Dashboard will show a cloud storage logo within the information pane on the right side of the screen (Figure 2). The logo will match the cloud storage provider that you are using. Clicking on this logo will open up a new browser tab that will contain the contents of the shared cloud folder.
# Expensify Integration Overview
Source: https://help.ruddr.io/integrations/expensify-integration-overview
Import expenses from Expensify into Ruddr to track accurate project costs and margins and bill expenses back to clients.
Expensify is a software product that provides expense management capabilities to businesses and consumers. In addition to the core expense management capabilities, Expensify provides the following benefits:
* **One-click receipt scanning** - Snap a photo of your receipt and Expensify will automatically capture all the details in an expense report.
* **Credit Card Import** - Import your personal and business card transactions for automatic receipt merging and coding.
* **Multi-Level Approval Workflows** - Create approval workflows to fit your company’s structure and customize your expense policy rules to flag expenses that need a manager’s review.
* **Corporate Card Reconciliation** - Confirm statement amounts, review unsubmitted expenses, and manage corporate spend.
* **Multi-Level Coding** - Import GL codes from your accounting package to tag expenses with multiple levels of detail.
* **Audit and Compliance** - Detect duplicate receipts automatically, ensure accurate exchange rates, and confirm the validity of each transaction.
* **Delegated Access** - Allow your colleagues to create, submit, or approve reports on your behalf and give auditors review-only access to employee expense data.
To learn more about the features of Expensify, visit [https://use.expensify.com/expense-management](https://use.expensify.com/expense-management).
### Integration overview
The Expensify integration allows you to easily import expenses into Ruddr from Expensify. There are two reasons you will want to import specific expenses into Ruddr. First, you may want to charge those expenses to a project in order to have an accurate cost and profit margin for that project. Second, you may want to bill those expenses back to the client on an invoice.
If your company is already using Expensify, your team members will not have to learn any new processes in order to get those expenses into Ruddr. They simply create their expenses and expense reports in Expensify as they always have and use your company's normal submission and approval process. Those expenses can then be automatically synchronized to Ruddr, associated with the correct client project, and optionally invoiced back to the client.
### Key integration benefits
The Expensify integration allows companies to seamlessly connect their expense management and professional services platforms. Below is an overview of the main features of the Expensify integration.
**Sync expense reports**
You can easily sync expense reports and individual expenses from Expensify to Ruddr. Note that this sync process is always unidirectional from Expensify to Ruddr. The process can be setup to automatically run on an hourly basis and you can also manual synchronization as needed.
**Charge expenses toward Ruddr projects**
Expenses in Expensify can be tagged with the client and project name. Project names are mapped from Expensify to Ruddr, which allows imported expenses to automatically be charged to the appropriate project in Ruddr.
**Invoice expenses to clients**
Once your expenses are synchronized from Expensify to Ruddr, those expenses can then be added to invoices in Ruddr. The expenses will automatically show up on the [Ready to Bill](/billing/ready-to-bill) screen in Ruddr and can be placed on an invoice with a single button click.
### Setting up the integration
For step-by-step instructions on setting up the Expensify integration, see the [Expensify Integration Setup](/integrations/expensify-integration-setup) article.
For more information, see the [Expenses section](/expenses/expense-tracking-overview) of the Ruddr help center.
# Expensify Integration Setup
Source: https://help.ruddr.io/integrations/expensify-integration-setup
Set up the Expensify integration by generating your partnerUserID and partnerUserSecret and connecting Expensify to your Ruddr workspace.
Integrating Expensify with Ruddr provides numerous benefits as outlined in the [Expensify Integration Overview](/integrations/expensify-integration-overview) article. To install the Expensify integration, simply follow the steps below. Note that you must be a Ruddr Workspace Admin to install integrations in Ruddr.
**Step 1: Find the Expensify Integration**
To get to the Integrations area of Ruddr, simply click on the **Settings** main nav bar option and then select the **Integrations** menu option (see [Integrations](/workspace-administration/integrations) for more information). The Integrations section is separated into two sections which are Active Integrations and Available Integrations. If you haven't previously set up the Expensify integration, it will be listed in the Available Integrations section. Simply click on the **Install** button at the bottom of the integration widget (Figure 1).
**Step 2: Authorize the Integration**
Once you click on the **Install** button, you will be presented with a window (Figure 2) that will ask for your Expensify **partnerUserID** and **partnerUserSecret**. If you have not previously enabled an integration with Expensify, you will need generate these at the following URL:
[https://www.expensify.com/tools/integrations/](https://www.expensify.com/tools/integrations/)
Once you have generated these two text strings, paste them into their respective boxes on the window shown below (Figure 2) and then click the **Next** button.
**Step 3: Select the Expensify Policy**
The next step is to connect Ruddr with an Expensify policy. An Expensify policy is where you create expense submission rules, define approval workflows, connect your accounting system, configure reimbursements, set whether expenses can be billable to clients, and more. Just select the desired policy from the drop-down (Figure 3) and then click the **Finish Setup** button.
At this point, the Expensify integration is installed but it now needs to be configured. The configuration is completed via the steps outlined below.
**Step 4: Configure Expense Category Settings**
To configure the expense category settings, click the **Change Settings** button within the expense category settings section (Figure 4). This will bring up the **Expense Category Settings** drawer (Figure 5).
Note that it is a best practice to set up the same expense categories in Ruddr and Expensify. When doing this, you should use the same spelling for the category names in both platforms.
From this category settings drawer (Figure 5), you can configure whether or not categories will automatically be created in Ruddr. It is recommended that you allow Ruddr to create an expense category any time it encounters an Expensify expense category that does not exist in Ruddr. This is the default setting but you can optionally turn this off.
On this drawer you should also select a default expense category. If an Expensify expense does not have a category, Ruddr will use the category you specify on this screen for the imported expense. All expense items in Ruddr must have an expense category and you may want to use a generic expense category for this default.
**Step 5: Select the Member Mapping Type**
The next step is to set how you want to map people in Expensify to workspace members in Ruddr. To select the preferred member mapping type, click the **Change Mapping Type** button within the Member Settings section (Figure 4). This will allow you to select either automatic or manual mapping (Figure 6). As long as your workspace members use the same email address in both Expensify and Ruddr, you can leave this set to the automatic option.
If you opt for manual mapping, you will then be presented with a screen (Figure 7) where you can map each member in Ruddr to the corresponding person in Expensify.
**Step 6: Select Whether or not a Project is Required**
You may prefer to only import an expense into Ruddr when it matches a Ruddr project. The Expensify integration includes a matching process that compares tags in Expensify with project names in Ruddr. This option is on by default, as most Ruddr customers do not import expenses that are not related to client projects. To toggle this option, click the **Change Requirement** button in the Project Settings section (Figure 4). This will display a screen (Figure 8) where you can specify whether or not a Ruddr project is required to import an expense.
**Step 7: Map Ruddr Projects to Expensify Tags**
The next step is to map your projects in Ruddr to your Expensify tags that correspond to those projects. Click the **Edit Mappings** button in the Project Settings section (Figure 4). This will display a screen (Figure 9) allowing you to configure these mappings.
When you click the **Add Mapping** button, Ruddr provides two options for mapping Ruddr projects to Expensify tags. The first option allows you to select the Ruddr project and the Expensify tag as shown below (Figure 10). This is the preferred option when Expensify does not have multiple level tagging turned on.
The second option is text matching (Figure 11). This option is appropriate when multiple levels of tags are enabled. For example, in Expensify you may use the first level of tags to identify your client and the second level of tags to identify the project. When multiple levels of tags are in use, the text matching allows you to match the Ruddr project to a tag at the appropriate depth in the Expensify tag hierarchy.
**Step 8: Configure Sync Settings**
The final step in the Expensify integration setup is to configure the sync settings (Figure 12). There are two areas that need to be configured. Click the **Change Settings** button in the Sync Settings section (Figure 4).
First, you can choose whether or not you want expenses in Expensify to be automatically synchronized to Ruddr. You most likely will want this setting turned on. You can also specify the earliest date of expense reports that you want to import into Ruddr.
Second, you can choose which Expensify statuses you want synchronized to Ruddr. For example, you may not want to sync expense reports that are in the Open or Processing state.
At this point your Expensify integration is configured and ready to go. To learn how to use the Expensify integration, check out the [Expensify Integration Overview](/integrations/expensify-integration-overview) article.
# HubSpot Integration Overview
Source: https://help.ruddr.io/integrations/hubspot-integration-overview
Sync companies, contacts, and deals from HubSpot into Ruddr's Pipeline and convert HubSpot opportunities into Ruddr projects.
HubSpot is a software platform that provides a variety of business solutions and is best known for its customer relationship management (CRM) and sales automation capabilities.
To learn more about the features of HubSpot, visit [https://www.hubspot.com/](https://www.hubspot.com/).
### Integration overview
Leveraging the HubSpot integration requires that Ruddr's [Pipeline](/pipeline/pipeline-overview) feature is enabled.
The HubSpot integration allows you to easily import Companies, Contacts, Opportunities (Deals), and Activities into Ruddr from HubSpot.
### Key integration benefits
The HubSpot integration allows companies to seamlessly connect their CRM and professional services platforms. Below is an overview of the main features of the HubSpot integration.
#### Give your delivery team visibility into your pipeline
Ruddr's Pipeline feature is designed to offer your workspace members insight into sales opportunities and sales-related forecast information. By leveraging the HubSpot integration, you can make that information available to delivery and operations personnel without the need to provision additional HubSpot licenses.
#### Sync companies, contacts, and opportunities from HubSpot to Ruddr
You can easily sync companies, contacts, and opportunities (deals) to Ruddr. Note that this sync process is always unidirectional from HubSpot to Ruddr. The process can be setup to automatically run on a frequency determined by you. Manual synchronization can be run as needed.
Pipeline data that originates in HubSpot will be read-only in Ruddr, ensuring that your sales team's efforts to manage this data in the source system are not affected by the interaction with this data from within Ruddr.
#### Convert HubSpot opportunities (deals) into Ruddr projects
Any opportunities (deals) synced from HubSpot will be available in Ruddr's Pipeline area. Ruddr projects can be created from these opportunities.
### Setting up the integration
For step-by-step instructions on setting up the HubSpot integration, see the HubSpot Integration Setup article.
For more information, see the [Pipeline](/pipeline/pipeline-overview) section of the Ruddr help center.
# HubSpot Integration Setup
Source: https://help.ruddr.io/integrations/hubspot-integration-setup
Connect your HubSpot account to Ruddr, configure the integration's sync settings, and run and review your first full synchronization.
Integrating HubSpot with Ruddr provides numerous benefits as outlined in the [HubSpot Integration Overview](/integrations/hubspot-integration-overview) article. To install the HubSpot integration, follow the steps below. Note that you must be a Ruddr Workspace Admin to install integrations in Ruddr and that the [Pipeline](/pipeline/pipeline-overview) feature in Ruddr must be enabled.
### Step 1: Find the HubSpot Integration
To get to the Integrations area of Ruddr, simply click on the **Settings** main nav bar option and then select the **Integrations** menu option (see [Integrations](/workspace-administration/integrations) for more information). The Integrations section is separated into two sections which are Active Integrations and Available Integrations. If you haven't previously set up the HubSpot integration, it will be listed in the Available Integrations section. Simply click on the **Install** button at the bottom of the integration widget (Figure 1).
### Step 2: Connect the Integration
Once you click on the **Install** button, if you are already logged in to HubSpot, you will be taken to an authorization screen (Figure 2). If you aren't logged in to HubSpot, you will be asked to login first (Figure 3). The authorization screen explains the type of information and actions that will be made available to Ruddr through the integration.
If you are comfortable with providing the privileges to the Ruddr integration, simply click on the **Connect app** button.
At this point, the HubSpot integration is installed but it now needs to be configured. You will be redirected to the HubSpot integration settings screen in Ruddr (Figure 4), where the configuration will continue according the following steps below.
### Step 3: Configure HubSpot Sync Settings
To configure HubSpot sync settings, click on the **Change Settings** button in the Sync Settings section (Figure 5).
This will bring up the **Sync Settings** drawer (Figure 6), where you will be able to configure the following settings:
* **Automatically Sync**: Set whether or not the HubSpot integration will automatically sync data from HubSpot to Ruddr on an interval. You can also set the **Frequency** of the sync with one of the following values.
* Every Hour
* Every Two Hours
* Every Three Hours
* Every Four Hours
* Every Eight Hours
* Every Twelve Hours
* Daily
* **Beginning Date**: Specify the earliest Start Date from which you want to sync opportunities. Any opportunity created prior to the Start Date will not be synced.
* **Opportunity Minimums**: Enable **Filter by Minimum Probability** and/or **Filter by Minimum Amount** to exclude opportunities from the sync. Each filter is applied independently — turning one on does not require the other.
* When **Filter by Minimum Probability** is on, any opportunity with a Probability less than the **Minimum Probability** will not be synced.
* When **Filter by Minimum Amount** is on, any opportunity with an amount less than the **Minimum Amount** will not be synced.
* **Opportunity Types**: Any opportunities with the selected opportunity types will be synced. These opportunity types are based on the types in your HubSpot instance.
* **Pipelines:** Ruddr can connect to multiple HubSpot pipelines. Choose the HubSpot pipelines from which you will sync companies, contacts, and opportunities. Any time you select an additional pipeline in the settings, you will want to [follow this guidance](#multiple-hubspot-pipelines).
* **Activity Types:** Specify the types of activities related to companies and opportunities that you would like to sync to Ruddr.
* **Imported Member Capacity:** Ruddr will create inactive members in Ruddr as needed to support various fields on pipeline entities, including Contact Owner, Company Owner, and Opportunity Owner. Specify whether you want these inactive members to be created with the workspace default [capacity](/workspace-administration/member-profile#capacity-periods) or without a capacity ("No Capacity").
* **Practice & Business Unit Defaults:** New records synced from HubSpot are assigned the Practice and/or Business Unit of the workspace member mapped to their HubSpot deal owner. Enable **Use deal owner practice** and/or **Use deal owner business unit** to turn this on. These settings only appear if the [Practices](/workspace-administration/features#practices) and/or [Business Units](/workspace-administration/features#business-units) features, respectively, are enabled in your workspace, and they only stamp a Practice or Business Unit onto newly created records — they never overwrite the Practice or Business Unit on a record that already exists in Ruddr.
#### Multiple HubSpot Pipelines
If, at any time, you opt to include an additional HubSpot pipeline for synchronization, you will need to select that pipeline (Figure 7) from the settings drawer (Figure 6) within the HubSpot integrations area in Ruddr and save the settings. Then, you will need to immediately [run a manual, full synchronization](#step-4-manually-run-a-full-hubspot-synchronization) to ensure that the additional pipeline's settings, custom data, and sales data are synched for the first time.
### Step 4: Manually Run a Full HubSpot Synchronization
Once you have specified the various sync settings, click the **New Manual Sync** button found on the Sync Settings section (Figure 5) of the integrations settings page.
This will prompt you (Figure 8) to select whether or not you wish to run a **Full synchronization**, which will fetch all company, contact, opportunity, and activity data going back to the Start Date that you specified in Sync Settings in Step 2.
Once the initial, full synchronization has been run, you will be able to leave the **Full synchronization** setting unchecked, which will result in an incremental sync that will only bring over any updates since the most recent, successful sync was completed.
### Step 5: Review the Sync Results Log
For both Automatic and Manual syncs, Ruddr will provide a log of the synchronization results, which can be accessed from the Latest Sync Results section (Figure 9) on the HubSpot integration settings page.
# QuickBooks Desktop Support
Source: https://help.ruddr.io/integrations/quickbooks-desktop-support
Export Ruddr invoices in the Intuit Interchange Format (IIF) so they can be imported into QuickBooks Desktop or Enterprise.
QuickBooks Desktop (or Enterprise) is the desktop-based predecessor to [QuickBooks Online](/integrations/quickbooks-online-integration-overview). To support workspaces that leverage the desktop version of QuickBooks, Ruddr provides the ability to export invoices in a format that is accepted by QuickBooks Desktop.
To quickly and easily create invoices in QuickBooks from Ruddr, invoices [can be exported from Ruddr](#generating-the-export-file) in the Intuit Interchange Format (.IIF). This IIF format is a tab-separated text file format that is proprietary to QuickBooks and allows for the import of financial transactions.
### Enabling QuickBooks Desktop Support
The QuickBooks Desktop export feature can be enabled from within the [Integrations](/workspace-administration/integrations) section of [Workspace Settings](/workspace-administration/managing-your-workspace). A member must have the Workspace Admin security role to access and enable this function.
From within the Integrations section, there will be a QuickBooks Desktop tile (Figure 1). Click **Install** to enable the QuickBooks Desktop export functionality.
Upon clicking **Install**, you will be prompted (Figure 2) to configure settings for the integration. There are general settings and project settings.
#### General Settings
The first setting to provide is a **Discount Account**. Providing this account will ensure that exported Ruddr invoices with discounts will be listed with the appropriate discount account when imported into QuickBooks Desktop. The discount account must be spelled exactly as the account in QuickBooks is spelled.
This **Discount Account** field is optional and thus a value does not have to be provided to activate the QuickBooks Desktop support in Ruddr. However, if the Discount Account is not properly configured, any discounts exported via the .IIF file will not be properly coded in QuickBooks Desktop.
The second setting, **Default new projects as sub-customers**, controls whether or not new projects in the workspace are treated as sub-customers when invoices for those projects are exported.
In QuickBooks, if you have created sub-customers to denote projects, you can generate project invoices in Ruddr and import them for sub-customers in QuickBooks. By specifying a project as a sub-customer, when the IIF file is generated, Ruddr will append the project name to the client name for purposes of importing into QuickBooks Desktop. The format will be: **Client Name:Project Name**, where the client and project names are separated by a colon.
#### Project Settings
On the **Projects** tab (Figure 3) of the QBD (QuickBooks Desktop) Setup drawer, you can manage which projects in the workspace are to be treated as sub-customers.
Simply check the box listed next to each project name in the drawer. The list of projects can be filtered by Client. You can also filter projects based on whether or not they are archived. Finally, you can use the **Search** textbox at the top of the drawer to find specific projects based on their Project Name.
**NOTE**: invoices that have been created for multiple projects (on a single invoice) will not be exported with sub-customers appended to the client name.
Once the settings have been configured, click on the **Save & Activate** button at the bottom of the drawer to save the settings and to activate the support for QuickBooks Desktop exports.
### Generating the IIF File
Once the QuickBooks Desktop support has been enabled, you will be able to export the Invoice Detail report, which can be found in the [Financial](/reports/accounting-reports) section of Ruddr reports.
Once the report has been run and any report filters have been applied to include the invoices you wish to export, you can choose the **Export to IIF** option (Figure 4). This option is only available if the QuickBooks Desktop integration has been installed.
Prior to downloading the IIF file, Ruddr will prompt the user with a list of recommendations (Figure 5) to consider prior to importing the file into your QuickBooks Desktop environment.
Before you import the IIF into QuickBooks Desktop, it is recommended that you take the following actions:
* **Create a backup of your QuickBooks company file.** The invoice import cannot be undone - you will want to have a copy of your company file should you need to revert to a prior instance.
* **Ensure that your QuickBooks customer names have the same spelling as the corresponding client names in Ruddr.** This must match in spelling and case (upper / lower) down to each character.
* **Ensure that QuickBooks item names must have the same spelling as the corresponding invoice items and tax rates in Ruddr.** As with customers / clients, these must match in spelling and case (upper / lower) down to each character.
* **If your invoices will have discounts applied, the Discount Account name that was provided in the integration setup (Figure 2) should match the name of the corresponding account in QuickBooks.**
# QuickBooks Online Integration Overview
Source: https://help.ruddr.io/integrations/quickbooks-online-integration-overview
See how Ruddr's QuickBooks Online integration syncs invoices, payments, and credit notes and creates vendor bills for reimbursable expenses.
QuickBooks Online (or "QBO") is the world's leading small business accounting platform. With QuickBooks, companies can more easily manage bookkeeping, banking, payroll, payments, and funding.
To learn more about the features of QuickBooks, visit [https://quickbooks.intuit.com/online/how-it-works/](https://quickbooks.intuit.com/online/how-it-works/).
### Key integration benefits
The Ruddr integration for QuickBooks allows companies to seamlessly connect their accounting and professional services platforms.
* [Save Ruddr invoices to QuickBooks](#save-ruddr-invoices-to-quickbooks)
* [Synchronize invoice changes from QuickBooks to Ruddr](#synchronize-invoices-between-quickbooks-and-ruddr)
* [Deleting and unpublishing invoices](#deleting-and-unpublishing-invoices)
* [Create and synchronize invoice payments](#record-payments-in-quickbooks-or-ruddr)
* [Delete payments](#delete-payments)
* Create and synchronize credit notes
* [Create vendor bills for reimbursable expenses](#create-vendor-bills-for-reimbursable-expenses)
Below is an overview of these main features of the QuickBooks integration.
### Save Ruddr Invoices to QuickBooks
When a draft invoice in Ruddr is published, the confirmation window (Figure 1) will include a **Save to QuickBooks** checkbox that will be checked by default. If this checkbox is checked, the invoice will be published in Ruddr and immediately saved to QuickBooks. If the checkbox is not checked, the invoice will only be published in Ruddr.
If an invoice was not saved to QuickBooks upon publishing, you can later save it to QuickBooks via the menu (Figure 3) on the invoice row in the invoices list (Figure 2). Simply click the **Save to QuickBooks** option on a published invoice to save that invoice to QuickBooks. Note that this menu option will only exist for published invoices that are not currently saved to QuickBooks.
### Synchronize Invoices between QuickBooks and Ruddr
It is not uncommon for an invoice to be manually adjusted once it is in QuickBooks. Your company's accountant might prefer to adjust the invoice directly in QuickBooks rather than unpublish the invoice in Ruddr to edit the draft invoice. Any time an invoice gets updated in QuickBooks, Ruddr gets notified of the invoice changes by QuickBooks. Ruddr will then update its version of the invoice to match the QuickBooks version. This ensures that both Ruddr and QuickBooks have the same invoice information at all times.
Note that once an invoice is published in Ruddr, it can no longer be manually edited within Ruddr unless it is first unpublished. This helps ensure that a published invoice isn't inadvertently changed after it has been presented to the client. Since invoices can always be edited in QuickBooks, a published invoice in Ruddr will be updated automatically if the invoice is changed in QuickBooks.
When a published invoice has been saved to QuickBooks, it can be manually reloaded from QuickBooks by clicking on the **Reload from QuickBooks** menu option (Figure 4) on the invoice row (Figure 2). This reload option is only needed if the Ruddr version of the invoice becomes out of sync with the QuickBooks version. This menu option will only exist on invoices that have previously been saved to QuickBooks.
### Deleting and Unpublishing Invoices
When an invoice is unpublished in Ruddr, it is recommended that it also be deleted from QuickBooks. On the confirmation window for the unpublish action (Figure 5), there will be a **Remove from QuickBooks** checkbox that will be unchecked by default. With this option checked, Ruddr will automatically delete the invoice from QuickBooks.
When a published invoice is unpublished in Ruddr, it returns to its draft invoice state. The draft invoice can then be edited and republished when it is ready. When the draft invoice is republished, it can be saved to QuickBooks again at that time.
If a published invoice is deleted in QuickBooks, that invoice will remain in Ruddr but will no longer be linked to a QuickBooks invoice. If you want to delete the invoice from Ruddr as well, you can do that from the invoice menu options within Ruddr.
### Record Payments in QuickBooks or Ruddr
With the QuickBooks integration installed, you can record client payments in either QuickBooks or Ruddr. If a payment is entered in QuickBooks, it will be automatically saved to Ruddr. If a payment is entered in Ruddr, it will be saved to QuickBooks unless you uncheck the **Save to QuickBooks** checkbox on the confirmation window. This checkbox is checked by default.
Once a payment has been saved to QuickBooks, it can only be updated within QuickBooks. Any updates to a payment in QuickBooks will be automatically synchronized to the payment in Ruddr.
### Delete Payments
A payment can be deleted in either QuickBooks or Ruddr. If the payment is deleted in Ruddr, the delete payment confirmation window (Figure 6) will include a **Remove from QuickBooks** checkbox that will be checked by default. If this checkbox is checked, the payment will be deleted from both QuickBooks and Ruddr. If the checkbox is not checked, the payment will only be deleted in Ruddr.
If a payment is deleted in QuickBooks, it will not be automatically deleted in Ruddr. You can manually delete the payment in Ruddr via the row option menu on the payments list screen.
### Create Vendor Bills for Reimbursable Expenses
The QuickBooks integration optionally allows creating a Vendor Bill in QuickBooks any time a member in Ruddr has approved reimbursable expenses. Workspace members simply [create an expense report](/expenses/create-an-expense-report) and check the **Reimburse to me** checkbox as needed when [adding individual expense items](/expenses/add-expense-items-to-an-expense-report) (Figure 7).
Once per hour, Ruddr will check to see if there are any newly approved reimbursable expenses. If a member has approved reimbursable expenses, Ruddr will create a vendor bill for that member and put each of those reimbursable expenses as a line item on the vendor bill. Once the bill is paid within QuickBooks Online, the expense items will show as reimbursed in Ruddr. See [Expense Reimbursement Tracking](/expenses/expense-reimbursement-tracking) for more on how reimbursement status is tracked and managed.
### Setting up the Integration
For step-by-step instructions on setting up the Ruddr integration for QuickBooks, see the [QuickBooks Integration Setup](/integrations/quickbooks-online-integration-setup) article.
For more information, see the [invoicing section](/billing/ready-to-bill) of the Ruddr help center.
# QuickBooks Online Integration Setup
Source: https://help.ruddr.io/integrations/quickbooks-online-integration-setup
Prepare your data and connect QuickBooks Online to Ruddr, including guidance on client mapping, invoice items, and multicurrency considerations.
Integrating QuickBooks Online (or "QBO") with Ruddr provides numerous benefits as outlined in the [QuickBooks Online Integration Overview](/integrations/quickbooks-online-integration-overview) article. To install the QuickBooks integration, simply follow the steps below. Note that you must be a Ruddr Workspace Admin to install integrations.
**⚠️ An Important Note on Multicurrency Capabilities with QuickBooks**
While Ruddr supports multicurrency at the project level (you can assign a currency to each project within a client), QuickBooks only supports a single currency per customer. Given this, you will need to create a separate client in Ruddr for each currency that you will use for that client.
For more on supporting currencies across projects and clients in Ruddr, please refer to the [Multicurrency section](/multicurrency/multicurrency-overview) of the Ruddr Help Center.
**Step 1: Prepare your Data**
Before you install the QuickBooks integration, you should prepare your data in QuickBooks and Ruddr, as follows:
* **Client names** - Your client names in Ruddr should use the exact same spelling as your customer names in QuickBooks. If the spelling is identical, the QuickBooks integration will automatically map Ruddr clients to QuickBooks customers during the integration setup process. If the spelling is not identical, you will need to manually map Ruddr clients to QuickBooks customers within the integration settings.
* **Invoice items** - Your Invoice Items in Ruddr should use the exact same spelling as your Product/Service types in QuickBooks. You can manage your Invoice Items in Ruddr by clicking on **Settings** in the main nav bar, selecting [**Custom Data**](/workspace-administration/custom-data) in the sub-navigation, and choosing **Invoice Items** from the available items in Custom Data.
* **Tax rates** - Your Tax Rates in Ruddr should use the exact same spelling as your custom Tax Codes in QuickBooks. If you do not charge sales tax or do not use custom tax rates, then you do not need to configure this area. You can manage your Tax Rates in Ruddr by clicking on **Settings** in the main nav bar, selecting [**Custom Data**](/workspace-administration/custom-data) in the sub-navigation, and choosing **Tax Rates** from the available items in Custom Data.
**Step 2: Find the QuickBooks Integration**
To get to the integrations area of Ruddr, simply click on the **Settings** main nav bar option and then select the **Integrations** tab (see [Integrations](/workspace-administration/integrations) for more information). The Integrations tab is separated into two sections which are Active Integrations and Available Integrations. If you haven't previously set up the QuickBooks integration, it will be listed in the Available Integrations section. Simply click on the **Install** button at the bottom of the integration widget (Figure 1).
**Step 3: Connect the Integration**
Once you click on the **Install** button, if you are already logged in to QuickBooks you will be taken to an authorization screen (Figure 2). If you aren't logged in to QuickBooks, you will be asked to login first. The authorization screen explains the type of information and actions that will be made available to Ruddr through the integration.
Click on the **Connect** button to provide Ruddr the needed access.
**Step 4: Map Clients, Invoice Items, and Tax Rates**
Once you connect the integration to QuickBooks, Ruddr will automatically attempt to map the data entities shown below (Table 1).
| Ruddr Entity | QuickBooks Entity |
| Clients | Customers |
| Invoice Items | Product/Service |
| Tax Rate | Tax Code |
Table 1 - Entity Mapping between Ruddr and QuickBooks
In order for these items to automatically map, they must have the **exact same name in both platforms**. If they do not have the same name when the integration is setup, you can manually map the items, as detailed below.
If Ruddr is unable to automatically map some Clients, Invoice Items, or Tax Rates, this will be apparent in the Details column of the integration settings. In the example below (Figure 3), Ruddr has automatically mapped three of the five Invoice Items, which means two of the Invoice Items will need to be manually mapped.
Note that each Ruddr client can only be mapped to one QuickBooks customer. This is because payments that are created in Ruddr can only be applied to one Ruddr client.
To manually map the remaining two Invoice Items (in the example above) to a QuickBooks Product/Service, simply click the **Edit** button on the Invoice Items row. This will open up the Invoice Item Mappings drawer (Figure 4) which will show the items that have been automatically mapped and those that need manual mapping.
You can manually map Clients and Tax Rates in a similar manner.
**Step 5: Set the Configuration Defaults**
Next, you need to set several integration defaults. To do this, choose the **Edit** option on the Configuration row of the integration settings. This will bring up the Configuration drawer as shown below (Figure 5).
For the QuickBooks integration to function properly, these configuration settings need to be set correctly. The settings are described below.
* **Integration Name** - This is the name of the integration instance. If your company uses just one instance of QuickBooks, this can be set to your company name. If your company has multiple instances of QuickBooks, such as one per legal entity, this should refer to the specific legal entity associated with that QuickBooks instance.
* **Default Ruddr Invoice Item** - When an invoice has been published to QuickBooks from Ruddr, it is possible that the invoice could later get updated in QuickBooks. If the Product/Service is changed in QuickBooks and the new Product/Service is not mapped to an Invoice Item in Ruddr, the default Invoice Item will be used in Ruddr for that invoice line item.
* **Default QuickBooks Product/Service** - Similar to the situation above, if an Invoice Item in Ruddr is not mapped to a Product/Service in QuickBooks, Ruddr will use this default QuickBooks Product/Service for that invoice line item when creating the invoice in QuickBooks.
* **Payment Deposit Account** - When a payment is applied to an invoice within Ruddr, that payment will be synchronized to QuickBooks. When Ruddr creates the payment in QuickBooks, it will use the specified deposit account when saving the payment.
* **Reimbursable Expenses Sync** - If this is set to Yes, Ruddr will create Vendor Bills in QuickBooks for approved reimbursable expenses for members in Ruddr. Once per hour, Ruddr will check for new approved reimbursable expenses. If a member has one or more approved reimbursable expenses, those will be added to a single vendor bill in QuickBooks for that member. If the member does not exist as a vendor in QuickBooks, Ruddr will automatically create the vendor and map it to the Ruddr member.
* **Reimbursable Expenses Sync Start Date** - If the reimbursable expenses sync option is enabled, Ruddr will only evaluate expenses that occur on or after this sync start date.
* **Default QuickBooks Expense Account** - When saving a reimbursable expense item to a vendor bill, Ruddr will use this QuickBooks expense account if the expense category for the item is not mapped to an expense account.
**Step 6: Create a Product/Service in QuickBooks for Expenses**
All items that Ruddr publishes to a QuickBooks invoice must have an Invoice Item in Ruddr that maps to a Product/Service in QuickBooks. Since you will likely be charging clients for expenses in addition to services, you will need to create a Product/Service in QuickBooks for those expenses.
To bring up the Product/Service screen (Figure 6) in QuickBooks, click on the **Settings** wheel at the top-right and choose the **Products and Services** option under **Lists**. This will bring up a screen that will show your current Products and Services (Figure 6). It is likely that this screen will include product and services items but not expense items.
To add a Product/Service for expenses, click the **New** button and choose the **Non-Inventory** option. This will show a drawer (Figure 7) that will allow you to name the Product/Service and select the associated income account from the QuickBooks chart of accounts. It is recommended to name this new Product/Service "Expenses" and select the **Billable Expense Income** option from the income account drop-down.
If the Billable Expenses Income account does not exist, simply create the account within the chart of accounts. Select **Income** as the Account Type and **Other Primary Income** as the Detail Type.
**Step 7: Set the Invoice Item for each Project Type**
Ruddr allows you to set an Invoice Item for each Project Type within your workspace. This allows you to group different types of revenue on your income statement in QuickBooks. For example, if your company has consulting revenue and managed services revenue, you can associate each project type in Ruddr to one of those two Invoice Items. Then, each Invoice Item can be mapped to a corresponding Product/Service in QuickBooks which will have an associated income account from the QuickBooks chart of accounts.
To set the Invoice Item for each Project Type, click on the **Settings** main nav bar option and select the **Custom Data** menu option (Figure 8). Select **Project Types** from the list of custom data in Ruddr (for more information, view the [Custom Data help](/workspace-administration/custom-data) article). The current Invoice Item for each project type will be shown in the list (Figure 9). You can change the invoice item by clicking the **Edit** button on the given row.
Note that it is common to have multiple Project Types mapped to the same Invoice Item. If you only have one type of revenue (such as "Consulting"), you may choose to map all Project Types to that single Invoice Item.
**Step 8: Set the Invoice Item for each Expense Category**
You can also map an Invoice Item to each Expense Category. By default, each Expense Category is mapped to the built-in "Expenses" Invoice Item in Ruddr. This is likely sufficient, but if you need to break out billable expenses into separate income accounts on your income statement, you can map your Expense Categories in Ruddr to specific Invoice Items.
To map an Expense Category to an Invoice Item, click on the **Settings** main nav bar option and select the **Custom Data** menu option (Figure 8). From this screen, select **Expense Categories** from the list of custom data in Ruddr. This will bring up the list of expense categories within the workspace. To edit the Invoice Item associated with a given Expense Category, simply click the edit button on the category and set the **Invoice Item** drop-down (Figure 10).
**Step 9: Map Projects**
The Projects feature in QuickBooks is exclusively supported in the QuickBooks Online Plus, QuickBooks Online Advanced, and QuickBooks Online Accountant. Projects are not supported in lower versions such as QuickBooks Online Simple Start, QuickBooks Online Essentials or QuickBooks Self-Employed.
QuickBooks Projects lets you track revenue, costs, and profit for each project or client. This allows you to see income and expenses per project and calculate profit margin per project. Note that Ruddr provides this same functionality with more granular accuracy as each hour of labor cost is associated with the project in Ruddr. Thus, even if your version of QuickBooks supports Projects, you may prefer to use Ruddr for your project-based performance reporting and analysis.
If you intend to use QuickBooks Projects, you must manually map projects in Ruddr to projects in QuickBooks. This can be done by clicking the **Edit** button on the Projects row within the QuickBooks integration in Ruddr.
**Step 10: Map Members**
If you have enabled the Reimbursable Expenses Sync option within the Configuration area of the QuickBooks integration, you should map Ruddr members to QuickBooks vendors. This is done by clicking the **Edit** button on the Members row within the QuickBooks integration in Ruddr.
The first time Ruddr attempts to create a vendor bill for a member, if the member isn't mapped to an existing QuickBooks vendor, Ruddr will create a new vendor in QuickBooks. The new vendor name will be set to the member's name. After you initially map members to vendors when configuring the QuickBooks integration, you will not need to manually map members in the future.
**Step 11: Map Expense Categories**
Each line item in a QuickBooks vendor bill must have an associated expense account. Ruddr allows you to easily map Expense Categories in Ruddr to expense accounts in QuickBooks. This is done by clicking the **Edit** button on the Expense Categories row within the QuickBooks integration in Ruddr.
### Need Some Help?
Properly configuring the QuickBooks integration can seem a bit daunting, but it is vital in order to have accurate financial statements. If you are having difficulty with any of the steps above, just reach out to us at [help@ruddr.io](mailto:help@ruddr.io) and we'll help you get set up (at no cost).
# Rippling Integration Overview
Source: https://help.ruddr.io/integrations/rippling-integration-overview
Discover how the Rippling integration creates Ruddr members, manages member status and data, syncs approved time off, and enables single sign-on.
Rippling is a commonly-used workforce management platform that automates operational functions such as HR, IT, and Finance. These capabilities include:
* Applicant Tracking
* Employee Onboarding
* Payroll Management
* Performance Management
* Time Off Management
* Benefits Administration
* Employee Offboarding
* Identity & Access Management
* Device Management
To learn more about the features of Rippling, visit [https://www.rippling.com/platform](https://www.rippling.com/platform).
### Key Integration Benefits
The Ruddr integration for Rippling provides an enriched, member-management experience for Ruddr Workspace Admins. From creating new members to synching approved time off, Ruddr's integration with Rippling facilitates member and time management between the two systems.
#### Automatically Create New Members in Ruddr
The Rippling integration can be configured to create a new member in the Ruddr workspace when an employee is added to Rippling. Additionally, Workspace Admins can configure the integration to:
* Automatically invite the new Ruddr member to the workspace
* Automatically set the new Ruddr member as billable
#### Manage Member Status via Rippling
If configured, the integration can manage the Active / Inactive status of Ruddr members. If a Rippling employee is deactivated, the integration will deactivate the member in Ruddr. If the employee is later reactivated in Rippling, the integration will reactivate the member in the Ruddr workspace.
#### Manage Key Member Data Fields via Rippling
If configured, the integration can manage key fields related Ruddr members:
* Name
* Email
* Job Title
* Manager
* Internal ID
* Active Dates
#### Sync Approved Time Off Time Entries in Ruddr
Rippling is often used for managing Paid Time Off ("PTO") and other types of time off. With the Rippling integration configured, any approved time off request in Rippling will automatically sync to Ruddr. Ruddr will then manage any edits to Rippling time off requests by ensuring that the time entries in Ruddr are updated / deleted as necessary.
Note that time off entries created by this integration will be locked in Ruddr (Figure 1).
#### Single Sign-On
If your organization leverages Rippling as an Identity Provider, you can set up Ruddr such that your members login with their Rippling credentials.
Note that Rippling requires that Ruddr support Rippling Single Sign-On. This will require that the Identity and Access Management module in Rippling is available.
For the steps to set this up, including where to find the Ruddr Entity ID and Assertion Consumer Service URL, see [Set Up Single Sign-On](/integrations/rippling-integration-setup#set-up-single-sign-on).
### Setting up the Integration
For step-by-step instructions on setting up the Ruddr integration for Rippling, see the [Rippling Integration Setup](/integrations/rippling-integration-setup) article.
# Rippling Integration Setup
Source: https://help.ruddr.io/integrations/rippling-integration-setup
Install the Ruddr app from the Rippling App Shop and configure member, time off, and sync settings for the Rippling integration.
Integrating Rippling with Ruddr provides numerous benefits as outlined in the [Rippling Integration Overview](/integrations/rippling-integration-overview) article. To install the Rippling integration, simply follow the steps below. Note that you must be a Ruddr Workspace Admin to install integrations in Ruddr. Additionally, the member setting up this integration must also be Rippling administrator.
### Step 1: Install the Ruddr App in Rippling
Installing the Rippling integration involves the installation and configuration of the Ruddr application from within the Rippling App Shop. This installation can be initiated from [within Ruddr](#initiating-the-installation-from-ruddr) or from [within Rippling](#initiating-the-installation-from-rippling).
#### Initiating the Installation from Ruddr
To get to the Integrations area of Ruddr, simply click on the **Settings** main nav bar option and then select the **Integrations** menu option (see [Integrations](/workspace-administration/integrations) for more information). The Integrations screen is separated into two sections which are Active Integrations and Available Integrations. If you have yet to set up the Rippling integration, it will be listed in the Available Integrations section. Simply click on the **Install** button at the bottom of the integration widget (Figure 1). This will redirect you to Rippling, where the installation will continue at [Step 2 - Configure Ruddr App in Rippling](#step-2-configure-ruddr-app-in-rippling).
#### Initiating the Installation from Rippling
In Rippling, navigate to the App Shop. A link to the App Shop can typically be found towards the bottom of the left navigation menu in Rippling (Figure 2).
Once in the App Shop, you can either search for "Ruddr" or you can find Ruddr listed under the *Collaboration > Productivity* category (Figure 3).
On the Ruddr app overview page in Rippling, click on the **Connect Account** button (Figure 4) to begin the installation. The installation can now continue with [Step 2 - Configure Ruddr App in Rippling](#step-2-configure-ruddr-app-in-rippling).
### Step 2: Configure Ruddr App in Rippling
As a next step in Rippling, you will need either proceed with installing the Ruddr app as a Ruddr workspace administrator or designate a specific Ruddr admin for the installation (Figure 5). If you are a Ruddr admin, specify that you will install it and click the **Continue** button at the bottom-right of the screen to proceed to authorize the Ruddr app.
#### Permissions Authorization
Upon indicating that you are a Ruddr administrator, you will be prompted (Figure 6) to authorize Ruddr to access specific Rippling information. Review the permissions, then click the **Authorize** button at the bottom of the screen.
#### Application Access Rules for Your Organization
Upon authorizing Ruddr to read information for your organization, you will be prompted (Figure 7) by Rippling to assign access to people within your organization. Choose the option that best applies for your organization and click the **Continue** button to proceed.
As a secondary step in establishing access to the Ruddr app in Rippling, you will need to specify (Figure 8) at what point the access should take effect. Choose the appropriate option for your organization and click **Continue** to proceed.
#### Finalize the Installation / Connection in Rippling
After authorizing access to the Ruddr app in Rippling, you will be prompted (Figure 9) to finalize the connection. Click on the **Continue** button to proceed and be redirected to Ruddr if you do not have an active Ruddr session in your browser.
After establishing an active, logged-in session in Ruddr, you will be redirected to Rippling to complete the process there. You can either wait for the installation to complete (Figure 10) or click the **Continue** button to go directly to the Ruddr app management page in Rippling.
With the Ruddr app installed and configured in Rippling, it is now time to configure the integration in Ruddr: Step 3 - Configure the Rippling integration in Ruddr.
### Step 3 - Configure the Rippling Integration in Ruddr
There are a number of Rippling configuration settings in Ruddr, available from the Settings screen (Figure 11).
* Member Settings
* Time Off Settings
* Imported Data
* Sync Settings
* Manage Integration
This screen is immediately available after finalizing the installation of the Ruddr app in Rippling and is accessible by clicking the **Settings** button on the Rippling integration widget (Figure 12) on the Integrations screen in Ruddr workspace settings once the integration is enabled.
The following sections will cover each of these groups of settings.
#### Member Settings
In the Member Settings section (Figure 13), you can specify how you want the integration to manage Ruddr workspace members and relevant member data fields.
Clicking the **Change Settings** button will open the Member Settings drawer (Figure 14).
The following Member Settings are available:
* **Invite Created Members** - by default, the integration is set to create new workspace members in Ruddr but not send invitations to those members. By toggling this setting to **On**, the integration will automatically send invitations to Ruddr members when they are created by the Rippling integration. Note that when members are created in Ruddr, their [Security Role](/workspace-administration/security-roles) is set to the default Security Role in the workspace.
* **Create Billable Members** - by default, Ruddr members that are created by the Rippling integration are set as non-billable workspace members in Ruddr. Changing this to **On** will configure all newly created Ruddr members as billable in your workspace.
* **Update Member Status** - This setting controls whether or not the integration will automatically update a Ruddr member's status (Active or Inactive) based on the employee status in Rippling. If an employee in Rippling is terminated, and this setting is set to **On**, the integration will automatically deactivate the member in the Ruddr workspace. Conversely, if an inactive employee in Rippling is reactivated, or a new employee is created, the integration will set this member's workspace status to Active in Ruddr. By default, this setting is set to **Off**.
* **Update Member Active Dates** - enabling this setting will ensure that the Rippling hire date and termination date will be used as the Ruddr member's active date and inactive date, respectively.
* **Update Member Name** - sync the employee name from Rippling to Ruddr members.
* **Update Job Title** - this setting allows the integration to sync an employee's job title from Rippling to Ruddr members. If the Job Title does not exist as a record in [Custom Data](/workspace-administration/custom-data), then Ruddr will create the Job Title record.
* **Update Manager** - if the email of the employee's manager maps to a Ruddr member, the manager will be set on the employee's member record.
* **Update Internal ID** - enabling this setting will sync the employee's Rippling employee ID to the Internal ID field on the member profile in Ruddr.
* **Update Member Email** - if you want to keep the email address used in Rippling as the member's email in Ruddr, set this setting to **On**.
* **Member Mapping** - This setting controls how the integration maps Rippling employees to Ruddr members. Provided your workspace members use the same email address in both systems, you can leave this set to **Automatic**. Setting this to **Manual** requires you to manually map Rippling employees to Ruddr members. The default setting is **Automatic**.
**NOTE**: In order for Ruddr to create a member, an email address must be found in Rippling. There are multiple email values on an employee record in Rippling; the email must be entered on the "Work Email" field in order to be used by Ruddr in creating a member.
When Ruddr is set to automatically map members with Rippling, the Member Settings section (Figure 13) will present a **Preview Members** button. Clicking this button will open up the **Member Matching** drawer (Figure 15), which will display the Ruddr member and email address in the left column, and the Rippling employee and email address in the right column. In this drawer, you will be able to see the following:
* Successfully mapped members
* Members found in Ruddr but not in Rippling
* Members found in Rippling but not in Ruddr
When automatic mapping is set, the integration will automatically create a Ruddr member when a Rippling employee has no corresponding member in Ruddr.
When you select to manually set the Member Mapping, the Member Settings section (Figure 13) will display an **Edit Mappings** button.
Clicking the **Edit Mappings** button will present you with a Member Mappings drawer (Figure 16) that will allow you to map each member in Ruddr to the corresponding employee in Rippling.
#### Time Off Settings
In the Time Off Settings section (Figure 17), you can specify how you want to manage time off time entries from Rippling.
The following Time Off Settings are available:
* **Import Start Date** - Setting this date establishes the first date of time off requests that Ruddr will import from Rippling. You may prefer to import time off time entries beginning on the date the integration is setup.
* **Create Time Off Types** - The default setting is **On**. In this case, the integration will map time off types between the two systems when the time off type name is identical. If no match is found, the time off type will be created in Ruddr and the time off entry will be imported. If this setting is switched to **Off** and the integration does not find a matching time off type, the time off entry will not be imported.
* **Update Time Off Notes** - Ruddr will sync any description associated with a time off request in Rippling as Notes on the time entry that gets created. If you do not want these notes to be available on the time entries in Ruddr, you can change this setting to **Off**.
* **Time Off Type Mapping** - In Ruddr and Rippling, you can specify the types of time off available to employees. For example, you may allow employees to enter Vacation, Sick Leave, or Holiday time. The integration allows for Rippling time off types to be mapped to Ruddr time off types. Setting this to **Manual** will allow you to control the mappings between the two systems. The default setting is **Automatic**.
When the integration is set to automatically map time off types with Rippling, the Time Off Settings section (Figure 17) will present a **Preview Time Off Types** button. Clicking this button will open up the **Time Off Type Matching** drawer (Figure 18), which will display the Ruddr time off type in the left column and the Rippling time off type in the right column. In this drawer, you will be able to see the following:
* Successfully mapped types
* Time off types found in Ruddr but not in Rippling
* Time off types found in Rippling but not in Ruddr
When you choose to manually set the Time Off Type Mapping, the Time Off Settings section (Figure 17) will display an **Edit Mappings** button, as shown below (Figure 19).
Clicking the **Edit Mappings** button will present a Time Off Type Mappings drawer (Figure 20) that will allow you to map each time off type in Rippling to any time off type in Ruddr. Note that multiple Rippling time off types can be mapped to a single Ruddr time off type. This allows you to consolidate multiple Rippling time off types into a single Ruddr time off type. It also provides for a level of data privacy in that what might otherwise be sensitive time off information can be represented in Ruddr as any time off type you choose.
#### Imported Data
The Imported Data section (Figure 21) of the Rippling integration settings shows statistics about the data that has been synchronized from Rippling to Ruddr. This section also provides a mechanism to delete time off entries that have been synched from Rippling.
Clicking the **Delete Time Off Entries** button will present a dialog (Figure 22), asking you to confirm that you want to delete time entries synched from Rippling.
#### Sync Settings
Next, configure the sync settings. To do this, click the **Change Settings** button in the Sync Settings section (Figure 23).
Clicking the **Change Settings** button will open the Sync Settings drawer (Figure 24). From this drawer, you first specify whether or not you want the sync process to run on an automatic schedule. Although the default setting is **Off**, you most likely will want this setting turned **On**. When turned on, Ruddr will sync with Rippling on an hourly basis.
Next, you choose whether or not you want Members synchronized to Ruddr as part of this integration.
Finally, you specify whether or not you want approved time off requests in Rippling synched to Ruddr time off entries.
Note that from the **Sync Settings** section (Figure 23), you can also initiate a manual sync by clicking on the **New Manual Sync** button.
At this point, your Rippling integration is configured and ready to go. But, there are a couple of other areas of the Rippling integration to point out.
#### Manage Integration
The Manage Integration section provides two buttons. **Setup SSO** opens the SAML page for the Ruddr app in Rippling and is covered in [Set Up Single Sign-On](#set-up-single-sign-on). Clicking **Reauthorize Connection** opens a confirmation dialog. Reauthorizing the connection is only required if there is a connection issue or if the Rippling administrator that initially configured the integration can no longer access the Ruddr app within Rippling. Before reauthorizing, remove the Ruddr application from Rippling.
### Latest Sync Results / Sync Logs
At the bottom of the Rippling integration settings screen, you will find a log of sync results (Figure 25) for both Manual and Automatic syncs. Clicking on a row in the log will display the details (Figure 26) regarding that synchronization. Viewing these logs can assist the Workspace Admin in evaluating the Ruddr records that have been created by the sync as well as information related to the Member mapping and the Time Off Type mapping.
### Set Up Single Sign-On
If your organization uses Rippling as an identity provider, your members can log in to Ruddr with their Rippling credentials. This requires that the Identity and Access Management module is available in Rippling.
Installing the integration creates the Rippling authentication provider automatically, so you do not need to add it manually.
To begin, click the **Setup SSO** button in the Manage Integration section of the Rippling integration settings. This opens the SAML page for the Ruddr app in Rippling, where you will be asked for an **Entity ID** and an **Assertion Consumer Service URL** (ACS URL).
Both values are available on the Rippling authentication provider in Ruddr. Click on **Settings** in the main nav bar, select **Authentication**, open the action menu on the **Rippling** provider row, and choose **SAML Settings** (see [SAML Settings and Entity ID / ACS URL](/workspace-administration/authentication#saml-settings-and-entity-id-acs-url)). Copy the **Entity ID (Issuer)** and **Assertion Consumer Service URL** values into the matching fields in Rippling.
The SAML Settings drawer also provides a login URL you can use to test the provider before you set it as the [default authentication provider](/workspace-administration/authentication#set-default-authentication-provider-for-the-workspace) for your workspace.
# Sage Intacct Integration Overview
Source: https://help.ruddr.io/integrations/sage-intacct-integration-overview
Sage Intacct is a cloud financial management and accounting platform. With Sage Intacct, companies can manage their general ledger, accounts receivable, accounts payable, cash management, and multi-entity consolidation.
To learn more about the features of Sage Intacct, visit [https://www.sage.com/en-us/sage-business-cloud/intacct/](https://www.sage.com/en-us/sage-business-cloud/intacct/).
### Key integration benefits
The Ruddr integration for Sage Intacct allows companies to seamlessly connect their accounting and professional services platforms. Below is an overview of the main features of the Sage Intacct integration.
During setup you will choose whether Ruddr posts to Sage Intacct as Accounts Receivable (AR) and Accounts Payable (AP) transactions or as Order Entry and Purchasing documents, so that the integration matches how your accounting team works. The features below work the same way with either choice.
**Save Ruddr Invoices to Sage Intacct**
When a draft invoice in Ruddr is published, the confirmation window (Figure 1) will include a **Save to Sage Intacct** checkbox that is checked by default. If this checkbox is checked, the invoice will be published in Ruddr and immediately saved to Sage Intacct. If the checkbox is not checked, the invoice will only be published in Ruddr.
If an invoice was not saved to Sage Intacct upon publishing, you can later save it via the menu (Figure 3) on the invoice row in the invoices list (Figure 2).
Simply click the **Save to Sage Intacct** option on a published invoice to save that invoice. Note that this menu option will only exist for published invoices that are not currently saved to Sage Intacct.
**Synchronize Invoices between Sage Intacct and Ruddr**
It is not uncommon for an invoice to be manually adjusted once it is in Sage Intacct. Your company's accountant might prefer to adjust the invoice directly in Sage Intacct rather than unpublish the invoice in Ruddr. When an invoice is updated in Sage Intacct, Ruddr is notified of the change through the integration and Ruddr updates its version of the invoice. This ensures that both Ruddr and Sage Intacct have the same invoice information at all times.
Note that once an invoice is published in Ruddr, it can no longer be manually edited within Ruddr unless it is first unpublished. This helps ensure that a published invoice isn't inadvertently changed after it has been presented to the client. Since invoices can always be edited in Sage Intacct, a published invoice in Ruddr will be updated automatically if the invoice is changed in Sage Intacct.
When a published invoice has been saved to Sage Intacct, it can also be manually reloaded by clicking the **Reload from Sage Intacct** menu option (Figure 4) on the invoice row. This reload option is only needed if the Ruddr version of the invoice becomes out of sync with the Sage Intacct version, and it will only exist on invoices that have previously been saved to Sage Intacct.
**Deleting and Unpublishing Invoices**
When an invoice is unpublished in Ruddr, it is recommended that it also be removed from Sage Intacct. On the confirmation window for the unpublish action (Figure 5), there will be a **Remove from Sage Intacct** checkbox. With this option checked, Ruddr will automatically delete the invoice from Sage Intacct. Whether the checkbox is checked by default is controlled by the Delete/Unpublish Default Behavior setting in the integration Configuration.
When a published invoice is unpublished in Ruddr, it returns to its draft invoice state. The draft invoice can then be edited and republished when it is ready, and saved to Sage Intacct again at that time.
If a published invoice is deleted in Sage Intacct, that invoice will remain in Ruddr but will no longer be linked to a Sage Intacct invoice. If you want to delete the invoice from Ruddr as well, you can do that from the invoice menu options within Ruddr.
**Record Payments in Sage Intacct or Ruddr**
With the Sage Intacct integration installed, you can record client payments in either Sage Intacct or Ruddr. If a payment is entered in Sage Intacct, it will be automatically saved to Ruddr through the webhook. If a payment is entered in Ruddr, it will be saved to Sage Intacct unless you uncheck the **Save to Sage Intacct** checkbox on the Receive Payment screen. This checkbox is checked by default.
Once a payment has been saved to Sage Intacct, any updates to that payment in Sage Intacct will be automatically synchronized to the payment in Ruddr.
**Delete Payments**
A payment can be deleted in either Sage Intacct or Ruddr. If the payment is deleted in Ruddr, the delete payment confirmation window (Figure 6) will include a **Remove from Sage Intacct** checkbox. If this checkbox is checked, the payment will be deleted from both Sage Intacct and Ruddr. If the checkbox is not checked, the payment will only be deleted in Ruddr. As with unpublishing an invoice, the default state of this checkbox comes from the Delete/Unpublish Default Behavior setting in the integration Configuration.
If a payment is deleted in Sage Intacct, it will not be automatically deleted in Ruddr. You can manually delete the payment in Ruddr via the row option menu on the payments list screen.
**Apply Credit Notes in Sage Intacct**
When you issue a credit note against a client in Ruddr, it will be posted to Sage Intacct and applied to the client's outstanding balance. This keeps the client's AR balance in Sage Intacct aligned with the credits issued in Ruddr.
**Create Vendor Bills for Reimbursable Expenses**
The Sage Intacct integration optionally creates an AP bill in Sage Intacct any time a member in Ruddr has approved reimbursable expenses. Workspace members simply [create an expense report](/expenses/create-an-expense-report) and check the "Reimburse to me" option as needed on individual expense items (Figure 7).
Once per hour, Ruddr checks for newly approved reimbursable expenses. If a member has approved reimbursable expenses, Ruddr will create a bill in Sage Intacct for that member and add each of those reimbursable expenses as a line item on the bill. When the bill is paid within Sage Intacct, the bill payment will be reconciled back to Ruddr through the webhook and the expense items will show as reimbursed. If a bill payment is later reversed in Sage Intacct, that reversal will be reconciled back to Ruddr as well.
**Support for Multi-Entity and Multi-Currency Companies**
When you connect Ruddr to a Sage Intacct company, you select the specific entity to associate with your workspace during setup. For companies that use the Sage Intacct multi-currency module, Ruddr will post both the base currency and transaction currency amounts on invoices, payments, and bills so that your financials remain accurate across currencies.
### Setting up the Integration
For step-by-step instructions on setting up the Ruddr integration for Sage Intacct, see the [Sage Intacct Integration Setup](/integrations/sage-intacct-integration-setup) article.
For more information, see the [invoicing section](/billing/ready-to-bill) of the Ruddr help center.
# Sage Intacct Integration Setup
Source: https://help.ruddr.io/integrations/sage-intacct-integration-setup
Integrating Sage Intacct with Ruddr connects your accounting and professional services platforms so that invoices, payments, credit notes, and reimbursable expenses stay in sync. For Ruddr customers that leverage our onboarding services, your Ruddr onboarding lead will guide you through the process outlined below.
To install the Sage Intacct integration, follow the steps below. Note that you must be a Ruddr Workspace Admin to install integrations in Ruddr.
**Step 1: Prepare your Data**
Before you install the Sage Intacct integration, you should prepare your data in Sage Intacct and Ruddr, as follows:
* **Client names** - Your client names in Ruddr should use the exact same spelling as your customer names in Sage Intacct. If the spelling is identical, Ruddr will automatically map Ruddr clients to Sage Intacct customers during the integration setup process. If the spelling is not identical, you will be able to manually map Ruddr clients to Sage Intacct customers.
* **Invoice items** - Your Invoice Items in Ruddr will be mapped to Sage Intacct income accounts or to Sage Intacct items, depending on the Sync Method you choose in Step 7. Any invoice item that is not mapped will use the default from the Configuration. You can manage your Invoice Items in Ruddr by clicking on **Settings** in the main nav bar, selecting the **Lookups** tab, and choosing **Invoice Items** from the drop-down list on the right side of the screen.
* **Tax rates** - Your Tax Rates in Ruddr can be mapped to Sage Intacct tax details. These mappings are only used with the **Direct** sync method (Step 7). With the **Documents** sync method, Sage Intacct works out the tax itself from the item and the customer, and the mappings are ignored. If you do not charge sales tax, do not use custom tax rates, or plan to use the Documents sync method, then you do not need to configure this area. You can manage your Tax Rates in Ruddr by clicking on **Settings** in the main nav bar, selecting the **Lookups** tab, and choosing **Tax Rates** from the drop-down list on the right side of the screen.
**Step 2: Prepare Sage Intacct for Ruddr**
You need an admin in your Sage Intacct company to subscribe to Web Services, authorize Ruddr's Sender ID and Client ID, and create a Web Services User with the permissions Ruddr needs. Ruddr will connect to your company through the Sage Intacct REST API as that Web Services User, and all of the steps below are required.
**Subscribe to Web Services**
1. Go to the **Company** tab, then **Admin**, then **Subscriptions**.
2. Find **Web Services** and click it to subscribe.
3. Ignore any warning about additional charges.
While you are in Subscriptions, confirm that the company is subscribed to the applications Ruddr posts to: **Cash Management**, **General Ledger**, **Accounts Payable**, and **Accounts Receivable**. If you plan to use the **Documents** sync method (Step 7), then **Order Entry**, **Purchasing**, and **Inventory Control** are required as well.
**Authorize Ruddr in your company's security settings**
Both authorizations Ruddr needs exist on the same screen. Go to the **Company** tab, then **Setup**, then **Company**, click **Edit**, and open the **Security** tab (Figure 1).
1. In the **Web Services authorizations** section, click **Add** and enter Ruddr's Sender ID, **NexzaMPP**, so that Ruddr can make web services calls into your company.
2. In the **Authorized client applications** section, click **Add** and enter Ruddr's Client ID, **86e2667c8b260de08c9a.app.sage.com**, along with the Web Services User ID you create below. The Web Services User ID field is case-sensitive, so enter it exactly as it was created.
**Create the Web Services User**
1. Go to the **Company** tab, then **Admin**, then **Web Services Users**, and click **New**.
2. Enter a **User ID**, **Last name**, **First name**, and **Email address**.
3. Set the **User type** to **Business User**.
4. Click **Save** and ignore any warning about a charge for creating the user.
Keep track of the **Web Services User ID** you assign. You need it in the Authorized Client Applications entry above and again when you connect the integration in Ruddr.
**Grant the Web Services User its permissions**
How you grant permissions depends on whether your company uses role-based or user-based security:
* **Role-based security** - Go to the **Company** tab, then **Admin**, then **Roles**, and click **Add**. Name the role (we recommend creating a role specifically for Ruddr so that you control exactly which permissions the integration is given), and click **Save**. Subscribe the role to the applications listed below, click **Permissions** next to each application and grant the rows in the table, then open the Web Services User's **Roles information** tab and assign the role.
* **User-based security** - Return to the Web Services Users list, find the user you created, and click **Subscriptions**. Subscribe the user to the applications listed below, click **Permissions** next to each application, and grant the same rows.
Without these permissions, Ruddr will not be able to read or post the records it needs, either during setup or when publishing.
Subscribe the role to these applications (Figure 2): **Company**, **Cash Management**, **General Ledger**, **Accounts Payable**, **Accounts Receivable**, **Inventory Control**, **Order Entry**, and **Purchasing**. Leave the remaining applications unsubscribed.
Next, click **Permissions** next to each application and check the rows below. The table lists exactly what Ruddr needs.
| Application | Activity or list | Permissions |
| - | - | - |
| Company | Departments | List, View |
| Company | Entities | List, View |
| Cash Management | Checking accounts | List, View |
| General Ledger | Accounts | List |
| General Ledger | Multi-currency processing | Enable |
| Accounts Payable | Vendors | List, View, Add |
| Accounts Payable | Bills | List, View, Add |
| Accounts Payable | Posted payments | View |
| Accounts Receivable | Manage payments | List, View, Add, Delete |
| Accounts Receivable | Customers | List, View, Add |
| Accounts Receivable | Invoices | List, View, Add, Edit, Delete |
| Accounts Receivable | Adjustments | View, Add, Delete |
| Accounts Receivable | Posted payments | Edit reversal |
| Accounts Receivable | Tax detail | List, View |
| Inventory Control | Items | List |
| Inventory Control | Units of measure | List, View |
| Order Entry | Order Entry transactions | View, Add, Edit, Delete |
| Order Entry | Transaction definitions | List, View |
| Order Entry | Subtotal templates | View |
| Purchasing | Purchasing transactions | View, Add |
A few notes on these permissions:
* The **Delete** permissions allow you to remove a published invoice, credit note, or payment from Sage Intacct by unpublishing it in Ruddr.
* The **General Ledger > Multi-currency processing** row is only needed if your Sage Intacct company is multi-currency.
* **Inventory Control**, **Order Entry**, and **Purchasing** are only needed for the **Documents** sync method (Step 7). Granting them keeps both sync methods available if you change your mind later.
* If your company has **vendor approval** enabled, also grant the **Accounts Payable > Approve vendors** permissions. Ruddr will try to approve each vendor it creates, and will fall back to leaving the vendor unapproved if Sage Intacct refuses (see Step 3).
* If your company uses **entities**, confirm that the Web Services User has access to the entity you plan to connect. Without that access, the mapping lists in Ruddr will be empty even when every permission above has been granted.
* If you adjust these permissions after connecting, reconnect the integration in Ruddr so that the new permissions take effect. To reconnect, open the integration settings screen and click the wrench icon on the **Company** row.
**Step 3: Configure the Sage Intacct Modules Ruddr Posts To**
Ruddr relies on a few specific settings inside the Sage Intacct modules that it will post to. Review the settings below before you connect, as several of them will be read once, at connect time.
**All companies**
* **Dimensions on accounts** - Department is the only dimension Ruddr will send. If an income, expense, or AR account requires another dimension, such as a location, project, or class, make that dimension optional on the accounts Ruddr posts to.
* **Entity access** - The Web Services User must have access to the entity you connect, or the mapping lists in Ruddr will be empty.
* **Checking accounts** - The bank account you map for a currency on the Deposit Accounts row must belong to the connected entity and be denominated in that currency. For your base currency you can map an undeposited-funds GL account instead of a bank account. Other currencies must use a bank account.
* **Multi-currency** - If you invoice in a currency other than the entity's base currency, subscribe to the Multi-currency module and keep your exchange rates up to date. Sage Intacct will apply its own rate to each transaction.
* **Vendor approval** - If vendor approval is enabled in Accounts Payable, Ruddr will try to approve each vendor it creates for reimbursable expenses. Sage Intacct does not allow the same user to approve a vendor it created, so if your company enforces that rule, the vendor will remain unapproved and a second approver will need to approve it before bills can post against it.
**Documents sync method**
These settings apply if you choose the **Documents** sync method in the Configuration (Step 7):
* **Transaction definitions** - Ruddr will post to the standard Sage Intacct transaction definitions: **Sales Invoice** and **Credit Memo** in Order Entry, and **Vendor Invoice** in Purchasing. If your company has renamed or customized these definitions, let us know before you connect.
* **Discounts** - If you apply discounts on Ruddr invoices, allow discounts on extended price in the transaction definition. Where discounts are not allowed, Ruddr will post the discounted amount as the line price instead.
* **Items** - Ruddr will only list active non-inventory items: Non-Inventory and Sales-only Non-Inventory items for invoices and credit notes, and Non-Inventory and Purchase-only Non-Inventory items for expense bills. Each of those items must belong to a unit-of-measure group.
Ruddr will read these settings when the connection is established. If you change any of them later, reconnect the integration in Ruddr, using the wrench icon on the **Company** row of the integration settings screen, so that the new settings take effect.
**Step 4: Find the Sage Intacct Integration**
To get to the integrations area of Ruddr, click on the **Settings** main nav bar option and then select the **Integrations** tab (see [Integrations](/workspace-administration/integrations) for more information). The Integrations tab is separated into two sections which are Active Integrations and Available Integrations. If you have not previously set up the Sage Intacct integration, it will be listed in the Available Integrations section. Click on the **Install** button at the bottom of the integration widget (Figure 3).
Note that Ruddr allows only one accounting integration per workspace by default. If you already have QuickBooks Online or Xero installed, the **Install** button will be disabled until you remove the other accounting integration (see [Using Multiple Accounting Integrations](/billing/using-multiple-accounting-integrations)).
**Step 5: Connect the Integration**
Once you click on the **Install** button, Ruddr will display the **Setup Sage Intacct Integration** window (Figure 4). Enter the following values and click **Save**:
* **Sage Company ID** - The ID of your Sage Intacct company.
* **Web Services User ID** - The Web Services User ID you created in Step 2.
Ruddr will then ask you to select the entity to connect to this workspace (Figure 5). Choose the entity and click **Connect**. Every Sage Intacct company has at least one entity, so this step will appear even if your company is not multi-entity. Any entity that is already connected to this Ruddr workspace will be marked as connected and cannot be selected again.
**Step 6: Review the Automated Mappings**
Once the connection is established, Ruddr will automatically load records from Sage Intacct and attempt to map the correlated records shown below:
| Ruddr Record | Sage Intacct Record |
| - | - |
| Clients | Customers |
| Invoice Items | Income Accounts or Items |
| Tax Rates | Tax Details |
| Deposit Accounts | Checking Accounts or Cash GL Accounts |
| Payment Methods | Payment Methods |
| Members | Vendors |
| Expense Categories | GL Accounts or Items |
In order for these items to automatically map, they must have the **same name in both platforms**. The comparison ignores differences in capitalization and accents. If the names do not match when the integration is set up, you can manually map the items, as detailed in the steps below.
Two categories are matched differently. Tax Rates will match a Sage Intacct tax detail whose ID or description matches the Ruddr tax rate name. Deposit Accounts are not matched by name at all: for each currency in your workspace, Ruddr will map the Sage Intacct checking account in that currency when the entity has exactly one.
Note that what Invoice Items and Expense Categories map to depends on the **Sync Method** you choose in the Configuration (see Step 7). With the **Direct** method they map to Sage Intacct GL accounts; with the **Documents** method they map to Sage Intacct items. The Tax Rate mappings are only used with the **Direct** method.
The Settings tab of the integration (Figure 6) shows each category with a status icon and a count of how many items are connected. A green check means the category is ready; a red icon indicates that something needs your attention.
**Step 7: Set the Configuration Defaults**
Click the **Edit** icon on the Configuration row to set the default values that Ruddr uses when posting to Sage Intacct (Figure 7).
The most important choice here is the **Sync Method**, which determines how Ruddr will post invoices, credit notes, and reimbursable expenses to Sage Intacct:
* **Direct (GL accounts)** - Ruddr will post Accounts Receivable (AR) and Accounts Payable (AP) transactions directly against Sage Intacct General Ledger (GL) accounts. Choose this if you want Ruddr to control the accounting lines and you calculate any tax in Ruddr.
* **Documents (Order Entry & Purchasing)** - Ruddr will post Order Entry invoices and credit memos, and Purchasing bills, based on Sage Intacct items, and Sage Intacct will calculate the tax. Choose this if you use Sage Intacct's Order Entry and Purchasing modules.
If your Sage Intacct entity uses Advanced Tax or Simple Tax, choose **Documents**, which is the only method that supports them.
You can change the Sync Method later, but the two methods use different mappings, so your Invoice Items and Expense Categories will need to be mapped again. Reconnect the integration after switching to Documents, using the wrench icon on the **Company** row, so that Ruddr picks up your transaction definition settings.
The remaining settings adapt to the Sync Method you choose:
* **Integration Name** - The name used to reference this Sage Intacct integration within Ruddr.
* **Default Ruddr Invoice Item** - Used when updating a Ruddr invoice from Sage Intacct if the Sage line is not mapped to an Invoice Item in Ruddr.
* **Default Sage Department** - Used on transaction lines that are not mapped to a Sage Department.
* **Default Sage Income Account** (Direct) or **Default Sage Item** (Documents) - Used when publishing an invoice or credit note if a Ruddr Invoice Item is not mapped to a Sage income account or item.
* **Delete/Unpublish Default Behavior** - Controls whether the **Remove from Sage Intacct** checkbox is checked by default when you unpublish an invoice or credit note, or delete a payment, in Ruddr.
* **Default Payment Method** - Used when posting an AR payment if the Ruddr payment method is not mapped to a Sage payment method. A payment needs either a mapped payment method or this default, or it cannot be saved to Sage Intacct.
* **Default Taxable / Non-Taxable Tax Detail** - Shown only when your Sage Intacct company uses VAT, which requires a tax detail on every line. Ruddr will use these tax details for taxable and non-taxable invoice lines when a Ruddr tax rate is not mapped to a Sage tax detail.
* **Reimbursable Expenses Sync** - When enabled, approved reimbursable expenses will be exported to Sage Intacct as vendor bills.
* **Reimbursable Expenses Sync Start Date** - When the sync is enabled, reimbursable expenses dated before this date will not be synced. A start date is required when the sync is enabled.
* **Default Sage Expense Account** (Direct) or **Default Purchasing Item** (Documents) - Used when syncing an expense if its Expense Category is not mapped to a Sage account or item.
* **Default Non-Taxable Purchasing Tax Detail** - Shown only when your Sage Intacct company uses VAT. Ruddr will use this tax detail on reimbursable expense bills, which carry no tax.
Once the Configuration is complete, its row on the settings screen will show a status of **Ready**. Until then, the row will list what is still missing, such as a deposit account for your base currency or a default income account.
**Step 8: Set Up the Webhook**
So that Ruddr stays up to date when records change in Sage Intacct, you will configure a set of triggers in Sage Intacct that notify Ruddr. Click the **Edit** icon on the Webhook row to open the Sage Intacct Webhook drawer (Figure 8), which provides the Client ID, Target URL, and document templates you will need.
In Sage Intacct, go to the **Platform Services** tab, then **Triggers**, and create one trigger per object listed in the drawer (AR Invoice, AP Bill, AR Payment, and AP Payment). For each trigger, set the **Type** to HTTP post and the **Encoding** to JSON, enable **Use webhook delivery**, and paste in the Client ID and Target URL from the drawer. Then copy the matching document template into the trigger's Document Template field and tick the after-event checkboxes listed for that object.
**Step 9: Manually Map any Remaining Records**
If Ruddr is unable to automatically map some of your Clients, Invoice Items, Tax Rates, Deposit Accounts, Payment Methods, or Expense Categories, this will be apparent in the Details column of the integration settings (Figure 6). In the example above, Ruddr has automatically mapped 2 of 23 Clients, which means the remaining Clients will need to be mapped manually.
Note that each Ruddr client can only be mapped to one Sage Intacct customer. This is because payments that are created in Ruddr can only be applied to one Ruddr client.
To manually map the remaining Clients to a Sage Intacct customer, simply click the **Edit** icon on the Clients row. This will open up the Client Mappings drawer (Figure 9), which will show the clients that have been automatically mapped and those that need manual mapping. The other categories work the same way.
You do not have to map every client before you start invoicing. If you publish an invoice for a client that is not yet mapped, Ruddr will match the client to a Sage Intacct customer of the same name, or create one, and save the mapping.
You can also reload the records for any category at any time by choosing **Load from Sage Intacct** from the row's menu. This is useful when you add new customers, accounts, or tax details in Sage Intacct after the initial setup.
**Step 10: Map Members for Reimbursable Expenses**
If you enabled the Reimbursable Expenses Sync option in the Configuration, you should map Ruddr members to Sage Intacct vendors. Ruddr will attempt to automatically map each member to a vendor with a matching name. Any members that are not automatically mapped can be mapped manually by clicking the **Edit** icon on the Members row. Once a member has approved reimbursable expenses, Ruddr will add them to a vendor bill in Sage Intacct for that member, and bill payments made in Sage Intacct will be reconciled back to Ruddr through the webhook.
The **Expense Sync** tab of the integration shows the result of each sync and lets you start one immediately rather than waiting for the next scheduled run.
### Need Some Help?
Properly configuring the Sage Intacct integration is critical and best executed alongside your Ruddr onboarding lead. If you are having difficulty with any of the steps above, reach out to our support team at [help@ruddr.io](mailto:help@ruddr.io) and we'll assist.
# Salesforce Integration Overview
Source: https://help.ruddr.io/integrations/salesforce-integration-overview
Give your delivery team pipeline visibility by syncing companies, contacts, and opportunities from Salesforce into Ruddr.
Salesforce is a software platform that provides a variety of business solutions and is best known for its customer relationship management (CRM) and sales automation capabilities.
To learn more about the features of Salesforce, visit [https://www.salesforce.com/products/what-is-salesforce](https://www.salesforce.com/products/what-is-salesforce).
### Integration overview
Leveraging the Salesforce integration requires that Ruddr's [Pipeline](/pipeline/pipeline-overview) feature is enabled.
The Salesforce integration allows you to easily import Companies, Contacts, Opportunities, and Activities into Ruddr from Salesforce.
### Key integration benefits
The Salesforce integration allows companies to seamlessly connect their CRM and professional services platforms. Below is an overview of the main features of the Salesforce integration.
#### Give your delivery team visibility into your pipeline
Ruddr's Pipeline feature is designed to offer your workspace members insight into sales opportunities and sales-related forecast information. By leveraging the Salesforce integration, you can make that information available to delivery and operations personnel without the need to provision additional Salesforce licenses.
#### Sync companies, contacts, and opportunities from Salesforce to Ruddr
You can easily sync companies, contacts, and opportunities to Ruddr. Note that this sync process is always unidirectional from Salesforce to Ruddr. The process can be setup to automatically run on a frequency determined by you. Manual synchronization can be run as needed.
Pipeline data that originates in Salesforce will be read-only in Ruddr, ensuring that your sales team's efforts to manage this data in the source system are not affected by the interaction with this data from within Ruddr.
#### Convert Salesforce opportunities into Ruddr projects
Any opportunities synced from Salesforce will be available in Ruddr's Pipeline area. Ruddr projects can be created from these opportunities.
### Setting up the integration
For step-by-step instructions on setting up the Salesforce integration, see the [Salesforce Integration Setup](/integrations/salesforce-integration-setup) article.
For more information, see the [Pipeline](/pipeline/pipeline-overview) section of the Ruddr help center.
# Salesforce Integration Setup
Source: https://help.ruddr.io/integrations/salesforce-integration-setup
Create a Salesforce integration user and permission set, then install and configure the Salesforce integration in your Ruddr workspace.
Integrating Salesforce with Ruddr provides numerous benefits as outlined in the [Salesforce Integration Overview](/integrations/salesforce-integration-overview) article. To install the Salesforce integration, follow the steps below. Note that you must be a Ruddr Workspace Admin to install integrations in Ruddr and that the [Pipeline](/pipeline/pipeline-overview) feature in Ruddr must be enabled.
There are three, distinct activities required for setting up the Salesforce integration:
1. Set up and Configure a Salesforce Integration User
2. Set up and Configure Salesforce Permission Set
3. Install and Configure Salesforce Integration in Ruddr
The actions taken in the first two activities listed will produce a **Username** and **Security Token**, which will be used to install the Salesforce integration.
### Set up and Configure a Salesforce Integration User
Before following the steps below, please be sure to consult the Salesforce literature on [Best Practices for Configuring your Integration User](https://admin.salesforce.com/blog/2023/best-practices-for-configuring-your-integration-user). The steps outlined here will be tailored to the needs for Ruddr's Salesforce integration, but recommended best practices as documented by Salesforce should be followed.
The Salesforce integration user will be the account that Ruddr leverages for read-only access to Companies, Contacts, and Opportunities. There are four steps to creating this user:
1. Create a new user
2. Configure the user
3. Verify the new user account
4. Reset the security token for the new user account
5. Convert user to a Salesforce integration license
#### Step 1: Create a new user
While logged in as a Salesforce administrator, navigate to the Users list page. From there, click the **New User** link / button.
#### Step 2: Configure the user
Generally, you will configure this user as you normally would (Figure 1). Note that the email address specified for this user will need to be a valid address that you will be able to access. You may want to consider setting up a system email account for this user. You will need to verify that account, where you will receive important information in a later step.
As part of the user configuration, assign a role, license, and profile (Figure 2) as if this is a "typical" user with login capability. Default or disable other settings as needed.
#### Step 3: Verify new user account
Once you have created the user, Salesforce will send an email (Figure 3) to the address specified for that user. To verify the account, access the email inbox provided in Step 2. Click the **Verify Account** link in the verification email from Salesforce.
Upon clicking the **Verify Account** link, you will be prompted to enter a new password (Figure 4). Create a new password for the account. Ensure that this password is a secure password, as it will be used to in the connection to Salesforce from Ruddr as part of the Salesforce integration.
#### Step 4: Reset the security token for the new user account
Once you have provided a new password for the new user and are logged into Salesforce with that account, you will need to reset the security token for the account.
Navigate to *My Settings > Personal > Reset My Security Token* (Figure 5). From here, click the **Reset Security Token** button on that page.
A new token will be generated and sent (Figure 6) to the email address on the integration user's account. This token will used in providing credentials to Ruddr when installing the Salesforce integration.
#### Step 5: Convert the integration user to a Salesforce Integration license
Once you have received the new security token from Step 4, edit the user record in Salesforce (while logged in as a Salesforce administrator). Change the **User License** (Figure 7) on the user to a Salesforce Integration license. Additionally, set the **Profile** of the user to Salesforce API Only System Integrations.
Applying this license will restrict the user from being able to log into Salesforce as a normal user. The user will now be limited to accessing / connecting to Salesforce via the API.
With the new user configured and a security token provided, you are now ready move on to the second activity where you will establish Salesforce permission sets for the integration user.
### Set up and Configure Salesforce Permission Set
Once the integration user has been created, you will need to assign permissions to the user such that it can access specific Salesforce data via the API. This process will also result in establishing restrictions for the user, in that you will only be providing read access to companies, contacts, and opportunities in Salesforce and any related activity data for those entities.
The four steps to complete this activity are as follows:
1. Create a new permission set
2. Configure the object settings for the permission set
3. Grant the permission set access to Salesforce activities
4. Assign the new permission set to the integration user
#### Step 1: Create a new permission set
As a Salesforce administrator, access the Permission Sets for your Salesforce instance. Create a new permission set (Figure 8) for the Ruddr API Integration. Ensure that the permission set license is set to the Salesforce API Integration license (Figure 9) specified for the integration user in the steps above.
#### Step 2: Configure the Object Settings for the new permission set
Edit the new permission set (Figure 10), selecting to manage the Object Settings for the permissions set.
Assign Object and Field permissions to Accounts (Figure 11), Opportunities, and Contacts to include the following for *all fields*:
* Read
* View All with Read Access
Only a subset of fields will be used for populating Ruddr data from Salesforce. However, any future enhancements to the Salesforce integration in Ruddr may include support for additional fields on the Account, Opportunity, and / or Contact objects, therefore it is recommended to apply the above settings for all fields on these objects.
#### Step 3: Grant permission set access to Salesforce activities
Navigate to the Permission Set Overview and modify System Permissions (Figure 12) to give access to activities.
From within the System Permissions area of the permission set, enable **Access Activities** (Figure 13).
#### Step 4: Assign the permission set to the integration user
Navigate to the Permission Set Overview and click the **Manage Assignments** button (Figure 14) at the top of the overview. From here (Figure 15), you will assign the permission set to the newly created API user.
### Install and Configure Salesforce Integration in Ruddr
With the Salesforce API user set up and configured, with the appropriate permission set assigned, you are now ready to provide the related credentials to Ruddr to install the Salesforce integration.
#### Step 1: Install the Salesforce Integration
As a workspace administrator in Ruddr, navigate to the Integrations area of workspace settings (Figure 16).
From here, click on the **Install** button (Figure 17) found on the Salesforce tile under the available integrations. NOTE: this button will be disabled if the Ruddr [Pipeline](/pipeline/pipeline-overview) feature has not been enabled.
Upon clicking the **Install** button, you will be prompted (Figure 18) for the Salesforce integration user's credentials for connecting to the Salesforce API for the first time.
**NOTE:** The security token is the token that was sent to the integration user's email account from the [Set Up and Configure a Salesforce Integration User](#set-up-and-configure-a-salesforce-integration-user) activity above.
The security passphrase that will be generated by Ruddr will be a combination of the Password and the Security Token.
#### Step 2: Configure Integration
Once connected, you will be taken to the Salesforce integration settings page in Ruddr. Here, you will configure various Sync Settings to control the data that is synced from Salesforce to Ruddr.
Click the **Change Settings** button in the Sync Settings section (Figure 19) of the settings page.
This will present the Sync Settings drawer (Figure 20), where you will be able to set the following settings:
* **Automatically Sync**: Set whether or not the Salesforce integration will automatically sync data from Salesforce to Ruddr on an interval. You can also set the **Frequency** of the sync with one of the following values.
* Every Hour
* Every Two Hours
* Every Three Hours
* Every Four Hours
* Every Eight Hours
* Every Twelve Hours
* Daily
* **Start Date**: Specify the earliest Start Date from which you want to sync opportunities. Any opportunity created prior to the Start Date will not be synced.
* **Opportunity Minimums**: Enable **Filter by Minimum Probability** and/or **Filter by Minimum Amount** to exclude opportunities from the sync. Each filter is applied independently — turning one on does not require the other.
* When **Filter by Minimum Probability** is on, any opportunity with a Probability less than the **Minimum Probability** will not be synced.
* When **Filter by Minimum Amount** is on, any opportunity with an amount less than the **Minimum Amount** will not be synced. To sync opportunities that have no Amount set in Salesforce, turn **Filter by Minimum Amount** off.
* **Opportunity Types**: Any opportunities with the selected opportunity types will be synced. These opportunity types are based on the types in your Salesforce instance.
* **Pipelines:** Ruddr supports multiple pipelines and you can choose whether or not you want all Salesforce opportunities to be associated with a single, default pipeline ("One Pipeline") in Ruddr or if you would like to split Salesforce Sales Processes into separate Ruddr pipelines ("Split Pipeline"). Any time you select an additional pipeline in the settings, you will want to [follow this guidance](#multiple-salesforce-pipelines).
* **Imported Member Capacity:** Ruddr will create inactive members in Ruddr as needed to support various fields on pipeline entities, including Contact Owner, Company Owner, and Opportunity Owner. Specify whether you want these inactive members to be created with the workspace default [capacity](/workspace-administration/member-profile#capacity-periods) or without a capacity ("No Capacity").
* **Practice & Business Unit Defaults:** New records synced from Salesforce are assigned the Practice and/or Business Unit of the workspace member mapped to their Salesforce opportunity owner. Enable **Use opportunity owner practice** and/or **Use opportunity owner business unit** to turn this on. These settings only appear if the [Practices](/workspace-administration/features#practices) and/or [Business Units](/workspace-administration/features#business-units) features, respectively, are enabled in your workspace, and they only stamp a Practice or Business Unit onto newly created records — they never overwrite the Practice or Business Unit on a record that already exists in Ruddr.
##### Multiple Salesforce Pipelines
If, at any time, you opt to either sync opportunities with multiple pipelines (selecting "Split Pipeline" in the **Pipelines** section of the integration settings) or include an additional Salesforce sales process for synchronization, you will need to select that sales process (Figure 21) from the settings drawer (Figure 20) within the Salesforce integrations area in Ruddr and save the settings.
Then, you will need to immediately [run a manual, full synchronization](#step-3-manually-run-a-full-salesforce-synchronization) to ensure that the additional pipeline's settings, custom data, and sales data are synched for the first time.
#### Step 3: Manually Run a Full Salesforce Synchronization
Once you have specified the various sync settings, click the **New Manual Sync** button found on the Sync Settings section (Figure 19) of the integrations settings page.
This will prompt you (Figure 22) to select whether or not you wish to run a **Full synchronization**, which will fetch all company, contact, opportunity, and activity data going back to the Start Date that you specified in Sync Settings in Step 2.
Once the initial, full synchronization has been run, you will be able to leave the **Full synchronization** setting unchecked, which will result in an incremental sync that will only bring over any updates since the most recent, successful sync was completed.
#### Step 4: Review the Sync Results Log
For both Automatic and Manual syncs, Ruddr will provide a log of the synchronization results, which can be accessed from the Latest Sync Results section (Figure 23) on the Salesforce integration settings page.
# Single Sign On (SSO) - Identity Provider Setup
Source: https://help.ruddr.io/integrations/single-sign-on-sso-identity-provider-setup
Configure Microsoft Entra ID, Google Workspace, Okta, or Rippling as your SAML identity provider for single sign-on with Ruddr.
Prior to configuring your Identity Provider, please be sure to, initially, [create the authentication provider](/workspace-administration/authentication#setting-up-a-new-authentication-provider) in Ruddr via Workspace Settings. Once the authentication provider has been created, the **Entity ID** and **Assertion Consumer Service URL** (ACS URL) referred to in the below steps will be available.
There are four providers that can be setup for Ruddr:
* [Microsoft Entra ID](#microsoft-entra-id)
* [Google Workspace](#google-workspace)
* [Okta](#okta)
* [Rippling](#rippling)
Follow the steps below to configure your preferred Identity Provider.
### Microsoft Entra ID
1. Login to Microsoft Entra ID with an administrator account.
2. Create the Ruddr application.
1. Go to “Identity → Applications → Enterprise Applications”.
2. Select “New application”.
3. Select “Create your own application”.
4. Type “Ruddr” as the app name.
5. Select “Integrate any other application you don’t find in the gallery (Non-gallery)”.
3. Setup Single-Sign On.
1. Select “Single sign-on”.
2. Select “SAML”.
3. Edit the “Basic SAML Configuration”.
4. Set the “Identifier (Entity ID)”.
1. Click “Add identifier”.
2. Copy the “Entity ID” from Ruddr. The Entity ID will be available via the [SAML Settings](/workspace-administration/authentication#saml-settings-and-entity-id-acs-url) that were created with the authentication provider you setup in workspace settings.
3. Paste the value into the input.
5. Set the “Reply URL (Assertion Consumer Service URL)”.
1. Click “Add reply URL”.
2. Copy the “Assertion Consumer Service URL” from Ruddr. This ACS URL will be available via the [SAML Settings](/workspace-administration/authentication#saml-settings-and-entity-id-acs-url) that were created for the Microsoft Entra ID authentication provider in workspace settings.
3. Paste the value into the input.
6. Save and Close the “Basic SAML Configuration” editor.
4. Download the Metadata XML.
1. Locate the “SAML Certificates” section.
2. Dowload the “Federation Metadata XML”.
3. Upload this file to the auth provider in Ruddr to complete the configuration.
5. Assign Microsoft Entra ID Users to this application.
6. Finish the setup on Ruddr (Service Provider).
7. (Optional) Test single sign-on from within Microsoft Entra ID.
8. (Optional) Verify that Ruddr appears in [https://myapps.microsoft.com/](https://myapps.microsoft.com/).
### Google Workspace
1. Login to Google Workspace with an administrator account.
2. Create the Ruddr application.
1. Go to “Apps → Web and Mobile Apps”.
2. Select “Add App → Add custom SAML app”.
3. Type “Ruddr” as the app name.
4. Click “Continue”.
3. Google Identity Provider Details
1. Click “Download Metadata”.
2. Upload this file to the auth provider in Ruddr to complete the configuration.
3. Click “Continue”.
4. Service Provider Details
1. Set the “ACS URL”.
1. Copy the “Assertion Consumer Service URL” from Ruddr. This ACS URL will be available via the [SAML Settings](/workspace-administration/authentication#saml-settings-and-entity-id-acs-url) that were created for the Google Workspace authentication provider in workspace settings.
2. Paste the value into the input.
2. Set the “Entity ID”.
1. Copy the “Entity ID” from Ruddr. The Entity ID will be available via the [SAML Settings](/workspace-administration/authentication#saml-settings-and-entity-id-acs-url) that were created with the authentication provider you setup in workspace settings.
2. Paste the value into the input.
3. Click “Continue”.
5. Attribute Mapping
1. Click “Finish”.
6. Assign Google users to this application.
7. Finish the setup on Ruddr (Service Provider).
8. (Optional) Use the “Test SAML Login” button.
### Okta
1. Login to Okta with an administrator account.
2. Create the Ruddr application.
1. Go to “Applications → Applications”.
2. Select “Create App Integration”.
3. Select “SAML 2.0”.
4. Type “Ruddr” as the app name.
5. Click “Continue”.
3. Configure SAML
1. Set the “Single sign-on URL”.
1. Copy the “Assertion Consumer Service URL” from Ruddr. This ACS URL will be available via the [SAML Settings](/workspace-administration/authentication#saml-settings-and-entity-id-acs-url) that were created for the Okta authentication provider in workspace settings.
2. Paste the value into the input.
2. Set the “Audience URI (SP Entity ID)”.
1. Copy the “Entity ID” from Ruddr. The Entity ID will be available via the [SAML Settings](/workspace-administration/authentication#saml-settings-and-entity-id-acs-url) that were created with the authentication provider you setup in workspace settings.
2. Paste the value into the input.
3. (Optional) Edit the “Application username”.
1. This should be the field that maps to the member’s email in Ruddr.
4. Click “Next”.
4. Feedback
1. Click “Finish”.
5. Download the Metadata XML.
1. Locate the “Metadata details → Metadata URL”.
2. Copy the value and open it in a new browser window.
3. Download the file.
4. Upload this file to the auth provider in Ruddr to complete the configuration.
6. Assign Okta users to this application.
7. Finish the setup on Ruddr (Service Provider).
8. (Optional) Use the “Test SAML Login” button.
### Rippling
Rippling works differently from the other providers. Installing the [integration](/integrations/rippling-integration-setup) creates the Rippling authentication provider automatically, so you do not need to add it manually.
To configure Rippling as your Identity Provider, including where to find the **Entity ID** and **Assertion Consumer Service URL** that Rippling asks for, follow [Set Up Single Sign-On](/integrations/rippling-integration-setup#set-up-single-sign-on) in the Rippling Integration Setup article.
In addition to configuring the Identity Provider, you also need to [configure the Service Provider](/integrations/single-sign-on-sso-service-provider-setup).
# Single Sign On (SSO) Overview
Source: https://help.ruddr.io/integrations/single-sign-on-sso-overview
Understand how single sign-on works, including identity providers, service providers, and SAML-based authentication in Ruddr.
Single sign-on (SSO) is an authentication mechanism that allows users to securely access different applications and services using a single set of login credentials. The primary benefit of SSO is that users no longer need to remember distinct username and password combinations for each application that they use.
SSO has become increasingly important as software-as-a-service (SaaS) applications and remote work have gained in popularity. SSO provides users with a simple and consistent login experience across applications.
**How does SSO work?**
SSO is based on the notion of federated identity, which is the sharing of identity attributes across trusted but autonomous systems. When a user is trusted by one system, the user is automatically granted access to other systems via an established trust relationship. This provides the framework for modern SSO solutions, which are enabled through protocols like SAML 2.0.
**Identity Providers and Service Providers**
An Identity Provider is a federation partner that vouches for the identity of a user while a Service Provider is a federation partner that provides services to the user. The Identity Provider handles the management of user identities and the Service Provider provides application services.
The Identity Provider is set up and configured to store and manage the user identities and credentials. The Identity Provider authenticates the user and then provides an authentication token to the Service Provider.
Each application or service must be registered with the Identity Provider, establishing trust between the systems. The specific authentication flow (e.g., SAML) is implemented, directing authentication requests from the Service Provider to the Identity Provider and handling the exchange of authentication tokens.
Service Providers might also maintain a local account for the user, along with attributes that are unique to the service.
**Configuring SSO in Ruddr**
Configuring SSO in Ruddr is a simple process. These steps include [creating the authentication provider](/workspace-administration/authentication) in workspace settings, configuring the desired [Identity Provider](/integrations/single-sign-on-sso-identity-provider-setup) (such as Google or Okta) and then finalizing the configuration of Ruddr as the [Service Provider](/integrations/single-sign-on-sso-service-provider-setup).
Ruddr currently supports three Identity Providers, which are:
* [Microsoft Entra ID](/integrations/single-sign-on-sso-identity-provider-setup#microsoft-entra-id)
* [Google Workspace](/integrations/single-sign-on-sso-identity-provider-setup#google-workspace)
* [Okta](/integrations/single-sign-on-sso-identity-provider-setup#okta)
In addition, Ruddr supports any standard SAML-compliant provider.
See the [Identity Provider Setup](/integrations/single-sign-on-sso-identity-provider-setup) article and [Service Provider Setup](/integrations/single-sign-on-sso-service-provider-setup) article for more information.
# Single Sign On (SSO) - Service Provider Setup
Source: https://help.ruddr.io/integrations/single-sign-on-sso-service-provider-setup
Set up Ruddr as an SSO service provider by creating a SAML auth provider, uploading your metadata XML, and testing the login.
Follow these steps to configure Ruddr as an SSO Service Provider.
1. Login to Ruddr as a Workspace Admin.
2. Create a new auth provider.
1. Go to “Authentication” within Settings.
2. Click the “New Auth Provider” button.
3. Select your authentication provider.
4. Select “SAML” as the authentication method.
5. Optionally change the name, key and/or description.
1. Name: what members will see in the login page.
2. Key: can be used to select a specific provider for testing.
6. Click the "Save & Close" button
3. [Setup the Identity Provider](/integrations/single-sign-on-sso-identity-provider-setup)\
1\. From the Authentication list page in Ruddr, expand the row context menu and select “SAML Settings”.\
2\. Keep this window open to setup the identity provider.\
3\. After [setting up the identity provider](/integrations/single-sign-on-sso-identity-provider-setup), continue with the following step.
4. Upload the Metadata XML.
1. Edit the Auth Provider.
2. Upload the Metadata XML.
3. Click the "Save & Close" button.
5. Login with your new auth provider.
1. From the Authentication list page in Ruddr, expand the row context menu and select “SAML Settings”.
2. Click the link shown in the “Test Auth Provider” section.
3. The login page should display a button that reads “Login with ”.
4. Use the button to login with your auth provider.
6. Set the default provider.
1. From the Authentication list page in Ruddr, expand the row context menu and select “Set as default”.
2. Read the confirmation and click “OK”.
3. Every member will now see this auth provider’s button in the login page.
# Slack Integration Overview
Source: https://help.ruddr.io/integrations/slack-integration-overview
Track time, receive missing time alerts, and get Ruddr notifications without leaving Slack using the Slack integration.
Slack is a channel-based messaging platform. With Slack, people can work together more effectively, connect all their software tools and services, and find the information they need - all within a secure, enterprise-grade environment.
Slack enables users to:
* Organize conversations in channels
* Share files and documents
* Search the conversation archive
* Make voice and video calls
* Share channels with clients, vendors, and partners
To learn more about the features of Slack, visit [https://slack.com/features](https://slack.com/features).
### Key integration benefits
The Ruddr integration for Slack significantly enhances the functionality and user experience of Ruddr. It is highly recommended that you install the Ruddr integration for Slack for your workspace. Below is an overview of the main features of the Slack integration.
**Track Time Directly within Slack**
With the Slack integration configured, workspace members can track time in Ruddr without ever leaving Slack. To do this, simply type the following slash command into the new message box in Slack.
```
/ruddr time
```
This command will take you through the steps of creating a time entry in Slack. Note that the time command will also allow you to view all time entries for any day and edit a time entry.
**Missing Time Alerts**
In professional services organizations, it is important that time gets recorded as the work is being delivered. When there is a delay in tracking time, the likelihood of errors (and ultimately lost revenue) increases.
Ruddr can help the organization ensure that all time is being entered by reminding workspace members if they are missing time for the week or month. Each workspace member in Ruddr is set up with an available number of hours for each day of the week. This allows Ruddr to know precisely how much time each member should have entered in any given timeframe.
A Workspace Admin can enable missing time alerts and configure them to be sent at at the end of each week, each month, or both. When a workspace member has missing time, the member will receive a direct message from Ruddr (Figure 1) as follows:
**Pending Approval Alerts**
Every project in Ruddr must have a [project team](/projects/project-team) and each project team must have a Project Admin. The Project Admin is responsible for project administration, which includes approving time and expenses (if time and expense approval is enabled for the project).
The Project Admin for a project will be shown on the **Team** tab (Figure 2) of the project with a checkmark within a green badge.
When time and expenses for a project are submitted for approval, the Project Admin will be notified via a Slack direct message (Figure 3) as shown below:
**Project Channel Alerts**
In order to deliver a project successfully, it is important to keep the project team on the same page. Often, project managers have a lot on their plate and aren't always able to keep the team updated on all key project events.
The Ruddr integration for Slack helps keep the project team informed by sending slack messages to a designated project slack channel. When Slack is integrated with Ruddr, the **Settings** section of the **Overview** on the project's [**Settings**](/projects/project-settings) tab will include a drop-down box (Figure 4) that will allow you to pick a Slack channel to receive project notifications.
Once a Slack channel is selected, Ruddr will send a message to the channel any time an important event related to the project occurs. Examples of the types of notifications that will be sent to the designated Slack channel include:
* A new member has been added to the project team
* The status of a project task has changed
* The status of the project has changed
* An invoice has been published for the project
Note that you must create the project channel via Slack and assign appropriate members to the channel. Ruddr does not create Slack channels or manage the membership of Slack channels.
### Setting up the integration
For step-by-step instructions on setting up the Ruddr integration for Slack, see the [Slack integration setup](/integrations/slack-integration-setup) article.
# Slack Integration Setup
Source: https://help.ruddr.io/integrations/slack-integration-setup
Follow five steps to install the Slack integration, choose workspace notifications, and link Ruddr members to their Slack accounts.
Integrating Slack with Ruddr provides numerous benefits as outlined in the [Slack Integration Overview](/integrations/slack-integration-overview) article. To install the Slack integration, simply follow the steps below. Note that you must be a Ruddr Workspace Admin to install integrations in Ruddr. There are five steps to follow:
1. [Find the Slack Integration](#step-1-find-the-slack-integration)
2. [Authorize the Integration](#step-2-authorize-the-integration)
3. [Specify Notifications for your Workspace](#step-3-specify-the-notifications-for-your-workspace)
4. [Associate Members with Slack Account](#step-4-associate-ruddr-workspace-members-with-their-slack-account)
5. [Test the Integration](#step-5-test-the-integration)
#### Step 1: Find the Slack Integration
To get to the Integrations area of Ruddr, simply click on the **Settings** main nav bar option and then select the **Integrations** menu option (see [Integrations](/workspace-administration/integrations) for more information). The Integrations tab is separated into two sections which are Active Integrations and Available Integrations. If you have not previously set up the Slack integration, it will be listed in the Available Integrations section. Simply click on the **Install** button at the bottom of the integration widget (Figure 1).
#### Step 2: Authorize the Integration
Once you click on the Install button, you will be taken to an authorization screen (Figure 2). This screen shows a high-level overview of the types of information and functionality related to your Slack workspace that will be available to Ruddr via the integration.
If you are comfortable with providing these privileges to the Ruddr integration, simply click on the **Allow** button.
#### Step 3: Specify the Notifications for your Workspace
With the integration authorized, you can now specify which notifications you want to enable for the workspace. To do this, click on the **Settings** button at the bottom of the Slack integration widget (Figure 1) to bring up the **Slack Settings** drawer (Figure 3).
In the **Notifications** section of the settings drawer (Figure 3), Workspace Admins can specify which notifications are to be sent to members and project channels. Checking the box next to a notification will enable it. Once the notifications have been selected, click the **Save & Close** button on the drawer to apply the settings.
#### Step 4: Associate Ruddr Workspace Members with their Slack Account
Now that you have the Slack integration installed and configured, you need to associate each Ruddr workspace member with their Slack account. To do this, click on the **Members** area within the **Settings** area (Figure 4) to access the Members in the workspace. (For more information view the [Member Profile section](/workspace-administration/member-profile) of the Ruddr Help Center).
In the **Members** area, you will notice that a small Slack icon is now displayed at the top-right of their member card (Figure 5). The icon will be shown in gray if the member is not associated with a Slack account.
To associate the member with a Slack account, simply click on the member card to get to the member detail. On the **General** tab, select the appropriate Slack user identity in the **Slack Identity** section (Figure 6) and then click the **Save** button at the bottom of the screen.
Once the workspace member has been associated with their Slack account, the Slack logo on the member card will now show up in color (Figure 7).
You will need to complete this Slack identity association for each member of the Ruddr workspace. Additionally, as new members are added to the Ruddr workspace, you will need to associate those members with their Slack identity.
#### Step 5: Test the Integration
Once you have the Slack integration installed and your Ruddr member account associated with your Slack identity, you are ready to do a quick test. To test that the integration is working, simply type in the following slash command in the Slack new message box.
```
/ruddr time
```
This command will bring up any time entries that you have for the current day (Figure 8).
To create a new time entry, simply click on the **Add new time entry** button and follow the steps. For more information about the Ruddr integration for Slack, see the [Slack Integration Overview](/integrations/slack-integration-overview) article.
# Xero Integration Overview
Source: https://help.ruddr.io/integrations/xero-integration-overview
Learn how the Xero integration saves Ruddr invoices to Xero and keeps invoices, payments, and credit notes in sync between the two platforms.
Xero is a small business accounting platform. With Xero, companies can more easily manage bookkeeping, banking, payroll, payments, and funding.
To learn more about the features of Xero, visit [https://www.xero.com/us/accounting-software/all-features/](https://www.xero.com/us/accounting-software/all-features/).
### Key integration benefits
The Ruddr integration for Xero allows companies to seamlessly connect their accounting and professional services platforms. Below is an overview of the main features of the Xero integration.
**Save Ruddr Invoices to Xero**
When a draft invoice in Ruddr is published, the confirmation window (Figure 1) will now include a **Save to Xero** checkbox that will be checked by default. If this checkbox is checked, the invoice will be published in Ruddr and immediately saved to Xero. If the checkbox is not checked, the invoice will only be published in Ruddr.
If an invoice was not saved to Xero upon publishing, you can later save it to Xero via the menu (Figure 3) on the invoice row in the invoices list (Figure 2). Simply click the **Save to Xero** option on a published invoice to save that invoice to Xero. Note that this menu option will only exist for published invoices that are not currently saved to Xero.
**Synchronize Invoices between Xero and Ruddr**
It is not uncommon for an invoice to be manually adjusted once it is in Xero. Your company's accountant might prefer to adjust the invoice directly in Xero rather than unpublish the invoice in Ruddr to edit the draft invoice. Any time an invoice gets updated in Xero, Ruddr gets notified of the invoice changes by Xero. Ruddr will then update its version of the invoice to match the Xero version. This ensures that both Ruddr and Xero have the same invoice information at all times.
Note that once an invoice is published in Ruddr, it can no longer be manually edited within Ruddr unless it is first unpublished. This helps ensure that a published invoice isn't inadvertently changed after it has been presented to the client. Since invoices can always be edited in Xero, a published invoice in Ruddr will be updated automatically if the invoice is changed in Xero.
When a published invoice has been saved to Xero, it can be manually reloaded from Xero by clicking on the **Reload from Xero** menu option (Figure 4) on the invoice row (Figure 2). This reload option is only needed if the Ruddr version of the invoice becomes out of sync with the Xero version. This menu option will only exist on invoices that have previously been saved to Xero.
**Deleting and Unpublishing Invoices**
When an invoice is unpublished in Ruddr, it is recommended that it also be deleted from Xero. On the confirmation window for the unpublish action (Figure 5), there will be a **Remove from Xero** checkbox that will be checked by default. With this option checked, Ruddr will automatically delete the invoice from Xero.
When a published invoice is unpublished in Ruddr, it returns to its draft invoice state. The draft invoice can then be edited and republished when it is ready. When the draft invoice is republished, it can be saved to Xero again at that time.
If a published invoice is deleted in Xero, that invoice will remain in Ruddr but will no longer be linked to a Xero invoice. If you want to delete the invoice from Ruddr as well, you can do that from the invoice menu options within Ruddr.
**Record Payments in Xero or Ruddr**
With the Xero integration installed, you can record client payments in either Xero or Ruddr. If a payment is entered in Xero, it will be automatically saved to Ruddr. If a payment is entered in Ruddr, it will be saved to Xero unless you uncheck the **Save to Xero** checkbox on the confirmation window. This checkbox is checked by default.
Once a payment has been saved to Xero, it can only be updated within Xero. Any updates to a payment in Xero will be automatically synchronized to the payment in Ruddr.
**Delete Payments**
A payment can be deleted in either Xero or Ruddr. If the payment is deleted in Ruddr, the delete payment confirmation window (Figure 6) will include a **Remove from Xero** checkbox that will be checked by default. If this checkbox is checked, the payment will be deleted from both Xero and Ruddr. If the checkbox is not checked, the payment will only be deleted in Ruddr.
If a payment is deleted in Xero, it will not be automatically deleted in Ruddr. You can manually delete the payment in Ruddr via the row option menu on the payments list screen.
**Create Vendor Bills for Reimbursable Expenses**
The Xero integration optionally allows creating a bill in Xero any time a member in Ruddr has approved reimbursable expenses. Workspace members simply [create an expense report](/expenses/create-an-expense-report) and check the "Reimburse to me" checkbox as needed on individual expense items (Figure 7).
Once per hour, Ruddr will check to see if there are any newly approved reimbursable expenses. If a member has approved reimbursable expenses, Ruddr will create a bill in Xero for that member and put each of those reimbursable expenses as a line item on the bill. Once the bill is paid within Xero, the expense items will show as reimbursed in Ruddr (Figure 8).
### Setting up the Integration
For step-by-step instructions on setting up the Ruddr integration for Xero, see the [Xero Integration Setup](/integrations/xero-integration-setup) article.
For more information, see the [invoicing section](/billing/ready-to-bill) of the Ruddr help center.
# Xero Integration Setup
Source: https://help.ruddr.io/integrations/xero-integration-setup
Walk through connecting Xero to Ruddr, from preparing client names, invoice items, and tax rates to installing the integration.
Integrating Xero with Ruddr provides numerous benefits as outlined in the [Xero Integration Overview](/integrations/xero-integration-overview) article. To install the Xero integration, simply follow the steps below. Note that you must be a Ruddr Workspace Admin to install integrations in Ruddr.
**Step 1: Prepare your Data**
Before you install the Xero integration, you should prepare your data in Xero and Ruddr, as follows:
* **Client names** - Your client names in Ruddr should use the exact same spelling as your contact names in Xero. If the spelling is identical, the Xero integration will automatically map Ruddr clients to Xero contact during the integration setup process. If the spelling is not identical, you will be able to manually map Ruddr clients to Xero contacts.
* **Invoice items** - Your Invoice Items in Ruddr can be mapped to either Xero Product / Service Types or Xero accounts. However you plan to use them, Invoice Items should use the exact same spelling as your Product/Service types or accounts in Xero. You can manage your Invoice Items in Ruddr by clicking on **Settings** in the main nav bar, selecting the **Lookups** tab, and choosing **Invoice Items** from the drop-down list on the right side of the screen.
* **Tax rates** - Your Tax Rates in Ruddr should use the exact same spelling as your custom Tax Codes in Xero. If you do not charge sales tax or do not use custom tax rates, then you do not need to configure this area. You can manage your Tax Rates in Ruddr by clicking on **Settings** in the main nav bar, selecting the **Lookups** tab, and choosing **Tax Rates** from the drop-down list on the right side of the screen.
**Step 2: Find the Xero Integration**
To get to the integrations area of Ruddr, simply click on the **Settings** main nav bar option and then select the **Integrations** tab (see [Integrations](/workspace-administration/integrations) for more information). The Integrations tab is separated into two sections which are Active Integrations and Available Integrations. If you have not previously set up the Xero integration, it will be listed in the Available Integrations section. Simply click on the **Install** button at the bottom of the integration widget (Figure 1).
**Step 3: Connect the Integration**
Once you click on the **Install** button, if you are already logged in to Xero you will be taken to an authorization screen (Figure 2). If you aren't logged in to Xero, you will be asked to login first. The authorization screen explains the type of information and actions that will be made available to Ruddr through the integration.
If you are comfortable with providing the privileges to the Ruddr integration, ensure that your organization is selected in the dropdown provided, and simply click on the **Allow access** button.
**Step 4: Automated Mappings**
Once you connect the integration to Xero, Ruddr will automatically attempt to map correlated data entities as shown below (Table 1):
| Ruddr Entity | Xero Entity |
| Clients | Contacts |
| Invoice Items | Product/Service or Account |
| Tax Rate | Tax Code |
Table 1 - Entity Mapping between Ruddr and Xero
In order for these items to automatically map, they must have the **exact same name in both platforms**. If they do not have the exact name when the integration is setup, you can manually map the items, as detailed in the next step.
NOTE: If you will be mapping Invoice Items to Xero Accounts, you will need to manually provide that mapping, as detailed in Step 5 below.
**Step 5: Manually Map any Remaining Clients, Invoice Items, and Tax Rates**
If Ruddr is unable to automatically map some Clients, Invoice Items, or Tax Rates, this will be apparent in the Details column of the integration settings. In the example below (Figure 3), Ruddr has automatically mapped 2 of 12 Invoice Items, which means ten of the Invoice Items will need to be manually mapped.
Note that each Ruddr client can only be mapped to one Xero contact. This is because payments that are created in Ruddr can only be applied to one Ruddr client.
To manually map the remaining Invoice Items to a Xero Product/Service, simply click the **Edit** button on the Invoice Items row. This will open up the Invoice Item Mappings drawer (Figure 4) which will show the items that have been automatically mapped and those that need manual mapping, if any.
Within this drawer, you can map Invoice Items to either Product / Service Types or to Xero Accounts. It is an either / or mapping, in that an invoice item can be mapped to either a Product / Service or to an Account.
**Step 6: Set the Default Xero Configuration Items**
Xero uses the concept of a Product/Service for each invoice line item. This allows you to group the types of products or services that you sell to customers and ensures consistent accounting treatment of those items. As part of the integration, Ruddr needs a default Product/Service configured. This default Product/Service will be used for any Ruddr Invoice Items that are not mapped to a specific Product/Service in Xero.
Much like Product / Service Types, you will need to specify a default Xero account. This will be leveraged if a Ruddr invoice item is not mapped to either a Xero Product / Service or Xero account.
Additionally, you need to supply a default Ruddr Invoice Item and a default Payment Account in Xero to be associated with Payments created in Ruddr.
Note that you can specify the **Default Xero Invoice Status** that you want Ruddr to set for newly-created Xero invoices. Ruddr defaults to "Authorised" - you can select a status from any of the following:
* Authorised
* Submitted
* Draft
When invoices are saved from Ruddr to Xero, the initial status of the Xero invoice will be set according to this default invoice status.
The Configuration drawer also includes the settings that control reimbursable expense syncing:
* **Reimbursable Expenses Sync** - When this is enabled, approved reimbursable expenses will be synced to Xero as bills. Once per hour, Ruddr will check for new approved reimbursable expenses. If a member has one or more approved reimbursable expenses, those will be added to a single bill in Xero for that member.
* **Reimbursable Expenses Sync Start Date** - If the reimbursable expenses sync is enabled, Ruddr will only sync reimbursable expenses with a date on or after this date. A sync start date is required when the sync is enabled.
* **Default Xero Expense Account** - When adding a reimbursable expense item to a bill, Ruddr will use this Xero expense account if the expense category for the item is not mapped to a specific expense account.
To set these default values in Ruddr, simply click on the **Edit** icon on the Configuration row of the integration settings (Figure 3) and select the desired mappings (Figure 5).
**Step 7: Create a Product/Service in Xero for Expenses**
All items that Ruddr publishes to a Xero invoice must have an Invoice Item in Ruddr that maps to a Product/Service in Xero. Since you will likely be charging clients for expenses in addition to services, you will need to create a Product/Service in Xero for those expenses. You may not think of billable expenses as either a product or a service, but proper accounting treatment of billable expenses requires them to be captured as revenue on the income statement. Given this, Ruddr needs a Product/Service created in Xero for the billable expenses income.
To bring up the Product/Service screen (Figure 6) in Xero, click on the **Business** menu option at the top of the Xero screen and choose the **Products and Services** option. This will bring up a screen that will show your current Products and Services (Figure 6). It is likely that this screen will include product and services items but not expense items.
To add a Product/Service for expenses, click the **New Item** button and uncheck the **Track Inventory Item** option. This will show a drawer (Figure 7) that will allow you to name the Product/Service and select the associated income account from the Xero chart of accounts. Name this new Product/Service "Expenses", give it a **Code**, and select the **Sell** option to display the options for selecting the **Sales account** and **Tax rate**. Select the **Reimbursable Expense** sales account.
Note that for proper gross profit calculation, billable expenses should be captured as revenue and offset with a corresponding Cost of Goods Sold (or Cost of Services Sold) account.
**Step 8: Set the Invoice Item for each Project Type**
Ruddr allows you to set an Invoice Item for each Project Type within your workspace. This allows you to group different types of revenue on your income statement in Xero. For example, if your company has consulting revenue and managed services revenue, you can associate each project type in Ruddr to one of those two Invoice Items. Then, those Invoice Items can map to a correlating Product/Service in Xero which will have an associated income account from the Xero chart of accounts.
To set the Invoice Item for each Project Type, click on the **Settings** main nav bar option and select the **Custom Data** menu option (Figure 8). Select **Project Types** from the list of custom data in Ruddr (for more information, view the [Custom Data help](/workspace-administration/custom-data) article). The current Invoice Item for each project type will be shown in the list (Figure 9). You can change the invoice item by clicking on the **Edit** button on the given row.
Note that it is common to have multiple Project Types mapped to the same Invoice Item. If you only have one type of revenue (such as "Consulting"), you may choose to map all Project Types to that single Invoice Item.
**Step 9: Set the Invoice Item for each Expense Category**
Similar to how you mapped an Invoice Item to each Project Type, you can also map an Invoice Item to each Expense Category. By default, each Expense Category is mapped to the built-in "Expenses" Invoice Item in Ruddr. This is likely sufficient for most companies but if you need to break out billable expenses into separate income accounts on your income statement, you will need to map your Expense Categories in Ruddr to specific Invoice Items.
To map an Expense Category to an Invoice Item, click on the **Settings** main nav bar option and select the **Custom Data** menu option (Figure 8). From this screen, select **Expense Categories** from the list of custom data in Ruddr. This will bring up the list of expense categories within the workspace. To edit the Invoice Item associated with a given Expense Category, simply click the edit button on the category and set the **Invoice Item** drop-down (Figure 10).
**Step 10: Map Members**
If you have enabled the Reimbursable Expenses Sync option within the Configuration area of the Xero integration, you should map Ruddr members to Xero contacts. This is done by clicking the **Edit** button on the Members row within the Xero integration in Ruddr.
Ruddr will attempt to automatically map each member to a Xero contact with an exact name match. Any members that are not automatically mapped can be mapped manually within this drawer. After you initially map members to contacts when configuring the Xero integration, you will not need to manually map members in the future.
**Step 11: Map Expense Categories**
Each line item in a Xero bill must have an associated expense account. Ruddr allows you to easily map Expense Categories in Ruddr to expense accounts in Xero. This is done by clicking the **Edit** button on the Expense Categories row within the Xero integration in Ruddr. Any expense category that is not mapped to a specific expense account will use the Default Xero Expense Account from the Configuration drawer.
### Need Some Help?
Properly configuring the Xero integration can seem a bit daunting, but it is vital in order to have accurate financial statements. If you are having difficulty with any of the steps above, just reach out to us at [help@ruddr.io](mailto:help@ruddr.io) and we'll help you get set up (at no cost).
# Xero Invoice Export Integration Overview
Source: https://help.ruddr.io/integrations/xero-invoice-export-integration-overview
Export invoices from Ruddr as a Xero-formatted CSV file for manual import when you prefer not to use the full Xero integration.
The Xero Invoice Export Integration is an alternative to the full [Xero integration](/integrations/xero-integration-overview). While the full integration supports the bidirectional synchronization of invoices, payments, and credit notes, the Xero Invoice Export Integration allows for a manual unidirectional exporting of invoices from Ruddr into Xero. Invoices are exported from Ruddr in a standard CSV (comma separated values) format defined by Xero.
### Enabling the Xero Invoice Export Integration
The Xero Invoice Export Integration can be enabled from within the [Integrations](/workspace-administration/integrations) section of [Workspace Settings](/workspace-administration/managing-your-workspace). A member must have the Workspace Admin security role to access and enable this integration.
From within the Integrations section, there will be a Xero Invoice Export tile (Figure 1). Click **Install** to enable and configure the integration.
#### Integration Settings
Upon clicking **Install**, you will be prompted (Figure 2) to configure the integration settings. The settings are as outlined below.
The following fields can be configured for the integration:
* **Branding Theme** - Xero supports the concept of Branding Themes which allow you to customize an invoice. For example, you could use a separate branding theme for each country in which your business operates and each theme could have its own street address. If no Branding Theme is provided, Xero will use the default Branding Theme.
* **Tax Code for Non-Taxable Items** - For items that will not have tax, you must supply the name of a tax code for non-taxable items. The default tax code for non-taxable items in Xero is "Tax Expense (0%)".
### Generating the Export File
Once the Xero Invoice Export Integration has been installed and configured, you are ready to export invoices out of Ruddr and import them into Xero. With the integration installed, the Invoice Detail report will have a new export option labeled "Export to Xero CSV" (Figure 3).
Prior to downloading the CSV file, Ruddr will prompt the user with a list of recommendations (Figure 4) to consider prior to importing the file into Xero. These recommendations include:
* Ensure that the client names in Ruddr match the corresponding contact names in Xero. These must match exactly on a character-by-character basis.
* Ensure that the Ruddr invoice item names match the corresponding Xero item names. Also, ensure that the General Ledger Code on each Ruddr Invoice Item (in the [Custom Data](/workspace-administration/custom-data) are of [Workspace Settings](/workspace-administration/general-workspace-settings)) matches the chart of accounts code in Xero.
* Ensure that the tax rate names in Ruddr match the corresponding tax rate names in Xero.
### Importing the Invoices into Xero
To import the invoice CSV file that was generated in the previous step, log in to Xero and choose the **Business** main menu option and the **Invoices** secondary menu option. This will bring up the Invoices screen. At the top of this screen, click on the **Import** button (Figure 5) to begin the import process.
The Import button will bring up the **Import your invoices** screen (Figure 6). This screen includes additional information as well as a **Browse** button for selecting the import file. Once you select the file, simply click the **Import** button to begin the import process.
If the import process encounters any problems with the import file, you will be presented with specifics related to the error. In the example below (Figure 7), the import file contained an invoice number that already existed in Xero.
If the import completes without errors, you will be shown a confirmation message and will just need to click on the **Complete Import** button (Figure 8) to finalize the import process.
# Client Currency
Source: https://help.ruddr.io/multicurrency/client-currency
How the client currency works in Ruddr, including its effect on client dashboard metrics, default project currency, and per-currency roles and rates.
When the multicurrency feature is on in Ruddr, every client must have a designated currency. A **Currency** dropdown is shown on the **New Client** window (Figure 1) which will include the currencies made available by the Workspace Admin. This dropdown will default to the workspace's home currency, as set in the workspace settings. For more on configuring the available workspace currencies, see the [Multicurrency Overview](/multicurrency/multicurrency-overview) help center article.
The currency for a given client can be changed at any time. This can be done from the **Regional Settings** section (Figure 2) of the **Overview** tab of the **Edit Client** drawer. Also, the individual projects within the client can be in any currency.
The client currency is used for two distinct purposes in Ruddr. First, the financial metrics on the **Client Dashboard** (Figure 3) will be shown in the selected client currency. These metrics are aggregated from all of the projects within the client (and those projects could be in different currencies).
Second, any time a new project is created for the client, the New Project window (Figure 4) will default the project's currency to the client currency. The project's currency can be changed as needed.
### Client Roles and Rates
The **Roles** tab (Figure 5) of the **Edit Client** drawer allows you to set up predefined roles and rates for a client. This can be helpful when different rates are negotiated with each client. In the event that projects will be delivered in multiple currencies within a single client, separate roles and rates can be created per currency. The example below shows the Roles tab on the Edit Client drawer for a client with projects in both United States Dollars and Japanese Yen. The **Roles** section on the project's [**Settings**](/projects/project-settings) tab will only show roles and rates that are in that project's currency.
For more on client roles and rates, please refer to the [Client Roles](/clients/client-roles) article in the Ruddr Help Center.
Once you have the client currency set, you are ready to create a project and set the [Project Currency](/multicurrency/project-currency).
# Currency Conversion Overview
Source: https://help.ruddr.io/multicurrency/currency-conversion-overview
Understand how Ruddr converts project currencies to the home currency using daily exchange rates and the date each type of revenue is recognized.
While projects are configured and managed in their designated currency, Ruddr allows the overall business performance to be evaluated in a single currency. By default, this currency is the workspace's designated home currency. Ruddr handles real-time currency exchange by maintaining exchange rates between over 150 currencies on a daily basis. Ruddr has a comprehensive history of daily exchange rates between all supported currencies dating back to January 1, 1999. This database is updated once per day with the latest exchange rates.
\*Note that you will also have the ability to provide [custom Exchange Rate Periods](/workspace-administration/custom-data#exchange-rate-periods) that will override these exchange rates for a specified period.
As an example, let's assume a project has its currency set to Euro and the workspace's home currency is set to US Dollar. A five hour time entry is created today at a rate of €100.00 per hour for a total of €500.00. If the exchange rate between Euro and USD is 1 Euro equals 1.1 US dollars, then the revenue of the five hours converted into USD would be \$550.00. The Project Dashboard for the project would show the revenue in Euro while the performance reports for the workspace would show the revenue in the home currency.
When Ruddr needs to convert from a project currency to the workspace's home currency, it uses the exchange rate on the date that the revenue is recognized in Ruddr. The date that revenue is recognized in Ruddr depends on the type of revenue, as detailed below:
* **Time & Materials Services Revenue** - Hourly services revenue on a Time & Materials project is recognized immediately when the time entry is saved. So, if today is April 5th and a member creates a billable time entry for April 3rd, that revenue will immediately be recognized on April 3rd. The time entry does not need to be approved and an invoice does not need to be published for this revenue to be recognized.
* **Fixed Fee Services Revenue with "As Invoiced" Revenue Recognition** - When a fixed fee project uses the "As Invoiced" revenue recognition method, the revenue for a billing milestone is recognized when an invoice including that milestone is published. The revenue is recognized as of the Issued Date of the invoice.
* **Fixed Fee Services Revenue with "Manual" Revenue Recognition** - When a fixed fee project uses the "Manual" revenue recognition method, the revenue is recognized as of the date of the revenue recognition ledger entry. An invoice does not need to be published for this revenue to be recognized.
* **Other Items to Bill Revenue Recognition** - Other Items to Bill are recognized as of the date in the item in the ledger. An invoice does not need to be published for this revenue to be recognized.
* **Billable Expense Item Revenue Recognition** - A billable expense item on an expense report is recognized immediately when it is saved. So, if today is April 5th and a member creates a billable expense item for April 3rd, that revenue will immediately be recognized on April 3rd. The expense item does not need to be approved and an invoice does not need to be published for this revenue to be recognized.
* **Billable Project Expense Revenue Recognition** - A billable project expense is recognized as of the date in the project expenses ledger. An invoice does not need to be published for this revenue to be recognized.
In each of the cases above, Ruddr will perform the currency conversion using the currency exchange rate on the day that the revenue is recognized. For more information, see the [Multicurrency Overview](/multicurrency/multicurrency-overview) help center article.
# Handling Expenses in Multiple Currencies
Source: https://help.ruddr.io/multicurrency/handling-expenses-in-multiple-currencies
When multicurrency is enabled, expense currencies in Ruddr follow the selected project, with report summaries converted to the home currency.
When a workspace has the multicurrency feature turned on, it is possible for expense reports to contain expenses with different currencies. The summary values at the top of the expense report (Figure 1) will be converted to the workspace's Home Currency while the individual expenses will be listed in each project's designated currency.
When creating an individual expense item (Figure 2) for an expense report, the currency symbol next to the expense amount will be set automatically based on the selected project. This is because all expenses for a project must be in the same currency. If no project is selected, the Home Currency of the workspace will be used.
### Project Expenses
Project-level expenses that are added in the **Project Expenses** ledger of the project's [**Settings**](/projects/project-settings) tab (Figure 3) will automatically use the project's set currency. All expenses recorded against a project must use the project's currency.
For more information about multicurrency functionality in Ruddr, see the [Multicurrency Overview](/multicurrency/multicurrency-overview) help center article.
# Invoicing with Multicurrency
Source: https://help.ruddr.io/multicurrency/invoicing-with-multicurrency
Learn how multicurrency affects invoicing in Ruddr, from currency-matched projects on the Ready to Bill screen to changing a draft invoice's currency.
When the multicurrency feature is on in Ruddr, the [Ready to Bill](/billing/ready-to-bill) screen (Figure 1) will show summary information at the top of the screen in the workspace's home currency. The totals for the services, expenses, and other items revenue are converted in real-time from each project's currency to the home currency.
Beneath the summary information on the Ready to Bill screen (Figure 2), the billable values for each project that can be invoiced are shown in the project's currency. An invoice in Ruddr can only have a single currency associated with it. Thus, once a project's checkbox is checked, the only other available projects within that client that can be included as part of that project's invoice will be ones that use the same currency.
In the example below, Acme Company has projects in US Dollars, Japanese Yen, and Great British Pounds. Since the "Competitive Assessment" project has been selected and it uses US Dollars, the only other available project to include on the invoice is the "Digital Transformation" project (because it is also denominated in US Dollars).
### Changing the Invoice Currency
The Invoice Settings drawer (Figure 3) allows you to change the currency of any draft invoice. But, changing the currency will remove any invoice line items that are associated with projects using a different currency.
Thus, the only time you likely will want to adjust an invoice's currency is if the invoice was created manually via the **Create Invoice** button on the Invoices list screen.
For more information about multicurrency functionality in Ruddr, see the [Multicurrency Overview](/multicurrency/multicurrency-overview) help center article.
# Multicurrency Overview
Source: https://help.ruddr.io/multicurrency/multicurrency-overview
An introduction to multicurrency in Ruddr, covering how to enable the feature, set a home currency, and choose the available workspace currencies.
Ruddr is built to serve the needs of professional services firms across the globe. With the [multicurrency feature](#enabling-the-multicurrency-feature) enabled, companies can operate in [over 150 worldwide currencies](/faqs-and-troubleshooting/multicurrency/what-currencies-are-supported-in-ruddr). This allows you to evaluate the performance of clients and specific projects in the most appropriate currency. You will be able to [specify the currencies](#setting-the-workspace-currencies) you wish to be available for your workspace.
Ruddr allows you to select a currency for each project. All monetary values and financial key performance indicators on the [Project Dashboard](/projects/project-dashboard) (Figure 1) will be shown in the project currency. Also, all invoices will be created in the project currency.
Ruddr also provides the ability to evaluate the overall business performance in the company's designated "Home Currency". So, project teams can deliver projects in their local currencies while the corporate office can easily evaluate the business performance in a single currency.
To accomplish this, Ruddr executes real-time currency conversion from project currencies to the home currency. Ruddr maintains currency exchange tables on a daily basis that enable conversion from any currency to any other currency. These currency exchange tables start on January 1, 1999 and have currency exchange values for every single day since that initial date. [Click here](/multicurrency/currency-conversion-overview) to learn more about currency conversion in Ruddr.
### Enabling the Multicurrency Feature
The multicurrency feature is only available within the Pro plan of Ruddr and by default the feature will be disabled in a new workspace. To turn the feature on, simply toggle the Multicurrency feature (Figure 2) within the [Features](/workspace-administration/features) page of [Workspace Settings](/workspace-administration/general-workspace-settings).
### Regional Settings
Every workspace in Ruddr can have its home currency set within Workspace Settings, regardless of whether or not the multicurrency feature is enabled. For workspaces that do not have multicurrency on, the home currency will be used for all monetary values within the workspace. For workspaces that have the multicurrency feature on, the home currency will be the default currency. The workspace's default Time Zone and Regional Format can also be set from the Regional Settings area (Figure 3).
It is also important to point out that each user in Ruddr can select his or her own Regional Format on their [user profile](/getting-started/user-profile#my-profile). This allows users to view dates, times, numbers, currencies, and percentages in the standard format for their country or region. As workforces become increasingly global, it is beneficial for each user to view information in their local standard format.
### Setting the Workspace Currencies
When the multicurrency feature is enabled, the Regional Settings will include an additional field called **Other Available Currencies** (Figure 4). Simply select the currencies that you want to make available in the workspace in addition to the home currency.
Currency selectors throughout the workspace will only have options for the home currency plus any other available currencies that are selected in the Regional Settings.
Once the currency options are configured at the Workspace level, you are ready to configure a [Client Currency](/multicurrency/client-currency) and [Project Currency](/multicurrency/project-currency).
# Project Currency
Source: https://help.ruddr.io/multicurrency/project-currency
Every Ruddr project has a designated currency that governs rates, budgets, expenses, and invoices, and reports can convert values between currencies.
Every project in Ruddr has a specified project currency. When the multicurrency feature is off, the currency of a new project will be set to the home currency of the workspace. When the multicurrency feature is on, the currency on the New Project window (Figure 1) will default to the home currency but can be set to any currency that has been made available in the workspace.
All financial items related to a project must be specified in the project's currency. This includes bill rates (Figure 2), fixed fee billing milestones, revenue recognition entries, project expenses, expense report items, budget figures, etc.
Also, all metrics shown on the project dashboard (Figure 3) will be shown in the project's currency.
All invoices for a project must be created in the project's currency. This means that all invoice line items on every invoice must use the same currency. If the project team incurs expenses in multiple currencies, those expenses must be entered into Ruddr in the project currency. This will likely require manual currency exchange before creating the expense item in Ruddr.
### Reporting
Ruddr's method for handling multicurrency values in reports depends on the type of report. With the Time Detail report, the user can select the currency (Figure 4) that will be used for the CSV export.
The Time Detail report export (Figure 5) will include columns for both the project's specified currency and the converted currency per the currency selector on the report. The example below shows CSV export columns for time entries on a project set for GBP with the currency selector set to USD. Both the GBP and USD values are shown in the report export.
With the summarized performance reports in Ruddr, such as Performance by Project (Figure 6), the report monetary values are always converted into a single currency. By default, the performance reports show projects in the workspace's home currency but this can be changed using the currency selector at the top of the report.
For more information about multicurrency functionality in Ruddr, see the [Multicurrency Overview](/multicurrency/multicurrency-overview) help center article.
# Companies - Create and Edit
Source: https://help.ruddr.io/pipeline/companies-create-and-edit
How to create and edit companies in the Pipeline area of Ruddr, use the company dashboard, and create a new client from a company.
In order for a member to create companies in the Pipeline area of Ruddr, the members security role must include the **Create company** permission in [Security Roles](/workspace-administration/security-roles#company-permissions). To create a company, access the Companies list by clicking on **Pipeline** in the nav bar and then selecting the **Companies** sub-menu option (Figure 1).
At the top of the list screen, there is **+** button (Figure 2). Click on this button to create a company. This will prompt you (Figure 3) to enter initial data with which to create the company.
After completing the form, click the **Save** button to create the company. You will then be taken to the [company dashboard](#opportunity-dashboard), where you can edit the company and view all activities related to the company.
Note that a member can always view a company if they can view at least one opportunity that belongs to it, even if the company itself falls outside of the practice, business unit, or ownership scope granted by their [security role](/workspace-administration/security-roles#company-permissions). This does not grant edit access to the company.
### Company Dashboard
The company dashboard (Figure 4) presents information about the company as well as related pipeline activity. The company dashboard also includes any related opportunities, contacts, or files. You can also [create a new client](#create-a-new-client-from-a-company) from here.
### Editing a Company
Once a company has been created, you can edit the company by clicking the edit pencil icon at the top right of the company dashboard (Figure 4). This will open the **Edit Company** drawer (Figure 5), where you can provide the following information about the company.
* **Name** - The name of the company.
* **Client** - The associated Ruddr [client.](/clients/create-a-new-client)
* **Relationship Owner** - The workspace member who is responsible for the company relationship.
* **Practice** - The Ruddr Practice to which you want to assign the company. This is available if the Practices [feature](/workspace-administration/features) is enabled in your workspace.
* **Business Unit** - The Ruddr Business Unit to which you want to assign the company. This is available if the [Business Units feature](/workspace-administration/features#business-units) is enabled in your workspace.
* **Industry** - The company's industry.
* **Company Type** - The type of company.
* **Company Spend Tier** - Spend tiers are used to categorize companies based on their annual spend.
* **Description**- Any information about the company that would be helpful for those viewing the company in Ruddr.
* **Annual Revenue** - The annual revenue number associated with company.
* **Currency** - The primary currency in which the company operates.
* **Time Zone** - The time zone in which the company is located.
* **Ownership Class** - Whether the company is Public, Private, Subsidiary, or Other.
* **Number of Employees** - The size of the company in terms of employees.
* **Year Founded** - The year the company was established.
* **Ticker Symbol** - If the company is publicly traded, the stock ticker symbol.
* **SIC Code** - Standard Industrial Classification (SIC) codes are 4-digit numerical codes that identify the primary business of a company.
* **Phone Number** - The primary phone number for the company.
* **Billing Address** - The billing address for the company.
* **Shipping Address** - This shipping address for the company.
* **Facebook URL** - The URL of the company's Facebook profile.
* **Twitter URL** - The URL of the company's X / Twitter profile.
* **LinkedIn URL** - The URL of the company's LinkedIn profile.
* **Website URL** - The URL you wish to associate with the contact. This could be a URL to their LinkedIn profile, to their company's website, etc.
Click on **Save & Close** at the bottom of the drawer to save the changes that you have made to the company.
### Create a New Client from a Company
Companies in the Pipeline area of Ruddr can be connected to Ruddr clients. This can be done by [editing a company](#editing-an-opportunity) and associating an existing client (Figure 5). In instances where a client has not been created, you can create a client from the company dashboard (Figure 4), which will automatically associate that new client with the company. To do this, click the **Create a Client** (**+**) button at the top-right of the company dashboard (Figure 4).
Ruddr will then present a dialog (Figure 6) with a number of fields defaulted to values from the company. Make any edits and click the **Save** button to save the new client and establish that association with the company.
# Companies - List
Source: https://help.ruddr.io/pipeline/companies-list
Browse, filter, edit, clone, deactivate, and delete the companies in your sales pipeline from the Ruddr company list screen.
To view all of the companies in your workspace, click on **Pipeline** in the nav bar and then select the **Companies** sub-menu option (Figure 1). This will bring up the contact list screen (Figure 2).
Access to companies is controlled by the [Company Permissions](/workspace-administration/security-roles#company-permissions) section of your security role, which can scope view, edit, and delete access to all companies, companies in your practice or business unit, or just companies you own.
At the top of the list screen, there is **+** button (Figure 3). Click on this button to create a company. For more on creating companies in Ruddr, see the [Companies - Create and Edit](/pipeline/companies-create-and-edit) article.
The list of companies can be downloaded by clicking the download button to the left of the **New Company** (**+**) button.
On the company list screen, you have the following filters at the top of the list to help you narrow down the results:
* **Search** - You can type in a partial company name to narrow the results.
* **Company Relationship Owner** - Narrow down the results to companies assigned a specific relationship owner.
* **Status** - Specify "Yes" to view active companies or "No" to only view deactivated companies. In the companies list (Figure 2), deactivated companies will appear in a grey color.
Additional filters are available by clicking the filters button at the top-right of the screen.
To view the company dashboard for a particular company, simply click on the row in the list. The company dashboard provides high-level information about the company, any related activity, opportunities associated with the company, and contacts associated with the company.
At the right end of each company row in the list, you are provided with a menu of actions (Figure 4). These actions are **View**, **Edit**, **Delete**, **Clone**, and **Deactivate**.
### Edit a Company
To edit a company, your security role must grant edit access to that company (see [Company Permissions](/workspace-administration/security-roles#company-permissions)). Simply click on the **Edit** menu option on the row that you want to edit. This will open up the Edit Company drawer (Figure 5). From here, you can make edits to the company information. For more on editing companies, please refer to the [Companies - Create and Edit](/pipeline/companies-create-and-edit) article.
### Deactivate a Company
To deactivate a company, your security role must grant edit access to that company (see [Company Permissions](/workspace-administration/security-roles#company-permissions)). Simply click on the **Deactivate** menu option (Figure 4) on the row that you wish to deactivate. This will bring up a confirmation window (Figure 6). When you deactivate a company, you will also deactivate all of the opportunities within that company.
### Delete a Company
To delete a company, your security role must grant delete access to that company (see [Company Permissions](/workspace-administration/security-roles#company-permissions)). Simply click on the **Delete** menu option (Figure 4) on the row that you want to delete. This will bring up a confirmation window (Figure 7). If the company has opportunities, *it is strongly recommended that you deactivate the company instead of deleting it*.
**Once you delete a company, you cannot reverse this action and all associated opportunity, file, and activity data will be gone forever!**
### Clone a Company
You can clone a company, copying all data associated with the original company into a new company. To clone a company, your security role must include the **Create company** permission along with edit access to that company (see [Company Permissions](/workspace-administration/security-roles#company-permissions)). Simply click on the **Clone** menu option (Figure 4) on the row that you want to clone. You will then be prompted (Figure 8) to provide a name for the new company. Clicking the **Save** button will create the company and take you to the new company's dashboard, where you can edit the new company.
# Contacts - Create and Edit
Source: https://help.ruddr.io/pipeline/contacts-create-and-edit
Create contacts in the Pipeline area of Ruddr and edit contact details such as owner, title, time zone, and phone numbers.
In order for a member to create contacts, the member's security role must include the **Create contact** permission in [Security Roles](/workspace-administration/security-roles#contact-permissions). Contact permissions are independent of the Pipeline feature, so this permission is available whether or not Pipeline is enabled for your workspace. To create a contact, access the Contacts list by clicking on **Pipeline** in the nav bar and then selecting the **Contacts** sub-menu option (Figure 1).
At the top of the list screen, there is **+** button (Figure 2). Click on this button to create a contact. This will prompt you (Figure 3) to enter the basic contact data.
After completing the form, click the **Save** button to create the contact. You will then be taken to the [contact dashboard](/pipeline/contacts-create-and-edit#opportunity-dashboard), where you can edit the contact and view all activities related to the contact.
### Contact Dashboard
The contact dashboard (Figure 4) presents information about the contact as well as any related pipeline activity for that contact.
### Editing a Contact
Once a contact has been created, you can edit the contact by clicking the edit pencil icon at the top right of the contact dashboard (Figure 4). This will open the **Edit Contact** drawer (Figure 5), where you can provide the following information about the contact.
* **First Name** - The first name of the contact.
* **Last Name** - The last name of the contact.
* **Full Name** - Ruddr will display the full name of the contact based on the values entered for first name and last name. Note that this field is disabled and read-only.
* **Email Address** - The email address of the contact. Note that each contact must have a unique email address. If you attempt to create / save a contact with an email address that is in use by another contact in Ruddr, you will receive an error and will be unable to create / save the contact.
* **Owner** - The workspace member who is responsible for the contact relationship.
* **Practice** - The Ruddr Practice to which you want to assign the contact. This is available if the Practices [feature](/workspace-administration/features) is enabled in your workspace.
* **Business Unit** - The Ruddr Business Unit to which you want to assign the contact. This is available if the [Business Units feature](/workspace-administration/features#business-units) is enabled in your workspace.
* **Time Zone** - Specify the time zone in which the contact is located.
* **Title** - The contact's job title.
* **Description**- Any information about the contact that would be helpful for those viewing the contact.
* **Office Phone** - The business phone number of the contact.
* **Mobile Phone** - The mobile phone number of the contact.
* **Fax** - The fax phone number of the contact.
* **Website URL** - The website you wish to associate with the contact. This could be a URL to their LinkedIn profile, to their company's website, etc.
Click on **Save & Close** at the bottom of the drawer to save the changes that you have made to the contact.
# Contacts - List
Source: https://help.ruddr.io/pipeline/contacts-list
View and filter pipeline contacts in Ruddr, see their client, company, and opportunity assignments, and edit or delete contact records.
To view all of the contacts in your workspace, click on **Pipeline** in the nav bar and then select the **Contacts** sub-menu option (Figure 1). This will bring up the contact list screen (Figure 2).
Access to contacts is controlled by the [Contact Permissions](/workspace-administration/security-roles#contact-permissions) section of your security role, which can scope view, edit, and delete access to all contacts, contacts in your practice or business unit, or just contacts you own. Contact permissions are independent of the Pipeline feature, so contacts remain accessible whether or not Pipeline is enabled for your workspace.
At the top of the list screen, there is **+** button (Figure 3). Click on this button to create a contact. For more on creating contacts in Ruddr, see the [Contacts - Create and Edit](/pipeline/contacts-create-and-edit) article.
The list of contacts can be downloaded by clicking the download button to the left of the Create Contact button at the top-right of the list.
On the contact list screen, you have the following filters at the top of the list to help you narrow down the results:
* **Contact Name** - You can type in a partial contact name to narrow the results.
* **Contact Owner** - Narrow down the results to contacts assigned a specific owner.
* **Contact Practice** - Narrow down the results to contacts assigned to a specific Practice. This is available if the Practices [feature](/workspace-administration/features) is enabled in your workspace.
* **Contact Business Unit** - Narrow down the results to contacts assigned to a specific Business Unit. This is available if the [Business Units feature](/workspace-administration/features#business-units) is enabled in your workspace.
The contact list also supports optional columns for **Owner**, **Practice**, and **Business Unit**, which can be turned on from the column selector at the top-right of the list.
Selecting multiple contacts using the checkboxes at the left of the list enables bulk actions, including a bulk edit option to update the Owner, Practice, and Business Unit for many contacts at once. See [Bulk Edit Contacts](#bulk-edit-contacts) below for more detail.
### The Contact Dashboard
To view the contact dashboard for a particular contact, simply click on the row in the list. The contact dashboard provides high-level information about the contact and any related activity.
Shown on the contact list are any associations that the contact has with other entities. In the **Assigned To** column, you will see this list. The assignments are color-coded as follows:
* Clients are in light green.
* Companies are in light yellow.
* Opportunities are in light gray.
At the right end of each contact row, you are provided with a menu of actions (Figure 4). These actions are **View**, **Edit**, and **Delete**.
### Edit a Contact
Clicking on the **Edit** action item in the action menu (Figure 4) will open the contact Edit Drawer (Figure 5). From here, you can make any edits to the contact information that you wish to make. For more on editing contacts, please refer to the [Contacts - Create and Edit](/pipeline/contacts-create-and-edit) article.
### Delete a Contact
To delete a contact, simply click on the **Delete** menu option (Figure 4) on the row that you want to delete. This will bring up a confirmation window (Figure 6).
**Once you delete a contact, you cannot reverse this action and all data will be gone forever!**
### Bulk Edit Contacts
To update several contacts at once, select the checkboxes to the left of the contacts you want to change, then choose **Bulk Actions** (Figure 7) and select **Edit**.
This will open the **Bulk Edit** screen (Figure 6), where you can independently choose to **Clear** or **Set** the Owner, Practice, and Business Unit for all of the selected contacts.
Leaving a field unchanged will not modify that field on any of the selected contacts. Click **Confirm** to apply your changes.
# Opportunities - Create and Edit
Source: https://help.ruddr.io/pipeline/opportunities-create-and-edit
Learn how to create and edit sales opportunities in Ruddr and how to create a new project or associate an existing one from an opportunity.
In order for a member to create opportunities in the Pipeline area of Ruddr, the member's security role must include the **Create opportunity** permission in [Security Roles](/workspace-administration/security-roles#opportunity-permissions). To create an opportunity, access the Opportunities list by clicking on **Pipeline** in the nav bar and then selecting the **Opportunities** sub-menu option (Figure 1).
At the top of the list screen, there is **+** button (Figure 2). Click on this button to create an opportunity. This will prompt you (Figure 3) to enter initial data with which to create the opportunity.
After completing the form, click the **Save** button to create the opportunity. You will then be taken to the [opportunity dashboard](#opportunity-dashboard), where you can edit the opportunity and view all activities related to the opportunity.
### Opportunity Dashboard
The opportunity dashboard (Figure 4) presents information about the opportunity as well as any related pipeline activity. The opportunity dashboard also includes an opportunity's contacts and any files that you wish to associate with the opportunity.
### Editing an Opportunity
Once an opportunity has been created, you can edit the opportunity by clicking the edit pencil icon at the top-right of the opportunity dashboard (Figure 4). This will open the **Edit Opportunity** drawer (Figure 5), where you can provide the following information about the opportunity.
* **Name** - The name of the opportunity.
* **Company** - The company associated with the opportunity.
* **Project** - The project associated with the opportunity. You can also [create a project from an opportunity](#creating-a-project-from-an-opportunity).
* **Owner** - The workspace member that owns the opportunity.
* **Practice -** The Ruddr Practice to which you want to assign the opportunity. This is available if the Practices [feature](/workspace-administration/features) is enabled in your workspace.
* **Business Unit** - The Ruddr Business Unit to which you want to assign the opportunity. This is available if the [Business Units feature](/workspace-administration/features#business-units) is enabled in your workspace.
* **Pipeline** - The opportunity pipeline assigned to the record. This will associate that pipeline's set of opportunity stages with this opportunity.
* **Stage** - The current opportunity stage. Opportunity stages are managed values in the [Custom Data](/workspace-administration/custom-data) section of Workspace Settings and are assigned to individual opportunity pipelines, also manage in Custom Data.
* **Probability to Close** - The estimated probability of winning the opportunity.
* **Amount** - The expected revenue value of the opportunity.
* **Currency** - The currency that you expect the opportunity to be billed in.
* **Open Date** - The date the opportunity began.
* **Expected Close Date** - The date on which you expect contract execution for the opportunity.
* **Next Steps** - A short description of the next activity that you expect to occur related to the opportunity.
* **Priority** - The priority of the opportunity, which can be High, Medium, or Low.
* **Opportunity Type** - The type of opportunity. Opportunity Types are managed values in the Custom Data section of Workspace Settings. You can define the various opportunity types that your organization uses to categorize opportunities.
* **Opportunity Lead Source** - The source where the opportunity originated. Opportunity Lead Sources are managed values in the Custom Data section of Workspace Settings. You can define the various opportunity lead sources that your organization attributes to opportunities.
* **Description** - The nature of the opportunity, providing as many details as desired.
* **Cloud Folder** - Assign a shared cloud folder to this opportunity to let team members view files.
Click on **Save & Close** at the bottom of the drawer to save the changes that you have made to the opportunity.
### Creating a Project from an Opportunity
As an opportunity advances through opportunity stages and the probability increases, you may wish to align a new project with the opportunity. Creating a new project would allow you to allocate resources, forecast hours and revenue, and provide an initial project configuration.
As mentioned above, an opportunity can be associated with an existing project. For opportunities that do not yet have a corresponding project, a project can be created from the opportunity, bringing over specific details of the opportunity as project settings. When creating a project from an opportunity, the project will be initially set to a **Tentative** [project status](/projects/project-status).
On the opportunity dashboard, you will see a **Projects** tab (Figure 6). Clicking on that tab will take you to a view where you can see any associated projects, you can associate a new project to the opportunity, or you can associate an existing project to the opportunity.
A **New Project** button (Figure 7) will be displayed at the top of the Projects tab, next to the **Associate Existing Project** button (Figure 8).
Upon clicking the **New Project** button, you will be prompted (Figure 9) to provide some details regarding the new project. Note that the **Project Name** will default to the name of the opportunity. If a Ruddr client is associated with the opportunity's company, then the **Client** name will be defaulted to that client and disabled. If a client is not associated with the company, you will be prompted to either select a client or to create a new client to associate with the project.
Clicking **Save** will create a project and you will be taken to the project dashboard for the project to continue editing project details.
When you click on the **Associate Existing Project** button (Figure 8), a dropdown (Figure 10) will be presented with a list of projects for the client that is associated with the opportunity's company. Select the project that you wish to associate with the opportunity.
# Opportunities - List
Source: https://help.ruddr.io/pipeline/opportunities-list
Filter your opportunity list, review metrics like gross and weighted pipeline, and edit, clone, or create projects from opportunities.
To view all of the opportunities in your workspace, click on **Pipeline** in the nav bar (Figure 1). This will bring up the opportunities list screen (Figure 2).
Access to opportunities is controlled by the [Opportunity Permissions](/workspace-administration/security-roles#opportunity-permissions) section of your security role, which can scope view, edit, and delete access to all opportunities, opportunities in your practice or business unit, or just opportunities you own.
Next to the download button is a **+** button (Figure 3). Click on this button to create an opportunity. For more on creating opportunities in Ruddr, see the [Opportunities - Create and Edit](/pipeline/opportunities-create-and-edit) article.
The list of opportunities can be downloaded by clicking the download button to the left of the create opportunity button.
At the top of the opportunity list screen, there is a pipeline financial summary area that displays the following metrics for the opportunities being displayed in the list:
* **# of Opportunities** - the number of opportunities presented in the list
* **Gross Pipeline** - the total sum of the amount of the opportunities listed
* **Weighted Pipeline** - the total sum of the weighted amounts of the opportunities listed. The weighted amount of an opportunity is the total amount multiplied by the Probability to Close percentage.
* **Average Deal Size** - the average amount of the opportunities listed
You can also click on each of these metrics and you will be taken to a report showcasing additional details.
Just above the opportunity financial summary, you have the following filters at the top of the list to help you narrow down the results:
* **Search** - You can type in a partial opportunity name to narrow the results.
* **Company** - Filter the list of opportunities by company.
* **Opportunity Owner** - View a list of opportunities that belong to a specific member.
* **Practice** - Specify the Practice for which you want to view a list of opportunities.
* **Opportunity Stage** - Select from a list of opportunity stages that are managed in Custom Data.
* **Opportunity Stage Category** - Narrow down the results to opportunities in a particular opportunity lifecycle stage category. The possible values are "Closed", "Won", or "Lost"
* **Opportunity Tags** - Used to track the various types of activities during the sales process.
* **Opportunity Type** - Select from a list of opportunity types that are managed in Custom Data.
The opportunity list also supports an optional **Business Unit** column, which can be turned on from the column selector at the top-right of the list. This is available if the [Business Units feature](/workspace-administration/features#business-units) is enabled in your workspace.
To view the opportunity dashboard for a particular opportunity, simply click on the row in the list. The opportunity dashboard provides high-level information about the opportunity, any related activity, and contacts associated with the opportunity.
At the right end of each opportunity row in the list, you are provided with a menu of actions (Figure 4). These actions are **View**, **Edit**, **Delete**, **Clone**, and **Create Project**.
### Edit an Opportunity
To edit an opportunity, your security role must grant edit access to that opportunity (see [Opportunity Permissions](/workspace-administration/security-roles#opportunity-permissions)). Simply click on the **Edit** menu option on the row that you want to edit. This will open up the Edit Opportunity drawer (Figure 5). From here, you can make edits to the opportunity. For more on editing opportunities, please refer to the [Opportunities - Create and Edit article](/pipeline/opportunities-create-and-edit).
### Delete an Opportunity
To delete an opportunity, your security role must grant delete access to that opportunity (see [Opportunity Permissions](/workspace-administration/security-roles#opportunity-permissions)). Simply click on the **Delete** menu option (Figure 4) on the row that you want to delete. This will bring up a confirmation window (Figure 6).
**Once you delete an opportunity, you cannot reverse this action and all associated opportunity, file, and activity data will be gone forever!**
### Clone an Opportunity
To clone an opportunity, your security role must include the **Create opportunity** permission along with edit access to that opportunity (see [Opportunity Permissions](/workspace-administration/security-roles#opportunity-permissions)). Simply click on the **Clone** menu option (Figure 4) on the row that you want to clone. You will then be prompted (Figure 8) to provide a name for the new opportunity. Clicking the **Save** button will create the opportunity and take you to the new opportunity's dashboard, where you can edit the new opportunity.
### Create a Project
A project can be created from an opportunity, bringing over relevant opportunity data. When you create a project from an opportunity, an association between those two entities is created. The project will be set to a **Tentative** [project status](/projects/project-status). You will then be able to set up the project, allocate resources, and forecast project metrics.
To create a project, click on the **Create a Project** menu option (Figure 4) on the row for which you want to create a project. You will then be prompted by the **Associate a New Project** modal (Figure 8) to specify details for the new project. Clicking the **Save** button will create the project and take you to the [project dashboard](/projects/project-dashboard), where you can continue setting up the project.
# Pipeline Overview
Source: https://help.ruddr.io/pipeline/pipeline-overview
An overview of the Pipeline feature in Ruddr and how contacts, companies, and opportunities combine to forecast demand for your services.
The sales pipeline is an account of all sales opportunities tracked within the firm. The combination of sales pipeline and revenue backlog provides your organization with a forecast that is representative of the demand for your services. The forecast provides a look at future hours, revenue, and utilization.
To support the tracking of this information in your workspace, the Pipeline feature in Ruddr includes the following three, key components:
* [Contacts](/pipeline/pipeline-overview#contacts)
* [Companies](/pipeline/pipeline-overview#companies)
* [Opportunities](/pipeline/pipeline-overview#opportunities)
### Contacts
Contacts are individuals from outside organizations that your firm keeps on record for past and future communications. Often, these contacts are people that represent the business interests of other organizations and are individuals that your firm wants to stay in contact with. In Ruddr, contacts can be associated with Companies, Opportunities, and Clients.
### Companies
Companies are any organizations with which you have a history of communication or business. These companies may or may not have been formal clients or partners, but may have a history of business opportunity. A company can be associated with one or more contacts.
### Opportunities
Opportunities are formal representations of prospective business within a company. These opportunities typically have a revenue value associated with them and various informational characteristics such as sales stage, owner, probability to close, expected close date, and more.
In Ruddr, opportunities can be associated with projects. In fact, projects can be created from opportunities and those projects maintain an association with those opportunities moving forward.
# Additional Services Ledger
Source: https://help.ruddr.io/projects/additional-services-ledger
Schedule single or recurring additional services on the Accounting tab so fixed fee items can be invoiced and recognized on hybrid Time and Materials projects.
The **Additional Services** ledger, found in the **Accounting** section (Figure 1) of the project's [**Settings**](/projects/project-settings) tab, allows you to schedule the invoicing of additional services on billable projects. To edit a project you must have access to the project and must have the **Edit Project** permission for that project based on your Ruddr [security role](workspace-administration/security-roles).
The **Additional Services** ledger is most commonly used when you need to bill fixed fee items on a Time and Materials billing type project. These types of projects are commonly referred to as "hybrid" projects because they include both fixed fee and hourly services components. The **Additional Services** ledger is not typically utilized on fixed fee projects.
### Scheduling the Billing and Revenue Recognition of Additional Services
The **Additional Services** ledger in the **Accounting** section has two purposes. First, it allows for the services fees to be invoiced via the [**Ready to Bill**](/billing/ready-to-bill) screen as of the date of the item in the ledger. Second, it enables revenue recognition for the services on that same date.
There are two ways to add services to the **Additional Services** ledger:
* [Add a Single Additional Service to the Additional Services Ledger](/projects/additional-services-ledger#add-a-single-additional-service-to-the-additional-services-ledger)
* [Add a Recurring Additional Service to the Additional Services Ledger](/projects/additional-services-ledger#add-a-recurring-additional-service-to-the-additional-services-ledger)
#### Add a Single Additional Service to the Additional Services Ledger
To bill for an additional service, simply click on the **+** button at the top-right of the **Additional Services** ledger (Figure 2).
This will open the **Add Additional Service** window (Figure 3) where you can supply the information about the service.
You can provide the following fields:
* **Date** - The date that you want the additional service to be picked up on the [Ready to Bill](/billing/ready-to-bill) screen for invoicing. This is also the date that the revenue associated with the service will be recognized on Ruddr reports and dashboards.
* **Invoice Item** - The Invoice Item that you want to use on the invoice for the additional service. Your Workspace Admin can define as many Invoice Items as needed for your company.
* **Notes** - The description of the additional service that will show on the invoice line item.
* **Amount** - The pre-tax amount you will charge the client for the additional service.
If you are selling multiple units of the service, you can click the **Include a quantity and rate for this item** checkbox. This will present the following additional fields:
* **Quantity** - The number of units of this additional service that are being sold to the client.
* **Rate** - The pre-tax fee per unit.
Note that when the **Include a quantity and rate for this item** checkbox is checked, the **Amount** textbox will be disabled and automatically calculated.
Clicking the **Add** button on the **Add Additional Service** window will close the form and add the product to the **Additional Services** ledger (Figure 4).
#### Add a Recurring Additional Service to the Additional Services Ledger
Some Ruddr customers need to charge clients for a service in a monthly recurring manner. To set up recurring billing for a service, click the **Add Multiple** button at the top of the **Additional Services** ledger (Figure 2). This will open the **Add Multiple Additional Services** window (Figure 5).
On this window, the fields are identical to the single **Add Additional Service** window (Figure 3), with the exception of the following:
* **Starting Month** - The first month that you want this monthly recurring service to be invoiced.
* **Ending Month** - The final month that you want this monthly recurring service to be invoiced.
* **Scheduled on the X Day of Each Month** - The exact day of the month that you want this monthly recurring service to be picked up on the Ready to Bill screen. This is also the date that the associated revenue will be recognized.
Once you have provided the information for the recurring additional service billing, click the **Add** button at the bottom of the **Add Multiple Additional Services** window (Figure 5). This will close the window and add the full service billing schedule to the **Additional Services** ledger (Figure 6).
The individual rows can be edited or deleted via the buttons on the right side of each row.
### Invoicing for Additional Services
The [Ready to Bill](/billing/ready-to-bill) screen will automatically pick up all additional services billing that is scheduled within the date range at the top of that screen. These fees will be included with other services revenue on the project for that date range. When a draft invoice is created for a project on the **Ready to Bill** screen, the additional services line items within the date range will be added to the invoice.
When an additional service in the ledger has been invoiced, it will no longer be editable and can't be removed from the **Additional Services** ledger. The edit and delete icons on the ledger row will be disabled once that line item is associated with an invoice.
### Revenue Recognition and Revenue Attribution for Additional Services
Revenue associated with additional services will be recognized as of the date of the entry in the **Additional Services** ledger in the **Accounting** section of the Settings tab. Additional Services entries do not have to be invoiced in order for the revenue to be recognized.
Additional Services are not factored into the automated revenue recognition calculations for fixed fee projects.
The manner that Additional Services are attributed to project team members depends on the billing type. For time and materials projects, the additional services revenue is attributed to members based on the percentage of the hours tracked toward the project during the period. For fixed fee projects, the additional services revenue is attributed to members based on the revenue attribution method configured for the project.
# Archive or Delete a Project
Source: https://help.ruddr.io/projects/archive-or-delete-a-project
Understand when to archive a project versus delete it permanently, and how each action affects time entries, expenses, invoices, and reporting in Ruddr.
There are two ways to treat projects that you no longer expect members to work on:
* [Archive](#archiving-a-project)
* [Delete](#deleting-a-project)
If you have an project that you wish to keep in the workspace for reporting purposes but prefer that it no longer appear in your active projects list, then you would want to archive the project.
You should only delete a project if it was created by mistake or if it is a duplicate. If a project has time, expenses, or invoices, it is recommended that the project be archived instead of deleted.
You can archive or delete a project from the projects list screen (Figure 2). To bring up this screen, click on **Projects** in the nav bar (Figure 1).
Depending on the permission settings on your member profile, you may only see projects where you are on the project team.
At the right end of each row (Figure 2), there is a menu of actions (Figure 3) that you can take against each project. These actions are **View**, **Edit**, **Clone**, **Archive**, and **Delete**. Depending on your permissions, some of these options may be disabled.
### Archiving a Project
In order to archive a project, you must have the **Delete or archive project** permission. Simply click the **Archive** menu option (Figure 3) on the intended client row. This will bring up a confirmation window (Figure 4).
When a project is archived, it will no longer be possible for any workspace member to create invoices, time entries, or expense items for that project. Also, to edit a time or expense entry on an archived project, the member must have member-level **Administer time and expense** permission on their [security role](/workspace-administration/security-roles).
An archived project will no longer show up in your active project lists in Ruddr. But, all data associated with the archived project is maintained and you can still report on archived projects. If you need to unarchive a project, simply choose the **Unarchive** menu option on the archived project row in the project list.
When a project is archived, an **Archived** status bubble (Figure 5) with appear next to the project name on the project dashboard.
### Deleting a Project
In order to delete a project, you must have the **Delete or archive project** permission. Deleting a project should be a rare action and is usually done to correct a mistake or duplicate. Once a project has time or expenses, it is recommended that the project be archived instead of deleted. **Projects with invoices, credit notes, or opportunities cannot be deleted and can only be archived.**
To delete a project, simply click the **Delete** menu option (Figure 3) on the project row. You can also use the **Delete** button at the bottom-left of the project's [**Settings**](/projects/project-settings) tab.
If there are not associated tasks, allocations, time entries, expenses, etc. simply click the **Delete** menu option (Figure 3) on the client row.
If there any tasks, allocations, time entries, expenses, etc. you will be required to confirm this action by typing in the project's name to confirm deletion (Figure 7).
When a project is deleted, all associated data related to that project is also deleted. This includes time entries and expense items.
**!!!!!!Once you delete a project, you cannot reverse this action, and all associated data related to that project will be gone forever!!!!!!**
# Billing Types
Source: https://help.ruddr.io/projects/billing-types
Compare Ruddr's four project billing types - Time and Materials, Fixed Fee, Fixed Monthly, and Non-Billable - and learn when each one is most appropriate.
Projects in Ruddr can have one of four possible billing types. These billing types include:
* [Time and Materials](#time-and-materials)
* [Fixed Fee](#fixed-fee)
* [Fixed Monthly](#fixed-monthly)
* [Non-Billable](#non-billable)
The billing type is set when the project is created and can be edited within the **Billing** section (Figure 1) of the **Overview** on the project's [**Settings**](/projects/project-settings) tab.
The billing type of a project can be changed up until the point when an invoice is created for the project. Once a project has an invoice, the billing type will be read-only.
Below is a description of each billing type and when it might be most appropriate.
### Time and Materials
The Time & Materials billing type is the most common billing arrangement in professional services. With this billing type, the client is billed for the hours that are worked and the expenses that are incurred. Additionally, if there are materials that are purchased during the delivery of the project, they are also charged back to the client.
With Time & Materials projects in Ruddr, you have the option of associating bill rates to project roles or directly to project team members. To assign bill rates to team members, access the **Team** section (Figure 2) of the project's [**Settings**](/projects/project-settings) tab. For each member that you add to the team, you can designate whether that team member is billable or non-billable, and if billable, you can assign a bill rate to that member.
To assign bill rates to roles, select the **Use roles** checkbox in the **Settings** section of the Overview on the project's Settings tab. This will enable a **Roles** section (Figure 3) that will allow you to create roles, assign billable rates to those roles, and then assign team members to those roles. For more, see the [Project Roles](/projects/project-roles) help article.
Smaller companies often associate bill rates directly to team members while larger companies tend to prefer associating rates with project roles. One advantage of using project roles is that a team member can be assigned to multiple project roles and can thus bill at different rates on the project.
With Time & Materials projects, the [Ready to Bill](/billing/ready-to-bill) screen will show a running accrual of the time and expenses that have been tracked but not yet billed. This allows you to have a clear understanding of unbilled work.
### Fixed Fee
A Fixed Fee project is one in which the client agrees to pay a fixed amount for the delivery of the project. Once you select the Fixed Fee billing type, a **Revenue Recognition Method** field (Figure 4) will be shown where you can specify revenue should be recognized for reporting purposes. The five methods available are:
* As Invoiced
* Manual
* Automated - Percentage of Billable Hours
* Automated - Percentage of Time & Materials Revenue
* Automated - Percentage of Services Cost
For more information, see the Ruddr Help Center article on [Fixed Fee Revenue Recognition](/projects/fixed-fee-revenue-recognition).
In addition to specifying a Revenue Recognition Method for Fixed Fee projects, you can specify a Revenue Attribution Method (Figure 4) to determine how services revenue will be attributed across project team members. The three methods available are:
* Percentage of Billable Hours
* Percentage of Time & Materials Revenue
* Percentage of Services Cost
For more information on these three methods, please refer to the [Fixed Fee Revenue Attribution](/projects/fixed-fee-revenue-attribution) article in the Ruddr Help Center.
Typically, fixed fee projects are billed to the client upon predefined dates (usually associated with important milestones). The billing schedule for fixed fee projects is found in the **Accounting** section (Figure 5) of the project's [**Settings**](/projects/project-settings) tab. New fixed fee projects will have an empty billing schedule. Billing schedule rows should be added until the total of the milestones equals the project's total billable budget. For more on project budgets, please refer to the Ruddr Help Center article [Create a Project Budget](/projects/create-a-project-budget).
For Fixed Fee projects, a billing milestone will show on the Ready to Bill screen if the milestones falls within the selected date range, thereby allowing you to generate an invoice for that milestone and the specified milestone amount.
### Fixed Monthly
The Fixed Monthly billing type is ideal for projects in which you charge a fixed amount per month over a fixed number of months. The Fixed Monthly billing type is similar to the Fixed Fee billing type with the key difference being that Ruddr provides you with a mechanism to generate multiple, recurring items in the billing schedule (Figure 7) for Fixed Monthly projects.
This schedule is located in the **Accounting** section (Figure 7) of the project's Settings tab. For more on setting up a Fixed Monthly project's billing schedule, please refer to the [Fixed Fee Billing Schedule](/projects/fixed-fee-billing-schedule#fixed-monthly-billing-schedules) article in the Ruddr Help Center.
### Non-Billable
The Non-Billable billing type is always used for internal projects and occasionally used for client projects. While it is rare to have a non-billable, client project, some companies use this billing type for a "loss leader" or for a proof-of-concept engagement.
With the Non-Billable billing type, there can be project roles but there can not be bill rates or billing schedules. Team members can track time and expenses to non-billable projects just as they would with any other project. But, those time and expenses cannot be billed back to the client. A non-billable project will never show up on the Ready to Bill screen.
# Client Approvals
Source: https://help.ruddr.io/projects/client-approvals
Send batches of time and expenses to clients for approval before invoicing, either as a single batch or on an automated schedule, and see what your client sees.
Every time and expense item in Ruddr goes through an internal approval process. [Time approval](/time/time-approval) and [expense approval](/expenses/expense-approval) for a given project can be set up for automatic approval or manual approval. This ensures that items are internally approved before they are invoiced to the client.
On some projects, however, there may also be a need for the client to approve time and expenses before those entries can be invoiced. For these situations, Ruddr provides an optional client approval [feature](/workspace-administration/features).
There are two ways to manage client approvals in Ruddr:
* [Single-Batch](#single-batch-client-approval)
* [Scheduled](#scheduled-client-approvals)
With either approach, the client will receive an email with a link to view the approvals. From there, the [client will be able to take action](#what-your-client-will-see) on the time / expense entries that have been submitted to them for approval.
### Single-Batch Client Approval
Single-batch client approvals in Ruddr allow you to submit a batch of time and expenses for a specific project and timeframe to a client for approval. This submission would typically be done on a periodic basis, such as weekly or monthly, prior to invoicing.
As most clients do not require this extra level of approval workflow, the client approval feature is off by default in Ruddr. To turn it on, go to the project's [**Settings**](/projects/project-settings) tab and check the **Enable client approvals** checkbox within the **Approval Options** section (Figure 1) of the Overview. To edit a project in Ruddr, your [security role](/workspace-administration/security-roles) must give you access to the project and must also have the **Edit project** permission.
Checking the **Enable client approvals** checkbox will add a new **Client Approvals** tab to the project dashboard (Figure 2). Note that this tab will only be shown to workspace members who have the **Administer project team time and expenses** permission for the project. The client approvals list that displays on the Client Approvals tab can be filtered by client approval status and by member, such that only client approvals containing time and expense items for a particular member are displayed.
To create a new client approval, simply click the **Create a Client Approval** button at the top-right of the **Client Approvals** tab (Figure 2). This will bring up a window (Figure 3) that will allow you to set the parameters for the new client approval.
You can specify the date range and choose the types of items that you would like to have approved (hours and/or expenses). Additionally, you can opt to send reminders to the client and/or to auto-approve items if the client is non-responsive. Once these options are set, just click the **Save** button to create the new client approval.
Note that if there are any running timers within the selected date range for the project, those timers will be stopped when the client approval is created. Also, once a time entry is associated with a client approval, it can no longer have its timer started.
After the client approval has been created, the summary of that approval will be shown (Figure 2). The approval status of the time and expenses will be summarized by team member. To view the detailed time and expense items for a given team member (Figure 4), simply click on that client approval row in the list (Figure 2) to bring up the list of members and the time being submitted.
Note that since the new client approval hasn't been sent to the client yet, all of the items items under each member will be in a pending state. Although the items may be fully approved internally, they have not yet been approved by the client.
If items need to be added or removed from a client approval, this can be done via the **Select Items** menu option which is available by clicking the down arrow (Figure 5) on the main action button at the bottom-right of the screen (Figure 4).
Clicking this option will bring up the **Select Items** drawer (Figure 6) which will allow you to include or exclude specific items for the client approval. To remove an item from the approval, simply uncheck it and click the **Apply** button.
Once the items on the client approval have been validated, the approval is ready to be sent to the client. This is done by clicking on the **Send** button at the bottom-right of the screen (Figure 4). This will bring up a drawer (Figure 7) that will allow you to customize the email message that the client will receive. You can send the approval to more than one client contact by separating the email addresses by a comma, semi-colon, or space, or by utilizing the Cc: field in a similar manner.
Note that if the client approval has already been submitted by the client, you will be prompted to confirm that you want to resend the client approval. Resending a client approval once the client has approved items will cause all time entries and / or expense items to have their approval status reset.
The **Send Test to Me** button on the drawer (Figure 7) allows a test email to be sent such that you can validate the email and the client approval contents. After validating the email, and/or when ready, simply click the **Send** button on the drawer to send the approval email to the client contact.
#### What Your Client will See
The client email will include a **Review Items** button that will take the contact to a screen (Figure 8) where the review and approval process can be completed. This screen is similar to the internal view of the approval except that it includes actions and notifications related to the review process.
Additionally, the client will have the ability to view any prior client approvals. For those client approvals that remain outstanding, they will have the ability to take action on those as well. This can be accomplished by selecting from a list of client approvals that are available via a dropdown menu at the top of the screen.
The client can approve or reject all of the items by clicking the checkbox in the header bar and then selecting appropriate action in button menu (Figure 9) at the bottom of the screen.
Individual time and expense items may be approved or rejected by using the "thumbs up" or "thumbs down" icons (Figure 10) on the right side of the screen.
As the client contact approves or rejects items, the bar (Figure 11) at the bottom-left of the screen (Figure 8) will show the progress. All of the items in the client approval must have their approval status set to either approved or rejected before the **Submit** button at the bottom-right of the screen will be enabled. *The client contact cannot submit a partial set of approvals.* When the approvals are done and the submit button is clicked, the client approval can no longer be edited by the client.
When the client submits the approval, the client contact will be required to type in his or her name such that Ruddr has a record of the person who completed the approval. The workspace member who created the client approval will be notified upon submission, as will the Project Admin for the project.
Once the client submits the approval, all associated time and expense items will be locked unless the workspace member has **Administer time and expenses** permission for the given project.
### Scheduled Client Approvals
For many projects, you may want to schedule client approvals such that they are automatically created and sent to the client on a periodic basis. Ruddr provides a mechanism for you to set up these client approval schedules.
To manage your client approval schedules, open the **Client Approval Schedules** drawer (Figure 13) by clicking the action menu on the **Create a Client Approval** button (Figure 12) that is found on the Client Approval tab (Figure 2) on the Project Dashboard.
**Manage Client Approval Schedules**
The **Client Approval Schedule** drawer (Figure 13) allows you to manage the one or more schedules that you have created.
To edit an existing schedule, click on the **Edit** pencil icon on the right side of the schedule row. Clicking to open the action menu (Figure 14) will allow you to deactivate the client approval schedule, to manually run the schedule, or to delete the schedule for the project.
**Create a New Client Approval Schedule**
To create a new client approval schedule, click the **Create a Client Approval Schedule** button on the drawer. This will bring up the **Add Client Approval Schedule** drawer (Figure 15), where you can specify the schedule, email and auto-approval settings, project members, time and expense settings, and email details. This experience is very similar to the one you will encounter creating a [single-batch client approval](#single-batch-client-approval), but with additional information related to the schedule itself.
First, specify schedule you want to create, whether that is Monthly, Semi-Monthly, or Weekly.
Then, specify how many days after the close of the period you want to wait before creating the approval. As part of this, you can set the time zone for when the client approval will be created by Ruddr. If a time zone is not provided, the approval will be created at 9 am in the workspace time zone as defined in [Workspace Settings](/workspace-administration/general-workspace-settings).
Next, specify the Project team members that you want to include in this approval schedule, and whether or not time and / or expenses should be included. If you wish to include time and / or expense, specify whether they must be internally approved prior to be included on the client approval request.
Note that Ruddr will not create a client approval if the project has been archived or if the project's status is anything other than "In Progress".
# Create a New Project
Source: https://help.ruddr.io/projects/create-a-new-project
Walk through creating a project in Ruddr, from the New Project window to the Edit Project drawer's settings, time tracking rules, approvals, and billing.
You can create a project in Ruddr by clicking on the **New Project +** button on the [project list](/projects/project-list) screen (Figure 1) or on the **Projects** tab of the [client dashboard](/clients/client-dashboard). You will only see this button if you have the **Create project** permission on your [security role](/workspace-administration/security-roles).
When you click the **New Project +** button, a **New Project** window (Figure 2) will be shown. This window captures the minimum fields required in order to create a project. These required fields include the **Project Name**, **Client**, and **Billing Type**. Additionally, you can specify whether or not the project will use roles or have a budget. You can either select an existing client or create a new client right from this window. Note that initiating project creation from the client dashboard will set the client dropdown for the client you are currently viewing and will remove the ability to create a new client.
After clicking the **Save** button, the project will be created and you will be taken to the project's [**Settings**](/projects/project-settings) tab such that additional information about the project can be provided. The **Overview** section includes the sections described below.
### Basic Information
The basic information section (Figure 3) of the overview includes high-level project information.
The fields in this section include:
* **Client** - Select any client in the workspace. Note that depending on your permission setting, you may only have access to clients where you are on a project team for that client. For internal projects, select the default internal client associated with your workspace.
* **Project name** - The name of the project.
* **Project URL ID** - You can edit the reference to this project, such that the URL to access the project contains this text. Note that the Project URL ID must result in a unique URL within the same client. Two projects within the same client cannot have the same Project URL ID.
* **Practice** - The name of the practice that owns the project. Practices are optional in Ruddr.
* **Business Unit** - The name of the business unit that owns the project. Business Units are optional in Ruddr.
* **Sales Representative** - If a Sales Representative is supplied on the client, that sales representative will be defaulted for new projects. You can edit that as necessary.
* **Project Status** - The status of the project can be set to **Tentative**, **Not Started**, **In Progress**, **Paused**, **Completed**, or **Cancelled**. A separate Ruddr help article covers [project status](/projects/project-status) in more detail.
* **Project Type** - The type of project. A Workspace Admin can set up any number of project types for your workspace.
* **Project Dates** - The expected start and end date for the project.
* **Project Code** - Any internal project identifier that your team may use for the project.
* **Project Tags** - Custom tags for this project. A Workspace Admin can set up any number of project tags for your workspace.
* **Project Group** - if the Project Group [feature](/workspace-administration/features) is enabled, you can associate this project with other projects for this client by associating it with the appropriate project group.
* **Notes** - Any notes about the project that could be helpful to other project team members.
### Settings
The Settings section (Figure 4) of the overview allows you to control the primary project configuration options. Internal projects will have a designated setting for [productive utilization](#productive-utilization).
The fields in this section include:
* **Use roles** - Projects can have bill rates assigned to roles or assigned directly to team members.
* **Use rate cards** - Lets the project's bill rates and labor cost rates change over time with dated [rate cards](/projects/project-rate-cards). This setting is only present when the Project Rate Cards feature is enabled in the workspace, and is off by default.
* **Task dependencies** - Enables Blocking / Blocked by relationships between the project's tasks, as well as the Gantt view of the Tasks tab. This setting is on by default for new projects. Turning it off hides existing relationships rather than deleting them; you'll be asked to confirm before turning it off. See [Task Relationships: Blocking and Blocked By](/projects/project-tasks#task-relationships-blocking-and-blocked-by) for more information.
* **Automatically complete milestones** - When enabled, a [milestone](/projects/project-tasks#milestones) is automatically marked Completed once every task blocking it has been completed. This setting requires Task dependencies to be enabled.
* **Track overall budget** - Enables you to track an overall budget for the project. Some project metrics are only available if a budget has been created. Also, budget hours must be provided for Fixed Fee projects in order for Ruddr to determine earned revenue to date on the project.
* **Track project health** - With this setting enabled, project health reports can be created / managed for the project. This setting is only present when the [Project Health Reporting](/projects/project-health-reporting) feature is enabled in the workspace.
* **Track monthly budget** - Some teams prefer to track both a monthly budget and an overall budget. For Fixed Monthly billing type projects, often the monthly budget is the only type used.
* **Lock time and expenses** - Turning this on keeps time or expense items from being created or edited. This can be useful if a project is put on hold or at times before or after a project has started / completed.
* **Expense items are billable by default** - Set this if you want the **Bill to client** setting on new expense items to be checked by default. This helps any team members that will be creating and submitting expenses for the project ensure that new expenses are billable as created.
* **Automatically assign new workspace members to this** **project** - In some cases, you may want to have new workspace members automatically added to a project. By enabling this setting, as new members are created in the workspace, they will be automatically assigned to this project.
* **Notify members when they are added to this project team** - With this setting enabled, any members that you add to the project team will receive a notification indicating that they have been added to the project.
When a project's **Lock time and expenses** setting is turned on, this status will be represented in both the [Projects List](/projects/project-list) and within the project header (Figure 5) on the project dashboard.
#### Productive Utilization
Productive Utilization in Ruddr is the sum of client hours and productive, internal hours divided by a member's capacity. Hours logged to internal projects (projects that are created under the workspace's internal client) can be considered part of this calculation if the project's **This internal project counts toward productive utilization** setting (Figure 6) is checked. This setting will appear in the Settings section (Figure 4) if the project being edited is an internal project.
### Time Tracking Rules
If you would like to apply rules that dictate how project team members can enter their time against the project, the Time Tracking Rules section (Figure 7) provides a number of options.
The fields in this section include:
* **Every time entry must have notes** - With this option on, all time entries recorded against the project must include text in the Notes field.
* **Every time entry must be associated with a task -** If this option is selected, members will be required to specify a task for every time entry they create for this project.
* **Time cannot be tracked on a weekend -** Team members will be prohibited from entering time on the project for Saturday and / or Sunday.
* **Time cannot be tracked on a holiday -** Members of the project team will not be allowed to track time to the project on holidays as defined in the workspace.
* **Members can only track time to assigned roles -** Team members must have an active role assignment on the project to enter time against the project.
* **Member can only track time on days where they are allocated -** Restricts members to only be able to track time on the days that there is an allocation assigned to them.
* **Members can track no more than X hours in a month -** use this setting to restrict the number of hours that a team member can submit for the project in a given week.
* **Members can track no more than X hours in a week -** If you wish to restrict the number of hours that a team member can submit for the project in a given week, check the box for this field and select the maximum number of weekly hours allowed in the dropdown.
* **Members can track no more than X house in a day -** With this option selected, members can track up to a maximum of hours on any given day for the project. Select the maximum number of daily hours from the provided dropdown.
### Approval Options
The Approval Options section (Figure 8) includes the internal and client approval configuration.
The fields in this section include:
* **Time approval** - Time entries can require manual approval or they can be auto-approved upon submission.
* **Expense approval** - Expenses can require manual approval or they can be auto-approved upon submission.
* **Enable client approvals** - When this option is checked, a new tab on the [Project Dashboard](/projects/project-dashboard) is shown called [Client Approvals](/projects/client-approvals). This tab allows you to send a batch of time and expenses to the client for approval before an invoice is created. Note that once a client approval has been created, this option will be checked and disabled.
**Multi-Step Approval Workflow**
If your workspace has the [Multi-Step Approval Workflow](/workspace-administration/multi-step-approval-workflow-overview) feature enabled and your approval options are set to Manual, then you will be able to specify whether you want leverage the workspace's default approval workflow or if you want to specify a custom workflow for this project. For more information, view the [Managing Multi-Step Approval Workflows](/projects/managing-multi-step-approval-workflows) article in the Ruddr Help Center.
At some point in the future, should you wish to disable the Multi-Step Approval Workflow feature in the workspace, any projects that you wish to revert back to single-step approval will need to be reverted *before* you disable the feature in the workspace. Disabling the feature prior to reverting any projects' workflows will result in those projects' workflows being locked into the multi-step approval process that was specified for them.
### Billing
The Billing section (Figure 9) of the overview tab allows you to set the basic financial configuration of the project.
The fields in this section include:
* **Billing Type** - Depending on the billing type selected, additional information may be required.
* For more, see the [Billing types](/projects/billing-types) article.
* **PO Number** - If the client has assigned a purchase order number to the project, it should be entered here. The PO Number will automatically be shown on any invoices created for the project.
* **Accounting Notes** - The team can input internal account notes that will display at the top of the project's Accounting section and be accessible on both the [Ready to Bill](/billing/ready-to-bill) screen and draft invoices.
**NOTE**: if the [Purchase Orders](/clients/purchase-orders) feature is enabled in the workspace, in addition to the option to type in a PO Number, as illustrated above, you will have the ability to select from a list of Purchase Orders that you may have created on the client. If you select from one of these client purchase orders, the PO Number field will no longer be available.
If you select Fixed Fee or Fixed Monthly for the Billing Type, you will also be prompted to specify a [Revenue Recognition Method](/projects/fixed-fee-revenue-recognition) and a [Revenue Attribution Method](/projects/fixed-fee-revenue-attribution).
**Multicurrency**
Workspaces that leverage Ruddr's Multicurrency feature will have options to associate a currency with the project. For more on assigning a currency to a project, please refer to the [Project Currency](/multicurrency/project-currency) article in the Ruddr Help Center.
### Invoice Details
By default, each project uses the invoice details as set on that project's client, which can be provided on the [Edit Client](/clients/create-a-new-client) drawer. In this case (Figure 10), **Use client defaults** is selected and the invoice details are read-only.
If the [Business Units](/workspace-administration/custom-data#business-units) feature is enabled, a **Use Business Unit defaults** option (Figure 11) is also available, which uses the invoice details from the business unit assigned to the project instead of the client's. This option is disabled until a business unit has been assigned to the project.
Many times, there are multiple groups within a client that need to receive invoices for specific projects. In that scenario, the client's (or business unit's) invoice settings are not applicable. If you need to provide project-specific invoice details, select **Use custom invoice values** (Figure 12), and edit the invoice details for the project.
For all three options, this section also shows read-only **Issuing Company Name**, **Issuing Company Street Address**, and (if your workspace includes a logo on invoices) **Issuing Company Logo** fields, so you can see exactly which company information will appear on the invoice. For **Use client defaults** and **Use custom invoice values**, these always come from the client - the client's own business unit if the client uses **Use Business Unit defaults**, or the workspace otherwise. For **Use Business Unit defaults**, they come from the project's own business unit. A tooltip next to **Use custom invoice values** notes where its issuing company information comes from.
Note that when creating invoices for an individual project, the project's invoices settings are used. These settings can be inherited from the client or a business unit, but can also be customized for that specific project. If an invoice is generated for more than one project for the same client, the client's invoice settings are used.
### Integrations
#### Slack
If the [Slack integration](/integrations/slack-integration-overview) is configured in your workspace, this option (Figure 13) will appear. If you would like to map this project to a project Slack channel, you can select the respective project channel from the dropdown (Figure 13) on the right.
**Private Channels**: if your project's Slack channel is private, you will need to add the Ruddr app to the channel as a first step. Once you have added the Ruddr integration to the private channel, that channel will display in the Project channel dropdown (Figure 13). To add the app to the channel, right-click on the channel in Slack, click on **View Channel Details**. In the channel details modal, select the **Integrations** tab and click the **Add an App** button, selecting Ruddr from the list of available apps.
For more information on Slack project alerts, please refence the [Slack Integration Overview](/integrations/slack-integration-overview) article in the Help Center.
#### Cloud Storage
You can connect any Ruddr project to a cloud folder from any of the major cloud storage providers.
Supported cloud storage providers include Google Drive, OneDrive, Microsoft Teams, SharePoint, Box, Dropbox, and more. These cloud storage platforms allow you to store, share, and collaborate on files and folders from any mobile device, tablet, or computer.
To configure on a project, simply provide the URL to the cloud folder in the **Cloud Folder URL** textbox (Figure 14) in the **Cloud Folder** section of the project's Overview settings. The link to this cloud storage location will appear on the information bar on the [Project Dashboard](/projects/project-dashboard), making it accessible to project team members.
### Remaining Project Setup
The other sections of the [**Settings**](/projects/project-settings) tab allow you to further configure the project. These sections provide information about:
* [Project Team](/projects/project-team)
* [Roles](/projects/project-roles)
* [Rates](/projects/project-bill-rates)
* [Billing Schedule](/projects/fixed-fee-billing-schedule)
* [Budget](/projects/create-a-project-budget)
Note that depending on the project configuration settings in the overview, some of these additional sections may not be available.
# Create a Project Budget
Source: https://help.ruddr.io/projects/create-a-project-budget
Set up overall and monthly project budgets in Ruddr using summary, detailed, or task-aggregated models, with optional caps and budget notification emails.
Ruddr offers two distinct types of budget options: an [overall budget](#create-an-overall-budget) and a [monthly budget](#monthly-budget). An overall budget is the budget for the entire project while the monthly budget establishes a financial baseline for each month. In order to set up a budget, you must have access to the project and also have the **Edit project** permission set on your [security role](/workspace-administration/security-roles).
A budget allows you to plan out the hours, revenue, expenses, and other billable items that you expect over the course of the entire project or for each month of the project. You can break the hours and expenses out into their billable and non-billable components. Additionally, when you a [Target Services Gross Margin](#target-services-gross-margin) on the [Financial Budget Summary](#financial-budget-summary), Ruddr will calculate additional cost, profit, and margin budgets based on this desired services gross margin for the project.
Setting up a budget at the outset of a project is a highly-recommended best practice. Once your budget is created, you can monitor your performance against the budget from the [project dashboard](/projects/project-dashboard).
For [visibility into a project's budget](#project-budget-notifications), a project's Project Admins and the Client Relationship Owner of the associated client can be notified via email when the project hits or exceeds a specified percentage of the project's hours and / or services revenue budget. This is accomplished through [budget notification settings](#project-budget-notifications) on the project's budget.
## Create an Overall Budget
To turn an overall budget on for your project, simply click the **Track overall budget** checkbox within the **Settings** section (Figure 1) of the **Overview** on the project's [**Settings**](/projects/project-settings) tab.
Once you check this checkbox and save, a new **Budget** section will show in the left navigation of the Settings tab. The **Budget** section presents a read-only summary of the budget; to build out or change the budget, click the pencil button at the top-right of the section to open the **Edit Overall Budget** drawer. The first step in building out your budget is to select one of the three budget model options:
* [Summary budget](#summary-budget)
* [Detailed budget](#detailed-budget)
* [Detailed budget aggregated from tasks](#detailed-budget-from-aggregated-tasks)
### Summary Budget
The quickest and simplest way to create a budget is to use a summary budget (Figure 2). A summary budget allows you to type in planned overall figures for services revenue, billable hours, non-billable hours, billable expenses, non-billable expenses, and [other items](/projects/other-items-ledger) (such as products).
Using a summary budget can be ideal if you handle your project estimation and budgeting outside of Ruddr. Rather than duplicate that budgeting work within Ruddr, you can simply type in the final budget figures. If you aren't using an external tool for budgeting, it is recommended that you use one of the two detailed budget options described below.
Note that in this section you can elect to have [project budget notifications](#project-budget-notifications) sent.
### Detailed Budget
Choosing the standard, detailed budget allows you to provide more granular data than the summary budget option.
#### Hours and Services Revenue
For each role or member on the project team, you specify the number of planned billable hours and non-billable hours (Figure 3). For time and materials projects, the budget revenue is automatically calculated per role/person and included in the summation of hours and services revenue for the project. On a billable project with more than one [rate card](/projects/project-rate-cards#budgets), a **Rate Card** selector chooses the rates that price the budget; on Fixed Fee projects, that choice affects the **Automated - Percentage of Time & Materials Revenue** [revenue recognition method](/projects/fixed-fee-revenue-recognition#percentage-of-time-and-materials-revenue-method).
Note that at the bottom of the detailed budget you have options to cap the project's services revenue to the budget or cap the billable and non-billable hours to the budget. These setting will help you ensure that the project does not go over the revenue or hours budgets.
Checking the **Cap the services revenue** checkbox will prevent time entries for the project from being saved if the time will cause the project to exceed its services revenue budget. This is applicable for projects with a Time and Materials billing type.
Checking the **Cap the total hours** checkbox will prohibit time entries for the project from being saved if the time will cause the project to exceed the billable or non-billable hours budget.
The **Cap the hours by role** checkbox will impose hours limitations on each role. Each role will be limited to the individual role budgets for billable and non-billable hours specified in the detailed hours budget grid. **NOTE:** if the project does not use roles, this would be available as a **Cap the hours by member** option and the budgeted hours would be supplied by member.
Note that in this section you can also elect to have [project budget notifications](#project-budget-notifications) sent.
#### Expenses
For the expense budget (Figure 4), you click the **+ Quick Add** button to add a new expense category to the expense budget. For each row in the budget, provide the total planned billable and non-billable expense dollar amounts for the expense category. Workspace Admins have the ability to add, edit, and remove expense categories from the workspace settings area.
Note that you can also choose to **Cap the billable and non-billable expenses** by checking the checkbox at the bottom of the Expenses section. This will prevent an expense item for the project from being saved if it will cause the project to exceed its billable or non-billable expense budget.
#### Other Items
In addition to budgeting for hours, revenue, and expenses, you can also budget for **Other Items** (Figure 5). [Other items](/projects/other-items-ledger) are often products or materials that you sell to your customers alongside the delivery of your services project. If your company buys products (such as software licenses) wholesale and then resells those products to clients, you would budget for those items in this section.
### Detailed Budget from Aggregated Tasks
When a detailed budget is aggregated from the project's [tasks](/projects/project-tasks), this means that the billable and non-billable hours per role are automatically calculated from the set of tasks defined on the Tasks tab of the [project dashboard](/projects/project-dashboard). This can be thought of as a "bottoms up" budget in which you define the work at a task level and the budget builds itself.
When using the aggregated budget option, it is imperative that all project work be captured within a task. If there is project work not reflected in a task, the aggregated budget figures will be lower than they should be.
With an aggregated budget, the expense and other items budget areas in the budget drawer remain and are available just as they are when creating a detailed budget.
When a task does not have member / role assignments, the task's hours budget or services revenue budget is included as part of a "Unassigned" role budget on the project budget. This ensures that all budgets for tasks are represented on the project's Hours and Services Revenue budget (Figure 6).
Note that you can also elect to have [project budget notifications](#project-budget-notifications) sent for this project.
### Financial Budget Summary
As you build your project budget, the total revenue budget (Figure 7) will be calculated from the services, expenses, and other items totals that you specify, and will be displayed as part of the Financial Budget Summary (Figure 7). For Fixed Fee projects, you will want to ensure that your [Fixed Fee Billing Schedule](/projects/billing-types#fixed-fee) equals the total billable budget represented here.
#### Target Services Gross Margin
In addition to tracking a total revenue budget, Ruddr will calculate cost, profit, and margin budgets, all of which can be tracked in addition to revenue. In order for Ruddr to calculate and provide these budgets, you will need to provide a Target Services Gross Margin value in the Financial Budget Summary (Figure 8).
This desired margin percentage will be used by Ruddr to determine the following, additional budgets:
* Labor Cost
* Services Gross Profit
* Total Cost
* Total Gross Profit
* Total Gross Margin
These budgets are all visible on the Project Progress graphs on the [Project Dashboard](/projects/project-dashboard).
Note that providing a Target Services Gross Margin is not required in order to establish a revenue budget -- you can save a project budget without providing this target.
## Monthly Budget
A monthly budget is useful when you need to manage a project to a certain amount of time, expenses, and fees per month. You can use both an overall budget and a monthly budget on the same project. To turn on the monthly budget, check the **Track monthly budget** checkbox in the **Settings** section (Figure 9) of the **Overview** on the project's [**Settings**](/projects/project-settings) tab.
The monthly budget process is identical to the overall budget process described above except that the monthly budget only has two available budget model options which are **Summary budget** and **Detailed budget**. A monthly budget cannot be aggregated from tasks because tasks are not set up on a monthly basis.
To set a monthly budget once you have specified that the project should use one, go to the **Monthly Budget** section in the left navigation of the Settings tab and click the pencil button to open the **Edit Monthly Budget** drawer (Figure 10).
Like with the Overall Budget, you can check the **Cap the billable and non-billable hours** checkbox to prohibit time entries for the project from being saved if the time will cause the project to exceed the monthly billable or non-billable hours budget.
## Project Budget Notifications
When setting the project budget, you can specify whether or not you would like to send out project budget notifications via email. These notifications can be sent for the hours budget, the revenue budget, or both. When the project budget notifications are enabled, the project's Project Admin and the Client Relationship Manager for the respective client will be notified via email (Figure 12) when the project hits or exceeds the specified budget percentage denoted when the setting is enabled. Additionally, a follow-up notifications will be sent to both parties when the budget hits or exceeds 100%.
Each budget option - Summary, Detailed, Detailed Aggregated from Tasks - will have options (Figure 11) for setting up project budget notifications. When enabled, you can also specify the percentage at which you wish for the notifications to be sent.
# Earned Revenue Adjustment Ledger
Source: https://help.ruddr.io/projects/earned-revenue-adjustment-ledger
Add single or recurring earned revenue adjustments on the Accounting tab to correct reported revenue without changing what is invoiced to the client.
The **Earned Revenue Adjustment Ledger**, found in the **Accounting** section (Figure 1) of the project's [**Settings**](/projects/project-settings) tab, allows you to make adjustments to earned revenue. To edit a project you must have access to the project and must have the **Edit Project** permission for that project based on your Ruddr [security role](workspace-administration/security-roles).
### Creating Adjustments to Earned Revenue
The **Earned Revenue Adjustment Ledger** is one of the ledgers in the **Accounting** section of the Settings tab. This ledger allows you to adjust the earned revenue for all types of revenue, including services, expenses, products, and other items. Adjustments to earned revenue can be either positive or negative.
Adjustments to earned revenue are not invoiced to clients as they simply impact the calculation for the specified type of earned revenue. Accordingly, they do not change the invoiced revenue amount. Adjustments to earned revenue are reflected on Ruddr dashboards and reports.
Adjustments can be added manually, and they can also be created automatically when a [credit note](/billing/credit-notes) is published - see [Adjustments Created by Credit Notes](#adjustments-created-by-credit-notes). You can also import adjustments from a CSV file - see [Importing Earned Revenue Adjustments](/workspace-administration/csv-import#importing-earned-revenue-adjustments).
There are two ways to add adjustments to the **Earned Revenue Adjustment Ledger**:
* [Add a Single Earned Revenue Adjustment](/projects/earned-revenue-adjustment-ledger#add-a-single-earned-revenue-adjustment)
* [Add a Recurring Earned Revenue Adjustment](/projects/earned-revenue-adjustment-ledger#add-a-recurring-earned-revenue-adjustment)
#### Add a Single Earned Revenue Adjustment
To add a single earned revenue adjustment, simply click on the **+** button at the top-right of the **Earned Revenue Adjustment Ledger** (Figure 2).
This will open the **Add Adjustment Entry** window (Figure 3) where you can supply the information about the adjustment.
You can provide the following fields:
* **Date** - The date that you want the earned revenue adjustment to impact Ruddr reports and dashboards.
* **Revenue Type** - The type of revenue that you are adjusting. This could be services, expenses, products, or other items.
* **Amount** - The amount of the earned revenue adjustment. This could be either positive or negative.
* **Notes** - The description or reason for the earned revenue adjustment.
Clicking the **Save & Close** button on the **Add Adjustment Entry** window will close the form and add the adjustment to the ledger (Figure 4).
#### Add a Recurring Earned Revenue Adjustment
If you need to have a monthly recurring adjustment, you can create these via the **Add Multiple** button at the top-right of the **Earned Revenue Adjustments Ledger** (Figure 2). This will open the **Add Adjustment Entries** window (Figure 5).
On this window, the fields are identical to the single **Add Adjustment Entry** window (Figure 3), with the exception of the following:
* **Starting Month** - The first month that you want this adjustment to be applied.
* **Ending Month** - The final month that you want this adjustment to be applied.
* **Scheduled on the X Day of Each Month** - The exact day of the month that you want this adjustment to be applied.
Once you have provided the information for the recurring adjustment schedule, click the **Add** button at the bottom of the **Add Adjustment Entries** window (Figure 5). This will close the window and add the full revenue adjustment schedule to the **Earned Revenue Adjustment Ledger** (Figure 6).
The individual rows can be edited or deleted via the buttons on the right side of each row.
### Adjustments Created by Credit Notes
Adjustments can also be created automatically by [credit notes](/billing/credit-notes). When a credit note is published with the option to adjust earned revenue, Ruddr adds a negative adjustment to this ledger for each affected project, using the project and revenue type of the credited lines (Figure 7).
These adjustments are read-only. They are marked with a lock icon and, unlike manual adjustments, cannot be edited or deleted from the ledger - they are managed by the credit note itself. [Unpublishing or deleting the credit note](/billing/credit-notes#publish-a-credit-note) removes the adjustments and restores the amounts to the project's earned revenue.
# Earned vs Invoiced Revenue
Source: https://help.ruddr.io/projects/earned-vs-invoiced-revenue
Understand the difference between earned and invoiced revenue in Ruddr and why earned revenue drives metrics like effective bill rate and services margin.
Ruddr helps you keep track of both earned revenue and invoiced revenue. While these may sound like the same thing (after all, isn't all revenue earned?), they are not. It is important to understand the difference between earned and invoiced revenue because of the impact to performance metrics and financial reports. To view revenue-related information in Ruddr, you must have project-level **View revenue** permissions on your security role.
**Invoiced Revenue**
Invoiced revenue is exactly what it sounds like - it is the revenue that has been invoiced to clients. Those clients may not yet have paid those invoices, but the fees count as invoiced revenue, nonetheless. If an invoice shows 1,000 hours at a bill rate of \$100 for a given month, you will have \$100,000 in invoiced revenue for that month.
**Earned Revenue**
Earned revenue is a slightly more nuanced concept that depends on the billing type of the project. For time and materials ("T\&M") projects, earned revenue and invoiced revenue are the same for a period of time, assuming the invoice has been created. Since a T\&M invoice reflects the hours worked in a timeframe, the earned and invoiced revenue are identical for that period (once the invoice has been created). But, for fixed fee projects, the earned revenue is often different than the invoiced revenue. This is best illustrated through an example.
#### Calculating Earned Revenue
Assume that you sign a contract with a new client to deliver a \$100,000 fixed fee project. You have negotiated a billing structure whereby the client pays \$50,000 at contract signing and \$50,000 after the successful completion of the project. Also assume that the contract is signed on January 1st and the client pays the first \$50,000 invoice that day. Your team is really busy and cannot start the project until February 1st. The project is then completed over the next four months with 25% of the work being delivered each month. At the end of May, when the project is done, you invoice the final \$50,000.
In terms of invoiced revenue, you have \$50,000 in January and \$50,000 in May. There is no invoiced revenue in February, March, or April. But, to calculate the earned revenue, we must consider when the work was delivered, not when it was invoiced. Since 25% of the work was delivered each month starting in February, the earned revenue on the project would be \$25,000 in February, \$25,000 in March, \$25,000 in April, and \$25,000 in May.
It is important to realize that your earned revenue is disconnected from your invoiced revenue. The earned revenue is better aligned with the actual delivery of the services. In the example above, through the end of April, you have earned a total of \$75,000 even though only \$50,000 has been invoiced. It is possible to have more (or less) earned revenue at a point in time than you have actually invoiced.
#### The Importance of Earned Revenue in Ruddr
Ruddr relies on earned revenue to calculate several key operational metrics. For example, the effective bill rate and services margin for a project are calculated by using earned revenue. By using earned revenue, Ruddr can provide a more accurate point-in-time representation of these metrics.
Continuing with the sample project outlined above, we will look at the effective bill rate at the end of February using both invoiced revenue and earned revenue. If the project team had worked 250 total hours by the end of February, the effective bill rate using invoiced revenue would be the \$50,000 invoiced in January divided by 250 hours worked in February, which yields a \$200 per hour effective rate.
To calculate the effective rate properly, we must use the percentage of the project that was completed in February. Since the project team worked 250 hours during the month out of the total 1,000 estimated hours, 25% of the project was completed in February. Thus, the team has earned 25% of the \$100,000 total budget, which is \$25,000. The effective bill rate using earned revenue would be \$25,000 divided by 250 hours which yields a \$100 per hour effective rate.
This example illustrates the importance of utilizing earned revenue when gauging professional services performance. If a firm does a considerable amount of fixed fee projects, earned revenue is the superior way to effectively evaluate the operational performance of both the projects and the firm.
#### How Ruddr Calculates Earned Revenue
For T\&M projects, earned revenue is essentially the hours that have been worked on the project. Thus, the earned revenue can change every hour of every day, assuming time is being recorded in Ruddr. For fixed fee projects though, Ruddr calculates earned revenue using one of its [fixed fee revenue recognition](/projects/fixed-fee-revenue-recognition) methods. These methods allow for revenue to be recognized at a specific point in time.
#### Project Budgets must be Updated Regularly
It is important that a [project's budget](/projects/create-a-project-budget) is regularly updated during the delivery of a project. If the original budget of a fixed fee project is no longer realistic, the project's earned revenue and corresponding metrics will be wrong until the budget is fixed. It is a best practice to update each project budget at least once per month.
For the most accurate understanding of a project's budget, it is recommended that the project be broken down into individual [tasks](/projects/project-tasks) in Ruddr. Each task is assigned an hours estimate and the project manager can then track the progress against each task's estimate. By breaking down a large effort into its constituent tasks, it is much easier to manage the project and to proactively spot potential trouble.
A project's budget in Ruddr can be set to automatically aggregate from the project tasks. This means that the project manager simply needs to keep the task hour estimates updated and the overall project budget will be maintained automatically.
#### Revenue Reporting
Ruddr provides financial performance reports that allow you to quickly evaluate the key financial metrics over any period of time. These metrics include earned revenue, cost, profit, margin, realization rate, and effective bill rate. These financial reports can be used by the company's accounting team to determine how much revenue should be recognized on the company's financial statements for a given period.
While a full discussion of revenue recognition standards is beyond the scope of this help article, the Financial Accounting Standards Board (FASB) provides in-depth information on its [website](https://fasb.org/Page/Document?pdf=ASU+2020-05.pdf\&title=Accounting%20Standards%20Update%202020-05%E2%80%94Revenue%20from%20Contracts%20with%20Customers%20\(Topic%20606\)%20and%20Leases%20\(Topic%20842\):%20Effective%20Dates%20for%20Certain%20Entities).
# Fixed Fee Billing Schedule
Source: https://help.ruddr.io/projects/fixed-fee-billing-schedule
Build a schedule of invoice milestones for Fixed Fee and Fixed Monthly projects so Ruddr picks them up on the Ready to Bill screen on the right dates.
The **Fixed Fee Billing Schedule**, found in the **Accounting** section (Figure 1) of the project's [**Settings**](/projects/project-settings) tab, allows you to create a billing schedule for projects with a Fixed Fee or Fixed Monthly billing type. In order to edit a project you must have access to the project and also have the **Edit project** permission set on your security profile.
Only projects with a Fixed Fee or [Fixed Monthly billing type](#fixed-monthly-billing-schedules) use a billing schedule. Projects with a Time & Materials billing type will not have the billing schedule ledger. A billing schedule is a ledger of project milestones that will be invoiced to the client on specified dates. When a milestone has been billed via a published invoice, an invoice icon (Figure 1) will show on the corresponding row of the billing schedule.
It is a good practice to set up the billing schedule at the outset of the project, even if the exact milestone dates are uncertain. This helps ensure that the scheduled invoice milestones match the fixed fee amount in the **Billing** section of the project's Overview settings. If the milestone completion dates shift during the project, the bill dates on the billing schedule can be adjusted accordingly.
To create a billing schedule entry, simply click the **+** button at the top-right of the ledger (Figure 1). This will allow you to key in the bill date, invoice item, invoice milestone description, and the fee amount. If you wish to supply a quantity and rate for the milestone, check the **Include a quantity and rate for this milestone** checkbox and enter the **Quantity** and **Rate** values in the fields provided. Upon entering a quantity and rate, Ruddr will calculate the total Amount for the milestone.
You can edit or delete a billing schedule entry by using the menu on the right end of the row. Once a billing schedule entry has been billed on a published invoice, it can no longer be edited or deleted.
The **Billing** area of Ruddr will automatically pick up fixed fee invoice milestones once the bill date of the milestone is reached. These milestones will appear on the [Ready to Bill](/billing/ready-to-bill) screen.
### Fixed Monthly Billing Schedules
A Fixed Monthly project is one in which you will invoice the client the same amount each month. These projects are essentially a monthly, fixed fee engagement that recurs for specified number of months. The billing schedule (Figure 2) for a fixed monthly project allows you to create individual billing schedule items and will also allow you to "build out" a billing schedule, based on a date range and a recurring Fixed Monthly Fee amount.
To add multiple items to the billing schedule, click on the **Add Multiple** button found at the top-right of the billing schedule (Figure 2). This will present a Multiple Invoice Milestones modal (Figure 3) that will allow you to enter the following:
* **Include a quantity and rate for this milestone** - if you would like to specify a quantity and rate for the milestone, check this box and you will be presented with form fields to enter these values. When entered, the Amount will be calculated for you.
* **Starting Month** - provide the first month for which you want to create a billing milestone
* **Ending Month** - provide the last month for which you want a billing milestone created
* **Scheduled on Day** - enter the day of the month on which you want the billing milestone to be available for invoicing. On these dates each month, the billing milestone will appear in the [Ready to Bill](/billing/ready-to-bill) screen.
* **Invoice** **Item** - the invoice item will be set on the invoice line associated with this milestone when an invoice is created for the milestone.
* **Milestone Description** - provide a description that you would like to assign to the milestone. Note that this milestone description will be the default description assigned to the invoice line item associated with this milestone.
* **Append Month and Year** - select this setting if you would like to include the Month and Year of the billing schedule item inline with the milestone description.
* **Amount** - the monthly amount you wish to invoice for this milestone
As these milestones are created, they will be added to the Fixed Fee Billing Schedule (Figure 4).
Once items have been added to the schedule, whether individually or in multiples, you still have the ability to edit these billing schedule entries or create additional entries (using the **+** button as shown in Figure 2).
For more information about the various billing methods for projects, see the [Billing Types](/projects/billing-types) article.
# Fixed Fee Revenue Attribution
Source: https://help.ruddr.io/projects/fixed-fee-revenue-attribution
Choose how fixed fee services revenue is distributed across team members using billable hours, time and materials revenue, or services cost percentages.
In addition to supporting multiple methods for recognizing Fixed Fee revenue, Ruddr allows you to specify the method for attributing services revenue across the team members that have performed the work on a Fixed Fee project.
### Why is Revenue Attribution Important?
Traditionally, Fixed Fee projects are managed against a desired margin target for the project. As such, understanding project-level labor costs and project-level services revenue are a priority. However, when you need to analyze margins across the individual members of a team, you may need to specify how the services revenue should be distributed at that level. As project teams can be either homogenous in makeup or varied in terms of labor costs, bill rates, experience, how you distribute revenue can have a profound impact on margins reported across individual members of the team.
### Three Methods of Fixed Fee Revenue Attribution in Ruddr
Having an accurate attribution of services revenue per team member can be based on three different attribution methods in Ruddr:
* [Percentage of Billable Hours](#percentage-of-billable-hours)
* [Percentage of Time & Materials Revenue](#percentage-of-time-and-materials-revenue)
* [Percentage of Services Cost](#percentage-of-services-cost)
To set the Fixed Fee Revenue Attribution on a project, simply access the **Billing** settings (Figure 1) on the project's [**Settings**](/projects/project-settings) tab and select the desired attribution method from the **Revenue Attribution Method** dropdown.
#### Percentage of Billable Hours
For services teams that generally deliver Fixed Fee work with a homogenous team that can be priced out at a single Average Bill Rate, you may attribute services revenue based on the number of hours worked by each member of the team -- a percentage of hours worked may correlate to a percentage of the earned / recognized services revenue.
This is often the case with small project teams where multiple consultants may "jump in and jump out", often sharing duties on common tasks and working to complete the project within a budgeted timeframe and budgeted set of hours. In those cases, your projects may be structured / priced according to an Average Bill Rate that will drive the project margins you set for the engagement.
In such projects, labor costs and presumed bill rates are so similar that a distribution of revenue based on the percentage of hours worked provides an accurate view of the margin driven by those delivering the services.
When the **Percentage of Billable Hours** method is selected, services revenue will be attributed to project members based on the percentage of the billable hours that they work. The calculations would be as follows:
* **(Member's Billable Hours / Total Project Billable Hours) \* Recognized Services Revenue**
#### Percentage of Time and Materials Revenue
On larger, more distributed services teams delivering large, more complex Fixed Fee projects, teams may be structured with members that have varying degrees of expertise, labor cost, and presumed bill rates. Additionally, the distribution of hours is often times more slanted to a particular group of resources on the team than on smaller, less complex projects.
To accommodate this complexity and to provide a more accurate distribution of services revenue across members of the team, Ruddr provides the **Percentage of Time & Materials Revenue** attribution method. This method will attribute services revenue to project team members based on the percentage of recognized services revenue they would have produced had the project been a Time & Materials project.
As this method is based on the the calculated revenue as determined by hours and bill rates, this method requires project bill rates to be established either via [Project Roles](/projects/project-roles) or through member rate assignment.
The calculation of attributable revenue for a member is as follows:
* **(Member's Time & Materials Revenue / Total Time & Materials Revenue) \* Recognized Fixed Fee Services Revenue**
#### Percentage of Services Cost
On larger, more distributed services teams delivering large, more complex Fixed Fee projects, teams may be structured with members that have varying degrees of expertise, labor cost, and presumed bill rates. Additionally, the distribution of hours is often times more slanted to a particular group of resources on the team than on smaller, less complex projects.
To accommodate this complexity and to provide a more accurate distribution of services revenue across members of the team, Ruddr provides the **Percentage of Services Cost** attribution method. This method will attribute services revenue to project team members based on their percentage of the accumulated services cost on the project.
As this method is based on the calculated services cost of each member as determined by hours and cost, each member is required to have a labor cost, as [defined on their member profile](/workspace-administration/member-profile#cost-periods) or as provided by the member's [overridden cost rate](/projects/project-team#override-a-members-cost-rate) on the respective project.
When the **Percentage of Services Cost** method is selected, services revenue will be attributed to project members based on their percentage of the services cost on the project. The calculation would be as follows:
* **(Member's Services Cost / Total Project Services Cost) \* Recognized Services Revenue**
# Fixed Fee Revenue Recognition
Source: https://help.ruddr.io/projects/fixed-fee-revenue-recognition
Explore the five methods Ruddr offers for recognizing fixed fee revenue, from as-invoiced and manual entries to three automated percent-complete options.
With Time and Materials engagements, reports and dashboards in Ruddr show revenue as the hours are worked. *Note that you can only see revenue in Ruddr if your* [*security role*](/workspace-administration/security-roles) *has permission to view revenue.* In that T\&M scenario, if a project team works 10 billable hours in a given day, the associated revenue will be immediately reflected on Ruddr's reports and dashboards. With fixed fee projects, however, revenue is recognized at specific points in time and not as billable hours are entered.
### Why is Revenue Recognition Important?
Revenue recognition for fixed fee projects is important because it aligns revenue with the work that is being delivered. As an example, assume that your company sells a \$100,000 project and the contract states that 50% of the fee will be invoiced up front and 50% will be invoiced one month after the project is completed. In that scenario, you invoice the client \$50,000 today, even though you may not start the project until next month. Then, you invoice the final 50% one month after the project has been fully delivered. If you recognize the revenue as it is invoiced, your income statement will show \$50,000 in two months in which your team did none of the project work. This creates a "lumpy" income statement and makes the business difficult to manage.
Without a proper revenue recognition approach, the revenue and profit figures for the firm tend to swing wildly from one month to the next. Since revenue is not aligned to the work that is being delivered, key performance indicators such as effective bill rate and services gross margin become skewed. For any firm of scale, proper revenue recognition of fixed fee projects becomes mandatory.
### Brief Background on Accounting Standards in the United States
In the United States, the [Financial Accounting Standards Board](https://fasb.org/)’s (FASB) most recent revenue recognition standard, [ASC 606](https://www.fasb.org/page/PageContent?pageId=/projects/recentlycompleted/revenue-from-contracts-with-customers-topic-606-and-leases-topic-842effective-dates-postissuance-summary.html\&isstaticpage=true), outlines how companies should recognize revenue from customer contracts. ASC 606 is lengthy and most small-to-midsized professional services organizations are better served by following the AICPA's Financial Reporting Framework for Small and Medium-Sized Entities ([FRF for SMEs](https://www.aicpa.org/interestareas/frc/accountingfinancialreporting/pcfr.html)). The FRF for SMEs is an alternative to accounting principles generally accepted in the U.S. (GAAP) with the goal of making it easier for privately owned businesses to prepare their financial statements. For U.S. services firms that are not publicly traded (and do not intend to become publicly traded), FRF for SMEs is likely a better choice than ASC 606. FRF for SMEs stipulates that revenue should be recognized using a percent complete method.
Most countries have similar standards related to revenue recognition and many are modeled after FASB's ASC 606 standard. Refer to your country's tax accounting and tax laws for guidance.
### Revenue Recognition Methods in Ruddr
Revenue on a fixed fee project can be recognized in Ruddr using five distinct methods, three of which are [automated](#automated-methods). These methods are:
* [As Invoiced](#as-invoiced-method)
* [Manual](#manual-method)
* [Automated - Percentage of Billable Hours](#01JBPNF7JT6JREE8WFCWTN2MPT)
* [Automated - Percentage of Services Cost](#percentage-of-services-cost-method)
* [Automated - Percentage of Time & Materials Revenue](#01JBPNG1EF0E2ST12JSCPEJ621)
Note that the manual and automated method require that the Advanced Revenue Recognition [feature](/workspace-administration/features) is activated in the workspace.
The workspace's default method can be set within the Project Settings section (Figure 1) of [workspace settings](/workspace-administration/general-workspace-settings). The default can be overridden on a per-project basis as needed.
### As Invoiced Method
Every fixed fee project, regardless of the revenue recognition method, has a **Fixed Fee Billing Schedule** in the **Accounting** section of the project's [**Settings**](/projects/project-settings) tab. This is a schedule of the invoice milestones for the project and it includes the date and amount of each milestone. This ledger tells Ruddr when to include fixed fee invoice milestones on the [Ready to Bill](/billing/ready-to-bill) screen.
With the **As Invoiced** revenue recognition method, revenue for a milestone is recognized as of the Issued Date of the invoice that contains the milestone. This approach can work fine if the project will be invoiced in a manner that roughly aligns with the planned labor expenditure. But, if a significant portion of the fees will be invoiced in advance or at the end of the project, the **As Invoiced** method is not the best option. For those scenarios, one of the remaining three revenue recognition methods is optimal.
### Manual Method
With the **Manual** revenue recognition method, a **Revenue Recognition Ledger** (Figure 3) will be shown in the **Accounting** section of the project's Settings tab. The manual method provides you with complete control over when revenue will be recognized on the project. Revenue will be recognized independent of the billing schedule, and a billing schedule is not even required in order to recognize revenue.
The manual revenue recognition method can be ideal for firms that want the project manager to determine the percent complete on a periodic basis and make the appropriate entry in the ledger.
### Automated Methods
While calculating revenue recognition manually is often appropriate, it is usually a time-consuming and error-prone process. To alleviate those downsides, Ruddr provides three automated revenue recognition methods. These methods are **[Automated - Percentage of Billable Hours](#01JBPNF7JT6JREE8WFCWTN2MPT),** [**Automated - Percentage of Time & Materials Revenue**](#01JBPNG1EF0E2ST12JSCPEJ621), and [**Automated - Percentage of Services Cost**](#01JBPNF7JT6JREE8WFCWTN2MPT).
Ruddr performs automated revenue recognition either once per week or once per month, for all fixed fee projects in the workspace that use an automated method. The timing of the automated revenue recognition process can be set within the **Project Settings** of **Workspace Settings**, as shown below.
Ruddr will run the process for fixed fee projects that use an automated method and create a revenue recognition entry for the previous week or month. Both the weekly and monthly automatic revenue recognition processes run at 9:00 AM in the workspace's configured time zone.
Additionally, if a project leverages resource allocations, Ruddr will create the expected future revenue recognition ledger entries. Each time Ruddr runs the revenue recognition process, it will recreate the future revenue recognition ledger entries in order to keep the project's forecasted revenue accurate.
In calculating the planned revenue for this and future months, month's Ruddr can leverage actuals through either the day the process runs or through the end of the prior period. This latter option results in Ruddr leveraging only allocations in determining the planned revenue for the current period.
#### Advantages of Weekly Automated Revenue Recognition
When a project recognizes revenue once per month, specific metrics on the project can become skewed throughout the month. For example, if you are recognizing revenue on the last day of each month, labor costs accrue throughout the month (as time is entered) but there is no revenue until the end of the month. This causes the effective bill rate and services gross margin metrics to get worse until the end-of-month revenue recognition entry is created.
By setting the automated revenue recognition process to run weekly, revenue will accrue more frequently and project metrics will be more accurate throughout life of the project.
#### Percentage of Billable Hours Method
**Requirements:**
* Services Revenue Budget (Summary or Detailed)
* Billable Hours Budget (Summary or Detailed)
Please refer to the [Create a Project Budget](/projects/create-a-project-budget) for more on these required budgets, including information on Summary and Detailed budgets.
The **Percentage of Billable Hours** automated revenue recognition method requires that the project is configured with a services revenue budget and a billable hours budget. The budget can be either a summary budget or a detailed budget.
When Ruddr calculates revenue recognition based on the percentage of billable hours, it performs the following steps:
* Ruddr first determines the total billable hours that have been worked on the project to date through the end of the recognition period.
* Ruddr then calculates the total projected billable hours to complete the project. This is the greater of 1) the project's budgeted billable hours; or 2) the project's actual billable hours plus future allocated billable hours (if the project is using allocations).
* Ruddr divides the total worked hours through the period by the total projected hours calculated in the previous step. This yields the percentage of the projected hours that have been delivered through the period.
* Ruddr multiplies the services revenue budget by this percentage to determine the amount of services revenue that should be recognized through the end of the period.
* Ruddr then subtracts the sum of the previously recognized revenue from the total calculated in the previous step in order to determine the amount of revenue to recognize for the given period.
If the project has allocations, Ruddr will follow this same process to generate future forecasted revenue recognition. All revenue recognition entries will be shown in the **Revenue Recognition Ledger** and can be updated by any member that has permissions to edit the project.
#### Percentage of Time and Materials Revenue Method
**Requirements:**
* Each project member or project role must have a bill rate
* Detailed Budget with billable hours budgets set for each role or member
For more on these requirements, please refer to the [Project Bill Rates](/projects/project-bill-rates) and / or [Create a Project Budget](/projects/create-a-project-budget) Help Center articles.
The **Percentage of Time & Materials Revenue** automated revenue recognition method requires more information than the previous method. With this method, the project must use a detailed budget with the appropriate billable hours budget set for each role or member (depending on whether or not the project uses roles). Also, this method requires that each role or member have a bill rate. While bill rates do not impact the invoice amounts of a fixed fee project, they do impact revenue recognition under this method.
When Ruddr calculates revenue recognition based on the percentage of time and materials revenue, it performs the following steps:
* Ruddr first determines what the budget services revenue on the project would be if the project had used a Time & Materials billing type. Ruddr can calculate this T\&M services revenue budget by using the budgeted hours per role/member and the associated bill rate per role/member. If the project uses [rate cards](/projects/project-rate-cards#fixed-fee-projects), these bill rates come from the budget's rate card, so choosing a different budget rate card changes the revenue this method recognizes.
* Ruddr then determines what the T\&M services revenue for the project to date would be through the end of the given period.
* Ruddr calculates the total projected T\&M services revenue for the entire project. This is the greater of 1) the budget T\&M services revenue from the first step above; or 2) the past T\&M services revenue plus the future forecasted T\&M services revenue based on the project's resource allocations.
* Ruddr divides the T\&M services revenue to date by the total projected T\&M services revenue calculated in the previous step. This yields a percentage of the T\&M services revenue that has been delivered through the period.
* Ruddr multiplies the actual services revenue budget for the fixed fee project by this percentage to determine the total amount of services revenue that should be recognized through the end of the period.
* Ruddr then subtracts the sum of the previously recognized revenue from the total calculated in the previous step in order to determine the amount of revenue to recognize for the given period.
As with the [previous automated method](#01JBPNF7JT6JREE8WFCWTN2MPT), Ruddr will generate future forecasted revenue recognition entries based on the project's resource allocations. However, the percentage of time and materials revenue process will be followed in generating these future entries.
The **Percentage of Time & Materials Revenue** method is particularly useful for companies that have widely varying labor rates. For example, if a company has offshore labor at lower effective bill rates, Ruddr will recognize revenue more accurately using the percentage of time & materials revenue approach.
#### Percentage of Services Cost Method
**Requirements:**
* Project Services Revenue Budget
* [Target Services Gross Margin](/projects/create-a-project-budget#target-services-gross-margin)
Please refer to the [Create a Project Budget](/projects/create-a-project-budget) for more on these required budgets, including information on Summary and Detailed budgets.
The **Percentage of Services Cost** automated revenue recognition method requires that the project is configured with a services revenue budget and a target services gross margin. The services revenue budget can be provided via either a summary budget or one of the two detailed budget options.
Note that a project's Services Cost budget is derived from the provided Target Services Gross Margin on the [Financial Budget Summary](/projects/create-a-project-budget#financial-budget-summary) of that project.
When Ruddr calculates revenue recognition based on the percentage of services cost, it performs the following steps:
* Ruddr first determines the total services costs that have accumulated on the project to date through the end of the recognition period.
* Ruddr then calculates the total projected services cost to complete the project. This is the greater of 1) the project's budgeted services cost (as derived from the Target Services Gross Margin); or 2) the project's actual services cost plus future services cost (if the project is using allocations).
* Ruddr divides the total services cost through the period by the total projected services cost calculated in the previous step. This yields the percentage of the services cost hat have been delivered through the period.
* Ruddr multiplies the services revenue budget by this percentage to determine the amount of services revenue that should be recognized through the end of the period.
* Ruddr then subtracts the sum of the previously recognized revenue from the total calculated in the previous step in order to determine the amount of revenue to recognize for the given period.
**NOTE:** all project hours (both billable and non-billable) are considered in these calculations as they contribute to the total services cost of the project.
If the project has allocations, Ruddr will follow this same process to generate future forecasted revenue recognition. All revenue recognition entries will be shown in the **Revenue Recognition Ledger** and can be updated by any member that has permissions to edit the project.
#### Negative Revenue Recognition
With either of the automated revenue recognition methods, it is possible that Ruddr will create a negative revenue recognition entry for the given period. This would happen if Ruddr determines that too much revenue has previously been recognized through the period. There are a variety of reasons as to why that could happen, including scenarios where the services budget was decreased, the hours budget was increased, or the allocated hours were increased.
#### Past Revenue Recognition Entries will not be Updated
It is important to point out that Ruddr will only create or replace revenue recognition ledger entries for the current period and future periods as part of the automated revenue recognition methods. Ruddr will never modify or delete prior revenue recognition ledger entries. This is important as finance personnel typically do not want values of closed accounting periods to be changed.
### Completing a Fixed Fee Project
When a fixed fee project that uses manual revenue recognition or either of the automated methods is set to Completed, Ruddr will check to see if there is remaining budget services revenue to be recognized. If there is, Ruddr will ask the user if it should recognize that remaining revenue (Figure 5). If the user confirms, a row will be added to the revenue recognition ledger to recognize the remaining budget services revenue.
# Managing Multi-Step Approval Workflows
Source: https://help.ruddr.io/projects/managing-multi-step-approval-workflows
Configure multi-step time and expense approval workflows at the workspace or project level, adding, reordering, and assigning approvers to each step.
For an introduction to multi-step approval workflows, please view the [Multi-Step Approval Workflow Overview](/workspace-administration/multi-step-approval-workflow-overview) in the Workspace Administration section of Ruddr Help Center.
There are two places in Ruddr where multi-step approval workflows can be managed:
1. **Workspace settings**: here, you can set the default workflow for the entire workspace (Figure 1).
2. **Project Settings tab**: when editing [project details](/projects/create-a-new-project), you can modify the approval workflow for both time and expenses for that specific project. This is located in the Approval Options section (Figure 2) of the Overview on the project's [**Settings**](/projects/project-settings) tab.
In workspace settings, you will see a **Set Default Workflow** button (Figure 1). Conversely, on the project's Settings tab, you will see a **Edit Workflow** button (Figure 2). Note that for these buttons to be visible, the approval option in either location must be set to Manual.
Clicking either of these buttons will display an **Edit Workflow** screen (Figure 3) that displays the details of the workflow being edited.
Note that if you are editing the project workflow for the first time, you will be presented with the workspace's default approval workflow for time or expense.
Each step in the workflow can be assigned 1 to N number of approvers. And, those approvers can either be specific members (**Named Approvers**) or a default, position-based approver (**Position Approvers**) within Ruddr (Figure 4).
**NOTE**: When multiple approvers have been assigned to the same step, the approval of a time or expense item by any *one* of those approvers will advance the workflow to the next step.
To create additional steps, simply click **+ Add Step** (Figure 3) and supply an approver(s) for that step in the workflow. To remove a step from the workflow, click on the trash button on the right of the step's row (Figure 6). If you wish to change the order of execution for the steps, you can click the handle on a specific step (Figure 5) and drag the step to any place before/after any other step in the workflow (Figure 6).
Once the workflow has been setup according to your organizational or project requirements, click the **Update Workflow** button (Figure 3) to save the default workspace approval workflow.
In our example (Figure 7), when a time entry item or expense item is submitted with this workflow in place, the item would first be routed to the Project Admin for approval. Once the Project Admin approved the item, approval would be routed to the member Cameron Howe. Upon approval by that member, the Client Relationship Owner (as defined on the [Client](/clients/create-a-new-client) in Ruddr) would then have the item routed to them as the final step in the approval workflow.
# Other Items Ledger
Source: https://help.ruddr.io/projects/other-items-ledger
Bill miscellaneous one-time or recurring charges through the Other Items ledger and control when their revenue is recognized on Ruddr reports.
The **Other Items** ledger, found in the **Accounting** section (Figure 1) of the project's [**Settings**](/projects/project-settings) tab, allows you to schedule the invoicing of "other items" on billable projects. These "other items" are miscellaneous items that are not a perfect fit with one of the other billing ledgers in the Accounting section. To edit a project you must have access to the project and must have the **Edit Project** permission for that project based on your Ruddr [security role](workspace-administration/security-roles).
### Scheduling the Billing and Revenue Recognition of Other Items
The **Other Items** ledger in the **Accounting** section has two purposes. First, it allows for Other Items fees to be invoiced via the [**Ready to Bill**](/billing/ready-to-bill) screen as of the date of the line item in the ledger. Second, it enables revenue recognition for those fees on that same date.
There are two ways to add other items to the **Other Items** ledger:
* [Add a Single Other Item to the Other Items Ledger](/projects/other-items-ledger#add-a-single-other-item-to-the-other-items-ledger)
* [Add a Recurring Other Item to the Other Items Ledger](/projects/other-items-ledger#add-a-recurring-other-item-to-the-other-items-ledger)
#### Add a Single Other Item to the Other Items Ledger
To bill for an other item, simply click on the **+** button at the top-right of the **Other Items** ledger (Figure 2).
This will open the **Add Item** window (Figure 3) where you can supply the information about the other item being billed.
You can provide the following fields:
* **Date** - The date that you want the other item to be picked up on the [Ready to Bill](/billing/ready-to-bill) screen for invoicing. This is also the date that the revenue associated with the other item will be recognized on Ruddr reports and dashboards.
* **Invoice Item** - The Invoice Item that you want to use on the invoice for the other item. Your Workspace Admin can define as many Invoice Items as needed for your company.
* **Notes** - The description of the other item that will show on the invoice line item.
* **Amount** - The pre-tax amount you will charge the client for the other item.
If you are selling multiple units of the other item, you can click the **Include a quantity and rate for this item** checkbox. This will present the following additional fields:
* **Quantity** - The number of units of this other item that are being sold to the client.
* **Rate** - The pre-tax fee per unit.
Note that when the **Include a quantity and rate for this item** checkbox is checked, the **Amount** textbox will be disabled and automatically calculated.
Clicking the **Add** button on the **Add Item** window will close the form and add the other item to the **Other Items** ledger (Figure 4).
#### Add a Recurring Other Item to the Other Items Ledger
Some Ruddr customers need to charge clients for an other item in a monthly recurring manner. To set up recurring billing for an other item, click the **Add Multiple** button at the top of the **Other Items** ledger (Figure 2). This will open the **Add Multiple Other Items** window (Figure 5).
On this window, the fields are identical to the single **Add Item** window (Figure 3), with the exception of the following:
* **Starting Month** - The first month that you want this monthly recurring other item to be invoiced.
* **Ending Month** - The final month that you want this monthly recurring other item to be invoiced.
* **Scheduled on the X Day of Each Month** - The exact day of the month that you want this monthly recurring other item to be picked up on the Ready to Bill screen. This is also the date that the associated revenue will be recognized.
Once you have provided the information for the recurring other item billing, click the **Add** button at the bottom of the **Add Multiple Other Items** window (Figure 5). This will close the window and add the full other item billing schedule to the **Other Items** ledger (Figure 6).
The individual rows can be edited or deleted via the buttons on the right side of each row.
### Invoicing for Other Items
The [Ready to Bill](/billing/ready-to-bill) screen will automatically pick up all other item billing that is scheduled within the date range at the top of that screen. When a draft invoice is created for a project on the **Ready to Bill** screen, the other item line items within the date range will be added to the invoice.
When an other item in the ledger has been invoiced, it will no longer be editable and can't be removed from the **Other Items** ledger. The edit and delete icons on the ledger row will be disabled once that line item is associated with an invoice.
### Revenue Recognition for Other Items in the Other Items Ledger
Revenue associated with other items will be recognized as of the date in the Other Items ledger. Other Items do not have to be invoiced in order for the revenue to be recognized.
# Prepayments Ledger
Source: https://help.ruddr.io/projects/prepayments-ledger
A prepayment lets you invoice a client for services, expenses, products, or other items before they have been delivered. This is most often needed on a time and materials project, where there is otherwise no way to bill a client up front. A client may ask to prepay \$50,000 against future hours, or ask you to prebill a block of hours before the end of their fiscal year.
Prepayments show up on invoices in two ways. First, you invoice the client for the prepayment itself, which puts a positive line on the invoice. Later, as work is delivered, Ruddr automatically adds a negative line to new invoices that draws down the prepaid funds, so the client is not billed twice for the same work.
The **Prepayments** ledger is available on billable projects. To work with it you must have access to the project and the **Edit Project** permission for that project based on your Ruddr [security role](/workspace-administration/security-roles).
## The Prepayments Ledger
To open the ledger, go to the project and click the **Settings** tab, then select **Prepayments** under **Accounting** (Figure 1).
Each row in the ledger shows the following:
* **Bill Date** - The date the prepayment will be picked up on the [Ready to Bill](/billing/ready-to-bill) screen for invoicing.
* **Type** - The kind of revenue the prepaid funds can be applied to. The options are Services, Expenses, Products, and Other Items.
* **Invoice Item** - The invoice item used for the prepayment line on the invoice.
* **Description** - The text that will show on the invoice line item.
* **Amount** - The pre-tax amount being prepaid.
* **Available** - The portion of the prepayment that has not yet been used to offset fees on another invoice.
Beneath the rows, the **Total** is the sum of every prepayment on the project across all types, and **Available** is the total amount that is still unused.
### Add a Prepayment
Click the **+** button at the top right of the ledger to open the **Add Prepayment** drawer (Figure 2).
You can provide the following fields:
* **Bill Date** - The date the prepayment should appear on the Ready to Bill screen.
* **Type** - The revenue type the prepaid funds can be applied to. The type matters because it keeps prepaid funds where you intended them. A prepayment for services will never be used against billable expenses.
* **Invoice Item** - The invoice item to use on the invoice line. Your Workspace Admin can define as many invoice items as needed. Customers commonly create an invoice item such as "Prepaid Services" and map it, in the [QuickBooks Online](/integrations/quickbooks-online-integration-overview) or [Xero](/integrations/xero-integration-overview) integration settings, to a product or service that posts to a liability account like Unearned Revenue. The prepayment then lands on the balance sheet rather than the income statement.
* **Description** - The text that will show on the invoice line item.
* **Amount** - The pre-tax amount you are charging the client.
If you want the invoice line to look like a normal block of hours, click the **Include a quantity and rate for this prepayment** checkbox. This presents two more fields:
* **Quantity** - The number of units being prepaid, such as 100 hours.
* **Rate** - The pre-tax fee per unit.
When this checkbox is checked, the **Amount** field is disabled and calculated for you.
Clicking **Save & Close** adds the prepayment to the ledger.
Every prepayment of the same type on a project uses the same invoice item. Once you have created a Services prepayment with an invoice item of "Prepaid Services", the **Invoice Item** field will be locked to "Prepaid Services" on every later Services prepayment for that project. Choosing a type that has no prepayments yet leaves the field enabled so you can pick an invoice item for it.
If you want an invoice to show several prepaid lines, such as one per role and rate, create a separate prepayment for each. Every prepayment appears as its own line on the invoice.
### View a Prepayment That Has Been Invoiced
Once a prepayment is on an invoice, including a draft invoice, its fields can no longer be edited and it can't be deleted. An invoice icon appears at the right of the row, and the edit pencil is replaced by an eye.
Clicking the eye opens the **View Prepayment** drawer (Figure 3). The fields are read only, and an **Applied to Invoices** section at the bottom lists every invoice that has drawn down the prepayment, with the invoice number, issue date, and amount used. Both draft and published invoices are listed, and you can click an invoice number to open it.
## Invoicing a Prepayment
On the bill date, the prepayment appears on the [Ready to Bill](/billing/ready-to-bill) screen. **Total Prepayments** is shown in the summary bar alongside services, expenses, products, and other items (Figure 4).
Prepayments also have their own column in the Ready to Bill list (Figure 5). The column is a single total per project, so a \$5,000 services prepayment and a \$5,000 expenses prepayment on the same project show as \$10,000 here, even though they will be separate lines on the invoice.
Creating a draft invoice from Ready to Bill adds one line per prepayment (Figure 6). The line uses the invoice item from the ledger, though you can change it on the invoice like any other line. The icon in the link column at the right marks the line as a prepayment.
Nothing on the invoice your client receives identifies the line as a prepayment. It reads as a normal line item unless you say otherwise in the description or the invoice item name.
If you delete a prepayment line from a draft invoice, that prepayment returns to the Ready to Bill screen, the same as any other billable item.
The **Line Settings** drawer on a draft invoice has a **Prepayments** tab (Figure 7) with a single option, **Include the project name on each prepayment invoice line**.
## Offsetting Invoice Fees with a Prepayment
Once the invoice carrying a prepayment has been **published**, the prepaid funds become available to offset fees on future invoices. A prepayment on a draft invoice can't be used this way yet.
From then on, whenever an invoice is created for the project, Ruddr looks for available prepaid funds of the same type as the revenue on that invoice and adds a line at the bottom to offset those fees. The description reads "Services offset by prepayment", or the equivalent for expenses, products, or other items, and the amount is negative (Figure 8).
In Figure 8, the invoice includes \$4,000 of time and materials services and a \$1,000 additional service, both of which count as services revenue, plus an expense, a product, and an other item. Prepaid services funds were available, so Ruddr offset the full \$5,000 of services, leaving the \$3,000 of other charges for the client to pay.
The offset is the smaller of two numbers: the fees of that type on the invoice, and the prepaid funds still available for that type. If the invoice above had carried \$15,000 of services but only \$10,000 of prepaid funds remained, the offset line would be -\$10,000 and the client would owe the rest.
A few more rules govern how this works:
* An invoice can have at most one offset line per prepayment type per project, so a maximum of four for a single project.
* Ruddr always draws down the oldest prepayment first. A newer prepayment is not touched until every older one of that type is fully used.
* Several prepayments can fund a single offset line. The **Applied to Invoices** list on each prepayment shows how the amount was split.
* The offset line defaults to the same invoice item as the prepayments of that type, and you can change it if you want.
Funds committed to a draft invoice are no longer available for a new one. If you have a \$5,000 prepayment and create a draft invoice that consumes it, the full \$5,000 is used even though the invoice hasn't been published. This is the same behavior as fixed fee billing milestones.
You can edit the amount on an offset line, within limits. Raising it above the prepaid funds available for that type produces an error when you save. Lowering it releases the difference back to the prepayments so it can be used on a later invoice.
Deleting an invoice releases everything it was holding. The prepaid amounts return to their prepayments and become available again.
## Workspace Defaults for Prepayment Lines
Under **Settings**, on the **Invoices** screen, prepayments appear in the list of line types that can carry the project name (Figure 9). The setting controls whether new invoices include the project name on prepayment lines, and you can still override it per invoice from the Line Settings drawer.
## Prepayments and Revenue
A prepayment is not revenue. Invoicing one does not change invoiced revenue on your reports and dashboards, and it is not picked up by revenue recognition. The revenue is recognized when the work is actually delivered, and the prepaid funds simply reduce what the client owes on that later invoice.
To keep track of what a client has left to draw down, a **Prepaid Balance Remaining** column is included when you export the [Performance by Project](/reports/performance-reports) report to CSV or Excel. It isn't shown on the report on screen, and it matches the **Available** total at the bottom of the ledger.
# Products Ledger
Source: https://help.ruddr.io/projects/products-ledger
Schedule one-time or recurring product charges on the Products ledger so they flow to the Ready to Bill screen and recognize revenue on the right date.
The **Products** ledger, found in the **Accounting** section (Figure 1) of the project's [**Settings**](/projects/project-settings) tab, allows you to schedule the invoicing of products on billable projects. To edit a project you must have access to the project and must have the **Edit Project** permission for that project based on your Ruddr [security role](workspace-administration/security-roles).
### Scheduling the Billing and Revenue Recognition of Products
The **Products** ledger in the **Accounting** section has two purposes. First, it allows for the product fee to be invoiced via the [**Ready to Bill**](/billing/ready-to-bill) screen as of the date of the line item in the ledger. Second, it enables revenue recognition for the product on that same date.
There are two ways to add products to the **Products** ledger:
* [Add a Single Product to the Products Ledger](/projects/products-ledger#add-a-single-product-to-the-products-ledger)
* [Add a Recurring Product to the Products Ledger](/projects/products-ledger#add-a-recurring-product-to-the-products-ledger)
#### Add a Single Product to the Products Ledger
To bill for a product, simply click on the **+** button at the top-right of the **Products** ledger (Figure 2).
This will open the **Add Product** window (Figure 3) where you can supply the information about the product.
You can provide the following fields:
* **Date** - The date that you want the product to be picked up on the [Ready to Bill](/billing/ready-to-bill) screen for invoicing. This is also the date that the revenue associated with the product will be recognized on Ruddr reports and dashboards.
* **Invoice Item** - The Invoice Item that you want to use on the invoice for the product. Your Workspace Admin can define as many Invoice Items as needed for your company.
* **Notes** - The description of the product that will show on the invoice line item.
* **Amount** - The pre-tax amount you will charge the client for the product.
If you are selling multiple units of the product, you can click the **Include a quantity and rate for this item** checkbox. This will present the following additional fields:
* **Quantity** - The number of units of this product that are being sold to the client.
* **Rate** - The pre-tax fee per unit.
Note that when the **Include a quantity and rate for this item** checkbox is checked, the **Amount** textbox will be disabled and automatically calculated.
Clicking the **Save & Close** button on the **Add Product** window will close the form and add the product to the **Products** ledger (Figure 4).
#### Add a Recurring Product to the Products Ledger
Some Ruddr customers need to charge clients for a product in a monthly recurring manner. This could be related to a subscription fee/license, a hosting fee, or a similar recurring product charge. To set up recurring billing for a product, click the **Add Multiple** button at the top-right of the **Products** ledger (Figure 2). This will open the **Add Multiple Products** window (Figure 5).
On this window, the fields are identical to the single **Add Product** window (Figure 3), with the exception of the following:
* **Starting Month** - The first month that you want this monthly recurring product to be invoiced.
* **Ending Month** - The final month that you want this monthly recurring product to be invoiced.
* **Scheduled on the X Day of Each Month** - The exact day of the month that you want this monthly recurring product to be picked up on the Ready to Bill screen. This is also the date that the associated revenue will be recognized.
Once you have provided the information for the recurring product billing, click the **Add** button at the bottom of the **Add Multiple Products** window (Figure 5). This will close the window and add the full product billing schedule to the **Products** ledger (Figure 6).
The individual rows can be edited or deleted via the buttons on the right side of each row.
### Invoicing for Products
The [Ready to Bill](/billing/ready-to-bill) screen will automatically pick up all product billing that is scheduled within the date range at the top of that screen. When a draft invoice is created for a project on the **Ready to Bill** screen, the product line items within the date range will be added to the invoice.
When a product in the ledger has been invoiced, it will no longer be editable and can't be removed from the **Products** ledger. The edit and delete icons on the ledger row will be disabled once that line item is associated with an invoice.
### Revenue Recognition for Products in the Products Ledger
Revenue associated with products will be recognized as of the date in the Products ledger. Products do not have to be invoiced in order for the revenue to be recognized.
# Project Bill Rates
Source: https://help.ruddr.io/projects/project-bill-rates
How to assign bill rates to project roles or individual team members, and why rates are worth configuring even on Fixed Fee and Fixed Monthly projects.
Project Bill Rates can be assigned to project roles or directly to project team members (for projects that don't use roles). In order to edit a project and set bill rates, you must have access to the project and also have the **Edit project** permission set on your security role.
For projects with the Time & Materials billing type, bill rates are required in order to generate revenue as time is tracked. For projects with a billing type of Fixed Fee, Fixed Monthly, or Non-Billable, bill rates can be set but are not required, although there are [several advantages](#bill-rates-on-fixed-fee-projects) to configuring bill rates on Fixed Fee and Fixed Monthly projects.
### Rates by Project Role
If a project has been set up to use roles, the **Roles** section (Figure 1) of the project's [**Settings**](/projects/project-settings) tab is where bill rates get assigned to those roles. When a project uses roles, bill rates are never assigned directly to project team members. An advantage of using roles is that a single project team member can bill at different rates on the project by being assigned to different roles.
At the top of the list of roles, there is a filter that allows you to switch between active and inactive roles. By default, only active roles are shown. If a project has been in motion for a long time, it could have several inactive roles.
To set the bill rate for each role, simply click the edit icon on the right end of the row and type in the bill rate.
Note that non-billable roles will be shown on the **Roles** tab but you cannot set a bill rate for non-billable roles.
Visit the [Project Roles article](/projects/project-roles) in the Ruddr Help Center for more on how to leverage and manage roles.
### Rates by Project Team Member
If a project is not set up to use roles, project bill rates can be assigned to individual team members via the **Team** section (Figure 2) of the Settings tab. The rate for each project team member can be set by choosing the **Edit Bill Rate** option from the action menu at the right end of the row.
For any non-billable team members, you can simply uncheck the **Billable** checkbox for that row.
### Bill Rates on Fixed Fee Projects
While not required, bill rates can be configured on Fixed Fee and / or Fixed Monthly projects, in either of the ways illustrated above. There are several benefits to setting up bill rates on these projects:
#### Time and Materials Basis
Ruddr will keep up with, and report on, the **Time and Materials Basis** of Fixed Fee projects. The Time and Materials Basis is the accumulation of fees (hours \* bill rate) of any billable hours logged on the project, provided those billable hours have been logged by a member with a bill rate or the hours are associated with a project role with a bill rate. The Time and Materials Basis is presented on both the **Progress** view and the **By Month** view of the Services Revenue graph (Figure 3) on the project dashboard.
In addition to the Time and Materials Basis on the Services Revenue graph, you can find the calculated hours \* bill rate fees on the Hourly Revenue by Client and Project report that is found in the [Financial reports](/reports/accounting-reports) section of Ruddr.
#### Fixed Revenue Recognition and Fixed Fee Revenue Attribution
On Fixed Fee / Fixed Monthly projects, you have options with regards to how revenue is recognized. One of the [fixed fee revenue recognition methods](/projects/fixed-fee-revenue-recognition) is **Automated - Percentage of Time and Materials Revenue**. This recognition method requires that bill rates have been configured on Fixed Fee projects.
Additionally, you can choose from one of two [revenue attribution methods](/projects/fixed-fee-revenue-attribution) on Fixed Fee projects. One of these methods is **Percentage of Time and Materials Revenue**. This method also requires bill rates to be leveraged on Fixed Fee projects.
# Project Dashboard
Source: https://help.ruddr.io/projects/project-dashboard
Tour the project dashboard's tabs and KPIs, from progress graphs and team details to tasks, time, expenses, invoices, allocations, and files.
When you click on a project name from the [project list](/projects/project-list) screen, you will be taken to the project dashboard. At the top of the project dashboard, there is a header (Figure 1) that includes the project name, client name, and project status. This summary information will include some or all of the following, depending on the project setup and your [security role](/workspace-administration/security-roles) settings.
#### Changing Project Status from the Dashboard
If you have **Edit project** permissions, you can change the project's status from within the project header (Figure 1). This is done by hovering the mouse over the current status and selecting an alternate status from the dropdown (Figure 2) that appears.
NOTE: When changing the project's status to **Completed** on the dashboard, the project's **Completed Date** will be set to the current date.
To edit the project's information and configuration, use the [**Settings**](/projects/project-settings) tab of the project dashboard. The Settings tab will only be visible if you have the **Edit project** permission.
The project dashboard provides a comprehensive view of the project via several tabs of information:
* [**Overview**](#overview-tab)
* [**Team**](#team-tab)
* [**Tasks**](#tasks-tab)
* [**Time**](#time-tab)
* [**Expenses**](#expenses-tab)
* [**Invoices**](#invoices-tab)
* [**Client Approvals**](#client-approvals-tab)
* [**Allocations**](#allocations-tab)
* [**Files**](#files-tab)
* [**Settings**](/projects/project-settings)
Some of these tabs may not be shown depending on the project's settings and the user's assigned security role.
### Overview Tab
#### Project Progress
At the top of the Overview tab (Figure 3) of the project dashboard is the **Project Progress** line graph. This graph defaults to show the history of the worked hours on the project. If the project has resource allocations, then the graph will also show a planned view of hours. In this case, the graph will display the actual hours to date and the planned remaining hours, as allocated to the project. Budgeted hours will also display, giving the member visibility into how the projects hours are tracking against the budget.
**Actuals Through**
When the project progress graph is displaying forecasted metrics, you can specify when the "transition" from actuals to plan remaining occurs. By default, Ruddr shows actual data through today's date, and planned remaining from tomorrow through the end of the project. For workspaces that typically do not have time entered on a daily basis, you can now evaluate project performance by using actuals through the prior week or month and plan values after that date. The following values are available for the **Actuals Through** setting found just above the project progress graph (Figure 3):
* Today
* Yesterday
* Last Week
* Last Month
In addition to the **Progress** view, each graph has a corresponding **By Month** view (Figure 4) that will display a month-by-month rendering of the selected metric that is currently in view. This view is available by toggling the view selector just above the graph to **By** **Month**.
Below the Project Progress graph are the hours for the project broken down by total hours, billable hours, and non-billable hours. Non-billable projects will not show a billable hours total. If the project has budget hours defined, those will be shown for each category of hours, along with the number of total of forecasted hours (actuals + plan left) and plan left (allocated).
**Additional Project Progress Metrics**
Additionally, the graph can be switched to show additional metrics when the project is billable and if the member's security role has specific project-level permissions for the project. By selecting the metric from the **Metric** dropdown (Figure 5) above the graph, the member can see actuals-to-date and projections, based on future resource allocations, for Labor Cost, Total Cost, Services Gross Profit, Total Gross Profit, Services Gross Margin, and Total Gross Margin.
NOTE: a [Target Services Gross Margin](/projects/create-a-project-budget#target-services-gross-margin) must be specified on the [Project Budget](/projects/create-a-project-budget) in order to view these metrics on the project progress graph.
#### Project Details
On the right side of the overview tab, is an information bar (Figure 6) that will contain the primary information about the project and client. The project information shown in this bar can be edited from the [**Settings**](/projects/project-settings) tab.
#### Key Performance Indicators
At the bottom of the Overview tab (Figure 7), there are some high-level key performance indicators (KPIs) related to the project performance. Depending on the project configuration and your permissions, some of these KPIs may not be displayed. At the top-right of this KPI area, you can select the timeframe for evaluation.
The following KPIs are included on the Project Overview tab:
* **Realization Rate** - The realization rate is the percentage of all hours worked on the project that are billable. For billable projects, this figure is ideally close to 100% throughout the project. The realization rate KPI is only visible if you have project-level **View time and expense** permissions. If you have a budget created for the project, the budget realization rate will be shown below the actual rate.
* **Effective Rate** - The effective bill rate is the sum of all earned revenue on the project divided by the hours (billable and non-billable) worked. The effective rate KPI is only visible if you have project-level **View bill rates** permissions. To learn more about earned revenue, see the [earned versus invoiced revenue](/projects/earned-vs-invoiced-revenue) article. If you have a budget created for the project, the budget effective bill rate will be shown below the actual rate.
* **Margin** - The projects earned and invoiced margin. The project's earned margin is the services gross profit of the project divided by the earned revenue. The project's invoiced margin is the invoiced gross profit of the project divided by the invoiced revenue. The margin KPI is only visible if you have project-level **View profit** permissions for the project. Note that Ruddr can only calculate services cost on a project if each team member assigned to the project has a labor cost set on their [member profile](/workspace-administration/member-profile).
* **Hours** - The project's budgeted billable and non-billable hours compared to the actual billable and non-billable hours.
* **Expenses** - The project's budgeted billable and non-billable expenses compared to the actual billable and non-billable expenses.
* **Revenue** - The project's budgeted, earned, and invoiced revenue. The revenue KPI is only visible if you have project-level **View revenue** permissions for the project.
### Team Tab
The Team tab (Figure 8) of the project dashboard shows all of the project team members. By default, this list shows active team members. Active team members can access the project and record time and expenses to the project. To see any inactive team members (who likely worked on the project previously), simply change the filter at the top of the member list to **Inactive**. Inactive members show with a semi-transparent display.
If you have project-level **View time and expense** permission, at the bottom of each team member's card, you will see the total hours worked on the project for that member.
For detailed information about managing project team members, see the [Project Team](/projects/project-team) help article.
### Tasks Tab
The Tasks tab (Figure 9) of the project dashboard shows a list of the project tasks. Projects in Ruddr can optionally be broken down into individual tasks. Those tasks can be used to aggregate a budget for the project and can also be used for more granular time tracking.
You can create grouping for tasks, creating a parent/child relationship and opting for task budget rollups. For more information, visit the [Project Tasks](/projects/project-tasks) page.
Recognized revenue is attributed to project tasks according to the [Fixed Fee Revenue Attribution](/projects/fixed-fee-revenue-attribution) method set on the project.
To create a new task, simply click on the **Create a Task** button at the top-right of the tasks tab. This will open the task window (Figure 10) where you can provide the new task information. Once the basic information has been added and you select "save" a large drawer will open for you to finish setting up the task. To edit an existing task, simply click on the task in the list. In order to create or edit a project task, you must have the **Edit project** permission set on your security role.
For detailed information about tasks, see the [Project Tasks](/projects/project-tasks) help article.
### Time Tab
The Time tab (Figure 11) allows you to see a summary of the project's time entries. If the project uses roles, you can set the **View** selector to either "Time by Role" or "Time by Member".
This tab will show a summary of all time entries to date on the project. If there is an hours budget, the progress toward that budget will be reflected via the meter in the Hours column. For billable projects, additional columns may be shown related to realization rate, revenue, and effective bill rate. Members will only see columns that they have permission to view. There is also a way for members with time and expense administrative permissions on the project to [enter time for project team members](#entering-time-for-project-team-members).
#### Entering Time for Project Team Members
Any member that has Administer Time and Expense permissions in their security role may have an option to track time for project team members available on the Time tab of the project dashboard **when the view is grouped by members**.
For those members that have permissions to administer time for the project, a **Track Time** menu item (Figure 12) will be present for each member listed when the view is grouped by member.
For those members that have permissions to administer time for certain members in the workspace, a **Track Time** menu option (Figure 12) will be present for each / every member on the project team for which they have those permissions.
Selecting the **Track Time** option from the action menu will open the New Time Entry drawer with the member and project pre-selected.
### Expenses Tab
The Expenses tab (Figure 12) works similarly to the Time tab. The Expenses tab allows you to see all expenses recorded to the project grouped by the expense category.
### Invoices Tab
The Invoices tab (Figure 13) allows you to see invoices associated with the project. In order to see published invoices, you must have the **View published invoices** permission set on your member profile. To see draft invoices, you must have the **Create and edit draft invoices** permission.
To view any invoice in detail (Figure 14), simply click on the invoice in the list to view the invoice.
### Client Approvals Tab
If client approvals are enabled in the **Approval Options** of the project's [**Settings**](/projects/project-settings) tab, then the Client Approvals tab (Figure 15) will be shown. Client approvals are used to send a batch of time and expenses to a client for approval on a periodic basis. These approvals are often done before an invoice is created for the time and expenses. For detailed information about client approvals, see the [Client Approvals](/projects/client-approvals) help article.
### Allocations Tab
The Allocations tab (Figure 16) displays a list of all [resource allocations](/resourcing/overview-of-resourcing) for the project. Use the date picker to view allocations for a given time period, and use the Month/Week/Day view picker to toggle between those views of allocations. Finally, project allocations can be exported in Excel or CSV format from this tab.
Both confirmed and soft bookings are included on this tab and in the project's planning metrics; soft bookings are shown faded so you can distinguish them from confirmed allocations. For more, see [Confirmed and Soft Bookings](/resourcing/confirmed-and-soft-bookings).
For more on Resourcing in Ruddr, please refer to this [article in the Ruddr Help Center](/resourcing/overview-of-resourcing).
### Files Tab
The Files tab is available to those workspaces that have turned on the Client and Project Files [feature](/workspace-administration/features) in workspace settings. On the Files tab (Figure 17), a member can upload files to the project record in Ruddr and, subsequently, access those files. (Note that there is a 20MB file upload limit). There are two types of files that can added to the project:
1. **Administrator Files**: These files are only accessible (and able to be uploaded) by members that can edit the project.
2. **Team Files**: These files can be accessed by any workspace member with access to the project. Only members that can edit the project can add Project Team files.
To upload files, project administrators will need click on the **Add Files** button on the top right of the Files tab (Figure 17). This will open the Files drawer (Figure 18), where files can be dropped onto the drawer, or members can click on the screen to select one or more files for upload.
Once a file(s) has been added to the screen, a member with the appropriate access can open the file for viewing, download a copy of the file, or delete the file. This can be accomplished by hovering the mouse over the file (Figure 19) and selecting the appropriate option from the list of buttons made available.
**List View**
An additional view is available on the Files tab of the project dashboard and is the List view (Figure 21). You can toggle between the Grid view (Figure 17) and the List view by clicking the view button (Figure 20) at the top of the Files tab.
From the List view, you can search for files by Filename using the search box just above the list of files. To view, download, or delete an individual file, access the action menu (Figure 22) on the respective file's row.
# Project Expenses Ledger
Source: https://help.ruddr.io/projects/project-expenses-ledger
Schedule billable or non-billable project expenses on the Accounting tab, with optional markup, recurring entries, and invoicing through Ready to Bill.
The **Project Expenses** ledger, found in the **Accounting** section (Figure 1) of the project's [**Settings**](/projects/project-settings) tab, allows you to schedule billable and non-billable project expenses. Project expenses are expenses that are not included on a team member's expense report but that likely came into the accounts payable team within the company. For a project expense to be configured as billable, the project itself must be billable.
To edit a project you must have access to the project and must have the **Edit Project** permission for that project based on your Ruddr [security role](workspace-administration/security-roles).
### Scheduling the Billing and Revenue Recognition of Project Expenses
The **Project Expenses** ledger in the **Accounting** section has two purposes. First, it allows for a project expense to be incurred and then optionally invoiced via the [**Ready to Bill**](/billing/ready-to-bill) screen as of the date of the line item in the ledger. Second, it enables revenue recognition for the billable project expense on that same date. Non-billable expenses will only have cost recognition.
There are two ways to add expenses to the **Project Expenses** ledger:
* [Add a Single Expense to the Project Expenses Ledger](/projects/project-expenses-ledger#add-a-single-expense-to-the-project-expenses-ledger)
* [Add a Recurring Expense to the Project Expenses Ledger](/projects/project-expenses-ledger#add-a-recurring-expense-to-the-project-expenses-ledger)
#### Add a Single Expense to the Project Expenses Ledger
To bill for a project expense, simply click on the **+** button at the top-right of the **Project Expenses** ledger (Figure 2).
This will open the **Add Project Expense** window (Figure 3) where you can supply the information about the expense.
You can provide the following fields:
* **Date** - The date that you want the project expense to be incurred. For billable expenses, this is also the date that the expense will be picked up on the [Ready to Bill](/billing/ready-to-bill) screen for invoicing.
* **Expense Category** - The expense category that is suitable for this type of expense. Note that Workspace Admins can create as many expense categories as needed within the **Custom Data** section of [Workspace Settings](/workspace-administration/custom-data).
* **Vendor** - The vendor that was paid for this project expense.
* **Amount** - The amount of this project expense.
* **Bill to client** - A checkbox that denotes whether the client should be invoiced for this project expense.
* **Markup Expense** - A checkbox that denotes whether the project expense should be marked up for invoicing. Note that this checkbox is only available if the Expense Markup [feature](/workspace-administration/features) is enabled.
* **Notes** - The description of the project expense that will show on the invoice line item.
If you choose to markup the expense by clicking the **Markup Expense** checkbox, you can mark up the expense by either a percentage or a fixed amount (Figure 4). When a billable expense is marked up, the expense revenue will be higher than the expense cost by the amount of the markup.
Clicking the **Add** button on the **Add Project Expense** window will close the form and add the expense to the **Project Expenses** ledger (Figure 5). Note that when a billable project expense has been marked up, the dollar sign icon in the green circle will be replaced with an up arrow icon. Hovering your mouse over this icon will show the marked up amount of the expense.
#### Add a Recurring Expense to the Project Expenses Ledger
Some Ruddr customers need to incur expenses, and possibly invoice clients for them, in a monthly recurring manner. To set up a recurring schedule of expenses, click the **Add Multiple** button at the top-right of the **Project Expenses** ledger (Figure 2). This will open the **Add Multiple Project Expenses** window (Figure 6).
On this window, the fields are identical to the single **Add Project Expense** window (Figure 3), with the exception of the following:
* **Starting Month** - The first month that you want this monthly recurring project expense to be incurred and optionally invoiced (if the **Bill to client** checkbox is checked).
* **Ending Month** - The final month that you want this monthly recurring project expense to be incurred and optionally invoiced (if the **Bill to client** checkbox is checked).
* **Scheduled on the X Day of Each Month** - The exact day of the month that you want this monthly recurring project expense to be incurred and optionally picked up on the Ready to Bill screen (if the **Bill to client** checkbox is checked). This is also the date that the associated cost and revenue will be recognized.
Once you have provided the information for the recurring project expense, click the **Add** button at the bottom of the **Add Multiple Project Expenses** window (Figure 6). This will close the window and add the full project expense schedule to the **Project Expenses** ledger (Figure 7).
The individual rows can be edited or deleted via the buttons on the right side of each row.
### Invoicing for Project Expenses
The [Ready to Bill](/billing/ready-to-bill) screen will automatically pick up all project expense billing that is scheduled within the date range at the top of that screen. When a draft invoice is created for a project on the **Ready to Bill** screen, the project expense line items within the date range will be added to the invoice.
When a project expense in the ledger has been invoiced, it will no longer be editable and can't be removed from the **Project Expenses** ledger. The edit and delete icons on the ledger row will be disabled once that line item is associated with an invoice.
### Revenue Recognition for Expenses in the Project Expenses Ledger
Revenue associated with expenses will be recognized as of the date in the Project Expenses ledger. Project Expenses do not have to be invoiced in order for the revenue to be recognized.
# Project Health Reporting
Source: https://help.ruddr.io/projects/project-health-reporting
Create project health reports that rate budget, schedule, client satisfaction, and team satisfaction with color-coded scores shown throughout Ruddr.
In addition to tracking objective metrics, project teams often have a need to provide and report on more subjective measures related to project performance. Ruddr's Project Health Reporting [feature](/workspace-administration/features) provides a mechanism for entering and communicating such information.
Members that have **Edit project** permissions in their security role have the ability to view, create, and edit project health reports for a project.
When the Project Health Report feature is enabled in the workspace, a **Health** tab (Figure 1) will be added to the Project Dashboard for each project in the workspace.
Individual reports are displayed on the Health tab (Figure 1), with the date of the report and the following values displayed:
* Project Health Report Date
* Budget Health Rating
* Schedule Health Rating
* Client Satisfaction Rating
* Team Satisfaction Rating
* Report Last Updated By
The Budget Health, Schedule Health, Client Satisfaction, and Team Satisfaction columns are represented by color-coded icons that indicate the rating of the metric:
* **Green** - indicates an assigned value of **Excellent**
* **Yellow** - indicates an assigned value of **Fair**
* **Red** - indicates an assigned value of **Poor**
Each of these ratings correspond to a numeric score of 3, 2, and 1, respectively. In producing a total Project Health Score, Ruddr sums the total scores across all four metrics, with a maximum possible Project Health Score of 12.
This Project Health Score is used to illustrate (Figure 2) the overall project health of a project throughout Ruddr.
Note that project health report ratings are also visible to members with adequate permissions on the [Project List](/projects/project-list) screen.
Clicking on a report will open the **Edit Project Health Report** drawer (Figure 3), which will display the details of the report.
### Create a Project Health Report
To create a project health report, click on the **Create a Project Health Report** button on the Health tab (Figure 1). This will open the **New Project Health Report** drawer (Figure 4).
Within the drawer, you can specify the report Date and can then specify the health level of the four metrics as described above. Additionally, you can provide written commentary for each metric. In addition to the metrics, you can provide a **General Commentary** to enter comments that may / may not relate to the four metrics.
Once you have provided the details of the report, click the **Save & Close** button to save the report and return the **Health** tab (Figure 1).
When a Project Health Report is created, Ruddr will "stamp" the project's current metrics onto the project health report (Figure 5). This will provide historical context to prior project health reports and insight into the state of the project's objective measurements in comparison to the subjective ratings and commentary provided in the health report.
### Manage a Project Health Report
#### Edit a Project Health Report
Those members with Edit project permissions to the current project can edit project health reports by either clicking on the pencil icon on the report row, or by selecting the **Edit** menu item (Figure 6) from the action menu on the row in the **Health** tab (Figure 1). This will open the Edit Project Health Report drawer (Figure 3), allowing the member to update details of the report.
#### Delete a Project Health Report
Members with **Edit project** permissions to the project can delete a project health report by selecting **Delete** from the report row's action menu (Figure 6). The user will then be prompted to confirm the deletion of the project health report. Clicking the **Delete** button will delete the report.
#### Clone a Project Health Report
Members with **Edit project** permissions to the project can clone a project health report by select **Clone** from the report row's action menu (Figure 6). The user will then be prompted (Figure 8) to specify a report date for the new project health report.
When a project health report is cloned, the new report is an exact replica of the original report. Ratings and commentary will be copied.
# Project List
Source: https://help.ruddr.io/projects/project-list
Filter and manage every project in your workspace from the project list, where you can edit, clone, archive, delete, or track time to any project.
To view all of the projects in your workspace, click on **Portfolio** in the nav bar (Figure 1), or select the sub-menu item **Projects**.
This will bring up the project list screen (Figure 2). Depending on the [security role](/workspace-administration/security-roles) assigned to your member profile, you may see only projects where you are on the project team or only those projects that are assigned to your practice.
If you have the **Create project** permission, you will see an enabled **New Project** button (**+**) at the top-right of the screen. For more on creating projects in Ruddr, see the [Create a New Project](/projects/create-a-new-project) article.
The list of projects can be downloaded by clicking the download button to the left of the **New Project** (**+**) button at the top-right of the list.
From the project list screen, you have the following filters at the top of the list to help you narrow down the results:
* **Project Name, Client Name or PO#** - Type in a partial or full project or client name, or a PO Number.
* **Client** - Select a specific client to see just that client's projects.
* **Project Billing Type** - Select the billing type of the project, such as:
* Time & Materials
* Fixed Fee
* Fixed Monthly
* Non-Billable
* **Project Status** - Select the status of the project, such as:
* Not Started
* In Progress
* Paused
* Completed
* **Project Archived** - Select active projects or archived projects.
* **Project Tags** - Any custom project tags that you are using to categorize projects. Your workspace administrator can create a library of project tags.
* **Project Practice** - The practice that is assigned as the owner of the project. Practices are optional in Ruddr.
* **Project Admin** - Specify a Project Admin to list that the projects for which that member is the Project Admin.
When a project has had its **Lock time and expenses** setting applied, a lock indicator (Figure 3) will appear next to the project name in the list. For more on this setting, please refer to the Create a New Project article in the Ruddr Help Center.
For workspaces that have the Project Health Reporting feature enabled, an overall project health score (Figure 4) will be visible to those with **Edit project** permissions on their [security role](/workspace-administration/security-roles).
The health score shown on the project list is based on the ratings from the project's latest health report:
* Budget
* Schedule
* Client Satisfaction
* Team Satisfaction
The individual, color-coded ratings can be viewed on the [project dashboard](/projects/project-dashboard) and indicate the "health level" of each metric:
* **Green** - indicates an assigned value of **Excellent**
* **Yellow** - indicates an assigned value of **Fair**
* **Red** - indicates an assigned value of **Poor**
To view the [project dashboard](/projects/project-dashboard) for a particular project, simply click on the project name in the list. The project dashboard provides a comprehensive view of the project and its performance.
At the right end of each project row (Figure 5), you are provided with a menu of actions. These actions are **View**, [**Edit**](#edit-a-project), [**View Time Detail**](#view-time-detail)**,** [**Clone**](#clone-a-project), [**Archive**](#archive-a-project), [**Track Time**](#track-time-to-a-project), and [**Delete**](#delete-a-project). Depending on your permissions, some of these options may be disabled.
### Edit a Project
To edit a project, you must have **Edit project** permissions. Simply click on the **Edit** menu option (Figure 5) on the row that you want to edit. This will take you to the project's [**Settings**](/projects/project-settings) tab, where you can edit the project's information and configuration.
### View Time Detail
From the Projects list, you can navigate directly to the Time Detail report, which will automatically have the Project filter applied for the project for which you wish to view time details. Click on the **View Time Detail** menu option (Figure 5) to access the report.
### Clone a Project
Cloning a project allows you to create an entirely new project based on a similar, existing project. This can save a lot of time in project setup. To clone a project, you must have the **Create project** permission. Simply click on the **Clone** menu option (Figure 5) on the row that you want to clone. This will bring up a window (Figure 6) that will allow you to give the new project a name and select the items that you would like to copy into the new project.
If a cloned project will be for a different client, you can change its client from the **Overview** section of the project's [**Settings**](/projects/project-settings) tab.
When creating a cloned project, you will have the opportunity to provide a Start Date for the project. If you choose to do so, and are cloning project tasks, allocations, or accounting items, you can also choose to "shift" those items out, relative to the new start date you provide on the cloning window.
The member that is creating the new project via cloning will be set as the Project Admin on the new project.
**Tip**: If you have a project setup that will need to be cloned on a regular basis, set up a "template" project that serves as the master template for that project setup. You can then clone from that template whenever you need to create a new project with the same setup.
### Archive a Project
To archive a project, you must have the **Delete or archive project** permission. Simply click on the **Archive** menu option on the row that you want to archive. This will bring up a confirmation window (Figure 7). When you archive a project you will not delete any of the project information and will be able to continue reporting on the project.
For more about archiving a project, see the [Archive or Delete a Project](/projects/archive-or-delete-a-project) article.
### Track Time to a Project
For members that are part of the project team, they can opt to Track Time to a project directly from the Project list. To do this, members can simply click on the **Track Time** menu option (Figure 5) on that project's row. This will open up the New Time Entry drawer (Figure 8), with the project pre-selected for time entry.
### Delete a Project
To delete a project, you must have the **Delete or archive project** permission. Simply click on the **Delete** menu option (Figure 5) on the row that you want to delete. This will bring up a confirmation window (Figure 9).
Deleting a project is not recommended if the project has time or expenses associated with it. For a project with time or expenses, you will have to manually confirm the delete action by typing the word "DELETE" into the confirmation window.
**Once you delete a project, you cannot reverse this action, and all associated data (including time entries, expense items, invoices, and payments) will be gone forever!**
Note that if the project has one or more associated invoices, the **Delete** menu option will be disabled. For more about deleting a project, see the [Archive or Delete a Project](/projects/archive-or-delete-a-project) article.
# Project Rate Cards
Source: https://help.ruddr.io/projects/project-rate-cards
How to change a project's bill rates and labor cost rates over time with dated rate cards, so time is always valued at the rates in effect on the day it was worked.
Rates often change during a long engagement. A contract may call for an annual increase, or a new statement of work may bring new pricing. Project Rate Cards let a project's rates change on a specific date without restating the time that was tracked before it.
A rate card starts on a date and holds the project's role bill rates, member bill rates, and member labor cost overrides from that date until the next rate card begins. Each time entry is valued at the rates on the rate card that covers its date, so time worked in March keeps March's rates after the rates go up in July.
Rate cards hold rates only. Whether a member or role is billable is still set on the member or role, and applies across all of the project's rate cards.
### Turning On Project Rate Cards
Project Rate Cards is available to Ruddr customers subscribed to our Pro Plan. A Workspace Admin can turn it on or off in the [**Features**](/workspace-administration/features) section of Workspace Settings, where it's listed as **Project Rate Cards**. The feature is on by default for new workspaces and off by default for workspaces created before it was released.
With the feature on, you turn rate cards on for each project that needs them by checking **Use rate cards** in the **Settings** section of the project's [**Settings**](/projects/project-settings) tab. Every project starts with this setting off, including new projects.
Behind the scenes, every project has a single rate card that covers its whole life, holding the rates you've already set. As long as a project has only one rate card, it works exactly as it did before: you set its rates in the **Team** and **Roles** sections of the project's **Settings** tab, as described in [Project Bill Rates](/projects/project-bill-rates). **Use rate cards** can't be turned off while the project has more than one rate card; delete the other rate cards first. Turning the workspace feature off keeps any rate cards you've already created, and time continues to be valued at their rates.
### The Rate Cards List
When a billable project uses rate cards, it has a **Rate Cards** section in the project's **Settings** tab (Figure 1). To see it, your [security role](/workspace-administration/security-roles) needs the **Edit** and **View bill rates** permissions on the project; to add or change rate cards, it must also be able to edit the project's [**Financial**](/workspace-administration/edit-project-permissions#financial) information. A non-billable project that uses rate cards also has the section, showing cost rates only, to members who can view the project's margin.
Rate cards are listed in date order, with a number in the **#** column, the date each one **Starts On** and **Ends On**, and its **Notes**. Rate cards are numbered by start date, so the numbers change when a rate card is added, moved, or deleted. The rate card drawer, the budget **Rate Card** selector, and the rate card tables in the **Team** and **Roles** sections show the same number. Together, the rate cards cover every date on the project without gaps or overlaps: the first rate card starts at **Project start** and covers everything before the next rate card begins, including time dated before the project's start, and the last one is **Ongoing**. Two tags help you find your way:
* **Current** marks the rate card that covers today's date.
* **Budget** marks the rate card that prices the project's budget (see [Budgets](#budgets) below).
### Create, Edit, or View a Rate Card
To add a rate card, click the **+** button at the top right of the list. To change one, click its row or choose **Edit** from the menu at the right end of the row. Either way, the rate card drawer opens on its **Details** tab (Figure 2).
The **Details** tab has the following fields:
* **Starts On** - The date the rate card takes effect. The first rate card always starts at **Project start**, so its start date can't be changed.
* **Ends On** - The day before the next rate card starts, or **Ongoing** for the last rate card. It's set for you and updates as you change **Starts On**.
* **Notes** - An optional note, such as the contract clause behind a rate change. The notes also appear in the Rate Cards list.
The rates are on the next tabs (Figures 3 and 4):
* **Bill Rates** - The **Bill Rate** of each project role on projects that use [roles](/projects/project-roles), or of each project team member on projects that don't. Non-billable projects don't have this tab.
* **Cost Rates** - If you can view the project's margin, whether to override each team member's labor cost on this project (**Override Cost**), and if so, the **Currency**, **Cost/Hour**, and **Overhead/Hour** to use. **Total/Hour** shows their sum. The cost currency belongs to the rate card, so a member's cost can be in a different currency on each rate card.
Only Workspace Admins can change cost overrides. Each rate tab shows active roles or members by default; use the **Status** filter to show inactive ones. A clock icon beside a role or member means time has been tracked in the rate card's period.
A new rate card starts from the rates and cost currencies in effect on its start date, so you only need to change the rates that are different. Click **Save & Close** to save the rate card.
If you can see the section but can't edit the project's financial information, clicking a rate card opens it read-only, so you can review its dates, notes, and rates without changing them.
#### Update Tracked Time
If a change affects time that has already been tracked, such as editing the rates on a rate card that covers existing time entries, moving a rate card's start date across existing time entries, or adding a rate card with different rates that starts before the last time entry, Ruddr asks you to confirm first (Figure 5). Clicking **Save** updates the bill rate and/or labor cost rate on those time entries to match the rate card. Clicking **Cancel** returns you to the form without saving.
The same confirmation appears when you change a rate from the **Team** or **Roles** sections, described below.
#### Delete a Rate Card
To delete a rate card, choose **Delete** from the menu at the right end of its row. The rate card before it is extended through the deleted rate card's period, and time and allocations in that period are valued at that rate card's rates. The first rate card, and the rate card used by the project budget, can't be deleted.
### Editing Rates from the Team and Roles Sections
You can still set rates from the **Team** and **Roles** sections of the project's **Settings** tab. When a project has more than one rate card, these forms list every rate card so you can set the rate on each one:
* The **Edit Bill Rate** and **Edit Cost Rate** options in the **Team** section show the member's bill rate and cost override, including its currency, for each rate card.
* The **Edit Project Role** drawer in the **Roles** section shows the role's bill rate for each rate card.
When a project has a single rate card, these forms show a single rate, just as they always have.
### Budgets
A project budget is priced with the rates from one rate card. When a billable project has more than one rate card, and you can view the project's rates, a **Detailed budget** or **Detailed budget aggregated from tasks** includes a **Rate Card** selector in its **Hours and Services Revenue** section, or its **Hours** section on projects that aren't time and materials (Figure 6). Each option shows the rate card's number and the dates it covers. Choose the rate card whose rates should price the budget. Hover over the **?** beside the selector to see the rate card's notes, and the selected rate card is tagged **Budget** in the Rate Cards list. A **Detailed** monthly budget has the same **Rate Card** selector. The overall and monthly budgets share one budget rate card, so changing it in either drawer changes it for both.
For more on budgets, see [Create a Project Budget](/projects/create-a-project-budget).
#### Fixed Fee Projects
Fixed Fee and Fixed Monthly projects generally don't need rate cards, since their bill rates don't set the invoice amounts. However, if rate cards are turned on for one of these projects, the budget rate card prices the budget's time and materials services revenue. That is the total the [**Automated - Percentage of Time & Materials Revenue**](/projects/fixed-fee-revenue-recognition#percentage-of-time-and-materials-revenue-method) revenue recognition method measures progress against, so choosing a different budget rate card changes the revenue it recognizes.
### Reports
Because a role or member can bill at more than one rate over the life of a project, the [Project Roles](/reports/workspace-reports#project-roles) report and the [Hourly Revenue by Client and Project](/reports/accounting-reports#hourly-revenue-by-client-and-project) report show an **Effective Rate** column instead of a single bill rate. The effective rate is the revenue divided by all hours worked in the period, billable and non-billable.
### Importing Rate Cards
You can bring in a project's rate history with the **Project Rate Cards** import type in [CSV Import](/workspace-administration/csv-import). This import requires the Project Rate Cards feature to be on in your workspace; otherwise every row is skipped. Each row sets one rate and has the following columns:
* **Client Name** and **Project Name** (required) - The project the rate belongs to. These must match an existing client and project exactly.
* **Start Date** (optional) - The date the rate card takes effect. If the project doesn't already have a rate card starting on that date, one is created, starting from the rates in effect that day. Leave it blank to update the project's first rate card, which works whether or not the project uses rate cards. A row that creates a rate card is skipped unless **Use rate cards** is checked on the project.
* **Member Email** or **Role Name** - The project team member or project role the rate is for. Provide one or the other on each row, not both.
* **Rate** (required) - The bill rate for the member or role on that rate card.
* **Notes** (optional) - Notes for the rate card. Leave it blank to keep the existing notes.
Import the projects, members, and roles before importing their rates. To add rate cards to a project, first check **Use rate cards** in its project settings, or set the **Use Rate Cards** column to "Yes" when importing it with the **Projects** import type. That column is ignored when the Project Rate Cards feature is off, and a blank value leaves rate cards off for the new project. Importing the same file again is safe: it updates the same rate cards rather than creating duplicates. Other imports that set a single bill rate on a project member or role continue to work, and write that rate onto every rate card on the project.
### Project History
Creating, editing, and deleting rate cards is recorded in the project's history, so you can see who changed a rate and when.
# Project Roles
Source: https://help.ruddr.io/projects/project-roles
Define project roles with their own bill rates, add them from the client or workspace, and assign team members so one person can bill at multiple rates.
Professional services engagements often require a wide range of skills. Ruddr allows you to define these various skills in the form of project roles. Roles are optional, but it is a best practice to leverage them. Often these roles and corresponding bill rates are defined in the proposal and legal contract with the client. For smaller engagements or teams, project roles may be unnecessary.
The **Roles** section (Figure 1) of the project's [**Settings**](/projects/project-settings) tab allows you to manage project roles and assign project team members to those roles. In order to edit a project, you must have access to the project and also have the **Edit project** permission set on your [security role](/workspace-administration/security-roles). Each role row shows the role's assigned members as a stack of avatars, along with the role's practice, location, discipline, and bill rate. Inactive members appear dimmed within the stack. Hovering over a member's avatar reveals a small remove button you can use to unassign that member from the role without opening it.
One advantage of using roles is that they allow a single team member to bill at different [bill rates](/projects/project-bill-rates) on the same project. This is possible because each role has its own bill rate and team members can be assigned to multiple roles. When roles are not used, each team member can be assigned only a single bill rate for the project.
There are two ways to add project roles to the project:
1. Add roles from the client
2. Create roles for the project
### Add Roles from the Client or the Workspace
Ruddr provides workspace admins with the ability to define workspace-level Project Roles and Rates within the [Custom Data](/workspace-administration/custom-data) section of [Workspace Settings](/workspace-administration/managing-your-workspace). Once these roles are established, they are available to be used on clients and project throughout the workspace. In addition to inheriting project roles from the workspace, new roles can be added to clients to establish a client "rate card". For more on these roles, please refer to the [Client Roles](/clients/client-roles) article in the Ruddr Help Center.
If roles have indeed been established for the client, those roles can be added to projects. In the **Roles** section (Figure 1), click the **+** button at the top-right of the roles list. The menu offers **Add Client Roles**, which will present a list of available client project roles (Figure 2). You can search the list to find the roles you need. Selecting one or more of these roles will add the role and the corresponding rate to the project (Figure 3). The **Add All Client Roles** option adds every client role in one step.
In addition to adding client roles, you can also choose to add roles directly from the list of workspace roles. If you select the **Add Workspace Roles** option from the same menu, you can select which workspace roles to add to the project.
Once a role has been added from the client or the workspace, the role can be edited as needed to correspond to the terms of the project. This is a different behavior from workspace-inherited roles on the client; there, roles cannot be edited. On a project, however, roles / rates can be modified to meet the terms associated with the project. To edit a role, select the **Edit** action item (Figure 4) from the action menu located at the end of a row in the Project Roles list (Figure 3). The same menu also offers an **Edit Member Assignments** item, described below, for managing which members are assigned to the role.
Note that any changes to roles / rates at the client level will NOT propagate down to the project or effect any prior time entries logged to that project role.
### Create New Project Roles
To create a new project role, click the **+** button at the top-right of the roles list (Figure 1) and select **Add Project Role**. This will allow you to type in the name of the new role (Figure 5); optionally select a role location, practice, and / or discipline; set the role as either billable or non-billable; set the currency for the role's bill rate; provide an hourly rate (for billable roles); and assign project team members to the new role using the **Member Assignments** section of the same form — the same way you would when [editing an existing role's member assignments](#assign-project-team-members-to-roles).
Practices, locations, and disciplines are set by your Workspace Admin and they are used to group associated roles together for reporting purposes.
Note that if a billable role is assigned to a non-billable [task](/projects/project-tasks), the hours worked will be non-billable.
### Assign Project Team Members to Roles
Once you have your project roles defined, you can then assign project [team members](/projects/project-team) to those roles. There are two ways to manage role assignments, both starting from the role's row in the Roles section (Figure 1):
1. **Edit the role.** Select the **Edit** action item from the role's action menu to open the role form. The **Member Assignments** section lists everyone currently assigned to the role, with a remove action next to each member. Click **Add** below the list to search for and add one member at a time (Figure 6).
2. **Edit member assignments in bulk.** Select the **Edit Member Assignments** action item from the role's action menu to open a checklist of every project team member. Check or uncheck members to assign or unassign them from the role, then click **Save & Close** (Figure 7). This is the fastest way to assign or unassign several members at once.
You can assign the same team member to multiple project roles if needed. Once a team member is assigned to a project role, that member will be able to record time to the project and role within the time tracking area.
You can also manage a single member's role assignments from the member's own row on the [**Team** tab](/projects/project-team#assign-a-team-member-to-project-roles) — useful when you want to review or change everything one person is assigned to.
**NOTE**: When a member has a single role assignment on a project and that project's **Members can only track time to assigned roles** setting is enabled, Ruddr automatically selects that role when time is entered. The member will not be prompted to choose a role.
### Delete a Role Assignment
You can delete a role assignment in any of the following ways:
* Hover over the member's avatar in the role's avatar stack (Figure 1) and click the remove button that appears. Ruddr will ask you to confirm before unassigning the member.
* Edit the role and click the remove action next to the member in the **Member Assignments** list (Figure 6).
* Uncheck the member from the **Edit Member Assignments** checklist (Figure 7).
When a role assignment is deleted, any existing time entries associated with that role assignment remain unchanged. Role assignments can always be deleted regardless of whether or not they have existing time entries associated with them.
### Delete or Deactivate a Role
A project role can be deleted or disabled by using the menu on the right side of the row (Figure 1). There are times when the delete option will not be enabled but you always have the ability to deactivate a role (Figure 8).
A role cannot be deleted if either of the following is true:
* One or more project team members are assigned to the role.
* There are existing time entries associated with the role.
In these cases, the role can be deactivated but not deleted.
# Project Settings
Source: https://help.ruddr.io/projects/project-settings
The **Settings** tab of the [project dashboard](/projects/project-dashboard) is where you edit everything about a project. This includes the project's basic information, configuration options, team, roles, accounting ledgers, and budgets. Project editing previously happened in the **Edit Project** drawer; that drawer has been retired, and all of its functionality now lives on the Settings tab.
To see the Settings tab, you must have the **Edit project** permission on your [security role](/workspace-administration/security-roles) and access to the project. Members without that permission will not see the tab, and any direct links to the settings screens will redirect them back to the project dashboard.
### Navigating Project Settings
Clicking on the **Settings** tab takes you to the **Basic Information** section of the project overview. On the left side of the screen is a navigation menu with the following sections:
* **Overview** - The project's basic information and configuration options. This section contains the anchored sections **Basic Information**, **Settings**, **Time Tracking Rules**, **Approval Options**, **Billing**, **Invoice Details**, and **Cloud Folder**. As you scroll, the menu highlights the section currently in view. Each of these sections is described in detail in the [Create a New Project](/projects/create-a-new-project) article.
* **Team** - Manage the project team members. See the [Project Team](/projects/project-team) article.
* **Roles** - Manage project roles and rates. This section is only shown when the project uses roles. See the [Project Roles](/projects/project-roles) article.
* **Rate Cards** - The project's dated rate cards. This section is shown on projects that use rate cards; on non-billable projects it shows cost rates only, to members who can view margin. See the [Project Rate Cards](/projects/project-rate-cards) article.
* **Accounting** - The project's accounting ledgers. Clicking on **Accounting** expands the group and takes you to the first available ledger.
* **Budget** - A read-only summary of the project's overall budget. This section is only shown when the project tracks an overall budget.
* **Monthly Budget** - A read-only summary of the project's monthly budget. This section is only shown when the project tracks a monthly budget.
Some sections may not be shown depending on the project's configuration. For example, a Time & Materials project that does not use roles and has no budget will only show the **Overview**, **Team**, and **Accounting** sections.
### Overview
The **Overview** section (Figure 1) contains the same fields that are captured when you [create a new project](/projects/create-a-new-project). Make any edits and click the **Save** button at the bottom-right of the screen. The **Cancel** button becomes available once you have unsaved changes, and if you navigate away with unsaved changes, Ruddr will warn you before discarding them.
The **Delete** button at the bottom-left of the screen deletes the project. This button is disabled when the project has associated invoices, credit notes, or opportunities. For more, see [Archive or Delete a Project](/projects/archive-or-delete-a-project).
Note that a few fields become locked once the project has an associated invoice or credit note. The **Client**, **Billing Type**, **Billable**, **Use roles**, and **Currency** settings cannot be changed on a project that has been invoiced. Similarly, if an Opportunity in the Pipeline is mapped to a project, that project's client will be read-only within the project settings.
Also note that changing the project's **Client** will change the project's URL, since the URL contains the client's key. The project's own URL ID does not change.
#### Completing a Project
When you change the **Project Status** to **Completed** and save, Ruddr stamps the project's **Completed On** date with the completion date. On fixed fee projects that use the Manual or an Automated [revenue recognition method](/projects/fixed-fee-revenue-recognition), if there is still unrecognized revenue on the project, Ruddr will ask whether you would like an entry added to the project's revenue recognition ledger to recognize the remaining revenue. Choosing **Yes** saves the project and adds the entry, dated on the completion date. Choosing **No** saves the project without adding an entry.
### Team
The **Team** section (Figure 2) lists the project team members along with their job title, practice, and location. From here you can add members, set a member as Project Admin, edit bill rates and cost rates, and deactivate or remove members from the team. For detailed information, see the [Project Team](/projects/project-team) article.
### Roles
For projects that use roles, the **Roles** section (Figure 3) allows you to manage the project's roles and rates. Each role row shows the assigned members as a stack of avatars, along with the role's practice, location, discipline, and bill rate. For detailed information, see the [Project Roles](/projects/project-roles) article.
### Accounting
The **Accounting** section (Figure 4) groups the project's accounting ledgers. The ledgers shown depend on the project's billing type, billability, and revenue recognition method:
* [**Fixed Fee Billing Schedule**](/projects/fixed-fee-billing-schedule) - The invoice milestones for fixed fee and fixed monthly projects.
* [**Revenue Recognition**](/projects/the-revenue-recognition-ledger) - The entries that tell Ruddr when to recognize revenue and how much revenue to recognize.
* [**Products**](/projects/products-ledger) - Products to be billed to the client.
* [**Additional Services**](/projects/additional-services-ledger) - Services delivered outside of the project's primary services.
* [**Other Items**](/projects/other-items-ledger) - Any other billable items for the project.
* [**Project Expenses**](/projects/project-expenses-ledger) - Billable and non-billable expenses scheduled at the project level.
* [**Revenue Adjustments**](/projects/earned-revenue-adjustment-ledger) - Positive or negative adjustments to the project's earned revenue.
Each ledger works the same way. Use the **+** button at the top-right of the ledger to add a single entry, or the **Add Multiple** button to add several entries in one save. Each row has an action menu with **Edit** and **Delete** options, and you can select multiple rows to delete them in bulk. Rows that have been included on a published invoice cannot be edited or deleted; a bulk delete will skip any invoiced rows and report them as skipped.
### Budget and Monthly Budget
The **Budget** and **Monthly Budget** sections (Figure 5) present a read-only summary of the project's budgets, including budget revenue, hours, cost, gross profit and margin, effective bill rate, and realization rate. To make changes, click the pencil button at the top-right of the section to open the **Edit Overall Budget** or **Edit Monthly Budget** drawer. For detailed information about creating budgets, see the [Create a Project Budget](/projects/create-a-project-budget) article.
The cost, gross profit, and margin figures are only visible if you have the **View project margin** permission on your security role.
### Permissions
Access to the Settings tab is controlled by a few independent permissions:
* **Edit project** - Required to see the Settings tab and edit any section. Any member that can edit the project can also see the project's bill rates and revenue figures.
* **View project margin** - Required to see cost, gross profit, and margin figures, including the budget cost cards and member cost rates. This permission is independent of the ability to edit the project.
* **Workspace Admin** - Required to override a team member's [cost rate](/projects/project-team#override-a-members-cost-rate) for the project.
# Project Status
Source: https://help.ruddr.io/projects/project-status
Keep each project's status current across six options from Tentative to Cancelled, and lock time and expenses when work pauses or completes.
Each project in Ruddr has a status. The six options for a project's status are:
* **Tentative**
* **Not Started**
* **In Progress**
* **Paused**
* **Completed**
* **Cancelled**
These options get set (Figure 1) in the **Overview** section of the project's [**Settings**](/projects/project-settings) tab. In order to edit a project, you must have access to the project and also have the **Edit project** permission set on your security role.
It is important that the project manager or another team member with sufficient privileges keep the project status up to date. When all work on a project has been finished, the status should be moved to **Completed**.
If a project is set to Paused or Completed and you no longer want time or expenses to be added or edited for the project, turn on the **Lock time and expenses** option (Figure 2) in the **Overview** section of the Settings tab.
The Tentative status can be helpful to plan for projects not fully confirmed, but should still be visible for planning purposes. Utilizing tentative projects will provide a few benefits:
* Allocations on a tentative project will display with diagonal striped treatment in the allocations grid.
* Plan for capacity without assigning people as project team members.
# Project Tasks
Source: https://help.ruddr.io/projects/project-tasks
Break projects into standard, rollup, and milestone tasks with list, board, and Gantt views, task-level budgets, dependencies, and time tracking.
Projects in Ruddr can be broken down into tasks. This is especially useful on larger projects where there are distinct roles and work initiatives. By using tasks, progress and performance can be measured on a per-task basis which improves overall project manageability.
### Benefits of Using Tasks
Tasks help project leaders deliver a project with greater precision. By using tasks, a large scope of work can be divided into smaller and more manageable constituent parts. Two important benefits of using tasks in Ruddr are:
* **Task-based budgeting** - When setting up a budget for a project in Ruddr, you have the option of automatically creating the budget by aggregating all of the tasks for the project. This allows you to create a "bottoms up" budget that sums the hours and revenue across all tasks and project roles. For more information on creating a detailed budget from aggregated tasks, please see the [Create a Project Budget](/projects/create-a-project-budget) article in the Ruddr Help Center.
* **Task-based time tracking** - When tasks have been defined for a project, team members can track time directly to specific tasks within the project. With time tracking at the task level, you can more easily identify trouble spots on projects that are taking too much time to deliver.
### View Project Tasks
To view a project's tasks, simply click on the **Tasks** tab (Figure 1) of the [project dashboard](/projects/project-dashboard) screen.
The tasks list shows the task number, billability, name, status, assignment, hours, revenue, and effective rate. Note that tasks can be assigned to project roles, to specific project team members, or both.
At the top of the task list, the following filters help you narrow down the list:
* **Task name** - Type in a partial or full task name.
* **Status** - The status of a task can be either:
* Not Started
* In Progress
* Completed
* **Task Archived** - Toggle between Active and Archived Tasks on the Project
#### Board View
In addition to the list view of tasks (Figure 1), you can view tasks in a board view (Figure 2), allowing you to see tasks organized by task status. To toggle to the board view, you can click on BOARD icon just above the tasks.
Each task card on the board can show a number of small icons, depending on the task and which columns you have enabled with the **Columns** button above the list:
* **Billability** - A dollar sign icon appears on standard tasks in green if the task is billable and grey if it is non-billable. Rollup tasks and milestones don't show this icon, since neither has its own billability setting.
* **Category icon** - The icon and color configured for the task's Task Category, shown next to the task name.
* **Task Code** - A hashtag icon followed by the task's code, if one has been set.
* **Parent Task** - A solid gray nested-task icon followed by the name of the task this one is nested under, if any.
* **Archived** - A box icon labeled "Archived," shown when the task has been archived.
* **Start Date / End Date** - Calendar icons showing the task's planned start and end dates.
* **Tags** - A tag icon for each Task Tag applied to the task.
* **Assigned Roles** - A person with tag icon for each role assigned to the task.
* **Subtasks** - A yellow icon with an unfilled subtask for each child task nested under the task.
* **Assigned Members** - An avatar for each member assigned to the task.
Task Code, Parent Task, Start Date, End Date, Tags, Assigned Roles, Subtasks, and Assigned Members can each be turned on or off from the **Columns** button above the task list.
#### Gantt View
Alongside the list and board views, the Tasks tab also offers a Gantt view (Figure 3), giving you a visual timeline of a project's tasks and milestones. To switch to the Gantt view, click GANTT next to the board view button.
On the Gantt chart, each standard and rollup task is drawn as a bar spanning its start and end dates, and each [milestone](#milestones) is drawn as a diamond on its single date. You can:
* **Reschedule a task** - Drag a task's bar to move it, or drag either end of the bar to resize it and change its start or end date.
* **Create a relationship** - Draw an arrow from one task to another to set a [Blocking / Blocked by relationship](#task-relationships-blocking-and-blocked-by) between them.
* **Remove a relationship** - Click the dependency arrow between two tasks and confirm to delete the link.
* **Timeframe** - Switch between Month, Week, and Day zoom levels to see more or less detail on the timeline.
You must have the **Edit project** permission to reschedule tasks or change relationships from the Gantt view.
### Create a Task
There are two ways to create a task on a project. You can create a new task "from scratch" or you can [create tasks from task templates](#create-a-task-from-a-task-template), which are managed in the [Custom Data](/workspace-administration/custom-data#untitled) section of workspace settings.
To add a new task, simply click on the **New Task +** button at the top of the task list (Figure 1a).
This will open the new task window where you can provide information about the task.
You will only see the **New Task +** button if you have the **Edit project** permission.
#### Task Categories
Task categories allow you to categorize tasks within projects. Each category has a type:
* Time can be tracked directly to a [standard task](#standard-tasks).
* A [rollup task](#rollup-tasks) aggregates time from its child tasks.
* A [milestone](#milestones) marks a single key date rather than a duration.
Workspace Admins can create Task Categories in the [Custom Data](/workspace-administration/custom-data) section of workspace settings.
Once you click save, a drawer will open for you to input further task information based on the category selected.
#### Standard Tasks
If you specify a rollup task category, the Edit Task drawer (Figure 4) will be presented.
The Basic Information section of the task includes the following fields:
* **Task Name** - The name of the task.
* **Task Category** - This will represent a task category from [Custom Data](/workspace-administration/custom-data) that has been set up as a Standard Task.
* **Parent Task** - If this task should be nested as a [subtask](#h_01JXDQCXFZCGW5323HK4X0AANE) under another, existing task, specify that parent task here.
* **Status** - The status of the task, which can be either Not Started, In Progress, or Completed.
* **Start and End Dates** - The planned start and end dates of the task.
* **Billability** - Whether or not the task is billable. If a project is set as non-billable, then this task billability option is not shown. If a project is billable, but a task is set to non-billable, any hours worked on the task will be non-billable regardless of the billability setting of the project role or member.
Once you have provided the basic information for the task, you can apply various Settings:
* **Hours** **Budget** - The number of hours the task is estimated to take. Note that when roles are assigned to a task, or when hours have been specified for member assignments, the total hours for the task becomes a read-only field that is calculated automatically from the role assignment and budget (Figure 3).
* **Services Revenue Budget** - The budgeted amount of fees associated with this task. Note that when roles are assigned to a task, the total revenue budget for the task becomes a read-only field that is automatically calculated from the role assignment and budget (Figure 5).
* **Task Code** - Any internal task identifier that your team may use for the task.
* **Task Tags** - Apply custom task attributes to the task. A Workspace Admin can set up any number of task tags for your workspace.
* **Notes** - Any brief notes about the task.
* **Lock time for this task** - When checked, time can no longer be created or edited for this task.
* **Cap the hours on this task** - When this option is selected, time entries against this task will be prevented if the amount of time being entered will put the task over the budgeted hours specified.
* **Cap the services revenue on this task** - on time and materials projects, this setting will be enabled. When checked, time entries will not be permitted against the task if those time entries will put the task over the Services Revenue Budget.
* **Only assigned members and roles can track time to this task** - Setting this option will prevent members from entering time against the task unless they, or their role, are assigned to that task.
* **Require notes on time entries for this task** - When checked, any time entries associated with this task must have notes provided.
The next section of the New Task drawer is the Role Assignment & Hours section (Figure 5). If the project does not use roles then this section is called Member Assignment & Hours. This section is used to create an hours and revenue budget for the given project task.
The Role Assignment & Hours section allows team members to see their assigned tasks when tracking time toward the project. To add a new role or member to the task assignment, simply click the **+ Quick Add** button.
In addition to budgeting hours per role, the number of hours on a task can be capped by role. The **Cap the hours by role** setting will prevent users from creating time entries for these roles, on this task, if those time entries will result in the role's hours budget being exceeded.
If a project uses roles, the task drawer will have an additional section called Member Assignment (Figure 6). This allows the task to be assigned to specific team members *in addition to* project roles.
#### Rollup Tasks
If you specify a rollup task category, the Edit Task drawer will be presented. Hours budget, revenue budget, dates, and status for rollup tasks will be read-only on this drawer (Figure 7), as they are computed automatically from the task's descendants. You can configure the task name, parent task, task code, tags, notes, and impose budget caps. Rollup tasks do not have member or role assignments.
##### Rollup Behavior
When a task uses a rollup category, Ruddr automatically derives several fields from the tasks nested under it:
* **Hours (tracked)** - Sum of tracked hours across all child tasks.
* **Hours (budget)** - Sum of budgeted hours across all child tasks.
* **Revenue** - Sum of revenue across all child tasks.
* **Start date** - The earliest start date among the child tasks.
* **End date** - The latest end date among the child tasks.
* **Status** - Derived from the child tasks. The rollup task will be set to **Completed** when every child tasks is completed, **In Progress** as soon as at least one child task has started (in progress or completed) but not all are completed, and **Not Started** when no child tasks has been started.
These values are shown wherever tasks appear: the project tasks list, the board view, reports, and the rollup task drawer.
###### Optional Caps
A rollup task always displays its aggregated hours and revenue as progress against the budget rolls up from its descendants. Two optional settings turn that aggregated budget into a hard cap:
* **Cap the hours to the total budgeted for this task** - When enabled, Ruddr blocks any time entry against a descendant task if that entry would push the rollup over the aggregated hours budget.
* **Cap the services revenue on this task** - When enabled (on Time and Materials projects), Ruddr blocks any time entry against a descendant task if that entry would push the rollup over the aggregated services revenue budget.
When neither cap is enabled, the rollup's progress is still displayed, but time entries are not blocked.
###### **Billability**
A rollup task does not have its own billable / non-billable setting and does not affect the billability of the tasks beneath it. Each child task keeps the billability it would have without the rollup in the hierarchy, determined by its own setting and the project. The same rollup can therefore contain both billable and non-billable child tasks.
###### **Time Tracking Restriction**
Time cannot be tracked directly to a rollup task. In the [time entry drawer](/time/the-day-view-for-time-tracking), rollup tasks appear in the task list with their icon and color so you can see the hierarchy, but they are not selectable as a target for a time entry. To track time, choose one of the standard tasks beneath the rollup.
#### Milestones
If you specify a milestone task category, the Edit Task drawer (Figure 8) will be presented. A milestone represents a single key date on a project — such as a client sign-off, an approval, or a go-live — rather than a span of work.
Milestones behave differently from standard and rollup tasks in a few ways:
* **Single date** - A milestone has one date, rather than separate start and end dates.
* **Status** - A milestone's status can only be **Not Started** or **Completed** — milestones cannot be **In Progress**.
* **No time tracking or allocations** - Time cannot be tracked against a milestone, and a milestone cannot be assigned allocations.
* **No subtasks** - A milestone cannot have child tasks of its own, but a milestone can be nested under a [rollup task](#rollup-tasks), in which case its status and date are factored into the rollup the same as any other child task.
* **Relationships** - A milestone can block, or be blocked by, other tasks. See [Task Relationships: Blocking and Blocked By](#task-relationships-blocking-and-blocked-by) below.
On the [Gantt view](#gantt-view) of the Tasks tab, milestones are drawn as a diamond on their date rather than as a bar.
**Automatically Completing Milestones**
If the **Automatically complete milestones** project setting is enabled, a milestone will be marked **Completed** automatically as soon as every task blocking it has been completed. This setting is optional and is configured per project — see [Create a New Project](/projects/create-a-new-project#settings) for more on project settings.
### Create a Task from a Task Template
To leverage a [task template](/workspace-administration/custom-data#untitled), simply click the **Add from Task Template** action menu item (Figure 9) on the **+** button. This will open the **Add Tasks** drawer (Figure 10).
From the **Add Tasks** drawer (Figure 11), you can select one or more task templates to add to the project. Once you have selected the task(s) that you wish to add, click the **Add** button at the bottom of the drawer. This will close the drawer and return you to the Tasks tab of the project dashboard.
### Edit a Task
To edit a task, you must have the **Edit project** permission. Simply click on the **Edit** menu option (Figure 11) in the action menu for the row that you want to edit. This will open up the same task drawer that is used to create a new task. Once you have made your edits, simply click the **Save & Close** button to save the task and return to the task list.
### Task Actions
#### Clone a Task
Task cloning makes it easier to build out a large inventory of tasks quickly. To clone a task, you must have the **Edit project** permission. Simply click on the **Clone** menu option in the action menu (Figure 11) for the task that you want to clone. This will bring up a window (Figure 12) that will allow you to give the new task a name. You will have an option to include all the subtasks when cloning a task.
#### Add Child Task
To create a new child task for a standard or rollup task, you must have the **Edit project** permission. Click the **Add Child Task** and you will be prompted to add a **New Task** where you will have the option to add to a Task Category.
#### Delete a Task
To delete a task, you must have the **Edit project** permission. Simply click on the **Delete** menu option in the action menu (Figure 11) for the task that you want to delete. If a task has time entries associated with it, the Delete menu option will be disabled. A task cannot be deleted when there are any time entries associated with it. If you wish to remove a task from the task list, but can not, or do not, wish to delete it, you can archive the task.
#### View Time Entries
To view time entries for a task, you must have project-level **View time entries and expense items** permissions. To view the time detail, click on the **View Time Detail** menu option in the action menu (Figure 11) for the respective task. This will bring up the Time Detail report for the specific and project and task.
#### Tasks and Time Tracking
When a project uses tasks, the time entry drawer will show the list of tasks (Figure 13) associated with the project. This list is grouped by My Tasks and Other Tasks. The tasks shown in the My Tasks section are assigned to the member by direct member assignment or by project role assignment. The tasks shown in the Other Tasks section are not assigned to the member either directly or by role. Note that Ruddr does not restrict a project team member from recording time to a task in the Other Tasks section.
When a member is associated with a task via a role assignment, the role is shown in a gray bubble to the right of the task name (as shown below). This can be particularly useful when a team member is assigned to multiple roles on the project team.
#### Move Time
The **Move Time** menu option in the task action menu (Figure 11) transfers every time entry from a task to another standard task in the same project. To move time, you must have the **Edit project** permission. The action is only available on standard tasks that have time entries - rollup tasks do not have their own time entries to move. The target task must be in the same project, must be a standard task, and must not have time locked.
Use this when you want to consolidate tracked time onto a different task - for example, before converting a standard task into a rollup, since rollup tasks cannot hold their own time entries.
#### Move Allocations
To move a task allocation, you must have the **Edit project** permission. Here you will be able to move the allocations for a parent and its child tasks from one task to another.
#### Changing a Task's Type
The **Change to Standard Task,** **Change to Rollup Task,** or **Change to Milestone Task** menu options in the task action menu (Figure 11) switch a task's type by assigning it a new category of the other types. To change a task's type, you must have the **Edit project** permission.
Changing a standard task to a rollup or milestone task is only allowed if the task has no time entries, no assigned members, no assigned roles, and no allocations of its own. If any of these exist, Ruddr will return an error explaining what to clear first — for example, use the **Move Time** action to relocate time entries, or remove member and role assignments before converting.
Changing a task from a rollup task or a milestone task to a standard task is allowed at any time.
#### Archive a Task
To archive a task, you must have the **Edit project** permission. Simply click on the **Archive** menu option in the action menu (Figure 11) for the task that you want to archive. When a task is archived, it will no longer be possible for a workspace member to track time against it. To view archived tasks on the Task tab, select "Yes" or "All" in the **Task Archived** filter dropdown (Figure 1).
### Managing the Task Hierarchy
Tasks can be nested under other tasks. To do this, you can either [edit the task](#edit-a-task) and specify a Parent Task or you can drag tasks in the Tasks list and place them under other tasks.
In the Tasks list (Figure 1), there will be a handle (Figure 14) in each task row. You can use this handle to arrange tasks in the list. To associate one task with another, drag the task onto / under the task to which you want to associate the task.
Nested tasks will appear under other tasks and will be indented. You can expand / contract parent tasks to show / hide subtasks, respectively.
Both standard and rollup tasks can be nested under other tasks. The following combinations are all valid:
* A rollup task can contain other rollup tasks, producing a higher-level rollup that aggregates lower-level rollups.
* A rollup task can contain standard tasks - the typical case, where a rollup summarizes a set of standard work items.
* A rollup task can contain milestones. For example, a client sign-off milestone can be nested under the rollup task it applies to.
* A standard task can contain a rollup task. The rollup aggregates only its own descendants.
* A standard task can contain other standard tasks (the classic Ruddr task hierarchy, with no rollup behavior).
A [milestone](#milestones) cannot contain other tasks.
### Task Relationships: Blocking and Blocked By
Standard tasks, rollup tasks, and milestones can all be linked with a Finish-to-Start relationship: a task cannot start until the task that blocks it has finished. This lets you model dependencies across a project's timeline, such as requiring a design review to finish before development can begin.
#### Setting Up a Relationship
To link two tasks, [edit the task](#edit-a-task) and go to the Relationships section (Figure 16) of the task drawer. From there, you can specify:
* **Blocking** - Other tasks that cannot start until this task finishes.
* **Blocked by** - Other tasks that this task cannot start until they finish.
You can also create a relationship directly from the [Gantt view](#gantt-view) by drawing an arrow from one task to another. Ruddr prevents you from creating a circular chain of relationships (for example, Task A blocking Task B, which blocks Task A).
Removing a relationship from the task drawer is a form edit like any other - it isn't applied until you save the task, and is discarded if you cancel out of the drawer instead. Removing a relationship from the Gantt view, by contrast, asks you to confirm before the link is deleted.
Ruddr allows you to set a task's dates earlier than the finish date of a task that blocks it. This isn't a typical flow, but it aligns with how other project management tools handle manually-scheduled tasks. Ruddr will not stop you from saving, but the relationship remains in place so you can see the conflict.
#### Cascading Date Changes
When you change the dates of a task that blocks other tasks, Ruddr shows you the tasks it blocks and asks whether their dates should shift along with it (Figure 17). This is similar to the prompt Ruddr shows when [shifting past allocations](/resourcing/create-a-resource-allocation).
* Leave the checkbox checked (the default) and save to shift the dates of the blocked tasks along with the task you're editing.
* Uncheck the checkbox and save to change only the current task's dates, leaving the tasks it blocks unchanged — useful when you want to add buffer time between two tasks.
#### Enabling and Disabling Task Dependencies
Task relationships are controlled by the **Task dependencies** setting on the project. This setting is on by default for new projects; existing projects need to turn it on to start using relationships. You'll be asked to confirm before turning the setting off.
Turning the setting off hides the Relationships section and all Blocking / Blocked by information everywhere tasks appear - it does not delete the underlying relationships. If you turn the setting back on later, the relationships you had set up reappear. Changes to this setting are recorded in the project's history.
For more on this and the related **Automatically complete milestones** setting, see [Create a New Project](/projects/create-a-new-project#settings).
#### Relationships in the API and Report Export
A task's Blocking and Blocked by relationships, along with the Milestone task category type, are included in the [Ruddr API](/workspace-administration/api-keys) and in the Project Tasks report export.
# Project Team
Source: https://help.ruddr.io/projects/project-team
Add, remove, or deactivate project team members, set Project Admins, assign project roles, mark members billable, and override cost rates from the Team tab.
To see the members of a project team, click on the **Team** tab of the [project dashboard](/projects/project-dashboard). Depending on your [security role](/workspace-administration/security-roles), you may only have access to projects if you are on the project team.
The Team tab (Figure 1), by default, shows profile cards for the active team members assigned to the project. You can use the **Member Status** filter to switch the view to inactive team members. Any inactive team member will show up in a semi-transparent presentation. Inactive team members can no longer record time or expenses toward the project.
Each profile card includes the member's name, photo/avatar image (if one has been uploaded), project role(s) with billability indicator, and the hours worked to date on the project.
### Edit the Project Team
To edit the project team, go to the **Team** section (Figure 2) of the project's [**Settings**](/projects/project-settings) tab. In order to see the Settings tab, you must have the **Edit project** permission.
In the **Team** section, you can [add](#add-a-project-team-member) team members, [remove](#remove-a-project-team-member) or [deactivate](#deactivate-a-project-team-member) a team member, [set a member as Project Admin](#set-a-member-as-project-admin), [assign a member to project roles](#assign-a-team-member-to-project-roles), specify whether a team member [is billable and has a bill rate](#set-a-member-as-a-billable-member-and-provide-a-bill-rate), and [override a member's cost rate](#override-a-members-cost-rate) for the project.
The member list shows each team member's name, job title, practice, and location. On projects that use [Project Roles](/projects/project-roles), a **Roles** column shows each member's assigned role(s); if a member has more than one role, the column shows the first role plus a **+N** tag you can hover over to see the rest. On billable projects that do not use roles, the member's billability and bill rate are also shown. Use the **Member Status** filter to switch between active and inactive members; inactive members render dimmed. A badge next to the member's name indicates a [Project Admin](/projects/the-project-admin).
### Add a Project Team Member
To add a team member to the project team, simply click the **+** button at the top-right of the **Team** section (Figure 2). This will show the **Add Members** screen (Figure 3), where you can search and filter for members and select one or more to add to the project team at once. Use the **Member Type** filter to narrow the list to **Employee**, **Contractor**, or **Other** members, and the **Status** filter to show active or inactive members. Select the checkbox next to each member you want to add, or use the header checkbox to select all matching members, then click **Add Members**. Note that the member must already exist in the workspace in order to be added to a project team. If the member does not exist, ask your Workspace Admin to invite the new user into the workspace.
### Remove a Project Team Member
To remove a team member from the project team, simply click the action menu at the right of the member row in the **Team** section (Figure 2). This will show a menu (Figure 4) that will include a **Remove from Team** option and a **Deactivate from Team** option. Ruddr will ask you to confirm before removing the member.
You can remove a team member from a project if the following criteria are met:
* The member has no time entries associated with the project
* The member has no expense items associated with the project
* The member is not assigned to any project roles
* The member is not assigned to any project tasks
* The member is not the project's only Project Admin
If any of the above conditions are not met, the member can be deactivated, but cannot be removed from the project team. By hovering over the **Remove from Team** (Figure 5), Ruddr will let you know the reasons why this member can't be removed from the Team.
### Deactivate a Project Team Member
If the criteria to remove a project team member cannot be met, you can deactivate the member instead. This will effectively remove the member from the project team and prohibit the member from creating or editing time or expenses for the project. But, the historical time and expense entries of that member will be preserved. To deactivate a team member, simply click on the action menu (Figure 4) at the right of the member row in the **Team** section (Figure 2) and choose the **Deactivate from Team** menu option. Ruddr will ask you to confirm before deactivating the member.
Note that every project must keep at least one active Project Admin. You cannot deactivate the project's last active administrator, and a member that is currently a Project Admin must have that role removed before being deactivated.
### Set a Member as Project Admin
A Project Admin is required for each project in Ruddr and must be specified upon Project creation. If you wish to change the Project Admin, access the action menu (Figure 4) at the end of the project team member row in the **Team** section (Figure 2) and select the **Set as Project Admin** menu item. Ruddr will ask you to confirm the change. To remove the role from a member, select the **Remove as Project Admin** menu item. An inactive project member cannot be set as a Project Admin. For more on this role, and on how to specify additional Project Admins on a project, please view [The Project Admin](/projects/the-project-admin) in Ruddr Help Center.
### Assign a Team Member to Project Roles
On a project that uses [Project Roles](/projects/project-roles), you can assign a team member to one or more roles directly from the **Team** section. Access the action menu (Figure 4) at the end of the project team member row and select the **Edit Role Assignments** menu item. This opens a checklist of every role defined on the project (Figure 6); check or uncheck a role to assign or unassign the member, then click **Save & Close**.
This is the member-centric counterpart to assigning members from the role itself, covered in [Project Roles](/projects/project-roles#assign-project-team-members-to-roles) — use whichever starting point is more convenient.
### Set a Member as a Billable Member and Provide a Bill Rate
In the case where [Project Roles](/projects/project-roles) are not leveraged on a project, a project member can be added to that project as a billable project member or a non-billable project member. Additionally, a member can have a bill rate applied to them when Project Roles are not used.
To specify that a member is billable / non-billable, access the action menu (Figure 4) at the end of the project team member row in the **Team** section (Figure 2) and select the **Edit Bill Rate** menu item. On the dialog (Figure 7), check the **Billable** checkbox to specify that the member is billable, or uncheck to set the project member as a non-billable member. Reminder that this option is only available when the project is not using Project Roles.
On this same dialog (Figure 7), if the member is a billable project member, you can supply a Bill Rate for the member on the project by entering a monetary value into the **Bill Rate** text box on the form. Again, this option is only available when the project does not use [Project Roles](/projects/project-roles). If the member already has time entries on the project, Ruddr will warn you that changing the rate will re-rate those existing entries.
### Override a Member's Cost Rate
There may be instances where a team member's cost rate differs on a per project basis. Perhaps you leverage sub-contractors who bill you at a different hourly rate depending on the project they are working on. In those instances, you can override a team member's cost rate for a particular project. To do this, access the action menu (Figure 4) at the end of the project team member row in the **Team** section (Figure 2). Select the **Edit Cost Rate** menu item. This menu item is only available to Workspace Admins.
On the dialog, check **Override Cost Rate**, choose the **Cost Currency**, and enter **Labor Cost Per Hour** and / or **Overhead Cost Per Hour**, just as you can on a member's [Member Profile](/workspace-administration/member-profile). The **Total Cost Per Hour** value will be used to calculate the member's labor cost for this particular project.
When the project has more than one [rate card](/projects/project-rate-cards), the dialog lists one row per rate card instead (Figure 8). Check **Override Cost** on a row to set that rate card's **Currency**, **Cost/Hour**, and **Overhead/Hour**; **Total/Hour** shows their sum. Each rate card keeps its own cost currency, so a member can be costed in US dollars on one rate card and Canadian dollars on the next. Clicking **Save & Close** changes only the rate cards you edited.
An overridden cost rate only changes a member's cost on member-based performance reports when the member uses the **Hourly Wage** cost method. Members on a **Fixed Wage Per-Hour** or **Fixed Wage Per-Month** cost method are costed from their capacity rather than the hours they record, so those reports are unaffected by the override. Project-based performance reports are charged for every hour recorded regardless of cost method. For a full comparison, see [How does the Member Cost Method impact performance reporting?](/faqs-and-troubleshooting/general/how-does-the-member-cost-method-impact-performance-reporting).
# The Project Admin
Source: https://help.ruddr.io/projects/the-project-admin
Understand what the Project Admin role means in Ruddr and how to change or add multiple admins from the Team tab of the Edit Project drawer.
Every project in Ruddr must have at least one assigned Project Admin. The Project Admin is a project team member who is responsible for project configuration and administering time and expense for that project. In most companies, the Project Admin is set to the workspace member who is managing the project on a day-to-day basis, however you may decide to assign these responsibilities to other workspace members.
You can determine the Project Admins for any project by simply clicking on the **Team** tab (Figure 1) of the Project Dashboard. The Project Admins will have a green icon next to their name on the member card.
To change the Project Admin on a project, your must have the **Edit Project** permission on your security role and must have access to the project. The **Team** section of the project's [**Settings**](/projects/project-settings) tab will allow you to add or remove team members as well as set team members to active or inactive. To set the Project Admin from this screen, simply click the action menu (Figure 2) on that member and choose the **Set as Project Admin** option.
Note that Ruddr's security roles can apply project-level permissions based on whether or not a workspace member is the Project Admin for the project. For example, if a member is the Project Admin for a project, the member may have expanded privileges to that project but not have those privileges on projects where the member is not the Project Admin.
#### Specifying Additional Project Admins
There may be instances where you wish to specify multiple Project Admins on a project. Perhaps you have a non-billable, operational-focused member in your workspace that will take on administrative duties, or you wish to split some project administration duties amongst two billable team members.
You can set additional Project Admins from the **Team** section of the Settings tab by using the same **Set as Project Admin** action (Figure 2) on each member you wish to make an admin. Ruddr will ask you to confirm the change. To remove the role from a member, choose the **Remove as Project Admin** action instead.
Note that every project must keep at least one active Project Admin, so the last remaining admin cannot be removed or deactivated, and an inactive team member cannot be set as a Project Admin.
# The Revenue Recognition Ledger
Source: https://help.ruddr.io/projects/the-revenue-recognition-ledger
See how the Revenue Recognition Ledger separates fixed fee revenue recognition from invoicing, with manual, generated, and automated entries.
With Time & Materials projects, revenue is recognized on reports and dashboards as of the date of each billable time entry. But, with Fixed Fee projects, revenue is recognized based on the fixed fee revenue recognition method set for each project. The revenue recognition method options available for fixed fee projects include:
* As Invoiced
* Manual
* Automated - Percentage of Billable Hours
* Automated - Percentage of Time & Materials Revenue
* Automated - Percentage of Services Cost
A detailed discussion of each of these methods is included in the [Fixed Fee Revenue Recognition](/projects/fixed-fee-revenue-recognition) article. The "As Invoiced" method recognizes revenue as of the Issue Date of the published invoice that includes one or more billing milestones. The other three revenue recognition methods recognize revenue based on entries in the **Revenue Recognition Ledger** in the **Accounting** section of the project's [**Settings**](/projects/project-settings) tab. The revenue recognition ledger (Figure 1) tells Ruddr when to recognize revenue and how much revenue to recognize. Note that projects using the "As Invoiced" revenue recognition method do not show this ledger.
It is important to point out that fixed fee projects that use the revenue recognition ledger have their invoicing and revenue recognition completely separated. Invoicing is driven by the **Fixed Fee Billing Schedule** while revenue recognition is driven by the **Revenue Recognition Ledger**. This is an important concept because you may need to recognize revenue on a very different schedule than you invoice.
As an example, assume that your company sells a \$100,000 project and the contract states that 50% of the fee will be invoiced up front and 50% will be invoiced one month after the project is completed. In that scenario, you invoice the client \$50,000 today, even though you may not start the project until next month. Then, you invoice the final 50% one month after the project has been fully delivered. If you recognize the revenue as it is invoiced, your performance reports in Ruddr will show \$50,000 in two months in which your team did none of the project work. This inflates gross profit and gross margin in those two months and depresses them in the remaining months.
Note that the ledger will display the total of the ledger entries and also the **Budget Recognizable Revenue**, which is services revenue budget plus the non-billable expenses budget. It does not include billable expenses or other items to bill.
When the total of the revenue recognition ledger exceeds either the total of the fixed fee billing schedule or the budget recognizable revenue, Ruddr will display a notification warning (Figure 2) of such.
Entries on the revenue recognition ledger can be added [manually](#manually-adding-revenue-recognition-ledger-entries) or can be [generated](#01JC1QMYC16M5Q8T7R54QRKTA7) by Ruddr.
### Manually Adding Revenue Recognition Ledger Entries
Revenue recognition ledger entries can be created manually by clicking either the **+** button or the **Add Multiple** button at the top-right of the ledger. The **+** button will bring up a window that will allow you to create a single entry in the ledger (Figure 3). This is generally optimal when the revenue recognition will not follow a consistent pattern from month-to-month.
Note that revenue recognition entries can be positive or negative. If you had previously recognized too much revenue on a project and did not want to adjust past revenue recognition entries, you could create a negative revenue recognition entry for the current month.
In cases where the project will recognize the same amount of revenue over a number of months, the **Add Multiple** button will allow you to easily create many monthly revenue recognition entries with a single action. For projects that span several years, this bulk action can save a tremendous amount of time.
### Generating Revenue Recognition Ledger Entries
Ruddr can automatically generate past and future revenue recognition ledger entries via the **Generate** button at the top-right of the ledger. The Generate button is only enabled once the project's budget can back a schedule; hovering over a disabled button will explain what is missing (for example, the project must use a budget or must have a services revenue budget). The Generate button evaluates project actuals through the previous day and forecasted values from today forward to create revenue recognition entries. The button brings up the **Generate Revenue Recognition** window which captures four important pieces of information:
* The method Ruddr should use to calculate revenue recognition entries
* The interval that entries should be created on (weekly or monthly)
* The start date for when the process should create revenue recognition ledger entries
* The date through which Ruddr should rely on actual hours
For detailed information on how the **Percentage of Billable Hours, Percentage of Time & Materials Revenue**, and **Percentage of Services Cost** methods calculate revenue recognition ledger entries, see the the [Fixed Fee Revenue Recognition](/projects/fixed-fee-revenue-recognition) article.
The Generate button will create revenue recognition entries through the end of the resource allocations for the project. Thus, the ledger could contain many months of future revenue recognition entries. Those future entries are used on reports and dashboards that display forecasted services revenue.
### Automated Revenue Recognition
While calculating revenue recognition manually or via the Generate button is often desirable, Ruddr also provides three automated revenue recognition methods. These methods are **Automated - Percentage of Billable Hours**, **Automated - Percentage of Services Cost**, and **Automated - Percentage of Time & Materials Revenue**.
With these methods, Ruddr performs automated revenue recognition either once per week or once per month. Ruddr will analyze the project's actuals and forecast and then make the appropriate entry in the revenue recognition ledger. For more on automated revenue recognition methods, see the [Fixed Fee Revenue Recognition](/projects/fixed-fee-revenue-recognition) article.
### Completing a Fixed Fee Project
When a fixed fee project that uses the revenue recognition ledger is set to Completed, Ruddr will check to see if there is any remaining services revenue budget to be recognized. If there is, Ruddr will ask the user if it should recognize that remaining revenue. If the user confirms, a final revenue recognition row will be added to the revenue recognition ledger (Figure 6).
# Accounting Reports
Source: https://help.ruddr.io/reports/accounting-reports
Explore Ruddr's Accounting reports covering invoices, payments, credit notes, AR aging, purchase orders, and uninvoiced revenue.
To gain insight into the financials that are being tracked across projects and clients in your workspace, access the Accounting reports section of Ruddr by clicking the **Library** item in the **Reports** section of the main nav bar (Figure 1) on the left of the screen. Once you have accessed the reports library, you will see the Accounting category of reports listed (Figure 2).
Accounting reports are all reports related to accounting and financial transactions.
**Security Permissions and Accounting Reports**
As mentioned in the [Ruddr Security Roles and Reports](/reports/reporting-overview#ruddr-security-roles-and-reports) section of the [Reporting Overview](/reports/reporting-overview) article in the Ruddr Help Center, what reports are available, and then what data within those reports is available, depends on the security permissions of the member viewing the reports. Members must have permissions to at least one of the following in order to access the Accounting reports section:
* View published invoices
* View bill rates
* View project revenue
* View cost and profit
For members that have access to the Accounting reports section, certain data may / may not be available based on the security permissions of the members.
**Multicurrency and the Accounting Reports**
For workspaces that leverage Ruddr's [Multicurrency](/multicurrency/multicurrency-overview) feature, the reports in the Accounting report section of Ruddr provide the user with the ability to select the currency (Figure 3) that will be displayed in the report and also used for the CSV / Excel export. The default currency is set to the workspace's home currency, as defined in Workspace Settings.
The following reports present differing views of accounting data in your workspace:
#### Accounts Receivable Aging
This report presents a list of outstanding receivables, by client, in the workspace, grouped by current, 1 - 30 days late, 31 - 60 days late, 61 - 90 days late, and over 90 days late.
#### Client Purchase Orders
This report presents a list of [purchase orders](/clients/purchase-orders) in the workspace, including each purchase order's client, number, amount, amount invoiced, and amount available.
#### Client Statement
The Client Statement reports presents a summary of invoices, credit notes, payments, and overall balance for a client. In addition to the various transactions that are detailed, this report also presents a view of AR Aging.
#### Credit Notes
The credit notes report presents a list of credit notes, including:
* Credit Note Number
* Client Name
* Project Name(s)
* PO Number
* Issued Date
* Status
* Balance
* Total Amount
#### Credit Note Detail
A list of credit notes, including the credit note summary and each individual credit note line item, including:
* Credit Note Number
* Client
* Issued Date
* Status
* Tax
* Balance
* Total Amount
* Credit Note Line Item
* Invoice Item
* Details
* Taxable
* Quantity
* Rate
* Amount
#### Fixed Fee Services Revenue by Client and Project
This report presents a summary of services revenue for projects with a Billing Type of Fixed Fee and / or Fixed Monthly. The revenue summary includes recognized, unrecognized, invoiced, and uninvoiced services revenue, grouped by client and project. For each project listed, the following revenue events will be listed, as applicable, for the selected date range of the report:
* Fixed Fee Billing Milestone
* Revenue Recognition Ledger Entry
* Non-Billable Project Expense Item
The Non-Billable Project Expense Item is included as negative Recognized Services Revenue.
#### Hourly Revenue by Client and Project
A summary of hourly revenue earned by project role or member, grouped by client and project. For any project, including Fixed Fee projects, if a billable rate is provided for a member or role, the hours and calculated hourly revenue will be included in the report.
* Client Name
* Project Name
* Role / Member Name
* Billable Hours
* Non-billable Hours
* Total Hours
* Bill Rate
* Fees
#### Invoices
This report presents a list of invoices, including:
* Invoice Number
* Client Name
* Project Name(s)
* Issued Date
* Due Date
* Status
* Balance
#### Invoices by Client
Invoices, grouped by client. This report includes:
* Client Name
* Invoice Number
* Project Name(s)
* Issued Date
* Due Date
* Status
* Balance
* Total Client Balance
#### Invoice Detail
A list of invoices, including invoice line items.
* Invoice Number
* Client Name
* Issued Date
* Due Date
* Status
* Tax
* Discount
* Total Invoice Amount
* Invoice Line Item(s)
* Invoice Item
* Details
* Taxable
* Quantity
* Rate
* Amount
#### Payments
This report provides a list of payments in the workspace. The report includes:
* Date
* Client Name
* Project Name(s)
* Invoice Number(s)
* Ref #
* Payment Method
* Amount
#### Payments by Invoice
The Payments by Invoice report provides a list of payments grouped by invoice. This includes:
* Invoice Number
* Client Name
* Project Name(s)
* Issued Date
* Due Date
* Status
* Invoice Amount
* Total Payments
* Payment Date
* Ref #
* Payment Method
* Payment Amount
#### Scheduled Items
This report provides a list of any project-level scheduled items on projects in the workspace, grouped by client and project. This includes:
* Client Name
* Project Name
* Scheduled Item Type
* Invoice # (if item has been invoiced)
* Date
* Details
* Amount
Schedule items consist of [Fixed Fee Billing Milestones](/projects/fixed-fee-billing-schedule), Project Expenses, and Project [Other Items to Bill](/projects/other-items-ledger).
#### Transaction Summary by Invoice Item
Invoice items, managed in the [Custom Data](/workspace-administration/custom-data) section of Workspace Settings, are applied to project types and expense categories to track various types of services revenue and expenses in Ruddr. This report provides a summary of all transactions grouped by invoice item, including:
* Invoice Item
* Invoice Item Type
* Amount
#### Uninvoiced Revenue
This report provides a list of time entries, expense report items, fixed fee billing milestones, project expenses and project other items that have not yet been invoiced.
# Expenses Reports
Source: https://help.ruddr.io/reports/expenses-reports
A guide to Ruddr's Expenses reports, from detailed expense item listings to summaries by client, project, category, member, and practice.
For workspaces that utilize the Expense Tracking feature in Ruddr, the Expenses report section is available and provides insight into the expenses that are being logged in the workspace. You can access the reports library in Ruddr by clicking the **Library** item in the **Reports** section of the main nav bar (Figure 1) on the left of the screen. Once you have accessed the reports library, you will see the Expenses category of reports listed (Figure 2).
The following reports present differing views of Expenses data in your workspace:
#### Expense Items
The most detailed source of Expenses data in Ruddr, the Expense Items report is a listing of individual expense items in Ruddr, including:
* Date
* Member
* Client and Project
* Expense Category
* Vendor
* Approval Status
* Reimbursable Status
* Amount
* Billable / Non-billable Expense
* Receipt Indicator (the receipt icon is dark when a receipt has been uploaded and muted when there isn't one)
Note that there is a "client-friendly" PDF export format in addition to the CSV and Excel formats for the Expense Items report. The PDF will contain your company logo and an Expense Summary section in the report header.
In the Excel / CSV exports, a significant amount of additional data is available for the expense items.
**Multicurrency and the Expense Detail Report**
For workspaces that leverage Ruddr's [Multicurrency](/multicurrency/multicurrency-overview) feature, the Expense Detail report provides the user with the ability to select the currency (Figure 3) that will be displayed (in addition to the expense's currency) and also used for the CSV / Excel export. Note that the expense currency is set to the project's currency, but can also be viewed in the selected, alternate currency, if different.
The Expense Detail report export (Figure 4) will include columns for both the project's specified currency and the converted currency per the currency selector on the report. The example below shows CSV export columns for expense items on a project set for USD with the currency selector set to AUD. Both the USD and AUD values are shown in the report export.
#### Expense Summary by Client and Project
A summary of billable and non-billable expense totals grouped by client and project. Included in this report is a summary of the following:
* Client
* Project
* Project Type
* Billable Expense Total
* Non-billable Expense Total
* Total Expense
Note that totals are provided at both a client level and for individual projects within each client.
#### Expense Summary by Expense Category
Expense items in Ruddr are assigned an [Expense Category](/expenses/manage-expense-categories). This report provides a summary of expenses by expense category, as such:
* Expense Category
* Billable Expense Total
* Non-billable Expense Total
* Total Expense
#### Expense Summary by Member
A summary of expense items by member. This includes:
* Member
* Billable Expense Total
* Non-billable Expense Total
* Total Expense
#### Expense Summary by Member Practice
Summary of expense items by member practice, including the following:
* Member Practice
* Billable Expense Total
* Non-billable Expense Total
* Total Expense
If your workspaces uses practices, this report provides insight into the expense items being entered by members belonging to a particular practice. Practices can be created / managed in the [Custom Data](/workspace-administration/custom-data) section of Workspace Settings.
#### Expense Summary by Project
Summary of expense items by project, including the following:
* Project
* Billable Expense Total
* Non-billable Expense Total
* Total Expense
#### Expense Summary by Project Type
Project in Ruddr can be assigned a project type. Project types can be managed in the [Custom Data](/workspace-administration/custom-data) section of Workspace Settings. This report provides a summary view of expense items for each project type in your workspace, including:
* Project Type
* Billable Expense Total
* Non-billable Expense Total
* Total Expense
# Forecast Reports
Source: https://help.ruddr.io/reports/forecast-reports
How Ruddr's Forecast reports combine past actuals with resource allocations to project hours, revenue, cost, and margin by project.
For workspaces that utilize the Forecast and Variance Reports feature in Ruddr, the Forecast report section is available and provides insight into hours, revenue, and utilization metrics that are derived from actuals and [Resource Allocations](/resourcing/overview-of-resourcing) in the workspace.
Forecast reports are based on the combination of past actuals with the future plan to generate a performance forecast. For more, please refer to the Help Center article on [How Services Revenue is Forecasted in Ruddr](/faqs-and-troubleshooting/revenue-in-ruddr/how-is-planned-services-revenue-calculated-in-ruddr).
You can access the Forecast reports section of Ruddr by clicking the **Library** item in the **Reports** section of the main nav bar (Figure 1) on the left of the screen. Once you have accessed the reports library, you will see the Forecast category of reports listed (Figure 2).
**Viewing Data by Unit**
Each report in the Forecast report section can be grouped and viewed by unit:
* Month
* Week
* Day
By default, each report in this section is set to group and display by Month. To change this grouping, select the desired value from the **Unit** dropdown (Figure 3) in the Filters drawer.
The following reports present differing views of data in your workspace:
**NOTE:** Forecast reports in Ruddr default to showing projects of the following project status:
* In Progress
* Not Started
#### Performance Forecast by Project
A project performance report combining past actuals and the future plan. This report defaults to showing all active projects in the workspace and does not factor in a time frame, as it covers the entirety of projects' actuals and plan. This report includes the following forecasted metrics for projects in your workspace:
* Hours
* Realization Rate
* Total Revenue
* Effective Bill Rate
* Total Cost
* Total Gross Profit
* Total Gross Margin
#### Performance Forecast by Project by Time Unit
A view of forecasted project performance for a specific timeframe. This report shows starting values prior to the reporting period, values for each time unit, and ending forecast values. When viewing the report, you have the ability to specify which project metric for which you want to view forecast:
* Total Revenue
* Total Gross Profit
* Total Cost
* Total Gross Margin
* Total Hours
##### **Actuals Through**
By default, Ruddr "transitions" from Actuals to Forecast on today's date. Meaning, that forecast reports include actuals through today's date and all forward looking data is from tomorrow through the end of the project. For workspaces that typically do not have time entered on a daily basis, you can now evaluate project performance forecast by using actuals through the prior week or month and plan values after that date. You will be able to select the **Actuals Through** date when viewing these reports.
# Performance Reports
Source: https://help.ruddr.io/reports/performance-reports
Review Ruddr's Performance reports, showing hours, revenue, cost, profit, and margin for clients, projects, members, and practices.
The Performance reports in Ruddr provide financial insights on clients, projects, members, and practices, showing revenue, margin, and profitability. Access depends on security permissions, and multicurrency options are available. Reports include Performance by Client, Member, Project, Practice, and Project Type, with detailed metrics like hours, realization rate, earned revenue, cost, profit, and margin.
To gain insight into the financials that are being tracked across projects and clients in your workspace, access the Performance reports section of Ruddr by clicking the **Library** item in the **Reports** section of the main nav bar (Figure 1) on the left of the screen. Once you have accessed the reports library, you will see the Performance category of reports listed (Figure 2).
Performance reports are reports related to performance and profitability.
The performance reports in Ruddr show revenue, margin, and other financial information for clients and projects in the workspace. There are a number of performance reports that give you financial insights into how your projects, client portfolios, and practices are performing.
The exports of the performance reports include many additional, financial data points.
For those workspaces that leverage the [Practices feature](/workspace-administration/features#practices) in Ruddr, Performance by Practice reports will be available. These reports provide insight into how a practice's clients, projects, and members are performing. The results of these reports are viewable by those that have security permissions to view financial data for specific practices within the workspace.
**Security Permissions and Performance Reports**
As mentioned in the [Ruddr Security Roles and Reports](/reports/reporting-overview#ruddr-security-roles-and-reports) section of the [Reporting Overview](/reports/reporting-overview) article in the Ruddr Help Center, what reports are available, and then what data within those reports is available, depends on the security permissions of the member viewing the reports. Members must have permissions to at least one of the following in order to access the Performance reports section:
* View bill rates
* View project revenue
* View cost and profit
For members that have access to the Performance reports section, certain data may / may not be available based on the security permissions of the members.
**Multicurrency and the Performance Reports**
For workspaces that leverage Ruddr's [Multicurrency](/multicurrency/multicurrency-overview) feature, the reports in the Performance report section of Ruddr provide the user with the ability to select the currency (Figure 3) that will be displayed in the report and also used for the CSV / Excel export. The default currency is set to the workspace's home currency, as defined in Workspace Settings.
#### Revenue Attribution and the Performance by Member Reports
There are multiple performance reports in Ruddr that offer a look at performance - services revenue, labor costs, and services gross margin - for members. With regards to services revenue, that is calculated for members based on the Billing Type of their project(s), and for Fixed Fee projects, on the Fixed Fee Revenue Attribution method for those projects.
For Time and Materials projects, revenue for members is calculated as Hours \* Fees. On Fixed Fee projects, based on the attribution method, revenue for members is either based on Percentage of Billable Hours, Percentage of Time and Materials Revenue, or Percentage of Services Cost.
For more on this attribution, refer to the [Fixed Fee Revenue Attribution](/projects/fixed-fee-revenue-attribution) article in the Ruddr Help Center.
The following reports present differing views of performance data in your workspace:
#### Performance by Client
The high-level performance of clients in the workspace. This report includes the following:
* Client Name
* Hours
* Realization Rate
* Total Earned Revenue
* Effective Bill Rate
* Total Cost
* Total Profit
* Total Margin
#### Performance by Client Practice
Each client can be associated with a practice. This report provides a view of high-level financial performance of a practice's client portfolio. Included in this report:
* Client Practice
* Hours
* Realization Rate
* Earned Revenue
* Effective Bill Rate
* Total Cost
* Total Profit
* Total Margin
#### Performance by Member
This report provides insights into the financial performance of members within the workspace. For each member, the following information is included:
* Member Name
* Total Hours
* Realization Rate
* Services Revenue
* Effective Bill Rate
* Cost
* Profit
* Margin
Note that for Cost, a member's Labor Cost Type determines how the members Cost over a period is calculated:
* **Fixed labor cost**: If a member's labor cost is fixed, then the Cost is calculated as their Capacity for the period multiplied times their Total Hourly Labor Cost, as defined on their [Member Profile](/workspace-administration/member-profile).
* **Hourly labor cost**: If a member's labor cost is hourly, then the Cost is calculated as the Total Hours for the period multiplied times their Total Hourly Labor Cost, as defined on their [Member Profile](/workspace-administration/member-profile).
#### Performance by Member Practice
Each member can be associated with a practice. This report provides a view of high-level financial performance of a practice's members. Included in this report:
* Member Practice
* Total Hours
* Realization Rate
* Services Revenue
* Effective Bill Rate
* Cost
* Profit
* Margin
Note that for Cost, a member's Labor Cost Type determines how the members Cost over a period is calculated:
* **Fixed labor cost**: If a member's labor cost is fixed, then the Cost is calculated as their Capacity for the period multiplied times their Total Hourly Labor Cost, as defined on their [Member Profile](/workspace-administration/member-profile).
* **Hourly labor cost**: If a member's labor cost is hourly, then the Cost is calculated as the Total Hours for the period multiplied times their Total Hourly Labor Cost, as defined on their [Member Profile](/workspace-administration/member-profile).
#### Performance by Project
This report presents the high-level financial performance of projects, including:
* Project Name
* Client Name
* Hours
* Realization Rate
* Earned Revenue
* Effective Bill Rate
* Cost
* Profit
* Margin
* Budget Revenue
* Budget Revenue Left
The export of this report includes additional, financial metrics such as Invoiced Revenue, Expenses Revenue, Other Items Revenue, Services Margin, etc.
#### Performance by Project and Member
This report presents the high-level financial performance of projects, but also provides insight into the financial performance of each team member on those projects. This report includes:
* Project (and Client)
* Member
* Hours
* Services Revenue
* Effective Bill Rate
* Services Cost
* Services Profit
* Services Margin
Note that for Services Cost on this report, a Member's Hourly Total Cost is multiplied times the number of hours they spent on the project.
#### Performance by Project and Task
A high-level report of performance for each project and insight into the financial performance of each project's tasks. This report includes:
* Project (and Client)
* Task
* Hours
* Services Revenue
* Effective Bill Rate
* Services Cost
* Services Profit
* Services Margin
* Budget Hours
* Budget Hours Left
* Percent Left
For Fixed Fee projects, services revenue allocated to those projects' tasks is determined by the [Fixed Fee Revenue Attribution](/projects/fixed-fee-revenue-attribution) method on the project, similar to [how revenue is attributed to members](/reports/accounting-reports#revenue-attribution-and-the-performance-by-member-reports) on Fixed Fee projects.
#### Performance by Project Practice
Each project can be associated with a practice. This report provides a view of high-level financial performance of a practice's projects. Included in this report:
* Project Practice Name
* Hours
* Realization Rate
* Earned Revenue
* Effective Bill Rate
* Cost
* Profit
* Margin
#### Performance by Project Type
Each project can be associated with a Project Type, as managed in Custom Data. This report provides a view of high-level financial performance of each project, grouped by type. Included in this report:
* Project Type
* Hours
* Realization Rate
* Earned Revenue
* Effective Bill Rate
* Cost
* Profit
* Margin
# Pipeline Reports
Source: https://help.ruddr.io/reports/pipeline-reports
Ruddr's Pipeline reports provide insight into opportunities, including opportunity detail and monthly summaries of created and closing deals.
For workspaces that utilize the Pipeline feature in Ruddr, the Pipeline report section is available and provides insight into opportunities.
You can access the Pipeline reports section of Ruddr by clicking the **Library** item in the **Reports** section of the main nav bar (Figure 1) on the left of the screen. Once you have accessed the reports library, you will see the Pipeline category of reports listed (Figure 2).
The following reports present differing views of pipeline data in your workspace:
#### Opportunity Detail
A list of opportunities in Ruddr, including:
* Name
* Client and Project
* Stage
* Created Date
* Expected Close Date
* Probability
* Amount
* Weighted Amount
#### Opportunities by Month
A summary of opportunities created per month and opportunities expected to close by month. This report includes a graphical representation of pipeline amount over time. Reported data includes:
* \# Opportunities Created
* \# Opportunities Closing
* Weighted Amount Created
* Gross Amount Created
* Weighted Amount Closing
* Gross Amount Closing
# Plan Reports
Source: https://help.ruddr.io/reports/plan-reports
Learn how Ruddr's Plan reports project hours, revenue, and utilization from resource allocations and billing schedules, without actuals.
For workspaces that utilize the Forecast and Variance Reports feature in Ruddr, the Plan report section is available and provides insight into hours, revenue, and utilization metrics that are derived from actuals and [Resource Allocations](/resourcing/overview-of-resourcing) in the workspace.
Plan reports provide insight into the planned performance based on resource allocations, billing schedule milestones, revenue recognition ledger entries, expenses, and other items to bill. Plan reports do not include actuals.
For more, please refer to the Help Center article on [How Planned Services Revenue is Calculated in Ruddr](/faqs-and-troubleshooting/revenue-in-ruddr/how-is-planned-services-revenue-calculated-in-ruddr).
You can access the Plan reports section of Ruddr by clicking the **Library** item in the **Reports** section of the main nav bar (Figure 1) on the left of the screen. Once you have accessed the reports library, you will see the Plan category of reports listed (Figure 2).
**Viewing Data by Unit**
Each report in the Plan report section can be grouped and viewed by unit:
* Month
* Week
* Day
By default, each report in this section is set to group and display by Month. To change this grouping, select the desired value from the **Unit** dropdown (Figure 3) in the Filters drawer.
**Filtering by Booking Type**
Plan reports include both confirmed and soft bookings by default, so your planned hours and revenue reflect all of your staffing. Three reports — Hours Plan by Project and Resource, Hours Plan by Resource and Project, and Services Revenue Plan by Resource and Project by Time Unit — also offer a **Booking Type** filter in the Filters drawer. By default both are shown; select **Confirmed** or **Soft** to narrow a report to just your committed or just your provisional staffing. For more, see [Confirmed and Soft Bookings](/resourcing/confirmed-and-soft-bookings).
The following reports present differing views of data in your workspace:
#### Hours Plan by Project and Resource
A summary of allocated hours grouped by project and the resources allocated to that project. This report will show allocated hours for members and for [resource placeholders](/workspace-administration/custom-data#resource-placeholders). Planned hours totals are available for each project.
#### Hours Plan by Resource and Project
A summary of allocated hours grouped by resource and the projects that each resource is allocated to. This includes both members and resource placeholders. Planned hours totals are available for each resource.
#### Performance Plan by Project
A summarized project performance plan, derived from resource allocations, billing schedule milestones, manual revenue recognition ledger entries, expense items, and other items to bill. This report includes the following planned metrics for projects in your workspace:
* Hours
* Revenue
* Effective Bill Rate
* Cost
* Profit
* Margin
For more on planned and forecasted revenue, please refer to this Help Center article on [How Services Revenue is Forecasted in Ruddr](/faqs-and-troubleshooting/revenue-in-ruddr/how-is-planned-services-revenue-calculated-in-ruddr).
#### Services Revenue Plan by Client and Project
Ruddr leverages [billable allocations and Fixed Fee ledger entries](/faqs-and-troubleshooting/revenue-in-ruddr/how-is-planned-services-revenue-calculated-in-ruddr) to project services revenue. These allocations must be made to a billable project role that has an associated bill rate. That planned services revenue is available in the Services Revenue Plan by Client and Project report, which provides a view of the revenue grouped by client and project. There is a summary total of planned services revenue for each client.
**Multicurrency and the Services Revenue Plan by Client and Project Report**
For workspaces that leverage Ruddr's [Multicurrency](/multicurrency/multicurrency-overview) feature, the Services Revenue Plan by Client and Project report provides the user with the ability to select the currency (Figure 4) that will be displayed (in addition to the project's currency) and also used for the CSV / Excel export.
Note that the project's currency is displayed by default, but that the selected, alternate currency is also displayed (Figure 5) if the two currencies are different.
In the CSV / Excel export, the data will be presented in the currency specified by the Currency Selector (Figure 4).
#### Services Revenue Plan by Resource and Project by Time Unit
Includes a list of all Resources and the planned services revenue, with the option to break out by Day / Week / Month. You can hover over each metric to view the following:
* Services Revenue
* Services Cost
* Services Gross Profit
* Services Gross Margin
#### Utilization Plan by Member
A projection of utilization based on members' future allocations. The utilization metrics available in this report are:
* Billable Utilization (default)
* Client Utilization
* [Productive Utilization](/projects/create-a-new-project#productive-utilization)
* Total Utilization
To switch between the various metrics, select the Metric Selector (Figure 6) above the report results.
#### Utilization Plan by Member Practice
A projection of utilization based on members' future allocations grouped by member practice. The utilization metrics available in this report are:
* Billable Utilization (default)
* Client Utilization
* [Productive Utilization](/projects/create-a-new-project#productive-utilization)
* Total Utilization
To switch between the various metrics, select the Metric Selector (Figure 6) above the report results.
# Reporting Overview
Source: https://help.ruddr.io/reports/reporting-overview
An introduction to Ruddr's report library, covering report categories, security permissions, filters, saved reports, favorites, and exports.
Ruddr reporting provides detailed insights into data that will help you manage your business. There are ten categories of reports:
* [Time Reports](/reports/time-reports)
* [Expenses Reports](/reports/expenses-reports)
* [Utilization Reports](/reports/utilization-reports)
* [Forecast Reports](/reports/forecast-reports)
* [Plan Reports](/reports/plan-reports)
* [Variance Reports](/reports/variance-reports)
* [Accounting Reports](/reports/accounting-reports)
* [Performance Reports](/reports/performance-reports)
* [Pipeline Reports](/reports/pipeline-reports)
* [Workspace Reports](/reports/workspace-reports)
### Reports Library
The Reports library of Ruddr is accessible by clicking the **Library** item in the **Reports** section of the main nav bar (Figure 1) on the left of the screen.
When accessing the reports library (Figure 2), you will enter a screen that provides access to reports across the ten categories outlined above.
You can collapse the entire list of reports down to the categories (Figure 4) by clicking on the collapse / expand button (Figure 3) at the top of the screen.
You can access reports within each category or you can search for reports by title / description using the search bar (Figure 5) at the top of the library.
Reports are listed by title. A brief description of each report is available by hovering over the tooltip (Figure 6) associated with each report. This description is queried in any search for reports as denoted above.
### Favoriting Reports
To build a list of your "favorite" reports - reports that you frequently access - you can click on the "star" icon listed next to any report. This will add the report to your Favorites list, which is the first category of reports listed at the top of the library. Every time you visit the reports library, your favorites (Figure 7) will be listed at the top for quick access. To remove a report from your favorites list, simply click on the star icon and the report will be removed.
### Reporting Basics
As an introduction, we will cover the following aspects of reporting in Ruddr. The following applies to all reports:
* [Ruddr Security Roles and Reports](#ruddr-security-roles-and-reports)
* [Report Filters](#report-filters)
* [Saving Reports](#saving-reports)
* [Exporting Report Data](#exporting-report-data)
#### Ruddr Security Roles and Reports
In Ruddr, each member is assigned a Security Role, which is a compilation of security permissions. The security roles dictate what functions within Ruddr that a member has access to. These roles also control the data that a member can see. Take bill rates, for instance - a member can be denied or granted access to see bill rates throughout Ruddr.
As such, members may be able to access certain reports but their permissions may restrict the data that is returned as part of the result set. In these cases, a notification (Figure 8) will be presented to the member at the top of the report result set.
In other cases, the member may see all results of the report query, but may have limited visibility into the data values that are returned with the results. Using the above example of bill rates, a member that has permissions to see bill rates for a project will be able to access that information through the Time Detail report. A member that does *not* have permissions to see bill rates for that same project may be able to see that project's time entries via that same Time Detail report but can not see the bill rates.
In addition to limiting the data available in accessible reports, Ruddr may also restrict a member's access to reports, or even sections of reports. Members that do not have permissions to view bill rates, project revenue, or project costs / margin do not have access to the entire Financial Reports section of Ruddr.
#### Report Filters
Each report in Ruddr can be filtered by select data values. Based on the data being presented in the report, filters are provided to help you view the report results that you are interested in. Common filters include:
* Date Range
* Client
* Project
* Member
...and many more. To access the filters when viewing a report, click on the Filters icon (Figure 9) that appears at the top-right of the reporting screen:
Clicking this icon will present the Filters drawer (Figure 10), which presents an organized view of the available filters for the report. On the Filters drawer, report filters are organized by related Ruddr entity. The most common filter groupings are:
* Client
* Project
* Member
* Time
* Expense
Date Range filters are the first filters listed in the drawer, followed by the organized filter categories. Clicking on the category will expand the category, showing the list of available filters for that category.
Some filters are "connected", in that they affect the values that are available in other filters. For instance, specifying a client in the "Client" filter will limit the available results in the "Project" filter to just those projects for the specified client.
Note that the "Date Range" filter (Figure 11) has left and right arrows. These arrows allow you to advance the date range forwards or backwards in time by the specified interval of the original filter value.
Any other filters can edited or removed by either selecting additional / alternative values from the filter control presented or by clicking the **X** to the right of the filter's value, respectively.
To see all of the values being applied by a specific filter, you can hover over the number displayed next to the filter.
#### Saving Reports
If you consistently access a report with specific filters applied, you can save that report and access it at any given time from a library of saved reports that you maintain.
Each report will have a save button (Figure 12) that will allow you to save the report as currently being viewed.
When you click on the **Save** button, you will be prompted to specify a name and description for the saved report (Figure 13).
Additionally, you will have the option to determine how you want any date filter to be applied in subsequent viewings of the saved report. There are two options:
* **Use fixed dates**: any time you view the saved report, it will always used the specified dates as applied to the report.
* **Use relative dates**: any time you view the saved report, any data filters will resolve to the relative date based on when the report is being viewed. For example, if you were to run the report in March, viewing data for "Last Month" (in this case, February) and then save the report with relative dates, when you then run the saved report in May, you would be viewing data for April.
Lastly, if you are a workspace administrator, you will be given the option to share the report with all workspace members. Note that each member's security permissions will dictate whether or not they will be able to access the report and / or specific data in the report.
##### **Accessing Saved Reports**
Saved reports can be accessed from the My Reports area of the Reports section in Ruddr (Figure 14).
When you view your reports (Figure 15), reports will be presented in two groups: **Favorites** and **Saved**.
When you view a saved report, the report's header (Figure 11) will contain the name of the saved report, the description of the saved report, and the name of the original report from which the saved report was created.
##### **Administering Saved Reports**
You can edit and delete any saved report by accessing the saved report from the saved reports library. Saved reports will have an edit button available (Figure 16), which will allow you to change particular details.
Clicking the Edit Report button will present a dialog (Figure 17), where you can edit specific details regarding the report.
Any changes that you make to the filters that have been applied to the saved report can be saved with the report by clicking the **Save** button (Figure 17).
##### **Deleting a Saved Report**
You can delete a saved report in three locations. The first is in the **Edit Report** screen (Figure 17) by clicking the **Delete** button.
Additionally, you can delete a report by selecting the three dots (Figure 18) and selecting **Delete** from the drop down of options.
The third location is within the report itself in the top right corner (Figure 19).
#### Exporting Report Data
Every report in Ruddr has two views: a report view (in the Ruddr application within an web browser) and an export view. Typically, the export view contains more data than what can be viewed within the application, as only so much information can be presented on-screen. The two, common export formats for reports in Ruddr are CSV and Excel. All time reports and the Expense Detail report can be exported to a "client-friendly" PDF format.
To export reports in Ruddr, click on the Export button (Figure 20) located at the top-right of the reporting screen. This will present a **Download Report** modal (Figure 21), through which you can initiate the download of the exported file via your browser. In cases where the file may be somewhat large due to the amount of data being exported, Ruddr will indicate that your file is being generated. Upon completion, you will be presented with a **Download** button.
# Time Reports
Source: https://help.ruddr.io/reports/time-reports
A guide to Ruddr's Time reports, including time entry detail, summaries by client, project, member, role, and task, and timesheet reports.
To gain insight into the time that is being logged in your workspace, access the Time reports section of Ruddr's report library by clicking the **Library** item in the **Reports** section of the main nav bar (Figure 1) on the left of the screen. Once you have accessed the reports library, you will see the Time category of reports listed (Figure 2).
The following reports present differing views of Time data in your workspace:
#### Project Time Statement
The Project Time Statement report provides a view of a project's time entries for the reporting period, along with the total sum of project hours for the project prior to the reporting period and through the reporting period.
#### Time Approval Summary by Member
View a summary of hours by approval status for members in your workspace. The following time aggregations are included in this report:
* Not Submitted
* Pending Approval
* Approved
* Rejected
#### Time Attachments
For workspaces that leverage the [Time Attachments feature](/time/the-week-view-for-time-tracking#time-attachments) in Ruddr, the Time Attachments report provides access to files that members have been uploaded to the [Week view](/time/the-week-view-for-time-tracking) of the Time screen. The report includes:
* Member that uploaded the attachment
* Week of time entries to which the attachment applies
* The Client and Project to which the attachment applies
* A link to the file for viewing / download
#### Time Client Approval Summary by Member
For workspaces that leverage [Client Approvals](/projects/client-approvals), this report presents a summary of hours by client approval status, grouped by member.
#### Time Entries
The most detailed source of time data in Ruddr, the Time Entries report is a listing of individual time entries in Ruddr, including:
* Date
* Member
* Client and Project
* Role
* Task
* Approval Status
* Hours
* Notes (available when clicking **Show notes** on the report)
Note that there is a "client-friendly" PDF export format in addition to the CSV and Excel formats for the Time Entries report. The PDF will contain your company logo and a Time Summary section in the report header.
In the Excel / CSV exports, a significant amount of additional data is available for the time entries. For those with the correct permissions, data such as Bill Rate, Revenue, and Labor Cost can be accessed in the export of this report.
**Multicurrency and the Time Detail Report**
For workspaces that leverage Ruddr's [Multicurrency](/multicurrency/multicurrency-overview) feature, the Time Detail report provides the user with the ability to select the currency (Figure 3) that will be used for the CSV / Excel export.
The Time Detail report export (Figure 4) will include columns for both the project's specified currency and the converted currency per the currency selector on the report. The example below shows CSV export columns for time entries on a project set for GBP with the currency selector set to USD. Both the GBP and USD values are shown in the report export.
#### Time Entries Pending Approval
This report offers a view of all time entries that are in a :Pending Approval" status. The report also lists the name of the member(s) who need to approve each time entry. Included in this report are the following columns:
* Date
* Member / Member Type
* Client and Project
* Role and Task (if applicable)
* Approver(s)
* Hours
#### Time Off by Member
View a summary of Time Off hours, grouped by Member and Time Off Type.
#### Time Summary by Client
This report provides access to a breakdown of hours by Time Type for clients in your workspace. Included in this report is a summary of the following:
* Client
* Client Billable Hours
* Client Non-billable Hours
* Internal Hours
* Total Hours
#### Time Summary by Client and Member
A similar report to Time Summary by Client, with an additional grouping of hours by member. For any client and member in your workspace, view Client Billable, Client Non-Billable, and Internal Hours.
#### Time Summary by Client and Project
A similar report to Time Summary by Client, with an additional grouping of hours by project. For any project in your workspace, view Client Billable, Client Non-Billable, and Internal Hours.
#### Time Summary by Client by Time Unit
This report can be used to see the hours on a client broken down by time unit:
* Month
* Week
* Day
By default, the Time Summary by Client by Time Unit report is set to group and display by Month. To change this grouping, select the desired value from the **Unit** dropdown (Figure 5) in the Filters drawer.
The report includes the following summary of hours by unit:
* Client
* Hours per Unit
* Total Hours
#### Time Summary by Member
When looking for a breakdown of hours for Members in your workspace, access this report, which includes:
* Member
* Member Type
* Client Billable Hours
* Client Non-billable Hours
* Internal Hours
* Time Off Hours
* Total Hours
* Capacity for the Selected Period
* Missing Time
This report helps administrators track down Missing Time in the workspace. Missing Time is the difference between the member's Capacity and the total number of hours entered into Ruddr for the period. Any members that are missing time will have a non-negative number of hours in this column.
#### Time Summary by Member and Client
A summary of hours for each member with an additional grouping by client. For each member and client in your workspace, see a summary of hours, including Client Billable, Client Non-Billable, and Internal hours. The following columns are included in this report:
* Member
* Client
* Client Billable Hours
* Client Non-billable Hours
* Internal Hours
* Total Hours
#### Time Summary by Member and Project
A summary of hours for each member broken down by project. This report displays the following:
* Member
* Client Billable Hours
* Client Non-billable Hours
* Internal Hours (for projects associated with the workspace's internal client)
* Total Hours
#### Time Summary by Member and Project and Task
A next-level view of time by member and project broken down by task. The following columns are included in the report:
* Member
* Project / Task
* Client Billable Hours
* Client Non-billable Hours
* Internal Hours (for projects associated with the workspace's internal client)
* Total Hours
#### Time Summary by Member by Time Unit
This report can be used to see the hours for a member broken down by time unit:
* Month
* Week
* Day
By default, the Time Summary by Member by Time Unit report is set to group and display by Month. To change this grouping, select the desired value from the **Unit** dropdown (Figure 6) in the Filters drawer.
The report includes the following summary of hours by unit:
* Member
* Hours per Unit
* Total Hours
#### Time Summary by Member Practice
Summary of hours by member practice, including the following:
* Member Practice
* Client Billable Hours
* Client Non-Billable Hours
* Internal Hours
* Time Off Hours
* Total Hours
If your workspaces uses practices, this report provides insight into the types of hours being entered by members belonging to a particular practice. Practices can be created / managed in the [Custom Data](/workspace-administration/custom-data) section of Workspace Settings.
#### Time Summary by Project
View a breakdown of hours logged to projects in your workspace, along with each project's Hours budget information. Hours are categorized by Time Type and budget information is included as such:
* Project (and Client)
* Client Billable Hours
* Client Non-billable Hours
* Internal Hours
* Total Hours
* Project Budget Hours
* Project Budget Hours Left
* Percent Budget Hours Left
#### Time Summary by Project and Member
Similar to the [Time Summary by Project](#time-summary-by-project) report, with an additional grouping by member. This report also includes project hours budget information. For projects that have a [Detailed project budget](/projects/create-a-project-budget#detailed-budget) and are not using [project roles](/projects/project-roles), with hours budgets assigned to individual team members, the hours budget information will be displayed at a member level.
#### Time Summary by Project and Member and Task
A next-level look at time by project and member, with a grouping at a project task level.
#### Time Summary by Project and Role
For projects that use [project roles](/projects/project-roles), this report provides a summary hours for each project, grouped by project role. For projects that have either a Detailed project budget or a Detailed budget aggregated from tasks, this report provides hours budget insights at a role level:
* Project (and Client)
* Client Billable Hours
* Client Non-billable Hours
* Internal Hours (for internal projects)
* Total Hours
* Role Budget Hours
* Role Budget Hours Left
* Percent Role Budget Hours Left
#### Time Summary by Project and Role and Task
A next-level look at time by project and role, with a grouping at a project task level.
#### Time Summary by Project and Task
A summary of hours for projects that have [project tasks](/projects/project-tasks). For tasks that have an associated task hours budget, hour budget information is available.
* Project (and Client)
* Client Billable Hours
* Client Non-billable Hours
* Internal Hours (for internal projects)
* Total Hours
* Task Budget Hours
* Task Budget Hours Left
* Percent Task Budget Hours Left
#### Time Summary by Project by Time Unit
This report can be used to see the hours on a project broken down by time unit:
* Month
* Week
* Day
By default, the Time Summary by Project by Time Unit report is set to group and display by Month. To change this grouping, select the desired value from the **Unit** dropdown (Figure 7) in the Filters drawer.
The report includes the following summary of hours by unit:
* Project (and Client)
* Hours per Unit
* Percentage of Monthly Budgeted Hours\*\*\*\*\*
* Total Hours
**\*** When viewing the report by Month, Fixed Monthly projects that have a monthly budget will have an additional Percentage of Monthly Budgeted Hours value listed under the Hours per Unit figure in each column of the report. Additionally, when the user hovers over these values, a pop-up modal will display with the following information:
* Billable Worked
* Non-Billable Worked
* Total Worked
* Billable Budget
* Non-Billable Budget
* Total Budget
* Total Budget Used
#### Time Summary by Project Type
Project Types in Ruddr are defined in the [Custom Data](/workspace-administration/custom-data) area of Workspace Settings and can be leveraged to classify projects in your workspace, enabling you to analyze the performance of specific segments of your project portfolio. This report provides a summary of hours grouped by project type.
* Project Type
* Client Billable Hours
* Client Non-billable Hours
* Internal Hours
* Total Hours
#### Time Summary by Task and Role and Member by Time Unit
Ability to view project hours by task, role and member. You are able to switch the time unit between the below options:
* Month
* Week
* Day
#### Timesheets
A summary of the timesheets that have been submitted in your workspace, including:
* Period
* Submitted On
* Member
* Member Type
* Hours
* Capacity
Exports of this report include additional member fields, along with the member that submitted each timesheet. For workspaces that leverage the [Timesheet Attestation feature](/time/timesheet-attestation), exports also indicate whether each timesheet was attested and include the attestation text and the member's signature.
#### Unsubmitted Timesheets
For admins looking to track down timesheets that have not been submitted, this report provides a list members, per period, and the number of hours associated with unsubmitted timesheets.
* Period
* Member
* Member Type
* Hours
* Capacity
# Utilization Reports
Source: https://help.ruddr.io/reports/utilization-reports
Understand Ruddr's Utilization reports, which track billable, client, productive, and total utilization by time unit, member, and practice.
For workspaces that utilize the Utilization Tracking feature in Ruddr, the Utilization report section is available and provides insight into utilization metrics that are being logged in the workspace. There are four utilization metrics tracked in Ruddr:
* Billable Utilization
* Client Utilization
* [Productive Utilization](/projects/create-a-new-project#productive-utilization)
* Total Utilization
You can access the Utilization reports section of Ruddr by clicking the **Library** item in the **Reports** section of the main nav bar (Figure 1) on the left of the screen. Once you have accessed the reports library, you will see the Utilization category of reports listed (Figure 2).
When analyzing the data in utilization reports, it will be important to understand how [utilization capacity](#utilization-capacity) and [adjusting for time off](#adjusting-for-time-off) factors in.
#### **Utilization Capacity**
Each member can have a [capacity period](/workspace-administration/member-profile#capacity-periods) set on their member profile. This capacity represents the days and hours that a member is available for work. Utilization capacity is the basis for utilization calculations and is determined by the difference between a member's capacity in a period and any unpaid time off that has been taken in that period.
#### **Adjusting for Time Off**
Each utilization report in Ruddr can be adjusted for time off, meaning that the capacity leveraged in utilization calculations is reduced by the number of Time Off hours taken during the period. To apply this adjustment, set the **Adjust for Paid Time Off** setting (Figure 3) found just above the report results on each utilization report to "Yes".
Note that you can set a workspace setting to have utilization reports default to the **Adjust for Time Off** view. For more, please refer to the [Utilization Settings](/workspace-administration/general-workspace-settings#utilization-settings) section of [General Workspace Settings](/workspace-administration/general-workspace-settings).
The following reports present differing views of Utilization data in your workspace:
#### Utilization by Time Unit
A view of utilization in your workspace by time unit (Month, Week), including a look at available capacity and total hours. In addition to providing this data in the report, the Utilization by Time Unit report has an accompanying line graph of the utilization trend over the period (Figure 4).
This report includes:
* Time Period (Unit)
* Capacity
* Billable Hours
* Client Hours
* Productive Hours
* Total Hours
* Billable Utilization
* Client Utilization
* Productive Utilization
* Total Utilization
#### Utilization by Member
A view of all utilization metrics for each member in your workspace, including a view of the member's target and how well they performed against that target.
* Member
* Member Type
* Capacity
* Billable Hours
* Billable Utilization
* Client Utilization
* [Productive Utilization](/projects/create-a-new-project#productive-utilization)
* Total Utilization
* Target Billable Utilization
* Target Attainment
#### Utilization by Member Practice
Summary of utilization by member practice, including the following:
* Member Practice
* Capacity
* Billable Hours
* Billable Utilization
* Client Utilization
* [Productive Utilization](/projects/create-a-new-project#productive-utilization)
* Total Utilization
* Target Billable Utilization
* Target Attainment
If your workspaces uses practices, this report provides insight into the utilization attributed to members belonging to a particular practice. Practices can be created / managed in the [Custom Data](/workspace-administration/custom-data) section of Workspace Settings.
# Variance Reports
Source: https://help.ruddr.io/reports/variance-reports
Ruddr's Variance reports compare planned hours and utilization against actuals, grouped by member, project, resource, and role.
For workspaces that utilize the Forecast and Variance Reports feature in Ruddr, the Variance report section is available and provides insight into hours, revenue, and utilization metrics that are derived from actuals and [Resource Allocations](/resourcing/overview-of-resourcing) in the workspace.
Variance reports display the difference between the planned performance and actual performance.
You can access the Variance reports section of Ruddr by clicking the **Library** item in the **Reports** section of the main nav bar (Figure 1) on the left of the screen. Once you have accessed the reports library, you will see the Variance category of reports listed (Figure 2).
**Viewing Data by Unit**
Each report in the Variance report section can be grouped and viewed by unit:
* Month
* Week
* Day
By default, each report in this section is set to group and display by Month. To change this grouping, select the desired value from the **Unit** dropdown (Figure 3) in the Filters drawer.
The following reports present differing views of data in your workspace:
#### Hours Variance by Member and Project
The variance between planned (allocated) hours and worked (actual) hours, grouped by Member and Project. The total variance of a unit is available for each member in the workspace, with a breakdown of variance by projects on which the member was a participant or to which they were allocated.
#### Hours Variance by Project and Resource
The variance between planned hours and worked hours grouped by project and resource. The total variance for each is project is presented, along with a breakdown of variance for each member on the project. This report will also present any hours that were allocated to [resource placeholders](/workspace-administration/custom-data#resource-placeholders).
#### Hours Variance by Project and Role
A look at the variance between planned hours and worked hours grouped by project and project role. If hours were logged on a project without a role assignment, or if an allocation was made to the project without a role, a row labeled "No Row Assignment" will be present.
#### Utilization Variance by Member
The variance between planned utilization and actual utilization, grouped by Member. In this report, you can view variance for the following utilization metrics:
* Billable Utilization
* Client Utilization
* Productive Utilization
* Total Utilization
* Target Attainment
# Workspace Reports
Source: https://help.ruddr.io/reports/workspace-reports
Browse Ruddr's Workspace reports listing members, clients, contacts, projects, tasks, roles, project health, and history events.
The Workspace report section provides access to lists of various entities in Ruddr and their respective settings / properties:
* Members
* Clients
* Client Contacts
* Projects
* Project Team Members
* Project Tasks
* Project Roles
* Project Health by Project
* History
You can access the Workspace reports section of Ruddr by clicking the **Library** item in the **Reports** section of the main nav bar (Figure 1) on the left of the screen. Once you have accessed the reports library, you will see the Workspace category of reports listed (Figure 2).
#### Client Contacts
View a list of client contacts grouped by client, including:
* Client Name
* Contact Name
* Contact Title
* Contact Info
* Contact Email
* Contact Office Phone
* Contact Mobile Phone
#### Clients
A list of clients in your workspace. This report defaults to exclude archived clients by setting the **Client Archived** filter to "No". This report includes:
* Client Name
* Client Practice
* Client Relationship Owner
* Client Created On Date
#### History
The History report provides insight into any actions that have been tracked on the following items:
* Allocations
* Clients
* Client Approvals
* Credit Notes
* Expense Items
* Invoices
* Projects
* Time Entries
The report includes event time, entity type, event type, the member that took action, and the source of the event (Ruddr Web App, Ruddr API, CSV Import, Integration, Mobile App, etc.).
#### Members
This report provides a list of members in your workspace. The report defaults to include Active members only by applying the **Member Active** filter to a value of "Yes". This report includes the following member properties:
* Name
* Type
* Billability
* Security Role
* Status
* Manager
* Last Active Date
#### Project Health by Project
The Project Health by Project report displays a list of projects and their current project health scoring, as calculated from the most recent Project Health Report. This report provides the following project health details:
* Project Name
* Client Name
* Budget Health Rating
* Schedule Health Rating
* Client Satisfaction Rating
* Team Satisfaction Rating
* Project Health Score
* Project Health Report Date
#### Project Roles
This report presents a list of projects/clients grouped by roles. The report defaults to exclude archived projects by setting the **Project Archived** filter to "No" and also excludes inactive roles by setting the **Project Role Status** filter to "Active". This report includes:
* Project/Client
* Status
* Assigned To
* Bill Rate
* Hours
* Services Revenue
#### Project Tasks
This report presents a list of project tasks grouped by project. The report defaults to exclude archived projects by setting the **Project Archived** filter to "No" and also excludes archived tasks by setting the **Task Archived** filter to "No". This report includes:
* Project Name
* Client Name
* Task Name
* Task Status
* Start Date
* End Date
* Assigned To
* Hours (Actual and Budget)
* Revenue (Actual and Budget)
#### Project Team Members
Each project and its corresponding list of team members is available via this report. The report defaults to exclude archived projects by setting the **Project Archived** filter to "No". Included in this report are the following values:
* Project Name
* Client Name
* Member Name
* Team Assignment Status
* Member Type
* Project Role(s)
* Member Practice
* Member Discipline
#### Projects
A list of projects in your workspace. This report defaults to exclude archived projects by setting the **Project Archived** filter to "No". This report includes:
* Project Name
* Client Name
* Project Type
* Status
* Project Admin
* Billing Type
* Practice
* Created On Date
For more on Ruddr's Project Health Reporting feature, please refer to the [Project Health Reporting](/projects/project-health-reporting) article in the Ruddr Help Center.
# Allocations List
Source: https://help.ruddr.io/resourcing/allocations-list
Browse, filter, sort, export, and bulk-edit every resource allocation from a single flat list under Resources.
The **Allocations** list, found under **Resources** in the nav bar, shows every member and placeholder allocation — including time off — as one row per allocation (Figure 1). It's a flat, filterable alternative to the [Schedule](/resourcing/schedule)'s calendar-style grid, useful when you want to search, sort, or act across allocations regardless of which member or project they belong to.
This screen is only available to workspace members whose [security role](/workspace-administration/security-roles) has the **View resource allocations** permission. By default it shows the next 12 months of allocations, soonest first, and it only lists the allocations your security role and project-level permissions allow you to see.
## Filtering the List
Click the filters button at the top-right of the screen to open the filters drawer (Figure 2). You can filter by:
* **Date Range** - All Dates, a rolling window (Next 3 / 6 / 9 / 12 Months), or a custom range.
* **Client** and **Project**
* **Member** and resource attributes such as **Resource Type**
* **Booking Type** - see [Confirmed and Soft Bookings](/resourcing/confirmed-and-soft-bookings)
* **Billable Type**
The active date range and a few of the most commonly used filters also appear as quick-access controls above the list, so you don't need to open the drawer to change them. Your filter and sort selections are remembered the next time you return to the screen.
## Sorting and Columns
Click a sortable column header to sort the list by that column; click again to reverse the direction. Use the columns button (Figure 3) to choose which columns are shown — **Resource** and **Assignment** are always shown, and you can add or remove columns such as **Role**, **Task**, **Booking Type**, **Billable Type**, **Start**, **End**, **Hours**, and **Total Allocated**. Your column selection is remembered per workspace the next time you visit the list.
## Opening, Creating, and Editing Allocations
Click any row to open that allocation. If your security role has the **Administer resource allocations** permission, this opens the allocation for editing; otherwise it opens in view-only mode. To create a new allocation, click the **+** button at the top-right of the screen — this requires the same **Administer resource allocations** permission and opens the same drawer used to [create a resource allocation](/resourcing/create-a-resource-allocation) from the Schedule.
## Bulk Actions
Members with the **Administer resource allocations** permission can select multiple rows using the checkboxes on the left of the list, then use the bulk actions bar to act on all of them at once (Figure 4):
* **Set Booking Type** - Set the selected allocations to Confirmed or Soft. Allocations already at the target booking type are skipped.
* **Reassign Resource** - Move the selected allocations to a different member or placeholder.
* **Shift Dates** - Move the selected allocations' start and end dates forward or backward. Allocations whose dates wouldn't change as a result are skipped.
* **Delete** - Delete the selected allocations.
Unlike the equivalent actions on the Schedule, bulk actions from the Allocations list aren't limited to a single project — you can select and act on allocations across different members, placeholders, and projects in one pass. Each bulk action reports how many allocations succeeded, were skipped, or failed, and the change is recorded in each allocation's history.
## Exporting the List
Click the export button (Figure 5) to download the current filtered list as CSV or Excel. The export includes every allocation that matches your active filters (not just the rows currently loaded on screen) plus a few columns not shown in the list itself, such as project and client codes, resource location, notes, and created and modified timestamps. If your security role doesn't include visibility into project bill rates, bill-rate columns are omitted from your export.
# Assign Allocated Members to Project
Source: https://help.ruddr.io/resourcing/assign-allocated-members-to-project
How to convert members with project allocations into assigned project team members, from either the Resources screen or the project dashboard.
In Ruddr, you can allocate project hours to members that are not assigned to the project. You may frequently do this as a temporary way to account for backlogged hours or perhaps you want to allocate someone to a Tentative project that has yet to start. In these types of scenarios, you want to create these allocations without actually assigning them to a project.
When this done, Ruddr provides a mechanism for you to assign members to projects that otherwise have allocations to those projects. With this process, it will add any allocated members to the project as team members if not already assigned.
You can do that in two places:
* Allocation tab under Resources (Figure 1).
* Allocations tab under the project (Figure 2)
In the Resources tab under Allocations, find your project. Select the three dots next to the project name and select **Assign Allocated Members to Project**.
The second option is to update in the allocations tab under the project dashboard (Figure 2).
Once you have changed them from an allocated to assigned resource, they will also be added as a team member to the project and can code time to the project.
# Confirmed and Soft Bookings
Source: https://help.ruddr.io/resourcing/confirmed-and-soft-bookings
Understand how confirmed and soft bookings work in Ruddr, where soft bookings appear in forecasts, and how to set or filter by booking type.
Every resource allocation in Ruddr has a **booking type** that indicates how committed the assignment is. An allocation is either **Confirmed** (the default) or **Soft**. A soft booking represents a provisional plan — a resource you expect to staff but have not yet committed to the work. This lets you plan provisional staffing without it appearing on the assigned member's day-to-day screens by default, while still seeing its impact in your forecasts.
## Confirmed vs. Soft
A **Confirmed** booking is a committed assignment. This is the default for every new allocation, and it behaves exactly as resource allocations always have in Ruddr.
A **Soft** booking is a provisional assignment — the resource is likely, but not yet committed. Soft is *staffing* uncertainty, not *revenue* uncertainty: the work and its associated revenue are still expected to happen, you simply have not finalized who will deliver it. For this reason, soft bookings are still included in your planning and forecasting metrics by default.
## Where Soft Bookings Appear
Because a soft booking reflects provisional staffing rather than uncertain work, it is **included by default** wherever Ruddr forecasts staffing and revenue:
* [Plan reports](/reports/plan-reports), forecast reports, and variance reports
* The project dashboard and executive dashboard
* Revenue recognition
This keeps your forecasts intact as you reassign placeholders to provisional resources — the projected hours, cost, and revenue do not change simply because a booking is soft.
Soft bookings are **excluded** from the surfaces that are meant to reflect committed work only:
* The allocations shown on the week view of the **Time** screen
* Personal dashboard widgets
By default, soft bookings are also hidden from **My Allocations** in the Home area. A Workspace Admin can enable **Show soft allocations on the My Allocations screen** in [Allocation Settings](/workspace-administration/general-workspace-settings#allocation-settings) to surface them there as well, where they appear faded as they do on the Schedule.
On the Schedule, soft bookings are shown faded (at reduced opacity) so you can distinguish them from confirmed bookings at a glance. Hovering over an allocation displays its booking type.
## Setting the Booking Type
You can set the booking type when you [create an allocation](/resourcing/create-a-resource-allocation) or edit an existing one — the **Booking Type** field on the allocation drawer lets you choose Confirmed or Soft.
You can also convert bookings in bulk. From the **Projects** view, the three-dot menu on a project — or on an individual resource within a project — lets you set the booking type for all of those allocations at once, with the option to include past allocations or to limit the change to current and future ones. For more, see [Manage Resource Allocations](/resourcing/manage-resource-allocations).
A [time off](/resourcing/time-off-and-resource-allocations) allocation you create manually on the Schedule or the [Allocations List](/resourcing/allocations-list) can be set to Confirmed or Soft, like any other allocation. Time off that Ruddr generates automatically — from a member's time entries or from holidays — is always Confirmed.
## Filtering by Booking Type
The Schedule, the Allocations list, and the plan reports that support allocation filters include a **Booking Type** filter. By default both confirmed and soft bookings are shown; select **Confirmed** or **Soft** to narrow the view. This lets you focus on just your committed staffing, or review only your provisional plans, without changing the underlying allocations.
# Create a Resource Allocation
Source: https://help.ruddr.io/resourcing/create-a-resource-allocation
Walk through creating a resource allocation in Ruddr, including allocation methods, booking types, placeholders, and cloning similar allocations.
Resource allocations can be created from either the Members view or the Projects view of the Schedule. In order to create a new resource allocation, you must have the appropriate permission on your [security role](/workspace-administration/security-roles). To create a new resource allocation, simply click the plus button at the top-right of the screen (Figure 1) to open the New Allocation drawer. (Figure 2)
Note that you can also create resource allocations from the Allocations tab of the project dashboard, or from the **+** button on the [Allocations List](/resourcing/allocations-list) screen.
The following fields are available on the New Allocation drawer:
* **Resource Type** - You must select whether this allocation is for a workspace member or a placeholder. Placeholders are used when you aren't sure who will be assigned to the work.
* **Member** - If the Resource Type is set to Member, you will select the member in this drop-down.
* **Placeholder** - If the Resource Type is set to Placeholder, you will select the placeholder in this drop-down.
* **Assignment Type** - The Assignment Type can either by Project or Time Off. For more on Time Off allocations, please refer to the Ruddr Help Center article [Time Off and Resource Allocations](/resourcing/time-off-and-resource-allocations).
* **Time Off Type** - If the Assignment Type is set to Time Off, you must select the type of time off.
* **Project** - If the Assignment Type is set to Project, you must select the project for this allocation.
* **Role** - If the selected project uses roles, you will be required to select the role for the allocation. Note that if you are creating an allocation for a member and that member is assigned to a single role on the project, that role will automatically be selected by default. You will have the option to create the allocation for any role on the project.
* **Task** - If the selected project uses tasks, you can optionally select the task.
* **Notes** - You can optionally provide notes about this allocation.
* **Start Date** - The start date of the allocation.
* **End Date** - The end date of the allocation.
* **Allocation Method** - Choose from one of three methods for specifying the hours allocated to a resource
* **Hours per Day / Week / Month** - (Figure 3) The number of hours per day or week or month for the allocation. Note that hours will only be applied to days of the week where the member has a capacity set within workspace settings. When this method is applied, the following options will be displayed:
* **Total Hours** - (Figure 4) The total number of hours to be allocated to the resource over the specified period of time. When a number of hours are provided for the allocation, Ruddr will automatically allocate the hours for the specified member based on their capacity. When this method is applied, the following options are available:
* **Percentage of the Member's Capacity** - (Figure 5) Hours will be allocated on a daily basis according to the capacity of the member for which the allocation is being created. If a member has a daily capacity of 4 hours, then a 50% allocation using this method will result in 2 hours per day being allocated. When this method is applied, the following options are available:
* **Allocate on days when the member has time off** - Ruddr's resource allocation feature is designed to automatically account for holidays and Time Off by withholding allocations on those days. With this setting applied on an individual allocation, Ruddr will allocate time to day where the member has a full day of time off scheduled.
* **Booking Type** - Choose whether this allocation is **Confirmed** (the default) or **Soft**. A soft booking is a provisional assignment — the resource is likely but not yet committed. For more, see [Confirmed and Soft Bookings](/resourcing/confirmed-and-soft-bookings).
**Multicurrency**
Note that when Ruddr's multicurrency feature is turned on, Placeholders can only be assigned to projects when the placeholder's currency for Average Bill Rate matches the project's currency. For more on Resource Placeholders, please refer to the [Custom Data](/workspace-administration/custom-data#resource-placeholders) article in the Ruddr Help Center.
**Adding a Similar Allocation**
If you need to add a new allocation that is similar to an existing one, simply click on any blank cell on that existing allocation row (Figure 6). Doing so will bring up the New Allocation drawer with fields defaulted to match the existing allocation. You can then make any needed changes to the allocation and click the **Save & Close** button.
Additionally, you can click on any existing allocation and select the **Clone** menu option to create an identical copy of the allocation which you can then move, resize, or edit.
**Adding a New Resource Placeholder**
If you do not have the Resource Placeholder needed, you can add a new Resource Placeholder from the Allocation screen. By clicking the + (Figure 7) next to the Placeholder header, a drawer will open, allowing you to add the needed information. (Figure 8)
# Manage Resource Allocations
Source: https://help.ruddr.io/resourcing/manage-resource-allocations
How to edit, clone, split, reassign, shift, and delete resource allocations in Ruddr using the allocations grid and its context menu.
This article covers the calendar-style grid, labeled **Schedule** under **Resources** in the nav bar (it was previously named "Allocations"). To act on many allocations at once regardless of project, see the bulk actions in [Allocations List](/resourcing/allocations-list) instead.
The Schedule (Figure 2) in Ruddr defaults to showing all allocations grouped by workspace member. This screen is only available to workspace members who have access to resource allocations via their [security role](/workspace-administration/security-roles). When a member has those permissions, the member will see a **Resources** menu item (Figure 1) in the nav bar, with **Schedule** and **Allocations** as its two sub-items.
In the default allocations view (Figure 2), the workspace members will be listed down the left side of the screen. When you expand a member, you will see all of the projects assigned to that member on the left and the allocations to the right in the grid.
For more on the various views of the Schedule, please refer to the [Schedule](/resourcing/schedule) article in the Ruddr Help Center.
Members with edit resource allocations permissions can [create allocations](/resourcing/create-a-resource-allocation) and also take various actions on existing allocations via the allocations context menu.
### The Allocations Context Menu
When you expand a member or a project row on the grid, you will see one or more individual allocations (Figure 3). These will show the project role and task (if those exist) as well as the number of hours per day and the total number of allocated hours.
Clicking on the allocation will bring up the allocation context menu (Figure 4).
Actions that are available via the context menu include:
* View
* [Edit](#edit-allocations)
* [Clone](#clone-an-allocation)
* [Split](#split-an-allocation)
* [Split by Period (Day / Week / Month)](#split-an-allocation-by-period)
* [Remove Overlapping](#remove-overlapping-allocations)
* [Delete](#delete-an-allocation)
#### Edit Allocations
Clicking the **Edit** option in the context menu (Figure 4) will open the **Edit Allocation** drawer (Figure 5) which will show you the allocation details and allow you to edit or delete the allocation. Note that your security role must have the proper permission in order to modify resource allocations.
In addition to editing the allocation from the drawer, an allocation can be extended or shortened by grabbing the "handle" (Figure 6) at the beginning or ending of the allocation and then dragging the handle forward or backwards to extend or shorten the allocation.
#### Clone an Allocation
Often times, you may want to create an allocation that is very similar to an existing allocation. Perhaps you want to create the same allocation but assign that to a different member. Or, perhaps you want to create an allocation that is similar to another but need to change the assigned task.
To quickly create a copy of an existing allocation, click on an allocation (Figure 3) and select **Clone** from the context menu (Figure 4). An exact copy of that allocation will be created and displayed (Figure 7) in the allocations grid.
#### Split an Allocation
In the event that you need an existing allocation to have different settings depending on the timeframe, you can split a single allocation into two allocations. To do this, hover over the allocation on the date where you want to split it. As you click on the allocation, you will see a dotted line (Figure 8) that represents where the allocation will be split. If that is indeed where you want to split the allocation, select **Split** from the context menu (Figure 4).
Taking this action will create two allocations from the single allocation, as shown below (Figure 9).
#### Split an Allocation by Period
When [creating an allocation](/resourcing/create-a-resource-allocation), you can specify whether you want to allocate hours per day, per week, or per month. Based on that selection, you can split a single allocation that spans an extended period into multiple allocation records. An allocation can only be split by its own period:
* An allocation created for a number of hours per month can be split by **Month**.
* An allocation created for a number of hours per week can be split by **Week**.
* An allocation created for a number of hours per day can be split by **Day**.
To split an allocation by period, click on the allocation and select corresponding **Split by** option from the context menu.
#### Remove Overlapping Allocations
In some cases, you may want to ensure that resources do not have competing allocations, where one allocation "overlaps" another. In the below example (Figure 10), one allocation to an client billable project starts two weeks prior to an allocation for an internal project ending. In this scenario, you may want to prevent the internal allocation from overlapping the billable assignment. To accomplish this, and to better align the allocations with a member's capacity, you can choose to remove the overlapping allocation by clicking on the allocation you want to *keep* and selecting **Remove Overlapping** from the context menu (Figure 4).
By clicking on the billable allocation, shown in green, and choosing **Remove Overlapping** in the context menu, the internal allocation, shown in yellow, will be "shortened" (Figure 11) and will no longer overlap the chosen, billable allocation.
#### Reassigning an Allocation
To reassign an allocation, you will need to be under the Project view. Once you expand a project, you will select the 3 dotted lines. A pop up will appear to Reassign Allocations. (Figure 12)
A screen will appear (Figure 13) for you to either reassign to another member or you can move this allocation to a placeholder spot. Once complete, you will be able to submit and the allocation and all the details will move.
#### Shift Allocation
To shift an allocation, you will need to be in the Project view. Once you expand a project, you will select the 3 dotted lines. A pop up will appear to Shift All Allocations. (Figure 14)
You will then be prompted to determine how the allocations will be shifted. (Figure 15) You will have the option on this screen to include past allocations or to only shift allocations that span current and future periods.
#### Set Booking Type
From the **Projects** view, you can convert the [booking type](/resourcing/confirmed-and-soft-bookings) for all of a project's allocations at once. Expand a project, select the three dots next to the project, and choose **Set All Allocations to Soft** or **Set All Allocations to Confirmed**. The confirmation dialog includes an **Update past allocations** checkbox — when it is left unchecked, only allocations ending today or later are updated.
You can also convert the allocations for a single resource within a project. Expand the project, open the three-dot menu on that member or placeholder row, and choose **Set Allocations to Soft** or **Set Allocations to Confirmed**. This bulk action is available from the Projects view only.
#### Delete an Allocation
To delete an allocation, you can take either of two actions:
1. Click on an allocation and select **Delete** from the context menu.
2. Click on an allocation and select **Edit** from the context menu. On the **Edit Allocation** drawer (Figure 5), click the **Delete** button to delete the allocation.
# Overview of Resourcing
Source: https://help.ruddr.io/resourcing/overview-of-resourcing
Learn the business benefits of resourcing in Ruddr, how to enable the Resource Allocations feature, and the permissions that control access.
Resourcing in Ruddr involves aligning future work assignments to workspace members. This enables you to project the amount of work the organization will need to deliver in the future and identify the people and skills needed to do the work. Effective resourcing helps your organization maximize billable utilization and deliver optimal revenue performance.
Resourcing is increasingly vital as an organization scales its headcount. With small organizations, a formal resourcing system may be unnecessary, as the leadership can manage resource allocation using a spreadsheet. But, when a team grows to dozens or hundreds of members, a more robust resourcing system is needed.
The primary business benefits of a proper resource management system are:
* **Optimal Revenue Generation** - Resourcing helps ensure that all team members have enough work. This enables the organization as a whole to achieve its billable utilization and revenue goals for the period.
* **Proactive Recruiting** - Resourcing helps you understand the future demand on your resource supply for months into the future. This information informs internal recruiters as to the specific skills and roles needed by the organization.
* **Higher Client Satisfaction** - Without a resourcing system, new projects sometimes don't start on time because team members are still working on other projects. With a resourcing system in place, projects are more likely to start on time which protects client satisfaction.
* **Lower Turnover and Better Morale** - When an organization lacks a resourcing system, it periodically creates "feast or famine" situations for the team members. Sometimes team members have more work than they can possibly deliver and other times they have very little work. Both of these extremes result in lower morale and higher turnover.
## Enabling Resourcing in Ruddr
The resourcing feature in Ruddr can be enabled or disabled within the **Features** section (Figure 1) of workspace **Settings**. Since smaller organizations may not need resourcing capabilities, Ruddr allows this feature set to be turned off. To enable or disable resourcing, simply click the **Resource Allocations** toggle (Figure 2) in the **Features** section.
When resourcing is turned on, a new Resources navigation option (Figure 3) will show in the nav bar on the left of the screen, with **Schedule** and **Allocations** as its two sub-items. This nav bar option will only be visible to workspace members who are assigned a [security role](/workspace-administration/security-roles) that has access to resourcing. Clicking this nav option will bring up the Schedule (Figure 4) by default; from there you can switch to the [Allocations List](/resourcing/allocations-list).
Within **Resources**, there are two ways to browse allocations: the [Schedule](/resourcing/schedule), the calendar-style grid shown above (see also [Manage Resource Allocations](/resourcing/manage-resource-allocations)), and the [Allocations List](/resourcing/allocations-list), a flat, filterable, exportable table. Both use the permissions described below.
## Resource Allocation Permissions
There are two security role settings that determine if a workspace member can view or administer resource allocations. These settings exist within the **Resource Allocation Permissions** section (Figure 5) of the security role definition. A Workspace Admin can access the workspace security roles by navigating to **Settings** from the nav bar and clicking on the [**Security Roles**](/workspace-administration/security-roles) section.
The two security role options relevant to resource allocation are shown below.
When a workspace member's assigned security role has the **View resource allocations** permission checked, that member will be shown the new **Resources** nav bar option (Figure 3), with both the **Schedule** and **Allocations** sub-items available. The member will be able to view all resource allocations across all members and projects within the workspace, but will not be able to create, edit, or delete allocations. The member will also be able to view allocations on the **Allocations** tab of each [project dashboard](/projects/project-dashboard).
To create, edit, or delete resource allocations, a member's security role must have the **Administer resource allocations** permission checked. These allocations can be edited from the Schedule (Figure 4), the [Allocations List](/resourcing/allocations-list), or the project dashboard.
# Resource Placeholders
Source: https://help.ruddr.io/resourcing/placeholder-resources
Use resource placeholders to allocate project hours before a member is identified, set placeholder rates and costs, and reassign allocations later.
Resource placeholders are leveraged to allocate project hours when you have yet to identify a specific member for that work. Placeholders can help you account for hours on a tentative project, adjust to a sudden change in project resources, or signify a need for a project extension.
## Creating a Resource Placeholder
You can create placeholders in [Custom Data](/workspace-administration/custom-data) in the Settings section (Figure 1) or from within the Schedule (Figure 2).
You can create Placeholder options under the Allocation tab by clicking the "+" sign next to the Placeholder header. (Figure 2) A drawer will open for you to input the Placeholder information (Figure 3).
### Rates and Costs for Resource Placeholders
When creating resource placeholders, you can provide an Average Bill Rate and / or an Average Cost per Hour.
When Ruddr calculates planned services cost on a project, it will include resource placeholder allocations when an Average Cost per Hour has been provided.
Likewise, when considering planned Time and Materials Revenue, Ruddr can leverage the placeholders' Average Bill Rate in cases where the allocation itself is not already associated with a bill rate. This would most often be the case on projects that do not use [project roles](/projects/project-roles).
## Creating Allocations for a Placeholder
Allocating a placeholder on a project is as easy as creating a regular allocation and selecting "Placeholder" as the Resource Type. (Figure 4)
Once the type is set to Placeholder, you will be able to view that allocation under the assigned project as a placeholder. (Figure 5)
## Reassigning Placeholder Allocations to a Member
Once you are ready to assign a Placeholder to a project, you can do that in 2 places.
You can select the three dots next to the placeholder allocation and an option will appear to **Reassign Allocations.** (Figure 6)
You can either reassign to a member or if needed, assign to a different Placeholder Type at the bottom of the options. (Figure 7)
Additionally, you can edit the Placeholder by right clicking on the allocation and selecting edit. (Figure 8)
Here you can change the type to Member or you can change the Placeholder type if you need to adjust. (Figure 9)
# Schedule
Source: https://help.ruddr.io/resourcing/schedule
Explore the Members and Projects views of the Schedule, including color coding, filters, summary metrics, and My Allocations.
The Schedule — formerly named **Allocations** — is Ruddr's calendar-style view of resource allocations. For a flat, sortable, filterable table instead, see [Allocations List](/resourcing/allocations-list).
The Schedule (Figure 2) in Ruddr defaults to showing all allocations grouped by workspace member. This screen is only available to workspace members who have access to resource allocations via their [security role](/workspace-administration/security-roles). When a member has those permissions, they will see a **Resources** menu item (Figure 1) in the nav bar, with **Schedule** and **Allocations** as its two sub-items.
There are two views available on the Schedule:
* Members
* Projects
For those members with [member-level resource allocations permissions](/workspace-administration/security-roles#resource-allocations), as defined by their [security role](/workspace-administration/security-roles), the default allocation view (Figure 2) will list workspace members down the left side of the screen. When you expand a member, you will see all of the projects assigned to that member on the left and the allocations to the right in the grid.
The view can be switched to show allocations by project instead of by member. For members without member-level resource allocations permissions, this will be the default view. To switch views on the allocation screen, simply click the **Projects** button (Figure 3) at the top-left. This will show projects down the left side of the screen (Figure 4) and each project's allocations in the grid to the right. Expanding any particular project will show all of the workspace members and "placeholders" that have been allocated to that project. Note that this button will be disabled for those members without member-level resource allocations permissions.
#### Color-coded Resource Allocations
Resource allocations are color-coded (Figure 5) to provide visual cues as to the type of time that is being planned for a resource. The following colors correspond to the type of time being allocated:
* **Green**: Client Billable
* **Red**: Client Non-billable
* **Yellow**: Internal
* **Blue**: Time Off
If you allocate a member to a project, but do not assign them to that project, you will see the yellow alert (Figure 6) next to the member letting you know. You can assign a member by going to the Project and adding under the Team tab. You can also add on the Allocations Project Tab by selecting the three dots on the projects allocations and selecting "Assign Allocated Members to Project" (this will assign ALL allocated members to the project, not just the single member).
#### Tentative Allocations
Allocations that are made to a Tentative project (a project with a "Tentative" project status) are shown with a striped treatment (Figure 7).
#### Soft Bookings
Allocations with a Soft [booking type](/resourcing/confirmed-and-soft-bookings) are shown faded (at reduced opacity), as in the **Standard HealthPlus RC** allocation in Figure 5, so you can distinguish provisional staffing from confirmed bookings at a glance. Hovering over an allocation displays its booking type.
### Customizing the View
#### Time Unit Selector
The resource allocations grid can be set to a day, week, or month view. This allows you to "zoom out" to evaluate resourcing over a long period of time or "zoom in" to evaluate resourcing for the coming days and weeks. To change this zoom level, simply select the desired setting from the time unit selector (Figure 8) at the top-center of the resource allocations grid (Figure 4).
#### Start Date Selector
At the top-left of the allocations grid (Figure 4) is the start date selector (Figure 9). This allows you to pick the starting date for the allocations grid. Depending on the setting of the time unit selector, you can pick a specific day, week, or month.
#### Placeholders
When the allocations grid is grouped by member, you will notice a placeholders section (Figure 10) after the workspace members. Placeholders are virtual resources that can be used for allocations when you aren't sure which actual workspace member will be assigned to the work. Using these types of allocations can help inform the internal recruiting team as to the types of skills that are needed in the future.
Additionally, placeholders can be assigned an Average Bill Rate and an Average Labor Cost. With this data provided, Ruddr can forecast services revenue and services labor cost, respectively, for any placeholders with allocations.
Placeholder information can be viewed by hovering over the placeholder avatar (Figure 11).
For information on creating [Resource Placeholders](/workspace-administration/custom-data), please refer to the Custom Data article in the Ruddr Help Center.
#### Filtering the Resource Grid
The filters button (Figure 12) at the top-right of the screen (Figure 4) brings up a Filters drawer (Figure 12) where you can adjust filter settings. The available filters depend on whether the allocations view is grouped by members or by projects.
When viewing Projects, the Filters drawer will include a checkbox to **Only show projects with allocations**. When viewing Members, the drawer will include a checkbox to **Only show resources with allocations**.
The Filters drawer also includes a **Booking Type** filter. By default both confirmed and soft bookings are shown; select **Confirmed** or **Soft** to narrow the view. For more, see [Confirmed and Soft Bookings](/resourcing/confirmed-and-soft-bookings).
#### Adjusting the Summary Row Metrics
On the Members view of the resource allocations, you will have a **Metric** drop-down (Figure 14) at the top-left of the screen that allows you to select the metric displayed in the summary rows of the allocations grid. This metric defaults to All Hours.
The eight metric options for the summary rows are:
* **All Hours** - The number of hours that have been allocated to each workspace member.
* **Project Hours -** All project hours allocated to each member. This will not include time off.
* **Billable Hours** - All client billable hours allocated to each member. Non-billable client hours, internal hours, or time off will not be presented when this metric is selected.
* **Productive Hours** - All client billable, client non-billable, and internal productive hours will be displayed.
* **Available Hours** - The number of hours that are available to be allocated to each workspace member. This is based on each member's capacity, which is set by a Workspace Admin.
* **Billable Utilization** - The planned billable utilization rate for each member based on the allocations. Note that the calculated utilization rate is based on each member's capacity.
* **Client Utilization** - All client hours, billable and non-billable divided by the member's capacity.
* **Productive Utilization** - The planned productive utilization rate for each member based on allocations for client billable, client non-billable, and internal productive hours.
* **Total Utilization** - The total planned hours, billable and non-billable divided by the member's capacity.
* **Target Attainment** - The percentage of each member's billable utilization target that will be attained based on the allocations. Note that each member can have a distinct billable utilization target set by a Workspace Admin.
A few of these views provide additional filtering filters. Once you select one of the application metric views. you will see a slider will appear where you can select a min and max to filter on that metric.
Available Member views that includes slider functionality.
* Available Hours (month view)
* Available Hours (week view)
* Available Hours (day view)
* Billable Utilization (all views)
* Target Attainment (all views)
### My Allocations
Within the default [**Home** area](/getting-started/the-home-area) of Ruddr, there is a **My Allocations** section, accessible from the nav bar (Figure 15).
This section (Figure 16) will show the member's allocations. A member can always see their own allocations from this screen, regardless of their security role. By default, only confirmed bookings appear here and [soft bookings](/resourcing/confirmed-and-soft-bookings) are hidden. A Workspace Admin can enable **Show soft allocations on the My Allocations screen** in [Allocation Settings](/workspace-administration/general-workspace-settings#allocation-settings) to show soft bookings here as well, rendered faded.
If a member has been allocated to a project, but the member is not yet on the project team, the allocation will show with a gray striped background behind the project name.
# Time Off and Resource Allocations
Source: https://help.ruddr.io/resourcing/time-off-and-resource-allocations
Learn how manual and automatic time off allocations are created in Ruddr and how they affect member capacity, utilization, and holidays.
Time Off resource allocations can be created manually via the Schedule or the [Allocations List](/resourcing/allocations-list), and are created automatically by Ruddr when a member creates time off entries on their time screen. In either case, Time Off allocations may affect a member's capacity for a given period. A Time Off allocation you create manually can be set to a [booking type](/resourcing/confirmed-and-soft-bookings) — Confirmed or Soft — like any other allocation, while time off that Ruddr generates automatically from time entries or holidays is always Confirmed.
#### Manual Time Off Allocation Creation
As noted in [Create a Resource Allocation](/resourcing/create-a-resource-allocation), allocations can have an Assignment Type designated, which categorizes the allocation as either Project time or Time Off. Selecting Time Off as the Assignment Type will require you to provide a Time Off Type for categorizing the allocations. These manually-entered allocations are represented on the Schedule (Figure 1), often times as a single allocation spanning multiple periods (by Day / by Week / by Month).
#### Automatic Time Off Allocation Creation
Ruddr automatically creates Time Off resource allocations when a member creates Time Off time entries on their time screen. In this case, these entries are displayed (Figure 2) as individual allocations for each day (meaning, a single Time Off allocation is created for each day of time off as entered by the member).
Note that Time Off allocations that are automatically created are read-only, as they are managed by the member via their time entries. You cannot edit Time Off allocations that reflect time off entries from the member's time screen.
#### The Effect of Time Off Allocations on Capacity
When Time Off allocations are added - either manually or automatically - they may or may not have an effect on a member's capacity for that period. Whether they have an effect on capacity depends on the duration of the time off allocation when compared to the member's capacity for the period.
Note that whether a Time Off Type has been set up as paid time off or unpaid time off will have no bearing on how the allocation affects a member's capacity for allocation purposes. In the case where an allocation has been created for an unpaid time off type, this will affect a member's utilization capacity.
**Time Off for a Full Day**
When a member has a Time Off allocation for a full day - meaning the Time Off allocation's hours are equal to or greater than their capacity for that day - Ruddr will no longer evaluate project hour allocations for that day for that member. Ruddr identifies that all of the capacity for that day is being used by the time off.
In the below example (Figure 3), the member has Holiday Time Off allocations from November 20 through November 24. As the allocations are 8 hours per day - the member's daily capacity - this member's billable utilization shows as 0% for those days, even with a billable project allocation that spans the period.
**Time Off for a Partial Day**
In cases where a Time Off allocation is created for a number of hours that fall below a member's capacity for that day, Ruddr will allocate the full amount of project hours for that day. The primary reason that Ruddr will continue to include / calculate project hours on these days is because of the need for manual intervention to determine just what workload should be expected for the member. In many cases, a member may be allocated to more than one project. In the case of a partial-day Time Off allocation, a resource allocation administrator will need to facilitate any adjustments to project allocations to account for the partial day.
As shown in the below example (Figure 4), this member has a partial-day Time Off allocation of 4 hours. Their capacity is 8 hours. As such, Ruddr is evaluating their daily capacity and project allocations to determine their allocated and available hours, as well as their billable utilization.
#### Unpaid Time Off and Utilization Capacity
Time Off Types are [Custom Data](/workspace-administration/custom-data) elements in Ruddr and can be configured such that they represent unpaid time off. When a Time Off allocation is created for a Time Off Type that represents unpaid time off, those allocated hours do not factor into the calculation of a member's utilization for that period - any hours allocated to unpaid time off will be subtracted from a member's capacity, affecting the **utilization capacity** for that period. This utilization capacity is used as the denominator for any utilization calculations for that member for that period. You will see this utilization capacity metric represented (Figure 5) when viewing a member's metrics.
#### Holidays and Resource Allocations
For workspaces that assign [Holiday Schedules](/workspace-administration/custom-data#holiday-schedules) to their members, Ruddr will automatically factor future holidays into resource allocations and related forecast reports. However, if a Time Off time entry for the Holiday Time Off Type already exists for a member on the date of a holiday, Ruddr will prioritize the existing Holiday Time Off time entry, accounting for that in resource allocations as opposed to the holiday schedule item.
# Billing
Source: https://help.ruddr.io/setup-guide/billing
Review the key billing setup areas in Ruddr, from invoice settings and QuickBooks integration to creating, publishing, and taking payment on invoices.
You will have walked through most of the workspace settings for invoices as you worked through the [Workspace Administration](#set-up-your-workspace) portion of this article, and even as part of client and projects. That said, there are some key areas pertaining to the setup of Billing in Ruddr that merit listing a second time as we conclude this Guide to Setting up Your Workspace. Additionally, it is helpful to become familiar with administering invoices and payments in Ruddr.
* [QuickBooks Integration Overview](/integrations/quickbooks-online-integration-overview)
* [Invoices Settings](/workspace-administration/invoice-settings)
* [Creating a Draft Invoice](/billing/configure-a-draft-invoice)
* [Publishing an Invoice](/billing/publish-an-invoice)
* [Taking Payments](/billing/taking-payments)
# Clients
Source: https://help.ruddr.io/setup-guide/clients
Understand why clients are the foundational entity in Ruddr and find guides for creating, managing, and archiving clients in your workspace.
[Clients](/clients/client-list) are the foundational entity in Ruddr in that all Projects, Time Entries, Billable Expense Entries, and Resource Allocations roll up to clients. Learn how to create and manage clients in the workspace.
* [Create Clients](/clients/create-a-new-client)
* [Client Dashboard](/clients/client-dashboard)
* [Archive or Delete Clients](/clients/archive-or-delete-a-client)
# Expenses
Source: https://help.ruddr.io/setup-guide/expenses
Get familiar with expense tracking setup in Ruddr, including expense categories, the Expensify integration, approvals, auditing, and item locking.
The [Expenses section](/expenses/expense-tracking-overview) of the Ruddr Help Center covers all things related to expense tracking. This Guide will focus primarily on the aspects of expense management that pertain to workspace administration, but you are encouraged to become familiar with the entire expense tracking experience.
* [Expense Tracking Overview](/expenses/expense-tracking-overview)
* [Manage Expense Categories](/expenses/manage-expense-categories)
* [Expensify Integration Overview](/integrations/expensify-integration-overview)
* [View and Manage Expense Items of Other Members](/expenses/view-and-manage-expense-items-of-other-members)
* [Expense Approval](/expenses/expense-approval)
* [Expense Auditing](/expenses/expense-auditing)
* [Expense Item Locking](/expenses/expense-item-locking)
# Getting Started
Source: https://help.ruddr.io/setup-guide/getting-started
Start with the Ruddr basics, including creating an account, managing your profile, two-factor authentication, and the concept of workspaces.
The first few things to get familiar with include, setting up an account, managing your profile, and understanding the concept of workspaces within Ruddr. The Getting Started section of the Ruddr Help Center contains all this and more. If you have already signed up for a trial, make sure you are familiar with the basics:
* [Intro to Ruddr](/getting-started/introduction-to-ruddr)
* [Workspaces](/getting-started/workspaces)
* [Navigating Ruddr](/getting-started/navigating-the-ruddr-interface)
* [Manage Your User Profile](/getting-started/user-profile)
* [Set up Two-factor Authentication](/getting-started/user-profile#two-factor-authentication)
* [Ruddr Billing](/workspace-administration/billing)
# Importing Your Data into Ruddr
Source: https://help.ruddr.io/setup-guide/importing-your-data-into-ruddr
Learn how workspace admins can import clients, projects, time, and other data into Ruddr via CSV or with help from onboarding migration services.
Before taking steps to import data, it is recommended that you become more familiar with Ruddr's Clients, Projects, and Time and Expense. However, prior to moving forward in this Guide, it is important to note that Ruddr provides workspace admins with the ability to import data for several entities.
Be sure to read through the Ruddr Help Center information on [importing data into your workspace](/workspace-administration/csv-import). As you progress through this Guide and get more familiar with Ruddr, keep in mind that loading your data into Ruddr can help minimize the level of data entry necessary to get up and running in your workspace.
**Ruddr Onboarding Migration Services**
Additionally, as part of Ruddr's onboarding services, our team can assist you with the migration of data from your current system. If you can access your current data, we can work with you to import that into your workspace.
# Ruddr Guide to Setting up your Workspace
Source: https://help.ruddr.io/setup-guide/introduction
A step-by-step guide for new workspace admins covering the recommended sequence for configuring your Ruddr workspace and inviting your team.
Welcome to Ruddr! In an effort to help our new workspace admins navigate their way through setting up workspaces, we present this Guide to Setting up Your Workspace. In this article, you will see a recommended sequence of steps that you can take to get your workspace up and running, to invite members into your workspace, and to kick off your organization's use of Ruddr for managing your professional services business.
In this guide, we will walk you through the following:
Learn Ruddr basics. Get familiar with the user interface, your account, and the concept of Ruddr workspaces.
Set up your workspace according to how you run your business. This guide will give you exposure to the various facets and features of the workspace and give you an idea as to how to step through workspace administration, including Security Roles, Integrations, and Custom Data.
Do you need to import historical time data or client/project data into your workspace? We will point in you in the right direction and give you a primer before jumping into the key data entities within Ruddr.
Learn how to set up clients, provide contacts, and more.
Projects are where it all comes together. Learn how to set these up for clients and provide project-specific settings.
Learn the basics of time entry, what your team will be capturing in terms of time detail, and explore how easy Ruddr makes it for your members to use a timer and enter their time. You will also learn about Timesheets, and approval workflow.
Get into the details of filing expense reports in Ruddr, approvals, and reporting.
Take a run through the Resourcing feature in Ruddr -- how to allocate resources.
Ruddr can be the primary Billing center for your business. Take a look at how Invoicing works and understand the integration with financial packages.
The last step in taking your Ruddr workspace live.
# Inviting Your Members
Source: https://help.ruddr.io/setup-guide/inviting-your-members
Wrap up your workspace setup by inviting members into Ruddr and pointing them to the resources they need to create accounts and get started.
Congratulations! If you made it through the entirety of this guide, you should be ready to invite your members into the workspace. As your learned in Step 7 of the [Workspace Administration](#set-up-your-workspace) portion of this Guide, inviting members is a click away.
Once you invite your members, they will need to create an account with Ruddr and join your workspace. You may find it useful to send along a link to this [Getting Started](/getting-started/introduction-to-ruddr) section of the Ruddr Help Center, as it provides a lot of useful information regarding Ruddr accounts and some of the basics of the platform.
Thank you for being a Ruddr member and we look forward to working with you as our platform continues to grow!
# Projects
Source: https://help.ruddr.io/setup-guide/projects
Learn the project setup topics every Workspace Admin should know, including billing types, approval workflows, revenue recognition, and dashboards.
Projects in Ruddr are the primary entity against which time and expense, resource allocations, and invoices are created. It is important for Workspace Admins to be intimately familiar with Projects; their various settings; managing Project Team members, roles, and tasks; and project billing types. Below, key Project areas are covered with regards to Setting Up Your Workspace, but this is not an exhaustive list of project topics. Visit the [Projects](/projects/project-list) section of the Ruddr Help Center to access all topics related to Project Settings.
* [Projects](/projects/project-list)
* [The Project Admin](/projects/the-project-admin)
* [Create Projects](/projects/create-a-new-project)
* [Multi-step Approval Workflow](/projects/managing-multi-step-approval-workflows)
* [Billing Types](/projects/billing-types)
* [Fixed Fee Revenue Recognition](/projects/fixed-fee-revenue-recognition)
* [Project Dashboard](/projects/project-dashboard)
* [Archive or Delete Projects](/projects/archive-or-delete-a-project)
# Resourcing
Source: https://help.ruddr.io/setup-guide/resourcing
Get an introduction to resourcing in Ruddr, including how to enable the feature and which security permissions control access to allocations.
Take a look at the [Resourcing Overview](/resourcing/overview-of-resourcing) article in the Ruddr Help Center. Here you will get the basics of resourcing, how to enable the feature in the workspace, and an idea of the security permissions that need to be assigned to allow the viewing and administration of resource allocations.
# Set up Your Workspace
Source: https://help.ruddr.io/setup-guide/set-up-your-workspace
Follow a seven-step sequence for configuring your workspace, from general settings and features to custom data, security roles, and members.
As the Workspace Admin, you will need to get intimately familiar with managing your workspace. There is a logical flow that can be followed in setting up the workspace for the first time, and that first step is to go through the [Workspace Administration section](/workspace-administration/managing-your-workspace) and tailor your workspace settings to how you plan to leverage Ruddr in running your business. Here are items to consider, and ultimately configure, as you define your workspace:
**Workspace Administration**
| Step 1 | General Workspace Settings | Name your workspace, provide details of your company, and set defaults for Time and Expense, Client and Projects, and establish your company's standard business days. |
| Step 2 | Features | Learn about Ruddr's features and determine which ones you will leverage in your workspace. With certain features enabled, your workspace experience will be enhanced. Understand how these features can support your business operations and determine which ones you want to leverage. NOTE: As these features have an impact on how areas in Ruddr function, it is best to evaluate these up front, so that as you progress through setup, you focus on them and the functionality they provide. |
| Step 3 | Integrations | While you may decide to set up various integrations at a later stage in your workspace configuration, take some time to get familiar with the integrations available, and their data and technical requirements. |
| Step 4 | Custom Data | Ruddr provides the ability for Workspace Admins to create and manage custom lookup data, organizational data, and tags that can all be leveraged throughout Clients, Project, Time Entries, Expenses, Invoicing, and more. Set up custom data such as Holiday Schedules, Job Titles, Practices, and more. |
| Step 5 | Invoice Settings | Set default payment terms, tax rates, email settings, and invoice details for billing in the workspace. |
| Step 6 | Security Roles | The final steps in setting up your workflow focus on your workspace members and the level of access you want to provide to your workspace's clients, projects, and time and expense. Start by learning about Ruddr's support for custom security roles and the various permission levels that you can assign to those roles. Ruddr also provides a set of default security roles to get you started. |
| Step 7 | Members | Learn about creating, editing, and activating/deactivating members in your workspace. Get familiar with the Member Profile and how to apply security roles to your workspace members. Finally, learn how to invite your members into your workspace once your workspace is configured and ready to go. |
# Time Entry
Source: https://help.ruddr.io/setup-guide/time-entry
Understand the time entry decisions that shape your workspace setup, including timesheets, time approval, auditing, and entry locking.
The [Time section](/time/time-tracking-overview) of the Ruddr Help Center covers all things related to time entry. This Guide will focus primarily on the aspects of time management that pertain to workspace administration, but you are encouraged to become familiar with the the entire time entry experience.
* [Timesheets Overview](/time/timesheets-overview) - This was covered in the Features section of Workspace Administration and should be included here. Determining whether or not your organization will leverage timesheets in the workspace is a critical first step.
* [View and Manage Time Entries of Other Members](/time/view-and-manage-time-entries-of-other-members) - Become familiar with this practice and inform your [Security Roles](/workspace-administration/security-roles) and assignment of those security roles to members in your workspace based on who should have permissions to audit/manage time entries for other members.
* [Time Approval](/time/time-approval)
* [Time Auditing](/time/time-auditing)
* [Time Entry Locking](/time/time-entry-locking) - Understand how entries become locked and how to manage them.
# The Day View for Time Tracking
Source: https://help.ruddr.io/time/the-day-view-for-time-tracking
Learn how to use the day view in Ruddr to create time entries, start timers, and submit each day's time for approval.
If you work on multiple and varying projects per day, you will most likely prefer to use the day view for time entry because it offers the most granular approach to tracking time. To access the day view (Figure 2), click on the **Time** nav bar item, or the Time Entries sub-menu item under Time (Figure 1), and select the **Day** view from the view selector at the top of the screen.
Figure 1 - Select **Time Entries** to View the Default Day View on the Time Entries Screen
Figure 2 - Day View for Time Entry
When you bring up the day view, it will always default to the current day. You can change this date by either clicking on another day of the week in the header row, or you can navigate to a specific day using the date selector (Figure 3) at the top-left of the screen.
Figure 3 - Use the Date Selector to View / Edit Time Entries for a Specific Day
The day view will show a summary of all time entries for the selected day. These entries will be grouped by each client.
For each time entry under a client, you will see the project, role, task, notes, whether or not the time was billable, and the amount of time worked (in hours) (Figure 4). If the time entry is billable, there will be a green circle with a dollar sign in it. Based on the workspace settings, the amount of time may be represented in either clock format (such as 1:30) or decimal format (such as 1.5).
Figure 4 - Time Entry Details Grouped by Project
The status of the time entry is reflected by the color of the oval around the amount of time. The status and color combinations are:
* **Gray** (Not Submitted) - the time entry has been created but has not been submitted for approval.
* **Yellow** (Pending Approval) - the time entry has been submitted for approval.
* **Green** (Approved) - the time entry has been approved.
* **Red** (Rejected) - the time entry has been rejected.
Depending on the project settings, time entries will either be automatically approved or manually approved. If the time entries require manual approval, the Project Admin will be notified upon submission for approval. Although the Project Admin gets notified, any workspace member that has the **Administer project team time and expenses** permission on the project (via their [security role)](/workspace-administration/security-roles) will be able to approve or reject the time.
### Create a Time Entry
If the day you have selected currently has no time entries, you can create a new time entry by clicking the **New Time Entry** button (Figure 5) in the middle of the screen.
Figure 5 - Click **New Time Entry** to Create a Time Entry for the Selected Date
This will open a new time entry drawer (Figure 6) that will allow you to enter the information about the entry. The fields you can provide on a new time entry are:
* **Date** - The date will be pre-filled with the date you had selected on the day view when you clicked the **New Time Entry** button. You can change the date as needed.
* **Time** - The amount of time that you worked. You can enter this time in either clock format (1:30) or decimal format (1.5). If you would like to start a timer instead of entering a static amount of time, you can leave this field blank. If you do enter time into this field, the **Start Timer** button will be replaced with a **Save & Close** button.
* **Type** - The two types of time are Project Time and Time Off.
* If the Type is set to Time Off, then you will also be asked to provide:
* **Time Off Type** - The type of time off (such as vacation or holiday). Your Workspace Admin can configure your team's time off types.
* If the Type is set to Project Time, then you can provide:
* **Client/Project** - The client/project combination is a required field. If the work was internal (not for a client), simply choose a project from your workspace's internal client.
* **Role** - If the project is set up to use roles, you must select a role. Note that the roles assigned to you will be listed first but the project can be configured to allow you to record time to any role on the project team.
* **Task** - If tasks are defined for the project, you can select the task that you are working on. If the project requires that all time entries must be associated with a task, you will be required to select a task. If the project does not require time entries to be associated with a task, you are not required to select a task, even if tasks have been defined for the project.
* **Notes** - An optional text field that allows you to describe the completed work.
Figure 6 - Create a New Time Entry
Note that a new time entry can not be created if the **Automatically lock time and expenses** workspace setting is on and the date of the new time entry is older than the number of days specified in the workspace setting. Also, if the project or task has been manually set to lock time entry, you will not be able to create or edit time for the project or task. For more information on locking, view the [Time Entry Locking](/time/time-entry-locking) section of Ruddr Help Center.
Furthermore, if the Timesheets feature in Ruddr is enabled for the workspace, new time entries can not be added to a Timesheet that has been submitted. For more information on Timesheets, please refer to the [Timesheets Overview article](/time/timesheets-overview).
### Start a Timer
Instead of typing in an amount of time on the time entry drawer, you can also leave the time field blank. When the time field is blank, the button (Figure 7) at the bottom of the drawer will be labeled **Start Timer**. Clicking that button will save the information on the drawer, close the drawer, and start a timer.
Figure 7 - Click this Button to Start a Timer in lieu of Manually Entering an Amount of Time
When a timer is running for an entry on the day view, you will see its seconds counting up. Additionally, a pause button will be shown to the right of the entry (Figure 8). At any point, you can pause the timer by clicking the pause button and later restart the timer by clicking the play button. Also, if you start a new timer, any timer you have currently running in the workspace will automatically be paused.
Figure 8 - The Timer is Displayed on the Time Entry Screen and is also Available in the Time Overlay
A timer can be started on any unlocked time entry on the day view. If a time entry was set manually, you can still start a timer for that entry that will count up from that set time. The only instance where a timer cannot be started is when the time entry is locked. For more information on locking, see the [time entry locking](/time/time-entry-locking) article.
### Delete a Time Entry
If a time entry was created by mistake, you can delete that entry from the edit time entry drawer. To bring up the drawer, simply click on the time entry on the day view. At the bottom-left of the drawer, you will see a **Delete** button (Figure 9) if you have permission to delete the time entry and the entry is not locked.
Figure 9 - This **Delete** button will Display in the Edit Time Entry Drawer when a Time Entry can be Deleted
### Locked Time Entries
Time entries can become locked under certain circumstances. Locked time entries are shown with a lock icon. When a time entry is locked, it cannot be edited or deleted by the current user.
Two important rules to understand about time locking are:
* Time entries are not individually locked or unlocked. When time entries are locked, it is because they are locked for the entire project or task or because conditions exist that require Ruddr to lock the time entry for the current workspace member. For example, the time entry might be associated with a published invoice.
* A time entry could be locked for one workspace member but unlocked for another member who has a different security role (with greater privileges).
Note that in workspaces with the Timesheet feature enabled, time entries for a submitted timesheet are locked. For more information on unsubmitting a timesheet, please refer to the [Timesheet Overview](/time/timesheets-overview) article in Ruddr Help Center.
For more information, see the help article on [time entry locking](/time/time-entry-locking).
### Submit the Day's Time for Approval
When all of the time entries for a day have been entered, you can easily submit them for [approval](/time/time-approval) with a single button click. The **Submit for Approval** button (Figure 10) at the bottom of the screen will submit any entries for that day that are not already in a Pending Approval or Approved state. The button's label will include the number of time entries that will be submitted. If there are no time entries that need to be submitted, the button will not be shown. Note that any time entry with a running timer will / can not be submitted for approval.
Figure 10 - The Number of Daily Time Entries Available for Submittal are Displayed
**Timesheets**
In workspaces that leverage the Timesheets feature, time entries are submitted as part of individual timesheets. Members do not submit individual time entries, nor do they submit groups of time entries across multiple timesheets. To submit a timesheet, a member can click the **Submit Timesheet** button (Figure 11) on the time entry screen. Once submitted, all time entries associated with that timesheet are locked. For more information on submitting and / or unsubmitting a timesheet, please refer to the [Timesheet Overview](/time/timesheets-overview) article in Ruddr Help Center.
Figure 11 - When Timesheets are Enabled, Members can Submit the Entire Timesheet from the Day View
### Time Statistics
At the bottom of the day view, you will see statistics (Figure 12) that summarize the time entries for that day.
Figure 12 - The Time Statistics are Shown on the Time Entries Screen for the Current Period
These statistics are shown in three separate sections.
1. **Hours Summary** - Toward the left of the screen is the *total tracked time broken down into billable and non-billable hours*. Also, your capacity and any missing hours are shown in this area. Your capacity of hours per day is set by your Workspace Admin. Most full-time employees will have 8 available hours of capacity per day from Monday through Friday.
2. **Time Summarized by Status** - In the middle section of the time statistics, your *time is summarized by its current status* and represented in a bar. Time entries have one of the following status values: Not Submitted, Pending Approval, Approved, or Rejected. These status settings are color-coded, as mentioned earlier.
3. **Billable Utilization Figures** - On the right side of the statistics area, you will see your *billable* *utilization figures*. These show your billable utilization, target billable percentage, and target attainment percentage for the period. These utilization figures are discussed in more detail in the [personal dashboard](/getting-started/the-home-area) help article.
# The List View for Time Tracking
Source: https://help.ruddr.io/time/the-list-view-for-time-tracking
How to use the list view to scroll through all of your Ruddr time entries, jump to any date, and create or manage entries.
The list view (Figure 3) of the time tracking screen is unique from the other time views in that it lets you scroll backward and forward through all of your time entries. Whereas the other views show the time entries for a single day, week, or month, the list view is not bound by any date range. To access the list view, click on the **Time** nav bar element (Figure 1) and select the **List** view from the view selector (Figure 2) at the top of the screen.
Figure 1 - Select **Time Entries** to View the Default Day View on the Time Entries Screen
Figure 2 - Leverage the View Selector to Toggle Time Entry Views
To navigate through the time entries on the list view, simply use your web browser's scroll bar. The time entries are ordered by date with the most recent time entry being at the top of the list. You can scroll down to look at older entries and scroll up to look at newer entries.
Figure 3 - Viewing Time Entries in List View
### Select a Starting Date for the List
When you bring up the list view, it will show the most recent time entry at the top of the list. If you would like to switch to a specific date in the past, you can use the date selector (Figure 4) at the top-left of the screen to select a new date. With just a few clicks of the mouse, you can go back several months or several years.
Figure 4 - Select a Date for the List View
Once you select a date, the list will refresh and show the time entries for that date. If there are no time entries on the date you selected, you will be shown the closest date that has time entries. From that date, you can scroll up or down through the chronological time entries.
### Create a time entry
To create a new time entry from the list view, simply click **New Time Entry** button (Figure 5) in the bar at the bottom of the screen.
Figure 5 - You can Create a New Time Entry from the List View
This will bring up the same time entry drawer (Figure 6) that you access via the day view. For more about creating time entries, see the help article on the [day view](/time/the-day-view-for-time-tracking).
Figure 6 - Time Entry Drawer Available from List View
**Timesheets**
If the workspace has the [Timesheets feature](/time/timesheets-overview) enabled, the **New Time Entry** button will be disabled if the selected date (Figure 4) exists in a Timesheet that has been submitted.
### Start a Timer
On the list view you can start a timer for a new time entry from the time entry drawer (Figure 6). This works identically to the day view. Instead of typing in an amount of time on the time entry drawer, you just leave the time field blank and click the **Start Timer** button at the bottom of the drawer (Figure 6). Clicking that button will save the information on the drawer, close the drawer, and begin a timer.
You can pause and start timers from the time entry drawer or from the list view. To start a timer from the list, simply click the small play button (Figure 7) next to an entry's current time value. Any time you start a timer, Ruddr will automatically pause any existing timer that you had running.
When a timer is running, you will see seconds incrementing on the time entry in the list. Also, a pause button will be shown to the right of the running entry. At any point, you can pause the timer by clicking the pause button.
Figure 7 - Pause/Start Timer for a Time Entry
### Delete a Time Entry
If a time entry was created by mistake, you can delete that entry from the edit time entry drawer. To bring up the drawer (Figure 8), simply click on the time entry in the list view. If the time entry is not [locked](#locked-time-entries), you will see a **Delete** button at the bottom-left of the drawer.
Figure 8 - Edit / Delete a Time Entry
### Locked Time Entries
Time entries can become locked under certain circumstances. Locked time entries are shown with a lock icon. When a time entry is locked, it cannot be edited or deleted by the current member.
Two important rules to understand about time locking are:
* Time entries are not individually locked or unlocked. When time entries are locked, it is because they are locked for the entire project or task or because conditions exist that require Ruddr to lock the time entry for the current workspace member. For example, the time entry might be associated with a published invoice.
* A time entry could be locked for one workspace member but unlocked for another member who has a different security role (with greater privileges).
**Timesheets**
Note that in workspaces with the Timesheet feature enabled, time entries for a submitted timesheet are locked. For more information on unsubmitting a timesheet, please refer to the [Timesheet Overview](/time/timesheets-overview) article in Ruddr Help Center.
For more information, see the separate help article on [time entry locking](/time/time-entry-locking).
# The Month View for Time Tracking
Source: https://help.ruddr.io/time/the-month-view-for-time-tracking
Use the month view calendar to review daily hours, check approval status at a glance, and submit a full month of time in Ruddr.
The month view (Figure 3) of the time screen is optimized for reviewing your time for the month and easily submitting that time for approval. To access the month view, click on the **Time** nav bar element (Figure 1) and select the **Month** view from the view selector (Figure 2) at the top of the screen.
Figure 1 - Select **Time Entries** to View the Default Day View on the Time Entries Screen
Figure 2 - Leverage the View Selector to Toggle Time Entry Views
The month view (Figure 3) is a calendar that shows total number of hours entered for each day of the month. The view always defaults to the current month but you can easily navigate from month to month using the date selector at the top-left of the view.
Figure 3 - Viewing Time Entries in the Month View
For each day that has time, a status circle is shown at the top-left of the calendar cell:
* If all of the time entries for that day are approved, the dot will be green
* If there is at least one time entry that has been rejected, the dot will be red
* If there are no rejected entries but at least one time entry is pending approval, the dot will be yellow
* If none of the time entries have been submitted for approval yet, the dot will be dark gray
For more information, see the separate help article on [time entry status](/time/time-entry-status).
### View Time Entries for a Calendar Day
To get more detail on the time entries that comprise the total for any given day, simply click on that day on the calendar. This will take you to the [day view](/time/the-day-view-for-time-tracking) which includes all of the individual time entries for that day. From this view, you can edit or delete unlocked time entries or add a new time entry.
### Submit the Month's Time for Approval
When not using timesheets, and all of the time entries for a month have been entered and reviewed, you can easily submit them for [approval](/time/time-approval) with a single button click on the month view. The **Submit for Approval** button (Figure 4) at the bottom of the screen will submit any entries for that month that aren't already in a Pending Approval or Approved state. The button's label will include the number of time entries that will be submitted. If there are no time entries that need to be submitted, the button will not be shown. Note that any time entry with a running timer will not be submitted for approval. The timer must be stopped in order for the time entry to be submitted for approval.
Figure 4 - Submit Outstanding Time Entries
**Timesheets**
In workspaces that leverage the Timesheets feature, time entries are submitted as part of individual timesheets. Members do not submit individual time entries, nor do they submit groups of time entries across multiple timesheets, as described above. To submit a timesheet, a member can click the **Submit Timesheet** button (Figure 5) on the time entry screen when in [day view](/time/the-day-view-for-time-tracking) or [week view](/time/the-week-view-for-time-tracking). It is not possible to submit a timesheet while in the month view. Once submitted, time entries associated with that timesheet are locked. For more information on submitting and / or unsubmitting a timesheet, please refer to the [Timesheet Overview](/time/timesheets-overview) article in Ruddr Help Center.
Figure 5 - Submitting Timesheet in Week View
### Time Statistics
At the bottom of the month view, you will see statistics that summarize the time entries for that month.
Figure 6 - The Time Statistics are Shown on the Time Entries Screen for the Current Period
These statistics are shown in three separate sections.
1. **Hours Summary** - Toward the left of the screen is the *total tracked time broken down into billable and non-billable hours*. Also, your capacity and any missing hours are shown in this area. Your capacity of hours per day is set by your Workspace Admin. Most full-time employees will have 8 available hours of capacity per day from Monday through Friday.
2. **Time Summarized by Status** - In the middle section of the time statistics, your *time is summarized by its current status* and represented in a bar. Time entries have one of the following status values: Not Submitted, Pending Approval, Approved, or Rejected. These status settings are color-coded, as mentioned earlier.
3. **Billable Utilization Figures** - On the right side of the statistics area, you will see your *billable* *utilization figures*. These show your billable utilization, target billable percentage, and target attainment percentage for the period. These utilization figures are discussed in more detail in the [personal dashboard](/getting-started/the-home-area) help article.
# The Time Overlay Window
Source: https://help.ruddr.io/time/the-time-overlay-window
Manage time entries and timers from anywhere in Ruddr using the time overlay window, without leaving the screen you are working in.
The time overlay window (Figure 2) enables you to quickly access your time entries without leaving your current Ruddr screen. This allows you to stay focused on an area of Ruddr, such as reports or expenses, yet still have the ability to create or manage your time entries.
To bring up the time overlay window, simply click on the timer area in the Ruddr header bar (Figure 1). This area has a small Ruddr logo that will be gray when no timer is running or green when a timer is running. If there is no timer running, the window will default to the current day. If a timer is running, the window will default to the day with the running timer.
Figure 1 - Access the Timer from the Header Bar
Figure 2 - Manage your Time Entries Anywhere in Ruddr with the Time Overlay Window
To change days in the overlay window, you can use the arrows at the top of the window or you can directly click on any of the seven days shown for the current week. If you need to jump to a distant date, simply click the calendar icon at the top-right of the overlay window and pick the desired date from the calendar date-picker (Figure 3).
Figure 3 - Calendar Date-Picker from the Time Overlay Window
### Create a new time entry
To create a new time entry for the selected day, click the plus icon at the bottom of the time entry list (Figure 2). This will bring up the same time entry drawer (Figure 4) that is used on the day view. For more information on using the time entry drawer, see the [day view](/time/the-day-view-for-time-tracking) article.
Figure 4 - Time Entry Drawer
### Start and End Time for Time Entries
If you want Ruddr to track the start and end time on projects, you will need to enable in the workspace settings (Figure 5) and on each member profile.
Figure 5 - Workspace setting to enable start and end time for time entry
Once the workspace setting is enabled, you also need to update the member profile (Figure 6).
###
Figure 6 - Member profile to enable start and end time for time entry
Once both places are enabled, members will have an option of adding start and end time to their time entries (Figure 7).
Figure 7 - Time Entry with Start and End time featured enabled
### Start a Timer
If you want Ruddr to start a timer for your work, simply leave the time field empty on the drawer. When the time field is blank, the button at the bottom of the drawer will be labeled "Start Timer". Clicking that button (Figure 4) will save the information on the drawer, close the drawer, and begin a timer.
When a timer is running for an entry on the time overlay screen (Figure 2), you will see its seconds counting up. Also, a pause button (Figure 8) will be shown to the right of the timer. At any point, you can pause the timer by clicking the pause button and later restart the timer by clicking the play button.
Figure 8 - Pause/Start Timer for a Time Entry
A timer can be started on any unlocked time entry on the overlay screen. The only instance when a timer cannot be started is when the time entry is [locked](/time/time-entry-locking).
# The Week View for Time Tracking
Source: https://help.ruddr.io/time/the-week-view-for-time-tracking
Enter hours in a weekly grid by project, role, and task, copy last week's rows, add attachments, and submit time from Ruddr's week view.
Depending on the type of engagements that you work on, you may find that tracking time on the week view (Figure 3) is more efficient than tracking time on the [day view](/time/the-day-view-for-time-tracking). This is because the week view presents a grid that allows you to quickly type in the hours worked per project/role/task on each day of the week. To access the week view, click on the **Time** nav bar element (Figure 1) and select the **Week** view from the view selector (Figure 2) at the top of the screen.
Figure 1 - Select **Time Entries** to View the Default Day View on the Time Entries Screen
Figure 2 - Leverage the View Selector to Toggle Time Entry Views
The week view is ideal for people who tend to create a single time entry per project (or project/role/task) per day. Team members assigned to staff augmentation projects usually find the week view to be the most efficient way to enter time. And, if the **Show allocations on the week view of the time screen** setting in Workspace Settings is enabled, a member can quickly [create time entries from time allocations](#create-time-entries-from-allocations) across projects.
Additionally, members may have a need to attach one or more files to a week's time entries. If the workspace has the [Time Attachment feature](/workspace-administration/features) enabled, a member can [upload attachments](#time-attachments) when on the Week view.
Figure 3 - The Week View of Time Entry
While the week view does allow you to quickly enter project time, it has the following limitation that the day view does not have.
* If there are multiple entries for the same combination of project/role/task (Figure 4), you must edit those time entries from the day view. They will be shown on the week view (Figure 5), but will be disabled and represented in a stacked box. See the [Multiple Time Entries section](#multiple-time-entries-per-day) of this article for more information.
Figure 4 - Multiple Time Entries for Client/Project/Task as Seen in Day View
Figure 5 - Multiple Entries as Indicated on the Week View
The week view is ideal for people who tend to create a single time entry per project (or project/role/task) per day. Team members assigned to staff augmentation projects usually find the week view to be the most efficient way to enter time.
### Add a Time Entry Row
When there are no time entries for a given week, the week view will contain a blank gray area (Figure 6) that provides the member with multiple options for time entry. A new time row can be added, [last week's rows](#copy-last-weeks-rows) can be copied to the current week, or [last week's time entries](#copy-last-weeks-time-entries) can be copied to the current week.
Figure 6 - Start Time Entry for the Current Week being Viewed
#### Copy Last Week's Rows
You can add a new time entry row by clicking the **Add Time Row** button or you can copy over all of the rows from the past week by clicking the **Copy Last Week's Rows** button. This will create a row for each unique combination of project, role, and / or task that you entered time against in the prior week. This will not copy over the time entries themselves. If you wish to leverage the prior week's time entries, you can copy last week's time entries.
#### Copy Last Week's Time Entries
In order to leverage this function, workspace administrators must have the **Allow time entries to be copied from the previous week** setting enabled in the [Time and Expense Settings](/workspace-administration/general-workspace-settings#time-and-expense-settings) area of workspace settings.
If you have time entries from the prior week, and no time entries for the current week, a secondary action will be present on the **Copy Last Week's Rows** button. This action - **Copy Last Week's Time Entries** (Figure 7) - will copy over all time entries from the prior week, bringing over not only the rows of the prior week, but the hours as well.
Figure 7 - Copy Time Entries from the Previous Week
Note that, when using the Copy Last Week's Time Entries function, if any single time entry fails validation checks, then that time entry will not be copied. Some examples of this would include:
* Project has been set to require notes for time entries, but one or more of last week's time entries for that project do no have notes.
* Project has been set to require that time entries are associated with tasks, but one or more of last week's time entries are not associated with tasks.
* The workspace requires that time entries be entered within the project start and end dates, and copying last week's time entries for that project would create time entries beyond the project end date.
When creating a new time entry row, you will be asked to define the parameters of the row (Figure 8). These include the type of time, the project, the role, and the task. Project roles and tasks are optional components of a project's setup and may not exist for every project.
Figure 8 - Time Entry Fields are Based on the Project Requirements
Once a time entry row has been created, it will show up on the week view. You can then easily type in the total number of hours worked per day and can specify Notes for the time entry as well (Figure 9).
Figure 9 - Entering Time in the Week View
### Create Time Entries from Allocations
When enabled via workspace settings, allocations can be visible (Figure 10) on the week view of the time screen. Each project that a member is allocated to will be created as a row on the screen, with the amount of hours (per day) shown in each time entry cell. A member can click the plus (+) icon in the cell to add that many hours for each respective entry.
Figure 10 - Create Time Entries from Allocations
### Delete a Time Entry Row
You can delete a row from the week view by clicking on the red delete icon (Figure 3) on the right side of each row. If there are existing time entries for that row, you will be presented with a confirmation window (Figure 11).
Figure 11 - Confirm Choice to Delete a Time Entry Row in Week View
If you are certain that all of the associated time entries for the week should be deleted, simply click the **Delete** button at the bottom-right of the confirmation window. Once time entries are deleted, they cannot be restored.
If any time entries for a row are locked, you will not be able to delete the row from the week view. You will need to switch to the day view in order to delete any unlocked time entries. For more information, see the [time entry locking](/time/time-entry-locking) article.
### Multiple Time Entries per Day
When time is entered on the week view, a single time entry is created for that client/project/role/task combination for each day of the week. But, it is possible that multiple time entries exist for the same day if those entries were created on the day view. When a cell on the week view is comprised of more than one time entry, that cell will have a stacked appearance and it will be disabled (Figure 12).
Figure 12 - Stacked and Disabled Time Entry Cell for Multiple Time Entries
When a cell has this stacked/disabled representation, you cannot edit the value in the cell on the week view. To change the time associated with the cell, you must edit the individual time entries on the [day view](/time/the-day-view-for-time-tracking) or [list view](/time/the-list-view-for-time-tracking).
To see the details for the multiple entries, hover your mouse over the cell and a window (Figure 13) will be shown that will provide the individual time entries including any notes. In addition, a message at the bottom of the window will explain that the entries can only be edited from the day or list view.
Figure 13 - View Details of Multiple Time Entries
### Locked Cell in the Week View
Time entries can become locked under certain circumstances. Locked time entries are shown with a lock icon. When a time entry is locked, it cannot be edited or deleted by the current user.
Two important rules to understand about time locking are:
* Time entries are not individually locked or unlocked. When time entries are locked, it is because they are locked for the entire project or task or because conditions exist that require Ruddr to lock the time entry for the current workspace member. For example, the time entry might be associated with a published invoice.
* A time entry could be locked for one workspace member but unlocked for another member who has a different security role (with greater privileges).
On the week view when a cell is locked (Figure 14), a small lock icon appears in the top-right corner of the cell. Also, the cell will have a gray background which indicates that it can't be edited. Note that if a cell is comprised of more than one entry, the cell will be locked if any of the constituent time entries is locked.
Figure 14 - Multiple Time Entries for this Week are Locked
When a row on the week view contains a locked cell, the row cannot be deleted. In this situation, to delete individual unlocked time entries, you must use the day view or list view.
**Timesheets**
Note that in workspaces with the Timesheet feature enabled, time entries for a submitted timesheet are locked. For more information on unsubmitting a timesheet, please refer to the [Timesheet Overview](/time/timesheets-overview) article in Ruddr Help Center.
For more information on locking, see the help article on [time entry locking](/time/time-entry-locking).
### Submit the Week's Time for Approval
When all of the time entries for a week have been entered, you can easily submit them for [approval](/time/time-approval) with a single button click. The **Submit for Approval** button (Figure 15) at the bottom of the screen will submit any entries for that week that aren't already in a Pending Approval or Approved state. The button's label will include the number of time entries that will be submitted. If there are no time entries that need to be submitted, the button will not be shown. Note that any time entry with a running timer will not be submitted for approval. The timer must be stopped in order for the time entry to be submitted for approval.
Figure 15 - Submitting Multiple Time Entries
**Timesheets**
In workspaces that leverage the Timesheets feature, time entries are submitted as part of individual timesheets. Members do not submit individual time entries, nor do they submit groups of time entries across multiple timesheets. To submit a timesheet, a member can click the **Submit Timesheet** button (Figure 16) on the time entry screen. Once submitted, time entries associated with that timesheet are locked. For more information on submitting and / or unsubmitting a timesheet, please refer to the [Timesheet Overview](/time/timesheets-overview) article in Ruddr Help Center.
Figure 16 - With Timesheets Enabled you see the Timesheet Status at the top of the Screen and can Submit the Timesheet
There are cases where a week spans across two billing periods (Figure 17). In this case, you will have two timesheets and Ruddr will prompt (Figure 18) the member to select which timesheet to submit.
Figure 17 - Multiple Timesheets in a Week that Spans the End of a Month and the Beginning of a Second Month
Figure 18 - Specify the Timesheet to Submit When Two Timesheets are Present for a Given Week
### Time Attachments
When this [feature](/workspace-administration/features) is enabled, a paperclip icon (Figure 19) is shown on the Week view of the time screen. Clicking this icon allows for one or more files to be uploaded (Figure 20) for that given week.
Figure 19 - Clicking the Paperclip Icon Allows you to Upload Attachments to a Week's Time Entries
Figure 20 - Attachments can Added to a Week's Time Entries
Uploaded files can optionally be associated with a specific project that the member is assigned to (Figure 20).
Figure 21 - Associate a Time Attachment to a Project
Once an attachment is uploaded, a member can open an attachment, download an attachment, reassign an attachment to another project, or delete the attachment (Figure 22).
Figure 22 - Manage Time Attachments
Lastly, there is a Time Attachments report in the Time section of reports that allows for easy reporting and viewing of time attachments.
### Time Statistics
At the bottom of the week view, you will see statistics (Figure 23) that summarize the time entries for that week.
Figure 23 - Time Statistics for the Current View Available on the Time Entry Screens
These statistics are shown in three separate sections.
1. **Hours Summary** - Toward the left of the screen is the *total tracked time broken down into billable and non-billable hours*. Also, your capacity and any missing hours are shown in this area. Your capacity of hours per day is set by your Workspace Admin. Most full-time employees will have 8 available hours of capacity per day from Monday through Friday.
2. **Time Summarized by Status** - In the middle section of the time statistics, your *time is summarized by its current status* and represented in a bar. Time entries have one of the following status values: Not Submitted, Pending Approval, Approved, or Rejected. These status settings are color-coded, as mentioned earlier.
3. **Billable Utilization Figures** - On the right side of the statistics area, you will see your *billable* *utilization figures*. These show your billable utilization, target billable percentage, and target attainment percentage for the period. You can toggle the setting to Adjust for Time Off. This will adjust the metrics to account for time off and Holidays. These utilization figures are discussed in more detail in the [personal dashboard](/getting-started/the-home-area) help article.
# Time Approval
Source: https://help.ruddr.io/time/time-approval
Understand Ruddr's four time approval types, automatic, manual, client, and bulk, and how to submit, approve, and reject time entries.
Ruddr offers four time and expense approval types: Automatic, Manual, Client, and Bulk. Automatic approval instantly approves time entries upon creation. Manual approval requires Project Admin review, with optional Multi-Step Approval workflows. Client approval sends batches to clients for validation. Bulk approval allows approvers to act on entries individually or in bulk.
As discussed in [General Workspace Settings](/workspace-administration/general-workspace-settings), default time and expense approval settings can be set for the workspace. However, each project in Ruddr can be set up for either manual or automatic time approval, depending on the requirements of the project. Here are the four types of approvals for time and expense in Ruddr:
* [Automatic](#automatic-time-approval)
* [Manual](#manual-time-approval)
* [Client](#client-approval-of-time-entries)
* [Bulk](#bulk-time-approval-and-rejection)
## Automatic Time Approval
If a project uses automatic time approval, time entries will be immediately approved by Ruddr **when they are created**. Whether members create time entries in the Month, Week, or Day view, those entries will instantly enter an [approved status](/time/time-entry-status). When timesheets are *disabled,* members can continue to edit and delete individual time entries until they enter a [locked state](/time/time-entry-locking).
**Timesheets**
In workspaces that leverage the [Timesheets feature](/time/timesheets-overview), multiple time entries are submitted as part of individual timesheets. Members do not submit individual time entries, nor do they submit groups of time entries across multiple timesheets. To submit a timesheet, a member can click the **Submit Timesheet** button (Figure 3) on the day view or on the week view of the time entry screen. Once submitted, all time entries associated with that timesheet are locked. For more information on unsubmitting a timesheet, please refer to the [Timesheet Overview](/time/timesheets-overview) article in Ruddr Help Center.
With regards to Automatic approval where the Timesheets feature is enabled, time entries associated with that timesheet are automatically approved if the project uses automatic time approval.
## Manual Time Approval
If the project uses manual time approval and the [Multi-Step Approval Workflow](/workspace-administration/multi-step-approval-workflow-overview) feature is *disabled* in the workspace, the Project Admin will be notified to review and approve submitted time entries.
Project approval configuration is set within the **Approval Options** section (Figure 1) of the project's [**Settings**](/projects/project-settings) tab.
**Multi-Step Approval Workflow**
If your workspace has the [Multi-Step Approval Workflow](/workspace-administration/multi-step-approval-workflow-overview) feature enabled and your approval options are set to Manual, then you will be able to specify whether you want to leverage the workspace's default approval workflow or if you want to specify a custom workflow for this project. For more information, view the [Managing Multi-Step Approval Workflows](/projects/managing-multi-step-approval-workflows) article in the Ruddr Help Center.
### Submitting Time for Approval
In workspaces where [Timesheets](/time/timesheets-overview) are *disabled*, Time can be submitted for approval from the day, week, or month view of the time screen (Figure 2). At the bottom of each view, there is a **Submit for Approval** button that will show the number of time entries that will be submitted via the current view. Clicking this button will submit all time entries on the view that are not currently in the Approved or Pending Approval state.
Note that if a timer is running for a view that is being submitted for approval, that time entry will not be submitted for approval. The running timer must be stopped before it can be submitted for approval.
**Timesheets**
In workspaces that leverage the Timesheets feature, multiple time entries are submitted as part of individual timesheets. Members do not submit individual time entries, nor do they submit groups of time entries across multiple timesheets. To submit a timesheet, a member can click the **Submit Timesheet** button (Figure 3) on the day view or on the week view of the time entry screen. Once submitted, all time entries associated with that timesheet are locked. For more information on submitting and / or unsubmitting a timesheet, please refer to the [Timesheet Overview](/time/timesheets-overview) article in Ruddr Help Center.
### Pending Approval Notification
When time on a project has been submitted for approval, the Project Admin of the project will be notified. The Project Admin will receive an email message such as the one shown below (Figure 4). From this email the Project Admin can click the **Time Entry Approvals** button and immediately take action.
If your workspace has enabled [Multi-Step Approval Workflow](/workspace-administration/multi-step-approval-workflow-overview), each approver would receive this email notification as the workflow advances through the steps configured for the project. If multiple approvers are specified for a single step, all approvers will receive this notification.
Additionally, if the workspace has the [Slack integration](/integrations/slack-integration-overview) configured, the Project Admin will also receive a direct message (Figure 5) from the Ruddr bot in Slack.
Finally, any time a workspace member has time entries that are awaiting approval, the member will see a red dot next to the Time nav bar item (Figure 6). When the Time submenu is shown, the number of items pending approval will be shown in a red circle next to the Approvals menu option.
Note that a workspace member will not see the approvals menu option if the member does not have permission to approve project time or time off.
### Approving Time
When a time entry that requires manual approval is submitted, any workspace member who has the appropriate permissions can approve or reject the time entry. The Project Admin on the project will be the person notified about the pending approval, but any member with permission can take action.
**On Behalf of Another Approver**
Those members with member-level time and expense administrative permissions can approve time on behalf of another approver. There may be times, such as when an approver is on vacation, when an administrator may need to access another approver's queue and approve time in that queue. To do that, simply select the approver from the **Approver** dropdown to access their queue and to approve time as outline below. For more on this topic, please refer to this [FAQ article](/faqs-and-troubleshooting/time-and-expense/can-i-approve-time-and-expenses-on-behalf-of-another-workspace-member) on approving time and expense on behalf of another member.
The approver can click on any row in the approvals list (Figure 7) to see the full detail of the time entry (Figure 8). Edits can easily be made to the time entry before the entry is approved or rejected.
To approve or reject a time entry, the approver can use the "thumbs up" or "thumbs down" buttons (Figure 9) on the right side of each row on the approval list (Figure 7).
When an entry has been approved, it will be shown with a green "thumbs up" circle as shown below (Figure 10). When an entry has been rejected, it will be shown with a red "thumbs down" circle (Figure 11).
When an approver rejects a time entry, a reason for the rejection must be provided. A window will be shown (Figure 12) that will allow the approver to type in the rejection reason. This reason will be recorded in the history of the time entry.
### Multiple-entry Approval Actions
If an approver has a large number of time entries to review and take action on, it is possible to approve or reject multiple entries in their queue. To do this, simply select the rows to approve or reject (as shown in Figure 12) and then click on the action button at the bottom of the screen (Figure 13). The action button defaults to "Approve" but can be switched to "Reject".
## Client Approval of Time Entries
On certain projects, your company may be required to get client approval of time and expenses before those time and expenses can be invoiced to the client. For these situations, Ruddr provides a separate client approvals feature. When client approvals are enabled for a project, a batch of time and expenses can be sent to the client for approval. For more information, see the [client approvals](/projects/client-approvals) article.
## Bulk Time Approval and Rejection
Bulk time approval is limited to **Workspace Admins only**. When a Workspace Admin needs to approve large quantities of time entries, they can do so via the Approvals screen (Figure 7). To do this, the Workspace Admin would clear the Approver dropdown filter (Figure 14). The ability to clear this field is only available to Workspace Admins.
Once the filter has been cleared and the screen is showing Pending Approval time entries for all Approvers (Figure 15), the Workspace Admin can select time entries for any / all members that are listed. Note that the Approval / Rejection buttons on each row are disabled. This is because all bulk approval actions must be initiated via the **Set to Approved** action button that appears at the bottom of the screens when time entries are selected for bulk action.
Once a Workspace Admin has specified which time entries to approve, clicking the **Set to Approved** button will bring up a confirmation modal (Figure 16). Clicking the **Set time entries to Approved** button on this modal will bypass any approval workflows and immediately set the Approval Status on all time entries to Approved.
Note that the activity history (Figure 17) of the time entries will reflect administrative bulk approval has been taken.
**Bulk Time Rejection**
Bulk time entry rejection follows the same process, however the Workspace Admin will need to choose "Set to Rejected" from the action button (Figure 18) at the bottom of the screen. Choosing to bulk reject time will require the Workspace Admin to provide a reason for the rejection of the entries.
# Time Auditing
Source: https://help.ruddr.io/time/time-auditing
How to use the time auditing screen in Ruddr to review time entries and apply bulk updates or deletions across workspace members.
To audit time entries in Ruddr, simply click on the **Auditing** sub-menu item (Figure 1) in the **Time** area in the nav bar. All workspace members can get to the time auditing screen (Figure 2) to manage their own time entries. Depending on their assigned [security role](/workspace-administration/security-roles), members may also be able to view and administer time entries of other workspace members.
Figure 1 - Select **Auditing** to Administer Time Entries
Figure 2 - Administer Multiple Time Entries from the Time Auditing Screen
If the member's security role has **View time and expenses** permissions, the member will be able to view all time entries within the workspace for the members for which they have those permissions. If the member's security role has **Administer time and expenses** permissions, the member will be able to edit or delete any time entries in the workspace for the member for which they have those permissions, unless those entries are on a published invoice in which case they will appear locked.
For more information regarding View / Administer time and expense permissions, view the [Security Roles](/workspace-administration/security-roles) article in the Ruddr Help Center.
When the member is designated as a time off approver, the member will be able to view time off entries where the member is set as the approver. If the time off entry is not locked, the member will also be able to make edits. For more information, see the [time entry locking](/time/time-entry-locking) article.
## Bulk updates
To complete bulk updates for time entries, you will utilize the check boxes on the far left (Figure 3).
Figure 3 - Select Multiple Time Entries to Update
Once you select multiple time entries, you will see a Bulk Actions button (Figure 4) in the bottom right of the screen. Once you select the Bulk Actions button you will see what actions you can take.
**Once you bulk delete, those items are permanently deleted.**
Figure 4 - Choose the Bulk Action to Take on Multiple Time Entries
You will be able to select what value you would like to set on the selected items. (Figure 5)
Figure 5 - Select the Value to Apply by Bulk Edit
Once you complete your bulk update, you will receive a confirmation of your changes. (Figure 6)
Figure 6 - Confirmation of Bulk Updates
There will be times where locked time entries are presented on the Auditing screen. This lock will prevent you from applying bulk updates for these items. (Figure 7) In these cases, you will see a lock icon next to the check box. Once you hover over the lock, it will give you a description of why that time entry was locked. For more on this, please refer to the Ruddr Help Center article [Time Entry Locking](/time/time-entry-locking).
Figure 7 - A Padlock Icon Indicates a Locked Time Entry
# Time Entry Locking
Source: https://help.ruddr.io/time/time-entry-locking
Understand when Ruddr locks time entries, how security roles affect the locking rules, and how a locked entry can become unlocked.
When a time entry is locked in Ruddr, it means that you can view the entry but cannot edit or delete it. A locked time entry is identified by a closed lock symbol on the time entry row or at the top of the time entry drawer.
Time entries cannot be individually locked or unlocked. The lock is based on the permissions of the [security role](/workspace-administration/security-roles) assigned to the user and specific attributes such as the settings of the associated project or task. A time entry may be locked for one workspace member but unlocked for another member who has a security role with greater privileges.
When a time entry is locked, you can hover your mouse over the lock symbol to view the reason (Figure 1) for the lock condition.
### Three Types of Administrative Rights to Time Entries
Based on a workspace member's security role, there are three different types of administrative rights to time entries. These are:
* **Workspace Admin rights.** The "Workspace Admin" is a predefined [security role](/workspace-administration/security-roles) in Ruddr that is used for system administrators. The Workspace Admin has special permissions in Ruddr and will only see a locked time entry when that entry is associated with a published invoice.
* **Member-based administrative rights.** Within the Member Permissions section of the security role definition, the role may grant administrative rights to a group of member's time entries. The security role could provide administrative rights to all workspace members, to practice members, or to subordinates.
* **Project-based administrative rights.** Within the Project Permissions section of the security role definition, the role may grant administrative rights to a project's time entries. The role may grant this administrative right to all projects the member can access, projects where the member is on the project team, projects where the member is the Project Admin, or projects assigned to the member's practice.
For more on security roles and administrative rights, view the [Security Roles](/workspace-administration/security-roles) article.
Several of the time locking rules in Ruddr are based on the type of administrative rights that the member has (if any) to the specific time entry, as further described below.
### When will a Project Time Entry be Locked?
For workspace members assigned to the Workspace Admin security role, a time entry will be locked in only the following case:
* The time entry is associated with a published invoice.
For workspace members that have member-based administrative rights to a time entry (but who are not a Workspace Admin), a time entry will be locked if any of the following conditions exist:
* The time entry is associated with a published invoice.
* The time entry's project has been archived.
* The time entry's task has been archived.
* The time entry's project has the **Lock time and expenses** setting turned on.
* The time entry's task has the **Lock time for this task** setting turned on.
For workspace members that have project-based administrative rights to a time entry (but do not have member-based administrative rights), a time entry will be locked if any of the following conditions exist:
* The time entry is associated with a published invoice.
* The time entry's project has been archived.
* The time entry's task has been archived.
* The time entry's project has the **Lock time and expenses** setting turned on.
* The time entry's task has the **Lock time for this task** setting turned on.
* The time entry is older than the number of days specified in the **Lock time and expenses after X days** workspace setting.
* The time entry is older than the **Lock time and expenses X days after a month ends** workspace setting.
For all other members who do not have any administrative rights to a project's time entries, a time entry will be locked if any of the following conditions exist:
* The time entry is associated with a published invoice.
* The time entry's project has been archived.
* The time entry's task has been archived.
* The time entry's project has the **Lock time and expenses** setting turned on.
* The time entry's task has the **Lock time for this task** setting turned on.
* The time entry is older than the number of days specified in the **Lock time and expenses after X days** workspace setting.
* The time entry is older than the **Lock time and expenses X days after a month ends** workspace setting.
* The timesheet that the time entry is associated with has been submitted. *Only applies if the* [*Timesheets feature*](/time/timesheets-overview) *has been turned on for the workspace.*
* The time entry is owned by another workspace member.
* The time entry has been manually approved.
* The time entry has been approved by the client. For more, see the [Client Approvals](/projects/client-approvals) help article.
* The member is no longer assigned to the project role associated with the time entry and the project has the **Members can only track time to assigned roles** setting on.
* The member has been set to inactive on the project team associated with the time entry.
### When will a Time Off Entry be Locked?
If a workspace member is assigned to the Workspace Admin security role, the time off entry will never be locked. If a workspace member has member-based administrative rights to a time off entry, the entry will only be locked if it is associated with a [statutory holiday](/faqs-and-troubleshooting/time-and-expense/how-are-statutory-holidays-handled-in-ruddr).
If the member is the designated time off approver, but does not have member-based administrative rights to the time entry, the entry will be locked only if it is older than the number of days specified in the **Lock time and expenses after X days** or **Lock time and expenses X days after a month ends** workspace settings.
For all other workspace members, a time off entry will be locked when any of the following conditions exist:
* The timesheet that the time off entry is associated with has been submitted. *Only applies if the* [*Timesheets feature*](/time/timesheets-overview) *has been turned on for the workspace.*
* The time entry has been manually approved.
For more information on time-off approval settings for a member, visit the [Member Profile](/workspace-administration/member-profile) article in the Ruddr Help Center.
### Creating Locked Time Entries
Ruddr will not allow you to create a time entry if that time entry would be immediately locked due to one or more of the rules above.
### Unlocking a Locked Time Entry
Individual time entries cannot be manually locked or unlocked. If time entries for an entire project are locked, they can be unlocked by unchecking the **Lock time and expenses** checkbox in the **Overview** section of the project's [**Settings**](/projects/project-settings) tab. If time entries associated with a specific project task are locked, they can be unlocked by unchecking the **Lock time for this task** checkbox on the **Edit Task** drawer.
Other than the two bulk locking scenarios described above, a locked time entry will only become unlocked if the condition causing the lock is removed. To see why a time entry is locked, hover your mouse over the lock icon and a locking reason will be shown. You, or a member with greater permissions, must first remove the condition causing the lock before the time entry will become unlocked. For example, if a time entry is locked because it is associated with a published invoice, the invoice will need to be unpublished for the time entry to become unlocked.
# Time Entry Status
Source: https://help.ruddr.io/time/time-entry-status
Learn the four time entry statuses in Ruddr, Not Submitted, Pending Approval, Rejected, and Approved, and the color coding for each.
The status of a time entry correlates to the entry's stage in the approval process. Time entries have four possible states which are Not Submitted, Pending Approval, Rejected, and Approved.
Each status setting is associated with a color so you can glance at a time entry and immediately know its state. Entries in the Not Submitted state will be gray, Pending Approval will be yellow, Rejected will be red, and Approved will be green.
When a project is configured, it can be set up for either manual or automatic approvals. For projects that use automatic approvals, the time entries will turn green (Approved) immediately upon creation.
Below is a brief explanation of the four time entry states.
### Not Submitted
All time entries that require manual approval start in the Not Submitted state. This simply means that the item has been created but has yet to be submitted for approval. When a time entry is in the Not Submitted state, the time will be shown within a gray status oval.
### Pending Approval
The pending approval state means that the time entry has been submitted for approval but the approver has not taken action yet. When a time entry is in the Pending Approval state, it will be shown within a yellow status oval.
For workspaces where [Multi-Step Approval Workflow](/workspace-administration/multi-step-approval-workflow-overview) is enabled, hovering over the yellow oval will display the current progress of the time entry in the workflow. An example of this is found below:
### Rejected
When the approver rejects a time entry, the approver must provide an explanation as to why the time entry is being rejected. The original submitter will receive an email notification about the rejection so long as no such rejection notification has been sent to that member in the past 30 minutes. The original submitter can then make any needed adjustments to the time entry and resubmit it for approval. When a time entry is in the Rejected state, it will be shown within a red status oval.
When workspaces leverage the [Timesheets](/time/timesheets-overview) feature, rejected time entries are sent back to the member for editing, as described above. Unsubmitting the timesheet is not required for the member to edit and resubmit rejected time entries.
### Approved
The goal is to get all time entries into an approved state before invoices are created for a given period. When a project is configured for automatic time approval, time entries for that project will be approved immediately. When a time entry is in the Approved state, it will be shown within a green status oval.
Once a time entry has been manually approved, it will show up as [locked](/time/time-entry-locking) for the submitter unless the submitter's security role has either the **Administer all member time and expenses** general permission or the **Administer project time and expenses** project permission. Once the time is associated with a published invoice, the time will be locked for all workspace members, including Workspace Admins.
# Time Tracking Overview
Source: https://help.ruddr.io/time/time-tracking-overview
An overview of time tracking in Ruddr, covering entry formats, timers, and the day, week, month, list, and overlay entry options.
Time tracking is one of the most fundamental aspects of professional services. Without accurate time tracking, the services team will likely not invoice the correct amount of revenue and the business will underperform.
Ruddr provides a flexible and simple time entry experience. There are multiple ways to enter time so that you can pick the approach that best suits your preferences.
### Time Entry Format
Each Ruddr workspace has a default time entry format option that is set by the Workspace Admin (Figure 1). This option provides a choice between clock format (1:30) and decimal format (1.5). Note that this format only affects time entry screens -- all other areas of Ruddr, such as reports and invoices, will *always* use the decimal format.
Figure 1 - Workspace Admin Settings for Displaying Time Formats in Time Entry
### Timers
With Ruddr you can manually type (Figure 2) in the amount of time you worked on a project or you can run a timer (Figure 4). With manual time entry, you simply key in the amount of time that you worked. You can enter this time in either clock format (1:30) or decimal format (1.5) and Ruddr will automatically convert to your workspace's preferred format (Figure 1).
Figure 2 - Manually Type in your Time Entry
If you'd prefer to have Ruddr time how long you are working on a task, you can use the integrated timer feature that is available from the header bar (Figure 3). For more information, see the Ruddr Help Center article [The Time Overlay Window](/time/the-time-overlay-window). Once you start a timer, Ruddr will keep your timer running even if you close the browser window or shut down your computer.
Figure 3 - Access the Timer from the Header Bar
Figure 4 - Utilizing the Integrated Timer to Track Time
Any time you start a new timer, Ruddr will automatically pause any existing timer that you have running. This allows you to quickly move from one task to the next without having to remember to stop a running timer. You can only have one running timer per workspace member at any given time.
### Time Entry Options
Since there are many types of professional services companies and projects, Ruddr offers multiple ways to track your time. If you work on several projects and tasks throughout the day, you will likely prefer to track time via the day view. But, if you tend to track a fixed 8 hours per day to a single client (such as with a staff augmentation assignment), you'll find it more efficient to track time via the week view.
Ruddr provides the following options for tracking your time:
* **Day View** - The day view screen allows you to navigate to a specific day and track all of your time entries for that day. The day view offers the most granular approach to time tracking.
* **Week View** - The week view allows you to supply a total number of hours per day for a project (or project/task) for each day of a given week.
* **Month View** - The month view shows a comprehensive summary of a month's time entries. You are provided with a total number of hours per day and can click on any day to navigate to that day's entries.
* **List View** - The list view shows a scrollable list of all of your time entries. You can scroll backward and forward through all of the time entries you have ever entered into Ruddr. Clicking on an entry in the list view brings up the same time entry drawer as is shown on the day view.
* **Overlay screen** - From any screen within Ruddr, you have quick access to your time entries via the time overlay screen. This allows you to access your time entries without leaving the area of Ruddr you are currently working in. You bring up this overlay screen by clicking on the timer area (with the Ruddr logo) in the header bar (Figure 3).
* **Ruddr Apps** - You can create and manage your time entries directly within Slack or our MacOS app. To record time via Slack, you must have the Slack integration enabled for your workspace and your Ruddr workspace member must be connected to your Slack user. This can be done by your Workspace Admin.
### Time View Controls
When you bring up any of the time view screens, you will have three selector controls at the top of the screen (Figure 5). These are your date selector, view selector, and member selector.
Figure 5 - Time Selector Controls at the top of Time View Screens
**Date Selector**
The date selector (Figure 6) varies depending on the view that you are on. For the day view and list view, the date selector always contains a single date. For the week view, the selector contains a seven-day range. For the month view, the selector contains an entire month.
Figure 6 - Data Selector
To change the selected date (or date range), simply click on the current date in the selector and a calendar will display (Figure 7). You can then select the desired year, month, and day.
Figure 7 - Specify a Date or Date Range for Viewing / Editing Time Entries
**View Selector**
The view selector (Figure 8) is at the top-middle area of the time screen and allows you to easily switch between the month, week, day, or list views. While you will primarily use the day or week view for time entry, you will benefit from using the month or list view to review and validate your time entries.
Figure 8 - Leverage the View Selector to Toggle Time Entry Views
**Member Selector**
To the right of the view selector, is a member drop-down (Figure 9) that allows you to engage with the time screen as another member of your workspace. This means that you can create, edit, and delete time entries for the selected workspace member. You will only see the member drop-down if you have member-level **Administer time and expenses** permissions set on your [security role](/workspace-administration/security-roles).
Figure 9 - Administer Time Entries for Other Members in your Workspace
Simply select a member from the list and you will interact with all of the time views as if you were that person. Note that any changes you make to a time entry on behalf of another member will be reflected in the history of that entry.
# Timesheet Attestation
Source: https://help.ruddr.io/time/timesheet-attestation
Learn how to enable timesheet attestation in Ruddr so members digitally sign and certify the accuracy of their submitted timesheets.
Timesheet attestation is a formal acknowledgment by a workspace member that the hours recorded on their timesheet are true, accurate, and complete to the best of their knowledge. By attesting, the employee confirms they have reported all hours worked (and, where applicable, all required meal and rest breaks) in accordance with company policy and applicable law.
## Enabling Timesheet Attestation
The Timesheet Attestation feature (Figure 1) is available to Ruddr customers subscribed to our Pro Plan. The feature is disabled by default in every workspace and thus must first be enabled from the [Features](/workspace-administration/features) screen within **Settings**. Note that the [Timesheets](/time/timesheets-overview) feature must be enabled to turn on the Timesheet Attestation feature.
Once the Timesheet Attestation feature has been enabled, the next step is for the Workspace Admin to create the applicable attestation text within the [Custom Data](/workspace-administration/custom-data) area of Workspace Settings. This can be done using the **Timesheet Attestations** custom data entity (Figure 2) within the Members section of Custom Data.
The Workspace Admin can create as many attestations as needed. For example, the text may need to vary based on the laws of the given jurisdiction (country, province, or state).
## Configuring Attestation for Workspace Members
Once the attestation text has been created, the Workspace Admin can then edit the Time Tracking settings for each member that will be required to attest upon timesheet submission (Figure 3). The **Timesheets require attestation** checkbox should be checked and then the specific attestation text can be selected from the dropdown.
The attestation text displays below the dropdown so you can confirm exactly what the member will see when submitting their timesheet. The text cannot be overridden for an individual member; to present different wording, create a separate attestation statement in Custom Data and assign that statement to the member.
## Assigning Attestation in Bulk
To configure attestation for multiple members at once, you can use [bulk updates](/workspace-administration/members#applying-bulk-updates) on the members list (Figure 4). The Timesheet Attestation field is available in the bulk edit options when the feature is enabled; setting a value assigns that statement to all of the selected members, while clearing the field removes the attestation requirement.
## Timesheet Submission
When a member that is required to attest submits their timesheet, they will be shown the attestation text on the **Submit Timesheet** window (Figure 5). To submit the timesheet, the member is required to digitally attest by typing in their name into the **Signature** textbox. The member must type their name or initials (at least three characters are required) into the Signature textbox before the Submit Timesheet button is enabled.
Upon submission, Ruddr stores the attestation text and signature with the timesheet, and the timesheet's submission timestamp serves as the attestation date. Each timesheet preserves exactly what the member agreed to, even if the attestation statement is edited in Custom Data later. If a timesheet is unsubmitted, its attestation and signature are cleared, and the member will attest again when the timesheet is resubmitted.
The same attestation flow is available in the [Ruddr mobile app](/desktop-and-mobile-applications/ruddr-mobile-app#signing-an-attestation) and the [Ruddr desktop app](/desktop-and-mobile-applications/ruddr-desktop-app#signing-an-attestation). When a member who is required to attest submits a timesheet from their phone or from the menu bar, the attestation text and the **Signature** field appear alongside the period being submitted, and the same three-character minimum applies before the timesheet can be submitted.
Members with permission to [administer time for other members](/time/view-and-manage-time-entries-of-other-members) can still submit a timesheet on behalf of a member that requires attestation. In that case, the administrator signs the attestation on the member's behalf, and Ruddr records which member actually submitted the timesheet.
## Timesheets Report
The Timesheets report shows all of the submitted timesheets for a given period of time. In the CSV or Excel exports of the report, there will be several columns related to timesheet attestation (Figure 6). These will include fields related to whether or not the timesheet required attestation, the attestation text, and the signature text provided by the member.
# Timesheets Overview
Source: https://help.ruddr.io/time/timesheets-overview
Understand how timesheets group weekly time entries in Ruddr and how they change time submission, unsubmission, approval, and locking.
[Time Tracking Overview](/time/time-tracking-overview) provides a foundation for understanding the mechanisms involved with managing individual time entries. In this article, we will describe the higher-level concept of timesheets. Timesheets in Ruddr enable organizations to manage time entries on a weekly basis. With timesheets, instead of members submitting time for one or more arbitrary days, members submit their weekly timesheets.
## Enabling Timesheets in Ruddr
The timesheets feature in Ruddr can be enabled or disabled within the **Features** section (Figure 1) of workspace **Settings**. As some organizations may not need or desire to use timesheets, Ruddr allows this feature set to be turned off. To enable or disable timesheets, simply click the **Timesheets** toggle (Figure 2) on the **Features** section.
When timesheets are turned on, a new Timesheets navigation option will display (Figure 3) in the nav bar on the left of the screen. Accessing the Timesheets section will bring up the timesheets screen (Figure 4).
## Managing Time with Timesheets
The various Time-related functions in Ruddr break down as follows:
* [Time Entry](#time-entry-with-timesheets)
* [Time Submittal](#time-submission-with-timesheets)
* [Time Auditing](#untitled)
* [Time Approval](#time-approval)
* [Time Entry Locking](#time-entry-locking)
This article will cover some of the basic implications of Timesheets on these functions. Please refer to the individual articles in the Time section for more detailed, related information.
### Time Entry with Timesheets
The two significant impacts of timesheets on time entry are:
1. All time entries are grouped into weekly timesheets. When you view your time entries (Figure 5) via time entry screens, you will see a timesheet status bar denotes whether or not that particular timesheet has been submitted.
2. If a timesheet has been submitted, then the timesheet must be unsubmitted in order to access any of the time entries in that timesheet. For more on the effect timesheets have on time submittal, see the next section below.
For more information, view the [Time Tracking Overview article](/time/time-tracking-overview) in Ruddr Help Center.
### Time Submission with Timesheets
For workspaces with the Timesheet feature *disabled*, members can submit individual time entries, or choose to submit any outstanding time entries all at once. With timesheets enabled, however, members must submit time entries as part of a single timesheet. As discussed above, time entries are grouped by timesheets, therefore members do not submit individual time entries, nor do they submit groups of time entries across multiple timesheets.
To submit a timesheet, a member can click the **Submit Timesheet** button (Figure 6) on the time entry screen.
Note that some members may be required to enter a minimum number of hours on their timesheet in order to submit the timesheet. Ruddr provides workspace admins with the ability to specify whether a member's [capacity](/workspace-administration/member-profile#capacity-periods) must be met prior to submitting a timesheet. If this setting is applied to a member, and that member has not entered the minimum number of hours on their timesheet, they will receive a warning message (Figure 7), and will be unable to submit their timesheet.
Note that a member will be unable to submit their timesheet (Figure 8) if any time entries violate time tracking rules that have been established at either a workspace or project level.
Timesheets can also be submitted and unsubmitted from the [Ruddr mobile app](/desktop-and-mobile-applications/ruddr-mobile-app#submitting-your-timesheet) and the [Ruddr desktop app](/desktop-and-mobile-applications/ruddr-desktop-app#submitting-your-timesheet). Both display a status bar showing whether the timesheet for the week you are viewing is Not Submitted, Partially Submitted, or Submitted.
Additionally, some members may be required to sign an attestation statement certifying the accuracy of their time as part of the submission process. For more on this, please refer to the [Timesheet Attestation](/time/timesheet-attestation) article in the Ruddr Help Center.
Once a timesheet is submitted, all time entries associated with that timesheet are locked. However, in some cases, timesheets can be unsubmitted, as we will discuss in the next section.
#### When a Member can Unsubmit their Timesheet
Workspace Administrators can restrict timesheet submission based on the following rules / settings (Figure 9) in Ruddr:
For more on these rules, please refer to the [General Workspace Settings](/workspace-administration/general-workspace-settings#timesheet-unsubmission-rules) article in the Ruddr Help Center.
If all of these settings are *unchecked*, members can unsubmit their timesheet at any time. Note, however, that locked time entries will remain locked and members will not be able to edit those time entries unless they have the applicable Time and Expense Administrative permissions on their Security Role.
If the first setting, **A time entry on the timesheet has been manually approved** is checked, a member can not unsubmit their timesheet if that timesheet includes any manually-approved time entries.
If the second setting, **A time entry on the timesheet is associated with an invoice**, a member cannot unsubmit their timesheet if any time entry on the timesheet has been invoiced.
Workspace Admins can restrict members from unsubmitting their timesheet once the timesheet is a specified number of days old. In this case, even if other conditions would typically allow the member to unsubmit their timesheet, this time-based restriction would prevent them from doing so.
Lastly, Workspace Admins may restrict members from unsubmitting their timesheet once a certain point in the following month is reached. Like the time-based mechanism described above, this restriction would prevent the unsubmission of a timesheet even when other conditions might allow it.
Once unsubmission is restricted, timesheets can be unsubmitted only by members with member-based [Time and Expense Administrative permissions](/workspace-administration/security-roles).
#### Unsubmitting a Timesheet
Members will see an **Unsubmit Timesheet** button (Figure 10) on the time entry screen when this option is available.
When a timesheet is unsubmitted by a member, any time entries in that timesheet that have been *manually* approved will remain locked. In that case, a time and expense administrator will need to either edit the time entry on behalf of the member or will need to reject the time entry to send it back to the member for editing. Likewise, if a member has unsubmitted a timesheet that contains invoiced time entries, those time entries will remain locked.
Time entries that were automatically approved return to Not Submitted, and their status is set again on resubmission based on the project's current approval workflow.
Finally, when a timesheet is unsubmitted, any time entries that are in the middle of a [multi-step approval workflow](/workspace-administration/multi-step-approval-workflow-overview) will have their approval workflow "reset" -- when the timesheet is resubmitted, the time entries will need to go back through approvals beginning with Step 1 of their respective approval workflow.
### Unsubmitting a Partial Timesheet
If the Timesheet falls within a partial week and you need to unsubmit your timesheet, you will be prompted to select which timesheet period you would like to unsubmit (Figure 11).
### Time Auditing
[Time Auditing](/time/time-auditing) in Ruddr allows members to manage their own time entries. Depending on a member's [security role](/workspace-administration/security-roles), they may be able to administer other members' time entries as well. With Timesheets enabled, there is no material change to the time auditing experience for members.
### Time Approval
Generally speaking, there is no material change to the way that time is approved in Ruddr with the Timesheets feature enabled. Whether the workspace or projects are set for automatic or manual time approval, the user experience of [approving time](/time/time-approval) does not change.
What does change is the concept of receiving time approval notifications for a week's worth of time entries at once, as opposed to receiving approval notifications for however many time entries that members chose to submit at any given time. And, of course, each time entry is associated with a particular timesheet when the feature is enabled.
For more information on this topic, visit the [Time Approval article](/time/time-approval) in Ruddr Help Center.
### Time Entry Locking
Put simply, the timesheets feature introduces the concept of locking a group of time entries associated with a specific timesheet, when that timesheet has been submitted for approval. Please note that once time entries are approved, they can be locked for a number of additional reasons and that more actions may need to be taken on those individual time entries beyond simply [unsubmitting](#time-submission-with-timesheets) the timesheet they belong to.
For more details on the locking of time entries, set the [Time Entry Locking](/time/time-entry-locking) section of Ruddr Help Center.
# View and Manage Time Entries of Other Members
Source: https://help.ruddr.io/time/view-and-manage-time-entries-of-other-members
Which permissions let you view, edit, and submit time on behalf of other workspace members in Ruddr, including impersonation and auditing.
Depending on the permissions assigned to your security role, you may be able to access the timesheets and time entries of other workspace members. The following permissions on your [security role](/workspace-administration/security-roles) determine your rights to the time and expense entries of others.
* **Administer time and expenses** for members - If your security role has this general permission, you will be able to view, edit, and delete member time entries for which you have permissions within the workspace.
* With this permission, you will have a [Member selector](#impersonate-another-member-from-the-time-screen) at the top-right of the time screen that will allow you to interact with the time screen as any user in the workspace for which you have permissions.
* **Administer time and expenses** for projects - If your security role has this permission, you will be able to view, edit, and delete all time entries on the projects that you have access to. Depending on your security role, you will either have access to all projects in the workspace, projects assigned to your practice, or just the projects where you are on the project team.
* **View project time and expenses** for projects - If your security role has this project permission set to **All projects the member has access to**, you will be able to view all time entries on the projects that you have access to. Depending on your security role, you will either have access to all projects in the workspace, projects assigned to your practice, or just the projects where you are on the project team.
* **Projects where this member is the Project Admin**, you will be able to view time entries on projects you have access to where you are set as the Project Admin.
If your security role does not have any of the permissions above, you will have no access to project time entries of other workspace members. You will be able to see the total hours worked by project team member and role, but you will not be able to see the individual time entries.
### Time off Entries
If you have none of the permissions outlined above, it is possible that you may have access to the time off entries of other workspace members. If you have been designated as the time off approver for another workspace member, you will be able to view and approve time off entries for that member. Each member in Ruddr can be set up for either automatic time off approval, approval by the member's manager, or approval by a specific designated member. This is configured per member by the Workspace Admin within the **Settings** area (Figure 1) of the [Member Profile](/workspace-administration/member-profile).
Figure 1 - Specify Time Off Approver for a Specific Member
### Time Entry Locking
It is important to note that if a time entry is locked, you cannot edit or delete it. It is possible for a time entry to be locked for one user and unlocked for another user who has greater privileges. But, once a time entry is associated with a published invoice, that time entry will be locked for all members of the workspace.
Note that in workspaces with the Timesheet feature enabled, time entries for a submitted timesheet are locked. For more information on unsubmitting a timesheet, please refer to the [Timesheet Overview](/time/timesheets-overview) article in Ruddr Help Center.
For more information, see the help article on [time entry locking](/time/time-entry-locking).
### Impersonate Another Member from the Time Screen
If your security role has any member-level **Administer time and expenses** permission, you can interact with the time screen on behalf of any workspace members for which you have those permissions. At the top-right of each view on the time screen, there will be a **Member** selector (Figure 2) that includes all of the workspace members for which you can administer time.
Figure 2 - Leverage the Member Selector to View/Manage Time Entries for other Members in your Workspace
Simply select another member and then you can use the time screen as if you were that member. The actions available to you when impersonating will be the actions that are available you as a time administrator. So, when you impersonate a member, you can submit or unsubmit their timesheet and edit any time entries that are [not locked](/time/time-entry-locking) based on your set of time and expense administrator permissions.
Note that if you change another member's time entry via impersonation, the history of the time entry will show that you made that change.
#### Timesheets
If the Timesheets feature is enabled in your workspace, you will be able to submit and unsubmit timesheets on behalf of other members when impersonating them on the Time screen.
### Time Auditing
The time auditing area (Figure 4) of the Ruddr Time section allows you to easily view and manage time entries. To access this area, click the **Auditing** sub-menu option (Figure 3) from the Ruddr nav menu. From this screen, you can always access your own time entries and you may be able to access the time entries of other workspace members, depending on your security role settings.
Figure 3 - Select **Auditing** to Easily View and Manage Time Entries
In order to access time entries of other members, your security role must have any member-level **View time and expenses** permission or any project-level **View time and expenses** permission. In order to edit or delete time entries of other members, your security profile must have any member-level **Administer time and expenses** general permission or any project-level **Administer time and expenses** permission.
Figure 4 - The Time Auditing Screen
If you can view a time entry but can't edit it, the entry in the auditing list will show a lock symbol. A time entry can be locked for several reasons, as described in more detail in the [time entry locking](/time/time-entry-locking) article.
At the top of the time auditing tab are filters that allow you to narrow the set of time entries shown. You can filter by time entry date, project, status, type, and member.
For a more detailed discussion, see the [time auditing](/time/time-auditing) article.
### Time Reports
Within the report library in Ruddr, you can run [various reports related to time entries](/reports/time-reports). The three primary time reports are **Time Summary by Project**, **Time Summary by Member**, and **Time Detail** (Figure 5). These reports show summarized and detailed views of all of the time entries that you have access to within the workspace. Filters at the top of these reports allow you to narrow down your result set.
Figure 5 - Time Detail Report
Clicking on the filter button at the top right of the report screen will open up the Filters drawer (Figure 6). The filters are grouped to present a more organized experience for the member viewing the report.
Figure 6 - The Report Filter Drawer Organizes the Available Filters
Within the report screen, and based on the time entry permissions that the member has as part of their security role, time entries can be edited. For time entries that are not locked, clicking on the time entry row will open up the Edit Time Entry drawer, allowing the member to update details related to that time entry.
Time reports can exported in the following formats:
* PDF
* Excel
* CSV
Clicking on the export button found next to the filter button at the top of the screen will present the user with a menu displaying the file format options.
# API Keys
Source: https://help.ruddr.io/workspace-administration/api-keys
Generate and manage the API keys used to authenticate to the Ruddr API and access your workspace data programmatically.
The eighth menu option within the Settings area (Figure 1) is called **API Keys**. As a Ruddr customer, you have access to the Ruddr API. The Ruddr API is a tool to access your workspace data. For additional information on the Ruddr API, refer to the [Ruddr API Reference Guide](http://docs.ruddr.io/).
In order to authenticate to the Ruddr API, you need to generate authentication keys to be stored with your workspace. In the API Keys section (Figure 2), you will need start by clicking **Create an API Key** button.
Upon clicking the **Create an API Key** button, you will be prompted to enter a **Name** for the key (Figure 3). Specify a name and click the **Submit** button.
Once submitted, you will be presented with an API Key (Figure 4). As specified in the notification, it is best to save a copy of this key in secure location. You will use this key in connecting / authenticating to the Ruddr API.
For additional information, please be sure to refer to our [Ruddr API Reference Guide](http://docs.ruddr.io/).
# Authentication
Source: https://help.ruddr.io/workspace-administration/authentication
Set up authentication providers for single sign-on in Ruddr, including SAML configuration and choosing a default provider for your workspace.
The default Ruddr authentication provider supports member login via Ruddr user / member ID (email address) and password. Ruddr allows for additional authentication providers to be set up in support of [Single Sign-On](/integrations/single-sign-on-sso-overview).
The ninth menu option within the Settings area (Figure 1) is called **Authentication**. The Authentication section (Figure 2) of the Settings area provides Workspace Admins with the ability to manage authentication providers for the workspace.
On the Authentication screen (Figure 2), you will be able to see any configured authentication providers and [create any new authentication provider](#setting-up-a-new-authentication-provider) needed to support your needs.
The three steps in setting up single sign-on are:
1. [Setting up a New Authentication Provider](#setting-up-a-new-authentication-provider)
2. [Establish Identity Provider](/integrations/single-sign-on-sso-identity-provider-setup)
3. [Set Default Authentication Provider for the Workspace](#set-default-authentication-provider-for-the-workspace)
These steps are covered in the instruction below.
### Setting up a New Authentication Provider
Setting up an Authentication Provider in Ruddr requires the configuration of an [Identity Provider](/integrations/single-sign-on-sso-identity-provider-setup) and configuring Ruddr as a [Service Provider](/integrations/single-sign-on-sso-service-provider-setup).
To do this, you will:
1. Create a New Auth Provider in Ruddr as the first step in setting up Ruddr as a Service Provider.
2. Configure your Identity Provider, using the [Entity ID](#saml-settings-and-entity-id-acs-url) created with the auth provider.
3. Finalize the setup by providing Identity Provider details to Ruddr.
To being the process, click the **New Auth Provider** button on the Authentication screen (Figure 2). This will open up the New Auth Provider drawer (Figure 3), where you will specify the **Provider**. Select from the list in the dropdown to choose either these five options:
* [Microsoft Entra ID](/integrations/single-sign-on-sso-identity-provider-setup#microsoft-entra-id)
* [Google Workspace](/integrations/single-sign-on-sso-identity-provider-setup#google-workspace)
* [Okta](/integrations/single-sign-on-sso-identity-provider-setup#okta)
* [Rippling](/integrations/single-sign-on-sso-identity-provider-setup#rippling)
* Other
Upon choosing one of those providers, Ruddr will populate the existing fields on the drawer and will then make an additional **SAML** field available (Figure 4), where you can upload the SAML file from the Identity Provider.
You can edit any of the fields that were completed by Ruddr. Once you are satisfied with these settings, click **Save & Close** button at the bottom of the drawer.
Next, following the steps in the Ruddr Help Center article [Single Sign On (SSO) - Identity Provider Setup](/integrations/single-sign-on-sso-identity-provider-setup), complete the setup of the selected provider.
#### SAML Settings and Entity ID / ACS URL
In some cases, you may need to provide the Ruddr Entity ID and / or Assertion Consumer Service URL (ACS URL) to the identity provider. Assuming you have created the authentication provider using the steps above, you can access the Entity ID and ACS URL by viewing the auth provider's SAML settings (Figure 6). These are accessible from the auth provider's action menu (Figure 5) on the Authentication screen (Figure 2).
NOTE: You can create multiple authentication providers in Ruddr. Each authentication provider that you create will have its own unique Assertion Consumer Service URL.
Once those steps to setup the Identity Provider have been completed, you will be able to edit the authentication provider, provide the identity provider SAML to Ruddr, and **Save & Close** the authentication provider drawer.
#### Set Default Authentication Provider for the Workspace
Once the Service and Identity Providers have been configured, you will want to set the new authentication provider as the default for the workspace. To do this, access the action menu for the provider and select the **Set to default** menu option (Figure 7).
Once the provider has been set as the default for the workspace, members will need to login using that provider's credentials. If there are members with active sessions in Ruddr, they will need to logout of Ruddr and log back in using the new provider.
# Billing
Source: https://help.ruddr.io/workspace-administration/billing
How Ruddr bills your workspace, including billable members, free trials, payment information, billing frequency, and reviewing invoices.
Billing in Ruddr is pretty simple.
### The Basics
Here are the basic concepts to understand with regards to how Ruddr bills its customers.
1. **Ruddr is billed on a per-workspace basis.** We do not charge workspace members individually. A single invoice is generated for the entire workspace.
2. **You are only charged for active billable workspace members.** We do not charge for your non-billable members or inactive members so long as at least half of your workspace members are set as billable. We do charge for active billable members who have been invited into the workspace but have not accepted their invitation yet. [Click here](#what-is-a-billable-member) to learn more about billable members. If less than 50% of your members are billable, you will be charged for 50% of the total workspace members.
3. **You get a discount if you pay annually.** You can choose to be billed either monthly or annually. If you choose an annual plan, we provide a discount.
4. **We bill you in advance.** You pay for Ruddr at the start of your billing period (which could be a month or a year). If the number of billable users changes during the month, those prorated changes will be reflected on the next invoice.
5. **Changes to your active billable members are charged once per month.** If you add or remove members during the month, we wait until the end of the monthly period to reconcile those changes.
6. **You get a credit when your billable workspace member count decreases.** If a workspace member is deactivated or set to non-billable, the prorated portion of the payment for that member will be credited to your account. Credits are always used to offset future fees. Note though that we do not issue refunds.
**NOTE:** Credits do not apply to prior invoices. If you have a balance on a prior invoice and a credit is applied to your account, the total amount of the prior invoice is still considered outstanding and must be paid in full.
### Free Trial
Every workspace starts with a 30-day free trial and no credit card is required. We have found that new users need about 30 days to get a feel for Ruddr and explore the entire feature set. We want you to have enough time to make an informed buying decision. If you need more than 30 days to evaluate Ruddr, just send an email to [help@ruddr.io](mailto:help@ruddr.io) and we can manually extend the trial for you.
If you decide to purchase Ruddr before your trial is over, you can enter your payment information but you won't be charged until the end of your trial.
### What is a "Billable Member"?
A billable workspace member is a member that has the **This is a billable member** option checked on the member's settings (see the Member Type section of [Member Profile](/workspace-administration/member-profile)). The Workspace Admin can set this checkbox on the **General** tab of the of the member's profile within **Settings**.
Members marked as billable can record time and expenses to any client and project that they are assigned to in Ruddr. A member who is not marked as billable can only record time and expenses toward the internal client. The internal client is the default client that is automatically created to track internal time and expenses for your team.
### Adding Payment Information
To switch to a Ruddr paid plan you will need to provide payment information. This can be done on the **Billing** section (Figure 1) of the **Settings** area.
You must provide both billing contact information and payment information. To add billing contact information, click the **Update Contact Info** link at the bottom of the **Billing Contact** section.
To add a credit card, just click the **Add Credit Card** link at the bottom of the **Payment Information** section. This will bring up the credit card form (Figure 2) shown below.
### Adding and Removing Workspace Members
A Workspace Admin can add or remove workspace members from the **Members** tab of the **Settings** area (see [Members](/workspace-administration/members)). Any time a billable workspace member is added or removed, there will be an impact to the following month's invoice via either a fee or a credit. Members that are removed will cause a prorated credit and members that are added will cause a prorated fee.
For more on adding and removing workspace members, see the [Members](/workspace-administration/members) help article.
### Changing your Billing Frequency
We offer a discount to customers who pay annually. You can change the billing frequency at any time by clicking the **Change Plan** link at the bottom of the **Plan Details** section (Figure 1). This will bring up the **Change Plan Details** window (Figure 3).
When you change your billing frequency, any prepaid amount through the current date will be credited to your account. Then, the new subscription will be created and an initial payment (for either a month or year, based on your selection) will be charged immediately.
### Changing or Removing a Credit Card
If you would like to change or remove the credit card associated with your active subscription, you can do that from the **Payment Information** section (Figure 4). Keep in mind that you will need a valid credit card entered into this section in order for your subscription to renew.
### Reviewing your Invoices
At the bottom of the **Billing** section (Figure 1), you can review your past invoices within the **Invoices** section (Figure 5). To view a particular invoice, just click on the PDF icon on the right side of the list. This will bring up a detailed PDF that outlines all fees and credits for the time period.
### Cancelling your Subscription
You are welcome to cancel your Ruddr subscription at any time. We hope that our customers stay with us forever, but we realize that business needs change over time. If you need to cancel, simply click the **Cancel Subscription** link at the bottom of the **Subscription Status** section (Figure 6).
Note that if you cancel your subscription, you will still have access to Ruddr through the end of the current billing period. Ruddr does not issue refunds for cancelled subscriptions.
### Deleting your Workspace
You are in control of your data that is stored within Ruddr. If you wish to cancel your subscription and delete your workspace, you can do this within a few clicks.
To delete your workspace, access the **Workspace** section of the **Settings** area (view more on [General Workspace Settings](/workspace-administration/general-workspace-settings)). At the bottom-left of this screen you can click on the **Delete** button to delete your workspace. This will bring up a confirmation window (Figure 7), asking you to confirm your choice to delete your workspace.
Once you type in the exact spelling of your workspace, you will be able to click on the Delete Workspace button. **Be aware that this permanently deletes your workspace and all associated data from Ruddr!**
# CSV Import
Source: https://help.ruddr.io/workspace-administration/csv-import
Workspace admins can use Ruddr's CSV import tool to load members, clients, projects, time entries, and other data into their workspace.
Ruddr provides Workspace Admins with a CSV import tool that lets you load data into your workspace in bulk, rather than entering each record by hand. This is especially useful when you are first setting up your workspace and need to bring across data from an existing system.
The CSV import tool lives in the **Integrations** section of the Settings area (Figure 1). For an overview of everything found in that section, see the [Integrations](/workspace-administration/integrations) article.
## Supported Data Entities
The CSV import tool can populate the following Ruddr data entities:
* Workspace Members
* Clients
* Contacts
* Projects
* Purchase Orders
* Time Entries
* Expenses
* Project Roles
* Project Rate Cards
* Project Tasks
* Project Member Assignments
* Project Ledgers
* Fixed Fee Billing Schedule
* Fixed Fee Revenue Recognition Ledger
* Project Expenses
* Products
* Additional Services
* Other Items to Bill
* Earned Revenue Adjustments
* Allocations
* Member Costs
* Member Skill Assignments
***NOTE**: Entities must be imported in the sequence above (Members > Clients > Contacts > Projects > Time Entries). This is because:*
* *Members are required for fields in Clients / Projects / Time Entries*
* *Clients are required for Contacts / Projects / Time Entries*
* *Projects are required for Time Entries*
*For example, attempting to import Projects before Clients are created will result in -0- Projects being imported.*
## Importing a CSV File
In the Integrations section (Figure 1), click on the **CSV Import** tile to navigate to the CSV Import admin screen (Figure 2).
As a first step, specify the type of data you would like to import, using the supplied drop-down. Once you select a data type, you will see a second step, where you can upload a CSV file with your data.
Note that Ruddr supplies you with a sample CSV file for each data type. Click on the link to open the sample file and use it as a starting point for creating your CSV.
***NOTE**: Your CSV must adhere to the format provided on the screen and all required data must be provided. Please be sure to review the requirements for each field.*
Once your CSV file has been created, click the **Choose File** button to upload your CSV to Ruddr. Once uploaded, you will see the name of the file listed. Click **Submit for Import** (Figure 3) to initiate the import.
Once uploaded, you will see a confirmation of records added (Figure 4).
### Importing Expense Markup
When the Expense Markup [feature](/workspace-administration/features) is enabled, the **Expenses** data type can [mark up](/expenses/add-expense-items-to-an-expense-report#expense-markup) imported expense items using two optional columns:
* **Markup Unit** - How the expense is marked up: **percentage** to mark it up by a percentage of the expense amount, or **amount** to mark it up by a fixed amount.
* **Markup Unit Value** - The markup to apply. For **percentage**, enter a whole percentage, such as **10** for 10% (up to 100). For **amount**, enter the fixed markup in the expense's currency, such as **15.00**.
Provide both columns together, or leave both blank to import the expense without markup. A row is skipped if only one column is provided, the **Markup Unit** is not **percentage** or **amount**, or the **Markup Unit Value** is zero, negative, or over 100 for a percentage.
Markup applies only to billable expenses, so set **Billable** to **Yes** on rows you mark up. If a row includes markup but isn't billable, or Expense Markup isn't enabled in your workspace, the expense is still imported, but without markup, and you'll see a warning for that row.
### Importing Earned Revenue Adjustments
Entries for a project's [Earned Revenue Adjustment Ledger](/projects/earned-revenue-adjustment-ledger) are imported with the **Project Ledgers** data type, using the optional **Adjustment** column:
* **Adjustment** - Set to **Yes** to import the row as an earned revenue adjustment. Leave it blank or set it to **No** to import the row into the ledger named in the **Ledger** column, as usual.
* **Ledger** - When **Adjustment** is **Yes**, this column names the type of revenue being adjusted instead of a ledger: **service**, **expense**, **product**, or **other**. Rows with any other value, such as **revenue** or **milestone**, are skipped.
Adjustment rows use only the **Date**, **Amount**, and **Notes** columns; **Expense Category**, **Invoice Item**, **Quantity**, **Rate**, and **Billable** are ignored. The amount can be negative to reduce earned revenue. Notes are optional and are limited to 255 characters. As with other ledger rows, the **Import ID** prevents the same adjustment from being imported twice.
## Onboarding Migration Services
As part of Ruddr's onboarding services, our team can assist you with the migration of data from your current system. If you can access your current data, we can work with you to import it into your workspace. For more on preparing your data, see [Importing Your Data into Ruddr](/setup-guide/importing-your-data-into-ruddr).
# Custom Data
Source: https://help.ruddr.io/workspace-administration/custom-data
Manage Ruddr custom data such as lookup values, tags, and templates across billing, clients and projects, members, pipeline, and tasks.
The Custom Data section of the Settings area allows Workspace Admins to manage Ruddr metadata. Note that all custom data entities can be exported. See the [Export Custom Data](#exporting-custom-data) section of this article for more information.
Within the Custom Data screen, entities are organized into 6 categories (Figure 2), each of which you can collapse and expand as needed:
1. [Billing](#billing)
2. [Clients and Projects](#clients-and-projects)
3. [General](#general)
4. [Members](#members)
5. [Pipeline](#pipeline)
6. [Tasks](#tasks)
The remainder of this article describes the entities found in each category. First, however, the [Managing Custom Data](#managing-custom-data) section below covers the concepts and actions that are common across every category.
## Managing Custom Data
### Types of Custom Data
While the Custom Data screen groups entities by the area of Ruddr they relate to, it helps to understand the kinds of data you will encounter:
* **Lookup data** is associated with an entity in Ruddr — for instance, a time entry may be assigned a "Time Entry Type" or a workspace member may be assigned a "Job Title". Reports in Ruddr can be filtered by lookup data.
* **Organizational data** is unique to your organization but does not necessarily factor into the data or structure of Ruddr's primary entities (projects, clients, members) — for example, Business Units or Holiday Schedules.
* **Tags** are metadata that let you define custom entity attributes you can use to search for the corresponding entities and to filter reports.
* **Templates**, such as Task Templates, let you define reusable baseline information that can be applied elsewhere in the workspace.
### Tags
There are five types of tags supported in Ruddr, each managed on its own screen (Figure 7) within the category where the corresponding entity lives:
* **Client Tags** can be assigned to each client in Ruddr.
* **Member Tags** can be assigned to each member in Ruddr.
* **Project Tags** can be assigned to each project in Ruddr.
* **Opportunity Tags** can be assigned to each opportunity in Ruddr, when the [Pipeline feature](/pipeline/pipeline-overview) is enabled.
* **Contact Tags** can be assigned to each contact in Ruddr. This allows you to define custom contact attributes, and you can then filter reports using contact tags.
### Editing a Value
To edit a value, simply click the edit (pencil) icon on the row (Figure 3) that you wish to edit. This will open the edit drawer (Figure 4) for that custom data entity.
### Adding a Value
Above each table is a \*\*+\*\*button (Figure 5) that allows you to add a new item to the table. For example, to add a new Discipline to the Discipline lookup, simply click the button shown below.
### Deleting or Deactivating a Value
You can delete an item if it is not currently in use within Ruddr. If the item is in use, then the Delete option will be disabled and you can only Deactivate the item (Figure 6). When an item is deactivated, it can no longer be selected for new data entries in Ruddr but past entries will remain unchanged.
## Billing
The Billing category contains the custom data entities related to invoicing and payments.
* **Invoice Items** - Every line item on a Ruddr invoice must have an invoice item. The invoice item is the category of the charge to the customer, such as **Service** or **Expense**.
* **Payment Methods** - Every payment in Ruddr can be assigned a Payment Method.
* **Payment Terms** - Used to calculate the due date of an invoice and communicate the terms by which the due date is determined (see below).
* **Tax Rates** - Used to associate an invoice with a specific tax rate percentage (see below).
### Tax Rates
Tax Rates are used to associate an invoice with a specific tax rate percentage. These tax rates can then be used to apply tax to line items on Ruddr invoices. Edit / add Custom Tax Rates inline on the Tax Rates screen (Figure 7).
### Payment Terms
Payment Terms are used to calculate the due date of an invoice and communicate the terms by which the due date is determined. You can then specify a particular payment term when providing the invoice details on a client or a project.
There are a number of "system" payment terms that are created with new workspaces. In addition to these, you can create / define any number of custom payment terms. When creating a new Payment Term, you will be prompted for a number of fields (Figure 8):
* **Type** - choose from one of two types:
* Net - specify the number of days following the issue date to establish the due date of an invoice
* Net End-of-Month - specify the number of days after the end of the month in which the invoice is issued to establish the due date of that invoice
* **Days**
* **Name**
## Clients and Projects
The Clients and Projects category contains the custom data entities related to your clients and the projects you deliver for them.
* **Client Tags** - Client Tags can be assigned to each client in Ruddr. See [Tags](#tags) above for more information.
* **Industries** - Each client can be assigned a vertical industry.
* **Project Tags** - Project Tags can be assigned to each project in Ruddr. See [Tags](#tags) above for more information.
* **Project Types** - Every project in Ruddr can optionally be assigned a project type. Assigning a project type helps you analyze the performance of specific segments of your project portfolio.
* **Workspace Roles and Rates** - A standard rate card defined at the workspace level (see below).
### Workspace Roles and Rates
Leveraging Workspace Roles and Rates in Ruddr allows you to define, at a workspace level, a standard rate card for your organization. You can link [clients](/clients/client-roles) within your workspace to these roles and rates, and then add those roles and rates to [projects](/projects/project-roles) where clients leverage them. The workspace administrator can establish this rate card in the Custom Data section (Figure 9) of Workspace Settings.
Note that any changes to existing Workspace Roles and Rates in Custom Data will be reflected in all clients that link to these roles / rates.
**Multicurrency**
Workspaces that leverage Ruddr's multicurrency feature will have the ability to specify workspace roles and rates for each currency being used by the workspace.
## General
The General category contains custom data entities that apply broadly across your organization.
* **Business Units** - Define entities within your organization and link them to clients, projects, and members (see below).
* **Contact Tags** - Contact Tags can be assigned to each contact in Ruddr. See [Tags](#tags) above for more information.
* **Disciplines** - Disciplines represent a general skill area that can be assigned to employees and project roles. For example, the employees in various project management job titles might be assigned to a single Project Management discipline.
* **Exchange Rate Periods** - Provide custom exchange rates for specific date ranges (see below).
* **Expense Categories** - Expense categories are used for the individual expense items on expense reports. Each expense item must be assigned an expense category. For more information on managing expense categories, see the separate [expense category](/expenses/manage-expense-categories) article.
* **Holidays** - Manage built-in and custom holidays for your workspace (see below).
* **Holiday Schedules** - Group holidays into schedules that can be assigned to members (see below).
* **Locations** - Each workspace member and client can be assigned a location.
* **Practices** - Larger professional services companies often organize service offerings and/or personnel into practices. You can assign a Practice to each member, client, and project in Ruddr.
* **Resource Placeholders** - Assign project hours to a placeholder role when the assigned team member is not yet known (see below).
* **Time Off Types** - When a workspace member creates a time off entry, the member must select a Time Off Type. A standard set of time off types are provided with each workspace but you can tailor these to your organization's preferences. Time off types can be configured as paid or unpaid. Note that the "Holiday" time off type can be edited and deactivated, but not deleted. Ruddr uses this special time off type when automatically creating holiday time off entries.
For more on unpaid time off, please refer to the Ruddr Help Center article [How does Ruddr Handle Unpaid Time Off?](/faqs-and-troubleshooting/time-and-expense/how-does-ruddr-handle-unpaid-time-off)
### Business Units
The Business Units feature in Ruddr enables this element in Custom Data. You can define various entities within your organization and link those business units to clients, projects, and members. Additionally, you can specify varying invoice details and settings for each business unit, allowing you to send invoices from different entities.
A business unit is similar to a practice, and larger professional services firms often use both. For example, a member's business unit might be a geographic such as **North America** while their practice might be a vertical industry such as **Retail**. You can assign a business unit to a member from the **Organization** section of the [member profile](/workspace-administration/member-profile#organization), and you can scope [security roles](/workspace-administration/security-roles) by business unit in the same way you can scope them by practice.
With the Multiple Accounting Integrations feature enabled, each business unit can be associated with a specific accounting integration, allowing you to save that business unit's project invoices to a specific accounting instance.
### Exchange Rate Periods
Workspaces that have enabled the Multicurrency feature in Ruddr will have the ability to provide a set of custom exchange rates for specific date ranges. Essentially, these exchange rate periods offer the ability to override the exchange rates used by Ruddr in converting financial data from one currency to another.
For more on how Ruddr approaches this conversion, please refer to the Help Center article [Currency Conversion Overview](/multicurrency/currency-conversion-overview).
When creating an exchange rate period (Figure 10), you provide the two currencies for which the exchange rate will be created and will then provide the rate of exchange for one currency to the other. Additionally, you will provide the Start and End Dates for the period during which this exchange rate will take effect.
In the above example (Figure 10), the exchange rate from USD to ARS will be effective for all of 2025 and any monetary conversions in Ruddr from USD to ARS or from ARS to USD will leverage the exchange rate provided.
### Holidays
Ruddr has over 130 built-in, standard holidays, all of which can be managed within the Custom Data section (Figure 11). If your company observes a holiday that is not built-in, you can create a custom holiday (Figure 12). All holidays can be added to your holiday schedules. In the holidays list (Figure 11), you can filter the list of holidays by Holiday Schedule to see which holidays are associated with a particular schedule. Also, you can see the associated holiday schedule(s) for each holiday in the **Holiday Schedule** column of the list.
**Auto-creation of Holiday Time Entries**
Note that you can configure Ruddr to automatically create holiday time off entries for your members. For more on that setting, please refer to this [Time and Expense Settings](/workspace-administration/general-workspace-settings#time-and-expense-settings) section of the [General Workspace Settings](/workspace-administration/general-workspace-settings) article in the Ruddr Help Center. For those workspaces that leverage Ruddr's [BambooHR Integration](/integrations/bamboohr-integration-overview), you may want to ensure that this setting is turned off if you handle holidays as PTO requests in BambooHR, as those would be synched via that integration and having this setting checked may result in duplicate holiday time entries.
### Holiday Schedules
Ruddr offers a number of international holiday schedules for you to use or customize. To add one of these schedules, simply click the **Add from Available Schedules** action menu item (Figure 13) on the **New Holiday Schedule** button. A list (Figure 14) of Ruddr-provided holiday schedules will be presented from which you can add any number of schedules to your workspace.
If the Ruddr-managed holiday schedules do not meet your needs, you can create multiple holiday schedules (Figure 15) for your workspace. A holiday schedule can be assigned to each member. Manage your holidays in the [Holidays](#holidays) custom data, then assign multiple holidays to a holiday schedule (Figure 16).
**Cloning a Holiday Schedule**
If you need to copy a full holiday schedule, you can do so by cloning an existing holiday schedule. You can do so by selecting the carrot on the right side of the original schedule and selecting clone (Figure 17). You will then be prompted to update the holiday schedule name and add a description. Once saved, you will be ready to assign and use your new schedule.
**Statutory Holidays**
Statutory holidays (often called "stat holidays", "bank holidays", or "public holidays") are holidays officially recognized by law that employees are typically required to take off from work and receive pay.
Ruddr handles statutory holidays differently than non-statutory holidays, as described below:
* Statutory holiday time off entries are always created automatically by Ruddr. Every weekend, Ruddr will create statutory holiday time off entries for the forward week.
* Statutory holiday time off entries are automatically approved by Ruddr upon creation. These time off entries do not have to be manually approved.
* Statutory holiday time off entries will be locked for all workspace members, other than Workspace Admins.
* Statutory holiday time off entries are created even if the member does not have permission to create time off entries or does not have permission to create holiday type time off entries.
For more on statutory holidays, please refer to the Ruddr Help Center article [How are statutory holidays handled in Ruddr?](/faqs-and-troubleshooting/time-and-expense/how-are-statutory-holidays-handled-in-ruddr)
### Resource Placeholders
Resource placeholders (Figure 18) should be used when you are not certain which team member should be assigned to a project but want to assign the hours of the project to a "placeholder" role. Creating a resource placeholder (Figure 19) allows for the assignment of a practice and a discipline to the record. Assigning these values to a placeholder provides you with the ability to track resource needs at a more granular level across your organization and workspace.
When editing a Resource Placeholder (Figure 19), you can also set the average bill rate and average cost per hour for the placeholder. The average cost per hour is used when calculating the future projected cost, gross profit, and gross margin for a project. The average bill rate is used for calculating the future projected revenue on projects that do not have the Use Roles option turned on. For projects that use roles, the bill rate used to calculate projected revenue is the rate of the role assigned to the resource allocation.
**Multicurrency**
Note that when Ruddr's multicurrency feature is enabled in the workspace, admins may configure the currency for either or both of the average bill rate and average cost per hour values. In regards to the Rate Currency, the placeholder can only be allocated to projects that use that same currency.
## Members
The Members category contains the custom data entities that describe your workspace members.
* **Job Titles** - Each workspace member can be assigned a job title.
* **Member Certifications** - One or more certifications can be assigned to each workspace member.
* **Member Levels** - Each workspace member can be assigned a member level (such as Associate, Senior, or Lead).
* **Member Tags** - Member Tags can be assigned to each member in Ruddr. See [Tags](#tags) above for more information.
* **Member Templates** - Define reusable presets for the settings applied to new workspace members. For more information, see the separate [Member Templates](/workspace-administration/member-templates) article.
* **Skills** - One or more skills can be associated with each workspace member.
* **Timesheet Attestations** - Certification statements that members must sign when submitting their timesheets (see below).
### Timesheet Attestations
When the [Timesheet Attestation feature](/workspace-administration/features#timesheet-attestation) is enabled, timesheet attestations can be assigned to members to display a certification statement that they must sign before submitting their timesheet. Each timesheet attestation consists of a **Name** and the **Attestation Text** that will be presented to the member. Ruddr provides a statement named "Default", and you can create additional statements to satisfy the requirements of different jurisdictions.
For more on creating attestation statements, assigning them to members, and the member's submission experience, please refer to the [Timesheet Attestation](/time/timesheet-attestation) article in the Ruddr Help Center.
## Pipeline
When the [Pipeline feature](/pipeline/pipeline-overview) is enabled, the Pipeline category provides the following custom data entities:
* **Company Spend Tiers** - Categorize companies based on their annual spend.
* **Company Types** - Categorize companies within the pipeline.
* **Opportunity Lead Sources** - Track how you generated an opportunity.
* **Opportunity Pipelines** - Leverage multiple opportunity pipelines to track different sales processes via opportunity stages.
* **Opportunity Stages** - Track the progress of opportunities via stages with associated probabilities.
* **Opportunity Tags** - Can be assigned to each opportunity in Ruddr. See [Tags](#tags) above for more information.
* **Opportunity Types** - Categorize opportunities within the pipeline.
* **Pipeline Activity Types** - Track the various types of activities during the sales process.
## Tasks
When utilizing tasks on projects, the Tasks category provides the following custom data entities:
* **Task Categories** - Allows you to define multiple categories of tasks to be used in projects (see below).
* **Task Tags** - Can be assigned to each task within a project. This allows you to define custom task attributes. See [Tags](#tags) above for more information.
* **Task Templates** - Allow standard tasks to be easily added to projects (see below).
### Task Categories
Each Task Category can be created as a Standard, Rollup, or Milestone category type. Time can be tracked directly to a standard task, while a rollup task aggregates time from its child tasks, and a milestone task represents a single key date rather than a duration. For more on how each type behaves on a project, see the [Project Tasks](/projects/project-tasks#task-categories) article.
The Task Categories list (Figure 20) shows each category's icon, color, name, type, and active status. From this screen, you can create a new category, edit or delete an existing one, set a category as the workspace default, and activate or deactivate a category.
Only standard categories can be set as the workspace default. The default category cannot be deactivated - to deactivate a category that is currently the default, first set a different standard category as default.
When creating or editing a category (Figure 21), you can specify the following:
* **Name** - The display name of the category.
* **Color** - The color used to render the category's icon throughout Ruddr.
* **Icon** - The icon shown next to the task name wherever the task appears.
* **Type** - Standard, Rollup, or Milestone, as described above. The type is required when creating a new category.
Note that the Type is set when the category is first created and becomes read-only once the category has been assigned to any task or set as the workspace default. This prevents tasks from suddenly losing their tracked time (if a standard category were converted to rollup or milestone) or their rollup behavior (in the reverse direction). If you need to change the type of a category that is already in use, create a new category with the desired type and reassign the affected tasks to it.
A category can only be deleted if it is not the workspace default and is not assigned to any task. Categories that are no longer needed but cannot be deleted can be set to inactive - inactive categories are hidden from task selectors but remain on existing tasks.
### Task Templates
Task Templates for [project tasks](/projects/project-tasks) (Figure 22) can be created and managed in the Custom Data section of Ruddr. Once created, these task templates can be added as tasks to projects in the workspace.
When creating task templates (Figure 23), baseline information for tasks can be provided. For more on tasks and the various settings and properties that can be defined when added to projects, please refer to the [Project Tasks](/projects/project-tasks) article in the Ruddr Help Center.
## Exporting Custom Data
All Custom Data can be exported to multiple formats: Microsoft Excel or Comma-Separated Values (CSV). To export any custom data values, navigate to the data screen by clicking on any of the boxes on the Custom Data Section (Figure 2). Then, click on the download icon (Figure 24) at the top-right of the screen. This will drop down a list of formats (Figure 25). Select the desired format for the data and then click the **Download** button (Figure 26) to download.
# Edit Project Permissions
Source: https://help.ruddr.io/workspace-administration/edit-project-permissions
A [security role](/workspace-administration/security-roles) that can edit projects doesn't have to be able to edit everything about them. Project editing is broken into three sections, and you choose which ones a role can edit:
* **General project settings** - the project's general information, such as its name, dates, status, team, tasks, and notes.
* **Financial** - anything that drives the revenue or cost of the project, including bill rates, the invoice details, and the accounting ledgers.
* **Budget** - the project's overall and monthly budgets.
This lets you give a delivery lead everything they need to run a project day to day while keeping the commercial terms in the hands of finance. Members can still see the information in the sections they can't edit, so nothing disappears from the project as a result of these settings.
## Grant Editable Information
Click on **Settings** in the nav bar, select the **Security Roles** option, and then click the name of the role you want to change. In the **Project Permissions** section of the role, choose the projects the role can edit under **Edit these projects**, and then choose the sections it can edit under **Editable information** (Figure 1).
A few things to know about these options:
* **General project settings** is checked automatically as soon as the role can edit any projects, and it cannot be unchecked. A role that can edit a project can always edit its general information.
* **Financial** and **Budget** are optional, and you can grant either one or both.
* The **Editable information** options are unavailable until you grant the role at least one project edit permission under **Edit these projects**. Sections have nothing to apply to until the role can edit a project.
* The built-in Workspace Admin role has all three sections, and like the rest of that role, they cannot be changed.
The project editing permissions previously allowed editing all project information. Members with those permissions have access to all three sections so that they can edit exactly what they could edit before, until a section is explicitly removed.
## What Each Section Covers
The sections apply to the **Settings** tab of a project. Each part of that tab belongs to exactly one section.
### General Project Settings
The General project settings section covers the general information about the project:
* The **Basic Information**, **Settings**, **Time Tracking Rules**, **Approval Options**, and **Cloud Folder** sections of the **Overview** tab, including the project name, practice, business unit, sales representative, [project status](/projects/project-status), project type, start and end dates, project code, tags, and notes.
* The [project team](/projects/project-team), including who is on it and who the [Project Admin](/projects/the-project-admin) is.
* [Project tasks](/projects/project-tasks) and [project roles](/projects/project-roles), apart from their billing settings and rates.
### Financial
The Financial section covers anything that affects the revenue or cost of the project:
* The **Billing** section of the **Overview** tab, including the currency, [billing type](/projects/billing-types), PO number, purchase order, revenue recognition method, revenue attribution method, and accounting notes.
* The **Invoice Details** section of the **Overview** tab, including the invoice recipients, street address, payment terms, tax rate, taxable items, and the invoice and email templates.
* [Bill rates](/projects/project-bill-rates) on project roles and project team members, and whether a project role or task is billable.
* The ledgers on the **Accounting** tab: the [products ledger](/projects/products-ledger), [additional services ledger](/projects/additional-services-ledger), [other items ledger](/projects/other-items-ledger), [project expenses ledger](/projects/project-expenses-ledger), [revenue recognition ledger](/projects/the-revenue-recognition-ledger), [earned revenue adjustment ledger](/projects/earned-revenue-adjustment-ledger), and the [fixed fee billing schedule](/projects/fixed-fee-billing-schedule).
### Budget
The Budget section covers the [project budget](/projects/create-a-project-budget) and the monthly budget:
* Whether the project tracks an overall budget and a monthly budget, and the budget type.
* The services revenue, billable and non-billable hours, expense budgets, products, additional services, and other items budgets.
* The revenue, hours, and expense caps.
* The target services gross margin and the markup settings.
* The budget hours and revenue alert thresholds.
* The hours budgeted for individual team members and tasks.
Labor cost overrides for a project team member are not part of these sections. Those continue to require the **Administer all workspace settings and members** permission, and viewing them requires the **View profit** project permission.
## How Read-Only Sections Look
These sections control editing only. A member who can edit a project can still view every field on the **Settings** tab, including the fields in sections their role cannot edit.
Where an entire section is read-only, its fields are greyed out and the **Save** button is removed (Figure 2). The values are still there to read.
On the **Accounting** tab, each ledger lists its entries and totals as usual, but the buttons for adding entries and the actions for editing and deleting them are not shown (Figure 3).
Where a single field belongs to another section, only that field is greyed out and the rest of the form still works. In Figure 4, the member can rename the project role and change its discipline and member assignments, but the **Rate** is read-only because it belongs to Financial.
The **Budget** and **Monthly Budget** tabs work a little differently because their fields are edited in a drawer. A member whose role includes the Budget section sees the edit icon at the top-right of the tab (Figure 5).
Without the Budget section, the tab is a read-only dashboard of the saved budget and the edit icon is not shown (Figure 6).
## Related Permissions
Granting a project edit permission also grants **View bill rates** and **View revenue** for those projects. Editable information does not change what a role can view, so a role that can edit only the general information about a project can still see its rates, revenue, budget, and ledgers.
The reverse is also worth keeping in mind. Adding **Financial** or **Budget** to a role has no effect unless the role can also edit the project in the first place, and it never grants access to a project the role could not already reach. For the full picture of how project access and project actions fit together, see [Project Permissions](/workspace-administration/security-roles#project-permissions).
# Features
Source: https://help.ruddr.io/workspace-administration/features
A reference for the workspace features that can be toggled in Ruddr, from multicurrency and pipeline to timesheets and resource allocations.
The sixth menu option within the Settings area (Figure 1) is called **Features**. The Features section (Figure 2) of the Settings area provides Workspace Admins with a vehicle to manage whether various Ruddr features are enabled in the workspace.
Here is a full list of Ruddr features in the Workspace Features section:
* [**Advanced Revenue Recognition**](/projects/fixed-fee-revenue-recognition#manual-method)
* Billing
* [**Business Units**](#business-units)
* [**Client and Project Files**](#client-and-project-files)
* [**Client Approvals**](#client-approvals)
* [**Disciplines**](#disciplines)
* [**Expense Markup**](#expense-markup)
* [**Expense Reporting**](#expense-reporting)
* [**Multicurrency**](#multicurrency)
* [**Multiple Accounting Integrations**](#multiple-accounting-integrations)
* [**Multistep Approval Workflow**](#multistep-approval-workflow)
* [**Pipeline**](#pipeline)
* [**Plan & Forecast Reporting**](#plan-and-forecast-reporting)
* [**Practices**](#practices)
* [**Project Health Reporting**](#project-health-reporting)
* [**Project Groups**](#project-groups)
* [**Project Rate Cards**](#project-rate-cards)
* [**Purchase Orders**](#purchase-orders)
* [**Report Schedules**](#report-schedules)
* [**Resource Allocations**](#resource-allocations)
* [Ruddr Assistant](#ruddr-assistant)
* [**Time Attachments**](#time-attachments)
* [**Timesheet Attestation**](#timesheet-attestation)
* [**Timesheets**](#timesheets)
* [**Utilization Tracking**](#utilization-tracking)
* [**Workspace and Client Rate Cards**](#workspace-and-client-rate-cards)
Currently, the Ruddr features that can be toggled are:
### Advanced Revenue Recognition
The standard revenue recognition for Fixed Fee projects is "As Invoiced". Enabling this feature gives you additional options for recognizing Fixed Fee revenue by providing a [Revenue Recognition Ledger](/projects/the-revenue-recognition-ledger). This ledger can be managed manually or Ruddr can automatically generate ledger entries. For more on these types of revenue recognition, please refer to the [Fixed Fee Revenue Recognition](/projects/fixed-fee-revenue-recognition) article in the Help Center.
### Business Units
The business units feature provides a way to organize clients and projects and also manage invoice settings for multiple entities. Business units are managed in [Custom Data](/workspace-administration/custom-data) in workspace settings. Note that this feature must be enabled in order to leverage the [Multiple Accounting Integrations](#multiple-accounting-integrations) feature.
### Client and Project Files
This feature provides workspaces with the ability to upload files to a Files tab within the Client and Project Dashboard areas. Two types of files are supported: Administrator Files and Team Files. The former are accessible by those members with edit permissions; the latter are available to any member that can access the client / project.
### Client Approvals
By turning on the Client Approvals feature in Ruddr, you give your Project Admins the ability to create and submit Client Approvals -- grouping of time and / or expense that can be sent to a client for approval prior to invoicing. For more, please visit the [Client Approvals](/projects/client-approvals) article in the Ruddr Help Center.
### Disciplines
Disciplines are used to group a common set of capabilities within the organization. For example, all levels of project managers within an organization could be assigned to a Project Management discipline. You can then filter Ruddr reports by discipline to evaluate performance.
### Expense Markup
With this feature enabled, any expense item or project expense can be created with an amount to bill the client that is different from the amount of the expense. The expense can be marked up in this way by either a fixed amount or by a percentage of the original expense amount.
### Expense Reporting
With this feature enabled, you can track both internal expenses and client expenses. Client expenses must be associated with a project and can optionally be billed back to the client. For more on this feature, please refer to this [Expense Tracking](/expenses/expense-tracking-overview) article in the Ruddr Help Center.
### Multicurrency
With the [multicurrency](/multicurrency/multicurrency-overview) feature enabled, companies can operate in [over 150 worldwide currencies](/faqs-and-troubleshooting/multicurrency/what-currencies-are-supported-in-ruddr). This allows you to evaluate the performance of clients and specific projects in the most appropriate currency.
### Multiple Accounting Integrations
This feature allows workspaces to set up more than one accounting integration. This feature requires that the [Business Units](#business-units) feature is also enabled, as each accounting integration must be assigned to a business unit(s).
### Multistep Approval Workflow
Enabling [Multistep Approval Workflow](/workspace-administration/multi-step-approval-workflow-overview) allows organizations to establish, at a project level, a time-and-expense approval workflow with multiple, sequential approval steps and approvers. Ruddr supplies a one-step approval workflow by default, with the Project Admin serving as the sole approver of time and expense.
### Pipeline
The pipeline feature includes Opportunities, Companies, and Contacts, providing basic CRM functionality and reporting. For more, please refer to the [Pipeline](/pipeline/pipeline-overview) section of the Ruddr Help Center.
### Plan and Forecast Reporting
This feature enables a Forecast section of the reports, allowing you to view planned revenue and hours across all projects in the workspace. The project dashboard also provide projected hours and services revenue.
This feature requires the [Resource Allocations](#resource-allocations) feature to be enabled.
### Practices
Larger professional services companies often organize services offerings and personnel into Practices. With this feature enabled, you can assign a Practice to each member, client, and project in Ruddr. Reports can then be filtered by Practice.
### Project Health Reporting
Project Health Reporting allows you to score a project's health with respect to the budget, client satisfaction, and team satisfaction. For more, please refer to the [Project Health Reporting](/projects/project-health-reporting) article in the Ruddr Help Center.
### Project Groups
Project Groups are used to group a set of projects within a client to facilitate reporting across related projects. For more information on this feature, pleas refer to the [Project Groups](/clients/project-groups) article in the Ruddr Help Center.
### Project Rate Cards
Available within the Pro plan, Project Rate Cards enable the bill rates and labor cost rates on a project to change over time. The feature is on by default for new workspaces, and each project that needs rate cards turns them on with its **Use rate cards** setting. For more, please refer to the [Project Rate Cards](/projects/project-rate-cards) article in the Ruddr Help Center.
### Purchase Orders
The Purchase Orders feature allows you to create and manage purchase orders for better budget control and transaction tracking. For more on this feature, please refer to the [Purchase Order](/clients/purchase-orders) article in the Ruddr Help Center.
### Report Schedules
The Report Schedules feature enables the automated delivery of reports on a recurring schedule with a configurable frequency. Users can request to be notified as reports are created.
### Resource Allocations
Enabling this feature will allow your team to plan out projects while ensuring that all team members have an adequate amount of work. Allocations contribute to billable utilization projections and predicting target attainment. For more, view the [Resourcing](/resourcing/overview-of-resourcing) section of Ruddr Help Center.
This feature is required in order to leverage the [Plan & Forecast Reporting](#plan-and-forecast-reporting) feature.
### Ruddr Assistant
An AI assistant that combines product knowledge, industry expertise, and workspace data to provide real-time answers and analysis. For more, please refer to the [Ruddr Assistant](/getting-started/ruddr-assistant) article in the Ruddr Help Center.
### Time Attachments
When this feature is enabled, a member can upload one or more files to the [Week view](/time/the-week-view-for-time-tracking#time-attachments) of the time screen for a given week. Uploaded files can optionally be associated with a specific project that the member is assigned to. Also, there is a Time Attachments report in the Time section of reports that allows for easy reporting and viewing of time attachments.
### Timesheet Attestation
Available within the Pro plan, this feature requires selected members to certify the accuracy of their time before submitting a timesheet. Attestation statements are managed in [Custom Data](/workspace-administration/custom-data#timesheet-attestations) and assigned to members from the [member profile](/workspace-administration/member-profile#time-tracking). Note that the [Timesheets](#timesheets) feature must be turned on in order to enable Timesheet Attestation. For more, please refer to the [Timesheet Attestation](/time/timesheet-attestation) article in the Ruddr Help Center.
### Timesheets
Enabling Timesheets in your workspace establishes and enforces a policy that all time entries are submitted on a weekly basis. All time submissions prevent additional time entries from being added to that weekly period.
Disabling Timesheets allows for time entries to be submitted on a daily, weekly, or monthly basis and time entries can be added to a day that has already been submitted. For more, view the [Timesheets Overview](/time/timesheets-overview) article in the Ruddr Help Center.
### Utilization Tracking
When Utilization Tracking is turned on, Ruddr will help you evaluate individual and workforce productivity. There are four utilization metrics including billable utilization, client utilization, [productive utilization](/projects/create-a-new-project#productive-utilization), and total utilization.
### Workspace and Client Rate Cards
This feature allows to establish an organization rate card in the workspace, which can then be applied to any clients within the workspace. Additionally, and independent of the workspace rate card, roles and rates can be created for each client and then leveraged on each project for that client.
# General Workspace Settings
Source: https://help.ruddr.io/workspace-administration/general-workspace-settings
Configure workspace-wide defaults in Ruddr, including company information, business days, regional formats, and time and expense settings.
The first menu option within Settings area (Figure 1) is called **Workspace**. This area contains the high-level configuration options for the workspace.
The configuration sections available in Workspace Settings are:
* [Workspace Identification](#workspace-identification)
* [Company Information](#company-information)
* [Member Settings](#member-settings)
* [Regional Settings](#regional-settings)
* [Default Time Format](#default-time-format)
* [Time and Expense Settings](#time-and-expense-settings)
* [Time and Expense Notifications and Reminders](#time-and-expense-notifications-and-reminders)
* [Timesheet Settings](#timesheet-settings)
* [Client Settings](#client-settings)
* [Project Settings](#project-settings)
* [Allocation Settings](#allocation-settings)
* [Utilization Settings](#utilization-settings)
* [Task Settings](#task-settings)
### Workspace Identification
The first section within Workspace is **Workspace Identification** (Figure 2). This section allows you to set the name of the workspace, upload a logo, and specify the unique workspace identifier. Note that the identifier must be unique across all Ruddr workspaces. Also note that changing the unique workspace identifier will break existing links to the workspace.
### Company Information
The **Company Information** section (Figure 3) allows you to manage your company name and also provide a workspace contact for your members' general inquiries.
The **Company Name** is leveraged on any invoices that you create in Ruddr.
The **Notifications Reply To** field allows you to specify an internal email address where any replies to Ruddr-generated notifications can be sent. If this field is left blank, replies will go to [hello@ruddr.io](mailto:hello@ruddr.io). Often, members will want to respond to notifications with questions or requests that are intrinsic to their use of your organization's workspace.
By supplying this email address, those questions / requests can be routed to your internal Ruddr support team for triage. For example, if someone receives a timesheet submission reminder, they may reply to that notification to indicate that they are unable to submit their timesheet because they have yet to be added to a specific project. Should your team receive that response, you would be able to add that person to the project and enable them to submit their timesheet.
### Member Settings
The **Member Settings** section (Figure 4) allows you to specify whether or not you will allow members to manage their name and profile image in their [User Profile](/getting-started/user-profile#my-profile) section.
Additionally, you can set your company's standard business days. This defaults to Monday through Friday but you can change this as needed. When you add new members to your workspace, their default capacity will be the number of **Capacity Hours Per Day** for each of the standard business days that you set in this section.
Note that by setting the capacity and standard business days, you are not restricting your members from entering time and expense on non-business days, nor are you restricting them from entering more hours than specified for their capacity.
### Regional Settings
The **Regional Settings** section (Figure 5) provides you with the ability to set default settings for time zone, currency, and regional format. The regional format affects date, time, number, and currency format. By specifying these defaults, you are establishing the default settings for the workspace. Each member, however, has the ability to specify their own, preferred regional settings through the **My Profile** screen.
### Default Time Format
The **Default Time Format** section (Figure 6) allows you to specify the default time display format that will be used for new workspace members. You can select either clock format (1:30) or decimal format (1.5). Note that here you are merely controlling the default setting; workspace members have the ability to set their own preferred format within the **My Profile** screen. Hours can be typed into Ruddr's time screens in either clock or decimal format and will be automatically converted to the member's preferred format. *Reports and invoices in Ruddr always use decimal format*.
### Time and Expense Settings
The **Time and Expenses Settings** section (Figure 7) allows you to adjust settings related to:
* Acceptable time and expense dates
* Holiday time entry creation
* Expense project requirements
* Permit members to copy time entries from the previous week
* Time and expense locking
For more information on locking, see the [time entry locking](/time/time-entry-locking) article.
When the option **Automatically create holiday time off entries** is checked, Ruddr will evaluate your members' holiday schedule, and will create holiday time off entries for your members.
Note that members must have the **This member can track time off** setting enabled on the member profile and either the ability to track time to all time off types or to track time off to specific time off types, whereas the system Holiday time off type is specified.
These time off entries are created at the beginning of the week (Monday morning) in which the holiday occurs. Any holiday time off entry created by Ruddr can be edited / deleted just like any other time entry for that week, provided it is not locked by general time locking rules (such as timesheet submission, for example).
When the option **Time and expenses must be created within the project start and end dates** is checked, the following is true when creating a time and / or expense entry for the a specific project:
* If the project does not have either date specified, a time and / or expense entry can be created for any date.
* If the project only has a start date, then Ruddr will only ensure that the entries are created for dates *after* the start date.
* If the project only has an end date, then Ruddr will ensure that entries are created for dates *before* that end date.
* When both dates are specified on a project, Ruddr will ensure that the entries are created for dates within the start and end date range.
### Time and Expense Notifications and Reminders
The **Time and Expense Notifications and Reminders** section (Figure 8) of Workspace Settings provides a number of options for reminding workspace members to enter, submit, and / or approve time and expense at a determined interval. There are three classifications of reminders that can be configured:
* [Missing Time Reminders](#missing-time-reminders)
* [Unsubmitted Time / Timesheet Reminders](#unsubmitted-time-timesheet-reminders)
* [Manager and Approver Notifications](#manager-and-approver-notifications)
In Ruddr, **Missing Time** is a capacity-based calculation, comparing a member's capacity for a period to the number of hours entered for that same period. If a member has entered fewer hours than their capacity, that member is considered to have missing time.
**Unsubmitted Time** in Ruddr refers to any time entries that have yet to be submitted for approval, or those time entries in a ["Not Submitted" status](/time/time-entry-status).
For workspaces that have the [Timesheets feature](/time/timesheets-overview) enabled, **Unsubmitted Timesheets** refers to timesheets that may or may not have time entries, but have yet to be submitted.
#### Missing Time Reminders
Missing Time reminders (Figure 9) notify members that they are missing time for a specific period. As stated above, this is a capacity-driven calculation, meaning that a member's capacity is evaluated to determine if they have entered enough hours for a period.
**Notification Delivery**
* Daily: these are sent at 9 pm in the user's time zone
* Weekly: sent on Monday mornings at 3 am in the user's time zone
* Monthly: sent on the 1st of the month at 3 am in the user's time zone
#### Unsubmitted Time / Timesheet Reminders
For workspaces that are do *not* have the [Timesheets feature](/time/timesheets-overview) enabled, Workspace Admins can elect to send member reminders that they have unsubmitted hours for the period. Similar to the Missing Time reminders (Figure 9), these Unsubmitted Time reminders (Figure 10) can be sent daily, weekly, and / or monthly.
**Notification Delivery**
* Daily: these are sent at 9 pm in the user's time zone
* Weekly: sent on Monday mornings at 3 am in the user's time zone
* Monthly: sent on the 1st of the month at 3 am in the user's time zone
**Timesheets**
For workspaces that do have [Timesheets](/time/timesheets-overview) enabled, workspace admins can elect to send timesheet submission reminders (Figure 11).
Enabling this setting will ensure that an email reminder is sent to any workspace member who has not submitted a timesheet for the current week or any of the four previous weeks. The reminder can be scheduled at the preferred hour on Friday, Saturday, or Sunday. The reminder will be sent at the designated time in each workspace member’s local time zone. Optionally, you can Cc the member's manager on this reminder email.
#### Manager and Approver Notifications
For Workspace Admins that are looking to delegate the responsibility of tracking down missing time, Ruddr can send weekly notifications to all managers in the workspace that have direct reports with missing or unsubmitted time. To enable this, check the corresponding box (Figure 12) in Time and Expense Settings.
Approver notifications (Figure 12) send emails to members to notify them that they have items in their approval queue. Manager notifications provide managers with insights into any of their direct reports that have missing time or unsubmitted time.
For workspaces that leverage [Multi-Step Approval Workflow](/workspace-administration/multi-step-approval-workflow-overview), it is important to note the following with regards to time and expense notifications / reminders (Figure 12). These notifications / reminders will be sent to any / all approvers listed for the current step in the approval workflow. For example, if an approval workflow is currently in Step 2 of 3, and there are three approvers listed for Step 2, all three approvers will receive a notification and will also receive an approval reminder if either of these options (Figure 12) are enabled.
**Notification Delivery**
* Weekly manager notifications are sent once a week, on Monday mornings at 3 am in the user's time zone.
* Time and Expense approval notifications are sent immediately when a time entry or expense item needs approval.
* Daily approval reminders are sent at 9 am in the user's time zone.
### Timesheet Settings
For workspaces that leverage the [Timesheets feature](/time/timesheets-overview), the Timesheets Settings section (Figure 13) will be available. In this section, Workspace Administrators can configure [timesheet splitting](#splitting-timesheets), [automatic timesheet submission](#automatic-timesheet-submission) and [timesheet unsubmission rules](#timesheet-unsubmission-rules).
#### Splitting Timesheets
Your workspace can allow for members to submit multiple timesheets in cases where a week spans multiple billing periods. In the Timesheet Settings area of workspace settings, you can specify whether or not you want to enable the ability for timesheets to be split across these periods. If you wish to enable this, you can choose from either / both of the following options:
* At the end of the semi-month (on the 15th)
* At the end of the month
For more on the member's timesheet submission experience when timesheet splitting is enabled, please refer to the Ruddr Help Center article on [submitting two timesheets in a single week](/faqs-and-troubleshooting/time-and-expense/why-do-i-need-to-submit-two-timesheets-in-one-week).
#### Automatic Timesheet Submission
In some circumstances, you may want to automatically submit timesheets on behalf of members that have yet to submit them in an appropriate timeframe. There are two options available (Figure 14) in Timesheet Settings to have Ruddr automatically submit timesheets for members.
1. You can submit timesheets for the previous week on a given day of the next week.
2. You can also submit all timesheets for the previous month on a given day of the new month.
When either of these settings enabled, Ruddr will evaluate each member's time zone (as they may have specified in [their user profile](/getting-started/user-profile#my-profile)) and attempt to submit timesheets at 9:00 am in their respective time zone.
With regards to the automatic submission of timesheets, note that Ruddr will only attempt to submit completed weeks. Ruddr will not attempt to submit timesheets for weeks that are still in progress.
Also, Ruddr will not submit a timesheet that does not meet capacity requirements if the "Do not allow timesheet submission until this member's capacity is met" setting on their [Member Profile](/workspace-administration/member-profile) is checked.
Additionally, Ruddr will not automatically submit timesheets for members that are required to sign a [timesheet attestation](/time/timesheet-attestation). Those members must review, sign, and submit their timesheets manually.
In either case, members will receive an email notification (Figure 15) letting them know that their timesheet was automatically submitted. This adds efficiency to the oversight and management of timesheet submission in the workspace.
#### Timesheet Unsubmission Rules
When a workspace member submits a timesheet, that member may later realize they need to make a correction. In that scenario, the member needs to unsubmit the timesheet, make the correction, and then resubmit the timesheet. In many cases, a workspace may wish to allow members to unsubmit their timesheet for some period of time, as it reduces the administrative burden that would otherwise fall on senior-level personnel. Ruddr provides workspace settings (Figure 16) that allow the Workspace Admin to identify the scenarios in which timesheet unsubmission will be prohibited.
### Client Settings
The **Client Settings** section (Figure 17) allows you to specify the default payment terms for clients in the workspace. These payment terms will be set by default when you initially create a client.
These settings also allow workspaces to turn on automatic client codes, similar to the what is available in Project Settings. With automatic client codes, you can specify a format for the code (Figure 18) and each new client created in the workspace will be assigned a client code with that format. Additionally, you can specify whether you want to require unique client codes throughout the workspace. When this setting is checked, a client's settings can not be saved if the client code already exists on another client within the workspace.
### Project Settings
The **Project Settings** section (Figure 19) allows you to configure project defaults for every new project that gets created in the workspace. For more information about project settings, see the [create a new project](/projects/create-a-new-project) article.
You can also turn on automatic project codes in this section. With automatic project codes, you can specify a format for the code (Figure 20) and each new project created in the workspace will be assigned a project code with that format. Additionally, you can specify whether you want to require unique project codes throughout the workspace. When this setting is checked, a project's settings can not be saved if the project code already exists on another project within the workspace.
Lastly, if the [Multi-Step Approval Workflow](/workspace-administration/multi-step-approval-workflow-overview) feature is turned on in your workspace, you can manage the default approval workflow for time and expense.
### Allocation Settings
For workspaces that leverage the [Resource Allocations feature](/workspace-administration/features#resource-allocations) in Ruddr, the **Allocation Settings** section (Figure 21) give you the ability to set defaults related to resource allocations. When creating an allocation, you can specify a number of allocated hours for each resource. You can allocate by day / week / month, apply a total number of hours, or allocation based on a percentage of a member's capacity. Here, you can specify the default allocation method setting for the workspace. Additionally, you can default whether or not new allocations will override a member's time off.
If you would like for a member's allocations to be shown on the [week view of the time screen](/time/the-week-view-for-time-tracking), you can enable that in this section of workspace settings. This will allow members to quickly create time entries from their allocations.
Lastly, you can choose whether **soft** [bookings](/resourcing/confirmed-and-soft-bookings) appear on members' [My Allocations](/resourcing/schedule#my-allocations) screens. By default they are hidden; enable **Show soft allocations on the My Allocations screen** to show them, faded, alongside confirmed bookings. Soft bookings are never shown on the week view of the time screen, regardless of this setting.
### Utilization Settings
The **Utilization Settings** section (Figure 22) allows you to manage how utilization may be displayed or tracked in the workspace. By checking the **Default utilization values to adjust for Time Off**, each screen and or report that allows you to view utilization and Adjust for Time Off will default to this setting being turned on. When any Adjust for Time Off setting is applied when viewing utilization, the capacity being leveraged in utilization calculations is reduced by the number of time off hours taken during the period.
For more on this Adjust for Time Off setting, please refer to the [Personal Dashboard](/getting-started/the-home-area) and / or [Utilization Reports](/reports/utilization-reports) articles in the Ruddr Help Center.
### Task Settings
The **Task Settings** section (Figure 23) allows you to turn on automatic task codes, similar to the what is available in both Client Settings and Project Settings. With automatic task codes, you can specify a format for the code (Figure 24) and each new task created in the workspace will be assigned a task code with that format. Additionally, you can specify whether you want to require unique task codes throughout the workspace. When this setting is checked, a task's settings can not be saved if the task code already exists on another task within the workspace.
# Integrations
Source: https://help.ruddr.io/workspace-administration/integrations
Set up and configure third-party integrations in Ruddr, and find the CSV import tool for loading data into your workspace.
The Integrations section (Figure 1) of the Settings area allows Workspace Admin to setup and configure third-party integrations within Ruddr. There is also a [CSV Import](#csv-import) function available within this section.
### Third-party Application Integration
For additional information on the nature of the third-party integrations and how to set those up, please refer to the [Integrations help center](/integrations/bamboohr-integration-overview).
### CSV Import
The Integrations section (Figure 1) also provides a **CSV Import** tool that allows Workspace Admins to import CSV files to populate certain Ruddr data entities, such as members, clients, projects, and time entries. This is especially useful when you are first setting up your workspace and need to load data from an existing system.
For the full list of supported entities and step-by-step instructions, see the [CSV Import](/workspace-administration/csv-import) help article.
### Cloud Storage Integration
In addition to the integrations shown in the Integrations section (Figure 1), users can also connect any Ruddr project to a cloud folder from any of the major cloud storage providers, integrating Ruddr with Google Drive, OneDrive, Microsoft Teams, SharePoint, Box, Dropbox, and more. For more information on this integration, please refer to the [Cloud Storage Integration](/integrations/cloud-storage-integration) help article.
# Invoice Settings
Source: https://help.ruddr.io/workspace-administration/invoice-settings
Set workspace-wide invoice defaults, including payment terms, tax treatment, invoice variables, and how time and expenses display on invoices.
The second menu option within the Settings area (Figure 1) is called **Invoices**. This area allows you to configure several invoice defaults.
### Invoice Settings
The first section is **Invoice Settings** (Figure 2) which includes the settings that will be applied to all invoices, including invoice street address and the logo to be applied to each invoice. These settings can not be overridden on a per-invoice basis.
### Basic Invoice Defaults
The second section is **Basic Invoice Defaults** (Figure 3) and here you can set the default terms, tax rate, and invoice note for the workspace. Tax rates can be configured in the Custom Data screen within Workspace Settings. The default tax rate can then be inherited or overridden at the client and project levels.
In this section, you can specify whether or not you want Ruddr to enforce contiguous invoice numbers. When this setting is checked, Ruddr will look for the first available invoice number from the beginning of the current invoice seeding. If an invoice is deleted, Ruddr will re-use the number in an effort to maintain a contiguous list of invoice numbers in the workspace.
When draft invoices are created, Ruddr generates an Issue Date based on either the date the invoice is created or the "through date" of the invoice. The through date is the date through which services are included. This date is determined by the end date specified when generating the invoice from the [Ready to Bill](/billing/ready-to-bill) screen. Here in the Invoice settings area, you can specify which date you want Ruddr to use for the Issue Date.
Also in this section, you can also specify the default tax treatment for Services, Expenses, and / or Other Items to Bill. This is particularly useful in countries where certain types of revenue items are always taxable. Ruddr will automatically apply the default tax rate for those line items when an invoice is created.
By default, Ruddr will display the project name in the Details of each line item on an invoice. This may be appropriate on invoices that contain line items associated with more than one project. You can change this configuration here by setting whether or not the project name displays by default for Services, Expenses, and / or Other Items.
#### Using Invoice Variables
The Basic Invoice Defaults section introduces invoice variables. Invoice variables are common fields found on an invoice that can be applied to various text fields on an invoice, and as described below, in the invoice email that you send to clients.
In this section, you can include invoice variables in the Invoice Subject field as well as the Invoice Note field. By clicking the **Insert Variables** link above the setting text box, you can insert an invoice variable (Figure 4) at any point within the text of the field. You can either check the box next to any variable(s) you wish to include at the point where your cursor currently is in the field, or you can click the clipboard icon next to any variable to copy the variable name for inserting at any point in the text.
By inserting an invoice variable, Ruddr will interpret the value of the variable for each particular invoice and will include that value in the content, as specified in the default settings. This text can always be edited on a draft invoice, but will be the default value when invoices are created.
When a client receives an invoice via Ruddr, that email can include both a PDF version of the invoice and a link to a web view of the invoice. In this section of Invoice Settings, you can set defaults to control whether or not a detailed time report of hours worked will available from the web view and whether or not receipts for expenses on the invoice will be made available. You can also set defaults controlling the PDF attachment of the invoice and / or the detailed time report to the invoice email.
Lastly, you can set the default list of invoice columns to include on the published invoice.
Aside from the contiguous invoice numbers settings, all of the settings in this section can be overridden on any invoice. Note that these invoice details will be automatically inherited by each client in the workspace or you can override these details at either the client level or the individual project level.
### Time Presentation Defaults
The settings in the **Time Presentation Defaults** section (Figure 5) allow you to set defaults for how time-entry, invoice line items display on invoices. Time entries can either be shown in detail or they can be grouped.
If you select the **Group time entries on invoices** option (Figure 5), you will have the option to group by project, project role, project role and member, project task, project task and member, or just member.
If you select the **Show all time entries on invoices** option (Figure 6) you will have the option to include Date, Project Role, Task, Person, and Notes on each invoice line item.
These default settings can be overridden on a per invoice basis.
### Expense Presentation Defaults
The **Expense Presentation Defaults** section (Figure 7) of the Invoice Settings allows you to configure the default invoice line item format for expense entries. Expense entries can either be shown in detail or they can be grouped.
If you select the **Group expense items on invoices** option (Figure 7), you will have the option to group by project, expense category, category and person, or just person.
If you select the **Show all expense items on invoices** option (Figure 8) you will have the option to include date, category, vendor, person, and notes on each invoice line item.
These default settings can be overridden on a per invoice basis.
### Time Report Defaults
If you elect to **Provide a time detail report on the digital version of an Invoice** in the Basic Invoice Defaults section (Figure 3), you can configure the report format using the **Time Detail Report Defaults** section (Figure 9). You can control the grouping of time entries as well as the specific columns to include in the detailed time report. Note that any changes to this setting will apply to *future* invoices.
### Invoice Email Defaults
The next Invoice Settings section is **Invoice Email Defaults** (Figure 10). These settings will applied when sending invoices to customers via Ruddr. These settings include the From Name, Reply To email address, and the Body of the email message. Each of these defaults can be overridden on a per-invoice basis.
Here, you can also apply [Invoice Variables](#using-invoice-variables). Clicking on the **Insert Variables** link just above either of the Invoice Email Subject or Invoice Email Body fields will allow you to insert common invoice variables (Figure 4) into the text. As draft invoices are generated, the values associated with the variables will be included in the text.
### Ad-hoc Invoices
Ad-hoc invoices are invoices that are created "from scratch", as opposed to invoices that are created from the [Ready to Bill screen](/billing/ready-to-bill). In Ruddr, ad-hoc invoices should very rarely be created, as you will want to generate invoices from transactional data on your projects. As such, you have the ability to restrict members from creating ad-hoc invoices by disabling the **Allow ad-hoc invoice creation** setting (Figure 11) in the Invoices settings area of workspace settings.
When this setting is disabled, the Create Invoice button found on the [Invoices](/billing/invoices-list) list screen will not be available.
### Workspace Accounting Integration
If the Multiple Accounting Integrations feature is enabled, there will be an additional setting available in the Invoices section of workspace settings. Here, you will find an **Accounting Integration** setting (Figure 12). Here, you will specify the default accounting integration to use for the workspace.
The default workspace accounting integration will be used for invoices that are generated for projects that are not associated with a business unit.
# Managing Your Workspace
Source: https://help.ruddr.io/workspace-administration/managing-your-workspace
An overview of the Settings area in Ruddr and the permission required for Workspace Admins to manage workspace configuration.
### Who Can Manage Your Workspace
To access the Settings area of Ruddr, your [security role](/workspace-administration/security-roles) must have the **Administer all workspace settings and members** permission. *Only the built-in Workspace Admin role has this permission*. To get to the Settings area, simply click on the **Settings** menu option in the main nav bar (Figure 1).
### Aspects of Your Workspace that You Can Manage
Accessing the Settings area of Ruddr will provide Workspace Administrators with the ability to manage various aspects of the system as it pertains to the current Workspace. Once in the Settings area, these aspects are available via the sub-navigation menu of the nav bar (Figure 2). You can read more about these settings throughout this section of the User Guide.
# Member Profile
Source: https://help.ruddr.io/workspace-administration/member-profile
Manage a member's profile in Ruddr, including identity, security role, capacity, cost and target periods, and project assignments.
To access a member profile, first navigate to the [**Members** area](/workspace-administration/members) of workspace settings and then click on the member's profile card from the list (Figure 1).
There are six tabs (Figure 2) on the member profile — **General**, **Capacity**, **Cost**, **Target**, **Projects**, and **Files** — that allow you to navigate to the following sections:
* [General Settings](#general-settings)
* [Capacity Periods](#capacity-periods)
* [Cost Periods](#cost-periods)
* [Target Periods](#target-periods)
* [Project Assignment](#project-assignment)
* [Files](#files)
### General Settings
This will take you to the **General** tab (Figure 3) of the member's profile, where you can manage the following sets of properties:
* [Identity](#identity)
* [Slack Identity](#slack-identity)
* [Member Type](#member-type)
* [Status](#status)
* [Active Date Range](#active-date-range)
* [Security Role](#security-role)
* [Authentication](#authentication)
* [Holiday Schedule](#holiday-schedule)
* [Organization](#organization)
* [Skills and Resume](#skills-and-resume)
* [Time Tracking](#time-tracking)
* Internal Expenses
* [Notifications](#notifications)
#### Identity
At the top of the profile, you can provide the member's identity information (Figure 3). This includes the name, email address, and photo.
If you would like to allow the member to control their identity information, such as their name and photo, simply check the **Let this member manage their identity information** checkbox.
If you do not want the member to be able access the workspace, just uncheck the **Allow this member to log in to this workspace** checkbox.
#### Slack Identity
In the **Slack Identity** section (Figure 4), you can associate a Member with their Slack User account to enable Slack integration within Ruddr. Note that Slack Identity is only available if the Slack Integration has been installed in Ruddr. If the Slack integration has been setup for this workspace, a list of Slack users will be available in the **Slack User** dropdown.
For more information on Slack integration, view the [Slack Integration Overview](/integrations/slack-integration-overview) article. For details on how to setup the Slack integration, view the [Slack Integration Setup](/integrations/slack-integration-setup) article.
#### Member Type
The **Member Type** section (Figure 5) allows you to set the member as either an employee, contractor, or other. This setting can be useful when running reports.
A member's labor cost type will be displayed here. This labor cost type is specified when entering a [member's cost periods](#cost-periods).
This section also allows you to specify whether or not the member is billable. If this setting is not checked, the member will not be able to record time or expenses toward client billable projects. The member will, however, be able to record time and expenses to projects under the internal client. Non-billable workspace members in Ruddr are free, if the workspace maintains 50% total active, billable members.
Ruddr will charge for the greater of 1) the active billable workspace member count; or 2) half of the total active workspace member count. So, if your workspace has 100 active members and 50 or more of those are configured as billable, there is no change to your invoice. But, if your workspace has 100 active members and fewer than 50% are configured as billable, you will be charged for 50% of the total active member count.
Finally, a default bill rate can be set for the member. When this bill rate is set and the member is added to a project that does not use [Project Roles](/projects/project-roles), the default bill rate will automatically be applied as the member's rate on the project.
**Multicurrency**
For workspaces that leverage Ruddr's multicurrency feature, you can specify a default bill rate currency. If you add a team member with a default bill rate to a project, and the project's currency does not match the member's default bill rate currency, the default bill rate will not be applied as the member's currency on the project. You will need to set the bill rate for that member in the project's currency.
#### Status
The **Status** section (Figure 6) allows you to set whether the member is active or inactive. If the member is inactive, the member will no longer be able to access the workspace. You will still have access to the data previously created by the member.
#### Active Date Range
The **Active Date Range** section (Figure 7) identifies the member's start date and end date in the workspace. These dates are important for the utilization calculations and reports. The start date may or may not be the same as the member's hire date with your company. The start date defaults to the date that the member was invited into the workspace. The end date should be blank unless the member had been deactivated in the workspace.
#### Security Role
The **Security Role** section (Figure 8) is where you assign the member a [security role](/workspace-administration/security-roles). Each member of the workspace must have a security role assignment which determines their access to information and features in Ruddr.
The security role is initially set when the new member is added to the workspace. Ruddr comes with built-in security roles but you can create and customize your own security roles to meet your organization's needs. To learn more, check out our [security roles](/workspace-administration/security-roles) help article.
#### Authentication
The **Authentication** section (Figure 9) allows you to select which authentication provider should be leveraged by the member. If you have set up Single-Sign On in the workspace, you may support multiple providers and need for various members to use a specific authentication method when accepting invitations and logging into Ruddr. Members can be set to use the workspace default provider or another, active provider in the workspace.
#### Holiday Schedule
The **Holiday Schedule** section (Figure 10) is used to assign a holiday schedule to this member. Ruddr allows each workspace to define holidays and then create one or more holiday schedules. Once these holiday schedules are created, you can optionally assign a schedule to a workspace member. These holidays will automatically show up on the member's time screens in Ruddr and you can optionally have Ruddr create the time off entries for members as well.
For more information on managing holiday schedules, view our [Custom Data help article](/workspace-administration/custom-data).
#### Organization
The **Organization** section (Figure 11) allows you to set a number of data elements related to the member's role in the organization. Each of these data items can be configured within the Custom Data area of workspace settings. For more information on Custom Data, view our [Custom Data help article](/workspace-administration/custom-data).
From the Organization section, you can provide the Job Title, Business Unit, Practice, Discipline, Manager, Tags, an internal Member ID, and internal Notes. You can supply as many tags as you like.
The **Business Unit** field appears only when your workspace has the [Business Units feature](/workspace-administration/features#business-units) enabled, and it sits just after the Job Title. A business unit works much like a practice, so a member can belong to both. For example, a member's business unit might be **North America** while their practice is **Retail**. Business units are defined in the [Custom Data](/workspace-administration/custom-data#business-units) section of workspace settings.
You do not need to provide data for any of the items within the Organization section. If your company does not use business units, practices, or disciplines, simply leave those items blank within this section.
Note that all of the non-internal fields in this section can be used for filtering reports.
The Internal ID field is useful when linking members in Ruddr with their respective user account in your HR or accounting platform. The internal notes are only accessible to the Workspace Admin and can only be viewed within workspace settings
#### Skills and Resume
In the **Skills and Resume** section (Figure 12), you can provide information about the member's experience and expertise by uploading a resume, adding LinkedIn profile and assigning one or more skills to their profile. You can supply as many skills as you like, and those skills can be used when filtering reports or resource allocations.
To upload a resume, click on the Resume widget (Figure 12). This will open a File Dialog box, allowing you to navigate to a file location and select a resume for uploading to the member profile.
Once a resume has been added, the Resume widget (Figure 13) will display the resume file name.
Hovering over the widget (Figure 14) will provide the Workspace Admin with the ability to open, download, or delete the resume.
Once a resume has been provided for a member, the resume can be accessed from the member's contact card, under the Skills & Tags tab (Figure 15), visible in the Resourcing area of Ruddr.
#### Time Tracking
In the **Time Tracking** section (Figure 16), you can apply various settings for a member related to how they enter and submit time in the workspace.
The first setting, enabled by checking the checkbox labeled **Do not allow timesheet submission until this member's capacity is met**, governs whether the member is required to fulfill minimum time requirements in order to submit a timesheet. This applies to all workspaces leveraging the [Timesheets](/time/timesheets-overview) feature in Ruddr, and will enforce a rule that the member's timesheet can not be submitted if it has fewer hours than is specified by the member's [capacity](#capacity-periods).
For workspaces with the [Timesheet Attestation feature](/time/timesheet-attestation) enabled, you will also see a checkbox labeled **Timesheets require attestation**. Checking this box displays a **Timesheet Attestation** dropdown where you can select the attestation statement that the member must sign on every timesheet submission, along with a preview of the statement text. Note that automatic timesheet submission is disabled for members that require attestation.
If the user can track time off, you can specify whether the time is automatically approved, or if that time should be approved by a specific workspace member (the member's manager or another, specific workspace member).
In addition to enabling the member to track time off, you can list specific time off types for which the member can create time off entries.
#### Internal Expenses
The **Internal Expenses** section (Figure 17) covers any internal expenses that are not associated with a project. In that scenario, you can specify how those expenses are to be approved for a member.
This setting is applicable when the **Expense items must have an associated project** is not selected. In that case, you can specify if a member's internal expense is approved automatically, by this member's manager, or by a specific member in the workspace.
#### Notifications
The **Notifications** section (Figure 18) allows you specify which reminders and notifications a particular member can receive. A tooltip next to each checkbox explains what that notification does:
* **Missing Time Reminders** - Sends this member a reminder email when they have not entered enough hours for the period.
* **Timesheet Submission Reminders** - Sends this member a reminder email when they have one or more unsubmitted timesheets in the past 5 weeks.
* **Automatic Timesheet Submission Confirmation** - Sends this member a confirmation email when one of their timesheets is automatically submitted.
These mirror the corresponding [workspace-level notification settings](/workspace-administration/general-workspace-settings#time-and-expense-notifications-and-reminders), but scoped to this individual member.
#### Ruddr Intelligence
Allows Workspace Members to enable or disable Ruddr Intelligence for any member (Figure 19).
### Capacity Periods
The **Capacity** tab (Figure 20) of the member's profile shows the days and hours that the member is available to work. Since some members may not be full-time employees, the member's availability is used to determine the expected number of hours the member should enter into Ruddr in a given period of time. Since a member's availability can change over time (such as moving from part-time to full-time), Ruddr allows you to keep a history of the member's availability.
Accurately setting availability is important for enforcing weekly time entry minimums and for calculating utilization rates.
You can edit or delete an availability period using the menu on the right side of the row (Figure 19). You can add a new availability period using the **+ Quick Add** button at the bottom of the list.
### Cost Periods
The **Cost** tab (Figure 21) of the member's profile shows the per-hour labor cost of the member and overhead cost for the member.
In order for Ruddr to calculate profit margin accurately, it must know the labor cost of each member of the project team. There are three different **Cost Methods**:
1. **Hourly Wage**: This is to be used for members that you pay by-the-hour. Subcontractors are typically paid by the hour and setting their Labor Cost as Hourly Wage would be appropriate.
2. **Fixed Wage Per-Hour**: For employees that have a fixed salary, you can provide a per-hour value for labor cost. To calculate the per-hour labor cost of an employee, divide the salary by 2,080 (standard available hours) and then provide any overhead amount in the Overhead Cost column.
3. **Fixed Wage Per-Month**: For employees that have a fixed salary, you can provide a per-month value for labor cost as well as overhead cost. This may be preferred over the Fixed Wage Per-Hour calculation. If an employee is set up with a cost period based on the Fixed Wage Per-Month cost method, their hourly rate on projects is calculated by that month's labor cost divided by the number of capacity hours during that month.
Since employees and contractors have costs (salary or bill rate) that change over time, you can create multiple labor cost periods. In order to have accurate historical reporting on profit margin, it is important to keep the labor cost periods up to date.
You can edit or delete a labor cost period using the menu on the right side of the row. You can add a new labor cost period using the **+ Quick Add** button at the bottom of the list.
**Multicurrency**
For workspaces that leverage Ruddr's [Multicurrency feature](/multicurrency/multicurrency-overview), a member's labor cost can be set to any of the currencies that have been selected for the workspace. By default, a member's labor cost will be set to the Home Currency, as specified in workspace settings.
### Target Periods
The **Target** tab (Figure 22) of the member's profile shows the billable utilization target of the member. In order for Ruddr to calculate a member's target attainment, it must know the member's billable utilization target. While providing a target billable utilization is optional, it is highly recommended as it helps workspace members drive optimal performance.
Since billable utilization targets can change over time, you can create multiple billable utilization target periods.
You can edit or delete a billable utilization target period using the menu on the right side of the row. You can add a new billable utilization target period using the **+ Quick Add** button at the bottom of the list.
### Project Assignment
The **Projects** tab (Figure 23) of the member's profile shows all of the projects that the member is currently assigned to. This screen can be quite helpful when you are trying to understand the projects that the member can access within the workspace.
This screen is also useful when initially adding a new member to multiple projects at once. Rather than navigate to each project in Ruddr, you can click the **Assign Project** button to quickly assign the member to a project.
You can edit a member's project team assignment by clicking the edit button on the right side of the project row.
### Files
On the Files tab (Figure 24), a member can upload files to the member record in Ruddr and, subsequently, access those files. These files are only manageable and accessible via this tab on the Member Profile, and therefore, can only be managed and accessed by a Workspace Administrator.
To upload files, workspace administrators will need click on the **Manage Files** button on the top right of the Files tab (Figure 25). This will open the Files drawer (Figure 24), where files can be dropped onto the drawer, or members can click on the screen to select one or more files for upload.
Once a file(s) has been added, a workspace administrator can open the file for viewing, download a copy of the file, or delete the file. This can be accomplished by hovering the mouse over the file (Figure 26) and selecting the appropriate option from the list of buttons made available.
# Member Templates
Source: https://help.ruddr.io/workspace-administration/member-templates
Create member templates that apply reusable defaults, such as security role and time tracking settings, when adding new workspace members.
Member Templates let you define reusable presets for the settings applied to new workspace members. This helps ensure that members are created with consistency. A template captures common defaults — such as member type, security role, holiday schedule, time tracking preferences, and notification settings — that are then applied automatically when you create a new member and select the template.
Member Templates are a [Custom Data](/workspace-administration/custom-data) entity managed by Workspace Admins. You will find them in the **Members** category of the Custom Data section of Workspace Settings.
## Creating a Member Template
To create a template, open the Member Templates screen from Custom Data and click the **New Member Template** button. This opens the Member Template drawer, where you provide the template's details and defaults.
Every field on a template is optional. A field you leave unset simply means "do not prefill this value when creating a member". When a member is created from the template, only the values you have set are applied.
The drawer organizes a template's defaults into the following sections.
### Details
* **Name** - The name of the template, shown when you select a template during member creation (Figure 1).
* **Description** - An optional description to help Workspace Admins understand when the template should be used.
### General
* **Member Type** - The member type applied to new members created from the template. This can be Employee, Contractor, or Other.
* **Labor Cost Type** - The method used to determine the member's labor cost. This can be Hourly Wage, Fixed Wage Per-Hour, or Fixed Wage Per-Month.
* **Billable Workspace Member** - Whether the member is billable. Only members configured as billable can record billable time and expenses toward projects.
* **Security Role** - The [security role](/workspace-administration/security-roles) that determines the member's privileges within the workspace.
* **Authentication Provider** - The default authentication provider suggested for the member. See [Applying a Template When Creating a Member](#applying-a-template-when-creating-a-member) below for how this interacts with login access.
* **Holiday Schedule** - The [holiday schedule](/workspace-administration/custom-data#holiday-schedules) assigned to the member.
* **Location** - The member's location.
When the corresponding feature is enabled in your workspace, the General section also includes:
* **Default Bill Rate Currency** - Available with the Multicurrency feature.
* **Business Unit** - Available with the [Business Units feature](/workspace-administration/features#business-units).
* **Practice** - Available with the Practices feature.
* **Discipline** - Available with the Disciplines feature.
* **Ruddr Assistant** - Available with the Ruddr Assistant feature. Sets whether the assistant is enabled for the member.
### Time Tracking
* **Ability to Track Time Off** - Whether the member is allowed to track time off.
* **Allowed Time Off Types** - When time off tracking is allowed, choose whether the member can use all time off types or only specific ones. Selecting **Specific time off types** reveals a **Time Off Types** field where you choose the individual [time off types](/workspace-administration/custom-data#time-off-types) the member can use.
* **Time Off Approval** - The approval mode used for the member's time off entries.
When the Timesheets feature is enabled, this section also includes a **Timesheet Capacity Setting**.
### Expenses
When the Expense Reporting feature is enabled, the Expenses section includes an **Internal Expense Approval** field that sets the approval mode for the member's internal expenses.
### Notifications
* **Missing Time Reminders** - Whether the member receives reminders for missing time.
When the Timesheets feature is enabled, this section also includes **Timesheet Submission Reminders** and **Automatic Timesheet Submission Confirmation**.
A template defines the mode for time off and expense approvals (for example, automatic approval or manager approval) but does not store member-specific approvers such as a manager, time off approver, or internal expense approver. Those are tied to specific people, which would make a template less reusable. When a template uses manager-based approval, the member's manager is selected during member creation rather than on the template.
Some member details are intentionally out of scope for templates because they are specific to an individual member rather than reusable across many. These include the member's default bill rate amount, billable utilization target, and similar fields.
## Applying a Template When Creating a Member
When you [add a new member](/workspace-administration/members#add-a-new-member) to your workspace, you can select a **Member Template** (Figure 3). Selecting a template automatically prefills the member's settings with the template's defaults.
You can still change any prefilled value before saving. The values you enter when creating the member always take precedence over the template's defaults, so a template provides a starting point without locking you in.
Login access is decided when you create the member, not on the template. If you create a member with login disabled, any authentication provider suggested by the template is cleared.
After you save the new member, Ruddr opens that member's dashboard so you can finish configuring any remaining details.
## Editing or Deleting a Member Template
You can edit a template at any time by clicking the edit (pencil) icon on its row in the Member Templates list. Editing a template does not change members who were previously created from it; a template's defaults are applied only at the moment a member is created.
You can delete a template that is no longer needed. As with other Custom Data, all Member Templates can be exported. See the [Exporting Custom Data](/workspace-administration/custom-data#exporting-custom-data) section of the Custom Data article for more information.
# Members
Source: https://help.ruddr.io/workspace-administration/members
Add, invite, deactivate, and manage workspace members in Ruddr, including bulk updates and resolving suppressed email addresses.
The **Members** option within the Settings area (Figure 1) will bring up the Members screen. From this screen (Figure 2) you can [add new members](#add-a-new-member) to the workspace, [edit members](#edit-a-members-profile), [deactivate (and activate)](#deactivate-a-member) members, and [invite members into the workspace](#inviting-a-member-to-join-your-workspace).
On the Members page, you can toggle between a Grid view (Figure 2) and a List view (Figure 3) by clicking on the Grid/List selector (Figure 4). Also, from the list view you can apply [**Bulk Updates**](#applying-bulk-updates) to members.
You can download the list of members from either view by clicking the download button at the top-right of the screen.
The **Search** box at the top-left of the screen allows you to search by a member's name, email address, or internal ID. Additional list filters are also available including Security Role, Manager, Job Title, and more. When the workspace has the [Business Units feature](/workspace-administration/features#business-units) enabled, a **Member Business Unit** filter is also available.
To take action on a member, you can either click on the ellipses button on the member's card (Figure 5) in the Grid view or choose the action menu (Figure 6) on the member row in the List view.
Each of these menus will present the available actions that you can take on that member.
### Add a New Member
To add a new member to the workspace, click on the **+** button at the top-right of the screen. This will open the New Member window (Figure 7). You are required to supply the new member's name and email address.
**Member Templates**
To help ensure that new members are created consistently, you may prefer to use [member templates](/workspace-administration/member-templates). A Member Template is a set of predefined defaults for a specific type of workspace member. You can select the template on the New Member window. These templates can help you consistently configure the member type, holiday schedule, security role, and similar settings.
At the bottom of the New Member window, you can choose whether the member can log in to the workspace and whether an email invitation should be sent.
Note that invitations can always be sent at a later time by clicking on the **Send Invitation** option within the ellipsis menu (Figure 9) for that member.
You can send invitations to multiple members by selecting the members on the list view and utilizing the bulk send option.
### Email Suppression
If Ruddr sends an email but receives an undeliverable response, that email address will be placed on Ruddr's email suppression list. This is done for security and abuse prevention purposes.
The member card will show a red exclamation mark icon if the member is on Ruddr's email suppression list (Figure 10). Ruddr will not send any emails to an address on the suppression list.
The most common cause of an email address bring suppressed is that a new employee was invited into the workspace before that employee's email address had been provisioned. Workspace Admins should ensure that a new hire's email address is active before inviting the member into the workspace.
Hovering your mouse over the red exclamation icon will show a tooltip (Figure 11) indicating that the email address is being blocked by Ruddr. To resolve this, you will need to contact Ruddr support ([help@ruddr.io](mailto:help@ruddr.io)) and request that the email address be removed from the suppression list.
### The Member Dashboard
The New Member window provides a small subset of a workspace member's settings. To review and edit the full set of options, click on the member's card to bring up the Member Dashboard.
From the Member Dashboard, you can configure all member settings including capacity, cost, billable utilization target, notifications preferences, and many more.
### Delete a Member
The only time a member can be deleted from a workspace is when the member is not associated with other data entities in the workspace.
If the member has no such associations, the member can be deleted by choosing the **Delete** option (Figure 12) from the ellipsis menu at the top-right of the member's profile card on the members list.
If conditions exist that prevent the deletion of the member, you will need to either remove all of the data associations or deactivate the member instead.
### Deactivate a Member
Typically, a member cannot be deleted because the member is associated with operational data in the workspace (such as time entries or expense items). In these cases, the member can only be deactivated. This has the same effect as deleting the member, as the member will no longer be able to access the workspace. Any time a member is deactivated or deleted, any prepaid but unused fees related to the member are credited to the workspace account.
To deactivate a member, simply select the **Deactivate** option (Figure 13) from the ellipsis menu. The member will automatically be set to inactive on all project teams that the member is assigned to.
If you choose to deactivate a member, Ruddr will alert you to situations such as:
* The member is a Project Admin on one or more projects. Typically you would want to assign a new Project Admin to those projects.
* The member is a Client Relationship Owner of one or more clients.
* The member is a Sales Representative of one or more clients.
* The member is a Sales Representative of one or more projects.
* The member is a named approver in one or more time approval workflows.
* The member is a named approver in one or more expense approval workflows.
When a member is deactivated, the member's time and expenses are not affected. Any data related to that member will still be shown on reports. Members with administrative access rights can still change an inactive member's time entries and expense items.
**Member's Manager**
When deactivating a member that is a manager of one or more other members, the deactivated member will be replaced as the manager. Ruddr will assign the deactivated member's manager as the manager for those subordinates.
At any point in time, an inactive member can be reactivated using the **Activate** menu option (Figure 14) from the ellipsis menu.
### Applying Bulk Updates
Workspace Admins have the ability to perform bulk updates on members. Fields that can be updated in bulk include:
* Login Enabled
* Manager
* Business Unit (available when the [Business Units feature](/workspace-administration/features#business-units) is enabled)
* Practice
* Discipline
* Job Title
* Level
* Tags
* Skills
* Certifications
* Timesheet Attestation (available when the [Timesheet Attestation feature](/workspace-administration/features#timesheet-attestation) is enabled)
* Holiday Schedule
* Ruddr Assistant
* Member Type
* Location
* Security Role
To perform bulk updates on members, select the **List** view button and choose the members you wish to update (Figure 15).
Once you have the desired members selected, click the **Bulk Actions** button at the bottom-right of the screen and choose the **Edit** option. On the Bulk Edit window you can either clear the values for specific fields or update fields with new values (Figure 16).
# Multi-Step Approval Workflow Overview
Source: https://help.ruddr.io/workspace-administration/multi-step-approval-workflow-overview
Enable multi-step approval workflow in Ruddr to establish sequential time and expense approvers at the workspace and project levels.
By default, Ruddr supports manual and automatic approval of time and / or expenses. When set for manual approval through the Project Settings area of workspace settings (Figure 1), this default, manual approval process is a single-step approval where the Project Admin on a project is the sole approver of time and expenses.
In cases where organizations may need to introduce a more complex approval workflow, Ruddr provides a multi-step approval workflow feature. Leveraging this feature allows organizations to establish, at a project level, a time-and-expense approval workflow with multiple, sequential approvers. This article will cover:
* [Enabling the feature in Ruddr](#enabling-multi-step-approval-in-ruddr)
* [Default workflow for time and for expense in the workspace](#setting-the-default-workflow)
* [Workflow for a project](#setting-the-workflow-for-a-project)
* Disabling the feature in Ruddr
For more details on leveraging the workflow at a project level, and for how the various steps of the approval workflow are executed, please refer to the Project Approval Workflow article in the Ruddr Help Center.
### Enabling Multi-Step Approval in Ruddr
The Multi-Step Approval feature in Ruddr can be enabled or disabled within the **Features** section (Figure 2) of workspace **Settings**. As some organizations may not need or desire to use multi-step approval workflow, Ruddr allows this feature set to be turned off. To enable or disable multi-step approval workflow, simply click the **Multi-Step Approval Workflow** toggle (Figure 3) on the **Features** section.
**Disabling the Feature**
Should you decide to disable the Multi-Step Approval Workflow feature in the workspace, any projects that leverage multi-step will be reverted back to the default one-step approval process whereas the Project Admin is the sole approver of time and expenses entries for projects. Because of the impact this may have on the projects in your workspace, attempting to disable the feature by toggling the setting in Workspace Settings (Figure 3) will trigger a prompt (Figure 4) to confirm this selection.
### Setting the Default Workflow
Once the multi-step approval workflow feature is enabled, you will see a **Set Default Workflow** button appear in the Project Settings area of workspace settings (Figure 5). Clicking on this button will display an **Edit Workflow** screen that displays the default, one-step approval (Figure 6) with the Project Admin listed as the sole approver. For more information on working with multi-step workflows, see the [Managing Multi-Step Approval Workflows](/projects/managing-multi-step-approval-workflows) section in Ruddr Help Center.
### Setting the Workflow for a Project
For projects that need to stray from the default workspace approval workflows, Project Admins can edit the default workflow for a project in the project settings. For more on setting up a project, view the [Create a New Project](/projects/create-a-new-project) article in the Projects section of Ruddr Help Center.
# Security Roles
Source: https://help.ruddr.io/workspace-administration/security-roles
Understand Ruddr's built-in security roles and how to create custom roles with permissions for workspace, member, client, and project access.
Every workspace member in Ruddr is assigned a workspace security role. A workspace security role defines the set of privileges that members with that role are granted. A security role is comprised of various permission levels across the key sections of Ruddr:
* [Workspace](#workspace-admin-permissions)
* [Company](#company-permissions)
* [Opportunity](#opportunity-permissions)
* [Contact](#contact-permissions)
* [Member](#member-permissions)
* [Client](#client-permissions)
* [Project](#project-permissions)
We will look at permissions across Ruddr in that same order, but first let's talk about the default, built-in roles that are present when a member first creates a workspace.
Each Ruddr workspace comes with four built-in security roles. These roles are:
* **Workspace Admin** - The most privileged role in the workspace that has access to all information and settings. As explained below, this is a read-only role.
* **Senior Member** - This role is identical to the Workspace Admin role except that its members will not be able to access workspace settings or administer workspace members.
* **Standard Member** - The Standard Member can access clients and projects where they are on the project team. On those projects, they can view time and expense for all project team members. If this member is a Project Admin on a project, they can administer and approve time and expense for those projects. This role can view resource allocations for projects where they are on the project team. If this member is a Project Admin on a project, they can administer resource allocations for that project.
* **Restricted Member** - The default Security Role. A restricted role whose members can only access projects they are assigned to. Additionally, these members cannot view time or expense entries of other members, nor can they view invoices, bill rates, revenue, or profit.
As mentioned above, the Workspace Admin role is a read-only role but you can assign as many members as you like to that role. You cannot customize, rename, or in any way alter the Workspace Admin role.
The other three built-in roles listed above can be customized to your liking, or they can be deleted. Also, you are free to create as many additional security roles as you like with the permission configurations that suit your organization.
Additional actions that can be taken on security roles are:
* [Set a Default](#set-a-default-security-role)
* [Clone](#clone-a-security-role)
* [Deactivate](#deactivate-a-security-role)
* [Delete](#delete-a-security-role)
## View Security Roles
To view the list of current security roles for your workspace, click the **Settings** main nav bar option and then select the **Security Roles** menu option (Figure 1). From here you can edit or export your security roles. In order to access the workspace settings, your assigned security role must have the **Administer all workspace settings and members** permission. The Workspace Admin role is the only built-in security role that has this permission.
To view or edit the parameters of a current role, simply click on the role name (Figure 2) to bring up the role settings.
## Create a Security Role
To create a new security role, click the **+** button at the top-right of the security roles list. This will bring up the new security role drawer (Figure 3). Type in a name and optional description for the new role.
**Practice and Business Unit Scoping**
Several of the permission sections below let you scope a permission to the members, clients, or projects assigned to *this member's practice*. If your workspace has the [Business Units feature](/workspace-administration/features#business-units) enabled, an equivalent business unit scope is available alongside each practice scope — for example, **Clients assigned to this member's business unit**. The business unit scope behaves identically to the practice scope; it simply matches on the member's [business unit](/workspace-administration/member-profile#organization) instead of their practice. For a member to fall within a business unit scope, that member must have a business unit assigned on their profile. This applies to the Member, Company, Opportunity, Contact, Client, and Project permissions described below, including time entry, expense item, invoice, and resource allocation permissions.
For companies, opportunities, and contacts specifically, access is always evaluated against **that record's own** Practice, Business Unit, or Owner — Ruddr never grants access to a record just because you have access to a related record. For example, being able to view a company does not by itself grant access to that company's opportunities, and vice versa. The one deliberate exception is described under [Company Permissions](#company-permissions) below.
### Workspace Admin Permissions
When creating / editing a security role in the Security Role drawer (Figure 3), you will always see a Workspace Admin Permissions section (Figure 4). It is important to note that this section, while always visible, is unavailable to any security role in the workspace other than the built-in Workspace Admin role, which is why it appears greyed out in the image below (Figure 4).
As a Workspace Admin with these permissions, a member can manage the workspace settings including the ability to administer workspace members.
### Company Permissions
If your workspace has the Pipeline feature enabled, you will have a Company Permissions section available (Figure 5). These permissions determine whether a member can create, view, edit, and delete companies in the Pipeline area of Ruddr. Company, Opportunity, and Contact permissions are each independent rulesets — granting access to one does not grant access to the others.
**Create Company**
The first permission listed is **Create company**. When this permission is checked, the security role is automatically given permission to view all companies, including those assigned to this member's practice or business unit and those this member owns.
**Company Access**
If the security role does not allow the member to create companies, the role can be configured to specify the level of view access permitted:
* All companies
* Companies assigned to that member's business unit (when the [Business Units feature](/workspace-administration/features#business-units) is enabled)
* Companies assigned to that member's practice
* Companies this member owns
Regardless of the above, a member can always view a company if they can view at least one opportunity belonging to it. This always-on rule is the one exception to the "own attributes only" rule described above, and it never grants edit access to the company — only view.
**Company Actions**
Once view access has been specified, the role can independently be granted **Edit** and **Delete or archive** permissions for companies, each with its own level of access:
* All companies this member can access
* Companies assigned to that member's business unit (when enabled)
* Companies assigned to that member's practice
* Companies this member owns
Edit and delete access are independent of each other and of view access — for example, a role can be given edit access to a broader or narrower set of companies than it can view.
### Opportunity Permissions
If your workspace has the Pipeline feature enabled, you will have an Opportunity Permissions section available (Figure 6), structured identically to [Company Permissions](#company-permissions) above.
**Create Opportunity**
The first permission listed is **Create opportunity**. When this permission is checked, the security role is automatically given permission to view all opportunities, including those assigned to this member's practice or business unit and those this member owns.
**Opportunity Access**
If the security role does not allow the member to create opportunities, the role can be configured to specify the level of view access permitted:
* All opportunities
* Opportunities assigned to that member's business unit (when enabled)
* Opportunities assigned to that member's practice
* Opportunities this member owns
**Opportunity Actions**
Once view access has been specified, the role can independently be granted **Edit** and **Delete** permissions for opportunities, each with its own level of access (all opportunities this member can access, those assigned to this member's practice or business unit, or those this member owns).
### Contact Permissions
Contact Permissions are always available, whether or not the Pipeline feature is enabled for your workspace — contacts and the ability to manage them are independent of Pipeline. Turning Pipeline on or off never changes who can create, view, edit, or delete contacts.
**Create Contact**
The first permission listed is **Create contact**. When this permission is checked, the security role is automatically given permission to view all contacts, including those assigned to this member's practice or business unit and those this member owns.
**Contact Access**
If the security role does not allow the member to create contacts, the role can be configured to specify the level of view access permitted:
* All contacts
* Contacts assigned to that member's business unit (when enabled)
* Contacts assigned to that member's practice
* Contacts this member owns
**Contact Actions**
Once view access has been specified, the role can independently be granted **Edit** and **Delete** permissions for contacts, each with its own level of access (all contacts this member can access, those assigned to this member's practice or business unit, or those this member owns).
**Pipeline Activities**
Activities logged against companies, opportunities, and contacts (calls, meetings, notes, and similar entries) do not have permissions of their own. Instead, access to a record's activity feed always follows the parent record it is reached through:
* If a member can **view** a company, opportunity, or contact, they can see its activity feed.
* If a member can **edit** that parent record, they can create, edit, and delete activities on it.
* The activity feed shown on a contact is always read-only, even for a member who can edit the contact, since contact activities are logged through the related company or opportunity rather than the contact itself.
Editing a record's associations never silently drops one a member can't manage: related records the member can only view remain attached as locked entries, while related records the member can't view at all are hidden but preserved.
### Member Permissions
The Member Permissions for a security role establish the access that a member has to [time and expenses](#time-and-expense) for another member or members. Additionally, this permission set controls access to other members' [resource allocations](#resource-allocations). There are two permissions "concepts" with regards to Time and Expenses and Resource Allocations:
1. **Administer** - This permissions concept enables View, Edit, and Delete permissions for time and expense entries and / or resource allocations. In addition, Administer grants permissions for approving time and expense entries, and submitting/un-submitting time and expense entries. Additionally, if your workspace has the [Timesheets feature](/time/timesheets-overview) enabled, Administer grants permission to submit / un-submit timesheets.
2. **View** - This permissions concept enables read-only View permissions for time and expense entries and resource allocations.
In the Member Permissions section (Figure 8) a user can apply levels of Administer and/or View permissions for the scope of members against which a particular security role will apply.
Leveraging this section (Figure 8), the following permissions can be applied to the security role:
#### Time and Expense
* **Administer time and expenses for:**
* **View time and expenses for:**
#### Resource Allocations
* **Administer resource allocations for:**
* **View resource allocations for:**
### Client Permissions
The client permissions (Figure 9) control the user's ability to access, create, edit, and delete clients, and to manage permissions on other actions for clients as well. These settings determine if the user can access all clients and projects in the workspace or just those where the user is on a project team for the client.
By default (as shown in Figure 9), each Security Role grants access to any clients to which a member is assigned to that clients' projects.
**Create Client**
The first permission listed is **Create client**. When this permission is checked, the security role is automatically given permissions to access the following:
* All clients
* Clients assigned to this member's practice (Reference [Custom Data](/workspace-administration/custom-data) for more information on practices)
* Clients where this member is assigned to a project
If a user has the right to create clients, that user is *always* allowed to view all clients in the workspace.
**Client Access**
If the security role does not allow the member to create clients, then the role can be configured to specify the level of client access permitted:
* All clients
* Clients assigned to that member's business unit (when the [Business Units feature](/workspace-administration/features#business-units) is enabled)
* Clients assigned to that member's practice
* Those clients where the member is assigned to a project
Selecting **All clients** will select the more granular options by default. Selecting **Clients assigned to that member's practice** (or business unit) will select the last permission by default.
**Client Actions**
Once the level of client access has been specified for a security role, the next step is to specify the actions that a member can perform for clients that it can access. The remaining client permissions allow you can to specify whether or not the security role can perform these actions:
* **Edit**
* **Delete or archive**
* **Administer published invoices**
* **Administer draft invoices**
* **View published invoices**
For each of these permissions, there are two degrees of client access that are available (Figure 10). Selecting **All clients that this member can access** will automatically select **Clients that are assigned to this member's practice** by default.
Client invoicing permissions are related, in that the most graduated permission, **Administer published invoices** grants create and view permissions by default. Here is a breakdown of the permission inheritance for client invoices:
* **Administer published invoices**
* Administer draft invoices
* View published invoices
* **Administer draft invoices**
* View published invoices
Note that as specific permissions are inherited, they also limit the clients that are accessible. For example, if **Administer draft invoices** applies only to **Clients that are assigned to this member's practice**, then the **View published invoices for these clients** is limited to the same group of clients within that member's practice (Figure 11).
**Affecting Project Permissions**
Assigning client permissions has a direct effect on project permissions assigned to the security role. [Project permissions](#project-permissions) will be detailed later in this article, but it is important to note the project permissions that are selected by default when specifying certain client permissions:
* **Delete or archive clients** will grant:
* Access all projects within an accessible client
* *Delete or archive projects*
* **Administer published invoices** will grant:
* Access all projects within an accessible client
* View time entries and expense items on accessible projects
* View bill rates on accessible projects
* View revenue on accessible projects
* Publish invoices for accessible projects
* Administer invoices for accessible projects
* View published invoices for accessible projects
* **Administer draft invoices** will grant:
* Access all projects within an accessible client
* View time entries and expense items on accessible projects
* View bill rates on accessible projects
* View revenue on accessible projects
* Create and draft invoices for accessible projects
* View published invoices for accessible projects
* **View published invoices** will grant:
* Access all projects within an accessible client
* View time entries and expense items on accessible projects
* View bill rates on accessible projects
* View revenue on accessible projects
* View published invoices for accessible projects
Note, that much like the inheritance for client invoice permissions discussed above, corresponding project access is limited to projects for the clients allowed at the client permissions level.
### Project Permissions
The project permissions (Figure 12) control the user's ability to access, create, edit, and delete clients, and to manage permissions regarding time and expenses for projects as well. These settings determine if the user can access all projects in the workspace or just those where the user is on a project team for the client.
By default (as shown in Figure 12), each Security Role grants access to any project to which a member is on that project team.
The project permissions also control whether members will have access to potentially sensitive project data such as invoices, bill rates, revenue, and profit margin.
**Create Project**
The first permission listed is **Create project**.
When this permission is checked, the security role is automatically given permissions to ***access*** the following:
* Clients where this member is assigned to project
* Projects where this member is on the project team
When the Create project permission is checked, the security role is also given permissions to ***edit*** the following:
* Projects where this member is the Project Admin
Lastly, when the Create project permission is checked, the security role is given permissions to ***view*** the following:
* Bill rates for projects where the member is the Project Admin
* Revenue for the projects where the member is the Project Admin
These are the minimum, required permissions for creating projects.
Each project in Ruddr will have a single member designated as the Project Admin. Permissions within a project can depend on whether or not the member is the Project Admin of the project. Also, if manual time and expense approval is enabled for the project, the Project Admin will typically approve the time and expenses. On the team tab of the project dashboard, the project admin will have a green badge with a checkmark in the middle of it (Figure 13).
**Project Access**
If the security role does not allow the member to create projects, then the role can be configured to specify the level of project access permitted:
* All projects
* Projects assigned to that member's business unit (when the [Business Units feature](/workspace-administration/features#business-units) is enabled)
* Projects assigned to that member's practice
* Projects where the member is on the project team
Selecting **All projects** will select the more granular options by default. Selecting **Projects assigned to that member's practice** (or business unit) will select the last permission by default.
**Project Actions**
Once the level of project access has been specified for a security role, the next step is to specify the project actions that a member can perform. The remaining project permissions allow you to specify whether or not the security role can perform these actions for projects:
* **Edit** - Edit the project details including the team, tasks, roles, rates, and budget. You can also limit which sections of a project the role can edit, as described in [Edit Project Permissions](/workspace-administration/edit-project-permissions).
* **Delete or archive** - [Delete or archive](/projects/archive-or-delete-a-project) the project.
* **Administer published invoices**
* **Administer draft invoices**
* **View published invoices**
* **Administer time entries and expense items** - Manage all time and expense entries on the project.
* **View time entries and expense items** - If a billable member does not have this permission, the member can only view his or her own time entries.
* **Administer resource allocations** - Manage all resource allocations for a project.
* **View resource allocations**
* **View bill rates**
* **View revenue**
* **View profit**
* **Administer project health reports**
* **View project health**
For each of these permissions, there are four degrees of project access that are available (Figure 14). Selecting **All projects that this member can access** will automatically select the latter three by default. Selecting **Projects where this member is on the project team** will automatically select **Projects where this member is the Project Admin** (as shown in Figure 14).
Some project permissions are related, as project details have an intrinsic relationship with other project data. It is important to note the additional project permissions that are selected by default when specifying project permissions:
* **Edit** will grant:
* View bill rates on projects
* View revenue on projects
* **Administer published invoices**
* Administer draft invoices
* View published invoices
* **Administer draft invoices**
* View published invoices
* **Administer time entries and expense items** will grant:
* View time entries and expense items
## Set a Default Security Role
Ruddr provides the ability for you to specify a default security role. This default is designated in the Security Roles section (Figure 2) as a black badge with a checkmark (Figure 15).
When creating / inviting a new member in your workspace, you will need to specify a security role for that member. The default security role will automatically be assigned each new member that role. You can then specify a different security role, if desired. Setting a default security role allows you to define a "standard" role for most instances.
To set a specific security role as the default, select **Set to default** from the menu for a specific role (Figure 16), accessible from the Security Roles section (Figure 2).
## Clone a Security Role
Often times, it may be necessary to create a security role that closely mimics another security role. To assist with creating these types of closely-related roles, Ruddr allows Workspace Admins to clone existing security roles. You can generate an exact copy of an existing role and then have the ability to modify that new copy to fit the permissions needed.
To do this, select **Clone** from the menu for a specific role (Figure 17), accessible from the Security Roles section (Figure 2). Give the role a new name (Figure 18) and click **Save** to create your new role.
## Deactivate a Security Role
To prevent the future assignment of a security role to member, a security role can be deactivated. This will take the security role out of the list of available security roles to be assigned to a member. Deactivating a security role does not prevent the login of any users assigned to that security role, nor will inhibit their current permissions.
While deactivated, a security role can be edited, cloned, or deleted. However, per the conditions outlined in [Delete a Security Role](#delete-a-security-role), the **Delete** menu item will be disabled if any members are assigned to the security role.
To deactivate an active security role, select **Deactivate** from the menu for a specific role (Figure 19), accessible from the Security Roles section (Figure 2). When deactivated, a security role is greyed out in the Security Roles section (Figure 20).
Additionally, any deactivated security role can be reactivated at any time. To reactivate a deactivated security role, select **Activate** from the menu for a specific role (Figure 21), accessible from the Security Roles section (Figure 2). When activated, the security role is once again available for assignment to members.
## Delete a Security Role
A security role can only be deleted when there are no members assigned to the role. In this case, the **Delete** menu item for a security role will be disabled (Figure 16) and the number of Active Users will be shown as more than zero (Figure 16).
The [Members section](/workspace-administration/members) of the workspace settings displays each project member and their assigned security role. Additionally, you can filter this list by security role to find all members assigned to a particular role.
Once all members have been removed from the security role (or reassigned to another role), that security role can be deleted.
To delete the security role, select **Delete** from the menu for a specific role (Figure 22), accessible from the Security Roles section (Figure 2). When asked for confirmation (Figure 23), click **Delete** to finalize the removal of the security role.