swagger: '2.0'
info:
description: >-
The Direct Debit Payment Initiation API allows requests to make payments.
Several payment types are supported. This service accommodates all data
attributes for all the available payment methods. Input values are also
based on regulatory or local requirements.
version: 3.0.0
title: Direct Debit API
host: tts.sit.apib2b.citi.com
security:
- clientCredentials: []
basePath: /citiconnect/sit5
paths:
/paymentinitiation/v3/payment/initiation:
post:
summary: Make A Direct Debit Request
description: >-
Initiate a new payment through the Direct Payment Initiation API call.
This API call accepts ISOXML pain.008.001.02 format to initiate a
payment through CitiConnect. It can be used to initiate one Direct Debit
request per API call. Each payment method takes different input values
based on the type of payment. The Payment Initiation service
accommodates all different data attributes for all the available payment
methods.
Content-Type : Supports
“application/xml”.
Authorization : The OAuth Token prefixed
with “Bearer“ and space in between.
payloadType : Supports
“urn:iso:std:iso:20022:tech:xsd:pain.008.001.02”.
Request :
The request follows ISO XML V3 (pain.008.001.02)
standards.
paymentBase64 : ISO XML V3 (pain.008.001.02) file
has to be converted to Base64 format and passed in < Request><
paymentBase64> tags.
Response : The response follows ISO XML
(pain.002.001.03) standards.
operationId: paymentInitiationUsingPOST
consumes:
- application/xml
produces:
- application/xml
parameters:
- name: client_id
in: query
required: true
description: >-
This is your unique identifier shared during your CitiConnect API
onboarding. This is the same `client_id` used for oauth token
generation
schema: null
type: string
- name: Content-type
in: header
description: Supports "application/xml"
required: true
type: string
- name: Authorization
in: header
description: The OAuth Token prefixed with "Bearer" and space in between.
required: true
type: string
- name: payloadType
in: header
description: Supports "urn:iso:std:iso:20022:tech:xsd:pain.008.001.02" format
required: true
type: string
- name: PaymentInitiationRequest
in: body
description: >-
Describes the Direct Debit Payment Initiation API’s fields in the
ISOXML request body, which is encoded with Base64 and placed in <
Request>< paymentBase64> tags.
required: true
schema:
$ref: '#/definitions/DocumentReq'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/Document'
examples:
application/xml:
CstmrPmtStsRpt:
GrpHdr:
MsgId: CITIBANK/20171213-PSR/1798570726
CreDtTm: '2017-12-13T08:34:23'
InitgPty:
Id:
OrgId:
BICOrBEI: CITIUS33
OrgnlGrpInfAndSts:
OrgnlMsgId: '10006000058'
OrgnlMsgNmId: pain.008.001.02
OrgnlCreDtTm: '2017-05-16T14:35:23-05:00'
OrgnlNbOfTxs: '1'
OrgnlPmtInfAndSts:
OrgnlPmtInfId: ASIA
TxInfAndSts:
OrgnlEndToEndId: ASIADD2615
TxSts: ACTC
'400':
description: Bad Request
schema:
$ref: '#/definitions/errormessage'
examples:
application/xml:
httpMessage: Bad Request
httpCode: 400
moreInformation: Schema Validation Failed.
'401':
description: Unauthorized
schema:
$ref: '#/definitions/errormessage'
examples:
application/xml:
httpMessage: Unauthorized
httpCode: 401
moreInformation: >-
You are not authorized to access this API. Please send valid
credentials for authorization.
'403':
description: Forbidden
schema:
$ref: '#/definitions/errormessage'
examples:
application/xml:
httpMessage: Forbidden
httpCode: 403
moreInformation: You are forbidden to access this service.
'404':
description: Not found
schema:
$ref: '#/definitions/errormessage'
examples:
application/xml:
httpMessage: Not Found
httpCode: 404
moreInformation: Please check the URL and try again later.
'405':
description: Method Not Allowed
schema:
$ref: '#/definitions/errormessage'
examples:
application/xml:
httpMessage: Method not allowed
httpCode: 405
moreInformation: Please use valid HTTP supported verb only.
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/errormessage'
examples:
application/xml:
httpMessage: SSL Connection error
httpCode: 500
moreInformation: SSL Connection error with BE server.
security:
- clientCredentials: []
definitions:
DocumentReq:
type: object
description: Customer credit transfer initiation request body.
properties:
CstmrDrctDbtInitn:
$ref: '#/definitions/CustomerDirectDebitInitiationV02'
required:
- CstmrDrctDbtInitn
xml:
name: Document
Document:
type: object
description: Customer payment status report.
properties:
CstmrPmtStsRpt:
$ref: '#/definitions/CustomerPaymentStatusReportV03'
required:
- CstmrPmtStsRpt
errormessage:
type: object
description: Error response body
properties:
httpCode:
format: int32
type: integer
maxLength: 3
httpMessage:
type: string
moreInformation:
type: string
required:
- httpCode
AccountIdentification4Choice:
type: object
description: >-
Unique and unambiguous identification for the account between the account
owner and the account servicer. Either iban or Othr field value should be
passed on request.
properties:
IBAN:
$ref: '#/definitions/IBAN2007Identifier'
Othr:
$ref: '#/definitions/GenericAccountIdentification1'
required:
- IBAN
- Othr
ActiveOrHistoricCurrencyAndAmount:
type: object
properties:
Ccy:
description: Currency code. Passed as the tag attribute.
allOf:
- $ref: '#/definitions/ActiveOrHistoricCurrencyCode'
Value:
$ref: '#/definitions/ActiveOrHistoricCurrencyAndAmount_SimpleType'
ActiveOrHistoricCurrencyAndAmount_SimpleType:
type: string
maxLength: 18
description: >-
A number of monetary units specified in an active or a historic currency
where the unit of currency is explicit and compliant with ISO 4217. The
number of fractional digits should be 5.
ActiveOrHistoricCurrencyCode:
pattern: '[A-Z]{3,3}'
type: string
AmountType3Choice:
type: object
description: >-
Amount of money to be moved between the debtor and creditor, before
deduction of charges, expressed in the currency as ordered by the
initiating party. Either EqvtAmt or InstdAmt field value should be passed
on request.
properties:
EqvtAmt:
$ref: '#/definitions/EquivalentAmount2'
InstdAmt:
description: >-
Amount of money to be moved between the debtor and creditor, before
deduction of charges, expressed in the currency as ordered by the
initiating party.
allOf:
- $ref: '#/definitions/ActiveOrHistoricCurrencyAndAmount'
Authorisation1Choice:
type: object
properties:
Cd:
type: string
description: >-
Specifies the authorisation, in a coded form.
AUTH :
Indicates a file has been pre authorised or approved within the
originating customer environment and no further approval is required.
FDET : Indicates that a file requires additional file
level approval, with the ability to view both the payment information
block and supporting customer credit transaction detail.
FSUM : Indicates that a file requires additional file
level approval, with the ability to view only the payment information
block level information.
ILEV : Indicates that a file
requires all customer transactions to be authorised or approved.
enum:
- AUTH
- FDET
- FSUM
- ILEV
Prtry:
type: string
description: Specifies the authorisation, in a free text form.
minLength: 1
maxLength: 128
required:
- Cd
- Prtry
BranchAndFinancialInstitutionIdentification4:
type: object
properties:
BrnchId:
$ref: '#/definitions/BranchData2'
FinInstnId:
$ref: '#/definitions/FinancialInstitutionIdentification7'
required:
- FinInstnId
BranchData2:
type: object
description: Identifies a specific branch of a financial institution.
properties:
Id:
description: >-
Unique and unambiguous identification of a branch of a financial
institution.
allOf:
- $ref: '#/definitions/Max35Text'
Nm:
description: >-
Name by which an agent is known and which is usually used to identify
that agent.
allOf:
- $ref: '#/definitions/Max140Text'
PstlAdr:
$ref: '#/definitions/PostalAddress6'
CashAccount16:
type: object
properties:
Ccy:
description: Identification of the currency in which the account is held.
allOf:
- $ref: '#/definitions/ActiveOrHistoricCurrencyCode'
Id:
$ref: '#/definitions/AccountIdentification4Choice'
Nm:
description: >-
Name of the account, as assigned by the account servicing institution,
in agreement with the account owner in order to provide an additional
means of identification of the account.
allOf:
- $ref: '#/definitions/Max70Text'
Tp:
$ref: '#/definitions/CashAccountType2'
required:
- Id
CashAccountType2:
type: object
description: >-
Specifies the nature, or use of the account. Either Code or Proprietary
field value should be passed on request.
properties:
Cd:
$ref: '#/definitions/CashAccountType4Code'
Prtry:
description: Nature or use of the account in a proprietary form.
allOf:
- $ref: '#/definitions/Max35Text'
CashAccountType4Code:
type: string
description: >-
Account type, in a coded form.
CASH : Account used for the
payment of cash.
CHAR : Account used for charges if
different from the account for payment.
COMM : Account used
for commission if different from the account for payment.
TAXE : Account used for taxes if different from the account
for payment.
CISH : Account used for payment of income if
different from the current cash account.
TRAS : Account
used for trading if different from the current cash account.
SACC : Account used to post debit and credit entries, as a
result of transactions cleared and settled through a specific clearing and
settlement system.
CACC : Account used to post debits and
credits when no specific account has been nominated.
SVGS :
Account used for savings.
ONDP : Account used for overnight
deposits.
MGLD : Account used for a marginal lending
facility.
NREX : Account used for non-resident external.
MOMA : Account used for money markets if different from the
cash account.
LOAN : Account used for loans.
SLRY : Accounts used for salary payments.
ODFT : Account is used for overdrafts.
enum:
- CASH
- CHAR
- COMM
- TAXE
- CISH
- TRAS
- SACC
- CACC
- SVGS
- ONDP
- MGLD
- NREX
- MOMA
- LOAN
- SLRY
- ODFT
CategoryPurpose1Choice:
type: object
description: >-
Specifies the high level purpose of the instruction based on a set of
pre-defined categories. Either Code or Proprietary field value should be
passed in request.
properties:
Cd:
description: >-
Category purpose, as published in an external category purpose code
list.
type: string
maxLength: 4
minLength: 1
Prtry:
description: Category purpose, in a proprietary form.
allOf:
- $ref: '#/definitions/Max35Text'
ChargeBearerType1Code:
description: >-
Specifies which party/parties will bear the charges associated with the
processing of the payment transaction.
DEBT : All
transaction charges are to be borne by the debtor.
CRED :
All transaction charges are to be borne by the creditor.
SHAR : In a credit transfer context, means that transaction
charges on the sender side are to be borne by the debtor, transaction
charges on the receiver side are to be borne by the creditor. In a direct
debit context, means that transaction charges on the sender side are to be
borne by the creditor, transaction charges on the receiver side are to be
borne by the debtor.
SLEV : Charges are to be applied
following the rules agreed in the service level and/or scheme.
enum:
- DEBT
- CRED
- SHAR
- SLEV
type: string
ClearingSystemIdentification3Choice:
type: object
description: >-
Specification of a pre-agreed offering between clearing agents or the
channel through which the payment instruction is processed. Either Code or
Proprietary field value should be passed in request.
properties:
Cd:
description: >-
Infrastructure through which the payment instruction is processed, as
published in an external clearing system identification code list.
type: string
maxLength: 3
minLength: 1
Prtry:
description: Clearing system identification in a proprietary form.
allOf:
- $ref: '#/definitions/Max35Text'
ClearingSystemMemberIdentification2:
type: object
description: Information used to identify a member within a clearing system.
properties:
ClrSysId:
type: object
description: >-
Specification of a pre-agreed offering between clearing agents or the
channel through which the payment instruction is processed. Either
Code or Proprietary field value should be passed in request.
properties:
Cd:
description: >-
Identification of a clearing system, in a coded form as published
in an external list.
type: string
maxLength: 5
minLength: 1
Prtry:
description: >-
Identification code for a clearing system, that has not yet been
identified in the list of clearing systems.
allOf:
- $ref: '#/definitions/Max35Text'
MmbId:
description: Identification of a member of a clearing system.
allOf:
- $ref: '#/definitions/Max35Text'
required:
- MmbId
ContactDetails2:
type: object
description: Set of elements used to indicate how to contact the party.
properties:
EmailAdr:
description: Address for electronic mail (e-mail).
allOf:
- $ref: '#/definitions/Max2048Text'
FaxNb:
description: >-
Collection of information that identifies a FAX number, as defined by
telecom services.
allOf:
- $ref: '#/definitions/PhoneNumber'
MobNb:
description: >-
Collection of information that identifies a mobile phone number, as
defined by telecom services.
allOf:
- $ref: '#/definitions/PhoneNumber'
Nm:
description: >-
Name by which a party is known and which is usually used to identify
that party.
allOf:
- $ref: '#/definitions/Max140Text'
NmPrfx:
$ref: '#/definitions/NamePrefix1Code'
Othr:
description: Contact details in another form.
allOf:
- $ref: '#/definitions/Max35Text'
PhneNb:
description: >-
Collection of information that identifies a phone number, as defined
by telecom services.
allOf:
- $ref: '#/definitions/PhoneNumber'
CountryCode:
pattern: '[A-Z]{2,2}'
type: string
description: >-
Nation with its own government. The code is checked against the list of
country names obtained from the United Nations (ISO 3166, Alpha-2 code).
CreditDebitCode:
enum:
- CRDT
- DBIT
type: string
description: >-
Specifies whether the adjustment must be subtracted or added to the total
amount.
CRDT : Operation is an increase.
DBIT
: Operation is a decrease.
CreditorReferenceInformation2:
type: object
description: >-
Reference information provided by the creditor to allow the identification
of the underlying documents.
properties:
Ref:
description: >-
Unique reference, as assigned by the creditor, to unambiguously refer
to the payment transaction.
allOf:
- $ref: '#/definitions/Max35Text'
Tp:
$ref: '#/definitions/CreditorReferenceType2'
CreditorReferenceType1Choice:
type: object
description: >-
Coded or proprietary format creditor reference type. Either Code or
Proprietary field value should be passed on request.
properties:
Cd:
$ref: '#/definitions/DocumentType3Code'
Prtry:
description: Creditor reference type, in a proprietary form.
allOf:
- $ref: '#/definitions/Max35Text'
CreditorReferenceType2:
type: object
description: Specifies the type of creditor reference.
properties:
CdOrPrtry:
$ref: '#/definitions/CreditorReferenceType1Choice'
Issr:
description: Entity that assigns the credit reference type.
allOf:
- $ref: '#/definitions/Max35Text'
required:
- CdOrPrtry
CustomerDirectDebitInitiationV02:
type: object
description: >-
The CustomerDirectDebitInitiation message is sent by the initiating party
to the forwarding agent or creditor agent. It is used to request single or
bulk collection(s) of funds from one or various debtor's account(s) for a
creditor.
properties:
GrpHdr:
$ref: '#/definitions/GroupHeader39'
PmtInf:
type: array
description: >-
Set of characteristics that apply to the debit side of the payment
transactions included in the credit transfer initiation.
items:
$ref: '#/definitions/PaymentInstructionInformation4'
minItems: 1
required:
- GrpHdr
- PmtInf
CustomerPaymentStatusReportV03:
type: object
properties:
GrpHdr:
$ref: '#/definitions/GroupHeader36'
OrgnlGrpInfAndSts:
$ref: '#/definitions/OriginalGroupInformation20'
OrgnlPmtInfAndSts:
type: array
description: >-
Information concerning the original payment information, to which the
status report message refers.
items:
$ref: '#/definitions/OriginalPaymentInformation1'
required:
- GrpHdr
- OrgnlGrpInfAndSts
OriginalGroupInformation20:
type: object
description: >-
Original group information concerning the group of transactions, to which
the status report message refers to.
properties:
OrgnlMsgId:
description: >-
Point to point reference, as assigned by the original instructing
party, to unambiguously identify the original message.
allOf:
- $ref: '#/definitions/Max35Text'
OrgnlMsgNmId:
description: >-
Specifies the original message name identifier to which the message
refers.
allOf:
- $ref: '#/definitions/Max35Text'
OrgnlCreDtTm:
type: string
format: date-time
description: Date and time at which the original message was created.
OrgnlNbOfTxs:
description: Number of individual transactions contained in the original message.
allOf:
- $ref: '#/definitions/Max15NumericText'
OrgnlCtrlSum:
description: >-
Total of all individual amounts included in the original message,
irrespective of currencies. The number of fractional digits should not
be more than 17.
type: string
maxLength: 18
GrpSts:
$ref: '#/definitions/TransactionGroupStatus3Code'
StsRsnInf:
type: array
description: >-
Set of elements used to provide detailed information on the status
reason.
items:
$ref: '#/definitions/StatusReasonInformation8'
NbOfTxsPerSts:
type: array
description: >-
Detailed information on the number of transactions for each identical
transaction status.
items:
$ref: '#/definitions/NumberOfTransactionsPerStatus3'
required:
- OrgnlMsgId
- OrgnlMsgNmId
OriginalPaymentInformation1:
type: object
properties:
OrgnlPmtInfId:
description: >-
Unique identification, as assigned by the original sending party, to
unambiguously identify the original payment information group.
allOf:
- $ref: '#/definitions/Max35Text'
OrgnlNbOfTxs:
description: >-
Number of individual transactions contained in the original payment
information group.
allOf:
- $ref: '#/definitions/Max15NumericText'
OrgnlCtrlSum:
description: >-
Total of all individual amounts included in the original payment
information group, irrespective of currencies. The number of
fractional digits should not be more than 17.
type: string
maxLength: 18
PmtInfSts:
description: >-
Specifies the status of the payment information
group.
ACTC : Authentication and syntactical and
semantical validation are successful.
RCVD : Payment
initiation has been received by the receiving agent.
PART : A number of transactions have been accepted,
whereas another number of transactions have not yet achieved
'accepted' status.
RJCT : Payment initiation or
individual transaction included in the payment initiation has been
rejected.
PDNG : Payment initiation or individual
transaction included in the payment initiation is pending. Further
checks and status update will be performed.
ACCP :
Preceding check of technical validation was successful. Customer
profile check was also successful.
ACSP : All preceding
checks such as technical validation and customer profile were
successful and therefore the payment initiation has been accepted for
execution.
ACSC : Settlement on the debtor's account has
been completed. Usage : this can be used by the first agent to report
to the debtor that the transaction has been completed. Warning : this
status is provided for transaction status reasons, not for financial
information. It can only be used after bilateral
agreement
ACWC : Instruction is accepted but a change
will be made, such as date or remittance not sent.
allOf:
- $ref: '#/definitions/TransactionGroupStatus3Code'
StsRsnInf:
type: array
description: >-
Set of elements used to provide detailed information on the status
reason.
items:
$ref: '#/definitions/StatusReasonInformation8'
NbOfTxsPerSts:
type: array
description: >-
Detailed information on the number of transactions for each identical
transaction status.
items:
$ref: '#/definitions/NumberOfTransactionsPerStatus3'
TxInfAndSts:
type: array
description: Payment transaction information and status.
items:
$ref: '#/definitions/PaymentTransactionInformation25'
required:
- OrgnlPmtInfId
StatusReasonInformation8:
type: object
properties:
Orgtr:
description: Party that issues the status.
allOf:
- $ref: '#/definitions/PartyIdentification32'
Rsn:
$ref: '#/definitions/StatusReason6Choice'
AddtlInf:
description: Further details on the status reason.
items:
$ref: '#/definitions/Max105Text'
type: array
StatusReason6Choice:
type: object
description: >-
Specifies the reason for the status report. Either Code or Proprietary
field value should be passed on request.
properties:
Cd:
description: Reason for the status, as published in an external reason code list.
type: string
maxLength: 4
minLength: 1
Prtry:
description: Reason for the status, in a proprietary form.
allOf:
- $ref: '#/definitions/Max35Text'
NumberOfTransactionsPerStatus3:
type: object
properties:
DtldNbOfTxs:
description: >-
Number of individual transactions contained in the message, detailed
per status.
allOf:
- $ref: '#/definitions/Max15NumericText'
DtldCtrlSum:
description: >-
Total of all individual amounts included in the message, irrespective
of currencies, detailed per status. The number of fractional digits
should not be more than 17
type: string
maxLength: 18
DtldSts:
$ref: '#/definitions/TransactionIndividualStatus3Code'
required:
- DtldNbOfTxs
- DtldSts
TransactionIndividualStatus3Code:
description: >-
Common transaction status for all individual transactions
reported.
ACTC : Authentication and syntactical and
semantical validation are successful.
RJCT : Payment
initiation or individual transaction included in the payment initiation
has been rejected.
PDNG : Payment initiation or individual
transaction included in the payment initiation is pending. Further checks
and status update will be performed.
ACCP : Preceding check
of technical validation was successful. Customer profile check was also
successful.
ACSP : All preceding checks such as technical
validation and customer profile were successful and therefore the payment
initiation has been accepted for execution.
ACSC :
Settlement on the debtor's account has been completed. Usage : this can be
used by the first agent to report to the debtor that the transaction has
been completed. Warning : this status is provided for transaction status
reasons, not for financial information. It can only be used after
bilateral agreement
ACWC : Instruction is accepted but a
change will be made, such as date or remittance not sent.
enum:
- ACTC
- RJCT
- PDNG
- ACCP
- ACSP
- ACSC
- ACWC
type: string
TransactionGroupStatus3Code:
description: >-
Specifies the status of a group of transactions.
ACTC :
Authentication and syntactical and semantical validation are successful.
RCVD : Payment initiation has been received by the
receiving agent.
PART : A number of transactions have been
accepted, whereas another number of transactions have not yet achieved
'accepted' status.
RJCT : Payment initiation or individual
transaction included in the payment initiation has been
rejected.
PDNG : Payment initiation or individual
transaction included in the payment initiation is pending. Further checks
and status update will be performed.
ACCP : Preceding check
of technical validation was successful. Customer profile check was also
successful.
ACSP : All preceding checks such as technical
validation and customer profile were successful and therefore the payment
initiation has been accepted for execution.
ACSC :
Settlement on the debtor's account has been completed. Usage : this can be
used by the first agent to report to the debtor that the transaction has
been completed. Warning : this status is provided for transaction status
reasons, not for financial information. It can only be used after
bilateral agreement
ACWC : Instruction is accepted but a
change will be made, such as date or remittance not sent.
enum:
- ACTC
- RCVD
- PART
- RJCT
- PDNG
- ACCP
- ACSP
- ACSC
- ACWC
type: string
PaymentTransactionInformation25:
type: object
properties:
StsId:
description: >-
Unique identification, as assigned by an instructing party for an
instructed party, to unambiguously identify the reported status.
allOf:
- $ref: '#/definitions/Max35Text'
OrgnlInstrId:
description: >-
Unique identification, as assigned by the original instructing party
for the original instructed party, to unambiguously identify the
original instruction.
allOf:
- $ref: '#/definitions/Max35Text'
OrgnlEndToEndId:
description: >-
Unique identification, as assigned by the original initiating party,
to unambiguously identify the original transaction.
allOf:
- $ref: '#/definitions/Max35Text'
TxSts:
$ref: '#/definitions/TransactionIndividualStatus3Code'
StsRsnInf:
type: array
description: >-
Set of elements used to provide detailed information on the status
reason.
items:
$ref: '#/definitions/StatusReasonInformation8'
ChrgsInf:
type: array
description: >-
Provides information on the charges related to the processing of the
rejection of the instruction.
items:
$ref: '#/definitions/ChargesInformation5'
AccptncDtTm:
type: string
format: date-time
description: >-
Point in time when the payment order from the initiating party meets
the processing conditions of the account servicing agent. This means
that the account servicing agent has received the payment order and
has applied checks such as authorisation, availability of funds.
AcctSvcrRef:
description: >-
Unique reference, as assigned by the account servicing institution, to
unambiguously identify the instruction.
allOf:
- $ref: '#/definitions/Max35Text'
ClrSysRef:
description: >-
Unique reference, as assigned by a clearing system, to unambiguously
identify the instruction.
allOf:
- $ref: '#/definitions/Max35Text'
OrgnlTxRef:
$ref: '#/definitions/OriginalTransactionReference13'
ChargesInformation5:
type: object
properties:
Amt:
description: Transaction charges to be paid by the charge bearer.
allOf:
- $ref: '#/definitions/ActiveOrHistoricCurrencyAndAmount'
Pty:
description: >-
Party that takes the transaction charges or to which the transaction
charges are due.
allOf:
- $ref: '#/definitions/BranchAndFinancialInstitutionIdentification4'
required:
- Amt
- Pty
OriginalTransactionReference13:
type: object
description: >-
Set of key elements used to identify the original transaction that is
being referred to.
properties:
IntrBkSttlmAmt:
description: >-
Amount of money moved between the instructing agent and the instructed
agent.
allOf:
- $ref: '#/definitions/ActiveOrHistoricCurrencyAndAmount'
Amt:
$ref: '#/definitions/AmountType3Choice'
IntrBkSttlmDt:
type: string
format: date
description: >-
Date on which the amount of money ceases to be available to the agent
that owes it and when the amount of money becomes available to the
agent to which it is due.
ReqdColltnDt:
type: string
format: date
description: >-
Date on which the creditor requests that the amount of money is to be
collected from the debtor.
ReqdExctnDt:
type: string
format: date
description: >-
Date at which the initiating party requests the clearing agent to
process the payment.
CdtrSchmeId:
description: Credit party that signs the mandate.
allOf:
- $ref: '#/definitions/PartyIdentification32'
SttlmInf:
$ref: '#/definitions/SettlementInformation13'
PmtTpInf:
$ref: '#/definitions/PaymentTypeInformation22'
PmtMtd:
$ref: '#/definitions/PaymentMethod4Code'
MndtRltdInf:
$ref: '#/definitions/MandateRelatedInformation6'
RmtInf:
$ref: '#/definitions/RemittanceInformation5'
UltmtDbtr:
description: >-
Ultimate party that owes an amount of money to the (ultimate)
creditor.
allOf:
- $ref: '#/definitions/PartyIdentification32'
Dbtr:
description: Party that owes an amount of money to the (ultimate) creditor.
allOf:
- $ref: '#/definitions/PartyIdentification32'
DbtrAcct:
description: >-
Unambiguous identification of the account of the debtor to which a
debit entry will be made as a result of the transaction.
allOf:
- $ref: '#/definitions/CashAccount16'
DbtrAgt:
description: Financial institution servicing an account for the debtor.
allOf:
- $ref: '#/definitions/BranchAndFinancialInstitutionIdentification4'
DbtrAgtAcct:
description: >-
Unambiguous identification of the account of the debtor agent at its
servicing agent in the payment chain.
allOf:
- $ref: '#/definitions/CashAccount16'
CdtrAgt:
description: Financial institution servicing an account for the creditor.
allOf:
- $ref: '#/definitions/BranchAndFinancialInstitutionIdentification4'
CdtrAgtAcct:
description: >-
Unambiguous identification of the account of the creditor agent at its
servicing agent to which a credit entry will be made as a result of
the payment transaction.
allOf:
- $ref: '#/definitions/CashAccount16'
Cdtr:
description: Party to which an amount of money is due.
allOf:
- $ref: '#/definitions/PartyIdentification32'
CdtrAcct:
description: >-
Unambiguous identification of the account of the creditor to which a
credit entry will be posted as a result of the payment transaction.
allOf:
- $ref: '#/definitions/CashAccount16'
UltmtCdtr:
description: Ultimate party to which an amount of money is due.
allOf:
- $ref: '#/definitions/PartyIdentification32'
SettlementInformation13:
type: object
description: >-
Specifies the details on how the settlement of the original transaction(s)
between the instructing agent and the instructed agent was completed.
properties:
SttlmMtd:
$ref: '#/definitions/SettlementMethod1Code'
SttlmAcct:
description: >-
A specific purpose account used to post debit and credit entries as a
result of the transaction.
allOf:
- $ref: '#/definitions/CashAccount16'
InstgRmbrsmntAgtAcct:
description: >-
Unambiguous identification of the account of the instructing
reimbursement agent account at its servicing agent in the payment
chain.
allOf:
- $ref: '#/definitions/CashAccount16'
InstdRmbrsmntAgtAcct:
description: >-
Unambiguous identification of the account of the instructed
reimbursement agent account at its servicing agent in the payment
chain.
allOf:
- $ref: '#/definitions/CashAccount16'
ThrdRmbrsmntAgtAcct:
description: >-
Unambiguous identification of the account of the third reimbursement
agent account at its servicing agent in the payment chain.
allOf:
- $ref: '#/definitions/CashAccount16'
InstgRmbrsmntAgt:
description: >-
Agent through which the instructing agent will reimburse the
instructed agent.
allOf:
- $ref: '#/definitions/BranchAndFinancialInstitutionIdentification4'
InstdRmbrsmntAgt:
description: Agent at which the instructed agent will be reimbursed.
allOf:
- $ref: '#/definitions/BranchAndFinancialInstitutionIdentification4'
ThrdRmbrsmntAgt:
description: Agent at which the instructed agent will be reimbursed.
allOf:
- $ref: '#/definitions/BranchAndFinancialInstitutionIdentification4'
ClrSys:
$ref: '#/definitions/ClearingSystemIdentification3Choice'
required:
- SttlmMtd
SettlementMethod1Code:
description: >-
Method used to settle the (batch of) payment instructions.
INDA : Settlement is done by the agent instructed to
execute a payment instruction.
INGA : Settlement is done by
the agent instructing and forwarding the payment to the next party in the
payment chain.
COVE : Settlement is done through a cover
payment.
CLRG : Settlement is done through a payment
clearing system.
enum:
- INDA
- INGA
- COVE
- CLRG
type: string
PaymentTypeInformation22:
type: object
description: Set of elements used to further specify the type of transaction.
properties:
InstrPrty:
$ref: '#/definitions/Priority2Code'
ClrChanl:
description: >-
Specifies the clearing channel to be used to process the payment
instruction.
RTGS : Clearing channel is a real-time
gross settlement system.
RTNS : Clearing channel is a
real-time net settlement system.
MPNS : Clearing
channel is a mass payment net settlement system.
BOOK :
Payment through internal book transfer.
enum:
- RTGS
- RTNS
- MPNS
- BOOK
type: string
SvcLvl:
$ref: '#/definitions/ServiceLevel8Choice'
LclInstrm:
$ref: '#/definitions/LocalInstrument2Choice'
SeqTp:
description: >-
Identifies the direct debit sequence, such as first, recurrent, final
or one-off.
FRST : First collection of a series of
direct debit instructions.
RCUR : Direct debit
instruction where the debtor's authorisation is used for regular
direct debit transactions initiated by the creditor.
FNAL : Final collection of a series of direct debit
instructions.
OOFF : Direct debit instruction where the
debtor's authorisation is used to initiate one single direct debit
transaction.
enum:
- FRST
- RCUR
- FNAL
- OOFF
type: string
CtgyPurp:
$ref: '#/definitions/CategoryPurpose1Choice'
PaymentMethod4Code:
description: >-
Specifies the means of payment that will be used to move the amount of
money.
CHK : Written order to a bank to pay a certain amount
of money from one person to another person.
TRF : Transfer
of an amount of money in the books of the account servicer.
DD : Collection of an amount of money from the debtor's
bank account by the creditor. The amount of money and dates of collections
may vary.
TRA : Transfer of an amount of money in the books
of the account servicer. An advice should be sent back to the account
owner.
enum:
- CHK
- TRF
- DD
- TRA
type: string
MandateRelatedInformation6:
type: object
description: >-
Set of elements used to provide further details of the mandate signed
between the creditor and the debtor.
properties:
MndtId:
description: >-
Unique identification, as assigned by the creditor, to unambiguously
identify the mandate.
allOf:
- $ref: '#/definitions/Max35Text'
AmdmntInd:
type: boolean
description: Indicator notifying whether the underlying mandate is amended or not.
AmdmntInfDtls:
$ref: '#/definitions/AmendmentInformationDetails6'
ElctrncSgntr:
description: >-
Additional security provisions, such as a digital signature, as
provided by the debtor.
minLength: 1
maxLength: 1025
type: string
DtOfSgntr:
type: string
format: date
description: Date on which the direct debit mandate has been signed by the debtor.
FrstColltnDt:
type: string
format: date
description: Date of the first collection of a direct debit as per the mandate.
FnlColltnDt:
type: string
format: date
description: Date of the final collection of a direct debit as per the mandate.
Frqcy:
$ref: '#/definitions/Frequency1Code'
AmendmentInformationDetails6:
type: object
description: List of mandate elements that have been modified.
properties:
OrgnlMndtId:
description: >-
Unique identification, as assigned by the creditor, to unambiguously
identify the original mandate.
allOf:
- $ref: '#/definitions/Max35Text'
OrgnlCdtrSchmeId:
description: Original creditor scheme identification that has been modified.
allOf:
- $ref: '#/definitions/PartyIdentification32'
OrgnlDbtr:
description: Original debtor that has been modified.
allOf:
- $ref: '#/definitions/PartyIdentification32'
OrgnlDbtrAcct:
description: Original debtor account that has been modified.
allOf:
- $ref: '#/definitions/CashAccount16'
OrgnlDbtrAgt:
description: Original debtor agent that has been modified.
allOf:
- $ref: '#/definitions/BranchAndFinancialInstitutionIdentification4'
OrgnlDbtrAgtAcct:
description: Original debtor agent account that has been modified.
allOf:
- $ref: '#/definitions/CashAccount16'
OrgnlCdtrAgt:
description: Original creditor agent that has been modified.
allOf:
- $ref: '#/definitions/BranchAndFinancialInstitutionIdentification4'
OrgnlCdtrAgtAcct:
description: Original creditor agent acount that has been modified.
allOf:
- $ref: '#/definitions/CashAccount16'
OrgnlFnlColltnDt:
type: string
format: date
description: Original final collection date that has been modified.
OrgnlFrqcy:
$ref: '#/definitions/Frequency1Code'
Frequency1Code:
description: >-
Original frequency that has been modified.
YEAR : Event
takes place every year or once a year.
MNTH : Event takes
place every month or once a month.
QURT : Event takes place
every three months or four times a year.
MIAN : Event takes
place every six months or two times a year.
WEEK : Event
takes place once a week.
DAIL : Event takes place every
day.
ADHO : Event takes place on request or as necessary.
INDA : Event takes place several times a day.
enum:
- YEAR
- MNTH
- QURT
- MIAN
- WEEK
- DAIL
- ADHO
- INDA
type: string
DateAndPlaceOfBirth:
type: object
description: Date and place of birth of a person.
properties:
BirthDt:
description: Date on which a person is born.
allOf:
- $ref: '#/definitions/ISODate'
PrvcOfBirth:
description: Province where a person was born.
allOf:
- $ref: '#/definitions/Max35Text'
CityOfBirth:
description: City where a person was born.
allOf:
- $ref: '#/definitions/Max35Text'
CtryOfBirth:
description: Country where a person was born.
allOf:
- $ref: '#/definitions/CountryCode'
required:
- BirthDt
- CityOfBirth
- CtryOfBirth
DatePeriodDetails:
type: object
properties:
FrDt:
description: Start date of the range.
allOf:
- $ref: '#/definitions/ISODate'
ToDt:
description: End date of the range.
allOf:
- $ref: '#/definitions/ISODate'
required:
- FrDt
- ToDt
DirectDebitTransaction6:
type: object
description: >-
Set of elements providing information specific to the direct debit
mandate.
properties:
MndtRltdInf:
$ref: '#/definitions/MandateRelatedInformation6'
CdtrSchmeId:
description: Credit party that signs the mandate.
allOf:
- $ref: '#/definitions/PartyIdentification32'
PreNtfctnId:
description: >-
Unique and unambiguous identification of the pre-notification which is
sent separately from the direct debit instruction.
allOf:
- $ref: '#/definitions/Max35Text'
PreNtfctnDt:
description: >-
Date on which the creditor notifies the debtor about the amount and
date on which the direct debit instruction will be presented to the
debtor's agent.
allOf:
- $ref: '#/definitions/ISODate'
DirectDebitTransactionInformation9:
type: object
properties:
PmtId:
$ref: '#/definitions/PaymentIdentification1'
PmtTpInf:
$ref: '#/definitions/PaymentTypeInformation20'
InstdAmt:
description: >-
Amount of money to be moved between the debtor and creditor, before
deduction of charges, expressed in the currency as ordered by the
initiating party.
allOf:
- $ref: '#/definitions/ActiveOrHistoricCurrencyAndAmount'
ChrgBr:
$ref: '#/definitions/ChargeBearerType1Code'
DrctDbtTx:
$ref: '#/definitions/DirectDebitTransaction6'
UltmtCdtr:
description: Ultimate party to which an amount of money is due.
allOf:
- $ref: '#/definitions/PartyIdentification32'
Dbtr:
description: Party that owes an amount of money to the (ultimate) creditor.
allOf:
- $ref: '#/definitions/PartyIdentification32'
DbtrAcct:
description: >-
Unambiguous identification of the account of the debtor to which a
debit entry will be made as a result of the transaction.
allOf:
- $ref: '#/definitions/CashAccount16'
DbtrAgt:
description: Financial institution servicing an account for the debtor.
allOf:
- $ref: '#/definitions/BranchAndFinancialInstitutionIdentification4'
DbtrAgtAcct:
description: >-
Unambiguous identification of the account of the debtor agent at its
servicing agent in the payment chain.
allOf:
- $ref: '#/definitions/CashAccount16'
UltmtDbtr:
description: >-
Ultimate party that owes an amount of money to the (ultimate)
creditor.
allOf:
- $ref: '#/definitions/PartyIdentification32'
InstrForCdtrAgt:
description: >-
Further information, related to the processing of the payment
instruction, that may need to be acted upon by the creditor agent,
depending on agreement between creditor and the creditor agent.
allOf:
- $ref: '#/definitions/Max140Text'
Purp:
$ref: '#/definitions/Purpose2Choice'
RgltryRptg:
description: Information needed due to regulatory and statutory requirements.
items:
$ref: '#/definitions/RegulatoryReporting3'
maxItems: 10
type: array
Tax:
$ref: '#/definitions/TaxInformation3'
RltdRmtInf:
description: >-
Set of elements used to provide information related to the handling of
the remittance information by any of the agents in the transaction
processing chain.
items:
$ref: '#/definitions/RemittanceLocation2'
maxItems: 10
type: array
RmtInf:
description: >-
Information supplied to enable the matching of an entry with the items
that the transfer is intended to settle, such as commercial invoices
in an accounts' receivable system.
allOf:
- $ref: '#/definitions/RemittanceInformation5'
required:
- PmtId
- InstdAmt
- DbtrAgt
- DbtrAcct
DocumentAdjustment1:
type: object
properties:
AddtlInf:
description: Provides further details on the document adjustment.
allOf:
- $ref: '#/definitions/Max140Text'
Amt:
description: Amount of money of the document adjustment.
allOf:
- $ref: '#/definitions/ActiveOrHistoricCurrencyAndAmount'
CdtDbtInd:
$ref: '#/definitions/CreditDebitCode'
Rsn:
description: Specifies the reason for the adjustment.
allOf:
- $ref: '#/definitions/Max4Text'
required:
- Amt
DocumentType3Code:
enum:
- RADM
- RPIN
- FXDR
- DISP
- PUOR
- SCOR
type: string
description: >-
Type of creditor reference, in a coded form.
RADM : Document
is a remittance advice sent separately from the current transaction.
RPIN : Document is a linked payment instruction to which
the current payment instruction is related, for example, in a cover
scenario.
FXDR : Document is a pre-agreed or pre-arranged
foreign exchange transaction to which the payment transaction refers.
DISP : Document is a dispatch advice.
PUOR :
Document is a purchase order
SCOR : Document is a
structured communication reference provided by the creditor to identify
the referred transaction.
DocumentType5Code:
description: >-
Document type in a coded form.
MSIN : Document is an invoice
claiming payment for the supply of metered services, for example gas or
electricity supplied to a fixed meter.
CNFA : Document is a
credit note for the final amount settled for a commercial transaction.
DNFA : Document is a debit note for the final amount
settled for a commercial transaction.
CINV : Document is
an invoice.
CREN : Document is a credit note.
DEBN : Document is a debit note.
HIRI :
Document is an invoice for the hiring of human resources or renting goods
or equipment.
SBIN : Document is an invoice issued by the
debtor.
SVGS : Account used for savings.
CMCN : Document is an agreement between the parties,
stipulating the terms and conditions of the delivery of goods or services.
SOAC : Document is a statement of the transactions posted
to the debtor's account at the supplier.
DISP : Document is
a dispatch advice.
BOLD : Document is a shipping notice.
VCHR : Document is an electronic payment document.
AROI : Document is a payment that applies to a specific
source document.
TSUT : Document is a transaction
identifier as assigned by the Trade Services Utility.
enum:
- MSIN
- CNFA
- DNFA
- CINV
- CREN
- DEBN
- HIRI
- SBIN
- CMCN
- SOAC
- DISP
- BOLD
- VCHR
- AROI
- TSUT
type: string
EquivalentAmount2:
type: object
description: >-
Amount of money to be moved between the debtor and creditor, expressed in
the currency of the debtor's account, and the currency in which the amount
is to be moved.
properties:
Amt:
description: >-
Amount of money to be moved between debtor and creditor, before
deduction of charges, expressed in the currency of the debtor's
account, and to be moved in a different currency.
allOf:
- $ref: '#/definitions/ActiveOrHistoricCurrencyAndAmount'
CcyOfTrf:
description: >-
Specifies the currency of the to be transferred amount, which is
different from the currency of the debtor's account.
allOf:
- $ref: '#/definitions/ActiveOrHistoricCurrencyCode'
required:
- Amt
- CcyOfTrf
FinancialIdentificationSchemeName1Choice:
type: object
description: >-
Name of the identification scheme. Either Code or Proprietary field value
should be passed on request.
properties:
Cd:
description: >-
Name of the identification scheme, in a coded form as published in an
external list.
type: string
maxLength: 4
minLength: 1
Prtry:
description: Name of the identification scheme, in a free text form.
allOf:
- $ref: '#/definitions/Max35Text'
required:
- Cd
- Prtry
FinancialInstitutionIdentification7:
type: object
description: >-
Unique and unambiguous identification of a financial institution, as
assigned under an internationally recognised or proprietary identification
scheme.
properties:
BIC:
description: >-
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)".
pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}'
type: string
ClrSysMmbId:
$ref: '#/definitions/ClearingSystemMemberIdentification2'
Nm:
description: >-
Name by which an agent is known and which is usually used to identify
that agent.
allOf:
- $ref: '#/definitions/Max140Text'
Othr:
$ref: '#/definitions/GenericFinancialIdentification1'
PstlAdr:
$ref: '#/definitions/PostalAddress6'
GenericAccountIdentification1:
type: object
description: >-
Unique identification of an account, as assigned by the account servicer,
using an identification scheme.
properties:
Id:
description: Identification assigned by an institution.
allOf:
- $ref: '#/definitions/Max34Text'
Issr:
description: Entity that assigns the identification.
allOf:
- $ref: '#/definitions/Max35Text'
SchmeNm:
description: Name of the identification scheme.
allOf:
- $ref: '#/definitions/FinancialIdentificationSchemeName1Choice'
required:
- Id
GenericFinancialIdentification1:
type: object
description: >-
Unique identification of an agent, as assigned by an institution, using an
identification scheme.
properties:
Id:
description: Unique and unambiguous identification of a person.
allOf:
- $ref: '#/definitions/Max35Text'
Issr:
description: Entity that assigns the identification.
allOf:
- $ref: '#/definitions/Max35Text'
SchmeNm:
$ref: '#/definitions/FinancialIdentificationSchemeName1Choice'
required:
- Id
GenericOrganisationIdentification1:
type: object
properties:
Id:
description: Identification assigned by an institution.
allOf:
- $ref: '#/definitions/Max35Text'
SchmeNm:
description: Name of the identification scheme.
allOf:
- $ref: '#/definitions/IdentificationSchemeName1Choice'
Issr:
description: Entity that assigns the identification.
allOf:
- $ref: '#/definitions/Max35Text'
required:
- Id
GenericPersonIdentification1:
type: object
description: >-
Unique identification of a person, as assigned by an institution, using an
identification scheme.
properties:
Id:
description: Unique and unambiguous identification of a person.
allOf:
- $ref: '#/definitions/Max35Text'
SchmeNm:
description: Name of the identification scheme.
allOf:
- $ref: '#/definitions/IdentificationSchemeName1Choice'
Issr:
description: Entity that assigns the identification.
allOf:
- $ref: '#/definitions/Max35Text'
required:
- Id
GroupHeader39:
type: object
description: >-
Group header details. Set of characteristics shared by all individual
transactions included in the message.
properties:
CtrlSum:
description: >-
Total of all individual amounts included in the message, irrespective
of currencies. The number of fractional digits should not be more than
17.
maxLength: 18
type: string
CreDtTm:
type: string
format: date-time
description: Date and time at which the message was created.
FwdgAgt:
description: >-
Financial institution that receives the instruction from the
initiating party and forwards it to the next agent in the payment
chain for execution.
allOf:
- $ref: '#/definitions/BranchAndFinancialInstitutionIdentification4'
InitgPty:
description: >-
Party that initiates the payment. This can either be the debtor or the
party that initiates the credit transfer on behalf of the debtor.
allOf:
- $ref: '#/definitions/PartyIdentification32'
MsgId:
type: string
description: >-
Point to point reference, as assigned by the instructing party, and
sent to the next party in the chain to unambiguously identify the
message.
maxLength: 35
minLength: 1
NbOfTxs:
description: Number of individual transactions contained in the message.
allOf:
- $ref: '#/definitions/Max15NumericText'
Authstn:
type: array
description: >-
User identification or any user key to be used to check whether the
initiating party is allowed to initiate transactions from the account
specified in the message.
items:
$ref: '#/definitions/Authorisation1Choice'
maxItems: 2
required:
- MsgId
- CreDtTm
- NbOfTxs
- InitgPty
GroupHeader36:
type: object
description: >-
Set of characteristics shared by all individual transactions included in
the message.
properties:
CreDtTm:
type: string
format: date-time
description: Date and time at which the message was created.
FwdgAgt:
description: >-
Financial institution that receives the instruction from the
initiating party and forwards it to the next agent in the payment
chain.
allOf:
- $ref: '#/definitions/BranchAndFinancialInstitutionIdentification4'
DbtrAgt:
description: Financial institution servicing an account for the debtor.
allOf:
- $ref: '#/definitions/BranchAndFinancialInstitutionIdentification4'
CdtrAgt:
description: Financial institution servicing an account for the creditor.
allOf:
- $ref: '#/definitions/BranchAndFinancialInstitutionIdentification4'
InitgPty:
description: Party that initiates the status message.
allOf:
- $ref: '#/definitions/PartyIdentification32'
MsgId:
type: string
description: >-
Point to point reference, as assigned by the instructing party, and
sent to the next party in the chain to unambiguously identify the
message.
maxLength: 35
minLength: 1
required:
- MsgId
- CreDtTm
IBAN2007Identifier:
description: >-
>- International Bank Account Number (IBAN) - identifier used
internationally by financial institutions to uniquely identify the account
of a customer. Further specifications of the format and content of the
IBAN can be found in the standard ISO 13616 "Banking and related financial
services - International Bank Account Number (IBAN)" version 1997-10-01,
or later revisions.
pattern: ^[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}$
type: string
ISODate:
type: string
format: date
LocalInstrument2Choice:
type: object
description: >-
User community specific instrument. Either Code or Proprietary field value
should be passed in request.
properties:
Cd:
description: >-
Specifies the local instrument, as published in an external local
instrument code list.
allOf:
- $ref: '#/definitions/Max35Text'
Prtry:
description: Specifies the local instrument, as a proprietary code.
allOf:
- $ref: '#/definitions/Max35Text'
Max10Text:
maxLength: 10
minLength: 1
type: string
Max140Text:
maxLength: 140
minLength: 1
type: string
Max15NumericText:
pattern: '[0-9]{1,15}'
type: string
Max16Text:
maxLength: 16
minLength: 1
type: string
Max2048Text:
maxLength: 2048
minLength: 1
type: string
Max34Text:
maxLength: 34
minLength: 1
type: string
Max35Text:
maxLength: 35
minLength: 1
type: string
Max4Text:
maxLength: 4
minLength: 1
type: string
Max70Text:
maxLength: 70
minLength: 1
type: string
Max105Text:
maxLength: 105
minLength: 1
type: string
NameAndAddress10:
type: object
properties:
Adr:
$ref: '#/definitions/PostalAddress6'
Nm:
description: >-
Name by which a party is known and is usually used to identify that
party.
allOf:
- $ref: '#/definitions/Max140Text'
required:
- Nm
- Adr
NamePrefix1Code:
enum:
- DOCT
- MIST
- MISS
- MADM
type: string
description: >-
Specifies the terms used to formally address a person.
DOCT : Title of the person is Doctor or Dr.
MIST : Title of the person is Mister or Mr.
MISS : Title of the person is Miss.
MADM :
Title of the person is Madam.
Number:
maxLength: 18
type: number
OrganisationIdentification4:
type: object
description: Unique and unambiguous way to identify an organisation.
properties:
BICOrBEI:
description: >-
Code allocated to a financial institution or non financial institution
by the ISO 9362 Registration Authority as described in ISO 9362
"Banking - Banking telecommunication messages - Business identifier
code (BIC)".
pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}'
type: string
Othr:
description: >-
Unique identification of an organisation, as assigned by an
institution, using an identification scheme.
items:
$ref: '#/definitions/GenericOrganisationIdentification1'
type: array
IdentificationSchemeName1Choice:
type: object
properties:
Cd:
description: >-
Name of the identification scheme, in a coded form as published in an
external list.
type: string
maxLength: 4
minLength: 1
Prtry:
description: Name of the identification scheme, in a free text form.
allOf:
- $ref: '#/definitions/Max35Text'
required:
- Cd
- Prtry
PartyIdentification32:
type: object
properties:
Nm:
description: >-
Name by which a party is known and which is usually used to identify
that party.
allOf:
- $ref: '#/definitions/Max140Text'
PstlAdr:
$ref: '#/definitions/PostalAddress6'
Id:
type: object
description: >-
Unique and unambiguous identification of a party. Should pass either
OrgId or PrvtId for organisation and private respectively.
properties:
OrgId:
$ref: '#/definitions/OrganisationIdentification4'
PrvtId:
$ref: '#/definitions/PersonIdentification5'
CtryOfRes:
description: >-
Country in which a person resides (the place of a person's home). In
the case of a company, it is the country from which the affairs of
that company are directed.
allOf:
- $ref: '#/definitions/CountryCode'
CtctDtls:
$ref: '#/definitions/ContactDetails2'
PaymentIdentification1:
type: object
description: Set of elements used to reference a payment instruction.
properties:
EndToEndId:
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.
allOf:
- $ref: '#/definitions/Max35Text'
InstrId:
description: >-
Unique identification as assigned by an instructing party for an
instructed party to unambiguously identify the instruction.
allOf:
- $ref: '#/definitions/Max35Text'
required:
- EndToEndId
PaymentInstructionInformation4:
type: object
properties:
BtchBookg:
description: >-
Identifies whether a single entry per individual transaction or a
batch entry for the sum of the amounts of all transactions within the
group of a message is requested.
type: boolean
ChrgBr:
$ref: '#/definitions/ChargeBearerType1Code'
ChrgsAcct:
description: Account used to process charges associated with a transaction.
allOf:
- $ref: '#/definitions/CashAccount16'
ChrgsAcctAgt:
description: Agent that services a charges account.
allOf:
- $ref: '#/definitions/BranchAndFinancialInstitutionIdentification4'
CtrlSum:
description: >-
Total of all individual amounts included in the group, irrespective of
currencies. The number of fractional digits should not be more than
17.
type: string
maxLength: 18
DrctDbtTxInf:
description: >-
Set of elements used to provide information on the individual
transaction(s) included in the message.
items:
$ref: '#/definitions/DirectDebitTransactionInformation9'
minItems: 1
type: array
Cdtr:
description: Party to which an amount of money is due.
allOf:
- $ref: '#/definitions/PartyIdentification32'
CdtrAcct:
description: >-
Unambiguous identification of the account of the creditor to which a
credit entry will be posted as a result of the payment transaction.
allOf:
- $ref: '#/definitions/CashAccount16'
CdtrAgt:
description: Financial institution servicing an account for the creditor.
allOf:
- $ref: '#/definitions/BranchAndFinancialInstitutionIdentification4'
CdtrAgtAcct:
description: >-
Unambiguous identification of the account of the creditor agent at its
servicing agent in the payment chain.
allOf:
- $ref: '#/definitions/CashAccount16'
NbOfTxs:
description: >-
Number of individual transactions contained in the paymnet information
group.
type: string
pattern: '[0-9]{1,15}'
PmtInfId:
description: >-
Unique identification, as assigned by a sending party, to
unambiguously identify the payment information group within the
message.
allOf:
- $ref: '#/definitions/Max35Text'
PmtMtd:
description: >-
Specifies the means of payment that will be used to move the amount of
money.
DD : Collection of an amount of money from the
debtor's bank account by the creditor. The amount of money and dates
of collections may vary.
type: string
enum:
- DD
PmtTpInf:
$ref: '#/definitions/PaymentTypeInformation20'
CdtrSchmeId:
description: Credit party that signs the mandate.
allOf:
- $ref: '#/definitions/PartyIdentification32'
ReqdColltnDt:
type: string
format: date
description: >-
Date and time at which the creditor requests that the amount of money
is to be collected from the debtor.
UltmtCdtr:
description: Ultimate party to which an amount of money is due.
allOf:
- $ref: '#/definitions/PartyIdentification32'
required:
- PmtInfId
- PmtMtd
- ReqdColltnDt
- Cdtr
- CdtrAcct
- CdtrAgt
- DrctDbtTxInf
PaymentTypeInformation20:
type: object
description: Set of elements used to further specify the type of transaction.
properties:
CtgyPurp:
$ref: '#/definitions/CategoryPurpose1Choice'
InstrPrty:
$ref: '#/definitions/Priority2Code'
LclInstrm:
$ref: '#/definitions/LocalInstrument2Choice'
SvcLvl:
$ref: '#/definitions/ServiceLevel8Choice'
SeqTp:
$ref: '#/definitions/SequenceType1Code'
PersonIdentification5:
type: object
description: Unique and unambiguous identification of a person, for example a passport.
properties:
DtAndPlcOfBirth:
$ref: '#/definitions/DateAndPlaceOfBirth'
Othr:
description: >-
Unique identification of a person, as assigned by an institution,
using an identification scheme.
items:
$ref: '#/definitions/GenericPersonIdentification1'
type: array
PhoneNumber:
pattern: \+[0-9]{1,3}-[0-9()+\-]{1,30}
type: string
PostalAddress6:
type: object
description: >-
Information that locates and identifies a specific address, as defined by
postal services.
properties:
AdrLine:
type: array
description: >-
Information that locates and identifies a specific address, as defined
by postal services, presented in free format text.
items:
$ref: '#/definitions/Max70Text'
maxItems: 7
AdrTp:
description: >-
Identifies the nature of the postal address.
ADDR :
Address is the complete postal address.
PBOX : Address
is a postal office (PO) box.
HOME : Address is the home
address.
BIZZ : Address is the business
address.
MLTO : Address is the address to which mail is
sent.
DLVY : Address is the address to which delivery is
to take place.
type: string
enum:
- ADDR
- PBOX
- HOME
- BIZZ
- MLTO
- DLVY
BldgNb:
description: Number that identifies the position of a building on a street.
allOf:
- $ref: '#/definitions/Max16Text'
Ctry:
$ref: '#/definitions/CountryCode'
CtrySubDvsn:
description: Identifies a subdivision of a country such as state, region, county.
allOf:
- $ref: '#/definitions/Max35Text'
Dept:
description: Identification of a division of a large organisation or building.
allOf:
- $ref: '#/definitions/Max70Text'
PstCd:
description: >-
Identifier consisting of a group of letters and/or numbers that is
added to a postal address to assist the sorting of mail.
allOf:
- $ref: '#/definitions/Max16Text'
StrtNm:
description: Name of a street or thoroughfare.
allOf:
- $ref: '#/definitions/Max70Text'
SubDept:
description: Identification of a sub-division of a large organisation or building.
allOf:
- $ref: '#/definitions/Max70Text'
TwnNm:
description: >-
Name of a built-up area, with defined boundaries, and a local
government.
allOf:
- $ref: '#/definitions/Max35Text'
Priority2Code:
description: >-
Indicator of the urgency or order of importance that the instructing party
would like the instructed party to apply to the processing of the
instruction.
HIGH : Priority level is high.
NORM : Priority level is normal.
enum:
- HIGH
- NORM
type: string
Purpose2Choice:
type: object
description: >-
Specifies the underlying reason for the payment transaction. Either Code
or Proprietary field value should be passed on request.
properties:
Cd:
description: >-
Underlying reason for the payment transaction, as published in an
external purpose code list.
type: string
maxLength: 4
minLength: 1
Prtry:
description: Purpose, in a proprietary form.
allOf:
- $ref: '#/definitions/Max35Text'
ReferredDocumentInformation3:
type: object
properties:
Nb:
description: Unique and unambiguous identification of the referred document.
allOf:
- $ref: '#/definitions/Max35Text'
RltdDt:
description: Date associated with the referred document.
allOf:
- $ref: '#/definitions/ISODate'
Tp:
$ref: '#/definitions/ReferredDocumentType2'
ReferredDocumentType1Choice:
type: object
description: >-
Provides the type details of the referred document. Either Code or
Proprietary field value should be passed on request.
properties:
Cd:
$ref: '#/definitions/DocumentType5Code'
Prtry:
description: Proprietary identification of the type of the remittance document.
allOf:
- $ref: '#/definitions/Max35Text'
ReferredDocumentType2:
type: object
description: Specifies the type of referred document.
properties:
CdOrPrtry:
$ref: '#/definitions/ReferredDocumentType1Choice'
Issr:
description: Identification of the issuer of the reference document type.
allOf:
- $ref: '#/definitions/Max35Text'
required:
- CdOrPrtry
RegulatoryReporting3:
type: object
properties:
Authrty:
description: Entity requiring the regulatory reporting information.
type: object
properties:
Ctry:
description: >-
Country of the entity that requires the regulatory reporting
information.
allOf:
- $ref: '#/definitions/CountryCode'
Nm:
description: Name of the entity requiring the regulatory reporting information.
allOf:
- $ref: '#/definitions/Max140Text'
DbtCdtRptgInd:
enum:
- CRED
- DEBT
- BOTH
type: string
description: >-
Identifies whether the regulatory reporting information applies to the
debit side, to the credit side or to both debit and credit sides of
the transaction.
CRED : Regulatory information applies
to the credit side.
DEBT : Regulatory information
applies to the debit side.
BOTH : Regulatory
information applies to both credit and debit sides.
Dtls:
description: >-
Set of elements used to provide details on the regulatory reporting
information.
items:
$ref: '#/definitions/StructuredRegulatoryReporting3'
type: array
RemittanceAmount1:
type: object
description: >-
Set of elements used to provide details on the amounts of the referred
document.
properties:
AdjstmntAmtAndRsn:
description: >-
Set of elements used to provide information on the amount and reason
of the document adjustment.
items:
$ref: '#/definitions/DocumentAdjustment1'
type: array
CdtNoteAmt:
description: >-
Amount specified for the referred document is the amount of a credit
note.
allOf:
- $ref: '#/definitions/ActiveOrHistoricCurrencyAndAmount'
DscntApldAmt:
description: >-
Amount of money that results from the application of an agreed
discount to the amount due and payable to the creditor.
allOf:
- $ref: '#/definitions/ActiveOrHistoricCurrencyAndAmount'
DuePyblAmt:
description: Amount specified is the exact amount due and payable to the creditor.
allOf:
- $ref: '#/definitions/ActiveOrHistoricCurrencyAndAmount'
RmtdAmt:
description: Amount of money remitted for the referred document.
allOf:
- $ref: '#/definitions/ActiveOrHistoricCurrencyAndAmount'
TaxAmt:
description: Quantity of cash resulting from the calculation of the tax.
allOf:
- $ref: '#/definitions/ActiveOrHistoricCurrencyAndAmount'
RemittanceInformation5:
type: object
properties:
Strd:
description: >-
Information supplied to enable the matching/reconciliation of an entry
with the items that the payment is intended to settle, such as
commercial invoices in an accounts' receivable system, in a structured
form.
items:
$ref: '#/definitions/StructuredRemittanceInformation7'
type: array
Ustrd:
description: >-
Information supplied to enable the matching/reconciliation of an entry
with the items that the payment is intended to settle, such as
commercial invoices in an accounts' receivable system, in an
unstructured form.
items:
$ref: '#/definitions/Max140Text'
type: array
RemittanceLocation2:
type: object
properties:
RmtId:
description: >-
Unique identification, as assigned by the initiating party, to
unambiguously identify the remittance information sent separately from
the payment instruction, such as a remittance advice.
allOf:
- $ref: '#/definitions/Max35Text'
RmtLctnElctrncAdr:
description: >-
Electronic address to which an agent is to send the remittance
information.
allOf:
- $ref: '#/definitions/Max2048Text'
RmtLctnMtd:
description: >-
Method used to deliver the remittance advice
information.
FAXI : Remittance advice information must
be faxed.
EDIC : Remittance advice information must be
sent through Electronic Data Interchange (EDI).
URID :
Remittance advice information needs to be sent to a Uniform Resource
Identifier (URI). URI is a compact string of characters that uniquely
identify an abstract or physical resource. URI's are the super-set of
identifiers, such as URLs, email addresses, ftp sites, etc, and as
such, provide the syntax for all of the identification schemes.
EMAL : Remittance advice information must be sent
through e-mail.
POST : Remittance advice information
must be sent through postal services.
SMSM : Remittance
advice information must be sent through by phone as a short message
service (SMS).
type: string
enum:
- FAXI
- EDIC
- URID
- EMAL
- POST
- SMSM
RmtLctnPstlAdr:
description: >-
Postal address to which an agent is to send the remittance
information.
allOf:
- $ref: '#/definitions/NameAndAddress10'
SequenceType1Code:
description: >-
Identifies the direct debit sequence, such as first, recurrent, final or
one-off.
FRST : First collection of a series of direct debit
instructions.
RCUR : Direct debit instruction where the
debtor's authorisation is used for regular direct debit transactions
initiated by the creditor.
FNAL : Final collection of a
series of direct debit instructions.
OOFF : Direct debit
instruction where the debtor's authorisation is used to initiate one
single direct debit transaction.
enum:
- FRST
- RCUR
- FNAL
- OOFF
type: string
ServiceLevel8Choice:
type: object
description: >-
Agreement under which or rules under which the transaction should be
processed. Either code or proprietary field values should be sent in
request.
properties:
Cd:
description: >-
Specifies a pre-agreed service or level of service between the
parties, as published in an external service level code list.
allOf:
- $ref: '#/definitions/Max4Text'
Prtry:
description: >-
Specifies a pre-agreed service or level of service between the
parties, as a proprietary code.
allOf:
- $ref: '#/definitions/Max35Text'
StructuredRegulatoryReporting3:
type: object
properties:
Amt:
description: >-
Amount of money to be reported for regulatory and statutory
requirements.
allOf:
- $ref: '#/definitions/ActiveOrHistoricCurrencyAndAmount'
Cd:
description: >-
Specifies the nature, purpose, and reason for the transaction to be
reported for regulatory and statutory requirements in a coded form.
allOf:
- $ref: '#/definitions/Max10Text'
Ctry:
description: Country related to the specified type of regulatory reporting details.
allOf:
- $ref: '#/definitions/CountryCode'
Dt:
description: Date related to the specified type of regulatory reporting details.
allOf:
- $ref: '#/definitions/ISODate'
Inf:
description: >-
Additional details that cater for specific domestic regulatory
requirements.
items:
$ref: '#/definitions/Max35Text'
type: array
Tp:
description: >-
Specifies the type of the information supplied in the regulatory
reporting details.
allOf:
- $ref: '#/definitions/Max35Text'
StructuredRemittanceInformation7:
type: object
properties:
AddtlRmtInf:
description: >-
Additional information, in free text form, to complement the
structured remittance information.
items:
$ref: '#/definitions/Max140Text'
maxItems: 3
type: array
CdtrRefInf:
$ref: '#/definitions/CreditorReferenceInformation2'
Invcee:
description: >-
Identification of the party to whom an invoice is issued, when it is
different from the debtor or ultimate debtor.
allOf:
- $ref: '#/definitions/PartyIdentification32'
Invcr:
description: >-
Identification of the organisation issuing the invoice, when it is
different from the creditor or ultimate creditor.
allOf:
- $ref: '#/definitions/PartyIdentification32'
RfrdDocAmt:
$ref: '#/definitions/RemittanceAmount1'
RfrdDocInf:
description: >-
Set of elements used to identify the documents referred to in the
remittance information.
items:
$ref: '#/definitions/ReferredDocumentInformation3'
type: array
TaxAmount1:
type: object
description: >-
Set of elements used to provide information on the amount of the tax
record.
properties:
Dtls:
description: Set of elements used to provide details on the tax period and amount.
items:
$ref: '#/definitions/TaxRecordDetails1'
type: array
Rate:
description: Rate used to calculate the tax.
type: string
maxLength: 11
TaxblBaseAmt:
description: Amount of money on which the tax is based.
allOf:
- $ref: '#/definitions/ActiveOrHistoricCurrencyAndAmount'
TtlAmt:
description: >-
Total amount that is the result of the calculation of the tax for the
record.
allOf:
- $ref: '#/definitions/ActiveOrHistoricCurrencyAndAmount'
TaxAuthorisation1:
type: object
description: Details of the authorised tax paying party.
properties:
Nm:
description: Name of the debtor or the debtor's authorised representative.
allOf:
- $ref: '#/definitions/Max140Text'
Titl:
description: Title or position of debtor or the debtor's authorised representative.
allOf:
- $ref: '#/definitions/Max35Text'
TaxInformation3:
type: object
description: Set of elements used to provide details on the tax.
properties:
AdmstnZn:
description: Territorial part of a country to which the tax payment is related.
allOf:
- $ref: '#/definitions/Max35Text'
Cdtr:
$ref: '#/definitions/TaxParty1'
Dt:
description: Date by which tax is due.
allOf:
- $ref: '#/definitions/ISODate'
Dbtr:
$ref: '#/definitions/TaxParty2'
Mtd:
description: >-
Method used to indicate the underlying business or how the tax is
paid.
allOf:
- $ref: '#/definitions/Max35Text'
Rcrd:
description: Record of tax details.
items:
$ref: '#/definitions/TaxRecord1'
type: array
RefNb:
description: Tax reference information that is specific to a taxing agency.
allOf:
- $ref: '#/definitions/Max140Text'
SeqNb:
description: Sequential number of the tax report.
allOf:
- $ref: '#/definitions/Number'
TtlTaxAmt:
description: Total amount of money as result of the calculation of the tax.
allOf:
- $ref: '#/definitions/ActiveOrHistoricCurrencyAndAmount'
TtlTaxblBaseAmt:
description: Total amount of money on which the tax is based.
allOf:
- $ref: '#/definitions/ActiveOrHistoricCurrencyAndAmount'
TaxParty1:
type: object
description: Party on the credit side of the transaction to which the tax applies.
properties:
RegnId:
description: >-
Unique identification, as assigned by an organisation, to
unambiguously identify a party.
allOf:
- $ref: '#/definitions/Max35Text'
TaxId:
description: Tax identification number of the creditor.
allOf:
- $ref: '#/definitions/Max35Text'
TaxTp:
description: Type of tax payer.
allOf:
- $ref: '#/definitions/Max35Text'
TaxParty2:
type: object
description: >-
Set of elements used to identify the party on the debit side of the
transaction to which the tax applies.
properties:
Authstn:
$ref: '#/definitions/TaxAuthorisation1'
RegnId:
description: >-
Unique identification, as assigned by an organisation, to
unambiguously identify a party.
allOf:
- $ref: '#/definitions/Max35Text'
TaxId:
description: Tax identification number of the debtor.
allOf:
- $ref: '#/definitions/Max35Text'
TaxTp:
description: Type of tax payer.
allOf:
- $ref: '#/definitions/Max35Text'
TaxPeriod1:
type: object
description: >-
Set of elements used to provide details on the period of time related to
the tax payment.
properties:
FrToDt:
description: >-
Range of time between a start date and an end date for which the tax
report is provided.
allOf:
- $ref: '#/definitions/DatePeriodDetails'
Tp:
$ref: '#/definitions/TaxRecordPeriod1Code'
Yr:
description: Year related to the tax payment.
allOf:
- $ref: '#/definitions/ISODate'
TaxRecord1:
type: object
properties:
AddtlInf:
description: Further details of the tax record.
allOf:
- $ref: '#/definitions/Max140Text'
Ctgy:
description: Specifies the tax code as published by the tax authority.
allOf:
- $ref: '#/definitions/Max35Text'
CtgyDtls:
description: Provides further details of the category tax code.
allOf:
- $ref: '#/definitions/Max35Text'
CertId:
description: >-
Identification number of the tax report as assigned by the taxing
authority.
allOf:
- $ref: '#/definitions/Max35Text'
DbtrSts:
description: >-
Code provided by local authority to identify the status of the party
that has drawn up the settlement document.
allOf:
- $ref: '#/definitions/Max35Text'
FrmsCd:
description: >-
Identifies, in a coded form, on which template the tax report is to be
provided.
allOf:
- $ref: '#/definitions/Max35Text'
Prd:
$ref: '#/definitions/TaxPeriod1'
TaxAmt:
$ref: '#/definitions/TaxAmount1'
Tp:
description: High level code to identify the type of tax details.
allOf:
- $ref: '#/definitions/Max35Text'
TaxRecordDetails1:
type: object
properties:
Amt:
description: Underlying tax amount related to the specified period.
allOf:
- $ref: '#/definitions/ActiveOrHistoricCurrencyAndAmount'
Prd:
$ref: '#/definitions/TaxPeriod1'
required:
- Amt
TaxRecordPeriod1Code:
description: >-
Identification of the period related to the tax payment.
MM01 : Tax is related to the first month of the period.
MM02 : Tax is related to the second month of the
period.
MM03 : Tax is related to the third month of the
period.
MM04 : Tax is related to the fourth month of the
period.
MM05 : Tax is related to the fifth month of the
period.
MM06 : Tax is related to the sixth month of the
period.
MM07 : Tax is related to the seventh month of the
period.
MM08 : Tax is related to the eighth month of the
period.
MM09 : Tax is related to the ninth month of the
period.
MM10 : Tax is related to the tenth month of the
period.
MM11 : Tax is related to the eleventh month of the
period.
MM12 : Tax is related to the twelfth month of the
period.
QTR1 : Tax is related to the first quarter of the
period.
QTR2 : Tax is related to the second quarter of the
period.
QTR3 : Tax is related to the third quarter of the
period.
QTR4 : Tax is related to the fourth quarter of the
period.
HLF1 : Tax is related to the first half of the
period.
HLF2 : Tax is related to the second half of the
period.
enum:
- MM01
- MM02
- MM03
- MM04
- MM05
- MM06
- MM07
- MM08
- MM09
- MM10
- MM11
- MM12
- QTR1
- QTR2
- QTR3
- QTR4
- HLF1
- HLF2
type: string
securityDefinitions:
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
tokenUrl: >-
https://tts.sandbox.apib2b.citi.com/citiconnect/sb/authenticationservices/v1/oauth/token
flow: application
scopes: null