Permissions

Overview

After you’ve created a Clover app, you can define the permissions you need from merchants. Set the read and write permissions under Edit App in the Developer Dashboard.

App Permissions
Permissions options in App Settings.

When a merchant installs your app, he or she approves the permissions your app is requesting. You should only request the permissions your app needs.

CUSTOMERS_R

CUSTOMERS_R is required to read customer data.

Sample REST API Calls

HTTP method Endpoint Description
GET /v3/merchants/{mId}/customers Returns a list of customer summaries
GET /v3/merchants/{mId}/customers/{customerId} Returns a Customer object

CUSTOMERS_W

CUSTOMERS_W is required to add and update customer data.

Sample REST API Calls

HTTP method Endpoint Description
POST /v3/merchants/{mId}/customers/{customerId} Updates a customer
DELETE /v3/merchants/{mId}/customers/{customerId}/phone_numbers/{phoneId} Deletes a customer’s phone number

EMPLOYEES_R

EMPLOYEES_R is required to read employees. If you want to see who created an order, you’ll need this permission.

Sample REST API Calls

HTTP method Endpoint Description
GET /v3/merchants/{mId}/employees Lists all employees
GET /v3/merchants/{mId}/employees/{empId}/shifts Gets all shifts for an employee

EMPLOYEES_W

EMPLOYEES_W is required to add and update employees.

Sample REST API Calls

HTTP method Endpoint Description
POST /v3/merchants/{mId}/employees/{empId}/shifts Creates a shift for an employee
DELETE /v3/merchants/{mId}/employees/{empId} Deletes an employee

INVENTORY_R

INVENTORY_R is required to read inventory.

Sample REST API Calls

HTTP method Endpoint Description
GET /v3/merchants/{mId}/inventory/items Lists all items in the merchant’s inventory
GET /v3/merchants/{mId}/inventory/categories Lists all categories and the number of items in each category
GET /v3/merchants/{mId}/inventory/discounts Returns a list of custom discounts
GET /v3/merchants/{mId}/inventory/modifiers/groups Lists all modifier groups

INVENTORY_W

INVENTORY_W is required to add and update inventory.

Sample REST API Calls

HTTP method Endpoint Description
POST /v3/merchants/{mId}/items Adds an item to the inventory
POST /v3/merchants/{mId}/inventory/items/{itemId} Updates an item
DELETE /v3/merchants/{mId}/categories/{categoryId} Deletes a category

MERCHANT_R

MERCHANT_R is required to read merchant properties. If you want to see basic information about a merchant, you’ll need this permission.

Sample REST API Calls

HTTP method Endpoint Description
GET /v3/merchants/{mId}/tip_suggestions Gets all tip suggestions for a merchant
GET /v3/merchants/{mId}/address Gets a merchant’s address

MERCHANT_W

MERCHANT_W is required to update merchant properties.

Sample REST API Calls

HTTP method Endpoint Description
DELETE /v3/merchants/{mId}/order_types/{orderTypeId} Deletes an order type
POST /v3/merchants/{mId}/properties Updates a merchant’s settings

ORDERS_R

ORDERS_R is required to read orders.

Sample REST API Calls

HTTP method Endpoint Description
GET /v3/merchants/{mId}/orders Returns a list of orders
GET /v3/merchants/{mId}/orders/{orderId}?expand=customers Gets the customer(s) for an order

ORDERS_W

ORDERS_W is required to add and update orders.

Sample REST API Calls

HTTP method Endpoint Description
POST /v3/merchants/{mId}/orders/{orderId}/line_items Adds a new line item to orders
POST /v3/merchants/{mId}/orders/{orderId} Gets the customer(s) for an order

PAYMENTS_R

PAYMENTS_R is required to read payments.

Sample REST API Calls

HTTP method Endpoint Description
GET /v3/merchants/{mId}/orders/{orderId}/payments Gets the summary of the payments made for an order
GET /v3/merchants/{mId}/payments/{paymentId} Returns a single Payment object

PAYMENTS_W

PAYMENTS_W is required to add and update payment records.

Sample REST API Calls

HTTP method Endpoint Description
POST /v3/merchants/{mId}/orders/{orderId}/payments Adds payment data to an order

PROCESS_CARD

PROCESS_CARD is required to process credit card payments.

Sample REST API Calls

HTTP method Endpoint Description
POST /v2/merchant/{mId}/pay Processes a credit card payment (see Developer Pay API for more information)