CodeB Walletby Aloaha Limited

Proudly made in Malta

Tested: 6 official conformance test plans passed, 0 failures

Built to the EUDI Wallet framework · Android

Your European digital identity. On your Android phone.

Keep your digital ID, driving licence and cards on your phone. Show them in person or online, check other people’s IDs and sign PDFs – nothing is shared without your OK.

Made by Aloaha Limited, Malta. More than 20 years of PDF, smart card and identity provider development went into CodeB Wallet – the result is a small app with few third-party dependencies, built on our own know-how.

Android Android closed beta: sign up here with the e-mail address of your Google account – we add you to the testers, then you install CodeB Wallet from Google Play. An independent wallet: not government-issued and not certified.

Tested against the standards

273 official conformance tests. 0 failures.

The CodeB issuer and verifier behind CodeB Wallet passed all six official test plans for OpenID4VCI 1.0 and OpenID4VP 1.0 with HAIP 1.0 – the standards on which the EUDI wallets are built. Your cards speak the same language as every wallet that follows the European rulebook, and their protection is tested, not just promised; which cards are accepted is still decided by certificates and trust lists. These are tests of our servers, not a certification of the app.

  • 6official test plans passed
  • 273tests against our live service
  • 0failures

See the results and what they mean

Signature cards · NFC

Sign PDFs with your Maltese eID card – right on your phone

No card reader, no computer, no browser plug-in: hold your signature card to your Android phone and the card signs the PDF. CodeB Wallet itself is not certified.

D-Trust signature and seal cards

Professionals and organisations who already use a D-Trust card with NFC sign straight from the phone: the D-Trust Card 5.1 for qualified electronic signatures, the D-Trust Card 5.4 for qualified electronic seals.

  • D-Trust Card 5.1: qualified electronic signature
  • D-Trust Card 5.4: qualified electronic seal for organisations
  • Standard (RSA) and Multi (ECC) card variants

D-Trust cards in CodeB Wallet

German health cards: HBA and eGK

Doctors, pharmacists and other health professionals sign with their health professional card (HBA). Insured persons can sign with their electronic health card (eGK). Both over NFC, without a card reader.

  • HBA G2.1: qualified electronic signature (QES)
  • eGK G2.1: advanced electronic signature with the card’s authentication certificate
  • Card access number (CAN) and PIN – the key never leaves the card

HBA and eGK in CodeB Wallet

See it in action

CodeB Wallet in 30 seconds

No mock-ups, no slides: this is the wallet running on a phone today – adding a card, showing an ID, signing a PDF and checking someone else’s ID.

QR code: CodeB Wallet on Google PlayScan to get the appPoint your Android phone’s camera at the code to open CodeB Wallet on Google Play (invited testers).

In the app

Add a document
Show your ID with a QR code
Check someone else’s ID
Sign a PDF

Features

Everything you need to prove who you are – digitally

CodeB Wallet keeps your documents on your phone, shows them in person or online when you decide, checks other people’s IDs and signs PDF documents.

Security by Design

Built in from the first line: keys in secure hardware, your confirmation for every share, self-protection while it runs – mostly our own code.

Secure hardware · own code

Learn more

Privacy first

Your documents and history stay on your phone, you decide what is shared, an age check shares only your age – our servers learn only what they need.

Data minimisation · your choice

Learn more

Protection against credential pooling

Two people must not be able to combine their genuine cards into one person who does not exist. CodeB Wallet ties your cards together, so a service that asks for several of them at once sees that they belong to you – a weakness researchers named credential pooling (CRESTA). Built with standard EUDI formats, privacy kept.

Credential pooling · CRESTA

Learn more

Personal ID (PID)

Add your Person Identification Data (PID, test credentials) – including the German PID – from the CodeB issuer (phone.codeb.io). Issuance uses OpenID4VCI; available as SD-JWT VC and ISO mdoc.

PID · OpenID4VCI

Learn more

Pseudonyms – passkeys without your name

Sign in to websites and apps with a passkey from CodeB Wallet: a new pseudonym for every website, kept in your phone’s secure hardware, confirmed with your fingerprint or screen lock. Your pseudonyms share no identifier between websites.

Passkeys · WebAuthn · ARF Topic 11

Learn more

Self-protection

The app notices when it was changed or is being inspected while it runs, and then refuses to use your keys and documents. Our own code – nothing is sent anywhere.

Runtime self-protection

Mobile driving licence

Keep a mobile driving licence (mDL) on your phone – as SD-JWT VC for online use and as ISO/IEC 18013-5 mdoc for showing it in person. From the CodeB issuer as a test credential.

mDL · ISO/IEC 18013-5

CodeB membership card

Add the CodeB membership card from the CodeB issuer and show it like any other document in your wallet.

Attestation

Add documents your way

Choose the issuer directly in the app, or scan the QR code an issuer gives you – the wallet then starts the issuance for you. Adding a card again replaces the older copy, so your wallet does not fill up with duplicates.

Issuer list · QR code

Learn more

Show your ID in person

Start with a QR code or an NFC tap; the data then goes phone-to-phone over Bluetooth Low Energy. Both BLE roles are supported for broad reader compatibility, and it works offline.

ISO/IEC 18013-5 · NFC · BLE

Learn more

Share only what is needed

Selective disclosure: confirm “over 18” without revealing your date of birth, or share just the details a service really needs.

Selective disclosure

Learn more

Prove your age – without showing your birthday

Show only that you are over 18 – online on websites and apps (OpenID4VP) and in person (ISO/IEC 18013-5). CodeB Wallet can also check someone’s age as a reader, and websites can use the online age check.

Over 18 · selective disclosure

Learn more

Share online

Websites and apps request data via OpenID4VP. You see every request – who is asking and for what – and confirm with your PIN or biometrics.

OpenID4VP

Learn more

Verify someone’s ID or age

CodeB Wallet works as an ISO/IEC 18013-5 reader with a clear verdict – trusted, look closer or do not accept – including a revocation status check. Nothing is stored.

ISO/IEC 18013-5 reader

Learn more

Check an ID back to back

No QR code needed: hold the two phones back to back. The checking phone reads the other phone’s ID over NFC and Bluetooth – handy at a counter or between two CodeB Wallets.

NFC · ISO/IEC 18013-5

Learn more

Door and PC access (CodeB Access)

Your organisation can give you an access card in CodeB Wallet.

NFC · access card · ISO/IEC 18013-5 · PKOC

Learn more

Phone as a PKI card for Windows sign-in

Your organisation can issue PKI cards to CodeB Wallet, and your phone then acts as a contactless PKI smart card at a Windows PC with an NFC reader.

NFC · PKI card · smart card sign-in

Learn more

Your phone as an NFC tag

An NFC memory card from your organisation turns your phone into a standard NFC tag: a link, a text or a contact card that any phone or NFC reader can read – read-only, or writable so a check-in desk or smart-home reader can store new content on your phone.

NFC · NDEF · Type 4 tag

Learn more

Read ID cards and passports (eMRTD)

Hold a chip ID card or an ePassport to your phone: CodeB Wallet reads the data on the chip – name, date of birth, nationality, document number, expiry date and the photo – and checks that the issuing country signed it and that the chip is not a copy.

eMRTD · ICAO Doc 9303

Learn more

Remote ID verification for organisations

Organisations check a person’s passport or ID card remotely: the person holds the document to the phone, and the server reads the chip itself and checks the issuing country’s signature and that the chip is no copy – instead of photos or video calls of the document.

eMRTD · KYC

Learn more

Get your PID with your ID card

When you add your Personal ID (PID) from the CodeB PID Provider, you can use the chip of your ID card or passport instead of typing your details: the provider’s server reads and checks the chip itself through your phone and fills in your details from it.

Onboarding · eMRTD

Learn more

Free CodeB account in the app

Create your CodeB account right in the app with your passport or ID card: phone.codeb.io checks that the chip is genuine, you confirm your e-mail address with a code, and you can sign 5 of your own PDFs a day and add the test PID and Photo ID.

Account · passport or ID card

Learn more

Photo ID from your passport or ID card

A Photo ID (ISO/IEC TS 23220-4, eu.europa.ec.eudi.photoid.1) issued from your checked passport or ID card. If you agree, it also carries the chip data as a Digital Travel Credential (ICAO DTC type 1), so a verifier can check the issuing country’s signature itself.

Photo ID · ICAO DTC

Learn more

Trusted issuer certificates

Manage the list of issuer certificates you trust when verifying. CodeB’s own issuer certificate is built in; you can import further certificates.

Trust list

Sign PDF documents – visible, advanced or qualified

Sign PDFs with a PAdES signature and trusted timestamp: advanced (AdES) via the CodeB signing service, or qualified (QES) with your own signature card holding a qualified certificate. Place your visible signature where you want it – drawn, the image from your ID document or your name. The PDF stays on your phone.

PAdES B-T · AdES

Learn more

Scan paper and sign it

Photograph a paper document, get a clean PDF and sign it on the spot – with your signature card or the CodeB signing service, always with a trusted time stamp.

Scanner · PAdES · Time stamp

Learn more

Sign with your own signature card (Maltese eID)

Hold your signature card to the phone – the Maltese eID or a Maltese residence card, a D-Trust Card 5, a German health professional card (HBA) or a German electronic health card (eGK) – and sign PDFs with the key on the card: no browser, no account.

Signature card · NFC · PAdES

Learn more

Sign in with your Maltese eID card

Sign in to phone.codeb.io with the Maltese eID card: scan the QR code on the sign-in page, hold the card to your phone and enter the card’s authentication PIN.

eID card · NFC · sign-in

Learn more

Ask others to sign – from your phone

Sign in to your CodeB account in the app and send PDFs to other people to sign, one after the other.

Signing requests · AdES · QES

Learn more

AI agents prepare – you approve every action

An AI agent asks before it pays, orders or books, and it prepares signing requests. You see exactly what it wants and approve by code and screen lock; it can never sign.

Signing

Learn more

Calls with verified identity

Phone in CodeB Wallet: dial or pick a contact, and the person you call sees your verified name while their phone rings. No phone numbers go to our server.

Verified calls · privacy first

Learn more

Confirm payments

Your bank asks, you see payee and amount first and confirm with fingerprint, face or screen lock – bound to exactly what you saw.

SCA · TS12

Learn more

One-time codes for two-step sign-in

A built-in authenticator: scan a website’s QR code and get six-digit sign-in codes (TOTP) on your phone, even offline. Pin, sort into groups such as Work or Family, search, and move all codes to a new phone with a few QR codes.

TOTP · RFC 6238

Learn more

History

A history of everything you added, shared and signed – with details – kept only on your phone.

On device

Learn more

See who saw your document

Each document shows the recent times you shared it – who received it, when, and exactly which details. One tap opens the entry, where you can ask for deletion or report a verifier. Taken from the history on your phone; nothing is sent anywhere.

Transparency · GDPR

Learn more

Always up to date

The wallet checks the status of your documents automatically and can renew them before they expire, where the issuer supports it.

Status · renewal

Learn more

Reminded before a document expires

CodeB Wallet tells you on your phone when a document is about to expire or could not be renewed automatically – one tap opens it to renew. The reminder is created on your phone; nothing is sent anywhere.

Local · no tracking

Learn more

Made for everyone

Built with the European Accessibility Act in mind: works with the TalkBack screen reader, with very large text and with animations switched off – results, checks and steps are read out clearly, and card colours stay readable.

Accessibility

Guides and changelog

Built-in “Learn more” guides explain every function in plain words, and an in-app changelog shows what is new. Swipe through your cards on the home screen.

Help

Learn more

All features in detailKey facts, standards and security

How it works

Four steps from issuer to verifier

The EUDI wallet model separates the issuer of a credential, you as the holder, and the service that checks it.

  1. Get a document

    Choose an issuer in the app – such as the CodeB issuer – or scan an issuer’s QR code. Issuance uses the OpenID4VCI protocol.

  2. Keep it on your phone

    The document is stored on your device. Its keys are protected by the phone’s secure hardware; the wallet is locked with PIN or biometrics.

  3. Present it

    Show it in person via QR code or NFC tap with data over Bluetooth Low Energy (ISO/IEC 18013-5), or online to a website or app via OpenID4VP.

  4. You approve every request

    Before anything leaves your phone, you see who is asking and exactly which details – then you confirm with your PIN or biometrics, or decline. Only the requested details are shared, never the whole document.

How it works – all parts in one picture

Ecosystem

The complete wallet ecosystem – from one company in Malta, for Malta and the rest of the world

CodeB Wallet is one part. On phone.codeb.io, Aloaha also runs everything around it – wallet provider, issuers, verifier, status lists and signing service – for public bodies, issuers and relying parties to test.

Wallet provider

Checks that the app is the genuine CodeB Wallet on a phone with a locked, verified system – Android Key Attestation against Google’s pinned root and revocation list, with Play Integrity as a second signal – and issues wallet instance and wallet unit attestations. It can revoke a wallet unit; revoked units are published in a status list. Phones without Google services, such as GrapheneOS on a Pixel, are checked on the hardware attestation alone.

PID provider

Issues the EU Person Identification Data following the EU PID Rulebook, as SD-JWT VC and ISO mdoc, and a German PID. The identity data comes from the chip of your passport or ID card, read end to end by the server (PACE, Chip Authentication, Passive Authentication) – designed to follow ETSI TS 119 461, not certified. Issuer and document-signer certificates come from Aloaha’s own issuing CA.

Attestation issuer

Further credentials from the same issuer: mobile driving licence, Photo ID with Digital Travel Credential, membership cards, access cards and PKI cards for Windows – plus templates for organisations’ own credentials.

Secure issuance

OpenID4VCI with the high-assurance features: pushed authorization requests with PKCE, DPoP-bound tokens, wallet and key attestation checked on every issuance, and encrypted credential responses.

Revocation and status

Every credential carries a status entry: the IETF Token Status List as JWT and, for mdoc, as CWT, plus the W3C Bitstring Status List – optionally with shuffled positions, so observers cannot tell the order of issuance.

Verifier for websites and apps

An online verifier service for relying parties: OpenID4VP with signed requests, X.509 client identification and registration certificates, SD-JWT VC and mdoc, revocation check, EU trusted lists read automatically and OpenID Federation discovery. Tested with the EU reference wallet. Try the verifier test page, the online age check or read the integration guide.

Relying-party register and access certificates

A register of relying parties with the registration details the EU implementing rules list – legal name, identifiers, contact and intended use – with suspension and cancellation, and Aloaha’s own access-certificate CA modelled on ETSI TS 119 411-8, with a published policy and revocation list. Software key, for testing and private use.

Data protection for relying parties

Endpoints where a holder’s data-deletion request and a report to a data protection authority reach the relying party – the counterpart of the app’s data-deletion request.

Signing service

PAdES signatures with a trusted timestamp, signing requests to several people in turn, the Cloud Signature Consortium API v2 for remote signing, and a signature check for any PDF. Signatures from the service are advanced electronic signatures (AdES), not qualified.

How it works – all parts in one picture

Our own PDF technology

PDF signing from a PDF specialist – since 2003

Aloaha has been active in PDF development and digital signatures since 2003. CodeB Wallet uses Aloaha’s own PDF signing technology – the same technology Aloaha uses on its servers.

PDF signing profile

PAdES
  • Active in PDF development and digital signatures since 2003Heritage
  • Aloaha’s own PDF signing technologyOwn technology
  • PAdES baseline B-T: signature with trusted timestampETSI EN 319 142
  • Advanced electronic signature (AdES) via the CodeB signing serviceAdES
  • Your own signature card over NFC – the key stays on the cardNFC
  • The PDF stays on your phonePrivacy

How signing works: card or signing service

Since 2003

Two decades of smart cards and digital identity

Aloaha Limited, the company behind CodeB Wallet, has built signing, PKI and smart card software since 2003. In 2012 Aloaha received the WIPO Award for Innovative Enterprises at the Malta Innovation Awards in Valletta, for being the first and only software company to develop middleware that works with many different smart cards. The certificate is signed by the Director General of the World Intellectual Property Organization.

The same experience is in CodeB Wallet today: it signs with your signature card over NFC and reads the chip of passports and ID cards.

WIPO Award for Innovative Enterprises certificate for Aloaha Limited, Malta Innovation Awards, Valletta, 23 February 2012
WIPO Award for Innovative Enterprises, 2012 – Aloaha Limited, the maker of CodeB Wallet. View the certificate

White label

Your own wallet app, built on CodeB Wallet

CodeB Wallet is also available as a white-label solution: your name, your logo and your colours on proven wallet technology, with the features you choose – for issuers, banks, public bodies, associations and companies that want to offer their own wallet app, built to the EUDI Wallet ARF. All about the white-label wallet

White-label wallet

Available now
  • Your app name, logo, colours and store listingYour brand
  • You decide which features your app containsYour selection
  • Your issuers, documents and services preconfiguredConfiguration
  • PDF signing with your signing service or with signature cards over NFCSigning
  • OpenID4VCI, OpenID4VP, SD-JWT VC and ISO/IEC 18013-5 mdoc, built to conform with ARF 3Standards
  • Keys in the phone’s secure hardware, PIN protection, no trackingSecurity
  • Updates and maintenance from Aloaha in MaltaSupport
  • Optionally with the backend – wallet provider, PID and attestation issuer, verifier, status lists and relying-party register – operated by Aloaha or handed over (Windows Server with Microsoft IIS, file-based, no database)Backend

FAQ

Frequently asked questions

What is CodeB Wallet?

CodeB Wallet is an Android app that stores digital documents – such as your Person Identification Data (PID), mobile driving licence or CodeB membership card – and presents them in person or online. It can also check other people’s IDs and sign PDF documents. It is built for the European Digital Identity (EUDI) framework under eIDAS 2.0, Regulation (EU) 2024/1183, by Aloaha Limited, Malta.

Can I use CodeB Wallet without installing the app?

Yes. The CodeB web wallet runs in your browser at phone.codeb.io/web-wallet.html and can be added to your home screen. It adds documents from the same issuers and shares them with online services through QR codes and links. For keys kept in your phone’s secure hardware, for reading ID chips and for showing your ID in person, use the Android app. Like the app, the web wallet is not certified. How the web wallet works.

Is there CodeB Wallet for iPhone?

On an iPhone? Use the CodeB web wallet in Safari. It works today, until the CodeB Wallet app is available for iPhone. Open phone.codeb.io/web-wallet.html in Safari and choose Share → Add to Home Screen. Documents added in a Safari tab and in the home-screen app are kept separately, so add them where you will use them.

Do I need an account? How do I get one?

Showing and checking IDs works without an account. For the CodeB signing service and the test PID and Photo ID you need a free account on phone.codeb.io, which you create in the app: Settings → Create a free CodeB account. You hold your passport or ID card to the phone, confirm your e-mail address with a code, and the document-checked guest account is ready – with 5 signatures of your own documents a day. Or tap myeudi.app/open/account on your phone – it opens the account screen directly.

What is an EU Digital Identity Wallet?

eIDAS 2.0 (Regulation (EU) 2024/1183) introduces European Digital Identity Wallets: apps in which people can store identity data and other attestations and share them securely with public and private services. The technical rules are described in the EU Architecture and Reference Framework (ARF).

What is a PID in the EU Digital Identity Wallet?

PID means Person Identification Data: your core identity – name, date of birth, nationality and a few more details. It is issued by your country or by a body it authorises, and it is the digital counterpart of your ID card. A PID answers one question: who are you? The PID you get with the free CodeB account is a test PID, not an official one.

Which ID cards and passports can CodeB Wallet read?

Electronic passports and ID cards that follow ICAO Doc 9303 – in practice most passports issued in recent years and the chip ID cards of the EU and EEA countries. According to ICAO, more than one billion ePassports are in circulation, issued by over 140 states and organisations. 29 EEA countries now issue ID cards with an ICAO-compliant chip; we estimate that well over 200 million of them are in use in Europe. Older cards without a chip cannot be read. CodeB Wallet checks the issuing country’s signature using the country certificates the states publish (CSCA master list). The country certificate list we use (BSI master list, October 2026) covers 115 countries plus the EU and the UN, including all EU member states – see remote ID verification.

Is my data safe?

Your documents and your history are stored only on your phone. Cryptographic keys are kept in the phone’s secure hardware, the wallet is protected by PIN and optionally biometrics, and nothing is shared without your confirmation. The app has no ads, no tracking and no analytics.

Is CodeB Wallet an official or certified wallet?

Not yet. CodeB Wallet is not an official government wallet and it has not been certified. It is built by Aloaha Limited to the EUDI Wallet Architecture and Reference Framework (ARF 3.0) and works with its protocols and formats: OpenID4VCI, OpenID4VP, SD-JWT VC, mdoc and ISO 18013-5. Certification is ahead of us. As of November 2026, the EU certification scheme for these wallets is still a draft, and no wallet has completed it yet. We will only call CodeB Wallet certified once a certification has actually been completed.

When can I download CodeB Wallet?

CodeB Wallet for Android is available on Google Play by invitation – sign up for the beta.

All questions on the help page

Would you like to test CodeB Wallet?

CodeB Wallet for Android is available on Google Play by invitation – sign up for the beta. Issuers and services that want to accept EUDI credentials are welcome to write to info@aloaha.com.

Install the closed beta (Google Play) Closed beta: open only to invited testers signed in to Google Play with the e-mail address on our tester list. To join, request beta access.

No app? Use CodeB Wallet in your browser On an iPhone? Use the CodeB web wallet in Safari. It works today, until the CodeB Wallet app is available for iPhone. For keys kept in your phone’s secure hardware and for showing your ID in person, use the app. How the web wallet works

QR code: CodeB Wallet on Google PlayScan to get the appPoint your Android phone’s camera at the code to open CodeB Wallet on Google Play (invited testers).