Wiki
Clone wikiOCAPI / nl_customergroupController
Customergroup Controller
Alle klantaccounts worden in OpenCart ingedeeld in klantgroepen. Een klantgroep bepaalt wat voor prijs / korting er voor een product wordt berekend. OpenCart bevat per product een matrix met daarin voor iedere klantgroep een nettoprijs. Zie voor meer informatie nl_productController.
dgeDetailhandel / dgeGroothandel bevat een grote variëteit aan prijs- en kortingssystemen. Deze verschillende systemen worden (om compatibel te blijven met OpenCart en andere webshops) door dgeDetailhandel / dgeGroothandel vertaald naar een vereenvoudigde klantgroep / product matrix. dgeDetailhandel / dgeGroothandel maakt hiervoor zo optimaal mogelijk klantgroepen aan zodat klanten met dezelfde kortingsinstellingen in dezelfde klantengroep worden ingedeeld. Dit voorkomt het onnodig (dubbel) moeten uploaden van nettoprijzen.
De standaard klantengroep is “DEFAULT DGE”. Deze klantengroep heeft geen kortingen.
De klantgroepen worden als volgt samengesteld:
- Als de klant één of meerdere actieve netto prijsafspraken heeft dan wordt de naam van de klantgroep: R-NPA-<dge relatienummer>
- Als de klant eigen (afwijkende) kortingen heeft in de kortingsmatrix dan wordt de naam van de klantgroep: R-MAT-<dge relatienummer>
- In alle andere gevallen, wordt de naam van de klantgroep: KLGR_<id_matrixkortingsgroep>KORTPERC_<perc_klantenkorting>INKOPSL_<perc_inkoopopslag>
Methods gebruikt door dgeDetailhandel / dgeGroothandel
POST 1 insert
HEADERS
POST /ocapi/customergroup/ HTTP/1.1 x-auth-token: 1616279bab60275aca56fca86f80e56c x-service-token: 555c7f149178099205edcc30 Content-Type: application/xml Content-Length: 289 Host: jd.windev.nl Connection: close
Content
<?xml version="1.0" encoding="UTF-8"?> <customergroup> <customer_group_description> <nl> <name>KLGR_0+KORTPERC_16+INKOPSL_0</name> <description>KLGR_0+KORTPERC_16+INKOPSL_0</description> </nl> </customer_group_description> <approval>0</approval> </customergroup>
Tags
De volgende tags worden door dgeDetailhandel / dgeGroothandel gebruikt.
niveau | tag | formaat | aanwezig | omschrijving |
---|---|---|---|---|
1 | <customergroup> | [1..1] | ||
2 | .<customer_group_description> | [1..1] | ||
3 | ..<nl> | [1..1] | ||
4 | ...<name> | Tekst(100) | [1..1] | De door dgeDetailhandel / dgeGroothandel toegekende naam van de klantengroep. |
4 | ...<description> | Tekst(100) | [1..1] | De door dgeDetailhandel / dgeGroothandel toegekende naam van de klantengroep. |
2 | .<approval> | Boolean | [1..1] | Vaste waarde "0" |
RESPONSE
HEADERS
HTTP/1.1 200 Ok Date: Wed, 20 May 2015 13:58:01 GMT Content-Type: application/xml Server: Apache/2.2.15 (CentOS) X-Powered-By: OC Dge Driver (v2) Transfer-Encoding: chunked Connection: close
Content
<?xml version="1.0" encoding="UTF-8"?> <response> <customergroup> <status>ok</status> <customer_group_id>75</customer_group_id> </customergroup> </response>
Tags
De volgende tags worden door dgeDetailhandel / dgeGroothandel gebruikt.
niveau | tag | formaat | aanwezig | omschrijving |
---|---|---|---|---|
top | <response> | [1..1] | ||
1 | <customergroup> | [1..1] | ||
2 | .<customer_group_id> | Numeriek(9) | [1..1] | OpenCart Customergroup ID. Dit ID wordt in dgeDetailhandel / dgeGroothandel bewaard en gebruikt voor een toekomstig update of delete. |
TESTPLAN
De volgende handelingen kunnen in dgeDetailhandel / dgeGroothandel worden uitgevoerd om de communicatie te testen:
POST 2 upsert
HEADERS
OST /oc2/ocapi/customergroup/75.xml HTTP/1.1 x-auth-token: e3a6a1fc0bf3e1f0c5dcb801caca5fb3 x-service-token: 555c7f149178099205edcc30 Content-Type: application/xml Content-Length: 181 Host: jd.windev.nl
CONTENT
<?xml version="1.0" encoding="UTF-8"?> <customergroup> <customer_group_description> <nl> <name>KLGR_0+KORTPERC_16+INKOPSL_0</name> <description>KLGR_0+KORTPERC_16+INKOPSL_0</description> </nl> </customer_group_description> <approval>0</approval> </customergroup>
Tags
De volgende tags worden door dgeDetailhandel / dgeGroothandel gebruikt.
niveau | tag | formaat | aanwezig | omschrijving |
---|---|---|---|---|
1 | <customergroup> | [1..1] | ||
2 | .<customer_group_description> | [1..1] | ||
3 | ..<nl> | [1..1] | ||
4 | ...<name> | Tekst(100) | [1..1] | De door dgeDetailhandel / dgeGroothandel toegekende naam van de klantengroep. |
4 | ...<description> | Tekst(100) | [1..1] | De door dgeDetailhandel / dgeGroothandel toegekende naam van de klantengroep. |
2 | .<approval> | Boolean | [1..1] | Vaste waarde "0" |
RESPONSE
HEADERS
HTTP/1.1 200 Ok Date: Wed, 20 May 2015 13:58:01 GMT Content-Type: application/xml Server: Apache/2.2.15 (CentOS) X-Powered-By: OC Dge Driver (v2) Transfer-Encoding: chunked Connection: close
Content
<?xml version="1.0" encoding="UTF-8"?> <response> <customergroup> <status>ok</status> <customer_group_id>75</customer_group_id> </customergroup> </response>
Tags
De volgende tags worden door dgeDetailhandel / dgeGroothandel gebruikt.
niveau | tag | formaat | aanwezig | omschrijving |
---|---|---|---|---|
top | <response> | [1..1] | ||
1 | <customergroup> | [1..1] | ||
2 | .<customer_group_id> | Numeriek(9) | [1..1] | OpenCart Customergroup ID. Dit ID wordt in dgeDetailhandel / dgeGroothandel bewaard en gebruikt voor een toekomstig update of delete. |
DELETE
HEADERS
GET /oc2/ocapi/customer/delete/357.xml HTTP/1.1 x-auth-token: e3a6a1fc0bf3e1f0c5dcb801caca5fb3 x-service-token: 555c7f149178099205edcc30 Host: jd.windev.nl Connection: close
RESPONSE
HEADERS
HTTP/1.1 200 Ok Date: Fri, 22 May 2015 06:55:05 GMT Server: Apache/2.2.15 (CentOS) X-Powered-By: OC Dge Driver (v2) Transfer-Encoding: chunked Content-Type: application/xml; charset=utf-8
CONTENT
<?xml version="1.0" encoding="UTF-8"?> <response> <customergroup> <status>deleted</status> <customer_group_id>357</customer_group_id> </customergroup> </response>
TESTPLAN
De volgende handelingen kunnen in dgeDetailhandel / dgeGroothandel worden uitgevoerd om de communicatie te testen:
Overige methods
De onderstaande methods worden niet door dgeDetailhandel / dgeGroothandel gebruikt en hoeven dus niet te worden geïmplementeerd.
REQUEST GET details 404
HEADERS
GET /oc2/ocapi/customergroup/357.xml HTTP/1.1 x-auth-token: e3a6a1fc0bf3e1f0c5dcb801caca5fb3 x-service-token: 555c7f149178099205edcc30 Host: jd.windev.nl
RESPONSE
HEADERS
HTTP/1.1 404 Not found Date: Fri, 22 May 2015 06:55:05 GMT Server: Apache/2.2.15 (CentOS) X-Powered-By: OC Dge Driver (v2) Transfer-Encoding: chunked Content-Type: application/xml; charset=utf-8
CONTENT
<?xml version="1.0" encoding="UTF-8"?> <response> <error> <ERRNO>E404</ERRNO> <message>Not found what i'm looking for</message> <description></description> </error> </response>
REQUEST GET details 404
HEADERS
GET /oc2/ocapi/customergroup/357.xml HTTP/1.1 x-auth-token: e3a6a1fc0bf3e1f0c5dcb801caca5fb3 x-service-token: 555c7f149178099205edcc30 Host: jd.windev.nl
RESPONSE
HEADERS
HTTP/1.1 404 Not found Date: Fri, 22 May 2015 06:55:05 GMT Server: Apache/2.2.15 (CentOS) X-Powered-By: OC Dge Driver (v2) Transfer-Encoding: chunked Content-Type: application/xml; charset=utf-8
CONTENT
<?xml version="1.0" encoding="UTF-8"?> <response> <error> <ERRNO>E404</ERRNO> <message>Not found what i'm looking for</message> <description></description> </error> </response>
GET LIST
HEADERS
GET /oc2/ocapi/ccustomergroup.xml?start=0&limit=5 HTTP/1.1 x-auth-token: e3a6a1fc0bf3e1f0c5dcb801caca5fb3 x-service-token: 555c7f149178099205edcc30 Host: jd.windev.nl
RESPONSE
HEADERS
HTTP/1.1 200 OK Date: Fri, 22 May 2015 06:55:05 GMT Server: Apache/2.2.15 (CentOS) X-Powered-By: OC Dge Driver (v2) Transfer-Encoding: chunked Content-Type: application/xml; charset=utf-8
CONTENT
<?xml version="1.0" encoding="UTF-8"?> <response> <customergroup> <customer_group_id>1</customer_group_id> <approval>0</approval> <sort_order>1</sort_order> <language_id>2</language_id> <name>Default</name> <description>test</description> </customergroup> <customergroup> <customer_group_id>4</customer_group_id> <approval>0</approval> <sort_order>0</sort_order> <language_id>2</language_id> <name>DEFAULT DGE</name> <description>DEFAULT DGE</description> </customergroup> <customergroup> <customer_group_id>3</customer_group_id> <approval>0</approval> <sort_order>0</sort_order> <language_id>2</language_id> <name>KLGR_0+KORTPERC_10+INKOPSL_0</name> <description>KLGR_0+KORTPERC_10+INKOPSL_0</description> </customergroup> <customergroup> <customer_group_id>2</customer_group_id> <approval>0</approval> <sort_order>0</sort_order> <language_id>2</language_id> <name>KLGR_0+KORTPERC_20+INKOPSL_0</name> <description>KLGR_0+KORTPERC_20+INKOPSL_0</description> </customergroup> <customergroup> <customer_group_id>5</customer_group_id> <approval>0</approval> <sort_order>0</sort_order> <language_id>2</language_id> <name>R-NPA-100004</name> <description>R-NPA-100004</description> </customergroup> </response>
Updated