openapi: 3.0.2 info: description: Moov WIRE implements an HTTP API for creating, parsing and validating WIRE files. version: v1 title: WIRE API contact: url: https://github.com/moov-io/wire license: name: Apache 2.0 url: http://www.apache.org/licenses/LICENSE-2.0.html servers: - url: http://localhost:8087 description: Local development tags: - name: 'Wire Files' description: | File contains FEDWireMessages of a WIRE File. paths: /ping: get: tags: ['Wire Files'] summary: Ping Wire description: Check the Wire service is running operationId: ping responses: '200': description: Service is running properly /files: get: tags: ['Wire Files'] summary: Get files description: List all Wire files created with the Wire service. These files are not persisted through multiple runs of the service. operationId: getWireFiles security: - bearerAuth: [] - cookieAuth: [] parameters: - name: X-Request-ID in: header description: Optional Request ID allows application developer to trace requests through the systems logs example: rs4f9915 schema: type: string responses: '200': description: A list of File objects headers: X-Total-Count: description: The total number of WIRE files schema: type: integer content: application/json: schema: $ref: '#/components/schemas/WireFiles' /files/create: post: tags: ['Wire Files'] summary: Create File description: Create a new File object from either the plaintext or JSON representation. operationId: createWireFile security: - bearerAuth: [] - cookieAuth: [] parameters: - name: X-Request-ID in: header description: Optional Request ID allows application developer to trace requests through the systems logs example: rs4f9915 schema: type: string - name: X-Idempotency-Key in: header description: Idempotent key in the header which expires after 24 hours. These strings should contain enough entropy for to not collide with each other in your requests. example: a4f88150 required: false schema: type: string requestBody: description: Content of the WIRE file (in json or raw text) required: true content: application/json: schema: $ref: '#/components/schemas/CreateWireFile' text/plain: schema: description: A plaintext FED WIRE file type: string example: responses: '201': description: A JSON object containing a new File headers: Location: description: The location of the new resource schema: type: string format: uri content: application/json: schema: $ref: '#/components/schemas/WireFile' '400': description: "Invalid File Header Object" content: application/json: schema: $ref: 'https://raw.githubusercontent.com/moov-io/api/master/openapi-common.yaml#/components/schemas/Error' /files/{fileID}: get: tags: ['Wire Files'] summary: Retrieve a file description: Get the details of an existing File using the unique File identifier that was returned upon creation. operationId: getWireFileByID security: - bearerAuth: [] - cookieAuth: [] parameters: - name: X-Request-ID in: header description: Optional Request ID allows application developer to trace requests through the systems logs example: rs4f9915 schema: type: string - name: fileID in: path description: File ID required: true schema: type: string example: 3f2d23ee214 responses: '200': description: A File object for the supplied ID content: application/json: schema: $ref: '#/components/schemas/WireFile' '404': description: A resource with the specified ID was not found # post: # tags: ['Wire Files'] # summary: Updates the specified FEDWire Message by setting the values of the parameters passed. Any parameters not provided will be left unchanged. # operationId: updateWireFileByID # security: # - bearerAuth: [] # - cookieAuth: [] # parameters: # - name: X-Request-ID # in: header # description: Optional Request ID allows application developer to trace requests through the systems logs # example: rs4f9915 # schema: # type: string # - name: X-Idempotency-Key # in: header # description: Idempotent key in the header which expires after 24 hours. These strings should contain enough entropy for to not collide with each other in your requests. # example: a4f88150 # required: false # schema: # type: string # - name: fileID # in: path # description: File ID # required: true # schema: # type: string # example: 3f2d23ee214 # requestBody: # required: true # content: # application/json: # schema: # $ref: '#/components/schemas/CreateWireFile' # responses: # '201': # description: A JSON object containing a new File # headers: # Location: # description: The location of the new resource # schema: # type: string # format: uri # content: # application/json: # schema: # $ref: '#/components/schemas/WireFile' # '400': # description: "Invalid File Header Object" # content: # application/json: # schema: # $ref: 'https://raw.githubusercontent.com/moov-io/api/master/openapi-common.yaml#/components/schemas/Error' delete: tags: ['Wire Files'] summary: Delete file description: Permanently deletes a File and associated Batches. It cannot be undone. operationId: deleteWireFileByID security: - bearerAuth: [] - cookieAuth: [] parameters: - name: fileID in: path description: File ID required: true schema: type: string example: 3f2d23ee214 - name: X-Request-ID in: header description: Optional Request ID allows application developer to trace requests through the systems logs example: rs4f9915 schema: type: string responses: '200': description: Permanently deleted File. '404': description: A File with the specified ID was not found. /files/{fileID}/contents: get: tags: ['Wire Files'] summary: Get file contents description: | Assembles the existing file, computes sequence numbers and totals. Returns plaintext file. operationId: getWireFileContents security: - bearerAuth: [] - cookieAuth: [] parameters: - name: X-Request-ID in: header description: Optional Request ID allows application developer to trace requests through the systems logs example: rs4f9915 schema: type: string - name: fileID in: path description: File ID required: true schema: type: string example: 3f2d23ee214 responses: '200': description: File built successfully without errors. content: text/plain: schema: $ref: '#/components/schemas/RawWireFile' /files/{fileID}/validate: get: tags: ['Wire Files'] summary: Validate file description: Validates the existing file. You need only supply the unique File identifier that was returned upon creation. operationId: validateWireFile security: - bearerAuth: [] - cookieAuth: [] parameters: - name: X-Request-ID in: header description: Optional Request ID allows application developer to trace requests through the systems logs example: rs4f9915 schema: type: string - name: fileID in: path description: File ID required: true schema: type: string example: 3f2d23ee214 responses: '200': description: File validated successfully without errors. content: application/json: schema: $ref: '#/components/schemas/WireFile' '400': description: Validation failed. Check response for errors /files/{fileID}/FEDWireMessage: post: tags: ['Wire Files'] summary: Add FEDWireMessage to File description: Add a FEDWireMessage to the specified file operationId: addFEDWireMessageToFile security: - bearerAuth: [] - cookieAuth: [] parameters: - name: X-Request-ID in: header description: Optional Request ID allows application developer to trace requests through the systems logs example: rs4f9915 schema: type: string - name: X-Idempotency-Key in: header description: Idempotent key in the header which expires after 24 hours. These strings should contain enough entropy for to not collide with each other in your requests. example: a4f88150 required: false schema: type: string - name: fileID in: path description: File ID required: true schema: type: string example: 3f2d23ee214 requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/FEDWireMessage' responses: '200': description: FEDWireMessage added to File components: schemas: CreateWireFile: properties: ID: type: string description: File ID example: 3f2d23ee214 fedWireMessage: $ref: '#/components/schemas/FEDWireMessage' required: - fedWireMessage WireFile: properties: ID: type: string description: File ID example: 3f2d23ee214 fedWireMessage: $ref: '#/components/schemas/FEDWireMessage' required: - fedWireMessage WireFiles: type: array items: $ref: '#/components/schemas/WireFile' RawWireFile: type: string description: Plaintext FedWire file example: "{3100}121042882Wells Fargo NA" FEDWireMessage: properties: ID: type: string description: FEDWireMessage ID example: 3f2d23ee214 # messageDisposition, receiptTimeStamp, outputMessageAccountabilityData, errorWire is information Appended by the FEDWire Funds Service messageDisposition: $ref: '#/components/schemas/MessageDisposition' receiptTimeStamp: $ref: '#/components/schemas/ReceiptTimeStamp' outputMessageAccountabilityData: $ref: '#/components/schemas/OutputMessageAccountabilityData' errorWire: $ref: '#/components/schemas/ErrorWire' senderSupplied: $ref: '#/components/schemas/SenderSupplied' typeSubType: $ref: '#/components/schemas/TypeSubType' inputMessageAccountabilityData: $ref: '#/components/schemas/InputMessageAccountabilityData' amount: $ref: '#/components/schemas/WireAmount' senderDepositoryInstitution: $ref: '#/components/schemas/SenderDepositoryInstitution' receiverDepositoryInstitution: $ref: '#/components/schemas/ReceiverDepositoryInstitution' businessFunctionCode: $ref: '#/components/schemas/BusinessFunctionCode' senderReference: $ref: '#/components/schemas/SenderReference' previousMessageIdentifier: $ref: '#/components/schemas/PreviousMessageIdentifier' localInstrument: $ref: '#/components/schemas/LocalInstrument' paymentNotification: $ref: '#/components/schemas/PaymentNotification' charges: $ref: '#/components/schemas/Charges' instructedAmount: $ref: '#/components/schemas/InstructedAmount' exchangeRate: $ref: '#/components/schemas/ExchangeRate' beneficiaryIntermediaryFI: $ref: '#/components/schemas/FinancialInstitution' beneficiaryFI: $ref: '#/components/schemas/FinancialInstitution' beneficiary: $ref: '#/components/schemas/Personal' beneficiaryReference: $ref: '#/components/schemas/BeneficiaryReference' accountDebitedDrawdown: $ref: '#/components/schemas/AccountDebitedDrawdown' originator: $ref: '#/components/schemas/Personal' originatorOptionF: $ref: '#/components/schemas/OriginatorOptionF' originatorFI: $ref: '#/components/schemas/FinancialInstitution' instructingFI: $ref: '#/components/schemas/FinancialInstitution' accountCreditedDrawdown: $ref: '#/components/schemas/AccountCreditedDrawdown' originatorToBeneficiary: $ref: '#/components/schemas/OriginatorToBeneficiary' fiReceiverFI: $ref: '#/components/schemas/FIToFI' fiDrawdownDebitAccountAdvice: $ref: '#/components/schemas/Advice' fiIntermediaryFI: $ref: '#/components/schemas/FIToFI' fiIntermediaryFIAdvice: $ref: '#/components/schemas/Advice' fiBeneficiaryFI: $ref: '#/components/schemas/FIToFI' fiBeneficiaryFIAdvice: $ref: '#/components/schemas/Advice' fiBeneficiary: $ref: '#/components/schemas/FIToFI' fiBeneficiaryAdvice: $ref: '#/components/schemas/Advice' fiPaymentMethodToBeneficiary: $ref: '#/components/schemas/FIPaymentMethodToBeneficiary' fiAdditionalFIToFI: $ref: '#/components/schemas/AdditionalFIToFI' currencyInstructedAmount: $ref: '#/components/schemas/CurrencyInstructedAmount' orderingCustomer: $ref: '#/components/schemas/CoverPayment' orderingInstitution: $ref: '#/components/schemas/CoverPayment' intermediaryInstitution: $ref: '#/components/schemas/CoverPayment' institutionAccount: $ref: '#/components/schemas/CoverPayment' beneficiaryCustomer: $ref: '#/components/schemas/CoverPayment' remittance: $ref: '#/components/schemas/CoverPayment' senderToReceiver: $ref: '#/components/schemas/CoverPayment' unstructuredAddenda: $ref: '#/components/schemas/UnstructuredAddenda' relatedRemittance: $ref: '#/components/schemas/RelatedRemittance' remittanceOriginator: $ref: '#/components/schemas/RemittanceOriginator' remittanceBeneficiary: $ref: '#/components/schemas/RemittanceBeneficiary' primaryRemittanceDocument: $ref: '#/components/schemas/PrimaryRemittanceDocument' actualAmountPaid: $ref: '#/components/schemas/RemittanceAmount' grossAmountRemittanceDocument: $ref: '#/components/schemas/RemittanceAmount' amountNegotiatedDiscount: $ref: '#/components/schemas/RemittanceAmount' adjustment: $ref: '#/components/schemas/Adjustment' dateRemittanceDocument: $ref: '#/components/schemas/DateRemittanceDocument' secondaryRemittanceDocument: $ref: '#/components/schemas/SecondaryRemittanceDocument' remittanceFreeText: $ref: '#/components/schemas/RemittanceFreeText' serviceMessage: $ref: '#/components/schemas/ServiceMessage' required: - senderSupplied - typeSubType - inputMessageAccountabilityData - amount - senderDepositoryInstitution - receiverDepositoryInstitution - businessFunctionCode MessageDisposition: properties: formatVersion: type: string minLength: 2 maxLength: 2 description: | formatVersion identifies the format version 30 example: '30' testProductionCode: type: string maxLength: 1 description: | testProductionCode identifies if test or production. * `T` - Test * `P` - Production enum: - " " - T - P example: 'T' messageDuplicationCode: type: string maxLength: 1 description: | MessageDuplicationCode * ` ` - Original Message * `R` - Retrieval of an original message * `P` - Resend enum: - R - P example: '' messageStatusIndicator: type: string maxLength: 1 description: | MessageStatusIndicator Outgoing Messages * `0` - In process or Intercepted * `2` - Successful with Accounting (Value) * `3` - Rejected due to Error Condition * `7` - Successful without Accounting (Non-Value) Incoming Messages * `N` - Successful with Accounting (Value) * `S` - Successful without Accounting (Non-Value) enum: - 0 - 2 - 3 - 7 - N - S ReceiptTimeStamp: properties: receiptDate: type: string description: | ReceiptDate MMDD, based on the calendar date minLength: 4 maxLength: 4 example: '0401' receiptTime: type: string minLength: 4 maxLength: 4 description: | ReceiptTime HHMM, based on a 24-hour clock, Eastern Time example: '1305' receiptApplicationIdentification: type: string maxLength: 4 description: 'ApplicationIdentification' example: 'RB11' OutputMessageAccountabilityData: properties: outputCycleDate: type: string minLength: 8 maxLength: 8 description: OutputCycleDate (CCYYMMDD) example: '20190401' outputDestinationID: type: string maxLength: 8 description: OutputDestinationID example: '12345678' outputSequenceNumber: type: string maxLength: 6 description: OutputSequenceNumber example: '000001' outputDate: type: string description: | Output Date MMDD, based on the calendar date minLength: 4 maxLength: 4 example: '0401' outputTime: type: string minLength: 4 maxLength: 4 description: | Output Time HHMM, based on a 24-hour clock, Eastern Time example: '1305' outputFRBApplicationIdentification: type: string maxLength: 4 description: 'OutputFRBApplicationIdentification' example: 'OB11' ErrorWire: description: ErrorWire properties: errorCategory: type: string maxLength: 1 description: | ErrorCategory * `E` - Data Error * `F` - Insufficient Balance * `H` - Accountability Error * `I` - In Process or Intercepted * `W` - Cutoff Hour Error * `X` - Duplicate IMAD enum: - E - F - H - I - W - X example: 'E' errorCode: type: string maxLength: 3 description: ErrorCode example: 'E99' errorDescription: type: string maxLength: 35 description: ErrorDescription example: 'Data Error' SenderSupplied: description: SenderSupplied properties: formatVersion: type: string maxLength: 2 description: | FormatVersion 30 example: '30' userRequestCorrelation: type: string maxLength: 8 description: UserRequestCorrelation example: 'TESTDATA' testProductionCode: type: string maxLength: 1 description: | Identifies if test or production. * `T` - Test * `P` - Production enum: - T - P example: 'T' messageDuplicationCode: type: string maxLength: 1 description: | MessageDuplicationCode * ` ` - Original Message * `R` - Retrieval of an original message * `P` - Resend enum: - " " - R - P example: " " required: - formatVersion - userRequestCorrelation - testProductionCode - messageDuplicationCode TypeSubType: description: TypeSubtype is the type and sub type codes properties: typeCode: type: string maxLength: 2 description: | TypeCode: * `10` - Funds Transfer - A funds transfer in which the sender and/or receiver may be a bank or a third party (i.e., customer of a bank). * `15` - Foreign Transfer - A funds transfer to or from a foreign central bank or government or international organization with an account at the Federal Reserve Bank of New York. * `16` - Settlement Transfer - A funds transfer between Fedwire Funds Service participants. enum: - 10 - 15 - 16 example: '10' subTypeCode: type: string maxLength: 2 description: | SubTypeCode: * `00` - Basic Funds Transfer - A basic value funds transfer. * `01` - Request for Reversal - A non-value request for reversal of a funds transfer originated on the current business day. * `02` - Reversal of Transfer - A value reversal of a funds transfer received on the current business day. May be used in response to a subtype code ‘01’ Request for Reversal. * `07` - Request for Reversal of a Prior Day Transfer - A non-value request for a reversal of a funds transfer originated on a prior business day. * `08` - Reversal of a Prior Day Transfer - A value reversal of a funds transfer received on a prior business day. May be used in response to a subtype code ‘07’ Request for Reversal of a Prior Day Transfer. * `31` - Request for Credit (Drawdown) - A non-value request for the receiver to send a funds transfer to a designated party. * `32` - Funds Transfer Honoring a Request for Credit (Drawdown) - A value funds transfer honoring a subtype 31 request for credit. * `33` -Refusal to Honor a Request for Credit (Drawdown) - A non-value message indicating refusal to honor a subtype 31 request for credit. * `90` - Service Message - A non-value message used to communicate questions and information that is not covered by a specific subtype. enum: - 00 - 01 - 02 - 07 - 08 - 31 - 32 - 33 - 90 example: '00' required: - typeCode - subTypeCode InputMessageAccountabilityData: description: InputMessageAccountabilityData (IMAD) properties: inputCycleDate: type: string minLength: 8 maxLength: 8 description: | InputCycleDate CCYYMMDD example: 20191201 inputSource: type: string minLength: 8 maxLength: 8 description: InputSource example: 'XYZ ABC ' inputSequenceNumber: type: string minLength: 6 maxLength: 6 description: InputSequenceNumber example: '000001' required: - inputCycleDate - inputSource - inputSequenceNumber WireAmount: description: Amount is an amount up to a penny less than $10 billion properties: amount: type: string minLength: 12 maxLength: 12 description: | Amount 12 numeric, right-justified with leading zeros, an implied decimal point and no commas; e.g., $12,345.67 becomes 000001234567 Can be all zeros for subtype 90 example: '000000100000' required: - amount SenderDepositoryInstitution: description: SenderDepositoryInstitution is the receiver depository institution properties: senderABANumber: type: string minLength: 9 maxLength: 9 description: SenderABANumber example: '091905114' senderShortName: type: string maxLength: 18 description: SenderShortName example: 'MIDWESTONE B&T' required: - senderABANumber - senderShortName ReceiverDepositoryInstitution: description: ReceiverDepositoryInstitution is the receiver depository institution properties: receiverABANumber: type: string minLength: 9 maxLength: 9 description: ReceiverABANumber example: '091905664' receiverShortName: type: string maxLength: 18 description: ReceiverShortName example: 'PREMIER BANK' required: - receiverABANumber - receiverShortName BusinessFunctionCode: description: BusinessFunctionCode is the business function code properties: businessFunctionCode: type: string maxLength: 3 description: | BusinessFunctionCode * `BTR` - Bank Transfer (Beneficiary is a bank) * `DRC` - Customer or Corporate Drawdown Request * `CKS` - Check Same Day Settlement * `DRW` - Drawdown Payment * `CTP` - Customer Transfer Plus * `FFR` - Fed Funds Returned * `CTR` - Customer Transfer (Beneficiary is a not a bank) * `FFS` - Fed Funds Sold * `DEP` - Deposit to Sender’s Account * `SVC` - Service Message * `DRB` - Bank-to-Bank Drawdown Request enum: - BTR - DRC - CKS - DRW - CTP - FFR - CTR - FFS - DEP - SVC - DRB example: 'BTR' transactionTypeCode: type: string minLength: 3 maxLength: 3 description: |- TransactionTypeCode If {3600} is CTR, an optional Transaction Type Code element is permitted; however, the Transaction Type Code 'COV' is not permitted. example: ' ' required: - businessFunctionCode LocalInstrument: description: LocalInstrument is the local instrument properties: localInstrumentCode: type: string maxLength: 4 description: | LocalInstrument * `ANSI` - ANSI X12 format * `COVS` - Sequence B Cover Payment Structured * `GXML` - General XML format * `IXML` - ISO 20022 XML formaT * `NARR` - Narrative Text * `PROP` - Proprietary Local Instrument Code * `RMTS` - Remittance Information Structured * `RRMT` - Related Remittance Information * `S820` - STP 820 format * `SWIF` - SWIFT field 70 (Remittance Information) * `UEDI` - UN/EDIFACT format enum: - ANSI - COVS - GXML - IXML - NARR - PROP - RMTS - RRMT - S820 - SWIF - UEDI example: 'ANSI' proprietaryCode: type: string maxLength: 35 description: ProprietaryCode example: 'WJD786363' PaymentNotification: description: PaymentNotification is the payment notification properties: paymentNotificationIndicator: type: string maxLength: 1 description: | Payment Notification Indicator * `0 - 6` - Reserved for market practice conventions. * `7 - 9` - Reserved for bilateral agreements between Fedwire senders and receivers. enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 example: '1' contactNotificationElectronicAddress: type: string maxLength: 2048 description: ContactNotificationElectronicAddress example: 'https://moov.io/' contactName: type: string maxLength: 140 description: ContactName example: 'Wade Arnold' contactPhoneNumber: type: string maxLength: 35 description: ContactPhoneNumber example: '555-555-5555' contactMobileNumber: type: string maxLength: 35 description: ContactMobileNumber example: '555.555.555' faxNumber: type: string maxLength: 35 description: FaxNumber example: '555.555.5555' endToEndIdentification: type: string maxLength: 35 description: EndToEndIdentification example: 'WireTransfer 10001' InstructedAmount: description: InstructedAmount is the instructed amount properties: currencyCode: type: string maxLength: 3 description: CurrencyCode example: 'USD' amount: type: string maxLength: 15 description: | Amount Must begin with at least one numeric character (0-9) and contain only one decimal comma marker (e.g., $1,234.56 should be entered as 1234,56 and $0.99 should be entered as ExchangeRate: description: ExchangeRate is the exchange rate properties: exchangeRate: type: string maxLength: 12 description: | ExchangeRate is the exchange rate Must contain at least one numeric character and only one decimal comma marker (e.g., an exchange rate of 1.2345 should be entered as 1,2345). example: '1.2345' FinancialInstitution: description: FinancialInstitution is financial institution demographic information properties: identificationCode: type: string description: | Identification Code: * `B` - SWIFT Bank Identifier Code (BIC) * `C` - CHIPS Participant * `D` - Demand Deposit Account (DDA) Number * `F` - Fed Routing Number * `T` - SWIFT BIC or Bank Entity Identifier (BEI) and Account Number * `U` - CHIPS Identifier enum: - B - C - D - F - T - U maxLength: 1 example: 'B' identifier: type: string maxLength: 34 description: Identifier name: type: string maxLength: 35 description: Name address : $ref: '#/components/schemas/WireAddress' required: - identificationCode - identifier - name - address Personal: description: Personal is personal demographic information properties: identificationCode: type: string description: | Identification Code: * `B` - SWIFT Bank Identifier Code (BIC) * `C` - CHIPS Participant * `D` - Demand Deposit Account (DDA) Number * `F` - Fed Routing Number * `T` - SWIFT BIC or Bank Entity Identifier (BEI) and Account Number * `U` - CHIPS Identifier * `1` - Passport Number * `2` - Tax Identification Number * `3` - Driver’s License Number * `4` - Alien Registration Number * `5` - Corporate Identification * `9` - Other Identification enum: - B - C - D - F - T - U - 1 - 2 - 3 - 4 - 5 - 9 maxLength: 1 example: 'B' identifier: type: string maxLength: 34 description: Identifier name: type: string maxLength: 35 description: Name address : $ref: '#/components/schemas/WireAddress' required: - identificationCode - identifier - name - address BeneficiaryReference: properties: beneficiaryReference: type: string maxLength: 16 example: 'Test Data' description: BeneficiaryReference AccountDebitedDrawdown: description: AccountDebitedDrawdown is the account which is debited in a drawdown properties: identificationCode: type: string maxLength: 1 description: | Identification Code * `D` - Debit enum: - D example: 'D' identifier: type: string maxLength: 34 description: Identifier name: type: string maxLength: 35 description: Name addressLineOne: type: string maxLength: 35 description: AddressLineOne addressLineTwo: type: string maxLength: 35 description: AddressLineTwo addressLineThree: type: string maxLength: 35 description: AddressLineThree required: - identificationCode - identifier - name OriginatorOptionF: description: OptionF is originator option F properties: partyIdentifier: type: string maxLength: 35 description: | PartyIdentifier Must be one of the following two formats: 1. /Account Number (slash followed by at least one valid non-space character: e.g., /123456) 2. Unique Identifier/ (4 character code followed by a slash and at least one valid non-space character: e.g., SOSE/123-456-789) ARNU: Alien Registration Number CCPT: Passport Number CUST: Customer Identification Number DRLC/ Driver’s License Number EMPL/ Employer Number NIDN: National Identify Number SOSE/ Social Security Number TXID: Tax Identification Number example: '/123456' name: type: string maxLength: 35 description: | Name Format: Must begin with Line Code 1 followed by a slash and at least one valid non-space character: e.g., 1/SMITH JOHN. example: '1/SMITH JOHN' lineOne: type: string maxLength: 35 description: | LineOne Format: Must begin with one of the following Line Codes followed by a slash and at least one valid non-space character. 1 Name 2 Address 3 Country and Town 4 Date of Birth 5 Place of Birth 6 Customer Identification Number 7 National Identity Number 8 Additional Information For example: 2/123 MAIN STREET 3/US/NEW YORK, NY 10000 7/111-22-3456 example: '2/123 MAIN STREET' lineTwo: type: string maxLength: 35 description: | LineTwo Format: Must begin with one of the following Line Codes followed by a slash and at least one valid non-space character. 1 Name 2 Address 3 Country and Town 4 Date of Birth 5 Place of Birth 6 Customer Identification Number 7 National Identity Number 8 Additional Information For example: 2/123 MAIN STREET 3/US/NEW YORK, NY 10000 7/111-22-3456 example: '3/US/NEW YORK, NY 10000' lineThree: type: string maxLength: 35 description: | LineThree Format: Must begin with one of the following Line Codes followed by a slash and at least one valid non-space character. 1 Name 2 Address 3 Country and Town 4 Date of Birth 5 Place of Birth 6 Customer Identification Number 7 National Identity Number 8 Additional Information For example: 2/123 MAIN STREET 3/US/NEW YORK, NY 10000 7/111-22-3456 example: '7/111-22-3456' AccountCreditedDrawdown: description: AccountCreditedDrawdown is the account which is credited in a drawdown properties: drawdownCreditAccountNumber: type: string maxLength: 9 description: | DrawdownCreditAccountNumber 9 character ABA example: '121042882' OriginatorToBeneficiary: description: OriginatorToBeneficiary properties: lineOne: type: string maxLength: 35 description: LineOne example: 'Line One' lineTwo: type: string maxLength: 35 description: LineTwo example: 'Line Two' lineThree: type: string maxLength: 35 description: LineThree example: 'Line Three' lineFour: type: string maxLength: 35 description: LineFour example: 'Line Four' FIToFI: description: FIToFI properties: lineOne: type: string maxLength: 30 description: LineOne example: 'Line One' lineTwo: type: string maxLength: 33 description: LineTwo example: 'Line Two' lineThree: type: string maxLength: 33 description: LineThree example: 'Line Three' lineFour: type: string maxLength: 33 description: LineFour example: 'Line Four' lineFive: type: string maxLength: 33 description: LineFive example: 'Line Five' lineSix: type: string maxLength: 33 description: LineSix example: 'Line Six' Advice: description: Advice properties: adviceCode: type: string description: | Advice Code * `HLD - Hold * `LTR` - Letter * `PHN` - Phone * `TLX` - Telex * `WRE` - Wire enum: - HLD - LTR - PHN - TLX - WRE example: 'HLD' lineOne: type: string maxLength: 26 description: LineOne example: 'Line One' lineTwo: type: string maxLength: 33 description: LineTwo example: 'Line Two' lineThree: type: string maxLength: 33 description: LineThree example: 'Line Three' lineFour: type: string maxLength: 33 description: LineFour example: 'Line Four' lineFive: type: string maxLength: 33 description: LineFive example: 'Line Five' lineSix: type: string maxLength: 33 description: LineSix example: 'Line Six' FIPaymentMethodToBeneficiary: properties: paymentMethod: type: string description: PaymentMethod enum: - CHECK example: 'CHECK' AdditionalInformation: type: string maxLength: 30 example: "For goods and services" AdditionalFIToFI: properties: lineOne: type: string maxLength: 35 description: LineOne example: 'Line One' lineTwo: type: string maxLength: 35 description: LineTwo example: 'Line Two' lineThree: type: string maxLength: 35 description: LineThree example: 'Line Three' lineFour: type: string maxLength: 35 description: LineFour example: 'Line Four' lineFive: type: string maxLength: 35 description: LineFive example: 'Line Five' lineSix: type: string maxLength: 35 description: LineSix example: 'Line Six' CurrencyInstructedAmount: description: CurrencyInstructedAmount properties: swiftFieldTag: type: string maxLength: 5 description: SwiftFieldTag example: 'SWIFT' amount: type: string maxLength: 18 description: Amount example: 1234,56 CoverPayment: description: CoverPayment properties: swiftFieldTag: type: string maxLength: 5 description: SwiftFieldTag example: 'SWIFT' swiftLineOne: type: string maxLength: 35 description: SwiftLineOne example: 'Swift Line One' swiftLineTwo: type: string maxLength: 35 description: SwiftLineTwo example: 'Swift Line Two' swiftLineThree: type: string maxLength: 35 description: SwiftLineThree example: 'Swift Line Three' swiftLineFour: type: string maxLength: 35 description: SwiftLineFour example: 'Swift Line Four' swiftLineFive: type: string maxLength: 35 description: SwiftLineFive example: 'Swift Line Five' swiftLineSix: type: string maxLength: 35 description: SwiftLineSix example: 'Swift Line Six' UnstructuredAddenda: properties: addendaLength: type: string maxLength: 4 description: | AddendaLength Addenda Length must be numeric, padded with leading zeros if less than four characters and must equal length of content in Addenda Information (e.g., if content of Addenda Information is 987 characters, Addenda Length must be 0987). example: '0987' addenda: type: string maxLength: 8994 description: Addenda example: 'Payment for goods' SenderReference: description: SenderReference is sender reference properties: senderReference: type: string maxLength: 16 description: SenderReference example: 'Reference' PreviousMessageIdentifier: description: The identifier for a previous message properties: previousMessageIdentifier: type: string maxLength: 22 description: PreviousMessageIdentifier example: '' Charges: properties: chargeDetails: type: string maxLength: 1 description: | Charge Details * `B` - Beneficiary * `S` - Shared enum: - B - S example: 'B' sendersChargesOne: type: string maxLength: 15 description: | SendersChargesOne The first three characters must contain an alpha currency code (e.g., USD). The remaining characters for the amount must begin with at least one numeric character (0-9) and only one decimal comma marker. $1,234.56 should be entered as USD1234,56 and $0.99 should be entered as USD0,99. example: 'USD1234,56' sendersChargesTwo: type: string maxLength: 15 description: | SendersChargesTwo The first three characters must contain an alpha currency code (e.g., USD). The remaining characters for the amount must begin with at least one numeric character (0-9) and only one decimal comma marker. $1,234.56 should be entered as USD1234,56 and $0.99 should be entered as USD0,99. example: 'USD1234,56' sendersChargesThree: type: string maxLength: 15 description: | SendersChargesThree The first three characters must contain an alpha currency code (e.g., USD). The remaining characters for the amount must begin with at least one numeric character (0-9) and only one decimal comma marker. $1,234.56 should be entered as USD1234,56 and $0.99 should be entered as USD0,99. example: 'USD1234,56' sendersChargesFour: type: string maxLength: 15 description: | SendersChargesFour The first three characters must contain an alpha currency code (e.g., USD). The remaining characters for the amount must begin with at least one numeric character (0-9) and only one decimal comma marker. $1,234.56 should be entered as USD1234,56 and $0.99 should be entered as USD0,99. example: 'USD1234,56' RelatedRemittance: description: RelatedRemittance properties: remittanceIdentification: type: string maxLength: 35 description: RemittanceIdentification example: 'Remittance Identification' remittanceLocationMethod: type: string maxLength: 4 description: | RemittanceLocationMethod * `EDIC` - Electronic Data Interchange * `EMAL` - Email * `FAXI` - Fax * `POST` - Postal services * `SMS` - Short Message Service (text) * `URI` - Uniform Resource Identifier enum: - EDIC - EMAL - FAXI - POST - SMS - URI example: 'EDIC' remittanceLocationElectronicAddress: type: string maxLength: 2048 description: RemittanceLocationElectronicAddress (E-mail or URL address) example: 'https://moov.io' remittanceData: $ref: '#/components/schemas/RemittanceData' RemittanceOriginator: description: RemittanceOriginator properties: identificationType: type: string maxLength: 2 description: | Identification Type * `OI` - Organization ID * `PI` - Private ID enum: - OI - PI example: 'OI' identificationCode: type: string maxLength: 4 description: | IdentificationCode Organization Identification Codes * `BANK` - Bank Party Identification * `CUST` - Customer Number * `DUNS` - Data Universal Number System (Dun & Bradstreet) * `EMPL` - Employer Identification Number * `GS1G` - Global Location Number * `PROP` - Proprietary Identification Number * `SWBB` - SWIFT BIC or BEI * `TXID` - Tax Identification Number Private Identification Codes * `ARNU` - Alien Registration Number * `CCPT` - Passport Number * `CUST` - Customer Number * `DPOB` - Date & Place of Birth * `DRLC` - Driver’s License Number * `EMPL` - Employee Identification Number * `NIDN` - National Identity Number * `PROP` - Proprietary Identification Number * `SOSE` - Social Security Number * `TXID` - Tax Identification Number example: 'BANK' identificationNumber: type: string maxLength: 35 description: IdentificationNumber example: '192827828' identificationNumberIssuer: type: string maxLength: 35 description: IdentificationNumberIssuer example: 'Identification Number Issuer' dateBirthPlace: type: string maxLength: 82 description: DateBirthPlace example: '03062013 Chester' remittanceData: $ref: '#/components/schemas/RemittanceData' countryOfResidence: type: string maxLength: 2 description: CountryOfResidence example: 'US' contactName: type: string maxLength: 140 description: ContactName example: 'Wade Arnold' contactPhoneNumber: type: string maxLength: 35 description: ContactPhoneNumber example: '555.555.5555' contactMobileNumber: type: string maxLength: 35 description: ContactMobileNumber example: '555.555.5555' contactFaxNumber: type: string maxLength: 35 description: ContactFaxNumber example: '555.555.5555' contactElectronicAddress: type: string maxLength: 2048 description: ContactElectronicAddress ( i.e., E-mail or URL address) example: 'https://moov.io' contactOther: type: string maxLength: 35 description: ContactOther example: 'Contact Other' RemittanceBeneficiary: properties: identificationType: type: string maxLength: 2 description: | IdentificationType * `OI` - Organization ID * `PI` - Private ID enum: - OI - PI example: 'OI' identificationCode: type: string maxLength: 4 description: | IdentificationCode Organization Identification Codes * `BANK` - Bank Party Identification * `CUST` - Customer Number * `DUNS` - Data Universal Number System (Dun & Bradstreet) * `EMPL` - Employer Identification Number * `GS1G` - Global Location Number * `PROP` - Proprietary Identification Number * `SWBB` - SWIFT BIC or BEI * `TXID` - Tax Identification Number Private Identification Codes * `ARNU` - Alien Registration Number * `CCPT` - Passport Number * `CUST` - Customer Number * `DPOB` - Date & Place of Birth * `DRLC` - Driver’s License Number * `EMPL` - Employee Identification Number * `NIDN` - National Identity Number * `PROP` - Proprietary Identification Number * `SOSE` - Social Security Number * `TXID` - Tax Identification Number example: 'BANK' identificationNumber: type: string maxLength: 35 description: IdentificationNumber example: '192827828' identificationNumberIssuer: type: string maxLength: 35 description: IdentificationNumberIssuer example: 'Identification Number Issuer' dateBirthPlace: type: string maxLength: 82 description: DateBirthPlace example: '03062013 Chester' remittanceData: $ref: '#/components/schemas/RemittanceData' RemittanceData: properties: name: type: string maxLength: 140 description: Name example: 'Wade Arnold' addressType: type: string maxLength: 4 description: | AddressType * `ADDR` - Complete Postal Address * `BIZZ` - Business Address * `DLVY` - Delivery Address * `HOME` - Home Address * `MLTO` - Mail Address * `PBOX` - Post Office Box enum: - ADDR - BIZZ - DLVY - HOME - MLTO - PBOX example: 'ADDR' department: type: string maxLength: 70 description: Department example: 'Buildings' subDepartment: type: string maxLength: 70 description: SubDepartment example: 'Service' streetName: type: string maxLength: 70 description: StreetName example: 'Street Way Boulevard' buildingNumber: type: string maxLength: 16 description: BuildingNumber example: '1A' postCode: type: string maxLength: 16 description: PostCode example: '19465' townName: type: string maxLength: 35 description: TownName example: 'Any Town' countrySubDivisionState: type: string maxLength: 35 description: CountrySubDivisionState example: 'PA' country: type: string maxLength: 2 description: Country example: 'US' addressLineOne: type: string maxLength: 70 description: AddressLineOne example: 'AddressLineOne' addressLineTwo: type: string maxLength: 70 description: AddressLineTwo example: 'AddressLineTwo' addressLineThree: type: string maxLength: 70 description: AddressLineThree example: 'AddressLineThree' addressLineFour: type: string maxLength: 70 description: AddressLineFour example: 'AddressLineFour' addressLineFive: type: string maxLength: 70 description: AddressLineFive example: 'AddressLineFive' addressLineSix: type: string maxLength: 70 description: AddressLineSix example: 'AddressLineSix' addressLineSeven: type: string maxLength: 70 description: AddressLineSeven example: 'AddressLineSeven' countryOfResidence: type: string maxLength: 2 description: CountryOfResidence example: 'US' WireAddress: description: Identifies Address properties: addressLineOne: type: string maxLength: 35 description: AddressLineOne addressLineTwo: type: string maxLength: 35 description: AddressLineTwo addressLineThree: type: string maxLength: 35 description: AddressLineThree PrimaryRemittanceDocument: properties: documentTypeCode: type: string maxLength: 4 description: | Document Type Code * `AROI` - Accounts Receivable Open Item * `BOLD` - Bill of Lading Shipping Notice * `CINV` - Commercial Invoice * `CMCN` - Commercial Contract * `CNFA` - Credit Note Related to Financial Adjustment * `CREN` - Credit Note * `DEBN` - Debit Note * `DISP` - Dispatch Advice * `DNFA` - Debit Note Related to Financial Adjustment HIRI Hire Invoice * `MSIN` - Metered Service Invoice * `PROP` - Proprietary Document Type * `PUOR` - Purchase Order * `SBIN` - Self Billed Invoice * `SOAC` - Statement of Account * `TSUT` - Trade Services Utility Transaction VCHR Voucher enum: - AROI - BOLD - CINV - CMCN - CNFA - CREN - DEBN - DISP - DNFA - MSIN - PROP - PUOR - SBIN - SOAC - TSUT example: 'AROI' proprietaryDocumentTypeCode: type: string maxLength: 35 description: ProprietaryDocumentTypeCode example: 'Proprietary Code' documentIdentificationNumber: type: string maxLength: 35 description: DocumentIdentificationNumber example: 'DOCUMENT 292828' issuer: type: string maxLength: 35 description: Issuer example: 'Remittance Issuer' RemittanceAmount: description: RemittanceAmount properties: currencyCode: type: string maxLength: 3 description: CurrencyCode example: 'USD' amount: type: string minLength: 19 maxLength: 19 description: | Amount Must contain at least one numeric character and only one decimal period marker (e.g., $1,234.56 should be entered as 1234.56). Can have up to 5 numeric characters following the decimal period marker (e.g., 1234.56789). Amount must be greater than zero (i.e., at least .01). example: '1234.56789' DateRemittanceDocument: properties: dateRemittanceDocument: type: string maxLength: 8 description: DateRemittanceDocument CCYYMMDD example: '20190401' RemittanceFreeText: properties: lineOne: type: string maxLength: 140 description: LineOne example: 'Line One Text' lineTwo: type: string maxLength: 140 description: LineTwo example: 'Line Two Text' lineThree: type: string maxLength: 140 description: LineThree example: 'Line Three Text' Adjustment: description: Adjustment properties: adjustmentReasonCode: type: string maxLength: 4 description: | Adjustment Reason Code * `01` - Pricing Error * `03` - Extension Error * `04` - Item Not Accepted (Damaged) * `05` - Item Not Accepted (Quality) * `06` - Quantity Contested 07 Incorrect Product * `11` - Returns (Damaged) * `12` - Returns (Quality) * `59` - Item Not Received * `75` - Total Order Not Received * `81` - Credit as Agreed * `CM` - Covered by Credit Memo enum: - 01 - 03 - 04 - 05 - 06 - 11 - 12 - 59 - 75 - 81 - CM example: 'CM' creditDebitIndicator: type: string maxLength: 4 description: | CreditDebitIndicator * `CRDT` - Credit * `DBIT` - Debit enum: - CRDT - DBIT example: 'DBIT' currencyCode: type: string maxLength: 3 description: CurrencyCode example: 'USD' amount: type: string minLength: 19 maxLength: 19 description: | Amount Must contain at least one numeric character and only one decimal period marker (e.g., $1,234.56 should be entered as 1234.56). Can have up to 5 numeric characters following the decimal period marker (e.g., 1234.56789). Amount must be greater than zero (i.e., at least .01). example: '1234.56789' additionalInfo: type: string maxLength: 140 description: AdditionalInfo example: 'Additional Info' SecondaryRemittanceDocument: description: SecondaryRemittanceDocument properties: documentTypeCode: type: string maxLength: 4 description: | Document Type Code * `AROI` - Accounts Receivable Open Item * `DISP` - Dispatch Advice * `FXDR` - Foreign Exchange Deal Reference * `PROP` - Proprietary Document Type PUOR Purchase Order * `RADM` - Remittance Advice Message * `RPIN` - Related Payment Instruction * `SCOR1` - Structured Communication Reference VCHR Voucher enum: - AROI - DISP - FXDR - PROP - RADM - RPIN - SCOR1 example: 'AROI' proprietaryDocumentTypeCode: type: string maxLength: 35 description: proprietaryDocumentTypeCode example: 'Proprietary' documentIdentificationNumber: type: string maxLength: 35 description: documentIdentificationNumber example: 'Document2' issuer: type: string maxLength: 35 description: Issuer example: 'Issuer' ServiceMessage: properties: lineOne: type: string maxLength: 35 description: LineOne example: 'Line One Text' lineTwo: type: string maxLength: 35 description: LineTwo example: 'Line Two Text' lineThree: type: string maxLength: 35 description: LineThree example: 'Line Three Text' lineFour: type: string maxLength: 35 description: LineFour example: 'Line Four Text' lineFive: type: string maxLength: 35 description: LineFive example: 'Line Five Text' lineSix: type: string maxLength: 35 description: LineSix example: 'Line Six Text' lineSeven: type: string maxLength: 35 description: LineSeven example: 'Line Seven Text' lineEight: type: string maxLength: 35 description: LineEight example: 'Line Eight Text' lineNine: type: string maxLength: 35 description: LineNine example: 'Line Nine Text' lineTen: type: string maxLength: 35 description: LineTen example: 'Line Ten Text' lineEleven: type: string maxLength: 35 description: LineEleven example: 'Line Eleven Text' lineTwelve: type: string maxLength: 35 description: LineTwelve example: 'Line Twelve Text'