Master data and governance on Salesforce

Customer and supplier master change on Salesforce

Handles changes to bank details, addresses, terms and blocks on customer and supplier records with evidence, a callback, four-eyes approval and write-back to the ERP and the CRM.

SCREENSDATA HANDLERSSALESFORCE · READ IN PLACES01 Change requestS02 VerificationS03 ApprovalS04 Partner confirmationS05 Write-back resultS06 Logdh_supplier_masterSupplier masterAccount (RecordType = Supplier)dh_customer_masterCustomer masterAccountdh_purchasing_contractPurchasing contractContractdh_sales_order_lineSales order lineOrder · OrderItemWRITE BACK TO SALESFORCESupplier master → PATCH sobjects/AccountCustomer master → PATCH sobjects/Accountrows stay in Salesforce · access rules applied at read time · each write acknowledged and logged
The screens of the app, the data handler behind each, and the Salesforce object it reads in place. Writes below the line go through released interfaces with an acknowledgement.
4
objects read in place from Salesforce
catalogue
6
screens on those rows
catalogue
4 days
to production-grade
estimate
2
objects written back
catalogue
0
rows copied to build it
product
What the app reads

The Salesforce objects behind each handler

Objects are read in place through the REST and Bulk APIs, and changes arrive through Change Data Capture events, so a screen shows a record seconds after a seller edits it. The rows stay in Salesforce.

ObjectRead fromFields the app usesFreshness
Supplier masterAccount (RecordType = Supplier)Account.Id (id) · Account.Name (name) · Account.BillingCountry (country) · Account.Status__c (block)live through the API
Customer masterAccountAccount.Id / AccountNumber (id) · Account.Name (name) · Account.BillingCountry (country) · Account.OwnerId (territory) (sales org)live through the API
Purchasing contractContractContract.ContractNumber (number) · Contract.AccountId (vendor) · Contract.EndDate (valid to) · Contract.ContractValue__c (target value)live through the API
Sales order lineOrder · OrderItemOrder.OrderNumber (number) · OrderItem.Id (line) · Order.AccountId (customer) · OrderItem.Product2Id (material)live through the API
The trigger

The start criterion in Salesforce's own fields

In plain words: A requester submits S01 with a new value that differs from the current value.

This app starts from a screen, so the first read happens when the instance opens; the criteria on the arrows use the fields above.

Start

A requester submits S01 with a new value that differs from the current value. The instance then reads its rows from Salesforce through the handlers above.

What the app writes back

Through released interfaces

Writes go through the REST API (update and composite calls) under the integration user's profile and sharing rules. Each call returns the record ID or an error message, and the app records both beside the decision.

ObjectWhat changesInterface
Supplier masterbank details, address, terms or block changed through the vendor change interface; change document number storedPATCH sobjects/Account
Customer masteraddress, terms or block changed through the customer change interface; the CRM account updated within a minutePATCH sobjects/Account
Acknowledged and logged

Each write stores the identifier Salesforce returns beside the decision, the person and the time, so the log answers who changed what, and the reconciliation shows it arrived.

Access and prerequisites

What is in place before the first build

Profiles, roles and sharing rules are mapped to Lima access policies once. A seller who sees their own opportunities in Salesforce sees the same rows in the app.

  • A connected app and integration user with API access and object permissions for the objects the app uses
  • Change Data Capture enabled on the objects that should refresh within seconds
  • Field-level security reviewed for the fields the app writes
  • Sharing model agreed with the sales operations owner
Register the handlers4 objects from the catalog; each shows its rows at once.
Nearby

This app on other systems, and other apps on Salesforce

Customer and supplier master change on

Other apps on Salesforce

Terms on this page

Four-eyes approvalA change takes effect only when a second person, apart from the requester, approves it.
CallbackA phone call to a contact number already on the record, made before a bank change is accepted.
Read in placeThe rows stay in Salesforce; the handler sends the filter and the columns and Salesforce returns the matching rows.
Questions

Does this app copy data out of Salesforce?

The screens read through handlers that leave the rows in Salesforce. History the app needs at scale is landed in the lake by the Backbone, which is the exception by design.

What does Salesforce need to allow?

The prerequisites above: an integration identity with read rights on the objects listed and write rights on the interfaces named, connectivity, and the scopes agreed with the process owner.

Can I run it on another system as well?

Yes. The screens, criteria and roles stay; the handlers are re-bound to the other system's objects, and the app's other system pages show them.

See this app on your data

Bring the process and the systems it touches. In the first session we register the data handlers, draw the levels or the lanes and run the first screen on your live rows.