Skip to main content

Present an ISO mdoc offline

The SDK can be used to present an ISO mdoc proof over BLE. The following steps represent the high-level overview.

Related guide: ISO mdoc offline protocol

  1. Propose proof: the digital wallet holder must initialize the interaction. Call the propose proof method to get started.

    • Starts BLE advertisement
    • Creates a proof in PENDING state and returns the proofId
    • Creates an interaction and returns the interactionId
    • Returns a QR code for device engagement. The mobile verifier scans this to receive parameters for engagement and establish the BLE connection.

    At this stage the digital wallet waits for the connection to be established and the request to be transmitted. If the verifier connects but cancels the request, or the request data does not conform with expectation:

    • Sends error response to the verifier
    • Stops BLE server
    • Changes proof state to ERROR
  2. Proof request is received:

    • Proof state changes to REQUESTED
    • BLE connection remains open but background tasks stop

    At this stage the digital wallet holder must consider what to do with the request. Use presentation definition to filter credentials, returning the elements which match the request.

    A disconnection at this stage results in ERROR state.

  3. Submit or reject a presentation:

    Once the digital wallet submits or rejects the proof, the BLE session closes.