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.

Content-Type : Supports “application/xml” or “application/json” or “text/csv” :
Authorization : The OAuth Token prefixed with “Bearer” and space in between. :
TranRefNo : endToEndId or MT 100 Reference Number (mt100refNo).
Important: Either Transaction Reference Number or Date Range is required. :
FromDate : Start date from when the transaction reports should be generated. Important: Either Transaction Reference Number or Date Range is required. :
ToDate : End date from when the transaction reports should be generated. Important: Either Transaction Reference Number or Date Range is required. :
BranchNo : Branch Number :
PymtCurrency : Currency related to the payment :
AccountNo : :
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.

Content-Type : Supports “application/xml” or “application/json” or “text/csv” :
Authorization : The OAuth Token prefixed with “Bearer” and space in between. :
TranRefNo : endToEndId or MT 100 Reference Number (mt100refNo).
Important: Either Transaction Reference Number or Date Range is required. :
FromDate : Start date from when the transaction reports should be generated. Important: Either Transaction Reference Number or Date Range is required. :
ToDate : End date from when the transaction reports should be generated. Important: Either Transaction Reference Number or Date Range is required. :
BranchNo : Branch Number :
PymtCurrency : Currency related to the payment :
AccountNo : :
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.

Content-Type: Supports “application/xml” or “application/json” or “application/pdf”:
x-citi-enc-type : Valid values are xmlenc or jsonenc or no:
Authorization The OAuth Token prefixed with “Bearer” and space in between.br>endToEndId : Unique identification assigned by the initiating party to clearly identify the transaction.
Creation Date: The date when the Proof of Payment is created should be specified.
Amount: Amount should be specified.
requiredExecutionDate: The Date when the execution should happen needs to be specified.
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.

Content-Type : Supports “application/json”
Authorization: The OAuth Token prefixed with “Bearer” and space in between. :
countryCode : Country Code
bankShortName: Bank Short Name
bankCityName : Bank City Name :
bankCode : Bank Code :
bankRoutingCode : Bank Routing code :
paymentType : Payment Method type (DFT,BKT,…etc.) :
branchCode : Branch Code :
currencyCode : Currency Code :
bankStateName : Bank state Name :
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.

Content-Type : Supports “application/xml” or “application/json” :
Authorization : The OAuth Token prefixed with “Bearer” and space in between. :
amount : Amount :
accountNumber : Account Number :
baseCurrency : Currency Type :
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.

Content-Type : Supports “applicationxml” :
Authorization : The OAuth Token prefixed with “Bearer” and space in between. :
token : Token Number :
branchCode : :
fileDetail : :
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.

Content-Type : Supports “application/xml” or “application/json” :
Authorization : The OAuth Token prefixed with “Bearer” and space in between. :
countryCode : Country Code :
participantCode : Participant Code :
currency : Currency Type :
participantName : Bank Name (Minimum of 5 characters) :
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.

Content-Type : header : Supports “application/xml” or “application/json”
Authorization : header : The OAuth Token prefixed with “Bearer” and space in between.
Debitor Account number : body : Debtor Account number
Country Code : body : Country Code
Proxy Type : body : Proxy Type
Proxy Value : body : Proxy Value
MOBN : :
EMAL : :
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.

Content-Type : Supports “application/json” :
Authorization : The OAuth Token prefixed with “Bearer” and space in between. :
BranchCode : Unique identification Code specified by the initiating party to identify the branch of the bank.
This Identification is passed on, unchanged, throughout the entire end-to-end chain. :
FromDate : The start of the period for which the branch holiday details are being requested.
The From Date must be sent in absolute values in YYYY-MM-DD format.
Only one value should be sent. :
ToDate : The end of the period for which the branch holiday details are being requested.
The To Date must be sent in absolute values in YYYY-MM-DD format.
Only one value should be sent. :
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.

Content-Type : Supports “application/json” :
Authorization : The OAuth Token prefixed with “Bearer” and space in between. :
BranchCode : Unique identification Code specified by the initiating party to identify the branch of the bank.
This Identification is passed on, unchanged, throughout the entire end-to-end chain. :
FromDate : The start of the period for which the branch holiday details are being requested.
The From Date must be sent in absolute values in YYYY-MM-DD format.
Only one value should be sent. :
ToDate : The end of the period for which the branch holiday details are being requested.
The To Date must be sent in absolute values in YYYY-MM-DD format.
Only one value should be sent. :
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.

Content-Type : Supports “application/json” :
Authorization : The OAuth Token prefixed with “Bearer” and space in between. :
BranchCode : Unique identification Code specified by the initiating party to identify the branch of the bank.
This Identification is passed on, unchanged, throughout the entire end-to-end chain. :
PaymentMethod : The payment processing method is specified.
If method is not specified, then cut-off times for all payment methods will be returned. :
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.

Content-Type : Supports “application/json” :
Authorization : The OAuth Token prefixed with “Bearer” and space in between. :
BranchCode : Unique identification Code specified by the initiating party to identify the branch of the bank.
This Identification is passed on, unchanged, throughout the entire end-to-end chain. :
PaymentMethod : The payment processing method is specified.
If method is not specified, then cut-off times for all payment methods will be returned. :
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 data type. - maxLength: 15 - **creditor_document_type** - Creditor Document Type of Credit Account.It is Optional for Brazil and Mandatory for Colombia and not applicable for other countries. - CO - The account type must be populated with following list of dominion:CC, CD, CE, NIT, TI, PAS, IEPN, IEPJ, FD, RC It is a Request header with string data type. - maxLength: 5 - example: "11111" - **extra_information** - Creditor Document Type of Credit Account. This field is optional for Colombia and it is not applicable for other countries. - It is a Request header with string data type. - maxLength: 30 - example: "qwertyuiopasdfgjklzxcvbnm1234" * JSON combination : * With Creditor Account {"debtor_account":"123123","creditor_account":"234324234"}. * with Proxy detials {"debtor_account":"123123","creditor_proxy_type":"EMAIL","creditor_proxy_value":"John@citi.com"} *Note - Usage of both **creditor_account** + **creditor_proxy_type & creditor_proxy_value** will result in error response* **Example for encrypted-params:** eyJhbGciOiJSU0EtT0FFUC0yNTYiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2In0.cM5nUBLy-Nt4bmoS3YyKpMKVgc1zG2bhX1SLFLPmfOtmuv4vMYDPrFJSStlBK6KQqnNpeia6Er-Mvtoiy6d-x_cE_wZnkZdY-s7-mPKTWdB-1mQ9ev7sripvDcrvdV46aA8yIdat7j3C1guyIrQ3pixJLAWuWwYh-Mu9oQ5Y4fbt8hSyWUcrv50BVVHDTNhl1JfC9aMedo9RSZP4uVQrkuc64cSDs65F5CPrALSINWc1kWvtBdE00rFs8VPboFlOjzh8SWKUwhEWRGziRcBo0s0Rvjr1aS6xlXFK2xduWa2Yhww_i8x4LZPl4wuG0lYUxNfYfW-i1zPgbffpxEEoTg.56JMOGxrFjQNqUnaTrDnWw._UYD1vvZk6zcPpVX0WbxpVSCv_kbZjMbMfY9zbrAeQkEwd5-6l2LJ2X0rOnQrt6bvfMdxuT8_v5A4rpOX2BlOtKOOxkt1rxO1422HJcimejh2QCG9SK65_Gq202ZHUpertZsxP1So4NXD4E5yHPCMHkhgQCxEiZYAOweVmmAGR28J7P2faMUY0_y_PEOK6L8R-MuI7MJvO95vhdQcXsn1YirgkvWYWiO9AJX9UY-ES-VnBXu5ZtH3VtEcvYsydVFjssP83vObZehaRoz-vObYFRkm8oHEXmcEGNchXgUQ-w5UtpIk4EKX-rqOG-TYPPfJTU-z-QH5s0Z9fVVUKcYpyys6-5LSgpR_LMYxkTg3nTbTvN4RoDVglgzi_pLz2fHBC8tQXLk2FpXB8l9dQPOFdfaxVyS7eq14kmEPHdkh0lRxhCKS1hFgMxIo1YRGrJoeRfrb0E7im1lviZcXm_T0ZLZTFtmLOxaRhB69ggTH38OZLHP_NFFJHSwcP3EIwQ7LS_2PC1yOBj8ctCWbd4Ig2ZjT2K7KECHaam8ugAPo1PbGrt0okk1P5fFfCwd4YPr92tnyVugI-ngSL2VpIUz3w.Sa9VUUM13fNAFvovk7L-Hg required: true schema: {} responses: '200': description: > **Complete Creditor account details will be part of response** **1. Generic Response:** ```json { "debtor": { "name": "XXXYXXX", "account_id": "0054400063" }, "creditor": { "name": "ABCDEEFGH", "alias": "ABCDEEFGH", "resolved_name": "ABCDEEFGH", "owner_type": "LEGAL_PERSON", "tax_id": "12345678", "country_code": "BR", "bank_code": "ABCD123456", "branch_id": "076", "account_id": "1234567890", "proxy_type": "PHONE", "proxy_value": "5555141910097", "account_currency": "USD,UYU", "account_type": "SAVINGS", "account_opening_date": "20221203", "trade_name": "XYZ", "document_type": "RUC", "document_number": "91991923" }, "additional_information": { "end_to_end_id": "XYXYX001", "value_date": "20220102", "proxy_status": "ACTIVE", "banelco_flag": "Y", "clearing_system_id": "3233423" }, "lookup_status_information": { "lookup_reference": "ModifyAlias29122", "lookup_response_status": "Success", "status_code": "200", "status_message": "Success" } } ``` **2. Argentina Response (country_code = AR):** ```json { "creditor": { "alias": "ABCDEEFGH", "resolved_name": "ABCDEEFGH", "tax_id": "12345678", "branch_id": "076", "account_id": "1234567890", "account_type": "SAVINGS" }, "additional_information": { "banelco_flag": "Y", "clearing_system_id": "3233423" }, "lookup_status_information": { "lookup_response_status": "Success", "status_code": "200", "status_message": "Success" } } ``` **3. US Response (country_code = US):** ```json { "creditor": { "resolved_name": "ABCDEEFGH", "proxy_value": "5555141910097" }, "additional_information": { "proxy_status": "ACTIVE" }, "lookup_status_information": { "status_code": "200", "status_message": "Success" } } ``` **4. Korea Response (country_code = KR):** ```json { "creditor": { "resolved_name": "ABCDEEFGH" }, "lookup_status_information": { "lookup_reference": "ModifyAlias29122", "lookup_response_status": "Success", "status_code": "200", "status_message": "Success" } } ``` **5. India Response (country_code = IN):** ```json { "creditor": { "name": "ABCDEEFGH", "resolved_name": "ABCDEEFGH", "account_id": "1234567890" }, "lookup_status_information": { "lookup_reference": "ModifyAlias29122", "lookup_response_status": "Success", "status_code": "200", "status_message": "Success" } } ``` **6. Indonesia Response (country_code = ID):** ```json { "creditor": { "name": "ABCDEEFGH", "resolved_name": "ABCDEEFGH", "account_id": "1234567890" }, "lookup_status_information": { "lookup_reference": "ModifyAlias29122", "lookup_response_status": "Success", "status_code": "200", "status_message": "Success" } } ``` **7. Singapore Response (country_code = SG):** ```json { "creditor": { "resolved_name": "ABCDEEFGH", "proxy_value": "5555141910097" }, "additional_information": { "proxy_status": "ACTIVE" }, "lookup_status_information": { "status_code": "200", "status_message": "Success" } } ``` **8. Brazil Alias Resolution (country_code = BR):** ```json { "creditor": { "resolved_name": "ABCDEEFGH", "owner_type": "LEGAL_PERSON", "tax_id": "12345678", "bank_code": "ABCD123456", "branch_id": "076", "account_id": "1234567890", "proxy_type": "PHONE", "proxy_value": "5555141910097", "account_type": "SAVINGS", "account_opening_date": "20221203", "trade_name": "XYZ" }, "additional_information": { "end_to_end_id": "XYXYX001", "value_date": "20220102", "proxy_status": "ACTIVE" } } ``` **9. LATAM Countries| Beneficiary Search (country_code = [ MX or PA or PE or UY or BR or CO ] ):** ```json { "debtor": { "account_id": "0054400063" }, "creditor": { "resolved_name": "ABCDEEFGH", "country_code": "MX", "bank_code": "ABCD123456", "account_id": "1234567890", "account_currency": "USD,UYU", "account_type": "SAVINGS", "document_type": "RUC", "document_number": "91991923" }, "lookup_status_information": { "lookup_response_status": "Success", "status_code": "200", "status_message": "Success" } } ``` **10. US_EWS Response (country_code = US_EWS):** ```json { "creditor": { "account_verification_status": "Passed", "account_verification_description": "Account sucessfully verfied in EWS", "account_type": "Saving", "account_owner_status": "Passed", "account_owner_description": "Account owner sucessfully verfied in EWS", "owner_type": "OWN", "firstname": "FMATCH", "lastname": "PMATCH", "dob": "NAVAIL", "address_line1": "PMATCH", "address_line2": "PMATCH", "city": "FMATCH", "state": "FMATCH", "zip": "FMATCH", "home_phone": "FMATCH", "work_phone": "FMATCH", "tax_id": "PMATCH", "id_type": "FMATCH", "id_no": "FMATCH", "id_issuance_place": "NMATCH", "additional_information": "TESTING EWS RESPONSE", "creditor_name": "FMATCH" } } ``` content: {} '400': description: Bad Request content: {} '401': description: Unauthorized content: {} '404': description: Not Found content: {} '405': description: Method Not Allowed content: {} '500': description: Internal Server Error content: {} '503': description: Service Unavailable content: {} components: schemas: BeneficiarySearchXMLRequest: type: object properties: VirtualWalletRequest: $ref: '#/components/schemas/virtualwallet%2dreqType' description: '' xml: namespace: http://com.citi.citiconnect/services/types/virtual/virtualwallet BeneficiarySearchKoreaJSONRequest: required: - countryCode - debtorAccount type: object properties: debtorAccount: type: string description: DbtrAcct countryCode: type: string description: CdtrAlias beneficiaryAccount: type: string description: beneficiaryAccount beneficiaryBankCod: type: string description: beneficiaryBankCod description: '' virtualwallet-reqType: required: - DbtrAcct type: object properties: DbtrAcct: type: string CdtrAlias: type: object properties: {} CdtrAcct: type: object properties: {} ProxyLookupErrorResponse: required: - errorDescription - resultStatus type: object properties: errorDescription: maxLength: 100 minLength: 0 type: string description: Gives the error description in detail xml: name: RsnDesc resultStatus: maxLength: 10 minLength: 0 type: string description: Gives the status whether Success/Failure xml: name: RsnCd description: Object representing token validation error response ProxyLookupRequest: required: - countrycode - debitaccount - proxyType - proxyValue type: object properties: countrycode: pattern: ^[A-Z]{2}$ type: string description: Country Code should be US xml: name: CtryCd debitaccount: maxLength: 10 minLength: 0 type: string description: Debitor Account number xml: name: DbtrAcct proxyType: maxLength: 10 minLength: 0 type: string description: Proxy Type should be either MOBN/EMAL xml: name: Prxytp proxyValue: maxLength: 10 minLength: 0 type: string description: Proxy Value should be Mobile Number/Email xml: name: Prxyval description: Object representing Token Validation Request ProxyLookupSuccessResponse: required: - creditorName - proxyStatus - proxyValue type: object properties: creditorName: maxLength: 10 minLength: 0 type: string description: Beneficiary Name xml: name: CdtrNm proxyStatus: maxLength: 10 minLength: 0 type: string description: Displays the Token status xml: name: ProxyStatus proxyValue: maxLength: 10 minLength: 0 type: string description: User Given Proxy Value should be either Mobile Number/Email xml: name: ProxyVal description: Object representing token validation response Response: type: object properties: correlationId: type: string description: input request tracking unique id statusCode: type: string description: error status code statusMessage: type: string description: message providing information about error description: Object representing response for error scenario securitySchemes: clientCredentials: type: oauth2 description: >+ All CitiConnect APIs use the oAuth2 authentication scheme, which requires a bearer token to authenticate your API call. The Token URL includes the version of authentication used by this API. See the Citi Authentication API reference for information on requesting a token. flows: clientCredentials: tokenUrl: >- https://tts.sandbox.apib2b.citi.com/citiconnect/sb/authenticationservices/v1/oauth/token scopes: {} x-original-swagger-version: '2.0'