diff --git a/apps/scan/public/autoincentive.png b/apps/scan/public/autoincentive.png new file mode 100644 index 000000000..d9c892f61 Binary files /dev/null and b/apps/scan/public/autoincentive.png differ diff --git a/packages/external/facilitators/README.md b/packages/external/facilitators/README.md index c48ae3b96..00190dd15 100644 --- a/packages/external/facilitators/README.md +++ b/packages/external/facilitators/README.md @@ -120,6 +120,7 @@ This package includes pre-configured integrations for the following X402 facilit | **Meridian** | BASE | No | No | | **Openmid** | BASE | No | No | | **Primer** | BASE | No | No | +| **AutoIncentive** | BASE, SOLANA | No | No | ### Import Individual Facilitators @@ -127,6 +128,7 @@ This package includes pre-configured integrations for the following X402 facilit // Simple facilitators (no setup) import { auto, + autoincentive, coinbase, payai, daydreams, diff --git a/packages/external/facilitators/src/facilitators/autoincentive.ts b/packages/external/facilitators/src/facilitators/autoincentive.ts new file mode 100644 index 000000000..78d7334c3 --- /dev/null +++ b/packages/external/facilitators/src/facilitators/autoincentive.ts @@ -0,0 +1,34 @@ +import { Network } from '../types'; +import { USDC_BASE_TOKEN, USDC_SOLANA_TOKEN } from '../constants'; +import type { Facilitator, FacilitatorConfig } from '../types'; + +export const autoincentive: FacilitatorConfig = { + url: 'https://facilitator.x402endpoints.online', +}; + +export const autoincentiveFacilitator = { + id: 'autoincentive', + metadata: { + name: 'AutoIncentive', + image: '/autoincentive.png', + docsUrl: 'https://github.com/Concorde89/facilitator', + color: '#4F46E5', + }, + config: autoincentive, + addresses: { + [Network.BASE]: [ + { + address: '0xdcab6a5ddeb65de28bedd218f9be1dbf5011d02c', + tokens: [USDC_BASE_TOKEN], + dateOfFirstTransaction: new Date('2026-01-16'), + }, + ], + [Network.SOLANA]: [ + { + address: '9JRPU5K4haWWo1g3WSjCaq283uYcbxvfdEATkaSLw9X8', + tokens: [USDC_SOLANA_TOKEN], + dateOfFirstTransaction: new Date('2026-01-16'), + }, + ], + }, +} as const satisfies Facilitator; diff --git a/packages/external/facilitators/src/facilitators/index.ts b/packages/external/facilitators/src/facilitators/index.ts index 67ce9027e..d8491280b 100644 --- a/packages/external/facilitators/src/facilitators/index.ts +++ b/packages/external/facilitators/src/facilitators/index.ts @@ -24,3 +24,4 @@ export { openmid, openmidFacilitator } from './openmid'; export { primer, primerFacilitator } from './primer'; export { x402jobs, x402jobsFacilitator } from './x402jobs'; export { openfacilitator, openfacilitatorFacilitator } from './openfacilitator'; +export { autoincentive, autoincentiveFacilitator } from './autoincentive'; diff --git a/packages/external/facilitators/src/lists/all.ts b/packages/external/facilitators/src/lists/all.ts index 85d140fd4..ab3721be3 100644 --- a/packages/external/facilitators/src/lists/all.ts +++ b/packages/external/facilitators/src/lists/all.ts @@ -24,6 +24,7 @@ import { primerFacilitator, x402jobsFacilitator, openfacilitatorFacilitator, + autoincentiveFacilitator, } from '../facilitators'; import { validateUniqueFacilitators } from './validate'; @@ -56,6 +57,7 @@ const FACILITATORS = validateUniqueFacilitators([ primerFacilitator, x402jobsFacilitator, openfacilitatorFacilitator, + autoincentiveFacilitator, ]); export const allFacilitators: Facilitator[] =