Mobile-ID · Digital Trust
ISO/IEC 27001 · FIDO2 · OpenID — View scope
Mobile-ID Sign · INTEGRATION & PRACTICE

RSS: Registration, hash signing and reconciliation

Read structures edited from the Specification. Source conflicts are attached to operations; no execution server is configured.

Coverage and integration prerequisites

Source documentation, contract confirmation, sandbox testing and production acceptance are separate stages. Website version changes do not advance readiness.

Review coverage for each operation
Per-operation readiness
OperationDocumentationContractSandbox
POST /v1/create/credentialSelected fieldsDeployment not confirmedNot tested
GET /v1/get/credential/statusSelected response fieldsDeployment not confirmedNot tested
POST /v1/sign/hashSelected fieldsDeployment not confirmedNot tested
GET /v1/get/signing/statusSelected response fieldsDeployment not confirmedNot tested
GET /v1/get/certificatesSelected response fieldsDeployment not confirmedNot tested
POST /v1/request/citizen/identity-sharingSelected fieldsDeployment not confirmedNot tested
GET /v1/get/citizen/identity-sharingSelected response fieldsDeployment not confirmedNot tested
Download scope-specific OpenAPI · Download documentary Postman

RSS, Postman and event channels

The supplied source is Specification 1.11.260911. Distinguish partner REST, callbacks and internal Kafka. Keep operation-specific x-billcode-id with caller references; identity sharing or a citizen-ID check is not signature validation.

Scope and assets

Source: RSS 1.11.260911. OpenAPI edits 7 operations with selected fields; the catalog retains all 18 source REST functions. This is not an accepted production contract.

Operations and data structures

POST/v1/create/credential

Register a credential

Source documented · Deployment contract unconfirmed · Sandbox not tested

OperationId: RssCreateCredential · RSS 1.11.260911 · PDF pages: 15, 16, 17, 18, 19

Source-derived; deployment remains unconfirmed. Sample inputs are for reading, not live submission.

Preconditions and authentication

Confirm provider/package, partner_code and originator_id; prepare registration data within consent scope. An issued credential is not yet required. Keep the Bearer token server-side; exclude tokens/SAD from frontend code and public logs.

Operation headers
HeaderRequiredMeaning
x-languageNoResponse language.
x-rp-idNoRP-generated reference, distinct from service-generated x-billcode-id.

Request · application/json

Request schema
FieldTypePresenceDescription
providerstringRequiredRSS provider identifier; confirm deployment configuration.
service_package_codestringRequiredProvider service package code.
partner_codestringRequiredCode of the partner submitting the request.
originator_idstringRequiredIdentifier of the originating application.
platformstringOptional / source conditionsOriginating channel: WEB or APP. enum: WEB, APP; default: WEB
operation_modestringOptional / source conditionsS: Synchronous; A: asynchronous, default A in the RSS table. enum: S, A; default: A
postback_urlstringOptional / source conditionsRP result receiver; confirm registration and sender verification. format: uri
user_infoobjectRequired
user_info.citizen_pidstringRequiredCitizen personal identifier; never enter real data in the demo.
user_info.full_namestringOptional / source conditionsFull name when supplied.
user_info.birth_datestringOptional / source conditionsBirth date in the deployment format.
user_info.phonestringOptional / source conditionsPhone number when needed.
user_info.emailstringOptional / source conditionsEmail when needed.
user_info.issuing_authoritystringOptional / source conditionsCitizen-ID issuing authority; optional. Format follows the deployment contract.
user_info.date_of_issuestringOptional / source conditionsCitizen-ID issue date; optional. Format follows the deployment contract.
user_info.genderstringOptional / source conditionsGender; optional. Format follows the deployment contract.
user_info.nationality_codestringOptional / source conditionsNationality code; optional. Format follows the deployment contract.
user_info.permanent_addressstringOptional / source conditionsPermanent address; optional. Format follows the deployment contract.
user_info.permanent_village_textstringOptional / source conditionsPermanent locality name; optional. Format follows the deployment contract.
user_info.permanent_city_textstringOptional / source conditionsPermanent city/province name; optional. Format follows the deployment contract.
user_info.living_place_addressstringOptional / source conditionsCurrent address; optional. Format follows the deployment contract.
user_info.living_place_village_textstringOptional / source conditionsCurrent locality name; optional. Format follows the deployment contract.
user_info.living_place_city_codestringOptional / source conditionsCurrent city/province code; optional. Format follows the deployment contract.
user_info.living_place_city_textstringOptional / source conditionsCurrent city/province name; optional. Format follows the deployment contract.
user_info.id_card_expire_datestringOptional / source conditionsCitizen-ID expiry date; optional. Format follows the deployment contract.
Illustrative payload — Not executed against the service
{
  "provider": "HUD-FPT-CA",
  "service_package_code": "DEMO_PACKAGE",
  "partner_code": "DEMO_PARTNER",
  "originator_id": "DEMO_APP",
  "user_info": {
    "citizen_pid": "DEMO_CITIZEN_ONLY"
  },
  "operation_mode": "A"
}

Response · 200

Read HTTP status and business outcome separately.

Response 200
FieldTypePresenceDescription
statusstringOptional / source conditionsCredential registration processing status.

Response · default

Read HTTP status and business outcome separately.

Response default
FieldTypePresenceDescription
codestringOptional / source conditionsService error code, distinct from HTTP status.
messagestringOptional / source conditionsShort error message.
descriptionstringOptional / source conditionsDetailed explanation when present.

Confirmation required

Next action

Persist x-billcode-id, await user action and reconcile status before creating another request.

GET/v1/get/credential/status

Read credential registration status

Source documented · Deployment contract unconfirmed · Sandbox not tested

OperationId: RssGetCredentialStatus · RSS 1.11.260911 · PDF pages: 20, 21

Source-derived; deployment remains unconfirmed. Sample inputs are for reading, not live submission.

Preconditions and authentication

Registration was submitted and x-billcode-id retained. Use the registration reference, not a signing request reference. Keep the Bearer token server-side; exclude tokens/SAD from frontend code and public logs.

Operation headers
HeaderRequiredMeaning
x-billcode-idYesReference from credential creation.
x-languageNoResponse language.
x-rp-idNoRP-generated reference, distinct from service-generated x-billcode-id.

Response · 200

Read HTTP status and business outcome separately.

Data presence in the table and processing examples differs; this schema does not select a production branch.

Response 200
FieldTypePresenceDescription
statusstringOptional / source conditionsBusiness status described by the source.
dataobjectOptional / source conditionsObject from source tables.
data.citizen_pidstringOptional / source conditionsCitizen ID; read presence conditions alongside the status.
data.descriptionstringOptional / source conditionsStatus-dependent outcome explanation.
data.credential_idstringOptional / source conditionsCredential identifier when returned.
data.serial_numberstringOptional / source conditionsCertificate serial number.
data.certificate_datastringOptional / source conditionsBase64 certificate data in the source.

Response · default

Read HTTP status and business outcome separately.

Response default
FieldTypePresenceDescription
codestringOptional / source conditionsService error code, distinct from HTTP status.
messagestringOptional / source conditionsShort error message.
descriptionstringOptional / source conditionsDetailed explanation when present.

Confirmation required

Next action

Reconcile registration outcome before retrieving certificates.

POST/v1/sign/hash

Sign document digests

Source documented · Deployment contract unconfirmed · Sandbox not tested

OperationId: RssSignHash · RSS 1.11.260911 · PDF pages: 27, 28, 29, 30

Source-derived; deployment remains unconfirmed. Sample inputs are for reading, not live submission.

Preconditions and authentication

Have an eligible credential and fixed document version. Prepare digests using confirmed encoding/algorithm; signing may still require user action. Keep the Bearer token server-side; exclude tokens/SAD from frontend code and public logs.

Operation headers
HeaderRequiredMeaning
x-languageNoResponse language.
x-rp-idNoRP-generated reference, distinct from service-generated x-billcode-id.

Request · application/json

Request schema
FieldTypePresenceDescription
credential_idstringRequiredIdentifier associated with the selected key and certificate.
citizen_pidstringRequiredCitizen personal identifier; never enter real data in the demo.
partner_codestringRequiredCode of the partner submitting the request.
originator_idstringRequiredIdentifier of the originating application.
operation_modestringOptional / source conditionsS: Synchronous; A: asynchronous, default A in the RSS table. enum: S, A; default: A
platformstringOptional / source conditionsOriginating channel: WEB or APP. enum: WEB, APP; default: WEB
postback_urlstringOptional / source conditionsRP result receiver; confirm registration and sender verification. format: uri
documentsobject[]RequiredDocument names and digests; confirm the digest encoding.
documents[].document_namestringRequiredDocument name.
documents[].digest_valuestringRequiredDocument digest; no real document in the demo.
Illustrative payload — Not executed against the service
{
  "credential_id": "DEMO_RSS_CREDENTIAL",
  "citizen_pid": "DEMO_CITIZEN_ONLY",
  "partner_code": "DEMO_PARTNER",
  "originator_id": "DEMO_APP",
  "documents": [
    {
      "document_name": "DEMO_DOCUMENT",
      "digest_value": "ypeBEsobvcr6wjGzmiPcTaeG7/gUfE5yuYB3ha/uSLs="
    }
  ],
  "operation_mode": "A"
}

Response · 200

Read HTTP status and business outcome separately.

Response 200
FieldTypePresenceDescription
dataobjectOptional / source conditions
data.statusstringOptional / source conditionsStatus in the response table.
data.signaturesstring[]Optional / source conditionsBase64 signatures according to the table; confirm envelope.
statusstringOptional / source conditionsTop-level status in the source example; relationship with data.status unconfirmed.

Response · default

Read HTTP status and business outcome separately.

Response default
FieldTypePresenceDescription
codestringOptional / source conditionsService error code, distinct from HTTP status.
messagestringOptional / source conditionsShort error message.
descriptionstringOptional / source conditionsDetailed explanation when present.

Confirmation required

Next action

Persist the reference and reconcile via callback or status lookup; PROCESSING is not completion.

GET/v1/get/signing/status

Read signing outcome

Source documented · Deployment contract unconfirmed · Sandbox not tested

OperationId: RssGetSigningStatus · RSS 1.11.260911 · PDF pages: 31, 32

Source-derived; deployment remains unconfirmed. Sample inputs are for reading, not live submission.

Preconditions and authentication

Retain x-billcode-id from sign/hash. Reconcile its outcome before deciding to create another request. Keep the Bearer token server-side; exclude tokens/SAD from frontend code and public logs.

Operation headers
HeaderRequiredMeaning
x-billcode-idYesReference returned by sign/hash.
x-languageNoResponse language.
x-rp-idNoRP-generated reference, distinct from service-generated x-billcode-id.

Response · 200

Read HTTP status and business outcome separately.

Response 200
FieldTypePresenceDescription
statusstringOptional / source conditionsSigning request state.
dataobjectOptional / source conditions
data.signaturesstring[]Optional / source conditionsInconsistent source description; not sufficient to interpret cryptographic output.
data.descriptionstringOptional / source conditionsOutcome explanation.

Response · default

Read HTTP status and business outcome separately.

Response default
FieldTypePresenceDescription
codestringOptional / source conditionsService error code, distinct from HTTP status.
messagestringOptional / source conditionsShort error message.
descriptionstringOptional / source conditionsDetailed explanation when present.

Confirmation required

Next action

Bind the outcome to the document version; assemble and validate under the contract.

GET/v1/get/certificates

Read certificates for the citizen

Source documented · Deployment contract unconfirmed · Sandbox not tested

Source: RSS 1.11.260911 · PDF 23,24,25,26 · selected-fields

Prerequisites: Agree deployment scope, authentication and permissions with Mobile-ID. Keep tokens and signing data on the backend; do not execute from this demo page.

Source authentication: Bearer

Parameters

Operation parameters
NameInRequiredType
x-languageheaderNostring
x-rp-idheaderNostring
x-citizen-pidheaderYesstring
x-certificate-info-enabledheaderNoboolean
x-certificatesheaderNostring

HTTP 200

Certificate and key response
FieldTypePresenceMeaning and limits
certificatesarrayOptionalService certificate list.
certificates[].statusstringOptionalRSS certificate status: 0 locked, 1 active, 2 expired; not a document validation result.
certificates[].cert_chainsarrayRequiredBase64 X.509 chain; signer certificate first in the source.
certificates[].credential_idstringRequiredCredential identifier associated with key and certificate.
certificates[].serial_numberstringConditionalSerial number, returned when certificate information is enabled.
certificates[].issuer_dnstringConditionalIssuer distinguished name; conditional.
certificates[].subject_dnstringConditionalSubject distinguished name; no real data in fixtures.
certificates[].valid_fromstringConditionalValidity start in ISO 8601 UTC when certificate information is enabled.
certificates[].valid_tostringConditionalValidity end in ISO 8601 UTC; not a revocation check.
keyobjectOptional
key.statusstringOptionalSource key status; no invented enum.
key.algosarrayOptionalReturned key algorithm OIDs.
key.lenintegerOptionalKey length in bits.
key.curvestringOptionalCurve when applicable.

Next: Inspect business state and reconcile tracking identifiers; assemble and validate the document only after receiving the correct signing result. Reconcile a lost response before creating another request.

The source uses both x-certificate-info-enabled and x-certificate-info-enable. Confirm the header before a live call; see RSS13-CERT-HEADER. Certificate metadata is not a document validation report.

The source uses both x-certificate-info-enabled and x-certificate-info-enable. Confirm the header before a live call; see RSS13-CERT-HEADER. Certificate metadata is not a document validation report.

POST/v1/request/citizen/identity-sharing

Request VNeID data-sharing consent

Source documented · Deployment contract unconfirmed · Sandbox not tested

Source: RSS 1.11.260911 · PDF 33,34,35 · selected-fields

Prerequisites: Agree deployment scope, authentication and permissions with Mobile-ID. Keep tokens and signing data on the backend; do not execute from this demo page.

Source authentication: Bearer

Parameters

Operation parameters
NameInRequiredType
x-languageheaderNostring
x-rp-idheaderNostring

Input — Documented fields

Content-Type: application/json

Fields edited from the source
FieldTypePresenceMeaning and limits
citizen_pidstringRequiredCitizen identifier.
request_timestringOptionalSource format ddMMyyyyHHmmss.
target_codestring · Update-info-web, update-info-appRequiredSharing target.
postback_urlstringOptionalBackend postback URL.

HTTP 200

Fields edited from the source
FieldTypePresenceMeaning and limits
statusstringRequiredBusiness outcome; not an HTTP status or signature validation result.
codestringOptionalSource error identifier; do not translate.
messagestringOptionalError summary.
descriptionstringOptionalError explanation.
dataobjectConditionalInitialization result, not shared data or a signature.
data.transaction_codestringRequiredVNeID transaction code returned after initialization.
data.response_timestringOptionalSource table says String[] while its example is String; unresolved.

Next: Inspect business state and reconcile tracking identifiers; assemble and validate the document only after receiving the correct signing result. Reconcile a lost response before creating another request.

Items to confirm: RSS12-SHARE-TYPE

GET/v1/get/citizen/identity-sharing

Read the data-sharing result

Source documented · Deployment contract unconfirmed · Sandbox not tested

Source: RSS 1.11.260911 · PDF 36,37,38 · selected-fields

Prerequisites: Agree deployment scope, authentication and permissions with Mobile-ID. Keep tokens and signing data on the backend; do not execute from this demo page.

Source authentication: Bearer

Parameters

Operation parameters
NameInRequiredType
x-languageheaderNostring
x-rp-idheaderNostring
x-transaction-codeheaderYesstring
x-request-timeheaderNostring
x-target-codeheaderYesstring

HTTP 200

Fields edited from the source
FieldTypePresenceMeaning and limits
statusstringRequiredBusiness outcome; not an HTTP status or signature validation result.
codestringOptionalSource error identifier; do not translate.
messagestringOptionalError summary.
descriptionstringOptionalError explanation.
dataobjectConditionalSharing outcome; full citizen fields intentionally not used in demo fixtures.
data.user_info_tokenstringConditionalJWS-formatted sharing token; check under the agreed trust contract.
data.response_timestringOptionalResponse time in source format.
data.descriptionstringOptionalOutcome explanation.

Next: Inspect business state and reconcile tracking identifiers; assemble and validate the document only after receiving the correct signing result. Reconcile a lost response before creating another request.

Items to confirm: RSS12-SHARE-HEADER

Source function catalog

Specification functions
FunctionMethod / pathPDF pagePage coverage
AuthenticationPOST {sso-url}/realms/{realm}/protocol/openid-connect/token8Source catalog; schema not fully transcribed
System infoGET /v1/get/system/info9Source catalog; schema not fully transcribed
Register partnerPOST /v1/register/partner12Source catalog; schema not fully transcribed
Create credentialPOST /v1/create/credential15Read schema here
Credential statusGET /v1/get/credential/status20Read schema here
CertificatesGET /v1/get/certificates23Source catalog; schema not fully transcribed
Sign hashPOST /v1/sign/hash27Read schema here
Signing statusGET /v1/get/signing/status31Read schema here
Identity sharing requestPOST /v1/request/citizen/identity-sharing33Source catalog; schema not fully transcribed
Identity sharing resultGET /v1/get/citizen/identity-sharing36Source catalog; schema not fully transcribed
TransactionsGET /v1/get/transactions39Source catalog; schema not fully transcribed
RP universal linkGET /v1/get/rp/universal-link42Source catalog; schema not fully transcribed
Tax informationGET /v1/get/tax/information44Source catalog; schema not fully transcribed
Tax information resultGET /v1/get/tax/information/result54Source catalog; schema not fully transcribed
Application typeGET /v1/get/application/type62Source catalog; schema not fully transcribed
PartnersGET /v1/get/partners65Source catalog; schema not fully transcribed
Verify citizen IDPOST /v1/verify/eid67Source catalog; schema not fully transcribed
Reload systemPOST /v1/reload/system70Source catalog; schema not fully transcribed

Items to settle before integration

RSS-01 · RSS §1.4; endpoint tables

The base URL already contains /v1 while paths also contain /v1.

Confirm composed URLs before configuring an environment.

RSS-02 · RSS signHash / signing status, physical pp.27–32

Tables and examples differ in envelope; lookup signature description is unclear.

Confirm success/processing schemas per operation.

RSS-03 · RSS createCredential, physical pp.15–19

Example omits mandatory table fields and includes fields not listed.

Edited examples include mandatory fields; they are not executed requests.

RSS-04 · RSS signHash, physical pp.27–30

Digest encoding and conditional outcomes need deployment confirmation.

Do not import SIC algorithms/encoding into RSS.

RSS-05 · RSS credential status, physical pp.20–21

Table requires data.citizen_pid/data.description while PROCESSING examples omit data.

Confirm status-dependent presence; do not invent production schema branches.

Data sharing: Tracking and limits

Initialization returns data.transaction_code and x-billcode-id: Retain both separately. The lookup table requires x-transaction-code/x-target-code while its example uses x-billcode-id; Mobile-ID must confirm actual headers. response_time also differs in type between table and example.

§2.10 describes up to three retrievals within 30 minutes of successful VNeID confirmation. This applies to shared-data retrieval, not SAD lifetime, signing retries or a platform SLA; confirm before operation.

Compare with Viewer actions

Watch the appropriate route, read outcomes and omissions, then consult the operation. Videos do not replace contracts or validation reports.

Watch seven Viewer/VNeID recordings

Search Mobile-ID Sign

Local search inside the offline package.