---
title: Advanced Logging
slug: quickbooks/advanced-logging
docTags: 
createdAt: 2026-02-12T18:45:57.388Z
---

# Enable Advanced Logging in Breadwinner (Platform Event Based)

Breadwinner’s Advanced Logging automatically captures detailed error information and stores it directly in Salesforce, removing the need for manual log checks. But it does require some custom configuration on your part.

This guide provides step-by-step instructions for enabling and configuring this feature.

:::hint{type="warning"}
This is an advanced feature.

You will need to know how to create custom objects and a flow in Salesforce. Breadwinner cannot configure this for you because every Salesforce organization is different and may process this information differently.
:::

## Prerequisites

Before starting, make sure:

- Breadwinner is already installed
- You have Salesforce Administrator access
- You have a Business plan or higher

:::hint{type="info"}
Note: If these requirements are not met, the Platform Event picklist and Save button will remain disabled.
:::

### Step 1: Create a Platform Event

- Open Setup
- Search for Platform Events
- Click New Platform Event
- Enter:
  • Label: BW Error Log
  • API Name: BW\_Error\_Log
- Publish Behavior: Publish Immediately
- Click Save

:::hint{type="info" indent="2"}
Note: We will use the BW\_Error\_Log name in the examples below, but you can use any object name you wish.
:::

**Create the Following Fields**

:::hint{type="info"}
- All three fields are required and must use the exact API names shown below.
- If any field is missing or named incorrectly, Breadwinner will silently skip publishing the event.
- Detail\_\_c must be a Long Text Area with a minimum length of 32768 characters.
:::



| **Field Name** | **API Name (after save)&#x20;** | **Type**               | **Description**                                                                              |
| -------------- | ------------------------------- | ---------------------- | -------------------------------------------------------------------------------------------- |
| Action         | Action\_\_c                     | Text(255)              | The sync operation or feature that encountered the error                                     |
| Event Type     | Event\_Type\_\_c                | Text(255)              | Severity/type of the event — always ERROR (other severity types are currently not supported) |
| Detail         | Detail\_\_c                     | Long Text Area (32768) | Full error message or exception detail from the operation                                    |

### Step 2: Create and Assign the Permission Set

- Create a Permission Set granting Create access on the BW\_Error\_Log\_\_e Platform Event object, then assign it to all users who use Breadwinner — this includes both Salesforce Administrators and non-admin users.

:::hint{type="info"}
This permission set must be assigned to every Breadwinner user for Advanced Logging to function. If it is missing for any user, error logs will not be captured for actions they perform.
:::

### Step 3: Enable Advanced Logging in Breadwinner

1. In the Breadwinner app, open the Breadwinner tab
2. Navigate to Configuration → General
3. Open the Platform Event dropdown
   • Only Platform Event objects will appear
4. Select the Platform Event you created above (example: BW\_Error\_Log) and click Save.

![](https://api.archbee.com/api/optimize/amOMwpmEgToJSqhaSTxXr/-6LatbtkZq1-Sibpc1osx-20260503-182213.png)

### Step 4: Create a Custom Log Object

This object stores logs generated by Breadwinner events. This can be any name you wish but we suggest something like below.

1. Open Setup (⚙️ gear icon)
2. Search for Object Manager
3. Click Create → Custom Object

**Object Details**

- Label: Error Log
- Plural Label: Error Logs
- API Name: Error\_Log
- Record Name: Log Name
- Data Type: Auto Number
- Format: LOG-\{00000000}
- Check ‘Enable Reports’

**Create the Following Fields**

| **Field Name** | **Type**               |
| -------------- | ---------------------- |
| Action         | Text(255)              |
| Event Type﻿    | Text(255)              |
| Detail         | Long Text Area (32768) |

![](https://api.archbee.com/api/optimize/amOMwpmEgToJSqhaSTxXr/pmrtyPskAqAqtiP2HSP7k-20260504-103718.png)

### Step 5: Create a Platform Event–Triggered Flow

This flow listens to Breadwinner’s platform events and saves them as records.

1. Open Setup (⚙️ gear icon)
2. Search for Flows
3. Click New Flow
4. Select Platform Event–Triggered Flow

![](https://api.archbee.com/api/optimize/amOMwpmEgToJSqhaSTxXr/rHg_unBPejv1V-y6cOrW9-20260503-182513.png)

**Choose the Platform Event**

Platform Event: BW\_Error\_Log\_\_e (created in Step 1)

**Configure the Platform Event**

1. Add a Create Records element
   1. Label: Create BW Error Log Record
   2. How to set record field values: Manually
   3. Create a Record of This Object: Error Log (created in Step 4)
   4. Map the fields as below:

| **Error Log (Error\_Log\_\_c)** | **BW Error Log (BW\_Error\_Log\_\_e)** |   |
| ------------------------------- | -------------------------------------- | - |
| Action\_\_c                     | Action\_\_c                            |   |
| Event\_Type\_\_c                | Event\_Type\_\_c                       |   |
| Detail\_\_c                     | Detail\_\_c                            |   |

![](https://api.archbee.com/api/optimize/amOMwpmEgToJSqhaSTxXr/qy6xbBcgyMGhN_Uy4f1ak-20260503-190040.png)

- Save the flow
  - Flow Name: BW Platform Event Logger
- Click Activate

### Step 6: Test the Setup (Intentional Error Test)

To confirm that Advanced Logging works, we’ll intentionally trigger an error.

**Create an Error Scenario**

1. Open Setup (⚙️ gear icon)
2. Open Object Manager
3. Open QuickBooks Company
4. Create a new field:
   - Field Name: Test
   - Type: Text
   - Mark as Required
5. Save the field

![](https://api.archbee.com/api/optimize/amOMwpmEgToJSqhaSTxXr/Ko13ox-UdZgU06WUFwJfq_image.png)

**Trigger the Error**

1. Go to an Account and click New Invoice.
2. Select 'Create a new QuickBooks Customer', enter a Display Name, and click Save to trigger the error.

![](https://api.archbee.com/api/optimize/amOMwpmEgToJSqhaSTxXr/qxLXzvr9bQA4VtNmDs1r5_image.png)

### Step 7: Validate Advanced Logging

Once the error pop-up appears, the following happens automatically:

✔ A platform event should be published
&#x20;✔ The flow should trigger automatically
&#x20;✔ A new record should be created in Error\_Log\_\_c Object

**What the Log Record Should Contain**

- Action: Operation that failed
- Event Type: ERROR
- Detail: Detailed error message

![](https://api.archbee.com/api/optimize/amOMwpmEgToJSqhaSTxXr/8JxvwFl2ZCPoSfUNUBLMd-20260504-105646.png)

### Step 8: Deleting the Test Field&#x20;

1. Open Setup (⚙️ gear icon)
2. Open Object Manager
3. Open QuickBooks Company
4. Delete the ‘Test’ field that we created earlier on the QuickBooks Company Object.
