Convert registered shoppers to account-based shoppers

You can perform a one-time bulk conversion of registered shoppers to account-based shoppers.

This section details this process.

To convert a set of registered shoppers to account-based shoppers follow these steps:

  1. Export registered shoppers using bulk export API to a CSV or JSON format. See the section Perform Bulk Export and Import for more information.
  2. Open the exported file and change the profileType from registered (b2c_user or null) to account-based (b2b_user).
  3. Associate each shopper with an active account.
  4. Change other fields as desired - for example, adding roles, or removing profile addresses.
  5. Import the changed file (CSV or JSON) using bulk import API with the input parameter isProfileMigration set to true. See the section Perform Bulk Export and Import for more information.

Only the administrator can access the export and import APIs.

Notes on the conversion process

The following table notes issues to be aware of when you convert a shopper’s type from registered to account-based.

Conversion area Conversion Notes
Profiletype After conversion, this field’s value will reflect that the shopper is now account-based (b2b_user).

Lifetime value properties

The following properties exist for Registered shoppers only:

  • Lifetime spend
  • Lifetime average order value (AOV)
  • Number of orders
  • Last purchase amount
  • First purchase date
  • Last purchase date

When you convert a registered shopper to an account-based shopper, the shopper’s lifetime value properties are changed.

The following properties are set to 0:

  • Lifetime spend
  • Lifetime average order value (AOV)
  • Number of orders
  • Last purchase amount

The following properties are set to null:

  • First purchase date
  • Last purchase date

If you have set up any kind of custom reporting based directly on these properties, reports that span the timeframe of the migration may reflect the fact that these properties were zeroed/nulled for the converted shoppers.

GDPR - Right to be forgotten:

  • Deletion of profile
  • Redaction of PII from many entities
Under GDPR (General Data Protection Regulation), a registered shopper or an account-based shopper may ask to be forgotten. You have a legally specified amount of time to redact the shopper’s PII in the system and delete the shopper’s profile. You determine exactly what PII needs to be redacted, based on guidance from your own legal counsel. For account-based shoppers, there is potentially PII in more places than for registered shoppers. For more information, see the section Delete shopper information.
Account-based roles such as account-based Buyer, Administrator, Approver, Account Address Manager, and Profile Address Manager roles. A registered shopper cannot have these roles. During conversion, you can assign converted shoppers to account-based roles.

Profile addresses - including:

  • Shipping address
  • Billing address

You can delete shopper profile addresses during the conversion process by nulling the address columns in the spreadsheet of exported profiles before re-importing the profiles.

If the profile addresses are left intact, the converted shopper will be able to check out with those addresses even if the merchant did not give the shopper (or any shopper) the Profile Address Manager role and does not want account-based shoppers using personal addresses.

ORDERS - Active orders - including:

  • Orders pending payment
  • Quoted orders
  • Incomplete orders (carts)

Converted shoppers will not be able to see any orders that they submitted or carts they created when they were a registered shopper.

An Agent will not be able to see a cart that the shopper had created as a registered shopper

An order that the shopper had submitted as a registered shopper and that does not need intervention will continue to process.

If an order that the shopper had submitted as a registered shopper is payment pending or has been quoted, an Agent will be able to see and cancel the order, but cannot pay and submit it.

The shopper’s orders can be accessed via an Admin API.

ORDERS:

Fulfilled orders and order history

Returns, exchanges, cancellations

Shoppers will not be able to see any orders that they submitted as a registered shopper.

If an order that the shopper had submitted as a registered shopper has been fulfilled, an Agent will be able to see the order and process it as usual –for example, process a return.

In addition, you can access the orders using an Admin API.

ORDERS:

Scheduled orders

After conversion, any scheduled orders that the shopper had submitted as a registered shopper will be deactivated.

ORDERS:

Abandoned cart fields and emails

The shopper will no longer receive abandoned order emails for their registered shopper carts, since they can no longer access their registered shopper carts.
Active coupons / promotions

There is a unusual situation that could occur during the conversion:

  • A registered shopper enters coupon code, but does not check out.
  • The shopper is converted to an account-based shopper.
  • The promotion remains granted to the shopper and stored in the profile.
  • The converted shopper qualifies for promotion, it is applied, and the shopper checks out having used a registered shopper-intended promotion for account-based shopping.

You should be aware of this potential issue and manage it using business processes. One possible solution: For each promotion, specify the price groups to which the promotion applies. A shopper who is converted from registered to account-based will switch price groups, and will only qualify for promotions associated with account-based price groups.

Purchase lists - including:

  • Lists the shopper created and kept private
  • Lists the shopper created and shared
  • Lists shared with the shopper

Purchase lists that a converted shopper created when they were a registered shopper and shared with other registered shoppers will no longer be shared upon conversion.

After conversion, the only purchase lists shared with the shopper will be those that are shared with the whole account, for any account to which the shopper is being added.

Audience membership

Audiences based on lifetime value properties will stop capturing shoppers who were converted, because the conversion process will have zeroed/nulled these shoppers’ lifetime value properties, since these properties are not populated for account-based shoppers.

Audiences based on the following profile address properties will no longer capture any shoppers who were converted, if you chose to null out these profile properties as part of the conversion:

  • Billing address city, country, postal code, state
  • Shipping address city, country, postal code, state

Audiences based on the following profile properties will not be affected:

  • Date of birth
  • Email address
  • First visit date
  • Gender
  • Previous visit date
  • Receive email
  • Registration date

Newly converted shoppers may begin to show up in audiences that are based on account properties, since these shoppers will now belong to accounts.

SSO If the registered shopper had been signing in via single sign-on (SSO), then after conversion, they will only be able to log in if they are a member of an active account.
Active flag

You can change this field during conversion.

An account-based shopper’s active status applies across all accounts to which they belong. An account-based shopper must be active in order to be able to log in.

Administrator access to shopper profile data

When you convert a shopper from registered to account-based, the shopper will be somewhat more exposed to inspection by administrators. A registered shopper’s profile properties are visible only to the shopper. Once converted into account-based shopper, the account administrator can now view attributes of the shopper profile.

If you want to prevent Administrators and Delegated Administrators from accessing a shopper profile property, you would need to use role-based property-level access. Property-level access control can ensure that a given profile property’s values can be viewed only by the shopper, not by an Administrator or Delegated Administrator.

You can also use existing endpoints to clear the values of specific profile properties once exported, and import them with null values.

Administrator access to profile properties is as follows:

  • Merchant Administrators can use the updateProfile API to update a shopper’s profile properties (custom and static). This applies to all properties (including profile addresses) except profileType.
  • Merchant Administrators have a UI for viewing a shopper’s name, email address, and custom profile property values.
  • Custom and static profile properties that are not internalOnly are exposed in the Storefront view model.
  • A Delegated Administrator has a UI for viewing the name and email address of a shopper in his account.
  • A Delegated Administrator can use the updateMember API to update the profile properties of a shopper in his account. This applies to all profile properties except for the shopper’s account memberships and profileType.
Shopper’s access to sites Note that, as an account-based shopper, the shopper will only be able to access sites that have contracts with the account.
Catalogs and pricelists Note that, as an account-based shopper, the shopper should see catalogs and pricelists based on the account’s contract with the site.
Webhooks

Changes to shoppers’ profile properties during conversion may result in a high volume of webhook calls upon re-import.

You can use the existing attribute triggerWebHook to control whether webhooks are triggered on re-import.

Emails to the shoppers After the conversion, the usual Account Assignment emails are sent to converted shoppers who are active and assigned to active accounts. Other emails may be triggered as well. The triggering of each email template can be controlled using an existing parameter on import.