Citi Additional Payment Services APIs

Payment-adjacent services: beneficiary account validation and search, entity whitelisting, self-service integration operations, and Request to Pay. Citi publishes 4 machine-readable specifications for this family covering 24 operations, served from developer.citi.com.

Operations 13

GET /transaction/historyreport Transaction Reports
POST /transaction/historyreport Transaction Reports
GET /proofofpayment/{EndToEndId} Proof of Payment Inquiry
POST /payment/banksearch Bank Listing
GET /accounts/amountavailability Payment Amount Availability
POST /document/upload Document Upload
GET /ipscheme/eligibilitycheck Instant Payment Scheme Eligibility Check
POST /proxylookup Proxy Lookup
GET /branch/holiday Branch Holiday
POST /branch/holiday Branch Holiday
GET /citiconnect/prod/selfservices/v1/payment/cutoff Payment Cut-Off Time Inquiry
POST /citiconnect/prod/selfservices/v1/payment/cutoff Payment Cut-Off Time Inquiry
GET /citiconnect/prod/selfservices/v3/payment/beneficiarysearch Payment Beneficiary Search #

Documentation

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/citi-additional-payment-services-apis"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

citi-self-service-api-openapi.yaml Raw ↑
openapi: 3.0.1
info:
  title: Additional Payment Services
  description: >-
    The Additional Payment Services API allows users to get access to
    transaction, account and branch related information in real-time, providing
    transparency and control to the user over the transaction lifecycle. 
  version: ''
servers:
  - url: https://tts.apib2b.citi.com/citiconnect/prod/selfservices/v1
    description: production gateway url
  - url: https://tts.sandbox.apib2b.citi.com/citiconnect/sb/selfservices/v1
    description: sbox url
security:
  - clientCredentials: []
tags: []
paths:
  /transaction/historyreport:
    get:
      summary: Transaction Reports
      description: >-
        CitiConnect Transaction Reports allows users to retrieve reports,
        directly to their ERP or partner application systems for easier
        processing and reconciliation.<br><br><font size='2'><b>Content-Type</b>
        : Supports “application/xml” or “application/json” or “text/csv” :
        <br><b>Authorization</b> : The OAuth Token prefixed with “Bearer” and
        space in between. : <br><b>TranRefNo</b> : endToEndId or MT 100
        Reference Number (mt100refNo). <br><b>Important:</b> Either Transaction
        Reference Number or Date Range is required.  : <br><b>FromDate</b> :
        Start date from when the transaction reports should be generated.
        <b>Important:</b> Either Transaction Reference Number or Date Range is
        required. : <br><b>ToDate</b> : End date from when the transaction
        reports should be generated. <b>Important:</b> Either Transaction
        Reference Number or Date Range is required. : <br><b>BranchNo</b> :
        Branch Number : <br><b>PymtCurrency</b> : Currency related to the
        payment : <br><b>AccountNo</b> :  : <br></font>
      parameters:
        - name: client_id
          in: query
          description: >-
            This is your unique identifier shared during your CitiConnect API
            onboarding. This is the same `client_id` used for oauth token
            generation
          required: true
          schema:
            type: string
        - name: Authorization
          in: header
          description: The OAuth Token prefixed with "Bearer" and space in between.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: 200 OK
          content: {}
    post:
      summary: Transaction Reports
      description: >-
        CitiConnect Transaction Reports allows users to retrieve reports,
        directly to their ERP or partner application systems for easier
        processing and reconciliation.<br><br><font size='2'><b>Content-Type</b>
        : Supports “application/xml” or “application/json” or “text/csv” :
        <br><b>Authorization</b> : The OAuth Token prefixed with “Bearer” and
        space in between. : <br><b>TranRefNo</b> : endToEndId or MT 100
        Reference Number (mt100refNo). <br><b>Important:</b> Either Transaction
        Reference Number or Date Range is required.  : <br><b>FromDate</b> :
        Start date from when the transaction reports should be generated.
        <b>Important:</b> Either Transaction Reference Number or Date Range is
        required. : <br><b>ToDate</b> : End date from when the transaction
        reports should be generated. <b>Important:</b> Either Transaction
        Reference Number or Date Range is required. : <br><b>BranchNo</b> :
        Branch Number : <br><b>PymtCurrency</b> : Currency related to the
        payment : <br><b>AccountNo</b> :  : <br></font>
      parameters:
        - name: client_id
          in: query
          description: >-
            This is your unique identifier shared during your CitiConnect API
            onboarding. This is the same `client_id` used for oauth token
            generation
          required: true
          schema:
            type: string
        - name: Authorization
          in: header
          description: The OAuth Token prefixed with "Bearer" and space in between.
          required: true
          schema:
            type: string
        - name: Content-Type
          in: header
          description: Supports application/json.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: 200 OK
          content: {}
  /proofofpayment/{EndToEndId}:
    get:
      summary: Proof of Payment Inquiry
      description: >-
        CitiConnect Proof of Payment Inquiry allows users to monitor in process
        transactions in real-time, including transaction details and status.
        Real time monitoring of transactions helps users confirm payment
        authenticity using details such as value, currency, and sender/recipient
        details.<br><br><font size='2'><b>Content-Type</b>: Supports
        “application/xml” or “application/json” or “application/pdf”:
        <br><b>x-citi-enc-type</b> : Valid values are xmlenc or jsonenc or no:
        <br><b>Authorization</b> The OAuth Token prefixed with “Bearer” and
        space in between.br><b>endToEndId</b> : Unique identification assigned
        by the initiating party to clearly identify the
        transaction.<br><b>Creation Date</b>: The date when the Proof of Payment
        is created should be specified.<br><b>Amount</b>: Amount should be
        specified.<br><b>requiredExecutionDate</b>: The Date when the execution
        should happen needs to be specified.<br></font>
      parameters:
        - name: client_id
          in: query
          description: >-
            This is your unique identifier shared during your CitiConnect API
            onboarding. This is the same `client_id` used for oauth token
            generation
          required: true
          schema:
            type: string
        - name: Authorization
          in: header
          description: The OAuth Token prefixed with "Bearer" and space in between.
          required: true
          schema:
            type: string
        - name: EndToEndId
          in: path
          required: true
          schema:
            type: string
        - name: creationDate
          in: query
          schema:
            type: string
        - name: amount
          in: query
          schema:
            type: string
        - name: requiredExecutionDate
          in: query
          schema:
            type: string
      responses:
        '200':
          description: 200 OK
          content: {}
  /payment/banksearch:
    post:
      summary: Bank Listing
      description: >-
        CitiConnect Bank Listing allows users to get bank details for specific
        payment methods, primarily for ACH and FVT, for streamlining integration
        and reducing downstream errors.<br><br><font
        size='2'><b>Content-Type</b> : Supports
        “application/json”<br><b>Authorization</b>: The OAuth Token prefixed
        with “Bearer” and space in between. : <br><b>countryCode</b> : Country
        Code<br><b>bankShortName</b>: Bank Short Name <br><b>bankCityName</b> :
        Bank City Name : <br><b>bankCode</b> : Bank Code :
        <br><b>bankRoutingCode</b> : Bank Routing code : <br><b>paymentType</b>
        : Payment Method type (DFT,BKT,…etc.) : <br><b>branchCode</b> : Branch
        Code : <br><b>currencyCode</b> : Currency Code :
        <br><b>bankStateName</b> : Bank state Name : <br></font>
      parameters:
        - name: Authorization
          in: header
          description: The OAuth Token prefixed with "Bearer" and space in between.
          required: true
          schema:
            type: string
        - name: Content-Type
          in: header
          description: Supports application/json.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: 200 OK
          content: {}
  /accounts/amountavailability:
    get:
      summary: Payment Amount Availability
      description: >-
        CitiConnect Payment Amount Availability allows users to submit requests
        to Citi in order to identify whether a Citi client has sufficient funds
        available to complete a transaction. The requestor provides details of
        the transaction and CitiConnect Payment Amount Availability responds
        with a Yes or No to indicate if there are sufficient funds.<br><br><font
        size='2'><b>Content-Type</b> : Supports “application/xml” or
        “application/json”  : <br><b>Authorization</b> : The OAuth Token
        prefixed with “Bearer” and space in between. : <br><b>amount</b> :
        Amount : <br><b>accountNumber</b> : Account Number :
        <br><b>baseCurrency</b> : Currency Type : <br></font>
      parameters:
        - name: client_id
          in: query
          description: >-
            This is your unique identifier shared during your CitiConnect API
            onboarding. This is the same `client_id` used for oauth token
            generation
          required: true
          schema:
            type: string
        - name: Authorization
          in: header
          description: The OAuth Token prefixed with "Bearer" and space in between.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: 200 OK
          content: {}
  /document/upload:
    post:
      summary: Document Upload
      description: >-
        CitiConnect Trade Document Upload allows users to upload documents
        directly to initiate their trade transactions, thereby reducing manual
        touchpoints and accelerating onboarding. <br><br><font
        size='2'><b>Content-Type</b> : Supports “applicationxml” :
        <br><b>Authorization</b> : The OAuth Token prefixed with “Bearer” and
        space in between. : <br><b>token</b> : Token Number :
        <br><b>branchCode</b> :  : <br><b>fileDetail</b> :  : <br></font>
      parameters:
        - name: client_id
          in: query
          description: >-
            This is your unique identifier shared during your CitiConnect API
            onboarding. This is the same `client_id` used for oauth token
            generation
          required: true
          schema:
            type: string
        - name: Authorization
          in: header
          description: The OAuth Token prefixed with "Bearer" and space in between.
          required: true
          schema:
            type: string
        - name: Content-Type
          in: header
          description: Supports application/json.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: 200 OK
          content: {}
  /ipscheme/eligibilitycheck:
    get:
      summary: Instant Payment Scheme Eligibility Check
      description: >-
        CitiConnect Instant Payment Scheme Eligibility Check allows users to
        retrieve the status of beneficiary banks before initiating payment
        request, so that they get the information if that bank supports instant
        payment requests to process transactions.<br><br><font
        size='2'><b>Content-Type</b> : Supports “application/xml” or
        “application/json”  : <br><b>Authorization</b> : The OAuth Token
        prefixed with “Bearer” and space in between. : <br><b>countryCode</b> :
        Country Code : <br><b>participantCode</b> : Participant Code :
        <br><b>currency</b> : Currency Type : <br><b>participantName</b> : Bank
        Name (Minimum of 5 characters) : <br></font>
      parameters:
        - name: client_id
          in: query
          description: >-
            This is your unique identifier shared during your CitiConnect API
            onboarding. This is the same `client_id` used for oauth token
            generation
          required: true
          schema:
            type: string
        - name: Authorization
          in: header
          description: The OAuth Token prefixed with "Bearer" and space in between.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: 200 OK
          content: {}
  /proxylookup:
    post:
      summary: Proxy Lookup
      description: >-
        CitiConnect Token Validation Proxy Lookup allows users to verify ahead
        of time whether an account is valid and active, preventing account
        errors. This feature will validate the status of a Zelle Token for
        recipients subscribed to the Zelle network to determine their account
        status and ability to receive funds. <br><br><font
        size='2'><b>Content-Type</b> : header : Supports “application/xml” or
        “application/json”<br><b>Authorization</b> : header : The OAuth Token
        prefixed with “Bearer” and space in between.<br><b>Debitor Account
        number</b> : body : Debtor Account number<br><b>Country Code</b> : body
        : Country Code<br><b>Proxy Type</b> : body : Proxy Type<br><b>Proxy
        Value</b> : body : Proxy Value<br><b>MOBN</b> :  : <br><b>EMAL</b> :  :
        <br></font>
      parameters:
        - name: client_id
          in: query
          description: >-
            This is your unique identifier shared during your CitiConnect API
            onboarding. This is the same `client_id` used for oauth token
            generation
          required: true
          schema:
            type: string
        - name: Authorization
          in: header
          description: The OAuth Token prefixed with "Bearer" and space in between.
          required: true
          schema:
            type: string
        - name: Content-Type
          in: header
          description: Supports application/json.
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/xml:
            schema:
              $ref: '#/components/schemas/ProxyLookupRequest'
          application/json:
            schema:
              $ref: '#/components/schemas/ProxyLookupRequest'
        required: false
      responses:
        '200':
          description: Success
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/ProxyLookupSuccessResponse'
              example:
                creditorName: VIRUPAKSHI
                proxyStatus: active
                proxyValue: '1555555070'
            application/json:
              schema:
                $ref: '#/components/schemas/ProxyLookupSuccessResponse'
              example:
                creditorName: VIRUPAKSHI
                proxyStatus: active
                proxyValue: '1555555070'
        '400':
          description: error response
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/ProxyLookupErrorResponse'
              example:
                errorDescription: Country code should be US
                resultStatus: FAILURE280
            application/json:
              schema:
                $ref: '#/components/schemas/ProxyLookupErrorResponse'
              example:
                errorDescription: Country code should be US
                resultStatus: FAILURE
        '401':
          description: Unauthorized
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/Response'
              example:
                correlationId: na-apimgwgtds04~3a0543eb-354f-4f1e-a112-f9b3ee2799e1
                statusCode: '401'
                statusMessage: Unauthorized
            application/json:
              schema:
                $ref: '#/components/schemas/Response'
              example:
                correlationId: na-apimgwgtds04~3a0543eb-354f-4f1e-a112-f9b3ee2799e1
                statusCode: '401'
                statusMessage: Unauthorized
        '405':
          description: Method Not Allowed
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/Response'
              example:
                correlationId: na-apimgwgtds04~3a0543eb-354f-4f1e-a112-f9b3ee2799e1
                statusCode: '405'
                statusMessage: Method not Allowed
            application/json:
              schema:
                $ref: '#/components/schemas/Response'
              example:
                correlationId: na-apimgwgtds04~3a0543eb-354f-4f1e-a112-f9b3ee2799e1
                statusCode: '405'
                statusMessage: Method not Allowed
        '415':
          description: Unsupported Media Type
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/Response'
              example:
                correlationId: na-apimgwgtds04~5b23641f-5e2d-b7bf-f9b3ee27cf2f
                statusCode: '415'
                statusMessage: Unsupported Media Type
            application/json:
              schema:
                $ref: '#/components/schemas/Response'
              example:
                correlationId: na-apimgwgtds04~3a0543eb-354f-4f1e-a112-f9b3ee2799e1
                statusCode: '415'
                statusMessage: Unsupported Media Type
        '500':
          description: Internal Server Error
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/Response'
              example:
                correlationId: na-apimgwgtds04~3a0543eb-354f-4f1e-a112-f9b3ee2799e1
                statusCode: '500'
                statusMessage: INTERNAL_SERVER_ERROR
            application/json:
              schema:
                $ref: '#/components/schemas/Response'
              example:
                correlationId: na-apimgwgtds04~3a0543eb-354f-4f1e-a112-f9b3ee2799e1
                statusCode: '500'
                statusMessage: INTERNAL_SERVER_ERROR
      x-codegen-request-body-name: Request Body
  /branch/holiday:
    get:
      summary: Branch Holiday
      description: >-
        CitiConnect Branch Holiday Inquiry allows users to retrieve branch
        holidays for any branch codes of their choice, for the current year,
        enabling users to plan transactions in advance.<br><br><font
        size='2'><b>Content-Type</b> : Supports “application/json” :
        <br><b>Authorization</b> : The OAuth Token prefixed with “Bearer” and
        space in between. : <br><b>BranchCode</b> : Unique identification Code
        specified by the initiating party to identify the branch of the
        bank.<br>This Identification is passed on, unchanged, throughout the
        entire end-to-end chain. : <br><b>FromDate</b> : The start of the period
        for which the branch holiday details are being requested.<br>The From
        Date must be sent in absolute values in YYYY-MM-DD format. <br>Only one
        value should be sent. : <br><b>ToDate</b> : The end of the period for
        which the branch holiday details are being requested.<br>The To Date
        must be sent in absolute values in YYYY-MM-DD format. <br>Only one value
        should be sent. : <br></font>
      parameters:
        - name: client_id
          in: query
          description: >-
            This is your unique identifier shared during your CitiConnect API
            onboarding. This is the same `client_id` used for oauth token
            generation
          required: true
          schema:
            type: string
        - name: Authorization
          in: header
          description: The OAuth Token prefixed with "Bearer" and space in between.
          required: true
          schema:
            type: string
        - name: branchCode
          in: query
          required: true
          schema:
            type: string
        - name: fromDate
          in: query
          schema:
            type: string
            format: date-time
        - name: toDate
          in: query
          schema:
            type: string
            format: date-time
      responses:
        '200':
          description: 200 OK
          content: {}
    post:
      summary: Branch Holiday
      description: >-
        CitiConnect Branch Holiday Inquiry allows users to retrieve branch
        holidays for any branch codes of their choice, for the current year,
        enabling users to plan transactions in advance.<br><br><font
        size='2'><b>Content-Type</b> : Supports “application/json” :
        <br><b>Authorization</b> : The OAuth Token prefixed with “Bearer” and
        space in between. : <br><b>BranchCode</b> : Unique identification Code
        specified by the initiating party to identify the branch of the
        bank.<br>This Identification is passed on, unchanged, throughout the
        entire end-to-end chain. : <br><b>FromDate</b> : The start of the period
        for which the branch holiday details are being requested.<br>The From
        Date must be sent in absolute values in YYYY-MM-DD format. <br>Only one
        value should be sent. : <br><b>ToDate</b> : The end of the period for
        which the branch holiday details are being requested.<br>The To Date
        must be sent in absolute values in YYYY-MM-DD format. <br>Only one value
        should be sent. : <br></font>
      parameters:
        - name: client_id
          in: query
          description: >-
            This is your unique identifier shared during your CitiConnect API
            onboarding. This is the same `client_id` used for oauth token
            generation
          required: true
          schema:
            type: string
        - name: Authorization
          in: header
          description: The OAuth Token prefixed with "Bearer" and space in between.
          required: true
          schema:
            type: string
        - name: Content-Type
          in: header
          description: Supports application/json.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: 200 OK
          content: {}
  /citiconnect/prod/selfservices/v1/payment/cutoff:
    get:
      summary: Payment Cut-Off Time Inquiry
      description: >-
        CitiConnect Payment Cut-off Time Inquiry allows users to retrieve
        cut-off times for any branch associated with their payments. This
        enables users to plan their payouts to merchants or end-users, in a
        timely manner.<br><br><font size='2'><b>Content-Type</b> : Supports
        “application/json” : <br><b>Authorization</b> : The OAuth Token prefixed
        with “Bearer” and space in between. : <br><b>BranchCode</b> : Unique
        identification Code specified by the initiating party to identify the
        branch of the bank.<br>This Identification is passed on, unchanged,
        throughout the entire end-to-end chain. : <br><b>PaymentMethod</b> : The
        payment processing method is specified.<br>If method is not specified,
        then cut-off times for all payment methods will be returned.  :
        <br></font>
      parameters:
        - name: client_id
          in: query
          description: >-
            This is your unique identifier shared during your CitiConnect API
            onboarding. This is the same `client_id` used for oauth token
            generation
          required: true
          schema:
            type: string
        - name: Authorization
          in: header
          description: The OAuth Token prefixed with "Bearer" and space in between.
          required: true
          schema:
            type: string
        - name: branchCode
          in: query
          required: true
          schema:
            type: string
      responses:
        '200':
          description: 200 OK
          content: {}
    post:
      summary: Payment Cut-Off Time Inquiry
      description: >-
        CitiConnect Payment Cut-off Time Inquiry allows users to retrieve
        cut-off times for any branch associated with their payments. This
        enables users to plan their payouts to merchants or end-users, in a
        timely manner.<br><br><font size='2'><b>Content-Type</b> : Supports
        “application/json” : <br><b>Authorization</b> : The OAuth Token prefixed
        with “Bearer” and space in between. : <br><b>BranchCode</b> : Unique
        identification Code specified by the initiating party to identify the
        branch of the bank.<br>This Identification is passed on, unchanged,
        throughout the entire end-to-end chain. : <br><b>PaymentMethod</b> : The
        payment processing method is specified.<br>If method is not specified,
        then cut-off times for all payment methods will be returned.  :
        <br></font>
      parameters:
        - name: client_id
          in: query
          description: >-
            This is your unique identifier shared during your CitiConnect API
            onboarding. This is the same `client_id` used for oauth token
            generation
          required: true
          schema:
            type: string
        - name: Authorization
          in: header
          description: The OAuth Token prefixed with "Bearer" and space in between.
          required: true
          schema:
            type: string
        - name: Content-Type
          in: header
          description: Supports application/json.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: 200 OK
          content: {}
  /citiconnect/prod/selfservices/v3/payment/beneficiarysearch:
    get:
      summary: Payment Beneficiary Search
      description: >-
        Retrieve the Beneficiary details for a given debit and credit account
        number of account holder.
      operationId: getBeneficiaryDetails
      parameters:
        - name: client_id
          in: query
          description: >-
            Unique reference which was shared during CitiConnect API
            on-boarding(client_id which used during oauth token generation)
          required: true
          schema: {}
        - name: country_code
          in: query
          description: >-
            Country where the request is initiated for beneficiary account
            search/validation in ISO 3166-1 alpha-2 format
          required: true
          schema: {}
        - name: creditor_name
          in: query
          description: >-
            Account name of the creditor intended for search/validation whose
            payment amount will be credited. For early warning system (EWS), if
            the verification_type = (BANKOWN or BASICVR) either
            creditor_firstname & creditor_lastname or creditor_name (Business
            Name) should be passed. Business name maximum allowed length 87
            characters.
          schema: {}
        - name: creditor_bank_code
          in: query
          description: >-
            Creditor account bank identification code of the creditor whose
            payment amount will be credited. - For early warning system (EWS), 9
            digit beneficiary bank routing number.
          schema: {}
        - name: creditor_branch_id
          in: query
          description: >-
            Creditor Branch identification of the creditor whose payment amount
            will be credited. ##### Field exclusively applicable for below
            conditions - country_code = AR (Argentina), BR (Brazil), UY
            (Uruguay), PE (Peru), MX (Mexico), CO (Colombia)
          schema: {}
        - name: creditor_alias
          in: query
          description: >-
            Account alias name of the creditor intended for search/validation
            whose payment amount will be credited. ##### Field exclusively
            applicable for below conditions - country_code = AR (Argentina), BR
            (Brazil), UY (Uruguay), PE (Peru), MX (Mexico), CO (Colombia)
          schema: {}
        - name: debtor_name
          in: query
          description: Account name of the debtor whose payment amount will be deducted.
          schema: {}
        - name: value_date
          in: query
          description: >-
            Requested execution date post alias resolution when the payment
            needs to be processed for settlement, format would be YYYYMMDD #####
            Field exclusively applicable for below countries - country_code = BR
            (Brazil) _Note_ * _If not provided present date will be populated
            when alias api is invoked_ * _Only Present and Future date will be
            acceptable and not past date_
          schema: {}
        - name: encrypted-params
          in: header
          description: >
            Account & Proxy details intended for search/validation of
            Beneficiary details
              _Condition : It should be encrypted JSON combination of **creditor_account** or **creditor_proxy_type & creditor_proxy_value** should be passed along with **debtor_account**_
              - **debtor_account** 
                 - account number of the debtor whose payment amount will be deducted
                 - max length is 35
                 - mandatory
              - **creditor_account**
                 - account number of the creditor whose payment amount will be credited & which requires validation
                 - max length is 35
                 - conditional

              - **creditor_proxy_type**
                 - type of the proxy value to be used for validation/search
                 - max length is 35
                 - conditional 
                    - *Supported Types*

                      * PHONE
                        - Used as an identifier for providing Mobile/Phone Number in **creditor_proxy_value**
                      * EMAIL
                        - Used as an identifier for providing Email ID in **creditor_proxy_value**
                      * TAXID
                        - Used as an identifier for providing Tax Identification No in **creditor_proxy_value**
                        - *Applicable only for country_code = BR (Brazil)*
                      * EVP
                        - Used as an identifier for providing EVP in **creditor_proxy_value**
                        - *Applicable only for country_code = BR (Brazil)*
                      * NIDN
                        - Used as an identifier for providing NRIC Number in **creditor_proxy_value**
                      * COID
                        - Used as an identifier for providing Unique Entity Number in **creditor_proxy_value**
                      * MOBN
                        - Used as an identifier for providing Mobile number       
              - **creditor_proxy_value**
                 - value of proxy type to be used for validation/search
                 - max length is 70
                 - conditional
               - **document_type**
                 - Originating Customer's Document Type. The values are:
             1:LE 
            2:DNI 

            3:LM 

            4:Pasaporte 

            5:Carné de Extranjería 

            6:RUC.           
             - **document_number**
                 - Originating Customer Document Number.In case the  Originating Client's account is joint, the document number must be 99999999
                 - max length is 12 
             - **creditor_document_number**
                 - Creditor document number of credit account (both creditor document number and creditor tax id are same). It is mandatory for Brazil and Colombia and not  applicable for other countries.
                 - It is a Request header with string data type.
                 - max length is 14
                  - example: "11111111111111" 
              - **creditor_account_type**
                 - Creditor Account Type of Credit Account. It is mandatory for Brazil and Colombia and not applicable for other countries.
                  - BR  - The account type must be populated with following list of dominion:SAVINGS, CHECKING, PAYMENTS,  EASY, PUBLIC_ENTITY. However validation is not required at CCAPI, whatever received by CCAPI will be   routed to downstream and downstream will do the validation
                  - CO - The account type must  be populated with following list of dominion:CUENTA_DE_AHORRO and CUENTA_CORRIENTE. However validation  is not required at CCAPI, whatever received by CCAPI will be routed to downstream and downstream will do the validation 
                   - It is a Request header with string

# --- truncated at 32 KB (47 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/citi/refs/heads/main/openapi/citi-self-service-api-openapi.yaml