Closed chadwhitacre closed 6 years ago
gratipay-bak=# select sum(amount) from payments where team='Gratipay' and direction='to-participant' and participant='whit537' and "timestamp"::text > '2017-01-01' and "timestamp"::text < '2018';
┌───────┐
│ sum │
├───────┤
│ 11.24 │
└───────┘
(1 row)
gratipay-bak=# select sum(amount) from payments where team='Gratipay' and direction='to-participant' and participant='clone1018' and "timestamp"::text > '2017-01-01' and "timestamp"::text < '2018';
┌──────┐
│ sum │
├──────┤
│ 0.52 │
└──────┘
(1 row)
$ %
--------
0.52 4
11.24 96
-----
11.76
Braintree 1099-K shows 36,464, refunds in dashboard sum to 137, == 36,327 gross profit.
gratipay-bak=# select sum(amount) from payments where team='Gratipay' and direction='to-team' and "timestamp"::text > '2017-01-01' and "timestamp"::text < '2018';
┌─────────┐
│ sum │
├─────────┤
│ 4366.85 │
└─────────┘
(1 row)
Leaving 31,960 in escrow liability.
Now, expenses ...
Unfortunately, we don't have PNC CSVs for the fourth quarter of 2017 because I neglected to download them in time. 😞
$ find . -name pnc.csv -or -name pnc.pdf|sort
./01/pnc.csv
./01/pnc.pdf
./02/pnc.csv
./02/pnc.pdf
./03/pnc.csv
./03/pnc.pdf
./04/pnc.csv
./04/pnc.pdf
./05/pnc.pdf
./06/pnc.pdf
./07/pnc.csv
./07/pnc.pdf
./08/pnc.csv
./08/pnc.pdf
./09/pnc.csv
./09/pnc.pdf
./10/pnc.pdf
./11/pnc.pdf
./12/pnc.pdf
$
I guess the thing to do is to produce those three CSVs by hand, and then load all 12 into a Google Sheet for further analysis according to the categories needed for reporting.
Bah, copy/paste is worthless. :rage1:
👍
$ ./check.py < 10/pnc.csv
333.70 476.09
$
#!/usr/bin/env python
import csv, sys
from decimal import Decimal as D
data = csv.reader(sys.stdin)
headers = next(data)
income = D(0)
expenses = D(0)
for raw in data:
row = dict(zip(headers, raw))
w, d = [x[1:] for x in (row['Withdrawals'], row['Deposits'])]
if w:
expenses += D(w)
else:
assert d, d
income += D(d)
print(income, expenses)
👍
$ ./check.py < 11/pnc.csv
288.10 259.21
$
$ ./check.py < 12/pnc.csv
200.10 137.51
$
Okay! Into a sheet!
No contractors above the 1099 minimum. 👍
gratipay-bak=# select participant, sum(amount) from payments where team='Gratipay' and direction='to-participant' and "timestamp"::text > '2017-01-01' and "timestamp"::text < '2018' and participant != 'Gratipay' and participant != 'whit537' and participant != 'clone1018' group by participant order by sum desc;
┌─────────────┬────────┐
│ participant │ sum │
├─────────────┼────────┤
│ mattbk │ 219.54 │
│ rohitpaulk │ 21.31 │
│ JessaWitzel │ 4.40 │
│ Lurtz │ 2.60 │
│ chrisdev │ 0.52 │
│ aandis. │ 0.52 │
│ sseerrggii │ 0.52 │
└─────────────┴────────┘
(7 rows)
gratipay-bak=#
249.41
First pass shows a loss of 957.
So @clone1018 do you want a Schedule K that shows a loss of $38 (4% of 957)? Or do we cut you loose as a partner before you even started (#1223) to avoid you getting sucked into #1220?
Per https://github.com/gratipay/inside.gratipay.com/issues/1223#issuecomment-379077606 @clone1018's owner draws were actually only 28¢, so his percentage of the loss is actually 2% == $23.
Talked to @clone1018 and we're going to cut him loose to avoid complicating his life (#1223). Proceeding with a Schedule C ...
cc: @JessWhit
We don't have a clear answer on #1220 but will file 2017 according to the same pattern as our amended 2015.
Filed!
!m @chadwhitacre
@clone1018 joined as a partner so we will need to file a 1065 and then he and I get Schedule K's to put on our personal tax returns.Update: We're cutting @clone1018 loose to avoid complicating his life (#1223), so we'll file a Schedule C on my personal return as in years past.
I guess we want to play out https://github.com/gratipay/inside.gratipay.com/issues/1220 a bit further first though?