-
Notifications
You must be signed in to change notification settings - Fork 308
Payment made, but *not* deducted from user account? #2417
Comments
★★★ |
They gave permission to be identified on the ticket, so this is https://www.gittip.com/NuvolaPlayer/, here on Github as @fenryxo |
Looking at the history, it doesn't appear that PayPal MassPay happened for Gittip 101, on May 8th. |
Gittip 101 is #2362. |
Hunch: there was a failure (user error?) in posting MassPay back to Gittip for May 9. |
Let's spot check some other MassPay folks ... |
Looks like only 6 out of 44 MassPay records (14%) posted back to the database on May 9. :-( |
Spot check indicates that May 9 was the only time this happened. |
So probably the thing to do is to post those old payments. If we're lucky (hah!) there's enough in everyone's account this week to accommodate (won't hit negative balance constraint, #2389). |
I haven't looked at the data, but I would've assumed that anyone who didn't get MassPay during 101 got the extra balance added to MassPay during 102, like it did for NuvolaPlayer. |
@seanlinsley Yeah, but since I haven't run MassPay for this week yet, they'll have accumulated more since last week. |
I don't follow. The extra balance would have accrued between 100 and 101, since MassPay failed in 101. Then the next week (last week, 102), they should have gotten their money from both 101 and 102. I don't see how they would've accumulated more between 102 and the current 103. |
Why wouldn't they accumulate more during 103? We haven't flushed 103 to MassPay yet. |
It seems that 103's MassPay would just be their normal amount, no? |
Right, so we can deduct the payout we did in 101 but failed to record, and they won't get a payout this week. |
Right? |
Although I'd like to satisfy myself that we actually recorded all the payouts properly last week and other weeks first. |
Oh? I was under the assumption that we didn't do MassPay for them at all for 101. But the idea that we simply failed to record them certainly makes more sense 😅 |
Yeah, the way MassPay works we:
It was only step 3 that (partially) failed during 101. |
Popping into failure analysis mode, how does step 3 usually happen? I imagine we want a change request somewhere that rings giant bells if it doesn't complete, and potentially a second which allows for the procedure to be restarted safely if it bails out part-way through. I agree that re-doing the transactions for 101 now makes sense. There is the question as to what should be done if anyone's balance goes negative because of that, but it may be worthwhile to see how many people will actually fall into that state first. If it's only a handful (or less) then we may be able to deal with them on a case-by-case basis. |
Step 3 happens by me running |
SELECT date, count(date) FROM
(
SELECT timestamp::date AS date FROM exchanges
WHERE note LIKE 'PayPal MassPay to%'
) AS foo
GROUP BY date
ORDER BY date DESC |
(The rest aren't handy right now.) |
The only counts off in recent history are for 2014-05-09. The 17th/18th duplicate is because the masspay.py script depends on the current date in the filename so if I run it the day after payday then I cp the file to get the filename right so it gets picked up. |
After #2417, we want to be more careful to confirm that MassPay posting back actually worked. This is low-hanging fruit for that.
Opening this for FreshDesk 459. We have a user who has reported that they've received funds from Gittip, but these funds were not deducted from their Gittip account. I've confirmed that this has indeed happened.
I very this as a critical thing to investigate before the next payday run, as it may be that gittip is (or has been) leaking money, which is very, very bad.
Attn @patcon and @whit537 at the very least.
The text was updated successfully, but these errors were encountered: