Track your time in Google Sheets and automatically generate CashCtrl orders with a single command! This project bridges the gap between your time tracking and invoicing workflows. Simply log your hours in a Google Sheet, and with one command, create professional CashCtrl orders - no manual data entry required. Perfect for freelancers and small businesses who want to streamline their billing process while keeping time tracking simple and flexible.
TBD
- Go to the Google Cloud Console.
- Create a new project or select an existing one.
- Navigate to the "APIs & Services" dashboard.
- Click on "Enable APIs and Services."
- Search for "Google Sheets API" and enable it.
- Go to "Credentials" in the left sidebar.
- Click on "Create Credentials" and select "OAuth client ID."
- Configure the consent screen if prompted.
- Choose "Web application" and set the redirect URI to
http://localhost:8080
. - Click "Create" and save the file as
credentials.json
.
- Run the project with
deno run start
. The needed information will be collected during this process. - Follow the instructions in the console to authorize the app.
- Paste the authorization code received after authorization.
- Prepare your Google Sheet with the necessary order details.
- The order will be created in CashCtrl with positions taken from the Google Sheet.
Your Google Sheet should have the following columns corresponding to the
SpreadsheetRow
type:
Column | Header | Description |
---|---|---|
0 | date | Date of the order (in timestamp) |
1 | client | Name of the client |
2 | project | Name of the project |
3 | description | Description of the order |
4 | hours | Number of hours |
5 | pricePerHour | Price per hour |
6 | total | Total amount (ignored) |
7 | billed | Indicates if the order is billed |
This project depends on Deno version 2.0.0 or higher.