SCIM automates user and group management in Poka by connecting your Identity Provider (IdP) directly to the platform. Once configured, your IdP becomes the source of truth — creating, updating, and deactivating users and groups automatically.
This setup requires collaboration between your Poka Global Administrator and your IT team. We recommend reading through the full article before starting.
SCIM provisioning is only available with an eligible subscription. Check with your Poka representative to confirm availability.
Only Global Administrators can activate and manage SCIM in Poka.
Key Behaviors
SCIM-managed and locally managed users can coexist.
Existing users matched by
usernameduring sync are converted to SCIM-managed.New users are created if no match is found.
Fields managed by SCIM and become not editable in Poka:
Username
First Name
Last Name
Email Address
Required uniqueness across all accounts:
Username
Email
Employee Number
SCIM provisioning is a one-way sync — changes made in Poka do not sync back to your IdP.
Step 1 — Poka Admin: Generate Your SCIM Credentials
The Poka Admin completes this step first and passes the credentials to IT.
Go to Admin Panel > Security > Identity Providers > User Provisioning
Select a Default Home Plant — this is assigned to new users when no Home Plant is specified during provisioning
Click Generate Token and copy to a secure location
Note the SCIM API URL
Pass both the SCIM API URL and SCIM Authentication Token to your IT team to proceed with Step 2.
Note: The SCIM Authentication Token cannot be used with other Poka API endpoints. If you delete the token, SCIM is instantly disabled. To re-enable, generate a new token and update your IdP.
IP & Geo Access
If your Poka instance has IP/Geo restrictions enabled, you must allow access for the SCIM token.
Go to Admin Panel > Security > IP/Geo Access Rules in Poka
Create a rule with no restrictions (0.0.0.0) and assign it to the SCIM Token user
Consult your IdP documentation for the specific IP ranges your Entra instance uses if you prefer a more restrictive rule.
Step 2 — IT: Configure Entra ID (Azure AD)
Initial Setup
In Entra ID, create a new enterprise application (or reusing the existing one from SSO if that's already configured)
Navigate to Manage > Provisioning
Set Provisioning Mode to Automatic
Under Admin Credentials, enter:
- Tenant URL: paste the SCIM API URL provided by the Poka Admin
- Secret Token: paste the SCIM Authentication Token provided by the Poka AdminClick Test Connection to verify, then click Save
Field Mappings
Next you'll configure which Entra attributes map to Poka user fields.
Navigate to Mappings and open the User mappings.
Configure the following fields:
customappsso (Poka) | Entra ID Attribute | Type | Matching |
|
| Direct | Yes |
| see below* | Expression |
|
|
| Direct |
|
|
| Direct |
|
|
| Direct |
|
|
| Direct | Yes |
|
| Direct |
|
* Switch([IsSoftDeleted], , "False", "True", "True", "False")
Mapping Home Plant (Recommended)
This tells Poka which plant to assign each user to during provisioning. Before proceeding, confirm which Entra attribute contains a plant identifier for each user. This may be a custom extension attribute (e.g., extension_xxxx_PlantID). If this attribute doesn't exist yet, work with your Entra administrator to create and populate it before continuing.
To add the home plant mapping:
In the User mappings screen, click Add New Mapping
Set Mapping Type to Expression
In the Expression field, enter:
Append("external|", [your-plant-attribute])Set Target Attribute to
urn....:Poka:2.0:User:homePlantIdSet Apply this mapping to Always
Click OK
Important: The value produced by this expression must exactly match an External ID configured for each plant in Poka. For example, if your Entra attribute contains NEW_YORK, the expression produces external|NEW_YORK — and NEW_YORK must be set as the External ID for that plant under Admin Panel > Structure > Plants in Poka.
Group Mappings
Navigate to Mappings and open the Group mappings. Configure the following:
Poka Field | Entra ID Attribute | Type |
|
| Direct |
|
| Direct |
Tip: Avoid assigning a group as both an App Assignment Group and a Push Group — this can cause sync issues.
Activating Provisioning
Click Start Provisioning to activate
Use Provision on Demand to test individual users before your full sync runs
Step 2 (Alternative) — IT: Configure Okta
Initial Setup
In Okta, navigate to your Poka SSO Application
Go to the Provisioning tab
Click Configure API Integration and enable it
Enter the following:
SCIM Base URL: paste the SCIM API URL provided by the Poka Admin
Unique Identifier:
userNameAuthentication Mode: HTTP Header
Authorization: paste the SCIM Authentication Token provided by the Poka Admin
Click Test Connector Configuration to verify
Confirm the following features are detected:
Feature | Status |
Create Users | ✅ Enabled |
Update User Attributes | ✅ Enabled |
Push Groups | ✅ Enabled |
Deactivate Users | ✅ Enabled |
Click Save.
Provisioning Operations
Under the Provisioning tab, go to To App settings and enable:
✅ Create Users
✅ Update User Attributes
✅ Deactivate Users
Do not enable:
❌ Import New Users and Profile Updates
❌ Import Groups
Field Mappings
Navigate to the Attribute Mappings section and configure the following:
Poka Field | Okta Attribute | Type |
|
| Direct |
|
| Direct |
|
| Direct |
|
| Direct |
|
| Direct |
| see below | Expression |
Mapping Home Plant (Recommended)
As with Entra, the source attribute must exist in your Okta user schema before completing this step. This is typically a custom attribute holding a plant identifier per user.
In the Attribute Mappings screen, locate or add the
homePlantIdfieldSet the mapping to an Expression using:
Append("external|", user.homePlant)Replace user.homePlant with whichever Okta attribute holds your plant identifier
Set Apply on to Create and Update
Important: The same rule applies as in Entra — the value produced must exactly match the External ID configured for the plant in Poka under Admin Panel > Structure > Plants.
Group Mappings
Under the Push Groups tab, add the groups you want to sync to Poka
Okta will push group names and memberships to Poka automatically
Note: Unlike Entra ID, Okta does not support SCIM-based user deletion. Deactivating a user in Okta will deactivate them in Poka, but will not delete them from the platform.
Tip: Avoid assigning a group as both an App Assignment Group and a Push Group — this can cause sync issues.
Activating Provisioning
Once mappings are configured, assign users or groups to the application in Okta to trigger provisioning.
Use Provision on Demand in Okta to test individual user syncs before rolling out to your full user base.
Troubleshooting
Users are not being assigned to the correct Home Plant
Check your Entra Provisioning Logs (Entra > Enterprise Application > Provisioning > Provisioning Logs) to see exactly what value is being pushed for
homePlantIdand confirm that the value matches the external ID set for the plant in Poka under Admin Panel > Structure > PlantsConfirm that the source attribute in Entra is populated for all affected users — empty values will cause users to fall back to the Default Home Plant
"Access from your GEO / IP address is not allowed" error
Your SCIM token is being blocked by IP/Geo access rules — see the IP & Geo Access section above
Users are not being created
Verify the SCIM API URL and Authentication Token were entered correctly in your IdP, and that the SCIM provisioning status in Poka is active (token has not been deleted)
Check your Entra Provisioning Logs (Entra > Enterprise Application > Provisioning > Provisioning Logs) to see exactly what value is being pushed for
homePlantIdand confirm that the value matches an external ID set for the plant in Poka under Admin Panel > Structure > Plants. Incorrect values forhomePlantIdwill result in a SCIM provisioning error.Check your Entra Provisioning Logs (Entra > Enterprise Application > Provisioning > Provisioning Logs) to see if there's an error such as "an employee with this number already exists". Search for that value among existing Poka profiles in Admin Panel > Users. Use the filters to adjust Account Status to All Users. If an existing profile is found with that value, remove it from their account so SCIM can use it to provision the new user.







