Add COMPANY_LEGAL_NAME to UserInfoFieldName enum#253
Conversation
companyLegalName is a valid UMA counterparty data field (UmaCounterpartyDataField.COMPANY_LEGAL_NAME = "companyLegalName") used for B2B payment support, and already exists in the Grid API's CustomerInfoFieldName enum, but was missing from UMAaaS's UserInfoFieldName. When a receiver VASP marks companyLegalName as mandatory, sparkcore's UMAaaS VASP (convert_requested_counterparty_data) cannot map it and raises a 501 UNRECOGNIZED_MANDATORY_COUNTERPARTY_DATA_KEY, which pages on-call. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Greptile SummaryAdds
Confidence Score: 5/5Safe to merge — the change is a pure additive enum extension with no breaking surface. The source YAML, the bundled openapi.yaml, and the mintlify bundle are all updated consistently with an identical single-line addition. The new value follows the existing naming convention and aligns with the UMA protocol enum. No logic, validation, or generated client code is touched in this PR. No files require special attention; the only thing worth a quick human glance is confirming the downstream webdev vendored copy will pick up this upstream change on the next schema regen.
|
| Filename | Overview |
|---|---|
| openapi/components/schemas/users/UserInfoFieldName.yaml | Adds COMPANY_LEGAL_NAME to the UserInfoFieldName enum — minimal, correct, follows existing UPPER_SNAKE_CASE convention. |
| openapi.yaml | Bundled OpenAPI spec regenerated via npm run build:openapi; diff is identical to the source schema change. |
| mintlify/openapi.yaml | Mintlify-specific bundled spec regenerated; same single-line addition, consistent with openapi.yaml. |
Sequence Diagram
sequenceDiagram
participant ReceiverVASP as Receiver VASP
participant UMAaaS as UMAaaS (sparkcore)
participant Schema as UserInfoFieldName enum
ReceiverVASP->>UMAaaS: Quote request with companyLegalName (mandatory)
UMAaaS->>Schema: convert_requested_counterparty_data lookup
Note over Schema: Before: COMPANY_LEGAL_NAME missing<br/>After: COMPANY_LEGAL_NAME present
alt Before this PR
Schema-->>UMAaaS: Key not found
UMAaaS-->>ReceiverVASP: 501 UNRECOGNIZED_MANDATORY_COUNTERPARTY_DATA_KEY
else After this PR
Schema-->>UMAaaS: Resolved to COMPANY_LEGAL_NAME
UMAaaS-->>ReceiverVASP: Quote created successfully
end
Reviews (1): Last reviewed commit: "Add COMPANY_LEGAL_NAME to UserInfoFieldN..." | Re-trigger Greptile
|
Superseding this. Rather than keep adding fields to the deprecated umaaas-api See lightsparkdev/webdev#28003. |
What
Adds
COMPANY_LEGAL_NAMEto theUserInfoFieldNameenum (last entry, afterBUSINESS_TYPE).Regenerated the bundled
openapi.yamlandmintlify/openapi.yamlvianpm run build:openapi. No version bump and nogenerated/regen, matching the convention for prior single-value additions (#248 "Add new business type field", #232 "Add identifier to userinfofieldname").Why
companyLegalNameis a valid UMA counterparty data field used for B2B payment support (Tazapay). It already exists in the UMA protocol enum (UmaCounterpartyDataField.COMPANY_LEGAL_NAME = "companyLegalName") and in the Grid API'sCustomerInfoFieldNameenum, but was never added here.As a result, when a receiver VASP marks
companyLegalNameas a mandatory counterparty field, sparkcore's UMAaaS VASP (convert_requested_counterparty_data) cannot map it to aUserInfoFieldNameand raises a 501UNRECOGNIZED_MANDATORY_COUNTERPARTY_DATA_KEY, which pages on-call ongen_create_quote//grid/rc/quotes.COMPANY_LEGAL_NAMEis currently the only field the Grid/UMA enums recognize that UMAaaS does not.A matching fix was applied to the vendored copy of this spec in
lightsparkdev/webdev(umaaas-api/), but that copy is regenerated from this repo viaupdate_schema.sh. Without this upstream change, the next regen silently reverts the fix and the alert returns.Related
🤖 Generated with Claude Code