Proof Of Concept
8 minutes

Softjourn recently completed a proof of concept of a purchase control application utilizing a Decision Control API. In this example, the customer is an on-demand car concierge service that picks up cars at its clients' homes or workplaces and arranges for detailing or minor maintenance services such as oil changes.

The concierge service's clients register online, purchase the services they want and check out using Stripe payment technology. When the service receives an order, it assigns an employee to fulfill it. That fulfiller is responsible for picking a car up, taking it to a service provider, paying for service with a prepaid card and returning the car to the client when the work is completed.


Prepaid is the world’s most versatile form of payment. The card, used mostly for low-value transactions, has a defined value stored on it.  A decision control system must be able to quickly scrutinize each purchase, match it to the original order, and prevent it from going through if it exceeds an authorized limit or is not made from an approved merchant.

The Need

What if a fulfiller is new to the company, what range of purchases do you authorize him with to start? Should he be limited to making purchases only within a particular location, or will he be working limited hours? Suppose a fulfiller accidentally orders the wrong service—perhaps a more expensive service than the customer paid for? How can this type of situation be prevented? Or how can a fulfiller be prevented from going to the wrong retailer to make a purchase, or to the right retailer, but in the wrong location?

The Solution

To enhance the concierge company's ability to control its fulfillers' purchases, Softjourn developed a customized purchase control application that uses decision control system APIs. In the cloud-based environment, the app creates an additional level of control for card transactions based on rules designed to meet the company's business requirements. For example, limits can be set such that a fulfiller can only make purchases on a particular day, during a particular time period and of a certain size. In addition, with the aid of geolocation technology, it is possible to limit a fulfiller to retailers in particular locations. Managers can modify the rule set for each fulfiller at any time.

Alerting the Fulfiller

Going back to our scenario, when a fulfiller accidentally purchases a $45 car wash instead of the $35 car wash the customer paid for, he will get a message alerting him to the mismatch between the purchase price authorized by the client and the price he paid—with a link to the full transaction.

This real-time message provides the information needed to make the necessary purchase adjustments.

Fine Tuning the Timing

To increase control, the application can be configured to limit the amount of time a fulfiller is given to make a purchase by requiring a check-in prior to beginning the purchase process, and setting a time limit within which the purchase must be made. Requiring the fulfiller to check-in, is used in conjunction with geo-location. The time for purchase can be limited to just enough time to make a purchase at the required location, but not enough time for the fulfiller to go to a different retailer and make the purchase. If the time limit expires, the purchase will be refused by the purchase control application and the fulfiller would have to check in again and start the purchase process over.

The length of time required to check decision rules and confirm the validity of a purchase transaction also plays a key role in the effectiveness of working with the decision control API's. Each purchase transaction must go through all checks in two seconds or less.

Critical to the functioning of the purchase control app is to let the on-demand company change, at any time, rules for their fulfillers. To enable this functionality, Softjourn used the Roslyn library. This made it possible to modify the runtime version of the application without requiring a build each time the on-demand service added or modified rules. Managers can change rules at any time, and have them available for use immediately.

As part of this development, the purchase control app was deployed to the Azure cloud.

The Benefits
  • Increased financial control—because fulfillers can no longer purchase lower-price services and spend the difference.
  • Ability to mitigate the losses—occurs when a fulfiller purchases a higher-priced service than the customer ordered and paid for.
  • Increased profits—result of better-quality service and strengthening a provider's brand provided by decision control capabilities.