Skip to main content
AutoIncentive is a hosted facilitator service that streamlines x402 payment processing. By using AutoIncentive’s endpoints, you can offload payment verification and settlement without needing to operate your own facilitator infrastructure.

Highlights

  • Multi-Chain Support — Base, SKALE Base, and Solana from a single facilitator endpoint
  • Gasless on SKALE — Zero gas fees for settlement on SKALE Base, powered by CREDITS
  • x402 v1 & v2 — Supports both legacy network names and CAIP-2 format
  • Free to use — No fees charged on top of payments

Supported Networks and Tokens

NetworkNetwork IdentifierTokenSigner Address
SKALE Base Mainnetskale-base / eip155:1187947933USDC0x12a2A9353fD1bAdb2eB9DbE9Cb75d73e527D2763

Prerequisites

  • Node.js and npm installed
  • A SKALE Chain endpoint
  • Basic understanding of x402 protocol

Configuration

Environment Variables

Create a .env file with the following configuration:
# Receiver address for the x402 payment
RECEIVING_ADDRESS=0xAddress_Receiving_Payment

# please don't share your private key with anyone
PRIVATE_KEY=0xyour_pk

Dependencies

Install the x402 client library and viem:
npm install x402 viem

Integration with AutoIncentive

import express from "express";
import { paymentMiddleware } from "x402/express";
import "dotenv/config";

const app = express();

const receiver_address = process.env.RECEIVING_ADDRESS || "0xsome_default_address";
const facilitator = "https://facilitator.x402endpoints.online";

app.get("/api/free", (req, res) => {
  res.json({
    type: "free",
    message: "This is free data that does not require payment",
    timestamp: new Date().toISOString(),
    data: {
      temperature: 72,
      humidity: 45,
      conditions: "Sunny",
    },
  });
});

// Premium endpoint with payment required
app.get(
  "/api/premium",
  paymentMiddleware(facilitator, {
    network: "eip155:1187947933",
    asset: "0x85889c8c714505E0c94b30fcfcF64fE3Ac8FCb20",
    amount: "1000",
    payTo: receiver_address,
    description: "Premium weather data",
    mimeType: "application/json",
    maxTimeoutSeconds: 60,
    resource: "/api/premium",
  }),
  (req, res) => {
    res.json({
      type: "paid",
      message: "This is paid data that requires x402 payment",
      timestamp: new Date().toISOString(),
      data: {
        temperature: 72,
        humidity: 45,
        conditions: "Sunny",
      },
    });
  }
);

app.listen(3000, () => {
  console.log("Listening on http://localhost:3000");
});

Troubleshooting

Connection Issues

If you cannot connect to AutoIncentive:
  1. Verify the facilitator URL is correct
  2. Check network connectivity
  3. Ensure API credentials are valid
  4. Review firewall settings

Payment Failures

Common causes and solutions:
IssueSolution
Invalid signatureVerify wallet configuration and signing
Insufficient balanceEnsure payer has enough USDC
Network mismatchCheck chain ID matches configuration
Expired authorizationIncrease maxTimeoutSeconds

Next Steps

SKALE Supported Facilitators

Alternative facilitator with advanced features

Run Your Own

Deploy your own facilitator infrastructure

Accept Payments

Protect endpoints with payment middleware

Make Payments

Build clients that handle x402 payments

Resources


This entity — AutoIncentive — is deployed and actively supporting SKALE. These are 3rd party services that may have their own terms and conditions and privacy policies. Use these services at your own risk. AI and agents is a highly experimental space; the 3rd party software solutions may have bugs or be unaudited. You and your agents and your customers use all 3rd party services chosen at your own risk and per their terms.