opencollective icon indicating copy to clipboard operation
opencollective copied to clipboard

Deprecate/Remove PayPal adaptive

Open Betree opened this issue 3 years ago • 4 comments

Related to https://github.com/opencollective/opencollective/issues/4210

Motivation

  • PayPal adaptive has been deprecated by PayPal for at least 3 years now
  • They are publishing breaking changes on this API with notices (e.g. https://github.com/opencollective/opencollective/issues/6074, https://github.com/opencollective/opencollective/issues/4021)
  • We have a replacement solution that is more stable, cheaper & better tested (PayPal Payouts)
  • Overall, we want to distance ourselves as much as possible from PayPal given its history of obscure business practices & low security.

Proposed plan

  • [x] Make sure it's not possible to connect PayPal adaptive anymore
  • [ ] Send a notice to hosts still using it to warn them that the feature will be removed in 3 months
  • [ ] In 3 months, disable the feature
  • [ ] In 4 months, remove it entirely

Betree avatar Aug 30 '22 08:08 Betree

Yet another adaptive breaking change: https://github.com/opencollective/opencollective/issues/6581. I'm discussing with OCEU about moving them to PayPal payouts.

Betree avatar Mar 22 '23 11:03 Betree

This issue is making it more complex to optimize the host admin page, because we need to refetch the balance for adaptive in multiple occasions. I'm willing to iterate on it.

Some data first:

slug total expenses total expenses in the last 6 months
wwcodeinc 37 37
europe 12 12
dosecrets 8 3
nfsc 7 7
allforclimate 7 1
platform6-coop 6 6
out4s 5 3
barcamp-events-llc 3 0
wandelbuendnis 3 0
tilde 2 0
our-sci 2 2
daarpr 2 0
osgeo-foundation 1 1
cscicorg 1 0
kanium-host 1 0
islah-reparations-project 1 0
mariposasrebeldes 1 1
opensource 1 0
shivamgoyal 0 0
popsolutions 0 0
sylvain-viste 0 0
the-schumacher-institute 0 0
numfocus 0 0
priyanshu 0 0
reculture 0 0
the-advocacy-academy 0 0
biowoborders 0 0
cesakparis 0 0
scambi 0 0
lorax 0 0
3mdeb_com 0 0
drake-connally 0 0
lucy-parsons-labs 0 0
bcc-tucson 0 0
mentoralia-a-c 0 0
morevnaproject-ru 0 0
monachelle 0 0
ebnull-org 0 0
ussen 0 0
openworm 0 0
transition-network 0 0
treeoflight 0 0
silicon-valley-robotics 0 0
b3log 0 0
felinn 0 0
adminforumlumiar 0 0
the-radical-bus-ny 0 0
p0ly186 0 0
wisdomenigma 0 0
guilded-lca 0 0
2b2tjb-o 0 0
fig-tree 0 0
gradsflow 0 0
fya 0 0
thenewoilmedia 0 0
foodandsolidarity 0 0
vigilfordemocracyllc 0 0
pentakly 0 0
navel 0 0
playzinhoagro 0 0
higenku 0 0
bria 0 0
fun4cash 0 0
gurm-studios 0 0
warriors 0 0
island-17 0 0
living-era 0 0
alexa777 0 0
homin-org 0 0
ppy 0 0
zenbu-ui 0 0
arcaelas 0 0
idevdata 0 0
black-trans-texas-connection 0 0
sitt-community-group 0 0
eastg-a-better-future 0 0
nobodyfilm 0 0
e_foundation 0 0
traderz 0 0
estraperlo-scoop 0 0
eref 0 0
codewithvladperchi 0 0
kerygmadigital 0 0
projectanomalydev 0 0
paramitalab 0 0
casual-simulation 0 0
yottabitconsultingllc 0 0
hilfe-fur-die-ukraine 0 0
open-business-collective 0 0
luninuxos 0 0
baby-lion-2 0 0
student-co-op-homes1 0 0
heimdall-intranet 0 0
developer-noon 0 0
bkind-family-services 0 0
nexopia 0 0
dreamsee 0 0
ipare 0 0
celendibot 0 0
centurymine 0 0
justjazzfoundation 0 0
sikh-community1 0 0
nexuscity 0 0
ua 0 0
materialize 0 0
scriptkkiddie-org 0 0
baliz-orphanage-foundation 0 0
libhv 0 0
fertiles 0 0
cwc-digital-commune 0 0
barkayma 0 0
the-valiant-sailor 0 0
earth-arts 0 0
opendreamnet 0 0
edlibnetwork 0 0
tminiilasold 0 0
anonymous1182 0 0
huddlecraft 0 0
brown-university-aaup 0 0
chua-benh 0 0
cb-intelligence 0 0
muslimbc 0 0
good-phone-foundation 0 0
stroud-district-community-hubs 0 0
odroe 0 0
risk-of-thunder 0 0
sea-turtle-express 0 0
foss-gmbh 0 0
leosac 0 0
kikdoubt 0 0
dreamvillagegh 0 0
weather-ranch 0 0
mphimla23 0 0
efa 0 0
sir-amimo-media 0 0
teamfund 0 0
neurodiversityfoundation 0 0
jamarcus-miller1 0 0
buckners-place 0 0
belovedcommune 0 0
greengold 0 0
netty_project 0 0
cct 0 0
the-4th-hokage 0 0
tbd 0 0
constantine-millan11111 0 0
indigigenius-org 0 0
codecrumbs-io-org 0 0
dp-network1 0 0
devsblue 0 0
goodancestor 0 0
savannabits-ltd 0 0
playfullearning 0 0
c8786 0 0
nuclear-electrical-engineers 0 0
curse-brand702 0 0
osusume 0 0
business-platform-srf15-74 0 0
opendesert 0 0
d17 0 0
chingo-tribe 0 0
ukrainian-culture-series1 0 0
gowanusdredgerscanoeclub 0 0
connect 0 0
azzuradigitaldonate 0 0
onelitefeather-host 0 0
crossdb 0 0
dystopian-arts-llc 0 0
for-the-better-of-humanity 0 0
jco72 0 0
amtv 0 0
jco721 0 0
treasurer2 0 0
openmiami-host 0 0
opencollective 0 0
calderbootstrap-org 0 0
knightslca 0 0
paris 0 0
joke2k 0 0
hodierne-ventures 0 0
luandro 0 0
scicommxyz 0 0
wpf 0 0
general-intellect-sl 0 0
matthias-wilke 0 0
recaptimesquad 0 0
kent-food-hubs-cic 0 0
sentrium 0 0
joshua-casey 0 0
Query

select C.slug, COUNT(t.id) AS total_transactions,
    COUNT(t.id) FILTER (WHERE t."createdAt" > NOW() - INTERVAL '6 month') AS total_transactions_last_6_months
from "PaymentMethods" pm
INNER JOIN "Collectives" C on pm."CollectiveId" = C.id
LEFT JOIN "Transactions" t ON t."PaymentMethodId" = pm.id AND t.kind = 'EXPENSE' AND t.type ='DEBIT'
WHERE pm.service = 'paypal' AND pm.type ='adaptive'
AND pm."deletedAt" IS NULL
AND pm."expiryDate" > NOW() - INTERVAL '6 month'
GROUP BY C.id
ORDER BY COUNT(t.id) DESC
\

Actions

  • [x] Prevent new hosts that don't have adaptive set up already from connecting it
  • [ ] Remove adaptive for all hosts that are not using it

Betree avatar Apr 26 '23 11:04 Betree

I just disabled adaptive for all hosts that never used it (deletedAt = '2023-06-27 10:05:28.682000 +00:00') or haven't used it in the past year.

Details

'amtv', 'treasurer2', 'openmiami-host', 'calderbootstrap-org', 'knightslca', 'paris', 'joke2k', 'hodierne-ventures', 'luandro', 'scicommxyz', 'wpf', 'platform6-coop', 'general-intellect-sl', 'aissat-abdelwahab', 'matthias-wilke', 'kent-food-hubs-cic', 'shivamgoyal', 'popsolutions', 'sylvain-viste', 'the-schumacher-institute', 'numfocus', 'wandelbuendnis', 'reculture', 'the-advocacy-academy', 'biowoborders', 'cesakparis', 'lorax', '3mdeb_com', 'drake-connally', 'lucy-parsons-labs', 'bcc-tucson', 'mentoralia-a-c', 'monachelle', 'ebnull-org', 'ussen', 'openworm', 'treeoflight', 'silicon-valley-robotics', 'b3log', 'felinn', 'adminforumlumiar', 'the-radical-bus-ny', 'p0ly186', 'wisdomenigma', '2b2tjb-o', 'fig-tree', 'fya', 'thenewoilmedia', 'foodandsolidarity', 'pentakly', 'navel', 'playzinhoagro', 'bria', 'island-17', 'alexa777', 'ppy', 'zenbu-ui', 'arcaelas', 'black-trans-texas-connection', 'sitt-community-group', 'e_foundation', 'traderz', 'estraperlo-scoop', 'eref', 'codewithvladperchi', 'kerygmadigital', 'projectanomalydev', 'paramitalab', 'casual-simulation', 'yottabitconsultingllc', 'hilfe-fur-die-ukraine', 'open-business-collective', 'luninuxos', 'baby-lion-2', 'student-co-op-homes1', 'heimdall-intranet', 'developer-noon', 'bkind-family-services', 'nexopia', 'dreamsee', 'ipare', 'celendibot', 'centurymine', 'justjazzfoundation', 'sikh-community1', 'nexuscity', 'ua', 'materialize', 'hackers-collective', 'baliz-orphanage-foundation', 'libhv', 'fertiles', 'cwc-digital-commune', 'barkayma', 'the-valiant-sailor', 'earth-arts', 'opendreamnet', 'edlibnetwork', 'tminiilasold', 'huddlecraft', 'brown-university-aaup', 'chua-benh', 'cb-intelligence', 'muslimbc', 'good-phone-foundation', 'stroud-district-community-hubs', 'odroe', 'risk-of-thunder', 'sea-turtle-express', 'foss-gmbh', 'leosac', 'kikdoubt', 'dreamvillagegh', 'weather-ranch', 'mphimla23', 'efa', 'sir-amimo-media', 'teamfund', 'neurodiversityfoundation', 'jamarcus-miller1', 'buckners-place', 'belovedcommune', 'greengold', 'netty_project', 'cct', 'the-4th-hokage', 'tbd', 'constantine-millan11111', 'indigigenius-org', 'codecrumbs-io-org', 'dp-network1', 'devsblue', 'goodancestor', 'savannabits-ltd', 'playfullearning', 'c8786', 'nuclear-electrical-engineers', 'curse-brand702', 'osusume', 'business-platform-srf15-74', 'opendesert', 'd17', 'chingo-tribe', 'ukrainian-culture-series1', 'gowanusdredgerscanoeclub', 'connect', 'azzuradigitaldonate', 'onelitefeather-host', 'crossdb', 'dystopian-arts-llc', 'for-the-better-of-humanity'

We're now down to a list of 12 hosts

slug total expenses last 6 months past year past 2 years past 3 years
wwcodeinc 48 43 48 48 48
allforclimate 7 0 7 7 7
europe 6 6 6 6 6
dosecrets 5 5 5 5 5
out4s 5 3 5 5 5
barcamp-events-llc 3 0 3 3 3
our-sci 2 1 2 2 2
transition-network 1 1 1 1 1
mariposasrebeldes 1 1 1 1 1
osgeo-foundation 1 0 1 1 1
nfsc 1 1 1 1 1
opensource 1 0 1 1 1

Betree avatar Jun 27 '23 08:06 Betree

OCEU's request for PayPal payouts got rejected. Seems like we'll be stuck with adaptive for some time.

Betree avatar Feb 20 '24 11:02 Betree