---
schema_version: "1"
id: 4cbc1bf0c2e0fcff3b8762803c5ed1a4adcb7b537a9f8c0bf6e0d22b3afb7fe9
title: Employee Verification SPI
collection: developer
version: current
locale: en-us
portal_url: https://docs.salesforce.com/developer/current/en-us/commerce-cloud/retail-cloud/reference/generated-api-specs/employee-verification-spi.md
canonical_url: https://developer.salesforce.com/docs/commerce/retail-cloud/references/employee-verification-spi
source_site: developer.salesforce.com
content_type: documentation
content_hash: 35a6489499df32ac00fd78356125ff45bc32bec7d34fe6b2ae94e2a602a80efa
products:
  - Point of Sale for Developers
  - Salesforce APIs
---
Employee Verification SPI

# Employee Verification SPI

[Download specification](https://developer.salesforce.com/static/commercecloud/retail-cloud/employee-verification-spi/employee-verification-spi-oas-public.yaml)

Merchant SPI to implement and provide an endpoint for the POS. This endpoint must be configured in the POS system so that the POS can use it to verify employee status and details.

**Version:** 2.3.4

## Tags

### Employee Verification SPI

[Download specification](https://developer.salesforce.com/static/commercecloud/retail-cloud/employee-verification-spi/employee-verification-spi-oas-public.yaml)

Merchant SPI to implement and provide an endpoint for the POS. This endpoint must be configured in the POS system so that the POS can use it to verify employee status and details.

## Operations

### POST Verify employee.

`POST /merchant/spi/sample/endpoint/sa/employee/verification/to/verify/employee/from/external/system`

Operation ID: `verifyEmployee`. Tags: Employee Verification SPI.

Verify employee details from merchant's system based on provided input. Merchants must implement this endpoint per this specification and then configure it in CMS under **CMS** > **Store Management** > **Integration** > **Custom API Connectors** > **Create**. Make sure to create the endpoint in CMS with the following details:

1.  Under **API Config**:
    *   **API Key:** `VERIFY_EMPLOYEE`
    *   **API Endpoint:** Provide the external endpoint to verify employee, for example: [https://sample.com/external/endpoint/to/verify/employee/from/external/system](https://sample.com/external/endpoint/to/verify/employee/from/external/system)
2.  Under **JSON Config**:
    *   **Integration Type:** `HTTP_POST`
    *   **JSON Headers:** Provide the header for the API. Headers can be Content-Type, for example: {"contentType": "application/json"} **Response:** If response is NULL or empty, or has ErrorCode or ErrorMessage, employee verification fails. **Use Case:** If an employee makes the purchase, authenticate their details when they are added to the cart.

#### Request body

Media type: `application/json`. Schema: `EmployeeVerificationRequest`.

#### Responses

*   **default** Default response.
    
    Media type: `application/json`. Schema: `EmployeeVerificationResponse`.
    

## Schemas

### EmployeeVerificationRequest

*   `employeeId` (_string_, required) Identification of employee.  
    Maximum length: 128.
*   `firstName` (_string_, required) Employee's first name.  
    Maximum length: 128.
*   `lastName` (_string_, nullable) Employee's last name.  
    Maximum length: 128.
*   `email` (_string_, nullable) Employee's email.  
    Maximum length: 128.
*   `promotionIdList` (_array of string_, nullable) List of promotion IDs valid for the employee.
*   `merchantPromotionIdList` (_array of string_, nullable) List of merchant promotion IDs valid for the employee.
*   `approvingEntity` (_ApprovingEntity_)
*   `storeId` (_string_) Store ID provided for employee verification.
*   `associateId` (_string_) Associate ID provided for employee verification.

### EmployeeVerificationResponse

*   `errorMessage` (_string_, nullable) Error message shown to the user.  
    Example: `Invalid request. Please check the request and try again.`.
*   `errorCode` (_string_, nullable) Error code shown to the user.  
    Example: `INTERNAL_ERROR`.
*   `employeeId` (_string_) Identification of employee.
*   `firstName` (_string_) Employee's first name.
*   `lastName` (_string_) Employee's last name.
*   `email` (_string_) Employee's email.
*   `promotionIdList` (_array of string_, nullable) List of promotion IDs valid for the employee.
*   `merchantPromotionIdList` (_array of string_, nullable) List of merchant promotion IDs valid for the employee.
*   `error` (_boolean_)

### ApprovingEntity

Approving entity who provides approval to set the employee.

*   `approverId` (_string_, nullable) StoreAssociateId who provides approval for the request.
*   `role` (_string_, nullable) The associate's role in the store. It can be one of STORE\_ASSOCIATE, STORE\_MANAGER, or AREA\_MANAGER.