X402 Git

How it works

A private repository, sold at a version, over x402 — to people and to agents alike. The code stays private. What anyone can read before paying is the file list, the languages, the licence, the README, the release log and the security scan: enough to know what they are buying, and not one line of the source.

One release, start to finish

  1. YouPush a tag

    The release is snapshotted, licence-checked and scanned for secrets and known vulnerabilities. Nothing goes on sale until that passes.

  2. PlatformIt goes on sale

    Your listing page shows the file list, the languages, the licence, the README, the release log and the scan verdict — and not one line of source.

  3. BuyerReads the manifest

    A person in a browser or an agent on a fetch. Both get exactly the same page, and both decide before they pay.

  4. BuyerPays over x402

    One signed USDC authorization for the exact price. No account to make, no card to enter, no checkout page.

  5. PlatformSettles on Base

    The payment lands on chain, and only then is access granted. The transaction is the receipt.

  6. BuyerDownloads

    A .zip of the repository at that version, licence included — the exact bytes that were scanned.

  7. YouGet paid

    90% sweeps to the wallet you bound, seven days after it settles. Every release you ship after this is a chance to be paid again.

Sell

Connect a repo
Sign in with GitHub and install the app on one repository. Nothing else on your account is touched, and the repository stays private.
Set a price
Pre-filled at $9, with $5 for updates. “$0 — buy once, updates free” is a first-class answer, not a discount. Change either later; nobody who already bought is affected.
Ship updates
Every release you tag afterwards can be sold again to the people who already bought. They pay the update price and you keep 90% of it, the same as the first sale. Set updates to $0 and every future release is included in what they paid.
Get paid
Add the wallet address you want the money in and prove it with a signature. Every payment lands there and nowhere else — there is no field anywhere in this product for sending your earnings to a different address. It is your wallet, not a balance here, so there is nothing to withdraw.

How agents find your listing

Pushed to the x402 indexes
The moment your listing is live it is in the catalogue the x402 indexers read. x402scan picks it up from our API description, and the x402 Bazaar — the index Coinbase's agent wallets search — lists it on its first sale. Nothing to submit, nothing to keep up to date.
Listed in the MCP registry
Every listing is reachable through our MCP server, and that server is published in the official MCP Registry. An agent that installs it can read your manifest, check your version and buy, by name, from inside Claude, Cursor or any MCP client.
Built for search
Your page is rendered on the server, in the sitemap, and carries the product and price data search engines read; they are told the moment it changes. A person or an agent searching for what you sell can land on it — and your own audience is still the shortest path, so link the page from your README, your posts and your videos.

Buy

See it first
Every listing shows the file list, the languages, the licence, the README, the release log and the scan result before anyone pays. The code itself is not shown until the payment settles.
Pay with your wallet
Open a listing, read what is inside, press buy. Your wallet signs one authorization for the exact amount in USDC on Base. There is no account to make and no card to enter.
Download
A download link appears as soon as the payment settles. It is a .zip of the repository at that version, licence included. The link lasts five minutes — get another any time from Your purchases, for as long as your wallet exists.
Take an update, or don't
When the creator ships a new release you decide whether to take it. You are charged the update price stamped on your purchase or the current one, whichever is lower, and only when you choose to. If the update price was $0, every future release is yours and no later change can take that back.
Agents buy the same way
An agent with a wallet does the x402 exchange in code, without a person. It checks the version endpoint before each run, reads what changed, and decides on its own whether the update is worth the update price. Nobody is charged for an update they did not ask for.

What is x402?

When HTTP was written in 1997 it set aside status code 402 — Payment Required and left it undefined, “reserved for future use”. It stayed that way for twenty-eight years. x402 is the open standard that finally fills it in: a server can answer a request with a price, a client can answer the price with a signed stablecoin payment, and the same request goes through.

Request
GET the repository
Answer
402 Payment Required · $9.00 in USDC on Base
Request
GET the repository, with the payment signed
Answer
200 OK · download link, good for five minutes
Buying a repository over x402 Sequence diagram. The buyer sends GET the repository to X402 Git and receives 402 with the price and a quote id. The buyer repeats the GET with a signed USDC authorization. X402 Git screens the payer, re-checks the quote, and asks the facilitator to verify and settle; the facilitator submits the transfer to Base with gas sponsored and returns the transaction hash. Only then does X402 Git answer 200 with a download URL that lasts five minutes. GET the repository 402 · price + quote_id The price is quoted per caller: full, update, or already owned same GET · signed USDC authorization The wallet signs the exact amount; keys never leave it verify + settle Payer screened and quote re-checked first transfer · gas sponsored tx hash settled 200 · download URL, 5 minutes Access exists only after the tx hash does Quote Pay Settle Deliver Buyer · person or agent · Sequence participant Buyer person or agent X402 Git · quote · verify · grant · Sequence participant X402 Git quote · verify · grant Facilitator · submits, pays gas · Sequence participant Facilitator submits, pays gas Base · USDC ledger · Sequence participant Base USDC ledger Legend request return security default message
The same exchange with the machinery drawn in. The wallet signs; a facilitator submits the transfer to Base and pays the gas; the download link exists only after the transaction hash does.

That is the whole protocol. Three things follow from it, and this product is built on all three.

No accounts
The payment is the identity. A buyer needs a wallet with USDC in it and nothing else — no sign-up, no card, no checkout — which is why an agent can buy here without a person.
No gas
The buyer signs an authorization; a facilitator submits it to Base and pays the gas. Neither side ever holds ETH, and there is no protocol fee.
A price per request
Because the price is quoted on every request, it can be different for every caller: $9 to someone new, the update price to someone who already owns the last version, and a plain 200 to someone whose purchase included updates. The settlement on chain is the receipt.

Every listing here is an x402 endpoint. The buy button on a product page is just a browser wallet doing the exchange above; an agent does it in code. Both get the same 402 and the same download.

Fees

Where a $9.00 payment goes Flow diagram. One signed transfer of $9.00 USDC on Base moves from the buyer's wallet to the platform address. It splits: $0.90 — the flat 10% fee and the platform's only revenue — and $8.10, your 90%, held seven days, then swept automatically to the bound wallet, the only destination. The holdback is also where a takedown refund is paid from, if ever. 01 / Payment 02 / Settles 03 / Split 04 / Payout Buyer's wallet · $9.00 USDC · 01 / Payment · Base Buyer's wallet $9.00 USDC Base Platform address · settlement lands here · 02 / Settles · on chain Platform address settlement lands here on chain Your 90% · $8.10 · held 7 days · 03 / Split · holdback Your 90% $8.10 · held 7 days holdback Platform fee · $0.90 · flat 10% · 03 / Split · revenue Platform fee $0.90 · flat 10% revenue Your bound wallet · $8.10 arrives · 04 / Payout · only destination Your bound wallet $8.10 arrives only destination Takedown refunds · paid from the holdback · 04 / Payout · if ever Takedown refunds paid from the holdback if ever one signed transfer USDC on Base $8.10 · your 90% net $0.90 · the only fee 10% of gross sweeps after 7 days automatic a takedown refund the only revocation Legend primary data async batch data store data flow
Every payment takes the same path: one signed transfer settles at the platform address, 10% is the fee, and your 90% sweeps to the wallet you bound seven days later.
10%, and nothing else
The platform keeps a flat ten percent of each payment — the first one and every update after it. No listing fee, no monthly fee, no payout fee. At $9 you keep $8.10.
Your wallet, not a balance
Every payment settles to an EVM wallet you bound and only you control. There is no account here holding your money, and nothing to withdraw because it was never ours to hold.
7-day holdback
Your share of a sale sweeps to your wallet seven days after it settles. That window is the only time this platform holds money you have earned, and it exists so a takedown refund has somewhere to come from.
USDC on Base
Prices are in dollars and settle in USDC on the Base network. Gas is sponsored, so neither side needs to hold ETH to transact.
What that adds up to
300 buyers at $9 is $2,700 up front, and a $5 update they all take is another $1,500 — every release. You keep $2,430 of the first and $1,350 of each update. Arithmetic, not a forecast: nobody has to take an update, and the update price is yours to set.

Compared

WhatGumroadGitHubSkoolX402 Git
Sell a private repoNoNoNoYes
Live GitHub repo syncNoNoNoYes
Free to listYesYesNoYes
Charge for each releaseNoNoNoYes
Agents can buy itNoNoNoYes
No KYC or tax forms to get paidNoNoNoYes
Works from any countryNoNoNoYes
Paid to a wallet only you controlNoNoNoYes

Questions

Selling

Can buyers see my code before they pay?

No. Before paying, anyone can see the file list with sizes, the language mix, the licence, the rendered README, the release log and the scan verdict. The source itself is served only after a payment settles, as a .zip of the exact bytes that were scanned.

How do agents find my listing?

Once it is live we push it to the places agents look, without you doing anything: the x402 indexes (x402scan, and the x402 Bazaar from its first sale), the official MCP Registry through our buy-side server, and the search engines, which are told the moment your page changes. Your own audience is still the shortest path — link the page from your README, your posts and your videos.

Does my repository have to leave GitHub?

No. You install the GitHub App on one repository and keep working there. Every tag you push is snapshotted and scanned here; the repository itself stays private on GitHub.

What happens when I push a new release?

It is snapshotted, licence-checked and scanned for secrets and known vulnerabilities. If it passes, it goes on sale: new buyers pay the price, and everyone who already bought is offered it at the update price. If it fails, nothing changes — the listing keeps selling its last passing release and you see the findings.

Can I change my prices later?

Yes, any time, and only future purchases are affected. Each purchase carries the update price it was made at, and a holder pays that or the current update price, whichever is lower. A purchase made with updates at $0 includes every future release, permanently.

Do I need a crypto wallet?

You need an address on an EVM chain to be paid at — any wallet that holds USDC on Base will do. You prove you control it by signing one message; no funds move. The server never sees a private key, yours or anyone's.

Do I need to do KYC or file tax forms to get paid?

No. Payouts are not gated on identity. Every payout address is screened against sanctions lists, which is a check on the address, not on you. Tax on what you earn is your responsibility, as it would be anywhere.

Can I stop selling?

Yes. Retiring a listing stops new purchases. Everyone who already bought keeps every version they own and can still download it; the listing page and its release log stay up, marked no longer sold. Uninstalling the GitHub App does the same thing.

Buying

Do I need an account?

No. You need a wallet with USDC on Base. Your purchases are tied to that wallet's address, and you can list and re-download them at any time by signing a message with it.

What exactly do I get?

A .zip of the repository at the version you paid for, with its LICENSE and attribution included. It is the exact snapshot that was scanned, and the download link can be regenerated for as long as your wallet exists.

Am I charged for updates automatically?

Never. When a new release ships you are shown what changed and what it costs, and you are charged only if you choose to take it. If you bought with updates at $0, every new release is already yours.

Can the creator take back what I bought?

No. A buyer never loses a purchased version to a creator action — not a price change, not a retirement, not a deleted repository. The only thing that can revoke a purchase is a takedown by the platform, and that refunds you from the holdback.

Does the creator see who bought?

No. Creators see a sale — the version, the kind, the amount and the time — and never a buyer's address or transaction hash. Payments to the platform address are, like everything on a public chain, visible on Base.

Can my agent buy without me?

Yes. Every listing is an x402 endpoint. An agent with a funded wallet fetches the repository, gets a 402 with the price, pays it within whatever budget you set, and downloads — with no person in the loop. It checks the version endpoint before each run and reads the changelog before deciding to pay for an update.

Money

What does it cost to list?

Nothing. The platform's only revenue is 10% of each payment. There is no listing fee, no monthly fee and no payout fee. At $9 you keep $8.10.

When do I get paid?

Seven days after each sale settles, your 90% sweeps to the wallet you bound. The holdback is fixed, the same for everyone, and it is the only time this platform holds money you have earned.

Why USDC on Base, and what about gas?

Prices are set in dollars and USDC is a dollar. Base is where x402 settles cheaply, and gas is sponsored, so a buyer needs only USDC and a creator needs only an address. Nobody on either side has to hold ETH.

Can I send my earnings somewhere else?

Only to the address you bound. There is no field anywhere in the product for a different destination, which is what makes a leaked API key useless to a thief. Changing the bound address requires a signature from the current one and takes effect after 48 hours.

Are there refunds?

A refund happens when the platform takes a listing down, and it is paid from the holdback. That is the only path that revokes a purchase, and it is logged. Buyer-initiated refunds are not in this version.

The full terms are at /api/terms. Every screen here is also an API — the routes are in the docs.