Skip to content

FluentCart REST API

Complete REST API reference for FluentCart and FluentCart Pro. This documentation covers 367+ endpoints organized by module, with full parameter details, response examples, and authentication guides.

Getting Started

Base URL: https://your-site.com/wp-json/fluent-cart/v2

All admin endpoints require authentication. Public and customer portal endpoints have different authentication requirements as noted in each module.

Authentication

Admin API — Use WordPress Application Passwords (HTTP Basic Auth):

  1. Go to WordPress DashboardUsersYour Profile
  2. Scroll to Application Passwords section
  3. Create a new application password
  4. Use the credentials with every request:
bash
curl -X GET "https://your-site.com/wp-json/fluent-cart/v2/orders" \
  -u "username:application_password"

Customer Portal API — Uses WordPress cookie-based authentication with nonce verification:

bash
curl -X GET "https://your-site.com/wp-json/fluent-cart/v2/customer-profile/" \
  -H "X-WP-Nonce: <nonce>" \
  --cookie "wordpress_logged_in_xxx=..."

Public API — No authentication required.

Conventions

  • All monetary values are in cents (e.g., $10.00 = 1000). Use integer arithmetic.
  • All timestamps are in UTC/GMT.
  • Pagination uses page and per_page parameters (default: per_page=10).
  • Responses use standard HTTP status codes (200, 400, 403, 404, 422).
  • The REST namespace is fluent-cart/v2.

API Modules

Core Resources

ModuleEndpointsDescription
Orders22Order CRUD, payments, refunds, shipping, fulfillment, notes, transactions
Products59Product CRUD, variations, attributes, downloadables, pricing, bundles
Customers18Customer CRUD, addresses, WordPress user association, notes
Coupons12Coupon CRUD, validation, usage tracking
Subscriptions17Subscription lifecycle, billing, cancellations, payment method management

Configuration

ModuleEndpointsDescription
Tax26Tax classes, rates, EU VAT, configuration
Shipping15Shipping zones, methods, classes
Settings30Store settings, payment methods, modules, storage, permissions, checkout fields
Email Notifications11Email template management, previews, test sending

Analytics & Content

ModuleEndpointsDescription
Reports45Revenue, orders, sales, refunds, subscriptions, dashboards, retention
Integrations17Add-ons, global feeds, product integration feeds
Files5File uploads, storage management, editor uploads
Labels & Attributes13Product labels, attribute groups, attribute terms
Dashboard20Dashboard stats, onboarding, activity log, print templates, widgets

Storefront & Checkout

ModuleEndpointsDescription
Public Shop3Public product listing, search, server-rendered views
Checkout7Order placement, payment processing, shipping methods, country info
Customer Profile21Customer portal — orders, downloads, addresses, profile management

Pro Features

ModuleEndpointsDescription
Licensing24License management, activations, public license API, WordPress update API
Roles & Permissions7FluentCart role assignment and management
Order Bumps5Order bump CRUD with display conditions

Permission System

FluentCart uses a policy-based authorization system with 32 granular permissions across 4 built-in roles:

RoleDescription
super_adminFull access to all features
managerManage orders, customers, products, and settings
workerDay-to-day operations — orders, customers, products
accountantRead-only access to orders, customers, and reports

Each endpoint documents its required permission (e.g., orders/view, products/edit, store/sensitive).

Error Handling

All error responses follow a consistent format:

json
{
  "message": "Error description",
  "errors": {
    "field_name": ["Validation error message"]
  }
}
Status CodeMeaning
200Success
400Bad Request — validation failed or invalid parameters
403Forbidden — insufficient permissions
404Not Found — resource does not exist
422Unprocessable Entity — business logic error
429Too Many Requests — rate limited

FluentCart developer documentation