Sample Application Setup

Published

April 2, 2026

Phase 3: Miniloan Sample Application Rules

Now that ODM is deployed, we will implement a decision service that externalizes loan approval logic, allowing rules to be updated without redeploying application code. For this example, a sample app called mini loan will be used to demonstrate the process.

3.1 Download Sample App Files

Download the Miniloan Service.zip and execution-payload.json from the following repo.

3.2 Import the Miniload Decision Service

  1. Open the Decision Center Business console as admin user

  2. Click the Import Decision Service button Image shows the Import Decision Service button.

  3. Click Choose to browse and then select the Miniloan Service.zip file you previously downloaded (MiniLoan Service.zip).

  4. Make sure Use Decision Governance Framework is not selected. For this test we will work with an ungoverned branch of the decision service.

  5. Click Import. The Miniloan Service decision service automatically opens. You see the Releases and Branches tabs. Because you chose not to use the decision governance framework, you can see that the Releases tab is empty.

  6. Open the Branches tab, and then click the main branch. A decision service can contain many projects. For simplicity, all the rules of Miniloan Service are contained in its top-level project, which has the same name as the decision service.

  7. Click All types in the Types window to display all the artifacts. In the Decision Artifacts tab, you can see a folder for the decision operations, the miniloan ruleflow, and folders that contain the rules:

Image shows the Decision Artifacts tab

Image shows the Decision Artifacts tab

3.3 Deploy Miniloan RuleApp

  1. Click the Deployments tab to see its contents.

  2. Click the Miniloan deployment configuration.

  3. Click the Edit button in the upper right corner of the window.

  4. Click the Targets tab.

  5. Check that Decision Service Execution is selected and click the Save button.

  6. Type “Miniloan policy”, and click Create new version.

  7. Click the Deploy button Image shows the Deploy button in the upper right corner of the window. A dialog box opens with a summary of the deployment configuration. It gives you the option of deploying to a server or creating a RuleApp archive.

  8. Leave Server selected in the dialog, and click Deploy.

  9. Click OK in the deployment status message. The Reports subtab opens in the Deployments tab.

  10. Click the name of the report when its status shows a check mark. The report opens and shows a summary of the deployment. It includes the target server, the configuration name, the ruleset, the deployment time, the version of the ruleset, and the deployment snapshot.

3.4 Verify in Res

Go to bash https://<your-host>/res

Option A: RES Test UI

  1. Click the Explorer tab.

  2. Expand RuleApps at the left-hand sidebar, and then expand /mydeployment/1.0.

  3. Click /Miniloan_ServiceRuleset/1.0 to view the details of the ruleset in the Ruleset View.

  4. Click Test ruleset

  5. Switch execution request to JSON and paste the payload from execution-payload.json

    {"loan": {
        "amount": 500000,
        "duration": 240,
        "yearlyInterestRate": 0.05
     },
      "__DecisionID__": "Test",
      "borrower": {
        "name": "Joe",
        "creditScore": 600,
        "yearlyIncome": 80000
      }}
  1. Click Execute Request

Option B: API Call

You can also test the execution of the Miniloan_ServiceRuleset ruleset in a command terminal by using cURL

curl -k https://<your-host>/DecisionService \
  -H "Content-Type: application/json" \
  -d @execution-payload.json

or

curl -k -X POST -H "Content-Type: application/json" \
     -u <adminUser>:<adminPwd> -d "@execution-payload.json" \
     https://<yourHost>/DecisionService/rest/v1/mydeployment/1.0/Miniloan_ServiceRuleset/1.0/

Expect a result like

{"__DecisionID__":"Test","loan":{"amount":500000,"duration":240,"yearlyInterestRate":0.05,"yearlyRepayment":39597,"approved":false,"messages":["Too big Debt-To-Income ratio"]}}