Skip to content
Open
Show file tree
Hide file tree
Changes from 15 commits
Commits
Show all changes
16 commits
Select commit Hold shift + click to select a range
0695540
feat(billing): add x402 USDC top-up payment endpoint
opencolin Jul 17, 2026
922c8cb
feat(billing): add x402 testnet support with mainnet-credit firewall
opencolin Jul 17, 2026
b60d88c
feat(billing): add x402 pre-settle guardrails and public discovery en…
opencolin Jul 17, 2026
3ccc624
docs(billing): add x402 v1.2 release notes
opencolin Jul 17, 2026
6ece9ef
feat(billing): x402 exactly-once credit gate and payment_hash conflic…
opencolin Jul 17, 2026
670c10a
feat(billing): add x402-reconcile-settled background job
opencolin Jul 17, 2026
095f18d
docs(billing): add x402 v1.1 money-integrity release notes
opencolin Jul 17, 2026
865b163
feat(billing): x402 transactions read-back and stable error codes
opencolin Jul 17, 2026
8178c45
docs(billing): x402 example agent client, usage and release notes
opencolin Jul 17, 2026
2465f9a
feat(billing): add x402 pay-per-deploy schema, migration and abuse co…
opencolin Jul 17, 2026
e58ac0b
feat(billing): add x402 pay-per-deploy endpoint POST /v1/x402/deploy
opencolin Jul 17, 2026
97cb01f
docs(billing): add x402 v2.0 pay-per-deploy release notes
opencolin Jul 17, 2026
a6346a5
Merge branch 'feat/x402-v1-0-readback-and-onramp' into feat/x402-inte…
opencolin Jul 17, 2026
2e7ac69
Merge branch 'feat/x402-v1-2-sandbox-and-discovery' into feat/x402-in…
opencolin Jul 17, 2026
4581a23
docs(billing): mark x402 releases integrated and describe review cand…
opencolin Jul 17, 2026
41a22fb
docs(billing): link upstream x402 PR in state doc
opencolin Jul 18, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions apps/api/drizzle/0032_melodic_onslaught.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
CREATE TYPE "public"."x402_transaction_status" AS ENUM('pending', 'settled', 'succeeded', 'failed');--> statement-breakpoint
CREATE TABLE "x402_transactions" (
"id" uuid PRIMARY KEY DEFAULT uuid_generate_v4() NOT NULL,
"user_id" uuid NOT NULL,
"status" "x402_transaction_status" DEFAULT 'pending' NOT NULL,
"amount" integer NOT NULL,
"currency" varchar(3) DEFAULT 'usd' NOT NULL,
"network" varchar(100) NOT NULL,
"asset" varchar(255) NOT NULL,
"payment_hash" varchar(64) NOT NULL,
"payer_address" varchar(255),
"settlement_tx_hash" varchar(255),
"error_message" varchar(1000),
"created_at" timestamp DEFAULT now() NOT NULL,
"updated_at" timestamp DEFAULT now() NOT NULL
);
--> statement-breakpoint
ALTER TABLE "x402_transactions" ADD CONSTRAINT "x402_transactions_user_id_userSetting_id_fk" FOREIGN KEY ("user_id") REFERENCES "public"."userSetting"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
CREATE UNIQUE INDEX "x402_transactions_payment_hash_unique" ON "x402_transactions" USING btree ("payment_hash");--> statement-breakpoint
CREATE INDEX "x402_transactions_user_id_idx" ON "x402_transactions" USING btree ("user_id");--> statement-breakpoint
CREATE INDEX "x402_transactions_status_idx" ON "x402_transactions" USING btree ("status");--> statement-breakpoint
CREATE INDEX "x402_transactions_user_id_created_at_idx" ON "x402_transactions" USING btree ("user_id","created_at");
2 changes: 2 additions & 0 deletions apps/api/drizzle/0033_x402_deploy_columns.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
ALTER TABLE "x402_transactions" ADD COLUMN "deployment_dseq" varchar(100);--> statement-breakpoint
ALTER TABLE "x402_transactions" ADD COLUMN "deploy_failed" boolean DEFAULT false NOT NULL;
Loading