You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: docs/CONFIG.md
+110-48
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,85 @@ All configurations below can be made using the web configuration framework or by
6
6
7
7
> **Pro Tip:** You can use Dropbox or another trusted service to sync `mintable.config.json` across your machines. Run `ln -s <path_to_cloud_folder>/mintable.config.json .` from the repo root to symlink Mintable to the cloud version.
8
8
9
-
### Automate Updates with a CI Provider
9
+
#### Table of Contents
10
+
11
+
-[General configuration](#general-configuration)
12
+
-[Fetching Balances](#fetching-balances)
13
+
-[Fetching Transactions](#fetching-transactions)
14
+
-[Plaid](#plaid)
15
+
-[Google Sheets](#google-sheets)
16
+
17
+
## General configuration
18
+
19
+
#### Debug Mode
20
+
21
+
`DEBUG` mode logs the output of each API call and function to the console.
22
+
23
+
**Default:**
24
+
25
+
```javascript
26
+
"DEBUG":undefined// If unspecified, defaults to false
27
+
```
28
+
29
+
If you want to enable debug mode, you can add the following line to your `mintable.config.json` file:
30
+
31
+
```javascript
32
+
"DEBUG":true
33
+
```
34
+
35
+
#### Host
36
+
37
+
`HOST` specifies the host for Mintable's setup server.
38
+
39
+
**Default:**
40
+
41
+
```javascript
42
+
"HOST":"localhost"
43
+
```
44
+
45
+
For example, if you want to run Mintable on a custom server and listen on `0.0.0.0`, you could add the following line to your `mintable.config.json` file:
46
+
47
+
```javascript
48
+
"HOST":"0.0.0.0"
49
+
```
50
+
51
+
#### Port
52
+
53
+
`PORT` specifies the port for Mintable's setup server.
54
+
55
+
**Default:**
56
+
57
+
```javascript
58
+
"PORT":3000
59
+
```
60
+
61
+
For example, if you already have an application running on port `3000` and instead want to use port `8080`, you could add the following line to your `mintable.config.json` file:
62
+
63
+
```javascript
64
+
"PORT":"8080"
65
+
```
66
+
67
+
#### Account Provider
68
+
69
+
`ACCOUNT_PROVIDER` specifies which service to use to fetch transactions.
70
+
71
+
**Default:**
72
+
73
+
```javascript
74
+
"ACCOUNT_PROVIDER":"plaid"
75
+
```
76
+
77
+
#### Spreadsheet Provider
78
+
79
+
`SHEET_PROVIDER` specifies which service to use to automate spreadsheet updates.
80
+
81
+
**Default:**
82
+
83
+
```javascript
84
+
"SHEET_PROVIDER":"sheets"// "sheets" = Google Sheets
85
+
```
86
+
87
+
#### Automate Updates with a CI Provider
10
88
11
89
This repo includes config files for both [CircleCI](https://circleci.com/) and [Travis CI](https://travis-ci.com) to run builds automatically.
12
90
@@ -22,71 +100,75 @@ Run this command and paste the result into an environment variable called `MINTA
22
100
23
101
> **Warning:** If you choose to use CircleCI, you should turn off **Pass secrets to builds from forked pull requests** under **Build Settings** > **Advanced Settings**.
24
102
25
-
### Start Date
103
+
##Fetching Balances
26
104
27
-
`START_DATE` specifies the lower bound for fetching transactions in `YYYY.MM.DD` format.
105
+
#### Create Balances Sheet
106
+
107
+
`CREATE_BALANCES_SHEET` optionally fetches the balances of all your connected accounts and places them in a sheet called `Balances`.
28
108
29
109
**Default:**
30
110
31
111
```javascript
32
-
"START_DATE":undefined// If end date is not specified, Mintable will fetch the last 2 months of transactions
112
+
"CREATE_BALANCES_SHEET":undefined// If unspecified, defaults to false
33
113
```
34
114
35
-
For example, if you only want to fetch transactions which occur after or on December 1, 2018, you could add the following line to your `mintable.config.json` file:
115
+
If you want to enable this, you can add the following line to your `mintable.config.json` file:
36
116
37
117
```javascript
38
-
"START_DATE":"2018.12.01"
118
+
"CREATE_BALANCES_SHEET":true
39
119
```
40
120
41
-
###End Date
121
+
#### Balance Columns
42
122
43
-
`END_DATE` specifies the upper bound for fetching transactions in `YYYY.MM.DD` format.
123
+
`BALANCE_COLUMNS` specifies a list of account properties (using [`_.get()` syntax](https://lodash.com/docs/4.17.11#get)) to automatically update in your `Balances` spreadsheet. All the contents of these columns will be cleared and overwritten each time you run Mintable.
44
124
45
-
**Default:**
125
+
**Default:**
46
126
47
127
```javascript
48
-
"END_DATE":undefined// If end date is not specified, Mintable will fetch up until the current date
For example, if you only want to fetch transactions which occur before or on December 1, 2018, you could add the following line to your `mintable.config.json` file:
131
+
For example, if you only want to auto-populate the name and amount for each account, you could add the following line to your `mintable.config.json` file:
`HOST` specifies the host for Mintable's setup server.
139
+
#### Start Date
60
140
61
-
**Default:**
141
+
`START_DATE` specifies the lower bound for fetching transactions in `YYYY.MM.DD` format.
142
+
143
+
**Default:**
62
144
63
145
```javascript
64
-
"HOST":"localhost"
146
+
"START_DATE":undefined// If end date is not specified, Mintable will fetch the last 2 months of transactions
65
147
```
66
148
67
-
For example, if you want to run Mintable on a custom server and listen on `0.0.0.0`, you could add the following line to your `mintable.config.json` file:
149
+
For example, if you only want to fetch transactions which occur after or on December 1, 2018, you could add the following line to your `mintable.config.json` file:
68
150
69
151
```javascript
70
-
"HOST":"0.0.0.0"
152
+
"START_DATE":"2018.12.01"
71
153
```
72
154
73
-
###Port
155
+
#### End Date
74
156
75
-
`PORT` specifies the port for Mintable's setup server.
157
+
`END_DATE` specifies the upper bound for fetching transactions in `YYYY.MM.DD` format.
76
158
77
-
**Default:**
159
+
**Default:**
78
160
79
161
```javascript
80
-
"PORT":3000
162
+
"END_DATE":undefined// If end date is not specified, Mintable will fetch up until the current date
81
163
```
82
164
83
-
For example, if you already have an application running on port `3000` and instead want to use port `8080`, you could add the following line to your `mintable.config.json` file:
165
+
For example, if you only want to fetch transactions which occur before or on December 1, 2018, you could add the following line to your `mintable.config.json` file:
84
166
85
167
```javascript
86
-
"PORT":"8080"
168
+
"END_DATE":"2018.12.01"
87
169
```
88
170
89
-
### Transaction Columns
171
+
####Transaction Columns
90
172
91
173
`TRANSACTION_COLUMNS` specifies a list of transaction properties (using [`_.get()` syntax](https://lodash.com/docs/4.17.11#get)) to automatically update in your spreadsheet. All the contents of these columns will be cleared and overwritten each time you run Mintable.
92
174
@@ -102,7 +184,7 @@ For example, if you only want to auto-populate the name and amount for each tran
102
184
"TRANSACTION_COLUMNS": ["name", "amount"]
103
185
```
104
186
105
-
### Reference Columns
187
+
####Reference Columns
106
188
107
189
`REFERENCE_COLUMNS` specifies a list of additional, non-automated columns for your reference/bookkeeping purposes. Each time you run Mintable, the contents of these columns will be preserved.
108
190
@@ -120,33 +202,13 @@ For example, if you want to add one column to track work expenses, and another t
120
202
121
203
> **Warning:** Since reference columns are not automated by Mintable, they have the potential to get out of sync with transaction data (for example, if your bank deletes a transaction, causing a row to get removed in `TRANSACTION_COLUMNS`)
122
204
123
-
### Account Provider
124
-
125
-
`ACCOUNT_PROVIDER` specifies which service to use to fetch transactions.
126
-
127
-
**Default:**
128
-
129
-
```javascript
130
-
"ACCOUNT_PROVIDER":"plaid"
131
-
```
132
-
133
-
### Spreadsheet Provider
134
-
135
-
`SHEET_PROVIDER` specifies which service to use to automate spreadsheet updates.
136
-
137
-
**Default:**
138
-
139
-
```javascript
140
-
"SHEET_PROVIDER":"sheets"// "sheets" = Google Sheets
141
-
```
142
-
143
205
# Provider-Specific Configuration
144
206
145
207
You can see the API definitions for account & spreadsheet providers in the **[provider docs](./docs/PROVIDERS.md)**.
146
208
147
209
## Plaid
148
210
149
-
### Category Overrides
211
+
####Category Overrides
150
212
151
213
`CATEGORY_OVERRIDES` specifies a list of overrides to handle transactions that are routinely miscategorized by Plaid's servers.
152
214
@@ -178,7 +240,7 @@ For example, if you want anything matching `autopay` or `e-payment` to get categ
178
240
179
241
## Google Sheets
180
242
181
-
### Template Sheet
243
+
####Template Sheet
182
244
183
245
`TEMPLATE_SHEET` specifies the template spreadsheet to use when creating a _new_ sheet for a month.
0 commit comments