Standardize billing account contacts and customer models to use ISO 3166-2 standard for Country and State values

Problem

Currently we store Country and State as full names in the BillingAccountContact model, but with alpha3 code in the Customer model. See discussion here:

  1. #7414 (comment 1553640906)
  2. Add state_name method to contact models to cons... (#6510 - closed)
  3. https://docs.google.com/document/d/1_YbxNCo3KXK1-KdIZTgSvmU9kIslYjQnFZAmmu1DSqQ/edit#bookmark=id.mg0spjbpa2a4
  4. https://gitlab.com/gitlab-org/customers-gitlab-com/-/issues/4026+

Proposal

Standardize the two models to use the ISO 3166-2 standard for country and state values: https://docs.google.com/spreadsheets/d/1pdiHdWcrFrLotUCj6SiJEcSKYY_0YHUER90YJEoyJcY/edit#gid=0 and integrate with Zuora to handle the issues described in Add state_name method to contact models to cons... (#6510 - closed).

See discussion here for more information: https://gitlab.com/gitlab-org/customers-gitlab-com/-/issues/4026#note_1222214049

Edited Jul 14, 2025 by Michael Lunøe
Assignee Loading
Time tracking Loading