bcgov / entity

ServiceBC Registry Team working on Legal Entities
Apache License 2.0
23 stars 58 forks source link

Create UI: Unable to file the vertical amalgamation due to schema errors. #19856

Closed riyazuddinsyed closed 8 months ago

riyazuddinsyed commented 8 months ago

Describe the bug in the current situation when the user tries to file a vertical amalgamation then upon File and Pay the UI throws an error saying Unable to save the application.

Steps to reproduce the behavior:

  1. log in to 'https://test.create.business.bcregistry.gov.bc.ca/' using bcrega001/98900001
  2. Search for the company 'VIRTUAL DESIGN CORP.' and start an Amalgamation.
  3. In the Amalgamating business table add the company '1059382 B.C. LTD.'
  4. Now complete the filing and hit on file an pay
  5. See the error.

Screenshots/ Visual Reference/ Source

Screen Shot 2024-02-14 at 11.36.18 PM.png

The schema that isn't being identified is as follows We were unable to save your Application due to the following errors:

{'header': {'name': 'amalgamationApplication', 'certifiedBy': 'BCREGTEST DALIA ONE', 'date': '2024-02-14', 'filingId': 393706, 'folioNumber': '', 'isFutureEffective': False}, 'business': {'legalType': 'BEN', 'identifier': 'Tb4JxlwKz3'}, 'amalgamationApplication': {'amalgamatingBusinesses': [{'type': 'lear', 'role': 'holding', 'identifier': 'BC1059456', 'name': 'VIRTUAL DESIGN CORP.', 'authInfo': {'contacts': [{'email': 'riyazsd707@gmail.com', 'phone': '(437) 887-5267', 'extension': ''}]}, 'legalType': 'BEN', 'addresses': {'recordsOffice': {'deliveryAddress': {'addressCity': 'Victoria', 'addressCountry': 'CA', 'addressRegion': 'BC', 'addressType': 'delivery', 'deliveryInstructions': None, 'id': 2236396, 'postalCode': 'V9A 1V3', 'streetAddress': "1-2925 Qu'appelle St", 'streetAddressAdditional': ''}, 'mailingAddress': {'addressCity': 'Victoria', 'addressCountry': 'CA', 'addressRegion': 'BC', 'addressType': 'mailing', 'deliveryInstructions': None, 'id': 2236395, 'postalCode': 'V9A 1V3', 'streetAddress': "1-2925 Qu'appelle St", 'streetAddressAdditional': ''}}, 'registeredOffice': {'deliveryAddress': {'addressCity': 'Victoria', 'addressCountry': 'CA', 'addressRegion': 'BC', 'addressType': 'delivery', 'deliveryInstructions': None, 'id': 2236398, 'postalCode': 'V8Z 7H4', 'streetAddress': '4113 Hatfield Rd', 'streetAddressAdditional': ''}, 'mailingAddress': {'addressCity': 'Victoria', 'addressCountry': 'CA', 'addressRegion': 'BC', 'addressType': 'mailing', 'deliveryInstructions': None, 'id': 2236397, 'postalCode': 'V8T 4E9', 'streetAddress': '2925 Quadra Street', 'streetAddressAdditional': ''}}}, 'isNotInGoodStanding': False, 'isFrozen': False, 'isFutureEffective': False, 'isDraftTask': False, 'isPendingFiling': False, 'isLimitedRestoration': False, 'isHistorical': False, 'status': 0}, {'type': 'lear', 'role': 'amalgamating', 'identifier': 'BC1059382', 'name': '1059382 B.C. LTD.', 'authInfo': {'contacts': [{'email': 'riyazsd707@gmail.com', 'phone': '(437) 887-5267', 'extension': ''}]}, 'legalType': 'BEN', 'addresses': {'recordsOffice': {'deliveryAddress': {'addressCity': 'Victoria', 'addressCountry': 'CA', 'addressRegion': 'BC', 'addressType': 'delivery', 'deliveryInstructions': '', 'id': 2235916, 'postalCode': 'V8Z 7H4', 'streetAddress': '4113 Hatfield Rd', 'streetAddressAdditional': ''}, 'mailingAddress': {'addressCity': 'Victoria', 'addressCountry': 'CA', 'addressRegion': 'BC', 'addressType': 'mailing', 'deliveryInstructions': '', 'id': 2235915, 'postalCode': 'V8Z 7H4', 'streetAddress': '4113 Hatfield Rd', 'streetAddressAdditional': ''}}, 'registeredOffice': {'deliveryAddress': {'addressCity': 'Victoria', 'addressCountry': 'CA', 'addressRegion': 'BC', 'addressType': 'delivery', 'deliveryInstructions': '', 'id': 2235918, 'postalCode': 'V8Z 7H4', 'streetAddress': '4113 Hatfield Rd', 'streetAddressAdditional': ''}, 'mailingAddress': {'addressCity': 'Victoria', 'addressCountry': 'CA', 'addressRegion': 'BC', 'addressType': 'mailing', 'deliveryInstructions': '', 'id': 2235917, 'postalCode': 'V8Z 7H4', 'streetAddress': '4113 Hatfield Rd', 'streetAddressAdditional': ''}}}, 'isNotInGoodStanding': False, 'isFrozen': False, 'isFutureEffective': False, 'isDraftTask': False, 'isPendingFiling': False, 'isLimitedRestoration': False, 'isHistorical': False, 'status': 0}], 'type': 'vertical', 'nameRequest': {'legalType': 'BEN', 'correctNameOption': 'correct-aml-adopt', 'legalName': 'VIRTUAL DESIGN CORP.'}, 'nameTranslations': [], 'offices': {'recordsOffice': {'deliveryAddress': {'addressCity': 'Victoria', 'addressCountry': 'CA', 'addressRegion': 'BC', 'addressType': 'delivery', 'deliveryInstructions': None, 'id': 2236396, 'postalCode': 'V9A 1V3', 'streetAddress': "1-2925 Qu'appelle St", 'streetAddressAdditional': ''}, 'mailingAddress': {'addressCity': 'Victoria', 'addressCountry': 'CA', 'addressRegion': 'BC', 'addressType': 'mailing', 'deliveryInstructions': None, 'id': 2236395, 'postalCode': 'V9A 1V3', 'streetAddress': "1-2925 Qu'appelle St", 'streetAddressAdditional': ''}}, 'registeredOffice': {'deliveryAddress': {'addressCity': 'Victoria', 'addressCountry': 'CA', 'addressRegion': 'BC', 'addressType': 'delivery', 'deliveryInstructions': None, 'id': 2236398, 'postalCode': 'V8Z 7H4', 'streetAddress': '4113 Hatfield Rd', 'streetAddressAdditional': ''}, 'mailingAddress': {'addressCity': 'Victoria', 'addressCountry': 'CA', 'addressRegion': 'BC', 'addressType': 'mailing', 'deliveryInstructions': None, 'id': 2236397, 'postalCode': 'V8T 4E9', 'streetAddress': '2925 Quadra Street', 'streetAddressAdditional': ''}}}, 'contactPoint': {'email': 'riyazsd707@gmail.com', 'phone': '(437) 887-5267'}, 'courtApproval': True, 'parties': [{'deliveryAddress': {'addressCity': 'Victoria', 'addressCountry': 'CA', 'addressRegion': 'BC', 'deliveryInstructions': None, 'id': 2236392, 'postalCode': 'V8Z 7H4', 'streetAddress': '8-725 Boul Casavant E', 'streetAddressAdditional': 'Additional street addresses'}, 'mailingAddress': {'addressCity': 'Victoria', 'addressCountry': 'CA', 'addressRegion': 'BC', 'deliveryInstructions': None, 'id': 2236393, 'postalCode': 'V8Z 7H4', 'streetAddress': '8-725 Boul Casavant E', 'streetAddressAdditional': 'Additional street addresses'}, 'officer': {'email': 'riyazsd707@gmail.com', 'firstName': 'BCREGTEST DALIA', 'id': 694239, 'lastName': 'ONE', 'partyType': 'person'}, 'roles': [{'appointmentDate': '2023-07-27', 'cessationDate': None, 'roleType': 'Director'}], 'isLookupBusiness': None}, {'deliveryAddress': {'addressCity': 'Victoria', 'addressCountry': 'CA', 'addressRegion': 'BC', 'deliveryInstructions': None, 'id': 2236399, 'postalCode': 'V9A 1V3', 'streetAddress': "102-2925 Qu'appelle St", 'streetAddressAdditional': None}, 'mailingAddress': {'addressCity': 'Victoria', 'addressCountry': 'CA', 'addressRegion': 'BC', 'deliveryInstructions': None, 'id': 2236400, 'postalCode': 'V9A 1V3', 'streetAddress': "102-2925 Qu'appelle St", 'streetAddressAdditional': None}, 'officer': {'email': '', 'firstName': 'TEST', 'id': 694241, 'lastName': 'TESTER', 'partyType': 'person'}, 'roles': [{'appointmentDate': '2023-07-27', 'cessationDate': None, 'roleType': 'Director'}], 'isLookupBusiness': None}, {'deliveryAddress': {'addressCity': 'Victoria', 'addressCountry': 'CA', 'addressRegion': 'BC', 'deliveryInstructions': None, 'id': 2237123, 'postalCode': 'V8Z 7H4', 'streetAddress': '4113 Hatfield Rd', 'streetAddressAdditional': None}, 'mailingAddress': {'addressCity': 'Victoria', 'addressCountry': 'CA', 'addressRegion': 'BC', 'deliveryInstructions': None, 'id': 2237124, 'postalCode': 'V8Z 7H4', 'streetAddress': '4113 Hatfield Rd', 'streetAddressAdditional': None}, 'officer': {'email': '', 'firstName': 'REMO', 'id': 694270, 'lastName': 'ROCK', 'partyType': 'person'}, 'roles': [{'appointmentDate': '2023-07-31', 'cessationDate': None, 'roleType': 'Director'}], 'isLookupBusiness': None}, {'deliveryAddress': {'addressCity': 'Victoria', 'addressCountry': 'CA', 'addressRegion': 'BC', 'deliveryInstructions': None, 'id': 2237127, 'postalCode': 'V8T 4E9', 'streetAddress': '2925 Quadra St', 'streetAddressAdditional': ''}, 'mailingAddress': {'addressCity': 'Victoria', 'addressCountry': 'CA', 'addressRegion': 'BC', 'deliveryInstructions': None, 'id': 2237128, 'postalCode': 'V8T 4E9', 'streetAddress': '2925 Quadra St', 'streetAddressAdditional': ''}, 'officer': {'firstName': 'TEST', 'id': 694273, 'lastName': 'TESTERS', 'partyType': 'person', 'middleName': 'TESTER'}, 'roles': [{'appointmentDate': '2023-07-31', 'cessationDate': None, 'roleType': 'Director'}], 'isLookupBusiness': None}, {'officer': {'id': 'faa05e3e-9512-4536-98af-d855be7a74cd', 'firstName': 'BCREGTEST DALIA', 'lastName': 'ONE', 'middleName': '', 'organizationName': '', 'partyType': 'person', 'email': 'oge.anyahuru@gov.bc.ca'}, 'roles': [{'roleType': 'Completing Party', 'appointmentDate': '2024-02-14'}], 'mailingAddress': {'addressCity': 'Victoria', 'addressCountry': 'CA', 'addressRegion': 'BC', 'postalCode': 'V8Z 7H4', 'streetAddress': '8-725 Boul Casavant E', 'streetAddressAdditional': 'Additional street addresses'}}], 'shareStructure': {'shareClasses': [{'currency': 'CAD', 'hasMaximumShares': True, 'hasParValue': True, 'hasRightsOrRestrictions': True, 'id': 153655, 'maxNumberOfShares': 9000, 'name': 'T Shares', 'parValue': 1, 'priority': 1, 'series': [{'hasMaximumShares': None, 'hasRightsOrRestrictions': None, 'id': 154, 'maxNumberOfShares': None, 'name': 'HH Shares', 'priority': 1, 'type': 'Series'}], 'type': 'Class'}, {'currency': 'CAD', 'hasMaximumShares': True, 'hasParValue': True, 'hasRightsOrRestrictions': True, 'id': 153658, 'maxNumberOfShares': 8900, 'name': 'MID Shares', 'parValue': 1, 'priority': 2, 'series': [], 'type': 'Class'}, {'currency': 'CAD', 'hasMaximumShares': True, 'hasParValue': True, 'hasRightsOrRestrictions': True, 'id': 153659, 'maxNumberOfShares': 2000, 'name': 'HIT Shares', 'parValue': 9, 'priority': 3, 'series': [], 'type': 'Class'}]}}} is not valid under any of the given schemas

severinbeauvais commented 8 months ago

I think this is because some directors have an empty email, ie:

image.png

There was a similar fix in #19774 but that only check for email=null, not email="".

I will look into the schema in more detail...

severinbeauvais commented 8 months ago

Ticket 19774 fixed the filing JSON so that null officer emails were stripped out, and the JSON schema reference states that an empty string ("") is valid. However, the reference also leaves room for some implementations to validate formats a bit differently... Apparently, our BE implementation doesn't like empty email addresses, so in this ticket they have been deleted from the filing object/JSON.

This fix is now in Dev. It will go to Test as part of the usual deployment schedule/process.