diff --git a/README.md b/README.md
index 7db729d2bbc7cd1ca8dd4d0f10f907e9f07f7559..a694a43bf5258420357e650beb71175c93c18ea4 100644
--- a/README.md
+++ b/README.md
@@ -6,7 +6,81 @@
 Information Hub service is responsible for exporting and importing policy data 
 wrapped in Verifiable Credentials and Verifiable Presentations.
 
+It is developed using the [Goa v3](https://goa.design/) framework.
+
+While the service is up and running, you can see a live Swagger API
+description at `servicehost:serviceport/swagger-ui`. In the local docker-compose
+environment, the Swagger URL is available at http://localhost:8084/swagger-ui/
+
+### Export
+
+An export *must* be defined by Export Configuration stored in a MongoDB collection named `exports`.
+Clients trigger an export by making an HTTP GET request using the name of the export as path
+parameter. No other parameters are necessary to perform an export except its name. 
+
+Export returns JSON data wrapped as Verifiable Credentials and Verifiable Presentations. 
+The data itself is the result of one or more policy executions and is *always* taken from
+the Cache service. If data for a given export is not found in the Cache, then policy evaluation
+is triggered so that the data can be placed in Cache for future exports.
+
+After the data is retrieved from Cache, it is wrapped in [VC/VP](https://www.w3.org/TR/vc-data-model) 
+and is given to the Signer service for adding a [VP proof](https://www.w3.org/TR/vc-data-model/#proofs-signatures).
+
+```mermaid  
+flowchart LR
+	A([client]) -- GET --> B["/v1/export/{name}"] 
+	subgraph infohub
+		B --> C[(Export\nConfiguration)]
+	end
+	subgraph data
+		D[Policy] --> E[Cache]
+	end
+	F[Signer\nProof]
+	infohub --> data
+	data --> F
+```
+
+### Import
+
+An import can put arbitrary external JSON data into the TSA Cache.
+The data must be wrapped as Verifiable Presentation, similar to exports.
+If VP proofs are verified successfully, the data is inserted into the Cache
+and the cache key by which the data can later be retrieved is returned 
+in the response to the import request.
+
+```mermaid  
+flowchart LR
+	A([client]) -- POST --> B["/v1/import"] 
+	subgraph infohub
+	B --> C[/Verify Proofs/]
+	end
+	C --valid--> D[Cache]
+```
+
+### Dependencies and Vendor
+
+The project uses Go modules for managing dependencies and we commit the vendor directory.
+When you add/change dependencies, be sure to clean and update the vendor directory before
+submitting your Merge Request for review.
+
+```shell
+go mod tidy
+go mod vendor
+```
+
+### Tests and Linters
+
+To execute the units tests for the service go to the root project directory and run:
+
+```shell
+go test -race ./...
+```
+
+To run the linters go to the root project directory and run:
+```shell
+golangci-lint run
+```
+
 ## License
-<hr/>
 
 [Apache 2.0 license](LICENSE)
\ No newline at end of file