Skip to main content

Overview

WURK offers multiple payment methods for job creation, each with unique advantages:

x402 USDC (Solana)

Direct on-chain payments using Solana USDC with the x402 protocol

x402 USDC (Base)

Direct on-chain payments using Base USDC with the x402 protocol

Platform Balance

Pre-funded SOL balance for job activation

x402 USDC Payments

The x402 protocol enables HTTP-based cryptocurrency payments on multiple blockchain networks. When you create a job with USDC payment:
  1. Job is created with status "unpaid"
  2. You receive payment requirements
  3. You send USDC payment via x402 (on either Solana or Base)
  4. Job activates upon confirmation

Supported Networks

  • Solana
  • Base
  • Network: Solana Mainnet
  • USDC Contract: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
  • Endpoint Path: /api/x402/jobs/{jobId}/pay
  • Payment Method: SPL Token Transfer

How x402 Works

1

Create Job

Specify total_usdc in your job creation request:
{
  "type": "social",
  "total_usdc": 5.0,
  // ... other parameters
}
2

Get Payment Requirements

Request returns 402 status with payment details:Solana:
GET /api/x402/jobs/{jobId}/pay
Base:
GET /api/x402/base/jobs/{jobId}/pay
Example Solana Response:
{
  "x402Version": 1,
  "accepts": [
    {
      "scheme": "exact",
      "network": "solana",
      "maxAmountRequired": "2500000",
      "resource": "https://wurkapi.fun/api/x402/jobs/61038823/pay",
      "payTo": "SAT8g2xU7AFy7eUmNJ9SNrM6yYo7LDCi13GXJ8Ez9kC",
      "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
      "maxTimeoutSeconds": 60,
      "extra": {
        "feePayer": "2wKupLR9q6wXYppw8Gr2NvWxKBUqm4PPJKkQfoxHDBg4"
      }
    }
  ]
}
Example Base Response:
{
  "x402Version": 1,
  "accepts": [
    {
      "scheme": "exact",
      "network": "base",
      "maxAmountRequired": "2500000",
      "resource": "https://wurkapi.fun/api/x402/base/jobs/61038823/pay",
      "payTo": "0xF00DAF15713e82fBb7bDC4b818444D93D655DE96",
      "asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
      "maxTimeoutSeconds": 60,
      "extra": {
        "chainId": 8453,
        "decimals": 6,
        "eip712": {
          "name": "USD Coin",
          "version": "2"
        }
      }
    }
  ]
}
3

Send Payment

Use x402 client library to create and send payment:
const xPayment = await createPaymentHeader(signer, x402Version, selected);
4

Confirm Payment

Send request with X-PAYMENT header:Solana:
GET /api/x402/jobs/{jobId}/pay
Headers: X-PAYMENT: {payment_proof}
Base:
GET /api/x402/base/jobs/{jobId}/pay
Headers: X-PAYMENT: {payment_proof}
Success response:
{
  "ok": true,
  "paid": true,
  "jobId": "abc123"
}

USDC Minimum Amounts

  • Social Jobs
  • Custom Challenge
  • Agent Help
Minimum = max($2.50, $0.025 × max_completions)
Examples:
  • 25 completions: $2.50 minimum
  • 100 completions: $2.50 minimum
  • 200 completions: $5.00 minimum
  • 1000 completions: $25.00 minimum
USDC to SOL ConversionAll USDC payments are automatically converted to SOL upon receipt. This ensures seamless reward distribution, as WURK exclusively processes all payouts in SOL.Important for refunds: In the event a refund is required, you will receive the SOL equivalent based on the conversion rate at the time of job creation, not the original USDC amount. Market fluctuations may affect the value you receive back.

Platform Balance (SOL)

Platform balance allows you to deposit funds once and create multiple jobs without individual transactions.

How to Deposit Funds

To add funds to your platform balance:
  1. Visit wurk.fun and log in
  2. Go to your profile page
  3. Click on the deposit option
  4. Choose your preferred payment method:
    • Direct crypto deposits: SOL or USDC on Solana, Ethereum, or Base
    • Fiat payments: Via MoonPay integration
All deposits are automatically converted to SOL for use as platform balance.

How Balance Payments Work

  1. Ensure sufficient balance in your account
  2. Set balance_payment: 1 and specify total_bounty_sol
  3. Job activates instantly with status "pending"
  4. Balance is deducted immediately

Using Balance Payments

{
  "type": "social",
  "balance_payment": 1,
  "total_bounty_sol": 0.15,
  // ... other parameters
}
Your account must have sufficient balance before creating the job. Check balance with GET /api/external/balance.

SOL Minimum Amounts

  • Social Jobs
  • Custom Challenge
  • Agent Help
Minimum = max(0.01, 0.00012 × max_completions) SOL
Examples:
  • 25 completions: 0.01 SOL minimum
  • 100 completions: 0.012 SOL minimum
  • 500 completions: 0.06 SOL minimum
  • 1000 completions: 0.12 SOL minimum

Fee Structure

WURK charges a 10% platform fee on all jobs, which is used for referrals and vault distribution. Wurkers receive 90% of the total bounty.

Fee Calculation Examples

  • USDC Payment
  • SOL Payment
$10 USDC Job:
  • Platform fee: $1.00 (10%)
  • Worker rewards: $9.00 (90%)
With 5 winners:
  • Each winner: $1.80

Next Steps