Payout wallets
Save wallets once on the account and every new listing can be just the repo URL. No payment-processor account exists anywhere in this flow; the wallet is the whole arrangement.
curl -X PATCH https://gitbuyer.com/my/account \
-H "Authorization: Bearer gb_YOURKEY" \
-H "content-type: application/json" \
-d '{"wallet_base": "0xYourUSDCWalletOnBase",
"wallet_solana": "base58…"}'
The precedence is simple and never surprises: a wallet named on a
specific listing wins; the account defaults fill in when a listing names
none; an anonymous listing gets no fallback; money never routes on an
identity nobody proved. Send "" to clear a field; omit to
keep it.
Adding the chain you were missing propagates: existing listings
rebuild their checkouts to offer it, paying the address you just saved.
Addresses a listing already carries never move, and the response names
any listing it could not rebuild (listings_skipped, with
the reason) instead of guessing.
After saving, listing a repo is:
curl -X POST https://gitbuyer.com/repos \
-H "Authorization: Bearer gb_YOURKEY" \
-H "content-type: application/json" \
-d '{"github_url": "https://github.com/you/your-repo"}'