CRM ID missing from Web Messaging startChat payload

Trying to push a crmId into the guest profile when initiating a chat via the Web Messaging SDK, but it’s not sticking. The startChat call succeeds, but the subsequent conversation payload has an empty customAttributes object.

We’ve set up the environment like this:

  • genesys-cloud-messaging SDK v2.4.0
  • Node.js 18 backend proxying to Genesys
  • Passing { customAttributes: { crmId: '12345' } } in the config object

Here’s the init code:

const client = new GenesysCloud.Messaging.Client({
 orgId: 'xxx',
 region: 'us-east-1'
});

await client.startChat({
 queueId: 'queue-uuid',
 customAttributes: { crmId: '12345' }
});

The webhook fires with the correct contact ID, but the attributes are wiped. Is this a timing issue with how the SDK merges the payload?