Introduction

Create, update, and search customers in the loyalty engine.

Error Codes

The Skechers Web Service uses conventional HTTP response codes to indicate the success or failure of an API request. When a request is valid, but does not complete successfully (e.g. user not found), a response is given containing a specific error code and error message about the point of failure.

Response Parameters

  • errorCode: string

    An error code that can be referenced in the table to the right. Refer to this error code when identifying errors.
  • errorMessage: string

    A human-readable message providing more details about this error.

Codes

00001 Request Timeout.
00002 Invalid form data.
00004 Third party API is down.
01000 CRM Service is currently down.
01001 CRM Service timeout.
01002 Could not retrieve rewards for that CRM ID.
01003 Could not redeem rewards.
01004 Invalid CRM User data, CRM User not added.
01005 Invalid CRM User cardnumber or webid, this data was not saved.
01007 Invalid CRM User data or CRM Address data, data not updated.
01014 Could not generate new card number.
01015 Invalid card number.
01016 Invalid CRM ID.
01017 Invalid data, could not reverse redemption
01019 Invalid ECode.
01020 Unknown CRM Error.
01021 Not enough points to redeem.
01023 Could not find sale by that E-Code.
01024 ECode credit already claimed.
01026 Retry redemption again.
01031 User already exists.

Add Retail User (Apropos/Aptos)

Create POS User in SessionM.

Request Parameters

  • email: string

    Email address.
  • phone: string

    Phone number, 10 digits, numeric string only

Response Parameters

  • result: string

    Newly generated Crm ID of customer.
POST /api/crm/user/create

Example Request

curl \
-X POST \
-H "Content-type: application/json" \
-d '{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"email":"skxtest400@skx.com","phone":"1234567890","storenum":"1"}} ' http://retailapi-skechers-com.dev.skechers.com/api/crm/user/create
{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"email":"skxtest400@skx.com","phone":"1234567890","storenum":"1"}}

Example Response

{"result":"9010056829"}

Live Response


                        

Adv Search Users (Aptos)

Search user by crmId, email, phone, first & last name, external id(B2B corp code), employeeId and employee file number, this API replaces deprecated Search Users and Search Employee APIs, the searching result includes user detailed tier info from SessionM.

Request Parameters

  • crmid: string
    optional

    Loyalty number, SessionM's external id with prefix loyl.
  • phone: string
    optional

    Phone number, phone number can be either with or without dialing code.
  • email: string
    optional

    Email. (minLength = 1, maxLength = 65)
  • firstname: string
    optional

    First name. (minLength = 1, maxLength = 40)
  • lastname: string
    optional

    Last name. (minLength = 1, maxLength = 40)
  • employeeid: string
    optional

    Skechers employee id.(minLength = 1, maxLength = 40)
  • filenumber: string
    optional

    Skechers employee file number.
  • externalid: string
    optional

    B2B biz corporate code.

Response Parameters

  • sessionmid: string

    An unique id from SessionM.
  • email: string

    SessionM member email.
  • phone: string

    SessionM member phone number.
  • webid: string

    An unique id for Skechers's customer.
  • eliteNumber: string

    An unique number for Skechers's SessionM member.
  • firstname: string

    SessionM member first name.
  • lastname: string

    SessionM member last name.
  • employeeid: string

    Skechers employee id.
  • filenumber: string

    Skechers employee's file number.
  • points: int

    Current available points.
  • gcvalue: string

    Current gift card amount available. If gc = 10, customer can redeem rewards to get a $10 gift card.
  • smuser: SMUser object

    User raw data from SessionM.
POST /api/v2/crm/advSearchUser

Example Request

curl \
-X POST \
-H "Content-type: application/json" \
-d '{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"phone":"3104567890"}} ' http://retailapi-skechers-com.dev.skechers.com/api/v2/crm/advSearchUser
{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"phone":"3104567890"}}

Example Response

{"result":[{"email":"skxtest19@skxtest.com","firstname":"TEST19","cardnum":"A1F4C","crmid":"9000796785","lastname":"TEST19","points":700,"gcvalue":70,"phone":"1234567890"}]}

Live Response


                        

Create Employee

Create Skechers Employee in SessionM.

Request Parameters

  • employeeid: string

    Unique id generated by SuccessFactor for every employee.
  • filenumber: string
    optional

    Unique generated by SuccessFactor for every employee, mostly employeeid is same as filenumber.
  • email: string
    optional

    An email address in SuccessFactor for every employee.
  • firstname: string
    optional

    Employee's first name.
  • lastname: string
    optional

    Employee's last name.
  • country: string
    optional

    Country for employee is located.
  • employeetitle: string
    optional

    Employee's title.
  • employeelocation: string
    optional

    Employee's working location.
  • isemployee: boolean
    optional

    Skechers's employee.
  • employeetier: string
    optional

    Employee's tier that the employee will be assigned to. An employee can be assigned to one of the following tiers by passing in the value provided inside the parenthesis: Non-Management Employee (NON_MANAGEMENT_EMPLOYEE), Management Employee(MANAGEMENT_EMPLOYEE), and Directors and Above(DIRECTORS_AND_ABOVE)

Response Parameters

  • sessionmid: string

    Unique alphanumeric SessionM generates for every SessionM account.
  • externalIds: list

    List of combination of external Id and external type.
  • externalIds.externalId: string

    Formatted by SessionM defined external type followed by numeric number.
  • externalIds.externalIdType: string

    SessionM defined external type such as EMPLOYEEID, FILENUMBER, WEBID etc ...
  • employeeid: string

    Employee's employee id consisted in create employee request.
  • filenum: string

    Employee's file number consisted in create employee request, if not in create employee request, an employee id is returned as file number.
  • phone: string

    Employee's phone number.
  • email: string

    Employee's email consisted in create employee request.
  • firstname: string

    Employee's first name consisted in create employee request.
  • lastname: string

    Employee's last name consisted in create employee request.
  • country: string

    Employee's working country consisted in create employee request.
  • employeetitle: string

    Employee's title consisted in create employee request.
  • employeelocation: string

    Employee's location consisted in create employee request.
  • isemployee: boolean

POST /api/crm/employee/create

Example Request

curl \
-X POST \
-H "Content-type: application/json" \
-d '{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"email":"amyr@skechers.com","employeeid":"0000001","firstname":"amy","employeetitle":"tester","employeelocation":"headquarter","country":"usa","isemployee":true,"employeetier":"NON_MANAGEMENT_EMPLOYEE","lastname":"ruan","filenumber":"111119"}} ' http://retailapi-skechers-com.dev.skechers.com/api/crm/employee/create
{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"email":"amyr@skechers.com","employeeid":"0000001","firstname":"amy","employeetitle":"tester","employeelocation":"headquarter","country":"usa","isemployee":true,"employeetier":"NON_MANAGEMENT_EMPLOYEE","lastname":"ruan","filenumber":"111119"}}

Example Response

{"result":"EmployeeProfile object"}

Live Response


                        

Credit By Ecode (POS - NotInUse)

Credit in-store purchase by ecode

Request Parameters

  • ecode: string
    optional

    eCode. Non-empty text.
  • cardnum: string
    optional

    User's CRM ID, known in Epicor as Customer Number (customer_no), maxLength = 20

Response Parameters

  • crmid: string

    User's CRM ID, known in Epicor as Customer Number (customer_no), maxLength = 20
  • email: string

    Email. (minLength = 1, maxLength = 20)
  • phone: string

    Phone number.
  • firstname: string

    First name. (minLength = 1, maxLength = 20)
  • cardnum: string

    Elite member number.
  • lastname: string

    Last name. (minLength = 1, maxLength = 20)
  • points: int

    Current points.
  • gcvalue: int

    Current gift card amount available. If gc = 10, customer can redeem rewards to get a $10 gift card.
POST /api/crm/creditTransaction

Example Request

curl \
-X POST \
-H "Content-type: application/json" \
-d '{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"ecode":"1BF9DP8KRKFNXQ","cardnum":"9003444555"}} ' http://retailapi-skechers-com.dev.skechers.com/api/crm/creditTransaction
{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"ecode":"1BF9DP8KRKFNXQ","cardnum":"9003444555"}}

Example Response

{"result":[{"email":"skxtest19@skxtest.com","firstname":"TEST19","cardnum":"A1F4C","crmid":"9000796785","lastname":"TEST19","points":700,"gcvalue":70,"phone":"1234567890"}]}

Live Response


                        

Credit In-Store Purchase (POS - NotInUse)

Credit in-store purchase by ecode

Request Parameters

  • ecode: string
    optional

    eCode. Non-empty text.
  • crmid: string
    optional

    User's CRM ID, known in Epicor as Customer Number (customer_no), maxLength = 20

Response Parameters

  • customerid: string

    User's CRM ID, known in Epicor as Customer Number (customer_no), maxLength = 20
  • refid: string

    eCode. Non-empty text.
POST /api/crm/credit/instore

Example Request

curl \
-X POST \
-H "Content-type: application/json" \
-d '{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"ecode":"0990201000356010720","crmid":"9003444555"}} ' http://retailapi-skechers-com.dev.skechers.com/api/crm/credit/instore
{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"ecode":"0990201000356010720","crmid":"9003444555"}}

Example Response

{"result":{"timestamp":1578604258123,"refid":"1BF9DP8KRKFNXQ","event":{"enumClass":"com.skechers.ws.akka.messages.crm.RewardEvents","value":"CREDIT"},"storenum":"600","customerid":"9003444555","delta":0}}

Live Response


                        

Delete Employee

Delete Skechers Employee in SessionM.

Request Parameters

  • employeeid: string

    Existed employee id in SessionM.

Response Parameters

  • result: string

    Result of delete.
POST /api/crm/employee/delete

Example Request

curl \
-X POST \
-H "Content-type: application/json" \
-d '{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"employeeid":"0000001"}} ' http://retailapi-skechers-com.dev.skechers.com/api/crm/employee/delete
{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"employeeid":"0000001"}}

Example Response

{"result":"Success"}

Live Response


                        

Generate New Card(s) (NotInUse)

Bulk generate card numbers. Supply a quantity and the API will return a list of card numbers.

Request Parameters

  • quantity: int

    Quantity of card numbers expected back.
  • email: string
    optional

    Optional. Recipient email of attachment. If email is specified, email will be sent. Otherwise, the list of cards will be returned.
  • csv: boolean
    optional

    Yes/No: Email csv of cardnumbers.
  • txt: boolean
    optional

    Yes/No: Email text of cardnumbers.
POST /api/crm/gencards

Example Request

curl \
-X POST \
-H "Content-type: application/json" \
-d '{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"quantity":1}} ' http://retailapi-skechers-com.dev.skechers.com/api/crm/gencards
{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"quantity":1}}

Example Response

{"elitenumbers":["AJ0VAI"]}

Live Response


                        

Redeem Points (NotInUse)

Use this API to redeem points for a reward certificate.

Request Parameters

  • crmid: string

    User's CRM ID, known in Epicor as Customer Number (customer_no).

Response Parameters

  • cardnum: string

    The card number.
  • pin: string

    The pin number.
  • orderitemid: int

    The order item ID of the reward certificate generated.
  • amount: int

    The amount of the certificate generated.
  • expiration: long

    UNIX timestamp in milliseconds of the expiration date of this certificate.
  • createdate: long

    UNIX timestamp in milliseconds of the creation date of this certificate.
  • points: int

    The points deducted to generate this certificate.
POST /api/crm/retail/redeem

Example Request

curl \
-X POST \
-H "Content-type: application/json" \
-d '{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"crmid":"9010052660"}} ' http://retailapi-skechers-com.dev.skechers.com/api/crm/retail/redeem
{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"crmid":"9010052660"}}

Example Response

{"result":{"orderitemid":7391067,"reward":{"used":false,"expirationStr":"2018-05-21","expired":false,"createdate":1490133712940,"cardnum":"6035710349470000000","createdateStr":"2018-03-21","amount":10,"points":100,"app":"skechers_us","pin":"1111","expiration":1495317712940}}}

Live Response


                        

Redeem Points (Web - CA/UK/DE/ESP)

Use this API to redeem points for a reward certificate.

Request Parameters

  • userid: int

    Web User's ID.

Response Parameters

  • cardnum: string

    The card number.
  • pin: string

    The pin number.
  • orderitemid: int

    The order item ID of the reward certificate generated.
  • amount: int

    The amount of the certificate generated.
  • expiration: long

    UNIX timestamp in milliseconds of the expiration date of this certificate.
  • createdate: long

    UNIX timestamp in milliseconds of the creation date of this certificate.
  • points: int

    The points deducted to generate this certificate.
POST /api/crm/redeem

Example Request

curl \
-X POST \
-H "Content-type: application/json" \
-d '{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"userid":15}} ' http://retailapi-skechers-com.dev.skechers.com/api/crm/redeem
{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"userid":15}}

Example Response

{"result":{"orderitemid":6971211,"reward":{"used":false,"expirationStr":"2018-05-21","expired":false,"createdate":1490133712940,"cardnum":"6035710349470000000","createdateStr":"2018-03-21","amount":10,"points":100,"app":"skechers_us","pin":"1111","expiration":1495317712940}}}

Live Response


                        

Redeem Points By External ID(Web - US)

Use this API to redeem points for a reward certificate.

Request Parameters

  • externaluserid: String

    Web User's ID.
  • subscriberkey: String

    Web User's customer relationship management ID.
  • email: String

    Web User's first name.
  • phone: String
    optional

    Web User's phone number.
  • firstname: String

    Web User's ID.
  • lastname: String

    Web User's last name.

Response Parameters

  • cardnum: string

    The card number.
  • pin: string

    The pin number.
  • orderitemid: String

    The order item ID of the reward certificate generated.
  • amount: int

    The amount of the certificate generated.
  • expiration: long

    UNIX timestamp in milliseconds of the expiration date of this certificate.
  • createdate: long

    UNIX timestamp in milliseconds of the creation date of this certificate.
  • points: int

    The points deducted to generate this certificate.
POST /api/v2/crm/redeem

Example Request

curl \
-X POST \
-H "Content-type: application/json" \
-d '{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"email":"jcrisan@skechers.com","externaluserid":"63409054","firstname":"John","lastname":"Crisanto","subscriberkey":"7000003180","phone":"9234567890"}} ' http://retailapi-skechers-com.dev.skechers.com/api/v2/crm/redeem
{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"email":"jcrisan@skechers.com","externaluserid":"63409054","firstname":"John","lastname":"Crisanto","subscriberkey":"7000003180","phone":"9234567890"}}

Example Response

{"result":{"orderitemid":"6971211","reward":{"used":false,"expirationStr":"2018-05-21","expired":false,"createdate":1490133712940,"cardnum":"6035710349470000000","createdateStr":"2018-03-21","amount":10,"points":100,"app":"skechers_us","pin":"1111","expiration":1495317712940}}}

Live Response


                        

Redeem Points for MAO

Use this API to redeem points for a reward certificate.

Request Parameters

  • orderid: String

    Web Order ID.
  • externaluserid: String

    Web User's ID.
  • subscriberkey: String

    Web User's customer relationship management ID.
  • email: String

    Web User's first name.
  • phone: String
    optional

    Web User's phone number.
  • firstname: String

    Web User's ID.
  • lastname: String

    Web User's last name.

Response Parameters

  • cardnum: string

    The card number.
  • pin: string

    The pin number.
  • orderitemid: int

    The order item ID of the reward certificate generated.
  • amount: int

    The amount of the certificate generated.
  • expiration: long

    UNIX timestamp in milliseconds of the expiration date of this certificate.
  • createdate: long

    UNIX timestamp in milliseconds of the creation date of this certificate.
  • points: int

    The points deducted to generate this certificate.
POST /api/v3/crm/redeem

Example Request

curl \
-X POST \
-H "Content-type: application/json" \
-d '{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"email":"AMYRUK1@SKX.COM","firstname":"test","userid":"63508275","lastname":"test","orderid":"23232323","subscriberkey":"6200017759","phone":"9234567890"}} ' http://retailapi-skechers-com.dev.skechers.com/api/v3/crm/redeem
{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"email":"AMYRUK1@SKX.COM","firstname":"test","userid":"63508275","lastname":"test","orderid":"23232323","subscriberkey":"6200017759","phone":"9234567890"}}

Example Response

{"result":{"orderitemid":6971211,"reward":{"used":false,"expirationStr":"2018-05-21","expired":false,"createdate":1490133712940,"cardnum":"6035710349470000000","createdateStr":"2018-03-21","amount":10,"points":100,"app":"skechers_us","pin":"1111","expiration":1495317712940}}}

Live Response


                        

Search Users(deprecated)

Search Epicor's database for customers by criteria.

Request Parameters

  • crmid: string
    optional

    User's CRM ID, known in Epicor as Customer Number (customer_no), maxLength = 20
  • email: string
    optional

    Email. (minLength = 1, maxLength = 20)
  • phone: string
    optional

    Phone number or (deprecated) elite member card number.
  • firstname: string
    optional

    First name. (minLength = 1, maxLength = 20)
  • lastname: string
    optional

    Last name. (minLength = 1, maxLength = 20)

Response Parameters

  • crmid: string

    User's CRM ID, known in Epicor as Customer Number (customer_no), maxLength = 20
  • email: string

    Email. (minLength = 1, maxLength = 20)
  • phone: string

    Phone number.
  • firstname: string

    First name. (minLength = 1, maxLength = 20)
  • cardnum: string

    Elite member number.
  • lastname: string

    Last name. (minLength = 1, maxLength = 20)
  • points: int

    Current points.
  • gcvalue: int

    Current gift card amount available. If gc = 10, customer can redeem rewards to get a $10 gift card.
POST /api/v2/crm/search

Example Request

curl \
-X POST \
-H "Content-type: application/json" \
-d '{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"phone":"9981234567"}} ' http://retailapi-skechers-com.dev.skechers.com/api/v2/crm/search
{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"phone":"9981234567"}}

Example Response

{"result":[{"email":"skxtest19@skxtest.com","firstname":"TEST19","cardnum":"A1F4C","crmid":"9000796785","lastname":"TEST19","points":700,"gcvalue":70,"phone":"1234567890"}]}

Live Response


                        

SearchEmployees(deprecated)

Search SessionM database for employees by criteria.

Request Parameters

  • employeeid: string
    optional

    User's Employee ID/File Number
  • filenumber: string
    optional

    User's Employee File Number
  • email: string
    optional

    Email. (minLength = 1, maxLength = 20)
  • phone: string
    optional

    Phone number or (deprecated) elite member card number.

Response Parameters

  • employeeid: string

    User's Employee ID
  • email: string

    Email. (minLength = 1, maxLength = 20)
  • phone: string

    Phone number.
  • firstname: string

    First name. (minLength = 1, maxLength = 20)
  • lastname: string

    Last name. (minLength = 1, maxLength = 20)
  • filenum: string

    File number of the employee.
  • externalIds: list

    External ids of the employee.
POST /api/v2/crm/search/employee

Example Request

curl \
-X POST \
-H "Content-type: application/json" \
-d '{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"phone":"9981234567"}} ' http://retailapi-skechers-com.dev.skechers.com/api/v2/crm/search/employee
{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"phone":"9981234567"}}

Example Response

{"result":[{"email":"testuser@skechers.com","sessionmid":"a548e472-9ad9-11ea-961f-e6d204bbd70f","employeeid":"99999","firstname":"User","employeetitle":"","employeelocation":"","country":"USA","isemployee":false,"externalIds":[{"externalId":"EMPLOYEEID:99999","externalIdType":"EMPLOYEE_ID"},{"externalId":"FILENUMBER:666666","externalIdType":"FILE_NUMBER"}],"lastname":"Test","filenum":"666666","phone":"1234567890"}]}

Live Response


                        

Sync CRM User (NotInUse)

Syncs user from Web to Epicor.

Request Parameters

  • crmid: string

    The 10-digit CRM ID of the user.
POST /api/crm/user/sync

Example Request

curl \
-X POST \
-H "Content-type: application/json" \
-d '{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"userid":4129266}} ' http://retailapi-skechers-com.dev.skechers.com/api/crm/user/sync
{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"userid":4129266}}

Example Response

{"result":{"newPassword":null,"birthday":13,"customerwishlist":null,"zip":null,"email":"TEST341@SKX.COM","employeeid":null,"firstname":"Edd","shippingaddresses":[{"city":"HAWTHORNE","homephone":"5622613793","zip":"30330","state":"CA","firstname":"EDDIE","cellphone":null,"country":"USA","address2":null,"lastname":"FIG","id":158054,"address1":"8742 CERISE AVENUE","default":true,"createtimestamp":1488929890000}],"passwordExpirationDate":null,"billingaddresses":[{"city":"HAWTHORNE","homephone":"5622613793","zip":"30330","state":"CA","firstname":"EDDIE","cellphone":null,"country":"USA","address2":null,"lastname":"FIG","id":158892,"address1":"8742 CERISE AVENUE","default":true,"createtimestamp":1488929890000}],"storenum":"600","lastPurchaseDate":1488929890000,"locale":"en_US","crmid":"9000866746","lastname":"Fig","lastPaymentType":"CREDIT","id":4129266,"lastLoginDate":1488929352000,"status":"A","creditcards":[{"expirationyear":"27","lastPurchasedOrderID":268284,"firstname":"Eddie","paymentservice":null,"braintreecustid":null,"accountnumber":"x0004","lastPurchaseDate":1488929885000,"lastname":"Test","id":188510,"status":true,"token":"D2809248-FE2F-4EAD-B7D7-80CF681E73F3","default":true,"expiration":"05/27","expirationmonth":"05","cardtype":"Discover"}],"networkid":null,"registrationDate":1488929352000,"optin":false,"birthmonth":11,"birthyear":1990,"gender":"M","password":""}}

Live Response


                        

Sync Transaction (NotInUse)

Syncs transaction to SessionM.

Request Parameters

  • crmid: string

    SessionM LOYL or SFMC Subscriber Key.
  • invoiceNum: string

    Order ID or Invoice Number.
  • date: string

    Expecting date in the format of yyyyMMdd.
  • store: string

    Store number, not padded with zeros.
  • payments: array[string]

    Array of payment type, such as VISA.
  • isReturn: boolean

    Is this order a return or a purchase?
  • items.upc: string

    UPC or Sku number.
  • items.description: string

    Product name.
  • items.amount: string

    Item price after discount but before tax and shipping.
  • items.discounts[0].amount: string

    Item discount amount.
  • items.discounts[0].description: string

    Item discount description.

Response Parameters

  • orderid: string

    Item Order ID or Invoice Number.
  • delta: int

    Points delta.
POST /api/crm/order/sync

Example Request

curl \
-X POST \
-H "Content-type: application/json" \
-d '{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"payments":["VISA"],"isReturn":false,"items":[{"upc":"193113404053","description":"Skechers On the GO 600 - Breezy Sprints","amount":25.6,"discounts":[{"amount":6.4,"description":"APRIL20"}]}],"store":"1","crmid":"920000130114","date":"20181108","invoiceNum":"22222222"}} ' http://retailapi-skechers-com.dev.skechers.com/api/crm/order/sync
{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"payments":["VISA"],"isReturn":false,"items":[{"upc":"193113404053","description":"Skechers On the GO 600 - Breezy Sprints","amount":25.6,"discounts":[{"amount":6.4,"description":"APRIL20"}]}],"store":"1","crmid":"920000130114","date":"20181108","invoiceNum":"22222222"}}

Example Response

{"orderid":"22222222.20181108.600","delta":60}

Live Response


                        

Sync Transaction By Order ID (Web)

Syncs transaction from Web DB to SessionM. This will credit new web purchases and deduct new web returns. Becomes a no-op if there's nothing new to sync.

Request Parameters

  • orderid: number

    Web Order ID to be synced.
POST api/crm/order/syncByID

Example Request

curl \
-X POST \
-H "Content-type: application/json" \
-d '{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"orderid":123}} ' http://retailapi-skechers-com.dev.skechers.comapi/crm/order/syncByID
{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"orderid":123}}

Example Response

{"result":[{"orderid":"431351","delta":65}]}

Live Response


                        

Update Employee

Update Skechers Employee in SessionM.

Request Parameters

  • origemployeeid: string

    Existed employee id in SessionM.
  • filenumber: string
    optional

    Updated employee's file number.
  • email: string
    optional

    Updated employee's email.
  • firstname: string
    optional

    Updated employee's first name.
  • lastname: string
    optional

    Updated employee's last name.
  • country: string
    optional

    Updated employee's country.
  • employeetitle: string
    optional

    Updated employee's title.
  • employeelocation: string
    optional

    Updated employee's location.
  • isemployee: boolean
    optional

    Updated employee status.
  • employeetier: string
    optional

    Employee's tier that the employee will be assigned to. An employee can be assigned to one of the following tiers by passing in the value provided inside the parenthesis: Non-Management Employee (NON_MANAGEMENT_EMPLOYEE), Management Employee(MANAGEMENT_EMPLOYEE), and Directors and Above(DIRECTORS_AND_ABOVE)

Response Parameters

  • sessionmid: string

    Unique alphanumeric SessionM generates for every SessionM account.
  • externalIds: list

    List of combination of external Id and external type.
  • externalIds.externalId: string

    Formatted by SessionM defined external type followed by numeric number.
  • externalIds.externalIdType: string

    SessionM defined external type such as EMPLOYEEID, FILENUMBER, WEBID etc ...
  • filenum: string

    Employee's file number passed from update employee request.
  • phone: string

    Employee's phone number.
  • email: string

    Employee's email passed from update employee request.
  • firstname: string

    Employee's first name passed from update employee request.
  • lastname: string

    Employee's last name passed from update employee request.
  • country: string

    Employee's working country passed from update employee request.
  • employeetitle: string

    Employee's title passed from update employee request.
  • employeelocation: string

    Employee's location passed from in update employee request.
  • isemployee: boolean

POST /api/crm/employee/update

Example Request

curl \
-X POST \
-H "Content-type: application/json" \
-d '{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"email":"amyr@skechers.com","firstname":"amy","employeetitle":"tester","employeelocation":"headquarter","country":"usa","origemployeeid":"0000001","isemployee":true,"employeetier":"NON_MANAGEMENT_EMPLOYEE","lastname":"ruan","filenumber":"111119"}} ' http://retailapi-skechers-com.dev.skechers.com/api/crm/employee/update
{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"email":"amyr@skechers.com","firstname":"amy","employeetitle":"tester","employeelocation":"headquarter","country":"usa","origemployeeid":"0000001","isemployee":true,"employeetier":"NON_MANAGEMENT_EMPLOYEE","lastname":"ruan","filenumber":"111119"}}

Example Response

{"result":"EmployeeProfile object"}

Live Response


                        

Update Phone # (Apropos)

Update a customer's phone # if it's null.

Request Parameters

  • crmid: string

    The 10-digit CRM ID of the user.
  • phone: string

    Phone number. Min length = 10. String of numbers only. No formatting.
POST /api/crm/user/update/phone

Example Request

curl \
-X POST \
-H "Content-type: application/json" \
-d '{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"crmid":"9010052904","phone":"9981234567"}} ' http://retailapi-skechers-com.dev.skechers.com/api/crm/user/update/phone
{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"crmid":"9010052904","phone":"9981234567"}}

Example Response

{"result":{"crmid":"9010052904","phone":"9981234567"}}

Live Response


                        

Validate Elite Details (Apropos)

Validates elite member info

Request Parameters

  • phone: string
    optional

    Phone number. Min length = 10. String of numbers only. No formatting.
  • cardnum: string
    optional

    Skechers Elite Card Number, maxLength = 10.

Response Parameters

  • isValidPhone: boolean

    Confirm whether phone is valid or not.
  • isValidCard: boolean

    Confirm whether cardnum is valid or not.
POST /api/crm/validation

Example Request

curl \
-X POST \
-H "Content-type: application/json" \
-d '{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"cardnum":"AK0OMZ","phone":"9981234567"}} ' http://retailapi-skechers-com.dev.skechers.com/api/crm/validation
{"apikey":"AY8ZRNUHN2I4MNM5JQDDWVBXWQBEUH","request":{"cardnum":"AK0OMZ","phone":"9981234567"}}

Example Response

{"result":{"isValidPhone":true,"isValidCard":false}}

Live Response