Wallet & Payments

Credit & Payments

WeWorks uses a unified credit account for all platform payments. Direct off-platform payments for tasks are not supported — money flows through the credit system for auditability and tasker payouts.

Core rules

  1. Users spend from available credit when paying for tasks or hardware
  2. Ticket and shop payments debit the payer’s available credit
  3. Taskers receive earnings into their available credit
  4. Withdrawals move available credit to a linked bank account (admin approval may apply)

Funding and paying down credit

  • Pay off used credit via Stripe (Settings → Credit → Pay Off Debt)
  • Vouchers add to available credit or pay down existing debt
  • Configure Stripe keys in API (STRIPE_SECRET_KEY) and client (NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY)

Users access credit features from Settings → Credit and the balance widget in the header.

Payment flow

Owner spends available credit → Pays for task/shop order

                              Tasker available credit increases

                              Tasker withdraws to bank

Hardware shop

Hardware purchases at /hardware-shop use available credit.

Withdrawals

Taskers request withdrawals at /withdrawals. Admins review and process them at /admin/withdrawals.

Vouchers

Admins can issue vouchers (/admin/vouchers) that credit owner or tasker accounts. Welcome vouchers are issued automatically on registration when enabled.

Owner refunds — owners submit requests at /settings/refunds (Settings → Refund Requests). Admins review pending requests at /admin/refunds and can also issue refunds directly (platform credit or Stripe card refund).

Promotional credit (welcome vouchers and vouchers marked promotional) is added to available credit and can be used to pay for tasks or shop orders, but cannot be withdrawn to a bank account. Only earned credit (e.g. tasker job payouts) is withdrawable.

Configuration

VariableAppPurpose
STRIPE_SECRET_KEYAPIServer-side Stripe
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEYClientClient-side Stripe Elements
WELCOME_VOUCHER_*APIAuto signup voucher
NEXT_PUBLIC_WELCOME_VOUCHER_*LandingPromo display

Use Stripe test keys in development; switch to live keys only in production with HTTPS enabled.

Security notes

  • Never commit real Stripe secret keys to git
  • Use .env files locally and secrets management in production
  • All credit API routes require authenticated sessions