Skip to content

E-Commerce · Beta

Clover
API integration

Ship E-Commerce features without building the integration. Full Clover API access via Proxy and 270+ MCP-ready tools for AI agents — extend models and mappings to fit your product.

Built for specific customer use cases. Issues are resolved quickly.

Talk to us
Clover

Use Cases

Why integrate with Clover

Common scenarios for SaaS companies building Clover integrations for their customers.

01

Sync online menus with in-store POS catalogs

Online ordering and delivery aggregator platforms can pull Clover items, categories, modifier groups, and tax rates to build accurate digital menus, then inject remote orders back into the POS so kitchens fire tickets automatically.

02

Automate payroll from POS shift data

Payroll and workforce management tools can read Clover employees, roles, and employee shifts (with clock-in/out and cash tips) to calculate hours, overtime, and tip payouts without manual entry.

03

Reconcile sales and cash into accounting ledgers

Bookkeeping platforms can pull Clover orders, order payments, refunds, and cash events nightly to generate journal entries for sales, tax collected, tips, and cash drawer movements.

04

Keep omnichannel inventory in perfect sync

E-commerce platforms can listen for Clover item stock changes and push updates back with bulk item and stock endpoints, preventing oversells between the register and the online storefront.

05

Trigger loyalty and marketing on real purchase history

CRM and loyalty tools can pull Clover customers and line-item level order data to segment shoppers by what they actually bought in-store and trigger personalized campaigns.

What You Can Build

Ship these features with Truto + Clover

Concrete product features your team can ship faster by leveraging Truto’s Clover integration instead of building from scratch.

01

Atomic order injection

Push fully-formed orders — including line items, modifiers, discounts, and service charges — into a merchant's Clover POS with a single call using the atomic order endpoint.

02

Bi-directional catalog sync

Sync items, categories, modifier groups, tags, and tax rates in both directions using bulk create/update endpoints for fast merchant onboarding and ongoing menu changes.

03

Real-time stock management

Read and write item stock levels per merchant so your app can decrement Clover inventory on online sales and reflect in-store sales in your product instantly.

04

Employee time & tips export

Pull employee shifts, roles, and cash events to power payroll runs, labor cost dashboards, and tip declaration workflows.

05

Hosted checkout and card-on-file billing

Spin up Clover hosted checkout sessions, create e-commerce charges, and store e-commerce customers with saved payment sources for recurring billing on the merchant's Clover account.

06

Customer 360 with purchase history

Sync Clover customers along with their addresses, phones, emails, cards, and associated orders to build rich customer profiles inside your CRM or loyalty app.

SuperAI

Clover AI agent tools

Comprehensive AI agent toolset with fine-grained control. Integrates with MCP clients like Cursor and Claude, or frameworks like LangChain.

get_single_clover_merchant_by_id

Get a single Clover merchant by id. Returns: id, name, reseller_id, owner, address. Required: id.

update_a_clover_merchant_by_id

Update a Clover merchant by id. Returns the updated merchant including id, name, reseller_id, owner, and address. Required: id, name, owner.

list_all_clover_devices

List all devices provisioned to a Clover merchant. Returns device records including id, name, serial, model, deviceTypeName, and orderPrefix. Required: m_id.

get_single_clover_device_by_id

Get a single device provisioned to a Clover merchant by id. Returns the device object including id, name, serial, model, deviceTypeName, and merchant. Required: id, m_id.

list_all_clover_sync

Get a sync token for a Clover merchant data table (deprecated). Returns a sync token; the response body shape is undocumented by the API and cannot be enumerated. Required: m_id, table.

list_all_clover_items

List inventory items for a Clover merchant, up to 1000 per page. Returns: isAgeRestricted, ageRestrictedType, minimumAge. Required: m_id.

create_a_clover_item

Create an inventory item for a Clover merchant. Returns the created item including id, name, price, priceType, available, and modifiedTime. Required: m_id, name, price.

get_single_clover_item_by_id

Get a single inventory item for a Clover merchant. Returns: id, hidden, available, autoManage, itemGroup, options, name, alternateName, code, sku, price, priceType, defaultTaxRates, unitName, cost, isRevenue, stockCount, taxRates, modifierGroups, categories, tags, canonical, itemStock, MenuItem, modifiedTime, and 3 more. Required: m_id, id.

update_a_clover_item_by_id

Update an inventory item in Clover. Returns the updated item object including id, name, price, priceType, hidden, and available, plus expandable relations (categories, tags, taxRates, modifierGroups, itemStock). Required: id, m_id. Cannot update stock quantity — use the Update item stock endpoint for that.

delete_a_clover_item_by_id

Delete an inventory item in Clover by id. Returns an empty 200 response on success. Required: id, m_id.

clover_items_bulk_update

Update existing inventory items in bulk for a Clover merchant, applying only the changes in the payload without replacing existing items. Returns the updated items with their id, name, price, priceType, available, itemStock, and modifiedTime. Required: m_id, items.

clover_items_bulk_create

Create multiple inventory items, each requiring name and price, in a single request for a Clover merchant. Returns the created items with their id, name, price, priceType, available, itemStock, and modifiedTime. Required: m_id, items.

clover_items_bulk_delete

Delete multiple inventory items in a Clover merchant by id. Returns an empty 204 response on success. Required: m_id.

get_single_clover_item_stock_by_id

Get the stock of a single Clover inventory item. Returns: item, stockCount, quantity, stockAlertThreshold, modifiedTime. Required: m_id and id.

update_a_clover_item_stock_by_id

Update the stock of a Clover inventory item. Returns the updated stock with item, quantity, stockAlertThreshold, and modifiedTime. Required: m_id and id.

delete_a_clover_item_stock_by_id

Delete the stock of a Clover inventory item. Returns an empty 204 response on success. Required: m_id and id.

create_a_clover_item_stock

Create a stock count for a single Clover inventory item. Returns: item, stockCount, quantity, stockAlertThreshold, modifiedTime. Required: m_id, item_id, and quantity.

list_all_clover_item_stocks

List the stock of all inventory items for a Clover merchant. Returns item stock records with item, quantity, stockAlertThreshold, and modifiedTime. Required: m_id.

create_a_clover_item_group

Create a Clover item group used to manage large groups of related items sold as variations (items with variants). Returns: id, name, attributes. Required: m_id, name.

get_single_clover_item_group_by_id

Get a single Clover item group by id. Returns: id, name, items, attributes. Required: m_id, id.

update_a_clover_item_group_by_id

Update a Clover item group by id. Returns: id, name, attributes. Required: m_id, id, name.

delete_a_clover_item_group_by_id

Delete a Clover item group by id. Returns an empty 200 response on success. Required: m_id, id.

list_all_clover_item_groups

List the item groups of a Clover merchant, which group related items sold as variations (e.g. T-shirts by size and color). Returns: id, name, attributes. Required: m_id. Max 1000 per page.

list_all_clover_tags

List all tags (item labels) for a Clover merchant; tags track items in reports or act as printer labels. Returns: id, name, showInReporting, printers. Required: m_id. Max 1000 per page.

create_a_clover_tag

Create a new tag for a Clover merchant. Returns the created tag object including id, name, showInReporting, and its associated items and printers. Required: m_id, name.

get_single_clover_tag_by_id

Get a single tag by id for a Clover merchant. Returns: id, name, showInReporting, items, printers. Required: m_id, id.

update_a_clover_tag_by_id

Update a single tag by id for a Clover merchant. Returns the updated tag including id, name, showInReporting, items, and printers. Required: m_id, id, name.

delete_a_clover_tag_by_id

Delete a tag by id from a Clover merchant. Returns an empty 204 response on success. Required: m_id, id.

clover_tags_bulk_delete

Delete multiple tags for a Clover merchant in a single request, specifying the tags to remove via a comma-separated list of one or more tag ids (e.g. tagId1,tagId2,tagId3). Returns an empty 200 response on success. Required: m_id.

list_all_clover_tag_items

List the inventory items associated with a tag for a Clover merchant, one item per record. Returns: tag, item. Required: m_id.

create_a_clover_tag_item

Create or delete tag-to-item associations for a Clover merchant by posting an array of item/tag pairs. Returns: tag, item. Required: m_id.

list_all_clover_tax_rates

List all tax rates for a Clover merchant. Returns: id, name, taxType, rate, isDefault, taxAmount, deletedTime, modifiedTime. Required: m_id. Max 1000 per page.

create_a_clover_tax_rate

Create a tax rate for a Clover merchant. Returns the created tax rate object including id, name, rate, taxType, isDefault, and taxAmount. Required: m_id, name.

get_single_clover_tax_rate_by_id

Get a single tax rate for a Clover merchant by id. Returns: id, name, taxType, rate, isDefault, items, taxAmount, deletedTime, modifiedTime. Required: id, m_id.

update_a_clover_tax_rate_by_id

Update a single tax rate for a Clover merchant by id. Returns the updated tax rate object including id, name, rate, taxType, and isDefault. Required: id, m_id, name.

delete_a_clover_tax_rate_by_id

Delete a single tax rate from a Clover merchant by id. Returns an empty 204 response on success. Required: id and m_id.

create_a_clover_tax_rate_item

Create or delete the association between items and tax rates for a Clover merchant. Returns the association object including the full item (id, name, price) and tax rate (id, name, rate) records. Required: m_id, elements. Set delete to true in the query to remove an association.

list_all_clover_categories

List all Clover categories for a merchant, displayed in the Register app in sort order. Returns: id, name, sortOrder, colorCode, deleted, modifiedTime, canonical. Required: m_id.

create_a_clover_category

Create an item category in Clover for a merchant. Returns the created category object including id, name, sortOrder, colorCode, and items. Required: m_id, name

get_single_clover_category_by_id

Get a single Clover category by id for a merchant. Returns the category object including id, name, sortOrder, colorCode, and items. Required: id, m_id

update_a_clover_category_by_id

Update a Clover item category by id. Returns the updated category object including id, name, sortOrder, colorCode, and items. Required: id, m_id, and name.

delete_a_clover_category_by_id

Delete a single Clover item category by id. Returns an empty 204 response on success. Required: id and m_id.

clover_categories_bulk_update_sort_orders

Bulk update the menu display order of up to 1000 categories for a Clover merchant in a single request. Returns an empty 200 response on success. Required: m_id. Body takes a categorySortOrders list of category id and sortOrder pairs.

clover_categories_bulk_delete

Delete multiple Clover categories in a single request. Returns an empty 200 response on success. Required: m_id.

create_a_clover_category_item

Create or delete a category-item association in Clover. Returns the association: item (id, name, price, sku) and category (id, name, sortOrder). Required: m_id, elements. Moving an item to a subcategory requires two requests: delete=true on the parent, then delete=false on the subcategory.

list_all_clover_modifier_groups

List all modifier groups for a Clover merchant. Returns: id, name, alternateName, minRequired, maxAllowed, showByDefault, modifiers, modifierIds, sortOrder. Required: m_id. Supports field filtering via filter and expanding modifiers or items via expand.

create_a_clover_modifier_group

Create a modifier group in Clover for a merchant. Returns the created modifier group with id, name, minRequired, maxAllowed, and nested modifiers. Required: m_id, name. Associate modifiers with the group afterwards via the create modifiers endpoint.

get_single_clover_modifier_group_by_id

Get a single Clover modifier group by its UUID. Returns: id, name, alternateName, minRequired, maxAllowed, showByDefault, modifiers, modifierIds, items, sortOrder. Required: m_id, id.

update_a_clover_modifier_group_by_id

Update a Clover modifier group by id. Returns the updated modifier group with id, name, minRequired, maxAllowed, nested modifiers, and sortOrder. Required: m_id, id. To add modifiers to the group, use the create modifiers endpoint.

delete_a_clover_modifier_group_by_id

Delete a Clover modifier group by id; all modifiers within the group are deleted as well. Returns an empty 204 response on success. Required: m_id, id.

clover_modifier_groups_bulk_delete

Delete multiple modifier groups in a single request in Clover. Returns an empty 204 response on success. Required: m_id.

create_a_clover_item_modifier_group

Create or delete the association between an inventory item and a modifier group in Clover. Returns the associated inventory item (id, name, price, priceType) and its modifierGroups (id, name, minRequired, modifiers). Required: m_id.

list_all_clover_modifiers

List all modifiers from every modifier group in a Clover merchant. Returns: id, name, alternateName, available, price, modifierGroup. Required: m_id. Max 1000 per page.

create_a_clover_modifier

Create a modifier in a Clover merchant's modifier group. Returns the created modifier including id, name, alternateName, available, price, and modifierGroup. Required: m_id, mod_group_id.

get_single_clover_modifier_by_id

Get a single modifier by its UUID within a Clover modifier group. Returns: id, name, alternateName, available, price, modifierGroup. Required: id, m_id, mod_group_id.

update_a_clover_modifier_by_id

Update a single Clover modifier by id; a modifier cannot be moved to a different group after creation. Returns: id, name, alternateName, available, price, modifierGroup. Required: id, m_id, mod_group_id.

delete_a_clover_modifier_by_id

Delete a single modifier by its UUID from a Clover modifier group. Returns an empty 204 response on success. Required: id, m_id, mod_group_id.

list_all_clover_attributes

List all inventory attributes for a Clover merchant, such as size and color of a t-shirt. Returns: id, name, itemGroup, options. Required: m_id.

create_a_clover_attribute

Create an inventory attribute for a Clover merchant. Returns the created attribute including id, name, itemGroup, and its options. Required: m_id, name, itemGroup.

get_single_clover_attribute_by_id

Get a single inventory attribute by id for a Clover merchant. Returns: id, name, itemGroup, options. Required: m_id, id.

update_a_clover_attribute_by_id

Update a single inventory attribute by id for a Clover merchant. Returns the updated attribute including id, name, itemGroup, and its options. Required: m_id, id, name, itemGroup.

delete_a_clover_attribute_by_id

Delete a single inventory attribute by id for a Clover merchant. Returns an empty 204 response on success. Required: m_id and id.

list_all_clover_options

List all item variant options for a Clover merchant. Returns each option's id, name, attribute, and associated items. Required: m_id.

update_a_clover_option_by_id

Update an option by id under an attribute of a Clover merchant. Returns the updated option with id, name, attribute, and items. Required: m_id, attribute_id, id, and name.

delete_a_clover_option_by_id

Delete an option by id under an attribute of a Clover merchant. Returns an empty response on success. Required: id, m_id, attribute_id.

create_a_clover_option

Create an option under an attribute of a Clover merchant. Returns the created option with id, name, attribute, and items. Required: m_id, attribute_id, and name.

get_single_clover_option_by_id

Get a single option by id for an attribute of a Clover merchant. Returns: id, name, attribute, items. Required: id, m_id, attribute_id.

create_a_clover_option_item

Create or delete item/option associations for a Clover merchant's inventory. Returns the association reference containing option and item, each with its id. Required: m_id.

list_all_clover_discounts

List Clover discounts for a merchant's inventory. Returns: id, name, amount, percentage, discount, approver. Required: m_id. Max 1000 per page.

create_a_clover_discount

Create a discount in a Clover merchant's inventory. Returns the created discount object including id, name, amount, percentage, discount, and approver. Required: m_id, name.

get_single_clover_discount_by_id

Get a single Clover discount by id. Returns: id, discount, approver, name, amount, percentage. Required: m_id, id.

update_a_clover_discount_by_id

Update a Clover discount by id. Returns the updated discount object including id, name, amount, percentage, discount, and approver. Required: m_id, id, name.

delete_a_clover_discount_by_id

Delete a Clover discount by id. Returns an empty 204 response on success. Required: m_id, id.

list_all_clover_tax_rules

List all tax exemption rules for a Clover merchant — rules that link order types to items in an order to exclude certain tax rates from those items. Returns: id, name, merchant. Required: m_id.

get_single_clover_tax_rule_by_id

Get an individual tax exemption rule by id for a Clover merchant. Returns: id, name, merchant, orderType, rates, items, createdTime, modifiedTime, deletedTime. Required: id, m_id.

list_all_clover_employees

List all employees associated with a Clover merchant. Returns: id, name, nickname, customId, email, inviteSent, claimedTime, deletedTime, pin, unhashedPin, role, roles, isOwner, shifts, payments, orders, employeeCards, merchant. Required: m_id.

create_a_clover_employee

Create an employee for a Clover merchant. Returns the created employee including id, name, nickname, email, role, and merchant. Required: m_id, name.

get_single_clover_employee_by_id

Get a single Clover employee by id. Returns the full employee record including id, name, nickname, email, role, pin, and merchant. Required: id, m_id.

update_a_clover_employee_by_id

Update a single Clover employee by id. Returns the updated employee including id, name, nickname, email, role, and merchant. Required: id, m_id, name.

delete_a_clover_employee_by_id

Delete a single Clover employee by id; the merchant's 'owner' employee cannot be deleted. Returns an empty 204 response on success. Required: id, m_id.

list_all_clover_roles

List all system and employee roles for a Clover merchant's business. Returns: id, name, systemRole, employeesRef, merchant. Required: m_id. Max 1000 per page.

create_a_clover_role

Create a role for a Clover merchant. Returns: id, name, systemRole, employeesRef, merchant. Required: m_id, name, systemRole.

get_single_clover_role_by_id

Get a single role for a Clover merchant by id. Returns: id, name, systemRole, employeesRef, merchant. Required: m_id, id.

update_a_clover_role_by_id

Update a single role for a Clover merchant by id. Returns: id, name, systemRole, employeesRef, merchant. Required: m_id, id, name, systemRole.

delete_a_clover_role_by_id

Delete a role for a Clover merchant by id. Required: id and m_id. Returns an empty 204 response on success.

delete_a_clover_tender_by_id

Delete an existing tender for a Clover merchant. Returns an empty 204 response on success. Required: m_id, id.

list_all_clover_customers

List all customers of a Clover merchant. Returns customer records including id, firstName, lastName, marketingAllowed, customerSince, and contact details (addresses, emailAddresses, phoneNumbers) plus cards and metadata. Required: m_id.

create_a_clover_customer

Create a customer record for a Clover merchant. Returns the created customer including id, firstName, lastName, customerSince, and metadata. Required: m_id.

get_single_clover_customer_by_id

Get a single customer of a Clover merchant by id. Returns the customer record including id, firstName, lastName, marketingAllowed, customerSince, and contact details (addresses, emailAddresses, phoneNumbers). Required: m_id, id.

update_a_clover_customer_by_id

Update a single customer of a Clover merchant by id, including the card associated with the customer. Returns the updated customer including id, firstName, lastName, customerSince, and metadata. Required: id, m_id.

delete_a_clover_customer_by_id

Delete a customer from a Clover merchant by id. Returns an empty 204 response on success. Required: m_id and id.

list_all_clover_shifts

List all shifts for a Clover merchant. Returns: id, employee, cashTipsCollected, serverBanking, inTime, overrideInTime, overrideInEmployee, outTime, overrideOutTime, overrideOutEmployee. Required: m_id. Supports filtering by employee, in/out times, and server_banking, and expanding the employee and override employee records.

get_single_clover_shift_by_id

Get a single shift by id for a Clover merchant. Returns: id, employee, cashTipsCollected, serverBanking, inTime, overrideInTime, overrideInEmployee, outTime, overrideOutTime, overrideOutEmployee. Required: id, m_id. Use expand to inline the employee and override employee records.

list_all_clover_cash_events

List all cash events recorded for a Clover merchant, such as drawer loads, transactions, opens, adjustments, counts, and unloads. Returns: amountChange, timestamp, note, employee, device, merchant. Required: m_id.

get_single_clover_order_by_id

Get a single Clover order by id. Returns the order object with id, currency, customers, and expandable lineItems, payments, discounts, and refunds. Required: m_id and id.

update_a_clover_order_by_id

Update a single Clover order by id. Returns the updated order object with id, currency, customers, and expandable lineItems, payments, and discounts. Required: m_id and id.

create_a_clover_order

Create a Clover order for a merchant. Returns the created order object with id, currency, customers, and expandable lineItems and payments. An order can have 25 items. Required: m_id.

clover_orders_bulk_create

Create multiple line items on a Clover order in a single request. Returns the created line items (elements) with id, name, and price. Max 100 line items per request; an order is limited to 2,500 line items. Required: m_id, order_id.

list_all_clover_orders

List a merchant's Clover orders, newest first. Returns order objects with id, currency, customers, and expandable lineItems and payments. Required: m_id. Filter by created, customer, ids, or status.

list_all_clover_refunds

List Clover refunds for a merchant, including associated taxes and tips, newest first; filter by charge or created time. Returns refund objects with id, amount, taxAmount, tipAmount, createdTime, and status. Required: m_id.

get_single_clover_refund_by_id

Get a single Clover refund by id for a merchant, including associated taxes and tips. Returns the refund with id, amount, taxAmount, tipAmount, createdTime, and status. Required: id, m_id.

create_a_clover_app_billing

Create a Clover app billing metered event, charging the merchant for each action taken on the app based on the app's metered pricing. Returns: id, appMetered, count, createdTime, modifiedTime, charge. Required: app_id, m_id, metered_id. Pass count as a query parameter to bill multiple events; it defaults to 1.

get_single_clover_app_billing_by_id

Get all billing events for a Clover app metered event type, such as reservation. Returns: id, appMetered, count, createdTime, modifiedTime, charge. Required: app_id, m_id, id.

create_a_clover_ecommerce_charge

Create a charge in Clover Ecommerce: charges a credit card or other payment source using the supplied charge payload. Returns the created charge object including id, amount, currency, status, and captured. Requires amount, currency, and source. Required: amount, currency, source.

get_single_clover_ecommerce_charge_by_id

Get a single Clover Ecommerce charge by id. Returns the charge details, including id, amount, currency, status, paid, and captured. Required: id.

list_all_clover_ecommerce_charges

List existing ecommerce charges in Clover, newest first, optionally filtered by customer, creation time, or 3-D Secure result. Returns: amount, tax_amount, tip_amount, additional_charges, amount_refunded, partial_auth, billing_details, captured, created, currency, customer, description, id, paid, receipt_url, status, and 30 more. Max 100 per page.

create_a_clover_ecommerce_refund

Create a refund in Clover against an existing charge. Returns: id, amount, additional_charges, created, currency, description, external_reference_id, failure_reason, charge, metadata, object, reason, receipt_number, status. Required: charge. Partial refunds are allowed up to the original charge amount.

list_all_clover_ecommerce_refunds

List refunds in Clover, newest first, with filters for a specific charge and creation-time ranges. Returns: id, charge, created, source.

get_single_clover_ecommerce_refund_by_id

Get a refund by id in Clover. Returns the refund's details, including its id, the associated charge, and creation time. Required: id.

create_a_clover_ecommerce_order

Create an ecommerce order in Clover. Returns the created order object including its id, created timestamp, currency, email, status, items, and shipping details. Required: currency, email. An order can have up to 25 items, and a shipping address is required if any item's SKU is shippable.

list_all_clover_ecommerce_orders

List a merchant's ecommerce orders in Clover, newest first. Returns: amount, amount_paid, amount_due, tax_amount, tax_amount_paid, tip_amount, partial_auth, additional_charges, threeds, gift_card, created, currency, email, id, items, shipping, status, status_transitions, and 23 more. Filterable by created time, customer, ids, and status.

get_single_clover_ecommerce_order_by_id

Get a single Clover Ecommerce order by its UUID. Returns the order object from the vendor's `order` schema; the field shape is defined by Clover's order object — use `expand` to include related objects in the response. Required: id.

create_a_clover_ecommerce_customer

Create a card-on-file (COF) customer in Clover Ecommerce to save payment sources for e-commerce transactions. Returns the created customer record including its id, email, default_source, and sources (saved card or ACH tokens). Required: email, source. Use the Clover Platform API customer endpoint when no card data should be saved.

create_a_clover_hosted_checkout

Create a hosted checkout session in Clover for a customer transaction. Returns the created checkout session object including its id and Clover-defined checkout-session fields (attributes). Required: shoppingCart.

get_single_clover_ecommerce_plan_by_id

Get a single Clover recurring payment plan by id. Returns: id, name, merchantId, taxRateUuids, tipAmount, amount, active, interval, intervalCount, productUuid, note, createdTime, modifiedTime, deletedTime, subscriptionCount, subscriptionPaidTotalAmount, lastRunDate, object. Required: id.

create_a_clover_ecommerce_plan

Create a Clover recurring payment plan customers can use to initiate automatic payments. Returns the created plan with id, name, amount, interval, intervalCount, and createdTime. Required: name, amount, interval, intervalCount.

delete_a_clover_ecommerce_plan_by_id

Delete a Clover recurring payment plan by id. Returns the deleted plan object with id, name, amount, active, and deletedTime. Required: id.

list_all_clover_ecommerce_plans

List Clover merchant recurring payment plans customers can use for automatic payments. Returns plan records with id, name, amount, interval, intervalCount, and active. Filterable by active, name, interval, and intervalCount.

update_a_clover_ecommerce_plan_by_id

Update a Clover recurring payment plan by id, including its amount, name, note, tax rates, tip amount, or active status. Returns the updated plan with id, name, amount, active, and modifiedTime. Required: id.

list_all_clover_api_keys

Retrieve the Clover Ecommerce API key (PAKMS key) associated with the merchant and developer app of your access token. Returns: active, apiAccessKey, createdTime, developerAppUuid, merchantUuid, tokenAssociationGroupUuid, modifiedTime.

list_all_clover_merchant_addresses

Get a merchant's address in Clover. Returns the address object with address1, address2, address3, city, state, zip, and country. Required: m_id.

list_all_clover_merchant_gateways

Get a Clover merchant's payment gateway configuration by merchant id. Returns: paymentProcessorName, authorizationFrontEnd, acquiringBackEnd, paymentGatewayApi, accountName, altMid, mid, fns, tid, storeId, supportsTipping, frontendMid, backendMid, mcc, tokenType, groupId, debitKeyCode, sredCode, closingTime, production, and 8 more. Required: m_id.

list_all_clover_merchant_properties

Get a Clover merchant's properties for a specific merchant by id. Returns the properties object including merchantRef, defaultCurrency, tipsEnabled, locale, timezone, orderTitle, autoPrint, and cashBackEnabled. Required: m_id.

update_a_clover_merchant_property_by_id

Update a Clover merchant's properties by merchant id. Returns the updated properties object including merchantRef, defaultCurrency, locale, timezone, and tipsEnabled. Required: m_id.

list_all_clover_merchant_service_charges

Get the default service charge configured for a Clover merchant. Returns: id, name, enabled, percentage, percentageDecimal, isAutoApplied. Required: m_id.

get_single_clover_tip_suggestion_by_id

Get a single tip suggestion for a Clover merchant by id. Returns: id, name, percentage, amount, isEnabled, flatTip. Required: id, m_id.

list_all_clover_tip_suggestions

List all tip suggestions configured for a Clover merchant, such as flat or percentage tips. Returns: id, name, percentage, amount, isEnabled, flatTip. Required: m_id. Max 1000 per page.

update_a_clover_tip_suggestion_by_id

Update a single tip suggestion for a Clover merchant by id, setting fields such as name, percentage, amount, isEnabled, or flatTip. Returns: id, name, percentage, amount, isEnabled, flatTip. Required: id, m_id.

create_a_clover_order_type

Create a new order type for a Clover merchant, such as delivery, pickup, or a custom type from the Clover Setup App. Returns the created order type including id, label, taxable, filterCategories, and hours. Required: m_id.

delete_a_clover_order_type_by_id

Delete a Clover merchant's order type by id. Returns an empty response on success. Required: m_id, id.

get_single_clover_order_type_by_id

Get a single order type for a Clover merchant by id. Returns: id, labelKey, label, taxable, isDefault, filterCategories, isHidden, fee, minOrderAmount, maxOrderAmount, maxRadius, avgOrderTime, hoursAvailable, customerIdMethod, isDeleted, systemOrderTypeId, hours, categories. Required: m_id, id.

list_all_clover_order_types

List all order types configured for a Clover merchant, including custom order types created in the Clover Setup App. Returns: id, labelKey, label, taxable, isDefault, filterCategories, isHidden, fee, avgOrderTime, hoursAvailable, customerIdMethod, isDeleted, systemOrderTypeId, hours, categories, and 3 more. Required: m_id. Max 1000 per page.

update_a_clover_order_type_by_id

Update an existing order type for a Clover merchant by id. Returns the updated order type including id, label, taxable, isDefault, and categories. Required: m_id, id.

list_all_clover_system_order_types

List the system order types configured for a Clover merchant — the functional categories (e.g. TAKE-OUT-TYPE) that custom order types can be associated with. Returns: id, labelKey, isQsr, isFsr, isRetail. Required: m_id.

create_a_clover_opening_hour

Create a set of opening hours for a Clover merchant. Returns the created hours object with id, name, reference, and the sunday–saturday schedule arrays. Required: m_id. Each day interval requires start and end.

delete_a_clover_opening_hour_by_id

Delete a set of opening hours for a Clover merchant by id. Returns an empty response on success. Required: m_id, id.

get_single_clover_opening_hour_by_id

Get a specific set of opening hours for a Clover merchant by id. Returns the hours object with id, name, reference, and the sunday–saturday schedule arrays. Required: m_id, id.

list_all_clover_opening_hours

List the opening hours sets of a Clover merchant. Returns each hours object with id, name, reference, and the sunday–saturday schedule arrays. Required: m_id.

update_a_clover_opening_hour_by_id

Update a set of opening hours for a Clover merchant by id. Returns the updated hours object with id, name, reference, and the sunday–saturday schedule arrays. Required: m_id, id.

create_a_clover_customer_phone_number

Create a phone number for a merchant's customer in Clover. Requires m_id, customer_id, and phoneNumber. Returns an empty 204 response on success. Required: m_id, customer_id, phoneNumber.

delete_a_clover_customer_phone_number_by_id

Delete a customer's phone number in Clover by id. Requires m_id, customer_id, and id. Returns an empty 204 response on success. Required: id, m_id, customer_id.

update_a_clover_customer_phone_number_by_id

Update a customer's phone number in Clover by id. Requires m_id, customer_id, id, and phoneNumber. Returns an empty 204 response on success. Required: id, m_id, customer_id, phoneNumber.

create_a_clover_customer_email_address

Create an email address for a customer of a Clover merchant. Email address domains and addresses are validated upstream. Required: m_id, customer_id, emailAddress.

delete_a_clover_customer_email_address_by_id

Delete a customer's email address in Clover by id. Required: id, m_id, customer_id.

update_a_clover_customer_email_address_by_id

Update a customer's email address in Clover by id. Required: m_id, customer_id, id, and emailAddress. Email address domains and addresses are validated upstream.

create_a_clover_customer_address

Create an address for a customer in Clover, with address1, address2, address3, city, country, state, and zip fields. Returns an empty 200 response on success. Required: m_id, customer_id.

delete_a_clover_customer_address_by_id

Delete a customer address in Clover. Returns an empty 200 response on success. Required: id, m_id, customer_id.

update_a_clover_customer_address_by_id

Update a customer address in Clover with address1, address2, address3, city, country, state, and zip fields. Returns an empty 200 response on success. Required: id, m_id, customer_id.

create_a_clover_customer_card

Create a credit/debit card entry for a Clover customer. Returns an empty 200 response on success. Required: m_id, customer_id, first6, last4.

delete_a_clover_customer_card_by_id

Delete a customer card from a Clover customer by id. Returns an empty 200 response on success. Required: id, m_id, customer_id.

update_a_clover_customer_card_by_id

Update a credit/debit card record for a Clover customer by id. Returns an empty 200 response on success. Required: m_id, customer_id, id, first6, last4.

create_a_clover_atomic_order

Create a complete Clover atomic order — line items, modifiers, discounts, and service charges — in a single API call. Returns the created order object including its id. Max 3,000 line items per order; exceeding the limit fails with a 400 error. Required: m_id.

list_all_clover_employee_cash_events

List all cash events for an employee in Clover. Returns each event's type, amountChange, timestamp, note, employee, device, and merchant. Required: m_id, emp_id.

create_a_clover_employee_shift

Create a shift for an employee in Clover, recording clock in/out times, overrides, and cash tips. Returns the created shift including id, employee, inTime, outTime, and cashTipsCollected. Required: m_id, emp_id.

get_single_clover_employee_shift_by_id

Get a single shift recorded for an employee in Clover by id. Returns the shift including id, employee, inTime, outTime, and cashTipsCollected. Required: id, m_id, emp_id.

list_all_clover_employee_shifts

List all shifts recorded for an employee in Clover. Returns shift records including id, employee, inTime, outTime, and cashTipsCollected. Required: m_id, emp_id.

list_all_clover_order_line_items

List all line items for an order in Clover. Returns each line item with id, name, price, unitQty, discounts, modifications, and taxRates. Required: m_id, order_id.

create_a_clover_order_line_item

Create a new line item on an order in Clover. Returns the created line item with id, name, price, unitQty, and discounts. The request must include a price or an inventory item id, and an order is limited to 2,500 line items. Required: m_id, order_id.

get_single_clover_order_line_item_by_id

Get a single line item on an order by id. Returns the full line item object with id, item, name, price, priceWithModifiers, discounts, modifications, and taxRates. Required: id, m_id, order_id.

update_a_clover_order_line_item_by_id

Update a line item on an order by id. Returns the updated line item with id, name, price, unitQty, discounts, and modifications. Required: id, m_id, order_id.

delete_a_clover_order_line_item_by_id

Delete (void) a line item from an order by id. Returns an empty 200 response on success. Required: id, m_id, order_id.

clover_order_line_items_bulk_delete

Delete all line items for an order in Clover. Returns an empty 200 response on success. Required: m_id, order_id.

create_a_clover_order_payment

Create a payment record on a Clover order. Requires a positive amount and a valid tender ID; intended for logging external tenders (not Clover credit/debit tenders). Returns the created payment object including id, amount, tipAmount, taxAmount, result, and cardTransaction. Required: m_id, order_id.

list_all_clover_order_payments

List all payments for a Clover order, including total amount, tip amount, tax amount, and result status. Returns each payment's id, amount, tipAmount, taxAmount, result, and cardTransaction. Required: m_id, order_id.

get_single_clover_print_event_by_id

Get a Clover print event by id for a merchant. Returns: id, orderRef, deviceRef, category, state, orderSnapshot, createdTime, modifiedTime, deletedTime, printTime. Required: m_id, id. Full event details return only while state is CREATED, PRINTING, or FAILED; successfully printed jobs are discarded and cannot be replayed.

create_a_clover_print_event

Submit a print request to a Clover merchant's default order printer. Returns the print event including id, orderRef, deviceRef, category, state, and printTime. Required: m_id.

list_all_clover_shift_exports

Download a CSV export of all shifts for a Clover merchant. Returns a raw CSV file download rather than JSON. Required: m_id.

list_all_clover_voided_line_item_totals

Get a summary of voided (deleted) line items and orders for a Clover merchant. Returns: printed, unprinted, price, priceWithQuantity, priceWithQuantityAndModifiers, deletedOrders, deletedItems, chartSummary. Required: m_id.

list_all_clover_attribute_options

List all options for an attribute in Clover. Required: m_id, attribute_id.

list_all_clover_categorized_items

List all items in a single Clover category. Returns items with their id, name, price, priceType, sku, code, and associated categories, tags, and tax rates. Required: m_id, cat_id.

list_all_clover_customer_exports

List every customer of a merchant in Clover as a CSV export, with optional filter and expand on customer fields. Returns each customer's id, firstName, lastName, emailAddresses, phoneNumbers, cards, addresses, and metadata. Required: m_id.

create_a_clover_customer_metadatum

Create or update the metadata (note, birthday, business name) for a Clover customer. Returns the saved metadata including note, businessName, dobYear, dobMonth, dobDay, modifiedTime, and the associated customer. Required: m_id, customer_id. Limits: businessName max 127 characters, note max 2000 characters.

list_all_clover_item_categories

List all categories of a single item in Clover. Max 1000 per page. Required: m_id, item_id.

list_all_clover_item_tags

List tags for a single item in Clover. Returns: id, name, showInReporting, printers. Required: m_id, item_id.

list_all_clover_items_without_revenue_class

List Clover inventory items that have no tag or revenue class for a merchant. Returns: id, name, alternateName, itemCode, sku, price, hidden, available, autoManage, defaultTaxRates, isRevenue, deleted, modifiedTime, tags, categories, taxRates, modifierGroups, itemStock, options. Required: m_id. Max 1000 per page.

list_all_clover_modifier_group_modifiers

List all modifiers in a single Clover modifier group. Required: m_id, mod_group_id.

create_a_clover_sub_category

Create a new subcategory within a parent category in Clover. Returns: id, name, sortOrder, colorCode, parentCategory, deleted. Required: m_id, category_id, name. The subcategory inherits the parent category's hex color code when no colorCode is defined.

update_a_clover_sub_category_by_id

Update an existing Clover subcategory by id — rename it or change its assigned color code. Returns: id, name, sortOrder, parentCategory, colorCode, deleted. Required: id, m_id, category_id.

list_all_clover_tagged_items

List the inventory items assigned to a tag in Clover. Returns: id, name, price, hidden, available, autoManage, alternateName, code, sku, priceType, defaultTaxRates, unitName, cost, isRevenue, stockCount, itemGroup, options, taxRates, modifierGroups, categories, tags, canonical, itemStock, modifiedTime, and 3 more. Required: m_id, tag_id.

list_all_clover_taxed_items

List Clover items associated with a specific tax rate. Returns: id, hidden, available, autoManage, itemGroup, options, name, alternateName, code, sku, price, priceType, defaultTaxRates, unitName, cost, isRevenue, stockCount, taxRates, modifierGroups, categories, tags, canonical, itemStock, modifiedTime, and 3 more. Required: m_id, tax_id.

create_a_clover_line_item_discount

Create a discount on a line item for an order in Clover. Returns an empty response on success. Required: m_id, order_id, line_item_id, name.

delete_a_clover_line_item_discount_by_id

Delete a discount from a line item on an order in Clover. Returns an empty response on success. Required: id, m_id, order_id, line_item_id.

create_a_clover_line_item_modification

Apply a modification to a line item on a Clover order, creating a record of a modifier as it exists when applied. Returns: id, name, alternateName, amount, modifier, quantitySold. Required: m_id, order_id, line_item_id.

delete_a_clover_line_item_modification_by_id

Remove a modification from a line item on a Clover order, deleting the record of an applied modifier by its UUID. Returns an empty 204 response on success. Required: m_id, order_id, line_item_id, id.

create_a_clover_order_service_charge

Apply a service charge to a Clover order, setting its name and percentageDecimal as needed for the order. Returns an empty 200 response on success. Required: m_id, order_id.

delete_a_clover_order_service_charge_by_id

Remove a service charge from a Clover order by id. Returns an empty 200 response on success. Required: id, m_id, order_id.

create_a_clover_order_voided_line_item

Create a list of voided line items for a Clover order, recording why each item was removed. Returns the created voided line item records including lineItem, reason, deleteType, removedBy, and clientEventType. Required: m_id, order_id.

create_a_clover_line_item_exchange

Create or exchange a line item on a Clover order, replacing the line item old_line_item_id with the line item identified by exchange_id. Returns the line item record: id, name, price, discounts, modifications, taxRates. Required: m_id, order_id, old_line_item_id, exchange_id.

list_all_clover_merchant_order_fees

List all service charges configured for a Clover merchant. Returns each order fee with id, name, amount, percentage, type, and serviceChargeUuid. Required: m_id.

get_single_clover_merchant_order_fee_by_id

Get a specific service charge configured for a Clover merchant by id. Returns: id, name, amount, percentage, createdTime, modifiedTime, deletedTime, type, serviceChargeUuid. Required: id, m_id.

list_all_clover_order_fee_line_items

List all service charges (order fee line items) applied to an order in Clover. Returns: id, item, colorCode. Required: m_id, order_id.

create_a_clover_order_fee_line_item

Create a service charge on an order in Clover. Returns the created fee line item record with id, item, and colorCode. Required: m_id, order_id.

get_single_clover_order_fee_line_item_by_id

Get a specific service charge (order fee line item) applied to a Clover order. Returns: id, item, colorCode, name, alternateName, price, priceWithModifiers, priceWithModifiersAndItemAndOrderDiscounts, unitQty, unitName, discounts, modifications, refund, taxRates, payments, percentage, orderFeeType, and 22 more. Required: id, m_id, order_id.

delete_a_clover_order_fee_line_item_by_id

Remove a service charge (order fee line item) from a Clover order. Returns an empty 200 response on success. Required: id, m_id, order_id.

create_a_clover_cashout

Request cashout of a Clover gift card's balance, removing the remaining balance from an active gift card account. Returns the cashed-out charge object's id. Required: source.

create_a_clover_charge_capture

Capture an existing uncaptured charge in Clover as step two of the two-part payment flow (the charge must have been created with capture set to false). Returns: amount, tax_amount, tip_amount, captured, id, and 41 more. Required: charge_id. Fails if the charge is already refunded, expired, or captured, or if an invalid capture amount is specified.

delete_a_clover_customer_source_by_id

Revoke a payment source (card or ACH token) from a Clover customer profile by its id. Returns: deleted, id, object. Required: id, customer_id.

delete_a_clover_metered_event_by_id

Delete an app billing metered event in Clover by id. Succeeds only if the event has not already been billed. Returns: id, appMetered, count, createdTime, modifiedTime, charge. Required: id, app_id, m_id, metered_id.

get_single_clover_metered_event_by_id

Get an app billing metered event in Clover by id. Retrieves the event details on a merchant's app billing metered event. Returns: id, appMetered, count, createdTime, modifiedTime, charge. Required: id, app_id, m_id, metered_id.

clover_modifier_group_layout_adds_bulk_update

Add one or more modifiers to a modifier group in Clover, replacing the group's layout with the modifier order you supply. Returns an empty response on success (200). Required: m_id, mod_group_id.

clover_modifier_group_layout_removes_bulk_update

Remove one or more modifiers from a Clover modifier group by keeping only the modifier ids supplied in the request body. Returns an empty 200 response on success. Required: m_id, mod_group_id.

create_a_clover_reload

Reload an active Clover gift card by adding an amount to its balance. Returns the resulting charge object for the reload, including its id. Required: source, amount, currency.

list_all_clover_modifier_group_items

List all items in a single Clover modifier group. Returns each inventory item with id, name, price, priceType, itemStock, plus related categories, tags, tax rates, and modifier groups. Default 100, max 1000 items per page. Required: m_id, mod_group_id.

list_all_clover_employee_payments

List all payments under a specific employee in Clover, including total amount, tip amount, tax amount, and result status. Required: m_id, emp_id.

create_a_clover_merchant_authorization

Create an authorization on a payment in Clover. Returns: id, payment, tabName, amount, cardType, last4, authcode, token, type, note, externalReferenceId, closingPayment, createdTime, additionalCharges, transactionSequenceCounter, acquirerTerminalId. The amount must be greater than 0. Required: m_id.

delete_a_clover_merchant_authorization_by_id

Delete an authorization for a payment in Clover by id. Returns an empty 200 response on success. Required: id, m_id.

get_single_clover_merchant_authorization_by_id

Get a single authorization by id for a Clover merchant. Returns: id, payment, tabName, amount, cardType, last4, authcode, token, type, note, externalReferenceId, closingPayment, createdTime, additionalCharges, transactionSequenceCounter, acquirerTerminalId. Required: id, m_id.

list_all_clover_merchant_authorizations

List all authorizations for a Clover merchant. An authorization is a card-issuer permission to charge a customer later, created via the Bar Tabs and Authorizations apps. Returns: id, payment, amount, last4, authcode, token, type, note. Required: m_id.

update_a_clover_merchant_authorization_by_id

Update an authorization for a Clover merchant by id; the payment amount must be greater than 0 and have a type. Returns: id, payment. Required: id, m_id.

get_single_clover_merchant_billing_info_by_id

Get a merchant's app billing information in Clover, including the current subscription tier and trial status. Returns: id, appSubscription, isInTrial, billable, appBillable, planBillable, appExportable, planExportable, billingStartTime, status, daysLapsed. Required: id, app_id.

get_single_clover_merchant_credit_refund_by_id

Get a single Clover credit refund by id for a specific merchant, including taxes and tips. Returns: id, orderRef, device, createdTime, clientCreatedTime, credit, employee, germanInfo, appTracking, transactionInfo. Supports expand for credit, germanInfo, appTracking, and transactionInfo. Required: id, m_id.

list_all_clover_merchant_credit_refunds

List Clover credit refunds associated with payments for a merchant, including taxes and tips. Returns: id, device, credit, employee. Supports expand for credit, germanInfo, appTracking, and transactionInfo. Required: m_id.

create_a_clover_merchant_payment

Update a Clover payment. Only lineItemPayments and employee.id (when the payment is a preauth with captured currently set to null) are processed — all other body properties are ignored. Returns the updated payment: id, amount, tipAmount, taxAmount, result. Required: m_id, payment_id.

get_single_clover_merchant_payment_by_id

Get a single Clover payment by id, including its total amount, tip amount, tax amount, and result status. Returns: id, order, device, tender, amount, tipAmount, taxAmount, cashbackAmount, cashTendered, externalPaymentId, employee, offline, result, attributes, refunds, note, authorization, merchant, increments, and 25 more. Required: id, m_id.

list_all_clover_merchant_payments

List all payments for a Clover merchant, each with its total amount, tip amount, tax amount, and result status. Returns: id, order, device, tender, amount, employee, offline, result, attributes, refunds, note, authorization, merchant, increments. Required: m_id.

create_a_clover_activate

Activate a physical or virtual gift card in Clover. Returns the activated gift card details as a charge object, including id, captured, and created. Required: source, amount, currency.

create_a_clover_balance_inquiry

Request the current balance on an active Clover gift card. Returns: status, gift_card. Required: source.

create_a_clover_card_read

Read a card's track data using a Clover device. Initiates a read card operation on the device and returns the card track data; the data is encrypted unless the card is not a financial card or its BIN has been allowlisted. Requires a JSON request body.

create_a_clover_card_token

Create a single-use or multi-pay card token in Clover for use with subsequent payments. Returns the created token object with fields defined by the Clover TokenResponse schema. Requires a JSON request body. Tokenization is not supported in Europe.

create_a_clover_credit_receipt

Deliver a credit receipt from a Clover device in the format specified in the request. Returns the delivery outcome from the Clover device; Clover's docs reference the response schema but do not enumerate its fields. Required: credit_id.

create_a_clover_credit

Create a credit on a Clover device — a refund that is not associated with an existing payment. Returns a Clover CreditResponse for the processed credit. Required: amount.

get_single_clover_credit_by_id

Get a single credit from Clover by id, specifying its Clover credit UUID. Returns a Clover CreditResponse for that credit. Required: id.

create_a_clover_ecom_order_pay

Pay for a Clover order by id, charging the payment source or attached customer. Returns the paid order object: id, amount, status, items, past_charges, and metadata. Required: order_id, customer.

create_a_clover_ecom_order_return

Create a return for a Clover ecommerce order, refunding selected order items or amounts against existing payment charges. Returns the created order return object: id plus Clover-defined order_return fields. Required: order_id. The order must be paid or fulfilled.

create_a_clover_ecom_payment

Create a payment in Clover E-commerce, starting the payment flow for the requested transaction type. Returns the payment object with its id once the payment completes.

get_single_clover_ecom_payment_by_id

Get a single Clover E-commerce payment by its Clover payment UUID. Returns the payment object including its id. Required: id.

clover_ecom_payments_void

Void a Clover E-commerce payment before it settles. Returns the payment object with its id. Clover may convert a void into a refund, and final payments cannot be voided more than 25 minutes after the payment. Required: payment_id, voidReason.

create_a_clover_ecommerce_subscription

Create a subscription under a plan in Clover Ecommerce, associating a customer with a plan and its billing details. Returns: object, id, customerUuid, collectionMethod, plan, merchantId, active, tipAmount, amount, startDate, endDate, note, lastRunDate, createdTime, modifiedTime, and 4 more. Required: plan_id, customerId, collectionMethod.

delete_a_clover_ecommerce_subscription_by_id

Delete a Clover Ecommerce subscription by id. Returns the deleted subscription with id, customerUuid, collectionMethod, active, amount, and plan. Required: id.

get_single_clover_ecommerce_subscription_by_id

Get a single Clover Ecommerce subscription by id. Returns: object, id, customerUuid, collectionMethod, plan, merchantId, active, tipAmount, amount, startDate, endDate, note, lastRunDate, createdTime, modifiedTime, deletedTime, softDescriptor, level2, taxRateUuids. Required: id.

list_all_clover_ecommerce_subscriptions

List all Clover Ecommerce subscriptions for a merchant, filterable by plan, customer, collection method, and start/end date ranges. Returns: object, id, customerUuid, collectionMethod, plan, merchantId, active, tipAmount, amount, startDate, endDate, note, lastRunDate, createdTime, modifiedTime, deletedTime, and 3 more. Max 100 per page.

update_a_clover_ecommerce_subscription_by_id

Update a Clover Ecommerce subscription by id, overriding plan values such as amount, tip, note, tax rates, and soft descriptor. Returns: object, id, customerUuid, collectionMethod, plan, merchantId, active, tipAmount, amount, startDate, endDate, note, lastRunDate, createdTime, modifiedTime, deletedTime, softDescriptor, and 2 more. Required: id.

create_a_clover_payment_capture

Capture a pre-auth payment in Clover by finishing a pre-auth transaction with the final amount. Returns Clover's CaptureResponse confirming the captured payment (field-level shape defined by the CaptureResponse schema). Required: payment_id, amount.

create_a_clover_payment_increment

Increment an authorization (pre-auth) in Clover: increase a transaction's authorized amount to verify the cardholder has sufficient funds for the purchase. Returns: authorization, paymentId. Required: payment_id, amount.

create_a_clover_payment_receipt

Deliver a payment receipt for a Clover payment in the format specified in the request. Returns: message, printJobId, printJobStatus. Required: payment_id.

create_a_clover_payment_refund

Refund a Clover payment, returning some or all of the payment amount to the cardholder. Returns the Clover RefundResponse object; the field set is defined by Clover's RefundResponse schema. Required: payment_id.

create_a_clover_payment_tip_adjust

Tip adjust an unclosed Clover payment: add a tipAmount or update an existing tip — tips are not additive, and the most recent amount is applied at closeout. Returns an opaque Clover TipAdjustResponse confirmation; its fields are not enumerated in the source spec. Required: payment_id, tipAmount.

get_single_clover_payments_external_by_id

Get a Clover payment by its externalPaymentId. Returns: payment. Required: id.

create_a_clover_refund_receipt

Deliver a refund receipt for a Clover refund in the format specified in the request. Returns the receipt delivery result (ReceiptDeliveryResponse); Clover's published documentation does not enumerate its fields. Required: refund_id.

create_a_clover_token

Create a gift card token in Clover to activate a physical gift card or to create and activate a virtual gift card with a promotional code. Returns: id, token, gift_card. Requires gift_card.number (6, 13, 16, or 19 digits).

create_a_clover_void_receipt

Deliver a void receipt for a Clover payment in the format specified in the request; PRINT is the only supported format at this time. Returns Clover's ReceiptDeliveryResponse confirming the delivery — the upstream reference does not enumerate its fields. Required: payment_id.

create_a_clover_atomic_order_checkout

Check out an atomic order in Clover by submitting an orderCart with line items, discounts, and modifications; Clover calculates the order totals, taxes, and service charges. Returns the orderCart object with id, currency, title, note, clientCreatedTime, serviceCharge, discounts, and lineItems. Required: m_id.

create_a_clover_cash_drawer_open

Open the cash drawer attached to a Clover device. Sends an open signal to the specified device and returns the device's response payload with device-specific fields indicating whether the drawer may have opened.

create_a_clover_custom_activity

Launch a previously installed custom activity on a Clover device. Returns a CustomActivityResponse with activity-specific fields; if blocking, waits until the activity completes, otherwise it runs until another foreground operation executes. Requires a JSON request body (CustomActivityRequest). Required: action.

create_a_clover_device_cancel

Send a cancel command from the POS software to stop in-flight operations on a Clover device. Returns an acknowledgement object confirming the cancel was received — not that it was processed successfully.

list_all_clover_device_cash_drawers

List the cash drawers discovered on a Clover device. Returns: id, name, number. An entry means the drawer is currently connected or an available hardware port allows one to be connected — local RJ12-type drawers may be listed even when not physically attached, while USB drawers only appear if connected at the time of the call.

list_all_clover_device_cash_events

List all cash events recorded for a specific device in Clover, such as drawer loads, transactions, and counts. Required: m_id, device_id.

create_a_clover_device_display

Display a text message on an idle Clover terminal by sending the text string to the device's display screen. Returns a JSON acknowledgement object confirming the text was shown to the customer. Required: text.

create_a_clover_device_display_order

Display an order screen on an idle Clover device terminal so the customer can review the purchase before a payment request starts. Values sent are shown as-is and are not used in calculations or order updates. Requires a JSON display-order request body (schema: DisplayOrderRequest). Returns a generic JSON confirmation object.

create_a_clover_device_notification

Push a notification message to a Clover device that has your app installed and is listening for notifications. Returns a success response with no documented body. The data payload is limited to 4000 characters. Required: app_id, device_id.

create_a_clover_device_ping

Ping a Clover device (POST) to verify that your app can connect to it; a 200 response means the device was successfully reached. Returns a connectivity confirmation body whose fields Clover's docs do not enumerate.

list_all_clover_device_pings

Verify connectivity to a Clover device with a GET ping; a 200 response means the device was successfully reached. Returns a connectivity confirmation body whose fields Clover's docs do not enumerate.

create_a_clover_device_printer

List the printers connected to a Clover device via the POST variant of the retrieve-printers endpoint. Returns: printers. Sends no request body.

list_all_clover_device_printers

List the printers connected to a Clover device. Returns: id, model, name.

create_a_clover_device_read_confirmation

Send a yes-no confirmation prompt to a Clover terminal and retrieve the customer's answer. Returns the confirmation result as a boolean (true = confirmed, false = declined). Requires a confirmation request body. Required: text.

create_a_clover_device_read_input

Get a text response from a Clover device by displaying a request for information to the customer; the request can also specify a data entry format to make it easier for the customer to provide their information. Returns a text response based on the customer's input. Required: format, text.

create_a_clover_device_read_signature

Capture a customer's signature by displaying the signature entry screen on a Clover device. Returns the captured signature image data in the requested format. Requires a JSON request body. Not needed for payment signatures — the screen appears automatically when merchant settings require one.

create_a_clover_device_read_tip

Display a tip selection prompt on a Clover device asking the customer to choose a tip amount or percentage. Returns the customer's selected tip as an integer (IntegerResponse). Requires a TipDisplayRequest request body.

create_a_clover_device_receipt_option

Display receipt options on a Clover device, presenting the customer with choices for their transaction receipt. Returns the customer's selection as a ReceiptOptionsResponse object; its field-level shape is defined by the vendor's ReceiptOptionsResponse schema. Send a JSON body matching the vendor's ReceiptOptionsRequest schema.

clover_device_resets_bulk_update

Reset a Clover device to its initial state, cancelling all in-flight commands from the POS software. Returns an opaque JSON acknowledgment confirming only that the reset request was received, not that the reset was processed successfully. Target the device with the deviceId query parameter.

create_a_clover_device_send_debug

Trigger a Clover device to send its debug logs to Clover's servers, logging your message to the device log so you can mark a specific event or sequence for troubleshooting. Returns an empty acknowledgement object on success — the server documents no response body fields. Required: message. Rate-limited to one successful request per device every 30…

list_all_clover_device_status

Get the current status of a Clover device. Returns the device's status payload with its status field, as defined by Clover's DeviceStatusResponse schema.

create_a_clover_device_thank_yous

Display a thank you screen on an idle Clover terminal. Returns a bare acknowledgement object with no enumerated fields; a 200 confirms the screen was shown to the customer. Takes no request body or query parameters.

create_a_clover_device_welcome

Display the welcome screen on an idle Clover device terminal. Returns a 200 acknowledgement with an unspecified JSON object body once the welcome screen is displayed to the customer; no query parameters or request body are required.

list_all_clover_employee_orders

List all orders taken by an employee at a Clover merchant. Returns order records including id, currency, total, paymentState, state, createdTime, and expandable lineItems, discounts, payments, and customers. Required: m_id, emp_id.

create_a_clover_merchant_notification

Create a notification for a Clover app, sending a message to a merchant device that has your app installed and is listening for notifications. The data payload is limited to 4000 characters and timeToLive defaults to 5 days; app is auto-populated by the server. Returns no response body on success. Required: app_id, m_id.

create_a_clover_order_type_category

Create or delete an association between an order type and a category for a Clover merchant. Returns: orderType, category. Required: m_id, orderType, category.

list_all_clover_payment_devices

List activated and associated Clover payment devices for the merchant. Returns: id, model, productName, serial.

create_a_clover_print_image

Send an image print job to a Clover device. Returns the device's print job response (PrintImageResponse). The request body is the image print job payload (PrintImageRequest); the device processes the print as a background operation with a 180s timeout.

get_single_clover_print_job_status_by_id

Get the status of a previously sent print job on a Clover device. Returns: printJobId, status. Required: id.

create_a_clover_print_text

Send a text print job to a Clover device by POSTing a PrintTextRequest JSON body. Returns the device's PrintTextResponse object with vendor-defined fields.

create_a_clover_modifier_group_sort_order

Update the sort-order priorities for a collection of up to 200 modifier groups at a time in Clover. Sends a modifierGroups array where each entry carries its id and sortOrder. Required: m_id. Returns an empty 200 response on success.

Why Truto

Why use Truto’s MCP server for Clover

Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 850+ integrations.

01

Auto-generated, always up to date

Tools are dynamically generated from curated documentation — not hand-coded. As integrations evolve, tools stay current without manual maintenance.

02

Fine-grained access control

Scope each MCP server to read-only, write-only, specific methods, or tagged tool groups. Expose only what your AI agent needs — nothing more.

03

Multi-tenant by design

Each MCP server is scoped to a single connected account with its own credentials. The URL itself is the auth token — no shared secrets, no credential leaking across tenants.

04

Works with every MCP client

Standard JSON-RPC 2.0 protocol. Paste the URL into Claude, ChatGPT, Cursor, or any MCP-compatible agent framework — tools are discovered automatically.

05

Built-in auth, rate limits, and error handling

Tool calls execute through Truto’s proxy layer with automatic OAuth refresh, rate-limit handling, and normalized error responses. No raw API plumbing in your agent.

06

Expiring and auditable servers

Create time-limited MCP servers for contractors or automated workflows. Optional dual-auth requires both the URL and a Truto API token for high-security environments.

For your product

Ship Clover tools in your product

Give the AI in your product access to each customer’s own Clover account, with one MCP server per connected account.

Rather talk it through? Book a demo

Elaichi

For your own team

Use Clover in ChatGPT or Claude yourself

Connect your company’s Clover once, then ask in the AI you already use, with exactly your own access.

From the team behind Truto · 14-day free trial

How It Works

From zero to integrated

Go live with Clover in under an hour. No boilerplate, no maintenance burden.

01

Link your customer’s Clover account

Use Truto’s frontend SDK to connect your customer’s Clover account. We handle all OAuth and API key flows — you don’t need to create the OAuth app.

02

We handle authentication

Don’t spend time refreshing access tokens or figuring out secure storage. We handle it and inject credentials into every API request.

03

Call our API, we call Clover

Truto’s Proxy API is a 1-to-1 mapping of the Clover API. You call us, we call Clover, and pass the response back in the same cycle.

04

Unified response format

Every response follows a single format across all integrations. We translate Clover’s pagination into unified cursor-based pagination. Data is always in the result attribute.

FAQs

Common questions about Clover on Truto

Authentication, rate limits, data freshness, and everything else you need to know before you integrate.

How does authentication work for Clover merchants?

Clover uses OAuth for merchant-authorized access, with each token scoped to a specific merchant ID. Truto handles the OAuth flow, token storage, and refresh so your end users just click 'Connect Clover' and your app receives a ready-to-use connection.

Which Clover objects can I read and write today?

Truto exposes tools across merchants, devices, catalog (items, categories, modifier groups, modifiers, tags, tax rates, discounts, attributes, options), inventory stock, employees, roles, shifts, cash events, customers (with addresses, phones, emails, cards), orders (including atomic orders), line items, payments, refunds, and e-commerce charges, refunds, orders, customers, and hosted checkout sessions.

Can I create orders with modifiers and discounts in a single call?

Yes. The atomic order endpoint accepts a fully composed order — line items, modifiers, discounts, and service charges — and creates it in Clover in one request, which is the recommended approach for online ordering and delivery use cases.

How do I handle high-volume catalog updates during onboarding?

Use the bulk endpoints for items (bulk create, update, delete), tags (bulk delete), categories (bulk update sort orders, bulk delete), and modifier groups (bulk update sort orders, bulk delete) to efficiently move large catalogs without hitting per-object rate limits.

How fresh is the data — does Truto support event-driven sync?

You can poll list endpoints (orders, items, item stocks, customers, shifts, cash events, etc.) on your own cadence, and Truto normalizes pagination so you can incrementally sync large datasets without writing Clover-specific logic.

Can my app accept payments through the merchant's Clover account?

Yes. You can create e-commerce charges, capture them, issue e-commerce refunds, and spin up hosted checkout sessions so payments settle to the same Clover merchant account used at the physical POS.

Is a Clover tool I need missing from the list?

Truto's Clover integration is actively expanded on request. If you need an endpoint or object that isn't listed, reach out and it can typically be added quickly since it plugs into the same connection and auth flow.

Clover

Get Clover integrated into your app

Our team understands what it takes to make a Clover integration successful. A short, crisp 30 minute call with folks who understand the problem.