SalesforceCommerceCloud / b2c-crm-sync

... a contemporary perspective on how to integrate B2C Commerce and the Salesforce Customer 360 Platform to power frictionless customer experiences in the B2C domain.
https://salesforcecommercecloud.github.io/b2c-crm-sync/
BSD 3-Clause "New" or "Revised" License
65 stars 46 forks source link

Step "Deploy the b2c-crm-sync Application Code to Your Salesforce Org" Failing with TypeError "Cannot read property 'prototype' of undefined" for Non-Scratch Org Config #192

Open radupopescu1 opened 2 years ago

radupopescu1 commented 2 years ago

I am at step 14 - "Deploy the b2c-crm-sync Application Code to Your Salesforce Org" in the process. All is good until this point. Checked all configuration, credentials, the '.env' configuration. I'm using a non-scratch org setup. I am running the command: npm run crm-sync:sf:org:deploy.

The result is:

b2c-crm-sync@1.4.1 crm-sync:sf:org:deploy node cli.js crm-sync:sf:deploy


CRM-SYNC | v0.9.0 | crm-sync:sf:deploy: START

-- Attempting to deploy b2c-crm-sync using the following environment details ┌──────────────────────────────┬──────────┬─────────────────────────────────────────────────────────────────────────────┐ │ Env. Property Name │ Is Valid │ Configured Property Value │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ b2cInstanceName │ true │ │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ b2cHostName │ true │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ b2cSiteIds │ true │ RefArch,RefArchGlobal │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ b2cClientId │ true │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ b2cClientSecret │ true │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ b2cUsername │ true │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ b2cAccessKey │ true │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ sfLoginUrl │ true │ test.salesforce.com │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ sfScratchOrgProfile │ ---- │ base │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ sfScratchOrgForceOverwrite │ ---- │ true │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ sfScratchOrgSetDefault │ ---- │ false │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ sfScratchOrgAlias │ ---- │ b2ccrmsync │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ sfScratchOrgDurationDays │ ---- │ │ └──────────────────────────────┴──────────┴─────────────────────────────────────────────────────────────────────────────┘ ┌──────────────────────────────┬──────────┬─────────────────────────────────────────────────────────────────────────────┐ │ Env. Property Name │ Is Valid │ Configured Property Value │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ b2cInstanceName │ true │ │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ b2cHostName │ true │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ b2cSiteIds │ true │ RefArch,RefArchGlobal │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ b2cClientId │ true │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ b2cClientSecret │ true │ │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ b2cUsername │ true │ │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ b2cAccessKey │ true │ │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ sfLoginUrl │ true │ test.salesforce.com │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ sfScratchOrgProfile │ ---- │ base │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ sfScratchOrgForceOverwrite │ ---- │ true │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ sfScratchOrgSetDefault │ ---- │ false │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ sfScratchOrgAlias │ ---- │ b2ccrmsync │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ sfScratchOrgDurationDays │ ---- │ │ └──────────────────────────────┴──────────┴─────────────────────────────────────────────────────────────────────────────┘ -- verifying / creating the certificates directory

CRM-SYNC | v0.9.0 | crm-sync:sf:deploy: START

-- Attempting to deploy b2c-crm-sync to the Salesforce Org using the following environment details ┌──────────────────────────────┬──────────┬─────────────────────────────────────────────────────────────────────────────┐ │ Env. Property Name │ Is Valid │ Configured Property Value │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ b2cInstanceName │ true │ │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ b2cHostName │ true │ │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ b2cSiteIds │ true │ RefArch,RefArchGlobal │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ b2cClientId │ true │ │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ b2cClientSecret │ true │ │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ b2cUsername │ true │ │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ b2cAccessKey │ true │ │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ sfLoginUrl │ true │ test.salesforce.com │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ sfScratchOrgProfile │ ---- │ base │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ sfScratchOrgForceOverwrite │ ---- │ true │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ sfScratchOrgSetDefault │ ---- │ false │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ sfScratchOrgAlias │ ---- │ b2ccrmsync │ ├──────────────────────────────┼──────────┼─────────────────────────────────────────────────────────────────────────────┤ │ sfScratchOrgDurationDays │ ---- │ │ └──────────────────────────────┴──────────┴─────────────────────────────────────────────────────────────────────────────┘

,----------------------------------------------------------------------.
88888888888 88
88 88
88 88
88aaaaa 8b,dPPYba, 8b,dPPYba, ,adPPYba, 8b,dPPYba, 88
88""""" 88P' "Y8 88P' "Y8 a8" "8a 88P' "Y8 88
88 88 88 8b d8 88 ""
88 88 88 "8a, ,a8" 88 aa
88888888888 88 88 `"YbbdP"' 88 88
Oh no! Not one of these :(
It looks like you've run into an error or exception.
Please log an issue via
https://github.com/SalesforceCommerceCloud/b2c-crm-sync/issues.
That's the best way to engage us. Thank you for your support!

`----------------------------------------------------------------------'

[ { "stack": "TypeError: Cannot read property 'prototype' of undefined\n at Object. (C:\Users\vladimir.popescu\WebstormProjects\b2c-crm-sync\node_modules\@salesforce\core\lib\org\connection.js:386:19)\n at Module._compile (node:internal/modules/cjs/loader:1102:14)\n at Object.Modul e._extensions..js (node:internal/modules/cjs/loader:1131:10)\n at Module.load (node:internal/modules/cjs/loader:967:32)\n at Function.Module._load (node:internal/modules/cjs/loader:807:14)\n at Module.require (node:internal/modules/cjs/loader:991:19)\n at require (node:internal/modules/cjs/helpers:9 2:18)\n at Object. (C:\Users\vladimir.popescu\WebstormProjects\b2c-crm-sync\node_modules\@salesforce\core\lib\org\authInfo.js:27:22)\n at Module._compile (node:internal/modules/cjs/loader:1102:14)\n at Object.Module._extensions..js (node:internal/modules/cjs/loader:1131:10)\n at Module.load (node:internal/modules/cjs/loader:967:32)\n at Function.Module._load (node:internal/modules/cjs/loader:807:14)\n at Module.require (node:internal/modules/cjs/loader:991:19)\n at require (node:internal/modules/cjs/helpers:92:18)\n at Object. (C:\Users\vladimir.popescu\Webst ormProjects\b2c-crm-sync\node_modules\@salesforce\core\lib\org\index.js:19:14)\n at Module._compile (node:internal/modules/cjs/loader:1102:14)", "message": "Cannot read property 'prototype' of undefined", "name": "TypeError" } ]

CRM-SYNC | v0.9.0 | crm-sync:sf:deploy: END

Any help will be most welcomed!

mgeorgievSpinup commented 2 years ago

same problem here

tgatev commented 2 years ago

same problem with https://github.com/SalesforceCommerceCloud/b2c-crm-sync#deploy-the-salesforce-connectedapp-definitions

radupopescu1 commented 2 years ago

Anyone found a solution to this? I'm still stuck.

GretaPerdichizzi commented 2 years ago

Having the same problem, have anyone solved it?

radupopescu1 commented 2 years ago

Having the same problem, have anyone solved it?

Not yet, trying to get to the bottom of it.

GretaPerdichizzi commented 2 years ago

Hi radupopescu1,

Still not solved the problem, I think the main issue is a connecting one related to the proxy set in the connection.js file:

// jsforce does some interesting proxy loading on lib classes.
// Setting this in the Connection.tooling getter will not work, it
// must be set on the prototype.
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore
tooling_1.Tooling.prototype.autoFetchQuery = Connection.prototype.autoFetchQuery; // eslint-disable-line @typescript-eslint/unbound-method
//# sourceMappingURL=connection.js.map

However, found a workaround to deploy via sfdx: try sfdx force:source:deploy -p "./src/sfdc/base" instead of npm run crm-sync:sf:org:deploy

And then deploy manually the connectedApps that you can find in: \src\sfdc\base\main\default\connectedApps

Hope it works also for you.

Cheers, Greta

petarm commented 2 years ago

I faced the same issue, will test the approach above. Best, Peter

tgatev commented 2 years ago

Greate, the deploy step pass as well with the workaround, but I face the same error on the next step:

  1. npm run crm-sync:sf:duplicaterules

https://github.com/SalesforceCommerceCloud/b2c-crm-sync#create-and-deploy-your-duplicate-rules


Error Message: StackTrace: START

TypeError: Cannot read property 'prototype' of undefined at Object. (C:\Users\tg\osho\b2c-crm-sync\node_modules\@salesforce\core\lib\org\connection.js:386:19) at Module._compile (node:internal/modules/cjs/loader:1102:14) at Object.Module._extensions..js (node:internal/modules/cjs/loader:1131:10) at Module.load (node:internal/modules/cjs/loader:967:32) at Function.Module._load (node:internal/modules/cjs/loader:807:14) at Module.require (node:internal/modules/cjs/loader:991:19) at require (node:internal/modules/cjs/helpers:92:18) at Object. (C:\Users\tg\osho\b2c-crm-sync\node_modules\@salesforce\core\lib\org\authInfo.js:27:22) at Module._compile (node:internal/modules/cjs/loader:1102:14) at Object.Module._extensions..js (node:internal/modules/cjs/loader:1131:10) at Module.load (node:internal/modules/cjs/loader:967:32) at Function.Module._load (node:internal/modules/cjs/loader:807:14) at Module.require (node:internal/modules/cjs/loader:991:19) at require (node:internal/modules/cjs/helpers:92:18) at Object. (C:\Users\tg\osho\b2c-crm-sync\node_modules\@salesforce\core\lib\org\index.js:19:14) at Module._compile (node:internal/modules/cjs/loader:1102:14)

Error Message: StackTrace: END


CRM-SYNC | v0.9.0 | crm-sync:sf:duplicaterules: END

GretaPerdichizzi commented 2 years ago

Hi all,

For connectedApps, duplicateRules, remoteSiteSettings I had to deploy them "manually". You can find the data you have to deploy in the specific directories in your local env.

I had also to modify the Field-Level_Security for all the deployed custom fields.

After that it seems to work propertly.

Best, Greta

radupopescu1 commented 2 years ago

Hi all,

For connectedApps, duplicateRules, remoteSiteSettings I had to deploy them "manually". You can find the data you have to deploy in the specific directories in your local env.

I had also to modify the Field-Level_Security for all the deployed custom fields.

After that it seems to work propertly.

Best, Greta

Thanks, Greta! That solved it for me as well.

radupopescu1 commented 2 years ago

Hi all, Everything went smooth until step 32 "Create the Order of Behalf Of Anonymous B2C Commerce Customer Profiles". Here it creates the OOBO Customer in the B2C instance, but when it tries to export it to the CRM the flow fails as follows:

Create Account records using the values that are stored in {!Account}. Variable Values [RecordTypeId=****,AccountSource=Web,Type=Customer - Direct,Name=Anonymous OOBO Customer] Error Occurred: This error occurred when the flow tried to create records: REQUIRED_FIELD_MISSING: Required fields are missing: [Loginid__c].

Can anyone give me a hand in solving the issue?

Thanks

tgatev commented 2 years ago

Hi all,

For connectedApps, duplicateRules, remoteSiteSettings I had to deploy them "manually". You can find the data you have to deploy in the specific directories in your local env.

I had also to modify the Field-Level_Security for all the deployed custom fields.

After that it seems to work propertly.

Best, Greta

Hi Greta,

I made the manual deploys - about the Field-Level_Security - where can I see for field needed security level?

Also I had an error for step 32 - but after manual check The profile was created in both systems. And on step 33: test:use-cases I have alot of failed tests and provided errors:

C:\Users\tg\osho\b2c-crm-sync>npm run crm-sync:test:use-cases

b2c-crm-sync@1.4.1 crm-sync:test:use-cases mocha "test/_use-cases/*/.test.js"

Authenticating a B2C Customer Profile via the OCAPI Shop API -- purging B2C Commerce Customer No. 00009502 (temporary customer record) -- created B2C Commerce Customer No. 00010001 as kip@qa.crmsync.salesforce.com √ does not create a SFDC Contact when b2c-crm-sync is disabled for a storefront (5121ms) -- purging B2C Commerce Customer No. 00010001 (temporary customer record) -- created B2C Commerce Customer No. 00010002 as kip@qa.crmsync.salesforce.com 1) successfully creates a new SFDC Contact when sync-on-login and sync-once is enabled -- purging B2C Commerce Customer No. 00010002 (temporary customer record) -- created B2C Commerce Customer No. 00010003 as kip@qa.crmsync.salesforce.com √ does not create a SFDC Contact when sync-on-login is disabled (5840ms) -- purging B2C Commerce Customer No. 00010003 (temporary customer record) -- created B2C Commerce Customer No. 00010004 as kip@qa.crmsync.salesforce.com 2) allows multiple updates to a SFDC Contact when sync-on-login is enabled and sync-once is disabled -- purging B2C Commerce Customer No. 00010004 (temporary customer record) -- created B2C Commerce Customer No. 00010005 as kip@qa.crmsync.salesforce.com 3) does not allow updates to a SFDC Contact when sync-on-login is enabled and sync-once is enabled -- purging B2C Commerce Customer No. 00010005 (temporary customer record) -- created B2C Commerce Customer No. 00010006 as kip@qa.crmsync.salesforce.com √ does not create a SFDC Contact when sync-customers is disabled (4846ms) -- purging B2C Commerce Customer No. 00010006 (temporary customer record) -- created B2C Commerce Customer No. 00010007 as kip@qa.crmsync.salesforce.com 4) does not allow updates to a SFDC Contact with sync-customers is disabled -- purging B2C Commerce Customer No. 00010007 (temporary customer record)

Registering a new B2C Customer Profile via the OCAPI Shop API -- created B2C Commerce Customer No. 00010008 as zoiw@qa.crmsync.salesforce.com √ does not create a SFDC Contact when b2c-crm-sync is disabled for a storefront (3909ms) -- purging B2C Commerce Customer No. 00010008 (temporary customer record) -- created B2C Commerce Customer No. 00010009 as zoiw@qa.crmsync.salesforce.com 5) successfully creates a new SFDC Contact when b2c-crm-sync is enabled -- purging B2C Commerce Customer No. 00010009 (temporary customer record) -- created B2C Commerce Customer No. 00010010 as zoiw@qa.crmsync.salesforce.com √ does not create a SFDC Contact when sync-customers is disabled (3945ms) -- purging B2C Commerce Customer No. 00010010 (temporary customer record) -- created B2C Commerce Customer No. 00010011 as zoiw@qa.crmsync.salesforce.com 6) allows multiple updates to a SFDC Contact via B2C Commerce profile updates -- purging B2C Commerce Customer No. 00010011 (temporary customer record) -- created B2C Commerce Customer No. 00010012 as zoiw@qa.crmsync.salesforce.com 7) does not allow updates to a SFDC Contact via B2C Commerce when b2c-crm-sync is disabled -- purging B2C Commerce Customer No. 00010012 (temporary customer record) -- created B2C Commerce Customer No. 00010013 as zoiw@qa.crmsync.salesforce.com 8) does not allow updates to SFDC Contact via B2C Commerce when sync-customers is disabled -- purging B2C Commerce Customer No. 00010013 (temporary customer record)

Progressive resolution B2C Commerce Customer creation scenarios via the B2CContactProcess API √ creates a Contact from a B2C CustomerList ID and Email attribute combination (16993ms) √ creates a Contact from a B2C CustomerList ID, Email, and LastName attribute combination (2470ms) √ creates a Contact from a B2C CustomerList ID, Email, LastName, and B2C CustomerId combination (4655ms) √ creates a Contact from a B2C CustomerList ID, Email, LastName, and B2C CustomerNo combination (3362ms) 9) creates a Contact that includes additional non-resolution specific field values 10) creates two separate Contact records using the same Email and LastName spanning different B2C CustomerList IDs √ creates a new contact when multiple Contacts are resolved by Email and LastName without a B2C CustomerList (26511ms)

Progressive resolution of a B2C Commerce Customer error scenarios via the B2CContactProcess API √ returns an error if non-identifiers are used without a B2C CustomerList for resolution via the B2CContactProcess service 11) "after each" hook for "returns an error if non-identifiers are used without a B2C CustomerList for resolution via the B2CContactProcess service"

Progressive resolution of a B2C Commerce Customer via the B2CContactProcess API 12) resolves an existing Contact using LastName and Email -- where the existing Contact does not have a B2C CustomerList 13) "after each" hook for "resolves an existing Contact using LastName and Email -- where the existing Contact does not have a B2C CustomerList"

Progressive resolution of a B2C Commerce Customer update scenarios via the B2CContactProcess API 14) allows direct updates by B2C CustomerList, Email, and LastName 15) "after each" hook for "allows direct updates by B2C CustomerList, Email, and LastName"

Updating an SFDC Contact representing a B2C Commerce Customer Profile from within SFDC -- created B2C Commerce Customer No. 00010014 as cajligkod@qa.crmsync.salesforce.com 16) successfully updates a B2C Commerce Profile with changes initiated from SFDC when integration is enabled -- purging B2C Commerce Customer No. 00010014 (temporary customer record) -- created B2C Commerce Customer No. 00010015 as cajligkod@qa.crmsync.salesforce.com 17) does not process updates to a B2C Commerce Profile with changes initiated from SFDC when integration is disabled

11 passing (10m) 17 failing

1) Authenticating a B2C Customer Profile via the OCAPI Shop API successfully creates a new SFDC Contact when sync-on-login and sync-once is enabled:

   -- expected to see the c_b2ccrm_accountId property in the B2C Commerce response
  + expected - actual

  -false
  +true

  at Object._validateRegisteredUserWithSFDCAttributes [as validateRegisteredUserWithSFDCAttributes] (test\_use-cases\_common\_validateRegisteredUserWithSFDCAttributes.js:19:12)
  at Context.<anonymous> (test\_use-cases\b2c\authentication.live.test.js:172:16)
  at processTicksAndRejections (node:internal/process/task_queues:93:5)

2) Authenticating a B2C Customer Profile via the OCAPI Shop API allows multiple updates to a SFDC Contact when sync-on-login is enabled and sync-once is disabled:

   -- expected to see the c_b2ccrm_accountId property in the B2C Commerce response
  + expected - actual

  -false
  +true

  at Object._validateRegisteredUserWithSFDCAttributes [as validateRegisteredUserWithSFDCAttributes] (test\_use-cases\_common\_validateRegisteredUserWithSFDCAttributes.js:19:12)
  at Context.<anonymous> (test\_use-cases\b2c\authentication.live.test.js:246:16)
  at processTicksAndRejections (node:internal/process/task_queues:93:5)

3) Authenticating a B2C Customer Profile via the OCAPI Shop API does not allow updates to a SFDC Contact when sync-on-login is enabled and sync-once is enabled:

   -- expected to see the c_b2ccrm_accountId property in the B2C Commerce response
  + expected - actual

  -false
  +true

  at Object._validateRegisteredUserWithSFDCAttributes [as validateRegisteredUserWithSFDCAttributes] (test\_use-cases\_common\_validateRegisteredUserWithSFDCAttributes.js:19:12)
  at Context.<anonymous> (test\_use-cases\b2c\authentication.live.test.js:327:16)
  at processTicksAndRejections (node:internal/process/task_queues:93:5)

4) Authenticating a B2C Customer Profile via the OCAPI Shop API does not allow updates to a SFDC Contact with sync-customers is disabled:

   -- expected to see the c_b2ccrm_accountId property in the B2C Commerce response
  + expected - actual

  -false
  +true

  at Object._validateRegisteredUserWithSFDCAttributes [as validateRegisteredUserWithSFDCAttributes] (test\_use-cases\_common\_validateRegisteredUserWithSFDCAttributes.js:19:12)
  at Context.<anonymous> (test\_use-cases\b2c\authentication.live.test.js:419:16)
  at processTicksAndRejections (node:internal/process/task_queues:93:5)

5) Registering a new B2C Customer Profile via the OCAPI Shop API successfully creates a new SFDC Contact when b2c-crm-sync is enabled:

   -- expected to see the c_b2ccrm_accountId property in the B2C Commerce response
  + expected - actual

  -false
  +true

  at Object._validateRegisteredUserWithSFDCAttributes [as validateRegisteredUserWithSFDCAttributes] (test\_use-cases\_common\_validateRegisteredUserWithSFDCAttributes.js:19:12)
  at Context.<anonymous> (test\_use-cases\b2c\customerRegistration.live.test.js:149:16)
  at processTicksAndRejections (node:internal/process/task_queues:93:5)

6) Registering a new B2C Customer Profile via the OCAPI Shop API allows multiple updates to a SFDC Contact via B2C Commerce profile updates: Error: Invalid record ID. Specify valid record ID value at module.exports.Connection._retrieveSingle (node_modules\jsforce\lib\connection.js:624:27) at module.exports.Connection.retrieve (node_modules\jsforce\lib\connection.js:617:12) at module.exports.SObject.retrieve (node_modules\jsforce\lib\sobject.js:78:21) at C:\Users\tg\osho\b2c-crm-sync\lib\apis\sfdc\sObject_retrieve.js:20:37 at new Promise () at Object.module.exports [as retrieve] (lib\apis\sfdc\sObject_retrieve.js:15:47) at Context. (test_use-cases\b2c\customerRegistration.live.test.js:194:55)

7) Registering a new B2C Customer Profile via the OCAPI Shop API does not allow updates to a SFDC Contact via B2C Commerce when b2c-crm-sync is disabled: Error: Invalid record ID. Specify valid record ID value at module.exports.Connection._retrieveSingle (node_modules\jsforce\lib\connection.js:624:27) at module.exports.Connection.retrieve (node_modules\jsforce\lib\connection.js:617:12) at module.exports.SObject.retrieve (node_modules\jsforce\lib\sobject.js:78:21) at C:\Users\tg\osho\b2c-crm-sync\lib\apis\sfdc\sObject_retrieve.js:20:37 at new Promise () at Object.module.exports [as retrieve] (lib\apis\sfdc\sObject_retrieve.js:15:47) at Context. (test_use-cases\b2c\customerRegistration.live.test.js:269:55)

8) Registering a new B2C Customer Profile via the OCAPI Shop API does not allow updates to SFDC Contact via B2C Commerce when sync-customers is disabled: Error: Invalid record ID. Specify valid record ID value at module.exports.Connection._retrieveSingle (node_modules\jsforce\lib\connection.js:624:27) at module.exports.Connection.retrieve (node_modules\jsforce\lib\connection.js:617:12) at module.exports.SObject.retrieve (node_modules\jsforce\lib\sobject.js:78:21) at C:\Users\tg\osho\b2c-crm-sync\lib\apis\sfdc\sObject_retrieve.js:20:37 at new Promise () at Object.module.exports [as retrieve] (lib\apis\sfdc\sObject_retrieve.js:15:47) at Context. (test_use-cases\b2c\customerRegistration.live.test.js:326:55)

9) Progressive resolution B2C Commerce Customer creation scenarios via the B2CContactProcess API creates a Contact that includes additional non-resolution specific field values:

   -- expected the Contact object to have the property Description
  + expected - actual

  -false
  +true

  at C:\Users\tg\osho\b2c-crm-sync\test\_use-cases\_common\_validateContactProperties.js:31:16
  at Array.forEach (<anonymous>)
  at _validateContactProperties (test\_use-cases\_common\_validateContactProperties.js:28:23)
  at Object._executeAndVerifyB2CProcessResult [as executeAndVerifyB2CProcessResult] (test\_use-cases\_common\_executeAndVerifyB2CProcessResult.js:30:5)
  at processTicksAndRejections (node:internal/process/task_queues:93:5)
  at async Context.<anonymous> (test\_use-cases\sfdc\b2cContactProcess.create.live.test.js:248:18)

10) Progressive resolution B2C Commerce Customer creation scenarios via the B2CContactProcess API creates two separate Contact records using the same Email and LastName spanning different B2C CustomerList IDs: AssertionError: -- expected no errors to be included in the processing results: expected [ Array(1) ] to equal null at _validateB2CProcessResult (test_use-cases_common_validateB2CProcessResult.js:25:12) at Object._executeAndVerifyB2CProcessResult [as executeAndVerifyB2CProcessResult] (test_use-cases_common_executeAndVerifyB2CProcessResult.js:27:5) at processTicksAndRejections (node:internal/process/task_queues:93:5) at async Context. (test_use-cases\sfdc\b2cContactProcess.create.live.test.js:288:9)

11) Progressive resolution of a B2C Commerce Customer error scenarios via the B2CContactProcess API "after each" hook for "returns an error if non-identifiers are used without a B2C CustomerList for resolution via the B2CContactProcess service": TypeError: Cannot read property 'Id' of undefined at Object.module.exports [as sfdcB2CCustomerListUpdate] (test_common\processes_sfdcB2CCustomerListUpdate.js:26:39) at runMicrotasks () at processTicksAndRejections (node:internal/process/task_queues:93:5) at async Context. (test_use-cases\sfdc\b2cContactProcess.errors.live.test.js:460:9)

12) Progressive resolution of a B2C Commerce Customer via the B2CContactProcess API resolves an existing Contact using LastName and Email -- where the existing Contact does not have a B2C CustomerList:

   -- expected the Account objects (created and test-data) in this test to have the same Id value
  + expected - actual

  -0013L00000NVeeCQAT
  +0013L00000NVee7QAD

  at Object._compareAccountContactIdentifiers [as compareAccountContactIdentifiers] (test\_use-cases\_common\_compareAccountContactIdentifiers.js:24:12)
  at Context.<anonymous> (test\_use-cases\sfdc\b2cContactProcess.resolve.live.test.js:157:16)
  at runMicrotasks (<anonymous>)
  at processTicksAndRejections (node:internal/process/task_queues:93:5)

13) Progressive resolution of a B2C Commerce Customer via the B2CContactProcess API "after each" hook for "resolves an existing Contact using LastName and Email -- where the existing Contact does not have a B2C CustomerList": TypeError: Cannot read property 'Id' of undefined at Object.module.exports [as sfdcB2CCustomerListUpdate] (test_common\processes_sfdcB2CCustomerListUpdate.js:26:39) at runMicrotasks () at processTicksAndRejections (node:internal/process/task_queues:93:5) at async Context. (test_use-cases\sfdc\b2cContactProcess.resolve.live.test.js:650:9)

14) Progressive resolution of a B2C Commerce Customer update scenarios via the B2CContactProcess API allows direct updates by B2C CustomerList, Email, and LastName: Error: Request failed with status code 400 at createError (node_modules\axios\lib\core\createError.js:16:15) at settle (node_modules\axios\lib\core\settle.js:17:12) at IncomingMessage.handleStreamEnd (node_modules\axios\lib\adapters\http.js:269:11) at IncomingMessage.emit (node:events:341:22) at endReadableNT (node:internal/streams/readable:1294:12) at processTicksAndRejections (node:internal/process/task_queues:80:21)

15) Progressive resolution of a B2C Commerce Customer update scenarios via the B2CContactProcess API "after each" hook for "allows direct updates by B2C CustomerList, Email, and LastName": TypeError: Cannot read property 'Id' of undefined at Object.module.exports [as sfdcB2CCustomerListUpdate] (test_common\processes_sfdcB2CCustomerListUpdate.js:26:39) at runMicrotasks () at processTicksAndRejections (node:internal/process/task_queues:93:5) at async Context. (test_use-cases\sfdc\b2cContactProcess.update.live.test.js:290:9)

16) Updating an SFDC Contact representing a B2C Commerce Customer Profile from within SFDC successfully updates a B2C Commerce Profile with changes initiated from SFDC when integration is enabled:

   -- expected to see the c_b2ccrm_accountId property in the B2C Commerce response
  + expected - actual

  -false
  +true

  at Object._validateRegisteredUserWithSFDCAttributes [as validateRegisteredUserWithSFDCAttributes] (test\_use-cases\_common\_validateRegisteredUserWithSFDCAttributes.js:19:12)
  at Context.<anonymous> (test\_use-cases\sfdc\b2cCustomerProfileUpdate.live.test.js:133:16)

17) Updating an SFDC Contact representing a B2C Commerce Customer Profile from within SFDC does not process updates to a B2C Commerce Profile with changes initiated from SFDC when integration is disabled:

   -- expected to see the c_b2ccrm_accountId property in the B2C Commerce response
  + expected - actual

  -false
  +true

  at Object._validateRegisteredUserWithSFDCAttributes [as validateRegisteredUserWithSFDCAttributes] (test\_use-cases\_common\_validateRegisteredUserWithSFDCAttributes.js:19:12)
  at Context.<anonymous> (test\_use-cases\sfdc\b2cCustomerProfileUpdate.live.test.js:182:16)
  at runMicrotasks (<anonymous>)
  at processTicksAndRejections (node:internal/process/task_queues:93:5)

When we could expect smooth running instalation process?

radupopescu1 commented 2 years ago

Hi @tgatev, How did you handle manually step 32? Thanks

tgatev commented 2 years ago

Hi @radupopescu1, sorry I edit my comment mistake, I did a the run of the command - it dies. But after checking the customeres in sfcc and sfdc there was creted customers from it and described details was set in them.

radupopescu1 commented 2 years ago

Hi @tgatev, For me it only creates the OOBO Customer in SFCC, it doesn't export it in SFDC, it throws the error that I wrote.