MARKETPLACE
PLUGINS
BUSINESS DATA GRID
Business Data Grid logo

Business Data Grid

Published September 2026
   •    Updated this month

Plugin details

Build editable business tables using native Bubble records and field selectors. Configure typed columns, keep important fields pinned, select records, search and sort loaded rows, and load authorized pages through your own workflows.
Each edit keeps its stable record identity. Your workflow receives the edited Bubble Thing and typed proposed value, decides whether the change is permitted, saves it, and accepts or rejects the exact edit request. Rejected edits restore the prior value.

• Up to 10,000 loaded records and 100 columns
• Text, integer, decimal, boolean, date-only and email columns
• Native Thing/list/field selectors; no handwritten JSON for normal setup
• Virtualized rows, keyboard navigation and pinned columns
• Native selected records for authorized bulk workflows
• Request/supply/fail paging actions with stale-response protection
• Visible loading, validation, save and recovery feedback
• Browser processing with no extra hosted-service bill

The complete Bubble demo shows persisted text, zero and false, rejected saves, page replacement/append and recovery.

Limits: 10,000 characters per cell; 20 million total loaded cell characters; unique text IDs up to 256 characters. Search and sort apply to loaded records only. Nested Things/lists and arbitrary HTML cell renderers are unsupported. Dates are UTC date-only. Precise decimal output is available as text; number output is limited to safe lossless conversion. Your app owns authorization, privacy, persistence, source cursors and concurrent-write rules.

$249

One time  •  Or  $19/mo

stars   •   0 ratings
0 installs  
This plugin does not collect or track your personal data.

Platform

Web

Contributor details

Bingo Apps logo
Bingo Apps
Joined 2024   •   12 Plugins
View contributor profile

Instructions

WORKING DEMO https://bingo-grid-demo-2026.bubbleapps.io/version-test

INSPECT THE BUBBLE EDITOR
https://bubble.io/page?id=bingo-grid-demo-2026&tab=Workflow&name=index

# Business Data Grid setup

Launch price: $19/month or $249 once per Bubble application. Browser element; no additional Bingo plugin or external service required.

## Bind your records

1. Install Business Data Grid and place a Business Grid element, approximately 900 × 620 pixels.
2. Set Record data type to your datatype, Records to an authorized search/list, and Unique ID field to Bubble's unique id. Turn on Hide synthetic example for a customer-facing page.
3. Configure application privacy rules. The plugin displays what Bubble supplies; it does not authorize access or database writes.
4. Create The grid is ready workflow. Add an Add or update column action for each field. Choose native datatype/field, a unique label, value type, width, editing permission and optional pinned/required settings.

The example uses GridItem fields name (text), quantity (number) and active (yes/no), displayed as Product, Quantity and Active. Its records are visible only to their creator. Load demo records creates a small inventory for the current visitor.

## Save an edit

Create An edit is requested. Edited record is the actual native Bubble Thing. Add conditional Make changes to a thing actions:

| Only when Edited label is | Field | Value |
| --- | --- | --- |
| Product | name | Grid's Proposed text |
| Quantity | quantity | Grid's Proposed number |
| Active | active | Grid's Proposed boolean |

Authorize the change. After persistence succeeds, run Accept edit with the exact Edit id as the final workflow step. Another queued edit can become active immediately afterward. Reject a change with Reject edit, passing that ID and a message instead of saving. Never acknowledge a failed database/API save.

The demo rejects proposed Product values equal to REJECT using a separate workflow. Try renaming a product, setting Quantity to 0 and Active to false, then reloading. Enter REJECT to restore the previous value. Enter or leaving the input commits it; Escape discards an uncommitted draft. Malformed/required-empty input is rejected before persistence.

Proposed is empty distinguishes empty values from zero/false. Use Proposed text for high-precision decimals stored as text; Proposed number is available only for safe lossless numeric conversion. Date columns are UTC date-only and discard time-of-day. Application transactions and competing database writers require your own controls.

## Select, search and navigate

Row checkboxes expose Selected records (your native datatype list) and Selected ids for authorized workflows. Selection changes signals an update. Clear selection is both a built-in control and native element action.

Search and Set search filter loaded rows; header buttons sort them. Remote searches belong in your app. Scroll to record focuses a loaded stable ID. Arrows, Page Up/Down and Ctrl/Command + Home/End navigate; Enter edits and Escape cancels the draft. Pinned columns remain visible when moving horizontally.

## Load pages and recover

1. Run Request page with your source cursor.
2. On A page is requested, fetch an authorized batch using Page cursor.
3. Run Supply page with the native datatype/list and exact Page request id. Append records is no for replacement, yes for additional rows. Repeated IDs update the existing row.
4. Set Next cursor and More pages available to expose Load more records.
5. On failure, run Fail page with the matching ID and message. Existing rows/cursor remain, loading ends, and you can retry when the source recovers.

The demo's first page contains three rows; Load more records appends the rest. Test page failure displays an explicit failure. Restore records runs Refresh records, resetting the bound dataset and paging. Both page searches use the same name/Created Date order for these fixed fixtures. Production pagination needs stable ordering and a cursor/snapshot policy appropriate to concurrent changes.

Stale/duplicate page responses are ignored. Finish pending saves before requesting pages. Refresh records, Clear columns, reconfiguration and changed record identity sets invalidate old edit tokens. To rebuild a layout, Clear columns and run the desired Add or update column actions again. Same-record source changes during an active save are deferred until acknowledgment.

## Limits and support

Maximum 10,000 loaded rows, 100 columns, 10,000 characters per cell and 20 million characters across loaded cells. Supply bounded lists. Old pages are not automatically evicted. In Bubble, the 620-pixel example rendered only 13 of 10,000 synthetic rows. Scalar text, numbers, booleans and dates are supported; nested Things/lists, arbitrary HTML and executable formulas are not. Column widths: 80–600 pixels. IDs: unique nonempty text up to 256 characters. Cursors: up to 4,096 characters.

Use Error code/message, Status, Loading and Pending count for extra feedback. A stuck edit usually needs its save workflow or exact acknowledgment ID checked. A loading page needs Supply page or Fail page. Reload when Bubble announces that the test page has changed. Qualification covers Bubble editor/runtime; separate browser/device certification is not claimed.

For support, include plugin version, action/event, field configuration, error code and a small synthetic reproduction. Do not send credentials or private production data. Preserve public interface IDs and your previous plugin version; test upgrades in development before promoting the app.

Types

This plugin can be found under the following types:
Element   •   Event   •   Action

Categories

This plugin can be found under the following categories:

Resources

Support contact
Documentation
Tutorial

Rating and reviews

No reviews yet

This plugin has not received any reviews.
Bubble