Show HN: Venmo Unofficial API

(github.com)

76 points | by richardzhang 8 hours ago ago

41 comments

  • gchamonlive 5 hours ago

    To everyone criticizing this project, you should probably dig a bit to find out what's the context of this project.

    From the integuru page:

    > We build integrations with platforms lacking official APIs. We specialize in low-latency integrations via reverse-engineering. All integrations are open-source.

    So these warnings are probably wasted on someone that is very much aware of what he is doing.

    • Uehreka 5 hours ago

      I looked at the website before commenting just to be sure. Judging from the quality of the design (which, yes, I think is an appropriate way to arrive at this conclusion), I would not be surprised to find out that this is a couple recent college grads who don’t realize what this business entails.

      • preommr 5 hours ago

        > I would not be surprised to find out that this is a couple recent college grads who don’t realize what this business entails.

        It's made by Y-combinator backed startup Taiki. The cofounders (who have names similar to the ones that made commits in the git repo) seem to be pretty experienced (Alibaba, and Amazon)[0]

        [0] https://www.taiki.ai/about-us

      • yreg 2 hours ago

        > Judging from the quality of the design

        Half of the respected users in this forum have websites like that.

      • sincerely an hour ago

        Those simple, minimal css websites are trendy right now as a way to signal "this isn't a bloated business, we're practical and efficient". See ssi.inc for a high profile example

      • promiseofbeans 5 hours ago

        They claim it's a project by these people, who are YC-backed: https://www.taiki.ai/

    • benatkin 3 hours ago

      Indeed. It also seems more like Plaid than ElcomSoft.

      • Uehreka 3 hours ago

        If this is indeed like Plaid, a simple clause in the README would put a lot of people at ease (I looked carefully for this before making my comment): This Unofficial API was built with the express written consent of Venmo (or whatever their LLC is called).

        It’s an easy thing to add to the README if it’s true. But if it’s not, that’s a problem.

        • benatkin 3 hours ago

          Mind providing a link so I can validate this? Plaid might have API providers' permission now, but did they at the start? I forgot to mention that I was talking about when Plaid first started.

      • nailer 3 hours ago

        Plaid use screen scraping which is why it breaks all the time. In terms of reverse engineering undocumented but official APIs, you’re thinking of their competitor Teller.

        • PittleyDunkin 2 hours ago

          I was under the impression that they've built up much warmer relationships on the financial account side and correspondingly have more reliable integrations than they used to.

          I've personally noticed it tends to break a lot less than it used to.

    • shmatt 2 hours ago

      they can try to justify it all they want, using these apis still breaks multiple federal laws

      i noted this in a previous thread with them, to which they replied if its your data you can access it which ever way you like. Which is like saying i can hack into my bankers computer remotely to view my account balance. Which is still illegal.

      Using unapproved apis is unauthorized access to a computer or network, illegal in the US at least, which ever way you want to try and look at it

      Remember both Plaid and Aaron Swartz did this, it can end if very different ways. Obviously the government can pick and choose who to send to jail, but that’s a risk

      • edm0nd 2 hours ago

        It's okay to break unjust laws.

  • Uehreka 6 hours ago

    This will not end well.

    If someone with millions or billions of dollars doesn’t have an official API after operating for years, that’s because they don’t want to have one. You may receive a Cease and Desist letter, or they might block your IPs, or just scramble their markup in ways that are hard to figure out. Whatever their approach, they likely have more money and manpower to throw at stopping you than you have to evade them, especially if you’re doing this to multiple large and powerful companies.

    • melody_calling 4 hours ago

      I'd be surprised if this was even noticed at all.

      It's a third-party client making authentication and data collection requests, just like the hundreds of other credential stuffing toolkits (OpenBullet et al.) that are smashing the Venmo platform 24/7.

      The most likely outcome for anyone using this is their account becoming restricted for unusual access patterns by the existing models already in place.

    • solardev 6 hours ago

      I'd also be a bit worried about using something like this in production, especially if it's packaged as a npm lib. Even if the original maintainer has good intentions, it'd be all too easy for some malicious actor to offer them a million dollars to introduce a trojan/credential MITM scraper to later versions.

    • smashah 5 hours ago

      This is legal. See Teller API. Venmo will most likely lose if they take these devs to court based on precedent.

      I don't like this trend of small time OSS devs being berated about legal bullying from megacorps, meanwhile handsomely VC-funded businesses get congratulated with legal help. We should be berating these companies of not releasing the APIs that people want to use!

      We're in an age of AI, built atop agents, agents built atop APIs. APIs were the promise of Web 2.0, a promise being ripped away from us more and more by the day by these megacorps.

      There should be a SPECIFIC legal funds/OSS unions protecting these Adversarial Interoperability projects and their maintainers from legal threat harassment by megacorps.

      Just in the last 2 years we've had multiple near/passed-trillion dollar companies sending legal threats to OSS devs who have to fight them off on their own - one of them 15 years old.

      Thank you alanalanlu and richardyhz for this project. Godspeed! And screw Venmo if they dare go after these two maintainers and their project!

      • colesantiago 4 hours ago

        Unfortunately it's all fun until Integruru or you get a cease and desist.

        Will Integruru support you in your legal fight in court?

        Most devs aren't ready to lawyer up.

        • elzbardico 4 hours ago

          You get a cease and desist letter, you cease and desist doing the stuff if you don't want / can't afford a legal fight.

          Then you post the cease and desist letter on your website, and post about it on hacker news.

          • colesantiago 3 hours ago

            And everyone using the API will break.

            Very risky business.

            • lojack 2 hours ago

              The first time I had the plug pulled on a public API a product I worked on used sucked pretty bad. At this point its happened to me so many times that its just another line item of business risks thats an inevitability. I've never worked at a company that failed to recover as a result. Then again, I've never worked at a company whose entire business hinged on one single API.

              The likelihood of things breaking or behaving in unexpected ways are data points I think about when assessing risk irrespective of whether an API is public or not. In some industries even the public APIs are more risky than using the unofficial Venmo API likely is.

  • solardev 6 hours ago

    TIL Venmo uses GraphQL.

    It's interesting to note, too, that the current Venmo website posts to https://account.venmo.com/api/eligibility to get a token and then separately to https://account.venmo.com/api/payments to perform the actual payment. Those endpoints and shapes are different than what's in the script, which posts to https://api.venmo.com/v1/payments (https://github.com/Integuru-AI/Venmo-Unofficial-API/blob/a28...). I wonder if the v1 API is an older one used for some other service (the mobile app, maybe?).

    Thanks for sharing, OP.

  • zitterbewegung 6 hours ago

    Fintech and unofficial API are two things I wouldn’t consider using at best and at worst extremely risky and possibly can get you into trouble .

    • RockRobotRock 4 hours ago

      How do you think Plaid worked before banks got onboard with OAuth?

      • OsrsNeedsf2P 4 hours ago

        Can confirm. Plaid continues to work this way as well for many banks.

        I have heard from someone who worked there that (allegedly) one of the banks had a huge PI leak that was exposed to Plaid customers and (allegedly) nothing was done because Plaid didn't want to disclose their unofficial use.

  • alalani1 an hour ago

    What happens if they require 2FA via SMS or an Authenticator app to log in? Can you indefinitely refresh auth?

    • richardzhang 25 minutes ago

      We can handle 2FA during login. Regarding refreshing auth, it depends on the platform. We can help remain logged in nearly indefinitely on some platforms, while others would require users to re-login periodically.

  • testfrequency 4 hours ago

    Former Venmo here.

    PayPal Legal is going to love this

    • G1N 4 hours ago

      Former guy who used to reverse engineer Venmo/ other fintech/ bank APIs here. They really don’t care most of the time

  • EvanFisher 4 hours ago

    Look awesome! How do you get a bearer token? And did you look into authing transactions for other users?

    • alanloo 4 hours ago

      Good question! You can get the bearer token from the cookies in the browser. We also offer a hosted service where we handle the entire integration (authentication and hosting).

      • OptionOfT 4 hours ago

        Does that imply I need to give you my username and password?

        • alanloo 4 hours ago

          If you're using your own account, you can just use your own authentication cookies, but they do expire. If you're providing these functionalities for others' accounts and if you're ok with users logging in every time for usage, then no. If you'd prefer maintaining the log-in session for others, then unfortunately yes. I know this isn't ideal, but this is the unfortunate nature of unofficial APIs.

  • asdev 6 hours ago

    works until it doesn't

  • colesantiago 4 hours ago

    This is actually dangerous.

    This is how you see spammers, scammers and grifters target people with fake bots on most platforms and the producer i.e. Venmo traces it to an SDK and will kill all these unofficial API consumers.

    And once captchas are introduced it's over, I wouldn't be surprised if stuff like captchas would be implemented more into websites to stop scrapers for good.

    • edm0nd 2 hours ago

      >And once captchas are introduced it's over. I wouldn't be surprised if stuff like captchas would be implemented more into websites to stop scrapers for good.

      lol, not really. Captcha solving services like DeathByCaptcha and AntiCaptcha cost like $1.90 per 1,000 successfully solved captchas. They have APIs and you can easily implement them into your existing code in a few lines.

      tl;dr = captchas do nothing and they also do nothing to stop scrapers. its a non-issue.

      source: I scrape a lot of things and defeat captchas daily.

    • HeatrayEnjoyer 4 hours ago

      Goody idea in 2014 but it is 2024 and AI capabilities defeat nearly all "Prove you are a human" challenges.

      • colesantiago 3 hours ago

        > ...AI capabilities defeat nearly all "Prove you are a human" challenges

        Not really, seeing lots of captchas from Arkose, Cloudflare, HCaptcha, etc keep up with this in stopping bots.

  • snozolli 4 hours ago

    The negativity is shocking. This is HACKER News. Elegant workarounds of limitations are usually celebrated.

    IMO, this should be standard procedure. If you don't want to provide the means to build greater things off of your product, expect that others will. It's a bit ironic, given that they're using open source libraries to build their product.

    • isatty 3 hours ago

      Strong +1.

      There’s no need to offer bad unsolicited legal advice on behalf of a mega corp. Just stop.