---
title: "Overview"
description: "Choosing between the Pre-Authorized Code Flow and the Authorization Code Flow in the walt.id Enterprise Issuer2 Service."
stack: "Enterprise Stack (commercial) — version 1.1.1"
stack_version: "1.1.1"
stack_comparison: https://docs.walt.id/community-vs-enterprise.md
canonical_url: https://docs.walt.id/enterprise-stack/services/issuer2-service/protocol-flows/overview
generated: 2026-10-01
---
# Overview

The Issuer2 Service supports two OID4VCI flows for claiming a credential offer, selected via the `authMethod` field when [creating a credential offer](https://docs.walt.id/enterprise-stack/services/issuer2-service/credential-offers/create-offer.md). This section walks through the full sequence for each so you know what happens between your application, the wallet, the issuer, and (for one of them) an external identity provider.

## Which Flow Should I Use?

| | Pre-Authorized Code Flow | Authorization Code Flow |
|---|---|---|
| **`authMethod`** | `PRE_AUTHORIZED` | `AUTHORIZED` |
| **User authentication** | None (optionally a PIN/`txCode`) | Required — the holder logs in at an external IdP |
| **Best for** | Known users (already verified) and data known before the offer is created | Unknown users, or credential data that should come from the user's own IdP login (e.g. corporate SSO) |
| **Extra setup required** | None | An external OAuth/OIDC provider configured via `authProviderConfiguration` on the issuer service (see [Setup](https://docs.walt.id/enterprise-stack/services/issuer2-service/setup.md)) |
| **Credential data source** | Fully defined in the profile (or runtime overrides) ahead of time | Profile defaults (or runtime overrides), enriched with claims from the IdP's ID token via `idTokenClaimsMapping` |

## Available Flows

- [Pre-Authorized Code Flow](https://docs.walt.id/enterprise-stack/services/issuer2-service/protocol-flows/pre-authorized-flow.md) — Sequence diagram for issuing a credential with no user login.
- [Authorization Code Flow](https://docs.walt.id/enterprise-stack/services/issuer2-service/protocol-flows/authorization-code-flow.md) — Sequence diagram for issuing a credential after the holder authenticates against an external IdP.
