Inspiration
“I manage web3 communities, and I pay people for real work: threads, posts, designs. The hard part is not posting the job. It is checking every submission, catching the fake ones, and paying each person by hand. I’ve also been burned by scam links, and by the mess of moving crypto into naira. I wanted one place where the work gets scored, I approve it, and PayPal sends the money. That’s Gentpay.”
What it does
Gentpay runs a bounty from the posting to the payment.
A creator posts a job, a reward pool, and the rules the work has to meet. Anyone submits the finished work with a PayPal email. OpenAI scores that submission from 0 to 100 against each rule and writes the reason. A score under 20 is unpaid. The app splits the pool by the scores. A person approves each share, and PayPal Payouts sends it. The model cannot choose the amount or who gets paid.
On the demo, that job was a writing guide. The article scored 95 out of 100, and PayPal sandbox sent the $50.00 share.
How we built it
Gentpay was built as one small web app, solo, during the hackathon. The rule that shaped the code was that the AI can score the work, and only a person can send the money.
The app is TypeScript on Node and Express. A public page lists the bounty and takes the submission, including the PayPal email. A creator page, protected by a password, lists the bounty and runs the review. The scorer is an OpenAI model with a fixed set of tools: list the bounty, read the submission, record a score from 0 to 100, and ask the app to split the pool. Those tools cannot call PayPal. When you click Approve & pay, a separate function sends that share through the PayPal Payouts API in the sandbox. The amount comes from the stored score, and the recipient is the email already saved on the submission. Locally the records sit in a JSON file. On Render they sit in Postgres.
The demo path is the one that got finished: post the writing bounty, submit the guide, score it 95, approve the $50.00 share, and show the PayPal batch id.
Challenges we ran into
The first problem was finding a real bounty to run. Boards like Algora were full of listings that were already paid, cancelled, or never going to pay. Putting those on Gentpay would have looked busy and still sent no money, so the demo had to be a bounty I posted myself.
The next problem was the score. The model only reads the text saved on the submission. The first pass scored a short summary of the work, so that score had to be wiped and the real article submitted. That one came back at 95.
PayPal was fussy in the sandbox. A normal-looking email failed. The payout only went through to a sandbox Personal account, and even after it was sent, PayPal still marked the $50 batch as processing.
Accomplishments that we're proud of
What we learned
What's next for GentPay
Built With
- gemini
- git
- github
- node.js
- render
- superbase
- typescript