Documentation You are here: start » v » 0.7.2 » customers

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
Last revisionBoth sides next revision
v:0.7.2:customers [2011/11/17 18:36] – external edit 127.0.0.1v:0.7.2:customers [2012/01/18 17:18] – [Synchronizing Users and Passwords] foxyfred
Line 38: Line 38:
 Because FoxyCart was built from the ground up to augment and not replace external systems, it is a common occurrence that FoxyCart customer records will need to be created or updated from an external system, or that FoxyCart customers will need to automatically create users in external systems (like a CMS or CRM). Typically an integration like this will primarily use [[.:transaction_xml_datafeed|the Transaction XML Datafeed]] and [[.:api|the API]] to create and sync users, and [[.:sso|Single Sign-On (SSO)]] to make the customer checkout experience seamless. Because FoxyCart was built from the ground up to augment and not replace external systems, it is a common occurrence that FoxyCart customer records will need to be created or updated from an external system, or that FoxyCart customers will need to automatically create users in external systems (like a CMS or CRM). Typically an integration like this will primarily use [[.:transaction_xml_datafeed|the Transaction XML Datafeed]] and [[.:api|the API]] to create and sync users, and [[.:sso|Single Sign-On (SSO)]] to make the customer checkout experience seamless.
  
-While the possibilities for this type of synchronization are near limitless, the single most important thing is usually the customer's password. FoxyCart customer passwords are returned by the XML datafeed and the API as  [[wp>Hash_function|hashes]], and not the actual cleartext password. While the initial user creation is generally straightforward it can get tricky to maintain sync when passwords are reset, so if you tackle an advanced integration you must ensure that any and all password resetting functionality on your systems simultaneously updates the FoxyCart customer record. +While the possibilities for this type of synchronization are near limitless, the single most important thing is usually the customer's password. FoxyCart customer passwords are returned by the XML datafeed and the API as [[wp>Hash_function|hashes]], and not the actual cleartext password. While the initial user creation is generally straightforward it can get tricky to maintain sync when passwords are reset, so if you tackle an advanced integration you must ensure that any and all password resetting functionality on your systems simultaneously updates the FoxyCart customer record through [[.:api|the API]]. 
 + 
 +Password hashes are represented in the API and Datafeed XML as hexadecimal strings, for example "''2e29f4fa2efb67dc28860abf''" Depending on your library's hash functions, you may need to convert the output of the hash function to a hexadecimal string in order to compare passwords.  Any "salt" value generated by FoxyCart is a random string of letters and numbers.
  
 FoxyCart currently supports the following hashing methods (in alphabetical order, and in PHP pseudocode, using ''$'' to denote a variable, ''.'' to denote concatenation, and a single quote to encapsulate a string): FoxyCart currently supports the following hashing methods (in alphabetical order, and in PHP pseudocode, using ''$'' to denote a variable, ''.'' to denote concatenation, and a single quote to encapsulate a string):
Line 69: Line 71:
     * [[http://wordpress.org/|Wordpress]]     * [[http://wordpress.org/|Wordpress]]
     * osCommerce 2.3+     * osCommerce 2.3+
 +
 +  ; ''pbkdf2''
 +  : **Method:** From [[https://github.com/modxcms/revolution/blob/develop/core/model/modx/hashing/modpbkdf2.class.php|MODX Revolution's code]]
 +  : **Configuration:** Comma separated values for ''iterations'', ''key length'', ''algorithm''. Defaults to ''1000, 32, sha256''.
 +  : **Supported Systems:**
 +    * [[http://modx.com/|MODX Revolution 2.x]] (default configuration)
  
   ; ''sha1''   ; ''sha1''

Site Tools