The Customers API can be used to create and manage customer profiles and sync customer data. The App Marketplace requirements described in this topic apply to partner applications that use the Customers API.
Customers must consent to allowing their personal information to be stored.
Applications must explicitly inform the buyer that their personal information will be stored in the partner application and receive consent from the buyer.
Maintaining clean and accurate records is important for customer management systems. Partner applications must avoid unintentionally creating duplicate customer profiles in the Customer Directory, which can result in a poor buyer experience. The Customers API doesn't check for duplicates during profile creation, so the partner is responsible for checking whether a profile already exists for a customer before creating a new profile.
To avoid creating duplicate customer profiles, applications must call the SearchCustomers endpoint and search by phone number, email address, or reference ID to check whether a profile for the customer already exists. Searching by exact phone number is a common customer-lookup technique.
Ordering applications must specify a customer_id
on the order or payment to help ensure that transactions are reliably linked to the customer. The application must search for existing customers (based on information collected prior to the order confirmation) or create a customer profile in the Customer Directory if a corresponding profile doesn't already exist.
The SearchCustomers and ListCustomers endpoints have a lag before newly created or updated customer profiles are available. For more information, see Newly created and updated profiles.
Applications should account for the lag when implementing search or list workflows that operate against newly created or updated customer profiles.