openapi: 3.0.3 info: version: 1.0.0 title: Instant Direct Debit description: >- This API allows a creditor or a creditor agent to request movement of funds from the debtor account to a creditor.
Using details POST verb you can initiate a Direct Debit transaction and receive RJCT (in case of schema failure) / PNDG once the request is accepted for processing.
Using details in GET verb you can inquire about the current status initiated direct debit transaction. security: - clientCredentials: [] servers: - url: https://tts.sit.apib2b.citi.com/citiconnect/sit5/receivablesservices description: dev gateway url - url: https://tts.sit.apib2b.citi.com/citiconnect/uat1/receivablesservices description: uat gateway url - url: https://tts.apib2b.citi.com/citiconnect/prod/receivablesservices description: production gateway url - url: https://tts.sandbox.apib2b.citi.com/citiconnect/sb/receivablesservices description: sandbox gateway url paths: /v1/directdebits: post: summary: Initiate Direct Debit Transactions description: This endpoint allows you to initiate a direct debit transaction. operationId: initiationRequest parameters: - $ref: '#/components/parameters/Client-Id' - $ref: '#/components/parameters/Idempotency-Id' requestBody: description: Request body for direct debit transaction. required: true content: application/json: schema: $ref: '#/components/schemas/Idd-Request' example: debtor: name: Shan account: '3459284' account_type: AIIN proxy_type: DNAM proxy_id: '215264475588455744' bank_branch_code: '3245245' bank_routing_code: CHN0IN0D00A creditor: name: John account: '473628234' account_type: AIIN proxy_type: DNAM proxy_id: '215264475588455744' bank_branch_code: '3245245' bank_routing_code: MUM0IN0C00G initiating_party: name: Sean account: '3213423' bank_routing_code: VAS0IN0S00H other_identification_type: AUBN other_identification: AU1SACITIAU2XXXX method: country: AU instructed_currency: AUD payment_method: IP payment_type: DD transaction: end_to_end_id: AUDIDD343D uetr: 0c4fb98b-d77a-4468-96bb-0c88b3b8f75a value_date: '2022-07-21T17:32:16.258Z' instructed_amount: '3423.54' purpose: MORT bo_service_code: x2p1.01 additional_info: AU IDD request instruction_priority: UNAT unique_superannuation_code: 12345 unique_superannuation_identification: test one mandate_details: mandate_id: 3461fa9f03fe4268b5da93bf8203ad70 ultimate: ultimate_creditor_name: creditor Australia ultimate_debtor_name: debtor Australia security: - clientCredentials: [] responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/Idd-Response' example: debtor: name: Shan account: '3459284' account_type: AIIN proxy_type: DNAM proxy_id: '215264475588455744' bank_branch_code: '3245245' bank_routing_code: CHN0IN0D00A creditor: name: John account: '473628234' account_type: AIIN proxy_type: DNAM proxy_id: '215264475588455744' bank_branch_code: '3245245' bank_routing_code: MUM0IN0C00G initiating_party: name: Sean account: '3213423' bank_routing_code: VAS0IN0S00H other_identification_type: AUBN other_identification: AU1SACITIAU2XXXX method: country: AU instructed_currency: AUD payment_method: IP payment_type: DD transaction: end_to_end_id: AUDIDD343D uetr: e82540a1-bab9-41f3-b17a-f9b3ee27983f value_date: '2022-07-21T17:32:16.258Z' instructed_amount: '3423.54' purpose: MORT bo_service_code: x2p1.01 additional_info: AU IDD request instruction_priority: UNAT unique_superannuation_code: 12345 unique_superannuation_identification: test one mandate_details: mandate_id: 3461fa9f03fe4268b5da93bf8203ad70 ultimate: ultimate_creditor_name: creditor Australia ultimate_debtor_name: debtor Australia transaction_status: status: PDNG status_date_time: '2022-07-21T17:32:11.258Z' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/Error-Response' example: ref_id: ec689822-9864-4c4d-9d68-222467627902 error_details: - code: VC00010 issue: property creditor.name is mandatory and it cannot be empty action: please provide valid value for property creditor.name - code: VC00001 issue: >- invalid format provided for property creditor.bank_routing_code action: >- please provide valid value for property creditor.bank_routing_code, in format ^[A-Z0-9]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3}){0,1}?$ '401': $ref: '#/components/responses/Un-Authorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/Not-Found' '405': $ref: '#/components/responses/Method-Not-Allowed' '409': $ref: '#/components/responses/Idempotency-Duplication' '415': $ref: '#/components/responses/Unsupported-Media-Type' '429': $ref: '#/components/responses/Too-Many-Request' '500': $ref: '#/components/responses/Internal-Server-Error' get: summary: Inquire About the current statuses for direct debit transactions. description: >- This endpoint allows you to inquire the current status for the direct debit transaction. operationId: inquiryRequest parameters: - $ref: '#/components/parameters/Client-Id' - $ref: '#/components/parameters/Country' - $ref: '#/components/parameters/Uetr' - $ref: '#/components/parameters/End-To-End-Id' security: - clientCredentials: [] responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/Idd-Inquire-Response' example: debtor: name: Shan account: '3459284' account_type: AIIN proxy_type: DNAM proxy_id: '215264475588455744' bank_branch_code: '3245245' bank_routing_code: CHN0IN0D00A creditor: name: John account: '473628234' account_type: AIIN proxy_type: DNAM proxy_id: '215264475588455744' bank_branch_code: '3245245' bank_routing_code: MUM0IN0C00G initiating_party: name: Sean account: '3213423' bank_routing_code: VAS0IN0S00H other_identification_type: AUBN other_identification: AU1SACITIAU2XXXX method: country: AU instructed_currency: AUD payment_method: IP payment_type: DD transaction: end_to_end_id: AUDIDD343D uetr: e82540a1-bab9-41f3-b17a-f9b3ee27983f value_date: '2022-07-21T17:32:16.258Z' instructed_amount: '3423.542' purpose: MORT bo_service_code: x2p1.01 additional_info: AU IDD request instruction_priority: UNAT unique_superannuation_code: 12345 unique_superannuation_identification: test one mandate_details: mandate_id: 3461fa9f03fe4268b5da93bf8203ad70 ultimate: ultimate_creditor_name: creditor Australia ultimate_debtor_name: debtor Australia transaction_status: status: RJCT status_date_time: '2022-07-21T18:10:22.258Z' reason: - code: NARR issue: Invalid key parameter - code: AM03 issue: >- Specified message amount is an non processable currency outside of existing agreement - code: CH20 issue: >- Number of decimal points not compatible with the currency '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/Error-Response' example: ref_id: ec689822-9864-4c4d-9d68-222467627902 error_details: - code: VC00005 issue: uetr/endToEndId cannot be null or empty action: please send valid value for property uetr/endToEndId '401': $ref: '#/components/responses/Un-Authorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/Not-Found' '405': $ref: '#/components/responses/Method-Not-Allowed' '429': $ref: '#/components/responses/Too-Many-Request' '500': $ref: '#/components/responses/Internal-Server-Error' components: schemas: Idd-Request: title: IddRequest type: object required: - debtor - creditor - method - transaction properties: debtor: $ref: '#/components/schemas/Debtor' creditor: $ref: '#/components/schemas/Creditor' initiating_party: $ref: '#/components/schemas/Initiating-Party' method: $ref: '#/components/schemas/Method' transaction: $ref: '#/components/schemas/Transaction' mandate_details: $ref: '#/components/schemas/Mandate-Details' ultimate: $ref: '#/components/schemas/Ultimate' Debtor: title: Debtor type: object required: - name - account_type properties: name: title: name type: string description: >- Specify the name by which a party is known and which is usually used to identify that party. minLength: 1 maxLength: 140 example: Shan account: title: account type: string description: >- Specify the identification of the account of the debtor to which a debit entry will be posted as a result of the payment transaction. For Australia its a conditional parameter if account_type value = BBAN. minLength: 1 maxLength: 35 example: '30471954' account_type: title: account_type type: string enum: - AIIN - BBAN - CUID - UPIC - ALIA description: >- Specify the name of the identification scheme, in a coded form as published in an external list. Possible values are:
AIIN -IssuerIdentificationNumber
BBAN - BBANIdentifier
CUID - CHIPSUniversalIdentifier
UPIC - UPICIdentifier
ALIA - Alias (proxy)
For Australia only below values are possible
[BBAN, ALIA] proxy_type: title: proxy_type type: string enum: - TELE - EMAL - DNAM - CINC - COTX - COID - CUST - DRLC - EIDN - EWAL - PVTX - LEIC - MBNO - NIDN - CCPT - SHID - SOSE - TOKN - UBIL - VIPN - BIID - AUBN - ORGN description: >- Specify the name of the identification scheme, in a coded form as published in an external list. If account type is ALIA this parameter is mandatory. Possible values are:
TELE - TelephoneNumber
EMAL - EmailAddress
DNAM - DomainName
CINC - CertificateOfIncorporationNumber
COTX - CorporateTaxIdentification
COID - CountryAuthorityIdentification
CUST - CustomerIdentificationNumber
DRLC-DriverLicenseNumber
EIDN - ElectronicIdentification
EWAL - EWalletIdentification
PVTX - IndividualTaxIdentification
LEIC - LegalEntityIdentifierCode
MBNO - MobilePhoneNumber
NIDN - NationalIdentificationNumber
CCPT - PassportNumber
SHID - SchemeIdentificationNumber
SOSE - SocialSecurityNumber
TOKN - TokenIdentification
UBIL - UtilitiesSubscriptionIdentification
VIPN - VehicleIdentificationPlateNumber
BIID - BillerSubscriberIdentification
AUBN - Australian business number
ORGN - origination number
For Australia only below values are possible
[AUBN, ORGN, TELE, EMAL] proxy_id: title: proxy_id type: string description: >- Specify the Identification used to indicate the account identification under another specified name. If account type is ALIA this parameter is mandatory. minLength: 1 maxLength: 2048 example: '215264475588455744' bank_branch_code: title: bank_branch_code type: string description: >- Specify the 6-digit BSB or 9-digit account identification assigned by the entity.
Required only when country = AU and account_type = BBAN. minLength: 1 maxLength: 35 example: '3456923' bank_routing_code: title: bank_routing_code type: string description: >- Specify the Code allocated to a financial institution by the ISO 9362 Registration Authority as described in ISO 9362 Banking - Banking telecommunication messages - Business identifier code (BIC)
Mandatory for Australia. pattern: ^[A-Z0-9]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3}){0,1}?$ example: CHN0IN0D00A Creditor: title: Creditor type: object required: - account_type properties: name: title: name type: string description: >- Specify the name by which a party is known and which is usually used to identify that party. minLength: 1 maxLength: 140 example: Sean account: title: account type: string description: >- Specify the identification of the account of the creditor to which a debit entry will be posted as a result of the payment transaction. For Australia its an conditional parameter if account_type value = BBAN. minLength: 1 maxLength: 35 example: '547589654' account_type: title: account_type type: string enum: - AIIN - BBAN - CUID - UPIC - ALIA description: >- Specify the name of the identification scheme. Possible values are: below
AIIN -IssuerIdentificationNumber
BBAN- BBANIdentifier
CUID -CHIPSUniversalIdentifier
UPIC- UPICIdentifier
ALIA-Alias (proxy)
For Australia only below values are possible
[BBAN] proxy_type: title: proxy_type type: string enum: - TELE - EMAL - DNAM - CINC - COTX - COID - CUST - DRLC - EIDN - EWAL - PVTX - LEIC - MBNO - NIDN - CCPT - SHID - SOSE - TOKN - UBIL - VIPN - BIID description: >- Specify the name of the identification scheme. If account type is ALIA this parameter is mandatory. Possible values are below
TELE - TelephoneNumber
EMAL - EmailAddress
DNAM - DomainName
CINC - CertificateOfIncorporationNumber
COTX - CorporateTaxIdentification
COID - CountryAuthorityIdentification
CUST - CustomerIdentificationNumber
DRLC - DriverLicenseNumber
EIDN - ElectronicIdentification
EWAL - EWalletIdentification
PVTX - IndividualTaxIdentification
LEIC - LegalEntityIdentifierCode
MBNO - MobilePhoneNumber
NIDN - NationalIdentificationNumber
CCPT - PassportNumber
SHID - SchemeIdentificationNumber
SOSE - SocialSecurityNumber
TOKN - TokenIdentification
UBIL - UtilitiesSubscriptionIdentification
VIPN - VehicleIdentificationPlateNumber
BIID - BillerSubscriberIdentification proxy_id: title: proxy_id type: string description: >- Specify the identification used to indicate the account identification under another specified name. If account type is ALIA this parameter is mandatory. minLength: 1 maxLength: 2048 example: '215264475588455744' bank_branch_code: title: bank_branch_code type: string description: >- Specify the 6-digit BSB/9 digit account identification assigned by the Entity.
Conditinal Mandatory for Australia while account_type = BBAN. minLength: 1 maxLength: 35 example: '9584785425' bank_routing_code: title: bank_routing_code type: string description: >- Specify the code allocated to a financial institution by the ISO 9362 Registration Authority as described in ISO 9362 Banking - Banking telecommunication messages - Business identifier code (BIC)
Mandatory for Australia. pattern: ^[A-Z0-9]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3}){0,1}?$ example: MUM0IN0M00D Initiating-Party: title: InitiatingParty type: object properties: name: title: name type: string description: >- Specify the name by which a party is known and which is usually used to identify that party.
This parameter is mandatory for Australia. minLength: 1 maxLength: 140 example: XXDS DAS account: title: account type: string description: >- Specify the unique identification of an account, as assigned by the account servicer, using an identification scheme.
This parameter is mandatory for Australia. minLength: 1 maxLength: 35 example: '52324612' bank_routing_code: title: bank_routing_code type: string description: >- Specify the Code allocated to a financial institution by the ISO 9362 Registration Authority as described in ISO 9362 Banking - Banking telecommunication messages - Business identifier code (BIC).
This parameter is mandatory for Australia and accepted value = CITIAU2XMPS. minLength: 1 maxLength: 35 example: AU00CN0P00P other_identification_type: title: other_identification_type type: string minLength: 1 maxLength: 35 description: >- Specify the unique and unambiguous way to identify an organization/private identification.
This parameter is mandatory for Australia and accepted values = [AUBN, AUCN, CUST]. example: AUBN other_identification: title: other_identification type: string minLength: 1 maxLength: 35 description: >- Specify the value of an organization/private identification.
This parameter is mandatory for Australia. example: AU1SACITIAU2XXXX Method: title: Method type: object required: - country - instructed_currency - payment_method - payment_type properties: country: title: country type: string description: >- Specify the country code where the collection request has been originated. pattern: ^[A-Z]{2}?$ example: AU instructed_currency: title: instructed_currency type: string description: >- Specify the collection account currency. for Australia accepted value = AUD. pattern: ^[A-Z]{3}?$ example: AUD payment_method: title: payment_method type: string enum: - IP description: >- Specifies the means of payment that will be used to move the amount of money.
IP - Instant Payment payment_type: title: payment_type type: string enum: - DD description: >- Set of elements used to further specify the type of transaction.
DD - Direct Debit Transaction: title: Transaction type: object required: - end_to_end_id - value_date - instructed_amount properties: end_to_end_id: title: end_to_end_id type: string description: >- Unique identification assigned by the initiating party to unambiguously identify the transaction. This identification is passed on, unchanged, throughout the entire end-to-end chain. Usage - The end-to-end identification can be used for reconciliation or to link tasks relating to the transaction. It can be included in several messages related to the transaction. pattern: ^[A-Z0-9]{1,35}?$ example: AUD001X8 uetr: title: uetr type: string description: >- Universal unique identifier to provide an end-to-end reference of a payment transaction. Its Mandatory for Australia. pattern: >- ^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$ example: e82540a1-bab9-41f3-b17a-f9b3ee27983f value_date: title: value_date type: string description: >- Specify the date and time on which the collection request processed (YYYY-MM-DDTHH:MM:SS.SSSZ). pattern: ^(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3})Z$ example: '2022-07-21T17:32:23.258Z' instructed_amount: title: instructed_amount type: string description: >- Specify the Fixed amount to be collected from the debtor's account.
For Australia only two decimal number is allowed. pattern: ^(?=.{1,19}$)[0-9]{0,18}(9|\d)(\.\d{1,5})?$ example: '15690.511' purpose: title: purpose type: string minLength: 1 maxLength: 35 description: >- Specify the high level purpose of the collection based on a set of predefined categories.
This parameter is mandatory for Australia. The possible values are:
MORT - Mortgage Payments
UTIL - Utility Payments
LOAN - Loan Payments
DEPD - Dependent Support Payments
GAMP - Gambling Payments
RETL - Retail Payments
SALA - Salary Payments
PERS - Personal Payment
GOVT - Government Payments
PENS - Pension Payments
SUPP - Supplier Payment
TAXS - Tax Payments
OTHR - Other Service Payments example: DEPD bo_service_code: title: bo_service_code type: string description: >- Specifies a pre-agreed service or level of service between the parties.
This parameter is mandatory for Australia. The possible values are:
sct.01
x2p1.01
x2p1.02
x2p1.03
ifti.01 minLength: 1 maxLength: 35 example: x2p1.01 additional_info: title: additional_info type: string description: >- Specify the unique identification as assigned by the debtor to the referred document shared with the creditor for its own reference. for Australia if Purpose = SUPP then mention the e-invoice paymentID. minLength: 1 maxLength: 105 example: AU IDD request instruction_priority: title: instruction_priority type: string enum: - UNAT - NORM description: >- Specifies the priority level of an event.
This parameter is mandatory for Australia. Below are the possible values,
UNAT
NORM
example: NORM unique_superannuation_code: title: unique_superannuation_code type: string description: >- Specifies a character string with a maximum length of 35 ASCII printable characters.
for Australia. If Purporse = PENS, then `unique_superannuation_code` and `unique_superannuation_identification` should be mandatory, else both parameters or optional even the Purpose = PENS. minLength: 1 maxLength: 35 unique_superannuation_identification: title: unique_superannuation_identification type: string description: >- Specifies a character string with a maximum length of 35 ASCII printable characters.
for Australia. If Purporse = PENS, then `unique_superannuation_code` and `unique_superannuation_identification` should be mandatory, else both parameters or optional even the Purpose = PENS. minLength: 1 maxLength: 35 Mandate-Details: title: MandateDetails type: object properties: mandate_id: title: mandate_id type: string description: >- Specify unique identification, as assigned by the clearing scheme, to unambiguously identify the mandate.
This parameter is mandatory for Australia. minLength: 1 maxLength: 35 example: ADDAES100C3 Ultimate: title: Ultimate type: object properties: ultimate_creditor_name: title: ultimate_creditor_name type: string minLength: 1 maxLength: 35 description: >- Specify the name by which the ultimate creditor is known and which is usually used to identify that party.
This parameter is mandatory for Australia, If Purporse = PENS and `unique_superannuation_code` and `unique_superannuation_identification` parameters are present. example: Australia ultimate_debtor_name: title: ultimate_debtor_name type: string minLength: 1 maxLength: 35 description: >- Specify the name by which the ultimate debtor is known and which is usually used to identify that party. example: Australia Transaction-Status: title: TransactionStatus type: object properties: status: title: status type: string maxLength: 4 description: >- This parameter will have the current status of the iniated direct debit transaction. Possible vaule ACCC, ACSC, ACSP, PDNG and RJCT status_date_time: title: status_date_time type: string description: >- This parameter will have the date and time of the last updated status (YYYY-MM-DDTHH:MM:SS.SSSZ). pattern: ^(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3})Z$ reason: type: array items: $ref: '#/components/schemas/Reason' Reason: title: Reason type: object properties: code: title: code type: string description: >- This parameter will have the reason code for the RJCT transaction status. issue: title: issue type: string description: This parameter will have description for the reason code. Idd-Response: title: IddResponse type: object properties: debtor: $ref: '#/components/schemas/Debtor' creditor: $ref: '#/components/schemas/Creditor' initiating_party: $ref: '#/components/schemas/Initiating-Party' method: $ref: '#/components/schemas/Method' transaction: $ref: '#/components/schemas/Transaction' mandate_details: $ref: '#/components/schemas/Mandate-Details' ultimate: $ref: '#/components/schemas/Ultimate' transaction_status: title: IddResponseTransactionStatus type: object properties: status: title: status type: string maxLength: 4 description: >- This parameter will have the current status of the iniated direct debit transaction. Possible vaule ACCC, ACSC, ACSP, PDNG and RJCT status_date_time: title: status_date_time type: string description: >- This parameter will have the date and time of the last updated status (YYYY-MM-DDTHH:MM:SS.SSSZ). pattern: ^(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3})Z$ Idd-Inquire-Response: title: IddInquireResponse type: object properties: debtor: $ref: '#/components/schemas/Debtor' creditor: $ref: '#/components/schemas/Creditor' initiating_party: $ref: '#/components/schemas/Initiating-Party' method: $ref: '#/components/schemas/Method' transaction: $ref: '#/components/schemas/Transaction' mandate_details: $ref: '#/components/schemas/Mandate-Details' ultimate: $ref: '#/components/schemas/Ultimate' transaction_status: $ref: '#/components/schemas/Transaction-Status' Error-Response: title: ErrorResponse type: object properties: ref_id: title: ref_id type: string maxLength: 60 description: Unique ID for the Transaction error_details: title: error_details type: array items: $ref: '#/components/schemas/Error-Detail' Error-Detail: title: ErrorDetail type: object properties: code: title: code type: string maxLength: 7 description: Unique ID for the error code issue: title: issue type: string maxLength: 200 description: more details about the issue action: title: action type: string maxLength: 350 description: corrective action to be taken to resolve above issue Apim-Error: title: ApimError type: object properties: httpCode: title: httpCode type: string description: http staus code of this API httpMessage: title: httpMessage type: string description: short message about the issue moreInformation: title: moreInformation type: string description: more information about the issue xml: name: Errormessage Apim-Json-Error: title: ApimJsonError type: object properties: status: title: status type: string description: Http status code of this API response message: title: message type: string description: Short message about the issue parameters: Client-Id: name: client_id in: query description: >- Unique reference which was shared during CitiConnect API on-boarding (`ClientId` which used during oauth token generation). required: true schema: type: string example: 4683fd9f-03fe-4268-b5da-93bf8203fd91 Idempotency-Id: name: Idempotency-Id in: header required: true schema: type: string maxLength: 128 example: a44cbb60123414bba3bb description: >- Your unique identification for a POST request for CitiConnect API to perform idempotency check. Same `client_ID` is to be maintained by the client, if client wants to retry request within 48 hours. Country: name: country in: query required: true description: >- This parameter specifies the country for which the direct debit transaction is initiated schema: type: string pattern: ^[A-Z]{2}?$ example: AU Uetr: name: uetr in: query required: true description: >- This parameter is to inquire the current status of initiated direct debit transaction, which client receive as part of direct debit initiation response. Either uetr or end_to_end_id should be passed. schema: type: string pattern: ^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$ example: e82540a1-bab9-41f3-b17a-f9b3ee27983f End-To-End-Id: name: end_to_end_id in: query required: true description: >- This parameter is to inquire the current status of the initiated direct debit transaction,which client send as part of direct debit initiation request. Either end_to_end_id or uetr should be passed. schema: type: string pattern: ^[A-Z0-9]{1,35}?$ example: AUD001X8 responses: Un-Authorized: description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error-Response' examples: Unauthorized: $ref: '#/components/examples/Un-Authorized' GatewayUnauthorized: $ref: '#/components/examples/Gateway-Un-Authorized' Forbidden: description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error-Response' examples: Forbidden: $ref: '#/components/examples/Forbidden' Not-Found: description: Not Found content: application/json: schema: $ref: '#/components/schemas/Apim-Error' examples: NotFound: $ref: '#/components/examples/Not-Found' Method-Not-Allowed: description: Method Not Allowed content: application/json: schema: $ref: '#/components/schemas/Error-Response' examples: MethodNotAllowed: $ref: '#/components/examples/Method-Not-Allowed' GatewayMethodNotAllowed: $ref: '#/components/examples/Gateway-Method-Not-Allowed' Unsupported-Media-Type: description: Unsupported Media Type content: application/json: schema: $ref: '#/components/schemas/Apim-Error' examples: UnsupportedMediaType: $ref: '#/components/examples/Unsupported-Media-Type' Too-Many-Request: description: Too Many Request content: application/json: schema: $ref: '#/components/schemas/Apim-Json-Error' examples: TooManyRequest: $ref: '#/components/examples/Too-Many-Request' Internal-Server-Error: description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error-Response' examples: InternalServerError: $ref: '#/components/examples/Internal-Server-Error' GatewayInternalServerError: $ref: '#/components/examples/Gateway-Internal-Server-Error' Idempotency-Duplication: description: Conflict content: application/json: schema: $ref: '#/components/schemas/Error-Response' examples: IdempotencyDuplicationExample: $ref: '#/components/examples/Idempotency-Duplication' examples: Un-Authorized: value: ref_id: ec689822-9864-4c4d-9d68-222467627901 errors: - code: CC00007 issue: User does not have authorization to access action: Please use valid credentials to acccess this functionality Gateway-Un-Authorized: value: httpCode: '401' httpMessage: Unauthorized moreInformation: Invalid client identification Not-Found: value: httpCode: '404' httpMessage: Not Found moreInformation: No resources match requested URI Forbidden: value: ref_id: ec689822-9864-4c4d-9d68-222467627902 error_details: - code: CC00008 issue: User does not have privilege to access this functionality action: please reach out to support team to enable this feature Method-Not-Allowed: value: ref_id: ec689822-9864-4c4d-9d68-222467627902 error_details: - code: CC00001 issue: Method not supported action: please use valid http verb Gateway-Method-Not-Allowed: value: httpCode: '405' httpMessage: Method Not Allowed moreInformation: The method is not allowed for the requested URL Unsupported-Media-Type: value: ref_id: ec689822-9864-4c4d-9d68-222467627902 error_details: - code: CC00002 issue: Media type not supported action: please use valid content-type in header Too-Many-Request: value: status: '429' message: Requests are exceeding the allowed limit Internal-Server-Error: value: ref_id: ec689822-9864-4c4d-9d68-222467627902 error_details: - code: CC00004 issue: unable to serve your request at this moment action: Please refer to documentation provided or contact support team Gateway-Internal-Server-Error: value: status: '500' message: Internal Server Error Idempotency-Duplication: value: ref_id: ec689822-9864-4c4d-9d68-222467627902 errors: - code: VC00016 issue: Idempotency-Id provided is currently being used in another request action: please do not repeat the same request again securitySchemes: clientCredentials: 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. type: oauth2 flows: authorizationCode: authorizationUrl: /authenticationservices/v3/oauth/token tokenUrl: /authenticationservices/v3/oauth/token scopes: directDebitService: Grant read-only access to emandate initation service