Salesforce is your digital front-tier core for customer success. You integrate ERP systems such as SAP, webshops such as Amazon or eBay, payment systems such as PayPal, social media such as Facebook or LinkedIn, and legacy data pools such as databases, files, or FTP — to and from your Salesforce — to create a connected, uninterrupted customer experience using a middleware.

It works as designed. But one day you realize that some data is missing — data that was supposedly sent from the middleware. You are not sure which data actually arrived on the Salesforce side, and you ask yourself: "Where can I see the data that was sent by the middleware?" — because the middleware provides a nice monitoring feature to see data leaving the middleware, but nothing about what happened on the Salesforce side.

You have connected an HR and billing system to your Salesforce and need to keep data history for your auditing department — to prove evidence for a government security and auditing check. For such an auditing process, data on one side (the sender / middleware) is not sufficient and does not fulfill the government auditing standard. They request you to provide the other side too — i.e., data that arrived on the Salesforce side. How are you going to provide such logging and tracing of historical data on the Salesforce side?

Since you use a middleware, you have a nice alerting feature for when a message fails while being sent to Salesforce. But one day you realize that some alerts contain strange technical error text such as:

"java.lang.StringIndexOutOfBoundsException: String index out of range: -1
at java.lang.AbstractStringBuilder.substring(AbstractStringBuilder.java:868)"

But you would expect a clear business error telling you something like: "Quote XX cannot be posted due to invalid sales area code." Which of the two error texts would you prefer to see?

Such situations can and will happen one day with your Salesforce integration. When they do — are you going to keep asking the same questions, or are you going to provide a real solution? Read on to see the answer.

How Middleware Integration Works

Let's understand how Salesforce integration via middleware actually works. To connect to Salesforce, the middleware provides a technical connector that invokes and consumes the SOAP or REST API of the Salesforce standard API. It uses the request/response pattern — each call waits until the operation on the Salesforce side finishes. This is the nature of a synchronous API call, which follows the tight-coupling architecture pattern.

Middleware integration architecture diagram
Standard middleware integration using the Salesforce API

With the standard Salesforce API you can perform the basic four so-called CRUD operations — Create, Read, Update, and Delete a sObject. But beyond these four basic operations, no additional capabilities or features are available on the Salesforce side by default.

Consider this example: your integration needs to update a contact when it has changed in your ERP (e.g., SAP). But before the update, you need to check the assignment rule — that the contact has the status 'Released' and is maintained by the sales agent group 'inside sales'. After you update the contact, you want to change its status to 'Synchronized'. This means you need pre- and post-business logic alongside the integration. How can you do that with the standard API alone?

What Is Missing?

Because Salesforce — with all the apps from third-party vendors and your own apps — has become such an important digital front-tier layer for your customer success, you want enterprise-class integration that goes beyond the API-connected approach. For enterprise-class integration, you need more than just API connectivity.

What is missing in standard API integration
Enterprise integration requires far more than simple API connectivity

You might need to add business logic to your simple API integration. You might need monitoring, alerting, and an easy way to handle errors on your Salesforce side. You might face urgent situations where the middleware is not alive and cannot resend the message on time — in this case, it would be a great help if you could modify data on the Salesforce side and trigger a reprocessing. Furthermore, from a technical-architectural standpoint, you also need a loose-coupling pattern to handle mass data transfers, which can only be achieved using asynchronous APIs.

Why a Decoupling Services Layer Is Needed

The additional value-added services mentioned above are needed for enterprise-class integration — but they are not available on the Salesforce platform, and middleware cannot offer them. To provide such services, a decoupling layer is needed on the Salesforce platform that can stage incoming data as messages for processing at any suitable time. Since no such layer previously existed, SKYVVA created one to provide all the functionality described in the diagram below.

SKYVVA service layer architecture
SKYVVA service layer — the decoupling layer that makes enterprise integration possible on Salesforce

The service layer is the technical foundation for all functionality that allows API processing to be executed asynchronously. The asynchronous pattern is a crucial factor in integration architecture because it provides decoupling capability and independence of operation — it is loosely coupled. Loose coupling releases the client immediately from being blocked; the client does not wait until the invoked operation is finished.

Another key benefit is the capability to shift message processing to a later time. Imagine you have a webshop and need to update millions of product prices every day. Doing this in real-time would hit Salesforce governor limits, exhaust available threads, and degrade performance during business hours. In such a situation, it is sufficient to have the updated prices ready in the morning — you can use batch techniques to process packages of 10,000 price updates nightly starting from 10:00 pm. Without a service layer like SKYVVA provides, such a use case simply cannot be handled using only the standard API.

Additional Services You Simply Need

The following six value-added features will help simplify the maintenance and operation of your daily Salesforce integration. Of course, you could say you don't need them because everything works smoothly right now. But don't forget: the day where issues arise may come sooner than you imagine — and in that moment, you will not want to be missing these capabilities.

#1 — Monitoring End-to-End Visibility A second eye on the Salesforce side. Real end-to-end monitoring with 100% view on both sides of the connected platform.
#2 — Reprocessing Emergency Self-Service Independently reprocess failed messages in case the middleware is down and cannot resend. Fix and retry directly from Salesforce.
#3 — Alerting Authentic Business Alerts Real Salesforce-side alerts with original error text — not the middleware's own internal exceptions. Sent directly and in real-time.
#4 — Workflow Rule-Based Processing Define pre-conditions and rules before data gets posted. Block wrong data before it creates inconsistency in Salesforce.
#5 — Business Logic Apex, Flows & More Link Apex classes, Process Builder, or Autolaunched Flows directly to the SKYVVA interface for powerful post-processing.
#6 — Batch & Scheduling Mass Data Optimization Shift mass-volume processing to a nightly window. Protect Salesforce performance during business hours.

Value-Added #1 — Monitoring

To showcase the monitoring value-added feature, consider a real interface example where the connected systems are SAP ERP (sender), SAP PI (middleware), and Salesforce (receiver). The scenario is: a customer's data changes in SAP, and the change should be synchronized immediately back to Salesforce.

SAP-ERP to Salesforce integration flow
Integration flow: SAP ERP → SAP PI → Salesforce
Customer data change in SAP
Customer 301557 address changed in SAP — not yet updated in Salesforce

Now look at the monitoring within the connected systems. With the standard API approach, you can see monitoring on SAP ERP and SAP PI — but on the Salesforce side there is no monitoring capability. The data appears to have been sent successfully (green flag on SAP PI), yet the Salesforce record is not updated. What happened?

Monitoring gap: no visibility on Salesforce side
Both SAP ERP and SAP PI show success — but there is no monitoring on the Salesforce side to show what really happened

Without a native monitoring layer, you have no easy way to find the root cause. You'd need to bring in your skilled Apex developer team to investigate — wasting hours on a problem that a proper monitoring dashboard could surface in minutes.

Now let's look at the same scenario rebuilt with SKYVVA. You use the SKYVVA connector on the SAP PI side and the SKYVVA service layer on the Salesforce side:

SKYVVA integration architecture SKYVVA monitoring showing root cause
SKYVVA monitoring in Salesforce — the root cause is immediately visible with a clear, understandable error message. Find the error in minutes, not hours.

Value-Added #2 — Reprocessing

Let's stay with the example above. You see the red message in SKYVVA monitoring. You understand the business error and need to get the address updated today — because you have to send a quote to that customer before end of business day. You call your SAP ERP colleague to resend the message, but they've already left the office. The resend will happen tomorrow morning — too late for your emergency. What can you do?

With SKYVVA, simply use the reprocessing feature. Open the message, correct the data, save it, and click Reprocess:

SKYVVA reprocessing - edit message SKYVVA reprocessing confirmation SKYVVA reprocessing success
Green status after successful reprocessing — the address update is now reflected in Salesforce
Salesforce record updated after reprocessing
Navigate directly from the message to the business record to confirm the update

There is also a scheduled automatic reprocessing job for errors that don't require manual data correction — for example, transient errors that simply need a retry:

SKYVVA reprocessing scheduler
The message reprocessing job — easily start and stop on demand

Value-Added #3 — Alerting

Monitoring is great, but it requires you to actively check it. Wouldn't it be better to receive an alert by email the moment something fails?

Alert gap in standard integration

SAP ERP has alerting, SAP PI has alerting — but on Salesforce there is no alert from the standard API. The problem with relying solely on middleware alerting is that the middleware may alert its own internal errors — not the real error that happened on Salesforce. For example:

"java.lang.StringIndexOutOfBoundsException: String index out of range: -1"

This has nothing to do with the actual root cause on Salesforce. Middleware-based alerts are:

  • Inaccurate — sometimes simply the wrong alert
  • Not real-time enough — if the middleware is stuck or its performance is degraded
  • Indirect — forwarded through the middleware rather than sent directly from Salesforce
SKYVVA native alerting component

SKYVVA adds a native alerting component to the Salesforce platform. Alerts are sent directly and in real-time from Salesforce — you always see the true, original error text. Alerting can be defined at the integration or interface level, and delivered in four ways:

  • External email
  • Internal email linked to a Salesforce user
  • Salesforce Task
  • Chatter group notification
SKYVVA alert configuration SKYVVA email alert example
Email alert with a direct link to the failed message — one click to open, inspect, and reprocess

Value-Added #4 — Workflow

When using the Salesforce standard API to CRUD a sObject, there is no validation or check before the operation executes — it just runs and modifies the record immediately. In most integration scenarios, you need some validation before modifying your business records; otherwise, you risk data inconsistency.

SKYVVA workflow pre-condition example
SKYVVA workflow with complex expression conditions as a pre-condition check before modifying an Asset

With the SKYVVA workflow, you can also define a chain of processing steps involving multiple interfaces. For example, you might modify both an Account and a Contact in a single API call — the workflow receives the data in one message and passes it through both the Account and Contact interface processing steps. This handles complex operations in a single call.

SKYVVA workflow multi-step chain SKYVVA workflow transaction settings
Transaction-based processing with rollback — if any step fails, all operations within the flow are rolled back, guaranteeing transactional consistency

Value-Added #5 — Business Logic

A message is transferred as a payload from the middleware to Salesforce, and through the standard API you can CRUD a sObject. Sometimes that is enough. But many integration scenarios require business logic that goes beyond simple CRUD operations.

SKYVVA business logic integration

With SKYVVA, you can link an Apex class directly to an interface. When the message arrives at the SKYVVA layer, it executes your Apex logic where you can implement any business requirement. You can also use the full range of Salesforce's declarative tools:

  • Developers: Apex triggers and Apex classes
  • Admins (no-code): Process Builder and Autolaunched Flows

This allows you to add complex business logic to your data integration without pushing all the complexity to the middleware side — where it doesn't belong.

Value-Added #6 — Batch and Scheduling

Middleware-based integration is mostly used in application-to-application scenarios, where no end-user is directly waiting on the other side. For mass and high-volume data integration, batch and background processing is the right approach to optimize resources and performance.

Batch vs real-time processing scenarios
Scenario 1 (real-time): user checks product availability in SAP — synchronous API makes sense. Scenario 2 (batch): nightly price update of millions of records — real-time would break performance.

The problem with the standard API is that it is not possible to delay processing or push it to run as a background job at a later time. SKYVVA adds a scheduler and job processing component to Salesforce:

SKYVVA scheduling configuration SKYVVA schedule settings

You can define the schedule in a flexible way: run every 15 minutes, run once at a specific time (e.g., 1:00 am), or run every hour within a window (e.g., 10:00 pm to 4:00 am). You can also select which days of the week or month to exclude from processing.

SKYVVA available schedules
All available schedules are generated automatically — start and stop any schedule with a single click

With batch processing and scheduling, you can push packages of 10,000 messages nightly from 10:00 pm to 6:00 am, every hour. This distributes the load and keeps Salesforce performing smoothly for end-users during business hours.

Summary

All six value-added features raise your integration quality to the next level, giving you the operational instruments to ease and simplify daily maintenance. This approach goes far beyond the simple API integration where only pure connectivity is available. When you want enterprise-class integration, the middleware-only approach is definitively not enough.

End-to-end monitoring and alerting increase quality and dramatically improve error handling and daily operations. Message reprocessing gives you a powerful tool to handle emergency cases where the sender system is temporarily unavailable. Workflow and business logic overcome the simplicity and limitations of basic CRUD operations, enabling complex business scenarios without putting logic in the wrong place. And batch and scheduling decouples the sender from the receiver, creating less dependency and optimizing performance for mass-volume data processing.

See the difference. Enhance your middleware integration with SKYVVA value-added features. Request a demo or trial to experience the full platform firsthand.

Ready for Enterprise-Grade Integration?

Request a demo and see how SKYVVA's native Salesforce integration layer transforms your integration landscape.

Request Demo →
← Back to Blog