UNPKG

@mojaloop/ml-schema-transformer-lib

Version:
1 lines 14 kB
{"version":3,"sources":["../../../src/mappings/fspiopiso20022/quotes.ts"],"sourcesContent":["/*****\n License\n --------------\n Copyright © 2020-2025 Mojaloop Foundation\n The Mojaloop files are made available by the Mojaloop Foundation under the Apache License, Version 2.0 (the \"License\") and you may not use these files except in compliance with the License. You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, the Mojaloop files are distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.\n\n Contributors\n --------------\n This is the official list of the Mojaloop project contributors for this file.\n Names of the original copyright holders (individuals or organizations)\n should be listed with a '*' in the first column. People who have\n contributed from an organization can be listed under the organization\n that actually holds the copyright for their contributions (see the\n Mojaloop Foundation for an example). Those individuals should have\n their names indented and be marked with a '-'. Email address can be added\n optionally within square brackets <email>.\n\n * Mojaloop Foundation\n - Name Surname <name.surname@mojaloop.io>\n\n * Steven Oderayi <steven.oderayi@infitx.com>\n --------------\n ******/\n\n// FSPIOP ISO 20022 to FSPIOP mappings\n\nexport const quotes = {\n post: `{\n \"$noDefaults\": \"true\",\n \"body.quoteId\": \"body.CdtTrfTxInf.PmtId.TxId\",\n \"body.expiration\": \"body.GrpHdr.PmtInstrXpryDtTm\",\n \"body.transactionId\": \"body.CdtTrfTxInf.PmtId.EndToEndId\",\n \"body.transactionRequestId\": \"body.CdtTrfTxInf.PmtId.InstrId\",\n \"body.payee.partyIdInfo.partyIdType\": { \"$alt\": [ \"body.CdtTrfTxInf.Cdtr.Id.OrgId.Othr.SchmeNm.Prtry\", \"body.CdtTrfTxInf.Cdtr.Id.PrvtId.Othr.SchmeNm.Prtry\" ] },\n \"body.payee.partyIdInfo.partyIdentifier\": { \"$alt\": [ \"body.CdtTrfTxInf.Cdtr.Id.OrgId.Othr.Id\", \"body.CdtTrfTxInf.Cdtr.Id.PrvtId.Othr.Id\" ] },\n \"body.payee.partyIdInfo.partySubIdOrType\": \"body.CdtTrfTxInf.CdtrAgt.FinInstnId.ClrSysMmbId.MmbId\",\n \"body.payee.partyIdInfo.fspId\": \"body.CdtTrfTxInf.CdtrAgt.FinInstnId.Othr.Id\",\n \"body.payee.name\": [\"body.CdtTrfTxInf.Cdtr.Nm\", { \"$transform\": \"getDisplayNameFromDelimitedName\" }],\n \"body.payee.personalInfo.complexName.firstName\": [\"body.CdtTrfTxInf.Cdtr.Nm\", { \"$transform\": \"getFirstFromDelimitedName\" }],\n \"body.payee.personalInfo.complexName.middleName\": [\"body.CdtTrfTxInf.Cdtr.Nm\", { \"$transform\": \"getMiddleFromDelimitedName\" }],\n \"body.payee.personalInfo.complexName.lastName\": [\"body.CdtTrfTxInf.Cdtr.Nm\", { \"$transform\": \"getLastFromDelimitedName\" }],\n \"body.payee.supportedCurrencies\": [\"body.CdtTrfTxInf.CdtrAcct.Ccy\", { \"$transform\": \"toArray\" }],\n \"body.payer.partyIdInfo.partyIdType\": { \"$alt\": [ \"body.CdtTrfTxInf.Dbtr.Id.OrgId.Othr.SchmeNm.Prtry\", \"body.CdtTrfTxInf.Dbtr.Id.PrvtId.Othr.SchmeNm.Prtry\" ] },\n \"body.payer.partyIdInfo.partyIdentifier\": { \"$alt\": [ \"body.CdtTrfTxInf.Dbtr.Id.OrgId.Othr.Id\", \"body.CdtTrfTxInf.Dbtr.Id.PrvtId.Othr.Id\" ] },\n \"body.payer.partyIdInfo.partySubIdOrType\": \"body.CdtTrfTxInf.DbtrAgt.FinInstnId.ClrSysMmbId.MmbId\",\n \"body.payer.partyIdInfo.fspId\": \"body.CdtTrfTxInf.DbtrAgt.FinInstnId.Othr.Id\",\n \"body.payer.name\": [\"body.CdtTrfTxInf.Dbtr.Nm\", { \"$transform\": \"getDisplayNameFromDelimitedName\" }],\n \"body.payer.personalInfo.complexName.firstName\": [\"body.CdtTrfTxInf.Dbtr.Nm\", { \"$transform\": \"getFirstFromDelimitedName\" }],\n \"body.payer.personalInfo.complexName.middleName\": [\"body.CdtTrfTxInf.Dbtr.Nm\", { \"$transform\": \"getMiddleFromDelimitedName\" }],\n \"body.payer.personalInfo.complexName.lastName\": [\"body.CdtTrfTxInf.Dbtr.Nm\", { \"$transform\": \"getLastFromDelimitedName\" }],\n \"body.payer.supportedCurrencies\": [\"body.CdtTrfTxInf.DbtrAcct.Ccy\", { \"$transform\": \"toArray\" }],\n \"body.amount.currency\": \"body.CdtTrfTxInf.IntrBkSttlmAmt.Ccy\",\n \"body.amount.amount\": \"body.CdtTrfTxInf.IntrBkSttlmAmt.ActiveCurrencyAndAmount\",\n \"body.transactionType.scenario\": \"body.CdtTrfTxInf.Purp.Prtry\",\n \"body.transactionType.refundInfo.originalTransactionId\": \"body.CdtTrfTxInf.PmtId.InstrId\"\n }`,\n // TODO: Support payeeFspCommission.currency and payeeFspCommission.amount\n // when CdtTrfTxInf.IntrBkSttlmAmt.ChrgsInf.Tp.Cd is \"COMM\"\n put: `{\n \"$noDefaults\": \"true\",\n \"params.ID\": \"body.CdtTrfTxInf.PmtId.TxId\",\n \"headers.fspiop-destination\": \"body.CdtTrfTxInf.Dbtr.Id.OrgId.Othr.Id\",\n \"headers.fspiop-source\": \"body.CdtTrfTxInf.Cdtr.Id.OrgId.Othr.Id\",\n \"body.expiration\": \"body.GrpHdr.PmtInstrXpryDtTm\",\n \"body.transferAmount.currency\": \"body.CdtTrfTxInf.IntrBkSttlmAmt.Ccy\",\n \"body.transferAmount.amount\": \"body.CdtTrfTxInf.IntrBkSttlmAmt.ActiveCurrencyAndAmount\",\n \"body.payeeReceiveAmount.currency\": \"body.CdtTrfTxInf.InstdAmt.Ccy\",\n \"body.payeeReceiveAmount.amount\": \"body.CdtTrfTxInf.InstdAmt.ActiveOrHistoricCurrencyAndAmount\",\n \"body.payeeFspFee.currency\": \"body.CdtTrfTxInf.ChrgsInf.Amt.Ccy\",\n \"body.payeeFspFee.amount\": \"body.CdtTrfTxInf.ChrgsInf.Amt.ActiveOrHistoricCurrencyAndAmount\",\n \"body.ilpPacket\": \"body.CdtTrfTxInf.VrfctnOfTerms.IlpV4PrepPacket\",\n \"body.condition\": [ \"body.CdtTrfTxInf.VrfctnOfTerms.IlpV4PrepPacket\", { \"$transform\": \"ilpPacketToCondition\" }]\n }`,\n putError: `{\n \"$noDefaults\": \"true\",\n \"body.errorInformation.errorCode\": \"body.TxInfAndSts.StsRsnInf.Rsn.Prtry\",\n \"body.errorInformation.errorDescription\": \"body.TxInfAndSts.StsRsnInf.AddtlInf\"\n }`\n}\n\n// FSPIOP to FSPIOP ISO 20022 mappings\n\nexport const quotes_reverse = {\n post: `{\n \"$noDefaults\": \"true\",\n \"body.GrpHdr.MsgId\": { \"$transform\": \"generateID\" },\n \"body.GrpHdr.CreDtTm\": { \"$transform\": \"datetimeNow\" },\n \"body.GrpHdr.NbOfTxs\": { \"$transform\": \"fixed\", \"value\": \"1\" },\n \"body.GrpHdr.PmtInstrXpryDtTm\": \"body.expiration\",\n \"body.GrpHdr.SttlmInf.SttlmMtd\": { \"$transform\": \"fixed\", \"value\": \"CLRG\" },\n \"body.CdtTrfTxInf.PmtId.TxId\": \"body.quoteId\",\n \"body.CdtTrfTxInf.PmtId.EndToEndId\": \"body.transactionId\",\n \"body.CdtTrfTxInf.PmtId.InstrId\": \"body.transactionRequestId\",\n \"body.CdtTrfTxInf.Cdtr.Id.OrgId.Othr.SchmeNm.Prtry\": [\"body.payee.partyIdInfo.partyIdType\", { \"$filter\": \"isNotPersonParty\" }],\n \"body.CdtTrfTxInf.Cdtr.Id.PrvtId.Othr.SchmeNm.Prtry\": [\"body.payee.partyIdInfo.partyIdType\", { \"$filter\": \"isPersonParty\" }],\n \"body.CdtTrfTxInf.Cdtr.Id.OrgId.Othr.Id\": [\"body.payee.partyIdInfo.partyIdentifier\", { \"$filter\": \"isNotPersonParty\" }],\n \"body.CdtTrfTxInf.Cdtr.Id.PrvtId.Othr.Id\": [\"body.payee.partyIdInfo.partyIdentifier\", { \"$filter\": \"isPersonParty\" }],\n \"body.CdtTrfTxInf.CdtrAgt.FinInstnId.ClrSysMmbId.MmbId\": \"body.payee.partyIdInfo.partySubIdOrType\",\n \"body.CdtTrfTxInf.CdtrAgt.FinInstnId.Othr.Id\": \"body.payee.partyIdInfo.fspId\",\n \"body.CdtTrfTxInf.Cdtr.Nm\": [\"body.payee\", { \"$transform\": \"makeDelimitedName\" }],\n \"body.CdtTrfTxInf.CdtrAcct.Ccy\": [\"body.payee.supportedCurrencies\", { \"$transform\": \"supportedCurrenciesToString\" }],\n \"body.CdtTrfTxInf.Dbtr.Id.OrgId.Othr.SchmeNm.Prtry\": [\"body.payer.partyIdInfo.partyIdType\", { \"$filter\": \"isNotPersonParty\" }],\n \"body.CdtTrfTxInf.Dbtr.Id.PrvtId.Othr.SchmeNm.Prtry\": [\"body.payer.partyIdInfo.partyIdType\", { \"$filter\": \"isPersonParty\" }],\n \"body.CdtTrfTxInf.Dbtr.Id.OrgId.Othr.Id\": [\"body.payer.partyIdInfo.partyIdentifier\", { \"$filter\": \"isNotPersonParty\" }],\n \"body.CdtTrfTxInf.Dbtr.Id.PrvtId.Othr.Id\": [\"body.payer.partyIdInfo.partyIdentifier\", { \"$filter\": \"isPersonParty\" }],\n \"body.CdtTrfTxInf.DbtrAgt.FinInstnId.ClrSysMmbId.MmbId\": \"body.payer.partyIdInfo.partySubIdOrType\",\n \"body.CdtTrfTxInf.DbtrAgt.FinInstnId.Othr.Id\": \"body.payer.partyIdInfo.fspId\",\n \"body.CdtTrfTxInf.Dbtr.Nm\": [\"body.payer\", { \"$transform\": \"makeDelimitedName\" }],\n \"body.CdtTrfTxInf.DbtrAcct.Ccy\": [\"body.payer.supportedCurrencies\", { \"$transform\": \"supportedCurrenciesToString\" }],\n \"body.CdtTrfTxInf.IntrBkSttlmAmt.Ccy\": \"body.amount.currency\",\n \"body.CdtTrfTxInf.IntrBkSttlmAmt.ActiveCurrencyAndAmount\": \"body.amount.amount\",\n \"body.CdtTrfTxInf.Purp.Prtry\": \"body.transactionType.scenario\",\n \"body.CdtTrfTxInf.PmtId.InstrId\": \"body.transactionType.refundInfo.originalTransactionId\"\n }`,\n // TODO: Support payeeFspCommission.currency and payeeFspCommission.amount\n // when CdtTrfTxInf.IntrBkSttlmAmt.ChrgsInf.Tp.Cd is \"COMM\"\n putTesting: `{\n \"$noDefaults\": \"true\",\n \"body.GrpHdr.MsgId\": { \"$transform\": \"generateID\" },\n \"body.GrpHdr.CreDtTm\": { \"$transform\": \"datetimeNow\" },\n \"body.GrpHdr.NbOfTxs\": { \"$transform\": \"fixed\", \"value\": \"1\" },\n \"body.GrpHdr.SttlmInf.SttlmMtd\": { \"$transform\": \"fixed\", \"value\": \"CLRG\" },\n \"body.GrpHdr.PmtInstrXpryDtTm\": \"body.expiration\",\n \"body.CdtTrfTxInf.PmtId.TxId\": \"params.ID\",\n \"body.CdtTrfTxInf.Dbtr.Id.OrgId.Othr.Id\": { \"$alt\": [ \"$context.isoPostQuote.CdtTrfTxInf.Dbtr.Id.OrgId.Othr.Id\", \"headers.fspiop-destination\" ]},\n \"body.CdtTrfTxInf.DbtrAgt.FinInstnId.Othr.Id\": { \"$alt\": [ \"$context.isoPostQuote.CdtTrfTxInf.DbtrAgt.FinInstnId.Othr.Id\", \"headers.fspiop-destination\" ]},\n \"body.CdtTrfTxInf.Cdtr.Id.OrgId.Othr.Id\": { \"$alt\": [ \"$context.isoPostQuote.CdtTrfTxInf.Cdtr.Id.OrgId.Othr.Id\", \"headers.fspiop-source\" ] },\n \"body.CdtTrfTxInf.CdtrAgt.FinInstnId.Othr.Id\": { \"$alt\": [ \"$context.isoPostQuote.CdtTrfTxInf.CdtrAgt.FinInstnId.Othr.Id\", \"headers.fspiop-source\" ]},\n \"body.CdtTrfTxInf.ChrgBr\": { \"$alt\": [ \"$context.isoPostQuote.CdtTrfTxInf.ChrgBr\", { \"$transform\": \"fixed\", \"value\": \"SHAR\" } ] },\n \"body.CdtTrfTxInf.IntrBkSttlmAmt.Ccy\": \"body.transferAmount.currency\",\n \"body.CdtTrfTxInf.IntrBkSttlmAmt.ActiveCurrencyAndAmount\": \"body.transferAmount.amount\",\n \"body.CdtTrfTxInf.InstdAmt.Ccy\": \"body.payeeReceiveAmount.currency\",\n \"body.CdtTrfTxInf.InstdAmt.ActiveOrHistoricCurrencyAndAmount\": \"body.payeeReceiveAmount.amount\",\n \"body.CdtTrfTxInf.ChrgsInf.Amt.Ccy\": \"body.payeeFspFee.currency\",\n \"body.CdtTrfTxInf.ChrgsInf.Amt.ActiveOrHistoricCurrencyAndAmount\": \"body.payeeFspFee.amount\",\n \"body.CdtTrfTxInf.ChrgsInf.Agt.FinInstnId.Othr.Id\": { \"$alt\": [ \"$context.isoPostQuote.CdtTrfTxInf.CdtrAgt.FinInstnId.Othr.Id\", { \"$transform\": \"fixed\", \"value\": \"Testing\" } ] },\n \"body.CdtTrfTxInf.VrfctnOfTerms.IlpV4PrepPacket\": \"body.ilpPacket\"\n }`,\n put: `{\n \"$noDefaults\": \"true\",\n \"body.GrpHdr.MsgId\": { \"$transform\": \"generateID\" },\n \"body.GrpHdr.CreDtTm\": { \"$transform\": \"datetimeNow\" },\n \"body.GrpHdr.NbOfTxs\": { \"$transform\": \"fixed\", \"value\": \"1\" },\n \"body.GrpHdr.SttlmInf.SttlmMtd\": { \"$transform\": \"fixed\", \"value\": \"CLRG\" },\n \"body.GrpHdr.PmtInstrXpryDtTm\": \"body.expiration\",\n \"body.CdtTrfTxInf.PmtId.TxId\": \"params.ID\",\n \"body.CdtTrfTxInf.Dbtr\": \"$context.isoPostQuote.CdtTrfTxInf.Dbtr\",\n \"body.CdtTrfTxInf.DbtrAgt\": \"$context.isoPostQuote.CdtTrfTxInf.DbtrAgt\",\n \"body.CdtTrfTxInf.Cdtr\": \"$context.isoPostQuote.CdtTrfTxInf.Cdtr\",\n \"body.CdtTrfTxInf.CdtrAgt\": \"$context.isoPostQuote.CdtTrfTxInf.CdtrAgt\",\n \"body.CdtTrfTxInf.ChrgBr\": \"$context.isoPostQuote.CdtTrfTxInf.ChrgBr\",\n \"body.CdtTrfTxInf.IntrBkSttlmAmt.Ccy\": \"body.transferAmount.currency\",\n \"body.CdtTrfTxInf.IntrBkSttlmAmt.ActiveCurrencyAndAmount\": \"body.transferAmount.amount\",\n \"body.CdtTrfTxInf.InstdAmt.Ccy\": \"body.payeeReceiveAmount.currency\",\n \"body.CdtTrfTxInf.InstdAmt.ActiveOrHistoricCurrencyAndAmount\": \"body.payeeReceiveAmount.amount\",\n \"body.CdtTrfTxInf.ChrgsInf.Amt.Ccy\": \"body.payeeFspFee.currency\",\n \"body.CdtTrfTxInf.ChrgsInf.Amt.ActiveOrHistoricCurrencyAndAmount\": \"body.payeeFspFee.amount\",\n \"body.CdtTrfTxInf.ChrgsInf.Agt\": \"$context.isoPostQuote.CdtTrfTxInf.CdtrAgt\",\n \"body.CdtTrfTxInf.VrfctnOfTerms.IlpV4PrepPacket\": \"body.ilpPacket\"\n }`,\n putError: `{\n \"$noDefaults\": \"true\",\n \"body.GrpHdr.MsgId\": { \"$transform\": \"generateID\" },\n \"body.GrpHdr.CreDtTm\": { \"$transform\": \"datetimeNow\" },\n \"body.TxInfAndSts.StsRsnInf.Rsn.Prtry\": \"body.errorInformation.errorCode\",\n \"body.TxInfAndSts.StsRsnInf.AddtlInf\": [ \"body.errorInformation.errorDescription\", { \"$transform\": \"toIsoErrorDescription\" } ]\n }`\n}\n"],"mappings":";AA8BO,IAAM,SAAS;AAAA,EACpB,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EA+BN,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAeL,UAAU;AAAA;AAAA;AAAA;AAAA;AAKZ;AAIO,IAAM,iBAAiB;AAAA,EAC5B,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAiCN,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAsBZ,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAsBL,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOZ;","names":[]}