Oracle VBCS vs Custom Pages vs Embedded Analytics for ERP UI Extensions

Type: ERP Integration System: Oracle Visual Builder Studio (26.01) / VBCS (26.01) Confidence: 0.87 Sources: 7 Verified: 2026-03-09 Freshness: 2026-03-09

TL;DR

System Profile

Oracle provides two deployment modes for Visual Builder that share the same low-code development environment but differ significantly in capability, licensing, and integration scope. Visual Builder Studio (VBS) is embedded within Oracle Fusion Cloud Applications and included in the SaaS license. Standalone Visual Builder Cloud Service (VBCS), part of Oracle Integration Cloud (OIC), runs on a separate OCI tenancy and can connect to external databases, custom business objects, and secured third-party REST services. This card covers both modes and when to choose each, alongside Page Composer, Application Composer, and embedded analytics (OTBI/BIP) as alternative extension approaches. [src1, src3, src4]

PropertyValue
VendorOracle
SystemOracle Visual Builder Studio 26.01 (embedded) / VBCS 26.01 (standalone)
API SurfaceREST (Fusion Service Catalog, external REST endpoints)
Current Release26.01 (January 2026)
Editions CoveredFusion Apps SaaS (all editions for embedded VBS); OIC Standard/Enterprise (for standalone VBCS)
DeploymentCloud
API DocsVisual Builder Studio Docs
StatusGA

API Surfaces & Capabilities

This section maps the UI extension tools available for Oracle Fusion Cloud, not traditional API surfaces. Each tool addresses a different extension need. [src1, src3, src4]

Extension ToolTypeBest ForCan Modify Logic?External Data?Custom DB?License
VBS (embedded)Low-code IDENew App UIs, page extensions, layout rulesYes (action chains, JS)Unsecured REST onlyNoIncluded with Fusion
Standalone VBCSLow-code IDEStandalone apps, external-facing portalsYes (action chains, JS)Any REST (secured)Yes (ATP/DBCS)Requires OIC license
Page ComposerDeclarative configShow/hide/reorder fields, add tabsNoNoNoIncluded with Fusion
Application ComposerDeclarative configCustom objects, simple fields, groovy scriptsLimited (Groovy)NoNoIncluded with Fusion
OTBIEmbedded analyticsOperational reports embedded in Fusion pagesNoNoNoIncluded with Fusion
BIP (BI Publisher)Report generationPixel-perfect reports, PDF/Excel outputNoNoNoIncluded with Fusion
Oracle APEXFull-stack low-codeCustom apps, EBS migration, complex logicYes (PL/SQL)YesYes (ADB/ATP)Separate OCI license

Rate Limits & Quotas

Per-Instance Limits

Limit TypeValueApplies ToNotes
VB instances per region200OCI tenancyRaise via service limit increase request
Concurrent users per VBS workspaceNo hard limitEmbedded VBSBound by Fusion App user license count
Fusion REST API callsSubject to Fusion API quotasAll VBS/VBCS appsExtensions share the org's Fusion API quota pool
Action chain timeout300 secondsVBS/VBCSLong-running processes should use ESS jobs
Max file upload size50 MBVBS/VBCS file componentsLarger files require OCI Object Storage
Custom business objectsUnlimited (standalone) / None (embedded)VBCS / VBSEmbedded VBS cannot create business objects

[src5]

Rolling / Daily Limits

Limit TypeValueWindowNotes
Fusion REST API callsShared with org quota24h rollingNo separate quota for VBS-originated calls
ESS job submissions50 concurrent per podPer podExtensions submitting ESS jobs share pod-level limits
OIC message packs (standalone)Based on OIC license tierMonthlyStandalone VBCS REST calls consume OIC message credits
Git operations (VBS)No documented limitPer projectBuilt-in Git; external Git repos also supported

[src5, src6]

Authentication

ScenarioAuth MethodToken LifetimeRefresh?Notes
VBS extension accessing Fusion BOsIdentity propagation (SSO)Session-scopedAutoNo configuration needed
VBS calling unsecured external RESTNone / API key in headerN/AN/AOnly unsecured endpoints unless IAM configured
Standalone VBCS to Fusion RESTOAuth 2.0 (Authorization Code)Access: 1hYesRequires Connected App setup in Fusion IAM
Standalone VBCS to external RESTOAuth 2.0 / Basic / API KeyVariesVariesFull auth flexibility on standalone instances
VBCS to OCI servicesOCI IAM / Resource PrincipalSession-scopedAutoFor Oracle Functions, Object Storage, ATP

[src4, src7]

Authentication Gotchas

Constraints

Integration Pattern Decision Tree

START — User needs to extend Oracle Fusion Cloud ERP UI
|
+-- What type of extension?
|   |
|   +-- Modify existing Redwood page (add/remove/reorder fields)?
|   |   |
|   |   +-- Simple field show/hide/reorder only?
|   |   |   +-- YES -> Page Composer (no code, instant)
|   |   |   +-- NO (need conditional logic, action chains) -> VBS Page Extension
|   |   |
|   |   +-- Need to add new custom fields to data model?
|   |       +-- YES -> Application Composer (custom fields + Groovy)
|   |       +-- Then use VBS to control UI rendering
|   |
|   +-- Create entirely new application page?
|   |   |
|   |   +-- Internal Fusion users only?
|   |   |   +-- Data from Fusion BOs only?
|   |   |   |   +-- YES -> VBS App UI (embedded, free)
|   |   |   |   +-- NO -> Need custom DB?
|   |   |   |       +-- YES -> Standalone VBCS + ATP
|   |   |   |       +-- NO (external unsecured REST) -> VBS App UI
|   |   |   +-- Need secured external REST?
|   |   |       +-- Configure Fusion IAM for VBS, or use Standalone VBCS
|   |   |
|   |   +-- External users (partners, suppliers, customers)?
|   |       +-- YES -> Standalone VBCS (separate URL, own auth)
|   |       +-- Consider Oracle APEX for complex external portals
|   |
|   +-- Embed analytics/reports in Fusion pages?
|   |   |
|   |   +-- Operational reporting (real-time Fusion data)?
|   |   |   +-- OTBI (embedded, included in license)
|   |   |
|   |   +-- Pixel-perfect output (PDF, Excel)?
|   |   |   +-- BIP (BI Publisher)
|   |   |
|   |   +-- Advanced analytics (ML, cross-source)?
|   |       +-- Oracle Analytics Cloud (separate license)
|   |
|   +-- Need complex custom logic + database + full-stack?
|       +-- Oracle APEX (PL/SQL, full DB access)
|       +-- ADF is deprecated for new development
|
+-- Licensing check
    +-- Embedded VBS -> Included in Fusion Apps license
    +-- Standalone VBCS -> Requires Oracle Integration Cloud license
    +-- APEX -> Requires OCI/ATP license
    +-- OAC -> Requires separate Oracle Analytics Cloud license

Quick Reference

Extension NeedRecommended ToolAlternativeLicensingComplexity
Show/hide fields based on rolePage ComposerVBS Layout ExtensionIncludedLow
Conditional field rendering with business rulesVBS (Dynamic Forms + Rule Sets)Application Composer (limited)IncludedMedium
New multi-step workflow page (internal)VBS App UIAPEXIncluded / SeparateMedium-High
Custom data entry with custom DB tablesStandalone VBCS + ATPAPEXOIC licenseHigh
External-facing portalStandalone VBCSAPEXOIC licenseHigh
Embedded operational reportOTBIOACIncluded / SeparateLow-Medium
PDF/Excel document generationBIP (BI Publisher)--IncludedMedium
Dashboard with cross-source dataOracle Analytics CloudOTBI (limited)SeparateMedium-High
Custom object with simple formApplication ComposerVBS App UIIncludedLow
ESS job monitoring dashboardVBS App UI (poll ESS REST)Custom OCI appIncludedMedium
Mass data upload/import UIVBS App UI + FBDI RESTStandalone VBCS + OICIncludedMedium-High

Step-by-Step Integration Guide

1. Determine extension type and tool selection

Audit the business requirement against the decision tree above. Key questions: Does the extension need custom database storage? Does it serve external users? Does it need secured external REST calls? If all answers are "no," VBS (embedded) is the correct choice and requires no additional licensing. [src3, src4]

Verify: Check your Oracle Fusion Cloud subscription includes Visual Builder Studio access -> navigate to Developer Tools in Fusion navigator.

2. Create a VBS workspace and project

In Oracle Fusion, navigate to Configuration -> Visual Builder Studio. Create a new workspace, select the target Fusion environment, and create an extension project. VBS automatically provisions a Git repository for version control. [src2]

Fusion Navigator -> Tools -> Visual Builder Studio
-> Create Workspace -> Select Environment
-> Create Extension Project -> Select target module (ERP, HCM, CX)

Verify: Workspace dashboard shows connected environment with green status indicator.

3. Create an App UI or Page Extension

For a new page: create an App UI within the extension. For modifying an existing page: create a Page Extension targeting the specific delivered page. Use Dynamic Forms and Dynamic Containers for conditional content. [src1]

Extension Project -> + New -> App UI (for new page)
                           -> Page Extension (to modify existing)
-> Drag components (Forms, Tables, Containers)
-> Bind to Fusion Business Objects via Service Catalog
-> Configure rule sets for conditional display

Verify: Preview the extension in the VBS design-time preview -> confirm data binding shows live Fusion data.

4. Configure REST service connections

For Fusion Business Objects: use the built-in Service Catalog (no configuration needed). For external REST APIs (unsecured): add a Service Connection with the endpoint URL. For external REST APIs (secured): configure the connection through Fusion IAM domain with appropriate OAuth scopes. [src7]

App UI -> Services tab -> + Service Connection
-> From Service Catalog (Fusion BOs) — auto-discovered
-> From Endpoint URL (external REST) — paste URL, test
-> Authentication: None (unsecured) or configure in IAM

Verify: Test the service connection from the VBS Services tab -> should return HTTP 200 with sample data.

5. Implement action chains and business logic

Use action chains for event-driven logic: button clicks, page load, value changes. Action chains support REST calls, navigation, variable assignment, conditional branching, and JavaScript functions. [src1, src2]

Verify: Run the action chain in design-time debugger -> step through each action and confirm variable assignments.

6. Deploy the extension to sandbox and production

VBS uses a sandbox model: deploy to a sandbox first for testing, then publish to production. The CI/CD pipeline in VBS supports automated packaging and deployment. [src2]

VBS -> Build -> Package Extension
    -> Deploy to Sandbox (test with sandbox users)
    -> Verify in Fusion UI (sandbox mode)
    -> Publish to Production
    -> Monitor via VBS deployment history

Verify: Access the target Fusion page in sandbox mode -> confirm extension is active and functional.

Code Examples

JavaScript: Action Chain — Call Fusion REST API and Process Response

// Input:  Fusion Business Object name, filter criteria
// Output: Filtered records displayed in a table component

// In a VBS Action Chain JavaScript function step:
define([], function () {
  'use strict';
  var PageModule = function PageModule() {};

  PageModule.prototype.filterPurchaseOrders = function (status, dateFrom) {
    var filter = 'Status eq "' + status + '"';
    if (dateFrom) {
      filter += ' and CreationDate ge "' + dateFrom + '"';
    }
    return filter;
  };

  return PageModule;
});

cURL: Test Fusion REST API from Standalone VBCS

# Input:  OAuth access token, Fusion instance URL
# Output: List of purchase orders in JSON format

# 1. Obtain OAuth token (standalone VBCS to Fusion)
curl -X POST "https://{fusion-instance}/oauth2/v1/token" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=authorization_code&code={auth_code}&client_id={client_id}&client_secret={secret}&redirect_uri={redirect}"

# 2. Query Purchase Orders via Fusion REST API
curl -X GET "https://{fusion-instance}/fscmRestApi/resources/11.13.18.05/purchaseOrders?limit=25&onlyData=true" \
  -H "Authorization: Bearer {access_token}" \
  -H "Content-Type: application/json"

# Expected: JSON array of PO records with OrderNumber, Status, Supplier

Data Mapping

Extension Tool Capability Matrix

CapabilityPage ComposerApp ComposerVBS (Embedded)VBCS (Standalone)APEX
Modify delivered page layoutYesLimitedYesNo (separate app)No
Add custom fields to BOsNoYesNo (use App Composer)Yes (custom BOs)Yes
Custom business logicNoGroovy scriptsAction chains + JSAction chains + JSPL/SQL
Redwood UX complianceAutomaticAutomaticTemplate-basedTemplate-basedManual
External REST integrationNoNoUnsecured onlyFull (any auth)Full
Custom database tablesNoNoNoYes (ATP/DBCS)Yes
Version control (Git)NoNoBuilt-inManual setupNo
CI/CD pipelineNoNoBuilt-inManual setupNo
Upgrade safetyHighHighMediumHigh (separate)High

Data Type Gotchas

Error Handling & Failure Points

Common Error Scenarios

ErrorMeaningCauseResolution
401 UnauthorizedToken expired or invalidOAuth token expired on standalone VBCSRefresh token; check Connected App configuration in IAM
403 ForbiddenInsufficient privilegesFusion data security policy blocks the userVerify role/data security for the integration user
404 Not FoundBO endpoint does not existWrong API version or BO not exposedCheck Fusion REST API version; verify BO in Service Catalog
500 Internal Server ErrorFusion server errorMalformed REST payload or Fusion bugCheck payload format; retry; file SR with Oracle
Extension not visibleNot deployed to correct sandboxSandbox mismatch or deployment failureVerify sandbox assignment; redeploy from VBS
CORS errorCross-origin request blockedStandalone VBCS calling Fusion without CORS configConfigure CORS in Fusion IAM; use server-side proxy

[src1, src7]

Failure Points in Production

Anti-Patterns

Wrong: Building a standalone VBCS app when embedded VBS suffices

// BAD — Creates licensing cost, deployment complexity, and SSO configuration overhead
// when the requirement is simply a new internal Fusion page
Requirement: "Add a custom PO approval dashboard for internal procurement team"
Approach: Deploy standalone VBCS on OIC, configure OAuth, build separate app
Result: $5K-15K/year additional OIC licensing, weeks of IAM configuration

Correct: Use VBS App UI for internal-only pages

// GOOD — No additional licensing, inherits Fusion SSO, follows Redwood UX
Requirement: "Add a custom PO approval dashboard for internal procurement team"
Approach: Create VBS App UI, bind to PO Business Objects via Service Catalog
Result: Included in existing license, deployed in hours, consistent UX

Wrong: Using Page Composer for complex conditional logic

// BAD — Page Composer can only show/hide fields based on simple conditions
// It cannot implement multi-step workflows or call external services
Requirement: "Show different form sections based on PO amount and supplier risk score"
Approach: Use Page Composer to create conditional visibility rules
Result: Partial solution at best; no way to call risk API or chain conditions

Correct: Use VBS Dynamic Forms with Rule Sets

// GOOD — Full conditional logic with action chains and rule sets
Requirement: "Show different form sections based on PO amount and supplier risk score"
Approach: VBS Dynamic Form with rule sets; action chain calls risk API; conditional containers
Result: Full business logic support, maintainable, version-controlled

Wrong: Hardcoding Fusion REST API URLs in extensions

// BAD — URL changes with Fusion updates and environment differences
var poUrl = "https://fa-prod.oraclecloud.com/fscmRestApi/resources/11.13.18.05/purchaseOrders";

Correct: Use Service Catalog bindings in VBS

// GOOD — Service Catalog abstracts the URL and handles versioning
// In VBS, bind to Service Catalog BO "purchaseOrders"
// VBS resolves the correct endpoint at runtime
// No hardcoded URLs, works across dev/test/prod environments

Common Pitfalls

Diagnostic Commands

# Check VBS workspace status and connected environments
# Navigate to: Fusion -> Tools -> Visual Builder Studio -> Environments tab
# Verify: Environment shows "Connected" with green indicator

# Test Fusion REST API availability (from standalone VBCS or external)
curl -s -o /dev/null -w "%{http_code}" \
  "https://{fusion-instance}/fscmRestApi/resources/11.13.18.05/purchaseOrders?limit=1" \
  -H "Authorization: Bearer {token}"
# Expected: 200

# Verify Service Catalog BO availability in VBS
# In VBS App UI: Services tab -> Service Catalog -> Search for BO name
# Verify: BO appears with available operations (GET, POST, PATCH, DELETE)

# Check OIC message consumption (standalone VBCS)
# Navigate to: OCI Console -> Integration -> Monitoring -> Message Usage
# Verify: Usage is within licensed message pack limit

Version History & Compatibility

ReleaseDateStatusKey ChangesNotes
26.012026-01CurrentMaintenance release — Redwood rollout fixes, security updatesNo new extension features
25.102025-07SupportedEnhanced Dynamic Container support, improved rule setsMajor extension framework update
25.072025-04SupportedVBS performance improvements, new Redwood components--
25.042025-01SupportedRedwood page extension GA for ERP modulesFirst broad ERP Redwood extension support
22B2022-07LegacyFirst VBS support for extending VBCS (JET) pagesLimited to select pages

[src6]

When to Use / When Not to Use

Use WhenDon't Use WhenUse Instead
Need to modify existing Redwood pages (field visibility, layout)Only need to add a custom field to a BOApplication Composer
Building a new internal-facing page with Fusion data onlyNeed external user access (partners, suppliers)Standalone VBCS or APEX
Need conditional UI logic with action chainsOnly need a simple operational reportOTBI
Need Git version control and CI/CD for UI extensionsBuilding a data-heavy analytical dashboardOracle Analytics Cloud
Want Redwood UX consistency across custom and delivered pagesNeed custom database tables for non-Fusion dataStandalone VBCS + ATP or APEX
Need to embed VBCS page within a Fusion page tabNeed to call secured third-party REST APIs without IAM configStandalone VBCS

Cross-System Comparison

CapabilityVBS (Embedded)Standalone VBCSPage ComposerApp ComposerAPEX
Custom UI pagesYes (App UI)YesNoNoYes
Modify delivered pagesYes (Page/Layout Extension)NoYes (limited)LimitedNo
Custom business logicAction chains + JSAction chains + JSNoGroovyPL/SQL
External REST APIsUnsecured onlyAny (secured)NoNoYes
Custom databaseNoYes (ATP/DBCS)NoNoYes
Git/CI/CDBuilt-inManualNoNoNo
Redwood UXAutomaticTemplatesAutomaticAutomaticManual
LicensingIncludedOIC licenseIncludedIncludedOCI/ATP license
Upgrade riskMediumLow (separate)LowLowLow
Learning curveMediumMediumLowLowMedium-High
External user supportNoYesNoNoYes
Mobile supportPWA (Redwood)PWA + nativeNoNoPWA

Important Caveats

Related Units