---
title: "Integration Guide - Scanner Service"
description: "Integrating with the Lacuna Scanner Service: scanning happens on a page of the service, which handles the scanners and the Decree 10,278/2020 metadata."
canonical: "https://docs.lacunasoftware.com/en-us/articles/scanner/integration"
locale: "en"
product: "Scanner"
last_updated: "2026-10-12"
---

# Integration Guide - Scanner Service

The [Lacuna Scanner Service](https://docs.lacunasoftware.com/en-us/articles/scanner) lets you add a scanning page to your existing web application quickly and easily, because
the scanning itself happens on a page of the service, not of your application. Your application doesn't have to deal with the complexity of
communicating with scanners or of filling in the mandatory metadata required by [Decree No. 10,278/2020](http://www.planalto.gov.br/ccivil_03/_Ato2019-2022/2020/Decreto/D10278.htm) (in Portuguese).

## Example

Suppose your application has a form that accepts file uploads, and you want to add a button for scanning:

![Demo step 1](https://docs.lacunasoftware.com/images/scanner/demo-1.png)

When the user clicks the button, they are redirected to the scanning page:

![Demo step 2](https://docs.lacunasoftware.com/images/scanner/demo-2.png)

> **Note**
>
> The scanning page can be customized with your application's logo and colors to give the user a seamless experience (the image above
> is an example of customization).

When the user finishes scanning, they are redirected back to your application:

![Demo step 3](https://docs.lacunasoftware.com/images/scanner/demo-3.png)

Your application then calls the service API to get the scanned document:

![Demo step 4](https://docs.lacunasoftware.com/images/scanner/demo-4.png)

## Overview

The procedure starts with your application creating a **scan session**, passing the **returnUrl** &ndash; the URL the user must be
taken back to at the end of the process. Your application receives the **redirectUrl** &ndash; the URL the user must be taken to in order to
start scanning:

![Integration part 1](https://docs.lacunasoftware.com/images/scanner/integration-1.png)

At the end of the scanning process, the user is taken back to your application (at the **returnUrl**), with an argument named **scanSessionId**
added to the URL. With that argument, your application calls the service API to get the scanned document(s):

![Integration part 2](https://docs.lacunasoftware.com/images/scanner/integration-2.png)

## Communication parameters

You will need the following parameters:

* **Endpoint**: address of the Scanner Service, e.g. `https://scn.lacunasoftware.com/`
* **API Key**: key for accessing the API

Ask our [developer support](mailto:suporte@lacunasoftware.com) for your parameters.

## Programming languages

Choose a programming language for specific instructions:

* [.NET](https://docs.lacunasoftware.com/en-us/articles/scanner/integration/dotnet)
* [PHP](https://docs.lacunasoftware.com/en-us/articles/scanner/integration/php)
* Other languages: [REST API Integration](https://docs.lacunasoftware.com/en-us/articles/scanner/integration/other)
