The purpose of this proposal is to outline the development of a wallet stub that can be utilized within local and integration environments to facilitate end-to-end (E2E) testing of the issuance and presentation flow. The wallet stub will serve as a mock component, simulating the behavior of a user's digital wallet in the ecosystem.
Objective
Development of a wallet stub to:
Enable E2E testing of the issuance and presentation flow.
Ensure compatibility and proper integration with the portal, issuer component, and connectors based on the catena-x standard 24.05.
Dependencies and Integration Applications
The wallet stub will be designed to integrate seamlessly with the following components:
Portal
Issuer Component
Connector
High-Level Requirements
Wallet Stub Functionality
Simulate the storage and management of digital credentials.
Provide endpoints for credential issuance and presentation.
Integration with Portal
The portal should be able to direct requests to the wallet stub for testing purposes.
Ensure user interface consistency with actual wallet interfaces.
Integration with Issuer Component
Implement APIs that allow the issuer component to issue credentials to the wallet stub.
Validate the integrity and authenticity of credentials.
Integration with EDC
Facilitate communication between the wallet stub and EDC to obtain necessary data for credential issuance.
Ensure data privacy and security during data retrieval and transfer.
Detailed Functionality
Wallet Stub
Credential Issuance: The stub must accept and simulate the storage of credentials issued by the issuer component.
Credential Presentation: The stub must be able to present stored credentials upon request.
APIs: Define and implement APIs for interaction with the portal and issuer component.
Portal
User Interaction: Allow users to initiate credential issuance and presentation through the wallet stub.
Display Information: Show the status of credentials within the wallet stub.
Issuer Component
API Integration: Create APIs for the issuer to send credentials to the wallet stub.
Credential Verification: The issuer must verify the wallet stub's ability to handle credentials correctly.
EDC
Data Access: Ensure secure API endpoints for the wallet stub to access necessary data.
Data Format: Define the data format and structure that will be accepted by the wallet stub for credential issuance.
Testing and Validation
Implement automated test cases to validate the wallet stub's functionality in both local and integration environments.
Conduct performance testing to ensure the wallet stub can handle expected loads.
Out of Scope
Production-level wallet functionalities.
Real user data handling within the testing environments.
Timeline and Milestones
Design Phase: Till end of July 2024
Development Phase: Till end of August 2024
Integration Testing: depending on the committer plans
User Acceptance Testing: depending on the committer and association plans
Deployment to Environments: depending on the committer and association plans
Risks and Mitigation Strategies
Integration Issues: Regular sync-up meetings and integration tests to detect and address issues early.
Delays in Delivery: Allocate buffer time in the timeline for unexpected delays.
Impact
Impact would be more stability for components that depend on the wallet.
Additional information
[X] I'm willing to contribute to this feature
Contribution by Cofinity-X Team
Commiter to support this @nitin-vavdiya
Description
The purpose of this proposal is to outline the development of a wallet stub that can be utilized within local and integration environments to facilitate end-to-end (E2E) testing of the issuance and presentation flow. The wallet stub will serve as a mock component, simulating the behavior of a user's digital wallet in the ecosystem.
Objective
Development of a wallet stub to:
Enable E2E testing of the issuance and presentation flow.
Ensure compatibility and proper integration with the portal, issuer component, and connectors based on the catena-x standard 24.05.
Dependencies and Integration Applications
The wallet stub will be designed to integrate seamlessly with the following components:
Portal
Issuer Component
Connector
High-Level Requirements
Wallet Stub Functionality
Simulate the storage and management of digital credentials.
Provide endpoints for credential issuance and presentation.
Integration with Portal
The portal should be able to direct requests to the wallet stub for testing purposes.
Ensure user interface consistency with actual wallet interfaces.
Integration with Issuer Component
Implement APIs that allow the issuer component to issue credentials to the wallet stub.
Validate the integrity and authenticity of credentials.
Integration with EDC
Facilitate communication between the wallet stub and EDC to obtain necessary data for credential issuance.
Ensure data privacy and security during data retrieval and transfer.
Detailed Functionality
Wallet Stub
Credential Issuance: The stub must accept and simulate the storage of credentials issued by the issuer component.
Credential Presentation: The stub must be able to present stored credentials upon request.
APIs: Define and implement APIs for interaction with the portal and issuer component.
Portal
User Interaction: Allow users to initiate credential issuance and presentation through the wallet stub.
Display Information: Show the status of credentials within the wallet stub.
Issuer Component
API Integration: Create APIs for the issuer to send credentials to the wallet stub.
Credential Verification: The issuer must verify the wallet stub's ability to handle credentials correctly.
EDC
Data Access: Ensure secure API endpoints for the wallet stub to access necessary data.
Data Format: Define the data format and structure that will be accepted by the wallet stub for credential issuance.
Testing and Validation
Implement automated test cases to validate the wallet stub's functionality in both local and integration environments.
Conduct performance testing to ensure the wallet stub can handle expected loads.
Out of Scope
Production-level wallet functionalities.
Real user data handling within the testing environments.
Timeline and Milestones
Design Phase: Till end of July 2024
Development Phase: Till end of August 2024
Integration Testing: depending on the committer plans
User Acceptance Testing: depending on the committer and association plans
Deployment to Environments: depending on the committer and association plans
Risks and Mitigation Strategies
Integration Issues: Regular sync-up meetings and integration tests to detect and address issues early.
Delays in Delivery: Allocate buffer time in the timeline for unexpected delays.
Impact Impact would be more stability for components that depend on the wallet.
Additional information
Contribution by Cofinity-X Team Commiter to support this @nitin-vavdiya