Hello, in my company we worked with APIs from Mangopay, Lemonway, Treezor, and others.
And in many of them, there is a concept of User. This means, before creating any asset like a wallet, we first create a User, and this gives us an ID that we then use when creating a wallet giving it the user as owner. In Rapyd as you know, you don’t create a user and then a wallet, but directly a wallet with some metadata related to a contact (which essentially is a user embedded in the wallet asset)
When you need to do a User validation (KYC) in the other APIs, you pass a document and a user ID, this means that when the user completes its KYC, all limitations are lifted from THE USER, so any wallets in which he is an owner, are KYC validated.
In Rapyd tho, you do KYC by indicating a Wallet id and a contact id, and when the KYC is approved, it is just the wallet that gets the KYC limitations lifted. So in a case, we want to create a different wallet with the same contact metadata, that will require a new KYC process. Am I understanding this correctly?
The reason why we create several wallets for a single user depends on several business logic we have internally.