Built for WooCommerce on WordPress · v2.2.0 // A WooCommerce credit ledger for any economy

Run your WooCommerce shop, club, or school on credits.

The WooCommerce credit system plugin for WordPress stores that don’t just sell products. One ledger for everything your members earn, spend, or receive — products, sessions, tokens, hours, points. Built on WooCommerce and WordPress. Signed audit trail. HPOS-ready.

// LEDGER v2.2.0·SIGNED AUDIT TRAIL·HPOS-READY·EU-HOSTED
POST/webhooks200 ok48ms
wallet · alice@example.com
live
12:04refund.restored+18.00 CR
12:07credit.spent−6.00 CR
12:09credit.spent−2.50 CR
12:11fraud.flagged— blocked
12:12credit.added+10.00 CR
Refund restored 18.00 credits
Order #3421 · 2s ago

One WooCommerce plugin, every kind of economy

A credit is whatever your organization says it is.

A padel hour. A workshop seat. A drink at the bar. A behaviour point. A box of vinyl. CreditKit Pro doesn’t care what your unit means — it just makes sure the ledger always balances.

Shops & e-commerce

Store credit, loyalty programs, refund restoration, prepaid bundles — the original use case.

CREDITS

Sports clubs

Members pay yearly, spend credits per session. Padel hour = 6 credits, swim entry = 2 credits.

SESSIONS

Schools & education

Behaviour points, gamified achievements, cafeteria credits, library passes. Students earn, teachers award.

POINTS

Events & festivals

Replace cash on-site with festival credits. Drink tokens, food vouchers, merch passes, all in one wallet.

TOKENS

Coaching & therapy

Sell session bundles, deduct one credit per appointment. No more “did I prepay or not?” emails.

SESSIONS

Subscription boxes

Monthly auto-refill of credits, customer spends across your catalogue. No item commitment, no skip-week emails.

CREDITS / MONTH

Membership communities

Tier-based perks. Bronze gets 100 credits/month, gold gets 500, platinum gets unlimited. Real money on the back end.

TIER CREDITS

Co-working & venues

Book a meeting room for 4 credits, a podcast booth for 8. Office managers love it.

BOOKING CREDITS
// The part no other plugin ships

Give a team a prepaid budget, with approval — not your card details.

Hand a department, club, or franchise a shared pool of credits. Members spend against it; any spend over a threshold you set waits for a manager’s approval. Prepaid, pooled, and approved per transaction — the one combination no other WooCommerce plugin puts together.

Prepaid & pooled

One shared credit budget for the whole team, topped up in advance. No invoices to chase, no card on file, nothing billed later.

BUDGET

Approval per transaction

Set a credit threshold. Spends above it route to a manager for approval before they go through — not a one-time sign-off, every time.

APPROVAL

Enforced in credits

Budgets, limits and approval thresholds are counted and enforced in credits — the same unit your members already spend in.

CREDITS

See how Groups & Budgets works →

Running it for a club, school, or company? Switch on the optional Groups & Budgets module: organise members into teams, hand each a shared budget, and let managers approve credit requests — all from My Account.

Spend safety
Atomic
no oversell, no negative balances
Reconciliation built-in
Hourly
append-only ledger, auto-checked
Fraud scoring
5-factor
every transaction risk-scored
Money precision
Exact
DECIMAL ledger, no rounding drift

Real WooCommerce stores, real ledgers

Eight kinds of business. One unit of account.

Paid · CR
Atelier Noord
#A-1247 · 24 May 2026
Linocut print40.00 CR
Newsletter discount−5.00 CR
Total35.00 CR
TC Zandvoort
#TCZ-892 · 24 May 2026
Padel 1h · court 36.00 CR
Total6.00 CR
Studio Werkdag
#SW-3145 · 24 May 2026
1h coaching60.00 CR
Recap notes12.00 CR
Total72.00 CR
Lowlands Festival
#LL-204 · 24 May 2026
Drink tokens (10×)25.00 CR
Total25.00 CR
Paid · CR
Loop Records
#LR-9821 · 24 May 2026
Vinyl pre-order24.00 CR
Sleeve sign-up3.00 CR
Total27.00 CR
OBS De Vlinder
#OBS-5572 · 24 May 2026
Behaviour points wk 188.00 CR
Library pass renewal2.00 CR
Total10.00 CR
Helder Studio
#H-441 · 24 May 2026
Brand session450.00 CR
Total450.00 CR
Werkspot Zuid
#WS-882 · 24 May 2026
Meeting room 2h8.00 CR
Podcast booth 1h8.00 CR
Total16.00 CR
Paid · CR
Atelier Noord
#A-1247 · 24 May 2026
Linocut print40.00 CR
Newsletter discount−5.00 CR
Total35.00 CR
TC Zandvoort
#TCZ-892 · 24 May 2026
Padel 1h · court 36.00 CR
Total6.00 CR
Studio Werkdag
#SW-3145 · 24 May 2026
1h coaching60.00 CR
Recap notes12.00 CR
Total72.00 CR
Lowlands Festival
#LL-204 · 24 May 2026
Drink tokens (10×)25.00 CR
Total25.00 CR
Paid · CR
Loop Records
#LR-9821 · 24 May 2026
Vinyl pre-order24.00 CR
Sleeve sign-up3.00 CR
Total27.00 CR
OBS De Vlinder
#OBS-5572 · 24 May 2026
Behaviour points wk 188.00 CR
Library pass renewal2.00 CR
Total10.00 CR
Helder Studio
#H-441 · 24 May 2026
Brand session450.00 CR
Total450.00 CR
Werkspot Zuid
#WS-882 · 24 May 2026
Meeting room 2h8.00 CR
Podcast booth 1h8.00 CR
Total16.00 CR

Native cart, account, emails

Wherever your members look, the balance is right there.

Cart, checkout, member account, order emails, booking confirmations — every surface a member sees shows the credit cost and their balance after. WooCommerce still holds the fiat value underneath for tax, accounting, and reporting. The two never drift.

  • Works with WooCommerce Blocks Checkout and classic checkout
  • Same UI whether the credit is a session, a token, a point, or store credit
  • Mixed-cart guard blocks “credits + cash” carts before they submit
  • Account dashboard shows balance, history, and recent activity in one view
Cart

Credits, treated like a real currency.

The ledger, live

Every credit. Accounted for.

One WooCommerce member. One year. A bundle bought, sessions spent, a refund restored, a fraud flag raised and cleared, a reward granted. Every state change is one row — signed, timestamped, and replayable. Your auditor never has to ask twice. Neither do you when a member emails at midnight.

Marie Janssens · member #1043
marie.janssens@example.com
Balance: 287.00 CR
Jan 04 12:04 bundle.purchased+250.00 CR
Jan 11 09:32 credit.spent−6.00 CR
Jan 18 14:21 credit.spent−2.00 CR
Feb 02 11:08 refund.restored+12.00 CR
Feb 14 23:47 fraud.flagged— blocked
Feb 15 08:12 user.suspension_cleared— restored
Mar 01 10:00 credit.added+100.00 CR
Mar 12 15:30 credit.spent−25.00 CR
Checkout

Payment gateway

A dedicated Credit gateway, native to WooCommerce.

Members check out in one click when their balance covers it. Run credits-only, partial-credits-plus-fiat, or full-fiat with credit rewards — your call per product, per category, or per member tier. Refunds restore the right credits, in the right ratio, automatically.

  • Atomic balance updates — two parallel debits cannot both pass
  • Atomic spend so the gateway can never oversell
  • Goodwill store-credit issuance on refunds, at a rate you set
  • Membership tiers can override gateway availability

Why we built this

Built because we got tired of tracking balances by hand.

Without CreditKit

Tracking who paid for what, in a spreadsheet

  • A member messages: “How many sessions do I have left?”
  • You scroll through your payment processor to find their bundle
  • Subtract by hand — minus the no-show, plus the one they pre-paid
  • Update a Google Sheet two other admins also edit
  • Reply with a number you are 80% sure about
  • Hope nobody updated the sheet between steps 4 and 5
With CreditKit

One ledger, one source of truth

  • Member balance lives in one place: cart, account, admin, API all agree
  • Every debit, credit, refund, gift, and hold is one ledger row
  • Race-free atomic updates — never two writes fighting for the same cell
  • Member self-serves their history; you stop being a human spreadsheet
  • Webhook fires so your analytics, CRM, accounting stay in sync
  • Full audit log records who did what, when, and why

// Signed, replayable, auditable

Every state change leaves a fingerprint.

[7f3a:2c]audit.signed· admin#414:22:17
[9e2b:af]backup.complete· daily03:00:01
[4c1d:01]reconcile.passed· drift=002:15:00
[2a8f:e3]webhook.delivered· 200 ok · 48ms14:21:09
[6d92:7b]license.activated· CK-2K7P-····13:55:42
[0fa1:55]fraud.cleared· admin#113:40:30
[3b14:9c]bundle.purchased· m#1043 · +25013:38:11
[8c47:1d]audit.signed· admin#213:32:08
[ee05:f0]refund.restored· order#3421 · +1813:24:55
[1742:6a]reconcile.passed· drift=001:15:00
[7f3a:2c]audit.signed· admin#414:22:17
[9e2b:af]backup.complete· daily03:00:01
[4c1d:01]reconcile.passed· drift=002:15:00
[2a8f:e3]webhook.delivered· 200 ok · 48ms14:21:09
[6d92:7b]license.activated· CK-2K7P-····13:55:42
[0fa1:55]fraud.cleared· admin#113:40:30
[3b14:9c]bundle.purchased· m#1043 · +25013:38:11
[8c47:1d]audit.signed· admin#213:32:08
[ee05:f0]refund.restored· order#3421 · +1813:24:55
[1742:6a]reconcile.passed· drift=001:15:00

Built for trust

Five-factor fraud scoring, three security presets.

The risk-scoring patterns banks use, presented as Low / Balanced / High presets a club treasurer or a shop owner can actually configure. Velocity, behavioural shifts, geographic spikes, account-age signals, and amount-vs-history feed one auto-suspendable risk score — same defence whether someone drains a wallet of festival tokens or store credit.

  • 5-factor fraud-risk scoring (0–100) with auto-block thresholds
  • Hourly / daily / weekly automatic backups
  • Balance reconciliation cron detects + auto-fixes drift
  • Full audit log of every transaction, every admin action
  • Trusted-proxy-aware IP detection
Security settings

For developers

REST API + signed webhooks.

Every action a member or admin can take is a REST call into your WooCommerce store. Every state change is a signed webhook. Wire CreditKit into your CRM, your booking system, your school’s SIS, your festival wristband vendor — without touching the database.

  • A documented REST API — credits, bundles, transactions, teams, badges
  • Signed webhook events with cryptographic signatures you can verify
  • 100 req/min per API key · 1000 req/hour
  • Per-user access checks on every endpoint
grant-credits.sh
# Grant 100 credits to user 42
$ curl -X POST "https://yoursite.com/wp-json/pcs/v1/credits/add" 
    -H "X-API-Key: $key" 
    -d "user_id=42&amount=100&reason=signup_bonus"
# Webhook fires immediately on your registered URL
 POST /your-webhook  HMAC-SHA256 in X-PCS-Signature
{
  "event": "credit.added",
  "user_id": 42,
  "amount": 100,
  "balance_after": 350,
  "reason": "signup_bonus"
}

FAQ

Common questions

What kinds of WooCommerce stores use CreditKit?

Shops, sports clubs, schools, festivals, coaching practices, subscription boxes, membership communities, co-working spaces — anywhere people earn or spend a unit of value on a WooCommerce site.

Can I use it for a sports club where credits = sessions, not money?

Yes. Credits are a unit you define. One credit can equal one padel hour, one swim entry, one drink token, or one euro of store credit — your call, per product.

Does it work for schools awarding behaviour points or library passes?

Yes. Teachers and admins can award credits manually via the admin or REST API, and members (students, parents) see their balance in their account dashboard.

Can I sell event tokens for a festival or pop-up?

Yes. Sell a bundle (10 drink tokens for $25), redeem at the bar via REST, refund leftover tokens automatically.

Does it work with WooCommerce HPOS?

Yes. CreditKit Pro declares HPOS compatibility and reads/writes orders through the WC abstraction.

Does CreditKit Pro work with any WordPress theme?

Yes. CreditKit Pro is a standard WordPress plugin and works with any WooCommerce-compatible theme — Storefront, Astra, Blocksy, GeneratePress, and block themes. No theme lock-in.

Multi-site, currencies, free trial?

Pro tier covers 5 sites, Agency unlimited. Currency-agnostic internally. No free trial — 30-day no-questions refund instead.

Start running your WooCommerce store on credits today.

Shop, club, school, or something nobody has built yet — set up in under 10 minutes. 30-day refund. No card details held.