> For the complete documentation index, see [llms.txt](https://docs.facephi.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.facephi.com/sdks/sdk-mobile/framework-plugins/capacitor/componentes/nfc.md).

# Captura de NFC

Sus principales procesos son:

* Gestión interna del sensor de NFC.
* Gestión de permisos.
* Análisis de documento.
* Análisis del progreso.
* Asistente en los procesos de lectura.
* Devolución de toda la información posible a leer
* Devolución de imágenes cuando estén disponible para su lectura

## Dependencias <a href="#id-2-dependencia" id="id-2-dependencia"></a>

### Capacitor:

```bash
npm install @facephi/sdk-nfc-capacitor@<versión>
npm run build
npx cap sync
```

### Android - Gradle:

```kotlin
implementation "com.facephi.androidsdk:nfc_component:$version"
```

### iOS - Cocoapods:

```swift
s.dependency 'FPHISDKNFCComponent', '~> $version'
```

## Método startNfc <a href="#id-4-lanzamiento-simplificado" id="id-4-lanzamiento-simplificado"></a>

Una vez iniciado el SDK y creada una nueva operación se podrá lanzar el componente. Se podrá hacer uso de cualquiera de sus controladores para ejecutar su funcionalidad.

Lanzamiento del lector NFC:

```dart
startNfc(configuration: NfcConfiguration): Promise<NfcResult>;
```

## Configuración básica <a href="#id-5-configuracion-basica" id="id-5-configuracion-basica"></a>

Para lanzar el componente actual, se deberá crear un objeto ***NfcConfiguration*** que será la configuración del controlador del componente.

La configuración básica necesaria para es la siguiente:

```typescript
class NfcConfiguration
{
  docNumber: string;
  birthDate: string;
  expirationDate: string;
  extractionTimeout?: number;
  docType?: NfcDocumentType;
  showTutorial?: boolean;
  vibrationEnabled?: boolean;
  skipPACE?: boolean;
  debug?: boolean;
  showDiagnostic?: boolean;
  showPreviousTip?: boolean;
  extractFacialImage?: boolean;
  extractSignatureImage?: boolean;
}
```

### Configuración avanzada del componente

A continuación se detallan todos los campos que forman parte de esta clase.

{% content-ref url="/pages/qn36dDEGYFnB6gV1HxH7" %}
[Nfc Configuración](/sdks/sdk-mobile/framework-plugins/extras/nfc/nfc-configuracion.md)
{% endcontent-ref %}

## Recepción del resultado <a href="#id-6-recepcion-del-resultado" id="id-6-recepcion-del-resultado"></a>

El lanzamiento devolverá la información en formato ***NfcResult***. Pudiendo diferenciarse entre un lanzamiento correcto y uno incorrecto:

```typescript
class NfcResult
{
  finishStatus: number;
  finishStatusDescription?: string;
  errorType: string;
  errorMessage?: string;
  nfcDocumentInformation?: any;
  nfcPersonalInformation?: any;
  nfcValidations?: any;
  facialImage?: string;
  fingerprintImage?: string;
  signatureImage?: string;
}
```

A continuación se detallan todos los campos que forman parte de esta clase.

{% content-ref url="/pages/siUXPgKaUBtUufZJsrhb" %}
[Nfc Resultado](/sdks/sdk-mobile/framework-plugins/extras/nfc/nfc-resultado.md)
{% endcontent-ref %}
