Index: branches/OaaS/HeuristicLab.Services.Optimization.Billing/Business/BillingService.cs
===================================================================
--- branches/OaaS/HeuristicLab.Services.Optimization.Billing/Business/BillingService.cs	(revision 9582)
+++ branches/OaaS/HeuristicLab.Services.Optimization.Billing/Business/BillingService.cs	(revision 9586)
@@ -60,4 +60,14 @@
       throw new System.NotImplementedException();
     }
+
+
+    public IList<UsageRecord> GetUsageRecords(string userName) {
+      throw new System.NotImplementedException();
+    }
+
+
+    public IList<Invoice> GetInvoices(string userName) {
+      throw new System.NotImplementedException();
+    }
   }
 }
Index: branches/OaaS/HeuristicLab.Services.Optimization.Billing/Business/BillingServiceProvider.cs
===================================================================
--- branches/OaaS/HeuristicLab.Services.Optimization.Billing/Business/BillingServiceProvider.cs	(revision 9582)
+++ branches/OaaS/HeuristicLab.Services.Optimization.Billing/Business/BillingServiceProvider.cs	(revision 9586)
@@ -3,5 +3,5 @@
 namespace HeuristicLab.Services.Optimization.Billing.Business {
   public static class BillingServiceProvider {
-    private static IOptimizationBilling instance = new BillingService();
+    private static IOptimizationBilling instance = new MockupBillingService();
 
     public static IOptimizationBilling Instance {
Index: branches/OaaS/HeuristicLab.Services.Optimization.Billing/Business/MockupBillingService.cs
===================================================================
--- branches/OaaS/HeuristicLab.Services.Optimization.Billing/Business/MockupBillingService.cs	(revision 9582)
+++ branches/OaaS/HeuristicLab.Services.Optimization.Billing/Business/MockupBillingService.cs	(revision 9586)
@@ -2,4 +2,5 @@
 using System.Linq;
 using HeuristicLab.Services.Optimization.Billing.Interfaces;
+using System;
 
 namespace HeuristicLab.Services.Optimization.Billing.Business {
@@ -10,9 +11,13 @@
     private static IList<Model.Order> allOrders;
     private static IDictionary<string, Model.User> users;
+    private static IDictionary<string, IList<Model.UsageRecord>> records;
+    private static IDictionary<string, IList<Model.Invoice>> invoices;
     private static long maxId = 1;
 
     static MockupBillingService() {
+      Model.Product oaas;
       products = new List<Model.Product>();
-      products.Add(new Model.Product() {
+
+      products.Add(oaas = new Model.Product() {
         Name = "Optimization-as-a-Service - Experiment execution",
         Description = "Create and run your experiments within HeuristicLab Hive",
@@ -32,4 +37,20 @@
       allOrders = new List<Model.Order>();
       users = new Dictionary<string, Model.User>();
+      records = new Dictionary<string, IList<Model.UsageRecord>>();
+      records["fschoeppl"] = new List<Model.UsageRecord>() {
+        new Model.UsageRecord() { ProductId = 1, Product = oaas, UsageRecordId = 1, User = new Model.User() { Name = "fschoeppl", UserId = 1 }, Begin = DateTime.Now, End = DateTime.Now.AddHours(2), UserId = 1, ResourceIdentifier = 0, ServiceIdentifier = 1 }
+      };
+      invoices = new Dictionary<string, IList<Model.Invoice>>();
+      invoices["fschoeppl"] = new List<Model.Invoice>() {
+        new Model.Invoice() { 
+          Due = DateTime.Now.AddDays(-1), 
+          Status = Model.InvoiceStatus.Overdue,  
+          InvoiceId = 1, OrderId = 1, 
+          InvoiceLines = new List<Model.InvoiceLine>() {
+            new Model.InvoiceLine() { Product = oaas, ProductId = oaas.ProductId, ProductPrice = oaas.Price, Quantity = 2, InvoiceLineId = 1, InvoiceId = 1 }
+          },
+          UserId = 1, User = new Model.User() { UserId = 1, Name = "fschoeppl" }
+        }
+      };
     }
 
@@ -41,5 +62,5 @@
       IList<Model.Order> orders;
       if (!userToOrders.TryGetValue(order.User.Name, out orders)) {
-        userToOrders[order.User.Name] = orders = new List<Model.Order>();        
+        userToOrders[order.User.Name] = orders = new List<Model.Order>();
       }
       var oldOrder = (from o in orders where o.OrderId == order.OrderId select o).FirstOrDefault();
@@ -81,4 +102,22 @@
       users[user.Name] = user;
     }
+
+
+    public IList<Model.UsageRecord> GetUsageRecords(string userName) {
+      IList<Model.UsageRecord> foundRecords;
+      if (records.TryGetValue(userName, out foundRecords)) {
+        return foundRecords;
+      }
+      return null;
+    }
+
+
+    public IList<Model.Invoice> GetInvoices(string userName) {
+      IList<Model.Invoice> foundInvoices;
+      if (invoices.TryGetValue(userName, out foundInvoices)) {
+        return foundInvoices;
+      }
+      return null;
+    }
   }
 }
Index: branches/OaaS/HeuristicLab.Services.Optimization.Billing/Interfaces/IOptimizationBilling.cs
===================================================================
--- branches/OaaS/HeuristicLab.Services.Optimization.Billing/Interfaces/IOptimizationBilling.cs	(revision 9582)
+++ branches/OaaS/HeuristicLab.Services.Optimization.Billing/Interfaces/IOptimizationBilling.cs	(revision 9586)
@@ -21,4 +21,7 @@
     User GetUser(string userName);
     void SaveUser(User user);
+
+    IList<UsageRecord> GetUsageRecords(string userName);
+    IList<Invoice> GetInvoices(string userName);
   }
 }
Index: branches/OaaS/HeuristicLab.Services.Optimization.Billing/Model/Model.cs
===================================================================
--- branches/OaaS/HeuristicLab.Services.Optimization.Billing/Model/Model.cs	(revision 9582)
+++ branches/OaaS/HeuristicLab.Services.Optimization.Billing/Model/Model.cs	(revision 9586)
@@ -90,4 +90,8 @@
   }
 
+  public enum InvoiceStatus {
+    Open, Overdue, Paid
+  }
+
   public class Invoice {
     public long InvoiceId { get; set; }
@@ -95,5 +99,5 @@
     public long OrderId { get; set; }
     public DateTime Due { get; set; }
-    public string Status { get; set; }
+    public InvoiceStatus Status { get; set; }
     public string InvoiceDocument { get; set; }
 
