Citigroup · Authentication Profile

Citigroup Authentication

Authentication

Citigroup secures its APIs with oauth2 and mutualTLS across 3 declared security schemes, as derived from its OpenAPI definitions. OAuth 2.0 is offered via the authorizationCode and clientCredentials flow(s).

BankingFinancial ServicesUnited StatesMoney Center BankOpen BankingOpen FinanceTreasury and Trade SolutionsCitiConnectPaymentsFXCorporate BankingFortune 100
Methods: oauth2, mutualTLS Schemes: 3 OAuth flows: authorizationCode, clientCredentials API key in:

Security Schemes

CitiOAuth2AuthorizationCode oauth2
· flows: authorizationCode
CitiConnectOAuth2 oauth2
· flows: clientCredentials
CitiConnectMutualTLS mutualTLS

Source

Authentication Profile

citigroup-authentication.yml Raw ↑
generated: '2026-07-23'
method: searched
source: >-
  Citi Developer Hub / Citi Partner Portal and CitiConnect API documentation
  (partner.citi.com/developers, developer.citi.com, citigroup.com CitiConnect
  API portal). No public OpenAPI is published, so securitySchemes are
  transcribed from Citi's published HTML documentation rather than derived
  from a machine-readable spec.
docs:
  - https://partner.citi.com/developers
  - https://www.citigroup.com/global/insights/citiconnect-api-portal
summary:
  types:
    - oauth2
    - mutualTLS
  api_key_in: []
  oauth2_flows:
    - authorizationCode
    - clientCredentials
  notes: >-
    Two distinct authentication surfaces. The retail Citi Developer Hub uses
    OAuth 2.0 authorization-code with an explicit customer consent (strong
    customer authentication) step to authorize third-party access to a
    consenting customer's account data and payment initiation. The corporate
    CitiConnect (Treasury and Trade Solutions) channel uses OAuth 2.0 together
    with mutual TLS (client-certificate) for enterprise ERP/TMS connectivity.
schemes:
  - name: CitiOAuth2AuthorizationCode
    type: oauth2
    surface: Citi Developer Hub (retail open banking)
    flows:
      - flow: authorizationCode
        note: >-
          Third-party application redirects the customer to Citi to
          authenticate and grant consent; Citi returns an authorization code
          exchanged for access and refresh tokens. Consent is scoped per
          product family (Accounts, Money Movement, Customers, etc.).
    consent: true
    sca: true
    sources:
      - apis.yml (citi-authorize-api, citi-accounts-transactions-api)
  - name: CitiConnectOAuth2
    type: oauth2
    surface: CitiConnect (corporate Treasury and Trade Solutions)
    flows:
      - flow: clientCredentials
        note: >-
          Machine-to-machine access for onboarded corporate clients; documented
          as OAuth 2.0 in the CitiConnect API portal.
    sources:
      - apis.yml (citiconnect-api, citiconnect-worldlink-api, citiconnect-fx-api)
  - name: CitiConnectMutualTLS
    type: mutualTLS
    surface: CitiConnect (corporate Treasury and Trade Solutions)
    note: >-
      Client-certificate (mutual TLS) is required in addition to OAuth 2.0 for
      CitiConnect enterprise connectivity, per Citi's published CitiConnect
      documentation.
    sources:
      - apis.yml (citiconnect-api)