Ga naar de hoofdinhoud
Versie: 1.x

Endpoint-toegang per rol

Deze pagina documenteert welke WCPOS REST-endpoints toegankelijk zijn voor elk van de drie standaardrollen die in POS-workflows worden gebruikt:

  • administrator
  • shop_manager
  • cashier

Voor configuratie van rollen en capabilities gericht op gebruikers, zie Toegang tot de POS.

Samenvatting

Het standaard toegangsmodel is:

  • administrator — volledige POS- en beheertoegang.
  • shop_manager — volledige POS- en beheertoegang, behalve plug-in-uitbreidingsacties die capabilities voor plug-in-installatie vereisen.
  • cashier — toegang tot de normale POS-verkoopworkflow, maar geen toegang tot beheer, instellingen, logs of winkelbeheer.

De endpoint-matrix wordt geverifieerd door integratietests die hetzelfde authenticatiepad doorlopen als de POS-app (WCPOS bearer-toegangstokens, niet alleen wp_set_current_user()). Asserties voor toegestane endpoints bevestigen dat een rol geen 401 of 403 ontvangt. Sommige endpoints kunnen nog steeds normale gegevens of bedrijfsfouten zoals 400 of 404 retourneren wanneer de test minimale fixtures gebruikt — die responses bewijzen nog steeds dat de gebruiker de auth-/permissielaag is gepasseerd.

Endpoint-toegangsmatrix gratis plug-in

GebiedEndpoint-voorbeeldenAdminShop ManagerCashierOpmerkingen
InstellingenindexGET /wcpos/v1/settingsOpenbare/leesbare POS-instellingenindex
StoresGET /wcpos/v1/storesPOS-bootgegevens
KassiersprofielGET /wcpos/v1/cashier/{id}Eigen kassiersgegevens
KassierswinkelsGET /wcpos/v1/cashier/{id}/storesWinkeltoegang voor huidige kassier
ProductenGET /wcpos/v1/productsCatalogus bladeren
VariatiesGET /wcpos/v1/products/variationsCatalogus bladeren
CategorieënGET /wcpos/v1/products/categoriesCatalogusfilters
TagsGET /wcpos/v1/products/tagsCatalogusfilters
BrandsGET /wcpos/v1/products/brandsCatalogusfilters
CouponsGET /wcpos/v1/couponsPOS-couponopzoeking
Bestellingen lezenGET /wcpos/v1/ordersPOS-bestelgeschiedenis
Bestellingen aanmakenPOST /wcpos/v1/ordersVerkoopworkflow
Bestellingen bijwerkenPATCH /wcpos/v1/orders/{id}POS-bestellingen voltooien/bijwerken
Checkout lezen/aanmaken/wcpos/v1/orders/{id}/checkoutBetalingsflow
BonnenGET /wcpos/v1/receipts/{order_id}Bonweergave
BestelstatussenGET /wcpos/v1/data/order_statusesPOS-statusgegevens
Klanten lezenGET /wcpos/v1/customersKlanten zoeken/weergeven
Klanten aanmakenPOST /wcpos/v1/customersKlant aanmaken in POS
Klanten bijwerkenPATCH /wcpos/v1/customers/{id}Klant bewerken in POS
BelastingenGET /wcpos/v1/taxesGegevens voor checkout-/belastingberekening
BelastingklassenGET /wcpos/v1/taxes/classesGegevens voor checkout-/belastingberekening
VerzendmethodenGET /wcpos/v1/shipping_methodsCheckout-/verzendgegevens
BetaalgatewaysGET /wcpos/v1/payment-gatewaysBetalingsopties
Gateway-bootstrapPOST /wcpos/v1/payment-gateways/{id}/bootstrapBetalingsconfiguratie
SjablonenGET /wcpos/v1/templatesBon-/sjabloonleesacties
Actief sjabloonGET /wcpos/v1/templates/activeBon-/sjabloonleesacties
SjabloongalerijGET /wcpos/v1/templates/gallerySjabloonleesacties
Algemene instellingenGET /wcpos/v1/settings/generalAlleen-beheer
Checkout-instellingenGET /wcpos/v1/settings/checkoutAlleen-beheer
Belasting-ID-instellingenGET /wcpos/v1/settings/tax_idsAlleen-beheer
Instellingen betaalgatewaysGET /wcpos/v1/settings/payment-gatewaysAlleen-beheer
Uitbreidingencatalogus/-beheerGET /wcpos/v1/extensionsAlleen-beheer
LogsGET /wcpos/v1/logsAlleen-beheer

Endpoint-toegangsmatrix Pro-plug-in

GebiedEndpoint-voorbeeldenAdminShop ManagerCashierOpmerkingen
WinkelbewerkingsgegevensGET /wcpos/v1/stores/{id}/editWinkelbeheer
Winkel aanmakenPOST /wcpos/v1/storesWinkelbeheer
Winkel bijwerkenPATCH /wcpos/v1/stores/{id}Winkelbeheer
Licentie-instellingen bijwerkenPOST /wcpos/v1/settings/licensePro-beheer
UitbreidingsactiesPOST /wcpos/v1/extensions/actionVereist capability voor plug-in installeren/beheren
BestelrestitutiesPOST /wcpos/v1/orders/{id}/refundsBehandeld als POS-bewerking

Dekking tokenverloop

ScenarioAdminShop ManagerCashierVerwacht resultaat
Geldig toegangstoken✅ getest✅ getest✅ getestToegestane endpoints retourneren geen 401 of 403
Verlopen toegangstoken✅ getest✅ getest✅ getestVerzoek faalt bij de WCPOS-auth-gate met gebruiker 0
Geldig vernieuwingstoken na verlopen toegang✅ getest✅ getest✅ getestEr wordt een nieuw toegangstoken uitgegeven en de toegang wordt hersteld
Verlopen vernieuwingstoken✅ getest✅ getest✅ getestKan geen nieuw toegangstoken aanmaken

Fouten diagnosticeren

Als een standaard shop_manager een fout ziet zoals:

Request still unauthorized after token refresh - please log in again

Geeft de endpoint-matrix aan dat dit niet komt doordat de standaard shop_manager-rol fundamenteel geen POS-toegang heeft. Waarschijnlijke oorzaken om te onderzoeken:

  1. Sitespecifieke corruptie van rollen/capabilities.
  2. Een endpoint dat niet door de matrix wordt gedekt.
  3. Verouderd of verlopen retry-gedrag voor toegangstokens in de client.
  4. Verstoring door een beveiligings- of authenticatieplug-in van een derde partij.
  5. Pro- of winkelspecifieke toegangsregels, of aangepaste code.

Permissiefout vs. tokenfout

De POS-frontend kan dezelfde token-refresh-fout weergeven voor beide gevallen, nadat hij een 401 of 403 ontvangt, een token-refresh probeert en de retry nog steeds niet geautoriseerd is. De twee soorten fouten zien er aan de serverkant anders uit:

Een echte rol-/capabilityfout ziet er meestal zo uit:

status: 403
current_user: <actual user id>
access token expired: false

Een token-/authfout ziet er meestal zo uit:

status: 403
current_user: 0
access token expired: true or invalid

Gebruik dit onderscheid bij het triëren van POS-toegangsproblemen — een current_user die niet nul is wijst op capabilities, terwijl current_user: 0 op de auth-/tokenlaag wijst.