terawallet/v1 namespace. It powers the
plugin’s own React dashboard and admin screens, and is fully available to your own apps and
integrations.
The older
wc/v3/wallet/* routes still exist as a deprecated back-compatibility layer and
will be removed in a future major release. New integrations should target terawallet/v1.Base URL
Authentication
Endpoints are grouped by who may call them, and each group uses the matching auth method:
For external/server-to-server calls, generate keys under WooCommerce → Settings → Advanced →
REST API and send them as HTTP Basic Auth.
Idempotency
State-changing customer endpoints (POST me/topup, POST me/transfer) and admin bulk
operations honor an Idempotency-Key request header. Send a unique key (e.g. a UUID) per
logical action; a retry with the same key replays the original response instead of creating a
duplicate top-up, transfer, or credit. Keys are scoped per user with a 24-hour TTL.
Customer endpoints (me/*)
Get balance
amount is in the
active storefront currency, while base_* fields are always normalized to the shop base currency.
List transactions
Each row exposes a typed
category, one of: topup, cashback, cashback_adjustment,
cashback_refund, partial_payment, transfer, refund, adjustment, other.
Create a top-up
Transfer funds
recipient_id or
recipient_email.
The
recipients route returns a lookup list for an autocomplete picker (gated by a filter).
Other customer reads
Admin endpoints (admin/*)
Require the manage_woocommerce capability.
Transactions
page, per_page, orderby (id, transaction_id, date, amount,
currency, type, user_id), order, and type filters.
Create a manual credit or debit:
DELETE performs a soft delete by default; pass ?force=true for a permanent delete. The
bulk route accepts an action of credit, debit, or delete and is idempotent per user.
Users
Admin transfer
Settings & system endpoints
All responses are JSON. Send
Content-Type: application/json on requests with a body, and an
Idempotency-Key header on top-ups, transfers and bulk operations.Legacy namespace (deprecated)
Thewc/v3/wallet/* routes from earlier versions remain as thin proxies for back-compatibility
and emit the same row shapes as their terawallet/v1 equivalents. Do not build new
integrations against them — migrate to terawallet/v1.