Troubleshooting

The following troubleshooting tips might help you to resolve issues with this Micro-Integration. If problems persist, contact Solace.

Testing the Target Micro-Integration

When you use the Micro-Integration for Salesforce as a target to publish Platform Events from Solace to Salesforce, don't rely solely on Salesforce flows triggering to verify that the Micro-Integration is working. If a flow doesn't trigger, you won't know whether the problem is in the Micro-Integration or in the flow configuration.

Instead, deploy a Salesforce Source Micro-Integration subscribed to the same Platform Event topic you are publishing to. When you publish a message through the Target Micro-Integration, the Source Micro-Integration receives it on the Solace side. This approach:

  • Confirms that the message was received and accepted by Salesforce (not just sent by Solace)
  • Confirms that the payload matches the Platform Event schema
  • Eliminates Salesforce flow configuration as a variable in the test
  • Is easier to verify than inspecting internal Salesforce flow execution logs

Don't attempt to debug any issues with Salesforce flows until you have confirmed that the round-trip works (Target Micro-IntegrationSalesforce → Source Micro-IntegrationSolace).

Failed to Create Call Credentials

If you see the following error in the logs:

Failed to instantiate [com.solace.connector.core.io.sfdc.SFDCPubSub]:
Factory method 'sfdcPubSub' threw exception with message: Failed to create call credentials

Check for the following issues:

  • The Client ID or Client Secret is incorrect. Validate using the curl token request described in Salesforce OAuth 2.0 Client Credentials.
  • The login-url points to the Setup URL (for example, my.salesforce-setup.com) instead of the base login URL.
  • The Client Credentials Flow is not enabled on the connected app in Salesforce.
  • The Run As user is not configured on the Client Credentials OAuth Policy.
  • Required OAuth scopes are missing. Try enabling all scopes to rule this out.
Salesforce REST API Error Codes

When the Micro-Integration logs contain HTTP error responses from Salesforce, refer to the Salesforce REST API Error Codes reference. The following table lists some common codes in this context:

HTTP Status Meaning Common Cause in Micro-Integration Context

400 Bad Request

Malformed request or schema mismatch

Payload does not match the Platform Event schema. See Platform Event Schema and Payload Format

401 Unauthorized

Invalid or expired token

Credentials are wrong, scopes are insufficient, or token has expired.

403 Forbidden

Insufficient permissions

The Run As user does not have permission to publish or subscribe to the event.

404 Not Found

Resource not found

The Platform Event API name is incorrect. Ensure the __e suffix is present.

429 Too Many Requests

Rate limit exceeded

Publishing volume exceeds Salesforce Platform Event limits.

500 Internal Server Error

Salesforce-side error

Check Salesforce service status.

Micro-Integration Stops Working After Running Correctly

If a previously working Micro-Integration suddenly stops without any configuration change:

  • Check Salesforce service status at status.salesforce.com for any active incidents or maintenance windows affecting your instance or region.
  • Verify that the connected app in Salesforce has not been modified. For example, check whether the OAuth policy has been disabled or the Run As user deactivated.
  • For SOAP specifically: if the Salesforce account password was rotated, both the password and the security token will have changed. Update the Micro-Integration credentials in application.yml. This is one of the primary reasons SOAP is not recommended for long-running Micro-Integrations.
Messages Published to Salesforce Are Not Triggering Flows

If the Micro-Integration is running without errors but Salesforce flows are not being triggered, perform the following steps:

  1. Confirm that the Platform Event is actually reaching Salesforce by deploying a Source Micro-Integration subscribed to the same event (see Testing the Target Micro-Integration). This separates the Micro-Integration layer from the Salesforce flow layer.

  2. If the Source Micro-Integration does receive the event, the Micro-Integration is working correctly—the issue is in the Salesforce flow configuration.

  3. Verify whether the Salesforce flow:

    • has the correct trigger event name
    • has entry conditions that may be filtering out the event
    • is activated