---
title: Pengambilan dokumen
canonical: https://developer.unico.io/id/dual-api/developer/sdks-and-tools/flutter-sdk/document-capture/
locale: id
generated_by: markdown-export
---

Pengambilan dokumen identitas. SDK menampilkan bingkai untuk membantu pengguna memposisikan dokumen; setelah diposisikan, pengguna menekan tombol untuk mengambil foto.

:::warning[Tanpa validasi konten]
SDK tidak melakukan validasi jenis apa pun terhadap objek yang sedang diambil.
:::

## Bingkai dokumen yang tersedia

| Bingkai | Deskripsi |
|---|---|
| `DocumentCameraTypes.CPF` | Ambil CPF |
| `DocumentCameraTypes.CNH` | Ambil CNH terbuka |
| `DocumentCameraTypes.CNH_FRENTE` | Ambil bagian depan CNH |
| `DocumentCameraTypes.CNH_VERSO` | Ambil bagian belakang CNH |
| `DocumentCameraTypes.RG_FRENTE` | Ambil bagian depan RG |
| `DocumentCameraTypes.RG_VERSO` | Ambil bagian belakang RG |
| `DocumentCameraTypes.OUTROS("descrição")` | Bingkai generik untuk dokumen lainnya |

:::tip[Bingkai generik]
Jika Anda perlu mengambil dokumen yang tidak memiliki bingkai khusus (misalnya, RNE), gunakan `DocumentCameraTypes.OUTROS("description")` — bingkai persegi panjang generik yang dapat digunakan untuk memandu pengambilan apa pun.
:::

Untuk daftar lengkap jenis dokumen yang didukung, lihat [Referensi API > Enums](/developers/sdks-and-tools/flutter/api-reference/enums).

## Memulai pengambilan dokumen

****Langkah 2** — Implementasikan listener dokumen**

Tambahkan callback dokumen ke kelas state Anda:

  | Metode | Deskripsi |
  |---|---|
  | `onSuccessDocument(ResultCamera resultCamera)` | Pengambilan berhasil — mengembalikan `ResultCamera` dengan `base64` (pratinjau) dan `encrypted` (JWT untuk API) |
  | `onErrorDocument(UnicoError error)` | Pengambilan gagal — mengembalikan `UnicoError` dengan kode dan deskripsi |

  ```dart
  @override
  void onSuccessDocument(ResultCamera resultCamera) { }

  @override
  void onErrorDocument(UnicoError error) { }
  ```

****Langkah 3** — Panggil `openCameraDocument`**

Metode `openCameraDocument()` disediakan melalui objek yang dihasilkan dengan instance dari kelas `UnicoCheck`. Metode ini menerima:

  - File JSON berisi kredensial, yang dibuat pada [langkah penyiapan kredensial](/developers/sdks-and-tools/flutter/installation/specific-setup);
  - Jenis dokumen yang akan diambil (enum `DocumentType`);
  - Listener yang dikonfigurasi pada Langkah 2.

  Contoh menggunakan CNH terbuka:

  ```dart
  _unicoCheck.build().openCameraDocument(
    jsonFileName: androidJsonFileName,
    documentType: DocumentType.CNH,
    listener: this,
  );
  ```

Untuk penanganan hasil secara lengkap, lihat [Menerima hasil](/developers/sdks-and-tools/flutter/capture-flow/receiving-the-result).