Merge lp:~akretion-team/banking-addons/trunk-banking-addons-sepa into lp:banking-addons/6.1
- trunk-banking-addons-sepa
- Merge into 6.1
Status: | Merged |
---|---|
Merged at revision: | 176 |
Proposed branch: | lp:~akretion-team/banking-addons/trunk-banking-addons-sepa |
Merge into: | lp:banking-addons/6.1 |
Diff against target: |
3937 lines (+3862/-0) 14 files modified
account_banking_sepa_credit_transfer/__init__.py (+25/-0) account_banking_sepa_credit_transfer/__openerp__.py (+50/-0) account_banking_sepa_credit_transfer/account_banking_sepa.py (+80/-0) account_banking_sepa_credit_transfer/account_banking_sepa_view.xml (+85/-0) account_banking_sepa_credit_transfer/data/pain.001.001.02.xsd (+784/-0) account_banking_sepa_credit_transfer/data/pain.001.001.03.xsd (+921/-0) account_banking_sepa_credit_transfer/data/pain.001.001.04.xsd (+968/-0) account_banking_sepa_credit_transfer/data/payment_type_sepa_sct.xml (+33/-0) account_banking_sepa_credit_transfer/i18n/account_banking_sepa_credit_transfer.pot (+251/-0) account_banking_sepa_credit_transfer/i18n/fr.po (+251/-0) account_banking_sepa_credit_transfer/security/ir.model.access.csv (+2/-0) account_banking_sepa_credit_transfer/wizard/__init__.py (+23/-0) account_banking_sepa_credit_transfer/wizard/export_sepa.py (+341/-0) account_banking_sepa_credit_transfer/wizard/export_sepa_view.xml (+48/-0) |
To merge this branch: | bzr merge lp:~akretion-team/banking-addons/trunk-banking-addons-sepa |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Stéphane Bidoul (Acsone) (community) | test | Approve | |
Stefan Rijnhart (Opener) | Approve | ||
Review via email: mp+167514@code.launchpad.net |
Commit message
Description of the change
Ready for merge !
Supports PAIN 001.001.02 + PAIN 001.001.03 + PAIN 001.001.04 ! Conforms to the implementation guidelines of the European Payments Council.
Tested with BNP-Paribas and Banque Populaire Atlantique in PAIN 001.001.02.
Tested with CIC in PAIN 001.001.03.
It seems that most banks don't support PAIN 001.001.04 yet.
Stefan Rijnhart (Opener) (stefan-opener) wrote : | # |
Stéphane Bidoul (Acsone) (sbi) wrote : | # |
Hello Alexis,
I just made a quick test on 6.1. Working nice and looking good; I'll test with the bank ASAP.
It conflicts on the 7.0 branch. Is it supposed to work on 7.0 too? Sorry if this is a dump question, I'm new to banking addons and don't know the state of affairs here.
-sbi
Stefan Rijnhart (Opener) (stefan-opener) wrote : | # |
Valid question, Stéphane!
the module can be easily merged with 7.0 too upon approval by means of cherrypicking. Banking addons 7.0 are ready and under review. If you want to try now, you could give this completely unstable and unsupported 'preview' branch a try: https:/
Simply copy over the module from a 6.1 branch and change its dependency in __openerp__.py from 'account_banking' to 'account_
Alexis de Lattre (alexis-via) wrote : | # |
Dear Stéfan,
> but you may be aware that the specs leave room enough for their own dialect of the standard
In fact, from my experience, if all banks respect the guidelines of the European Payments Council (http://
I'll try to find some time in the coming days to clean-up the function _validate_iban which should avoid the big block of code in the POT file. By the way, do you think that it's necessary the validate the IBAN in the generation of the XML file ? The IBAN is already validated when we enter it in OpenERP, so it may not be necessary to validate a second time ? Or should be consider it better to validate it a second time ? If don't remember what y commented out this code. I must say that I spend most of my time reading specs, checking the XML and doing tests with the bank... and probably not enough time on the code itself.
- 152. By Alexis de Lattre
-
Activate validation of IBAN numbers (it's a double-validation, because the IBAN is already validated when it is written in OpenERP).
Remove code in i18n files.
Stefan Rijnhart (Opener) (stefan-opener) wrote : | # |
Hi Alexis,
> In fact, from my experience, if all banks respect the guidelines of the European Payments Council (http://
Well, all Dutch banks have published addendums with requirements that
say 'Leave this element out' or 'Always fill this element with
NOTIMPLEMENTED'... But I have not yet gotten the feedback from the
bank's validation service so I will keep you updated on this.
>
> I'll try to find some time in the coming days to clean-up the function _validate_iban which should avoid the big block of code in the POT file. By the way, do you think that it's necessary the validate the IBAN in the generation of the XML file ? The IBAN is already validated when we enter it in OpenERP, so it may not be necessary to validate a second time ?
I think you are correct. In fact, what is missing is a generic function
in the payment order to check whether there is a bank account of the
allowed type for every payment order line. I will add one soon. So you
could perhaps remove the validation method entirely.
Stefan Rijnhart (Opener) (stefan-opener) wrote : | # |
Output has been validated by Dutch bank ABN-AMRO, in spite of its additional dialectal guidelines!
Alexis de Lattre (alexis-via) wrote : | # |
@Stefan
Great news ! Which version of PAIN did you use for the validation with ABN-AMRO ? 001.001.03 ?
Stefan Rijnhart (Opener) (stefan-opener) wrote : | # |
Yes, Dutch banks support 001.001.03 only for now.
Stéphane Bidoul (Acsone) (sbi) wrote : | # |
Hi,
I just validated PAIN.001.001.03 with ING's validation service.
I've noticed a couple of minor usability issues:
- the role of the Validate button in the last step of the "Make payment" wizard is unclear (it closes the window before you have a chance to save the xml file)
- if by mistake you select payments without a bank account (stupid, but allowed by the payment order wizard), you get a stack trace
- I quickly adapted the code to avoid the stack trace when the bank account is missing, which oviously lead to a non compliant xml file, but the XSD validation step did not raise the error; I've not had time to dig deeper yet.
Great job, Alexis!
-sbi
Stéphane Bidoul (Acsone) (sbi) wrote : | # |
> Valid question, Stéphane!
>
> the module can be easily merged with 7.0 too upon approval by means of
> cherrypicking. Banking addons 7.0 are ready and under review. If you want to
> try now, you could give this completely unstable and unsupported 'preview'
> branch a try: https:/
> addons/
>
> Simply copy over the module from a 6.1 branch and change its dependency in
> __openerp__.py from 'account_banking' to 'account_
Hello Stefan,
I just made a quick test with your branch ba7.0-future, and it works indeed.
What are the main differences between your ba7.0-future branch and the banking-addons-7.0 series?
-sbi
Stefan Rijnhart (Opener) (stefan-opener) wrote : | # |
> What are the main differences between your ba7.0-future branch and the banking-addons-7.0 series?
The future branch is our working branch that includes pending merge
requests on the banking-addons-7.0 series. It will soon be deprecated
when we finish the last reviews of the 7.0 code sprint.
Stefan Rijnhart (Opener) (stefan-opener) wrote : | # |
Sorry for noticing your latest changes only now. Approved and thanks again!
Holger Brunn (Therp) (hbrunn) wrote : | # |
I see only one formal approval but a lot of approving comments. Is this ready to merge?
Stefan Rijnhart (Opener) (stefan-opener) wrote : | # |
Stéphane, can you approve this MP? As I have indicated, the lack of a valid bank account should be solved on a higher level so that only leaves the usability issue of the validation button that closes the screen. The idea should indeed be that the user downloads the file, keeps the wizard screen open while uploading the file to the online banking environment and clicks 'Validate' in the wizard screen when the bank accepts the file. This pushes on the payment order workflow.
We have the same usability issue with the legacy Dutch payment export module. As long as the banking addons do not provide a boiler plate export wizard this does need to be solved in each export module. So maybe Alexis could provide a label text that explains this procedure. I would not personally consider it blocking but again Stéphane let us hear your view.
Stéphane Bidoul (Acsone) (sbi) wrote : | # |
Nothing blocking on my side, so I approve.
I understand the philosophy behind the validate button. A help text would clarify for new users.
Regarding the lack of a bank account, it's not blocking either, but I had the impression it revealed an issue with the XSD validation, since I could generate an XML without the bank account which is invalid according to the schema. Let me know if that rings a bell, otherwise I'll dig deeper.
Preview Diff
1 | === added directory 'account_banking_sepa_credit_transfer' |
2 | === added file 'account_banking_sepa_credit_transfer/__init__.py' |
3 | --- account_banking_sepa_credit_transfer/__init__.py 1970-01-01 00:00:00 +0000 |
4 | +++ account_banking_sepa_credit_transfer/__init__.py 2013-06-06 08:07:29 +0000 |
5 | @@ -0,0 +1,25 @@ |
6 | +# -*- encoding: utf-8 -*- |
7 | +############################################################################## |
8 | +# |
9 | +# SEPA Credit Transfer module for OpenERP |
10 | +# Copyright (C) 2010-2013 Akretion (http://www.akretion.com) |
11 | +# @author: Alexis de Lattre <alexis.delattre@akretion.com> |
12 | +# |
13 | +# This program is free software: you can redistribute it and/or modify |
14 | +# it under the terms of the GNU Affero General Public License as |
15 | +# published by the Free Software Foundation, either version 3 of the |
16 | +# License, or (at your option) any later version. |
17 | +# |
18 | +# This program is distributed in the hope that it will be useful, |
19 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of |
20 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
21 | +# GNU Affero General Public License for more details. |
22 | +# |
23 | +# You should have received a copy of the GNU Affero General Public License |
24 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. |
25 | +# |
26 | +############################################################################## |
27 | + |
28 | +import wizard |
29 | +import account_banking_sepa |
30 | + |
31 | |
32 | === added file 'account_banking_sepa_credit_transfer/__openerp__.py' |
33 | --- account_banking_sepa_credit_transfer/__openerp__.py 1970-01-01 00:00:00 +0000 |
34 | +++ account_banking_sepa_credit_transfer/__openerp__.py 2013-06-06 08:07:29 +0000 |
35 | @@ -0,0 +1,50 @@ |
36 | +############################################################################## |
37 | +# |
38 | +# SEPA Credit Transfer module for OpenERP |
39 | +# Copyright (C) 2010-2013 Akretion (http://www.akretion.com) |
40 | +# @author: Alexis de Lattre <alexis.delattre@akretion.com> |
41 | +# |
42 | +# This program is free software: you can redistribute it and/or modify |
43 | +# it under the terms of the GNU Affero General Public License as |
44 | +# published by the Free Software Foundation, either version 3 of the |
45 | +# License, or (at your option) any later version. |
46 | +# |
47 | +# This program is distributed in the hope that it will be useful, |
48 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of |
49 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
50 | +# GNU Affero General Public License for more details. |
51 | +# |
52 | +# You should have received a copy of the GNU Affero General Public License |
53 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. |
54 | +# |
55 | +############################################################################## |
56 | +{ |
57 | + 'name': 'Account Banking SEPA Credit Transfer', |
58 | + 'version': '0.1', |
59 | + 'license': 'AGPL-3', |
60 | + 'author': 'Akretion', |
61 | + 'website': 'http://www.akretion.com', |
62 | + 'category': 'Banking addons', |
63 | + 'depends': ['account_banking'], |
64 | + 'init_xml': [], |
65 | + 'update_xml': [ |
66 | + 'account_banking_sepa_view.xml', |
67 | + 'wizard/export_sepa_view.xml', |
68 | + 'data/payment_type_sepa_sct.xml', |
69 | + 'security/ir.model.access.csv', |
70 | + ], |
71 | + 'demo_xml': [], |
72 | + 'description': ''' |
73 | +Module to export payment orders in SEPA XML file format. |
74 | + |
75 | +SEPA PAIN (PAyment INitiation) is the new european standard for Customer-to-Bank payment instructions. This module implements SEPA Credit Transfer (SCT), more specifically PAIN versions 001.001.02, 001.001.03 and 001.001.04. It is part of the ISO 20022 standard, available on http://www.iso20022.org. |
76 | + |
77 | +The Implementation Guidelines for SEPA Credit Transfer published by the European Payments Council (http://http://www.europeanpaymentscouncil.eu) use PAIN version 001.001.03, so it's probably the version of PAIN that you should try first. |
78 | + |
79 | +This module uses the framework provided by the banking addons, cf https://launchpad.net/banking-addons |
80 | + |
81 | +Please contact Alexis de Lattre from Akretion <alexis.delattre@akretion.com> for any help or question about this module. |
82 | + ''', |
83 | + 'active': False, |
84 | + 'installable': True, |
85 | +} |
86 | |
87 | === added file 'account_banking_sepa_credit_transfer/account_banking_sepa.py' |
88 | --- account_banking_sepa_credit_transfer/account_banking_sepa.py 1970-01-01 00:00:00 +0000 |
89 | +++ account_banking_sepa_credit_transfer/account_banking_sepa.py 2013-06-06 08:07:29 +0000 |
90 | @@ -0,0 +1,80 @@ |
91 | +############################################################################## |
92 | +# |
93 | +# SEPA Credit Transfer module for OpenERP |
94 | +# Copyright (C) 2010-2013 Akretion (http://www.akretion.com) |
95 | +# @author: Alexis de Lattre <alexis.delattre@akretion.com> |
96 | +# |
97 | +# This program is free software: you can redistribute it and/or modify |
98 | +# it under the terms of the GNU Affero General Public License as |
99 | +# published by the Free Software Foundation, either version 3 of the |
100 | +# License, or (at your option) any later version. |
101 | +# |
102 | +# This program is distributed in the hope that it will be useful, |
103 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of |
104 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
105 | +# GNU Affero General Public License for more details. |
106 | +# |
107 | +# You should have received a copy of the GNU Affero General Public License |
108 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. |
109 | +# |
110 | +############################################################################## |
111 | + |
112 | +from osv import osv, fields |
113 | +import time |
114 | +from tools.translate import _ |
115 | +import decimal_precision as dp |
116 | + |
117 | + |
118 | +class banking_export_sepa(osv.osv): |
119 | + '''SEPA export''' |
120 | + _name = 'banking.export.sepa' |
121 | + _description = __doc__ |
122 | + _rec_name = 'msg_identification' |
123 | + |
124 | + def _generate_filename(self, cr, uid, ids, name, arg, context=None): |
125 | + res = {} |
126 | + for sepa_file in self.browse(cr, uid, ids, context=context): |
127 | + res[sepa_file.id] = 'sepa_' + (sepa_file.msg_identification or '') + '.xml' |
128 | + return res |
129 | + |
130 | + _columns = { |
131 | + 'payment_order_ids': fields.many2many( |
132 | + 'payment.order', |
133 | + 'account_payment_order_sepa_rel', |
134 | + 'banking_export_sepa_id', 'account_order_id', |
135 | + 'Payment orders', |
136 | + readonly=True), |
137 | + 'prefered_exec_date': fields.date('Prefered execution date', readonly=True), |
138 | + 'nb_transactions': fields.integer('Number of transactions', readonly=True), |
139 | + 'total_amount': fields.float('Total amount', |
140 | + digits_compute=dp.get_precision('Account'), readonly=True), |
141 | + 'msg_identification': fields.char('Message identification', size=35, |
142 | + readonly=True), |
143 | + 'batch_booking': fields.boolean('Batch booking', readonly=True, |
144 | + help="If true, the bank statement will display only one debit line for all the wire transfers of the SEPA XML file ; if false, the bank statement will display one debit line per wire transfer of the SEPA XML file."), |
145 | + 'charge_bearer': fields.selection([ |
146 | + ('SHAR', 'Shared'), |
147 | + ('CRED', 'Borne by creditor'), |
148 | + ('DEBT', 'Borne by debtor'), |
149 | + ('SLEV', 'Following service level'), |
150 | + ], 'Charge bearer', readonly=True, |
151 | + help='Shared : 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 (most transfers use this). Borne by creditor : all transaction charges are to be borne by the creditor. Borne by debtor : all transaction charges are to be borne by the debtor. Following service level : transaction charges are to be applied following the rules agreed in the service level and/or scheme.'), |
152 | + 'generation_date': fields.datetime('Generation date', |
153 | + readonly=True), |
154 | + 'file': fields.binary('SEPA XML file', readonly=True), |
155 | + 'filename': fields.function(_generate_filename, type='char', size=256, |
156 | + method=True, string='Filename', readonly=True), |
157 | + 'state': fields.selection([ |
158 | + ('draft', 'Draft'), |
159 | + ('sent', 'Sent'), |
160 | + ('done', 'Reconciled'), |
161 | + ], 'State', readonly=True), |
162 | + } |
163 | + |
164 | + _defaults = { |
165 | + 'generation_date': lambda *a: time.strftime('%Y-%m-%d %H:%M:%S'), |
166 | + 'state': 'draft', |
167 | + } |
168 | + |
169 | +banking_export_sepa() |
170 | + |
171 | |
172 | === added file 'account_banking_sepa_credit_transfer/account_banking_sepa_view.xml' |
173 | --- account_banking_sepa_credit_transfer/account_banking_sepa_view.xml 1970-01-01 00:00:00 +0000 |
174 | +++ account_banking_sepa_credit_transfer/account_banking_sepa_view.xml 2013-06-06 08:07:29 +0000 |
175 | @@ -0,0 +1,85 @@ |
176 | +<?xml version="1.0" encoding="utf-8"?> |
177 | +<!-- |
178 | + Copyright (C) 2010-2013 Akretion (http://www.akretion.com) |
179 | + @author: Alexis de Lattre <alexis.delattre@akretion.com> |
180 | + The licence is in the file __openerp__.py |
181 | +--> |
182 | +<openerp> |
183 | +<data> |
184 | + |
185 | +<record id="view_banking_export_sepa_form" model="ir.ui.view"> |
186 | + <field name="name">account.banking.export.sepa.form</field> |
187 | + <field name="model">banking.export.sepa</field> |
188 | + <field name="type">form</field> |
189 | + <field name="arch" type="xml"> |
190 | + <form string="SEPA Credit Transfer"> |
191 | + <notebook> |
192 | + <page string="General information"> |
193 | + <field name="msg_identification" select="1" /> |
194 | + <field name="total_amount" /> |
195 | + <field name="nb_transactions" /> |
196 | + <field name="prefered_exec_date" /> |
197 | + <field name="batch_booking" /> |
198 | + <field name="charge_bearer"/> |
199 | + <field name="generation_date" /> |
200 | + <newline /> |
201 | + <field name="file" filename="filename"/> |
202 | + <field name="filename" invisible="True"/> |
203 | + </page> |
204 | + <page string="Payment orders"> |
205 | + <field name="payment_order_ids" colspan="4" nolabel="1"> |
206 | + <tree colors="blue:state in ('draft');gray:state in ('cancel','done');black:state in ('open')" string="Payment order"> |
207 | + <field name="reference"/> |
208 | + <field name="date_created"/> |
209 | + <field name="date_done"/> |
210 | + <field name="total"/> |
211 | + <field name="state"/> |
212 | + </tree> |
213 | + </field> |
214 | + </page> |
215 | + </notebook> |
216 | + </form> |
217 | + </field> |
218 | +</record> |
219 | + |
220 | + |
221 | +<record id="view_banking_export_sepa_tree" model="ir.ui.view"> |
222 | + <field name="name">account.banking.export.sepa.tree</field> |
223 | + <field name="model">banking.export.sepa</field> |
224 | + <field name="type">tree</field> |
225 | + <field name="arch" type="xml"> |
226 | + <tree string="SEPA Credit Transfer"> |
227 | + <field name="msg_identification"/> |
228 | + <field name="prefered_exec_date"/> |
229 | + <field name="generation_date"/> |
230 | + <field name="nb_transactions"/> |
231 | + </tree> |
232 | + </field> |
233 | +</record> |
234 | + |
235 | + |
236 | +<record id="action_account_banking_sepa" model="ir.actions.act_window"> |
237 | + <field name="name">Generated SEPA XML files</field> |
238 | + <field name="res_model">banking.export.sepa</field> |
239 | + <field name="view_type">form</field> |
240 | + <field name="view_mode">tree,form</field> |
241 | +</record> |
242 | + |
243 | + |
244 | +<menuitem id="menu_account_banking_sepa" |
245 | + parent="account_banking.menu_finance_banking_actions" |
246 | + action="action_account_banking_sepa" |
247 | + sequence="15" |
248 | + /> |
249 | + |
250 | +<act_window id="act_banking_export_sepa_payment_order" |
251 | + name="Generated SEPA files" |
252 | + domain="[('payment_order_ids', '=', active_id)]" |
253 | + res_model="banking.export.sepa" |
254 | + src_model="payment.order" |
255 | + view_type="form" |
256 | + view_mode="tree,form" |
257 | +/> |
258 | + |
259 | +</data> |
260 | +</openerp> |
261 | |
262 | === added directory 'account_banking_sepa_credit_transfer/data' |
263 | === added file 'account_banking_sepa_credit_transfer/data/pain.001.001.02.xsd' |
264 | --- account_banking_sepa_credit_transfer/data/pain.001.001.02.xsd 1970-01-01 00:00:00 +0000 |
265 | +++ account_banking_sepa_credit_transfer/data/pain.001.001.02.xsd 2013-06-06 08:07:29 +0000 |
266 | @@ -0,0 +1,784 @@ |
267 | +<?xml version="1.0" encoding="UTF-8"?> |
268 | +<!--Generated by SWIFTStandards Workstation (build:R5.1.0.4) on 2006 Sep 08 11:58:39--> |
269 | +<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="urn:iso:std:iso:20022:tech:xsd:pain.001.001.02" elementFormDefault="qualified" targetNamespace="urn:iso:std:iso:20022:tech:xsd:pain.001.001.02"> |
270 | +<xs:element name="Document" type="Document"/> |
271 | +<xs:complexType name="AccountIdentification3Choice"> |
272 | +<xs:sequence> |
273 | +<xs:choice> |
274 | +<xs:element name="IBAN" type="IBANIdentifier"/> |
275 | +<xs:element name="BBAN" type="BBANIdentifier"/> |
276 | +<xs:element name="UPIC" type="UPICIdentifier"/> |
277 | +<xs:element name="PrtryAcct" type="SimpleIdentificationInformation2"/> |
278 | +</xs:choice> |
279 | +</xs:sequence> |
280 | +</xs:complexType> |
281 | +<xs:simpleType name="AddressType2Code"> |
282 | +<xs:restriction base="xs:string"> |
283 | +<xs:enumeration value="ADDR"/> |
284 | +<xs:enumeration value="PBOX"/> |
285 | +<xs:enumeration value="HOME"/> |
286 | +<xs:enumeration value="BIZZ"/> |
287 | +<xs:enumeration value="MLTO"/> |
288 | +<xs:enumeration value="DLVY"/> |
289 | +</xs:restriction> |
290 | +</xs:simpleType> |
291 | +<xs:complexType name="AmountType2Choice"> |
292 | +<xs:sequence> |
293 | +<xs:choice> |
294 | +<xs:element name="InstdAmt" type="CurrencyAndAmount"/> |
295 | +<xs:element name="EqvtAmt" type="EquivalentAmount"/> |
296 | +</xs:choice> |
297 | +</xs:sequence> |
298 | +</xs:complexType> |
299 | +<xs:simpleType name="BBANIdentifier"> |
300 | +<xs:restriction base="xs:string"> |
301 | +<xs:pattern value="[a-zA-Z0-9]{1,30}"/> |
302 | +</xs:restriction> |
303 | +</xs:simpleType> |
304 | +<xs:simpleType name="BEIIdentifier"> |
305 | +<xs:restriction base="xs:string"> |
306 | +<xs:pattern value="[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}"/> |
307 | +</xs:restriction> |
308 | +</xs:simpleType> |
309 | +<xs:simpleType name="BICIdentifier"> |
310 | +<xs:restriction base="xs:string"> |
311 | +<xs:pattern value="[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}"/> |
312 | +</xs:restriction> |
313 | +</xs:simpleType> |
314 | +<xs:simpleType name="BaseOneRate"> |
315 | +<xs:restriction base="xs:decimal"> |
316 | +<xs:fractionDigits value="10"/> |
317 | +<xs:totalDigits value="11"/> |
318 | +</xs:restriction> |
319 | +</xs:simpleType> |
320 | +<xs:simpleType name="BatchBookingIndicator"> |
321 | +<xs:restriction base="xs:boolean"/> |
322 | +</xs:simpleType> |
323 | +<xs:complexType name="BranchAndFinancialInstitutionIdentification3"> |
324 | +<xs:sequence> |
325 | +<xs:element name="FinInstnId" type="FinancialInstitutionIdentification5Choice"/> |
326 | +<xs:element name="BrnchId" type="BranchData" minOccurs="0" maxOccurs="1"/> |
327 | +</xs:sequence> |
328 | +</xs:complexType> |
329 | +<xs:complexType name="BranchData"> |
330 | +<xs:sequence> |
331 | +<xs:element name="Id" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
332 | +<xs:element name="Nm" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
333 | +<xs:element name="PstlAdr" type="PostalAddress1" minOccurs="0" maxOccurs="1"/> |
334 | +</xs:sequence> |
335 | +</xs:complexType> |
336 | +<xs:simpleType name="CHIPSUniversalIdentifier"> |
337 | +<xs:restriction base="xs:string"> |
338 | +<xs:pattern value="CH[0-9]{6,6}"/> |
339 | +</xs:restriction> |
340 | +</xs:simpleType> |
341 | +<xs:complexType name="CashAccount7"> |
342 | +<xs:sequence> |
343 | +<xs:element name="Id" type="AccountIdentification3Choice"/> |
344 | +<xs:element name="Tp" type="CashAccountType2" minOccurs="0" maxOccurs="1"/> |
345 | +<xs:element name="Ccy" type="CurrencyCode" minOccurs="0" maxOccurs="1"/> |
346 | +<xs:element name="Nm" type="Max70Text" minOccurs="0" maxOccurs="1"/> |
347 | +</xs:sequence> |
348 | +</xs:complexType> |
349 | +<xs:complexType name="CashAccountType2"> |
350 | +<xs:sequence> |
351 | +<xs:choice> |
352 | +<xs:element name="Cd" type="CashAccountType4Code"/> |
353 | +<xs:element name="Prtry" type="Max35Text"/> |
354 | +</xs:choice> |
355 | +</xs:sequence> |
356 | +</xs:complexType> |
357 | +<xs:simpleType name="CashAccountType4Code"> |
358 | +<xs:restriction base="xs:string"> |
359 | +<xs:enumeration value="CASH"/> |
360 | +<xs:enumeration value="CHAR"/> |
361 | +<xs:enumeration value="COMM"/> |
362 | +<xs:enumeration value="TAXE"/> |
363 | +<xs:enumeration value="CISH"/> |
364 | +<xs:enumeration value="TRAS"/> |
365 | +<xs:enumeration value="SACC"/> |
366 | +<xs:enumeration value="CACC"/> |
367 | +<xs:enumeration value="SVGS"/> |
368 | +<xs:enumeration value="ONDP"/> |
369 | +<xs:enumeration value="MGLD"/> |
370 | +<xs:enumeration value="NREX"/> |
371 | +<xs:enumeration value="MOMA"/> |
372 | +<xs:enumeration value="LOAN"/> |
373 | +<xs:enumeration value="SLRY"/> |
374 | +<xs:enumeration value="ODFT"/> |
375 | +</xs:restriction> |
376 | +</xs:simpleType> |
377 | +<xs:simpleType name="ChargeBearerType1Code"> |
378 | +<xs:restriction base="xs:string"> |
379 | +<xs:enumeration value="DEBT"/> |
380 | +<xs:enumeration value="CRED"/> |
381 | +<xs:enumeration value="SHAR"/> |
382 | +<xs:enumeration value="SLEV"/> |
383 | +</xs:restriction> |
384 | +</xs:simpleType> |
385 | +<xs:complexType name="Cheque5"> |
386 | +<xs:sequence> |
387 | +<xs:element name="ChqTp" type="ChequeType2Code" minOccurs="0" maxOccurs="1"/> |
388 | +<xs:element name="ChqNb" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
389 | +<xs:element name="ChqFr" type="NameAndAddress3" minOccurs="0" maxOccurs="1"/> |
390 | +<xs:element name="DlvryMtd" type="ChequeDeliveryMethod1Choice" minOccurs="0" maxOccurs="1"/> |
391 | +<xs:element name="DlvrTo" type="NameAndAddress3" minOccurs="0" maxOccurs="1"/> |
392 | +<xs:element name="InstrPrty" type="Priority2Code" minOccurs="0" maxOccurs="1"/> |
393 | +<xs:element name="ChqMtrtyDt" type="ISODate" minOccurs="0" maxOccurs="1"/> |
394 | +<xs:element name="FrmsCd" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
395 | +<xs:element name="MemoFld" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
396 | +<xs:element name="RgnlClrZone" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
397 | +<xs:element name="PrtLctn" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
398 | +</xs:sequence> |
399 | +</xs:complexType> |
400 | +<xs:simpleType name="ChequeDelivery1Code"> |
401 | +<xs:restriction base="xs:string"> |
402 | +<xs:enumeration value="MLDB"/> |
403 | +<xs:enumeration value="MLCD"/> |
404 | +<xs:enumeration value="MLFA"/> |
405 | +<xs:enumeration value="CRDB"/> |
406 | +<xs:enumeration value="CRCD"/> |
407 | +<xs:enumeration value="CRFA"/> |
408 | +<xs:enumeration value="PUDB"/> |
409 | +<xs:enumeration value="PUCD"/> |
410 | +<xs:enumeration value="PUFA"/> |
411 | +<xs:enumeration value="RGDB"/> |
412 | +<xs:enumeration value="RGCD"/> |
413 | +<xs:enumeration value="RGFA"/> |
414 | +</xs:restriction> |
415 | +</xs:simpleType> |
416 | +<xs:complexType name="ChequeDeliveryMethod1Choice"> |
417 | +<xs:sequence> |
418 | +<xs:choice> |
419 | +<xs:element name="Cd" type="ChequeDelivery1Code"/> |
420 | +<xs:element name="Prtry" type="Max35Text"/> |
421 | +</xs:choice> |
422 | +</xs:sequence> |
423 | +</xs:complexType> |
424 | +<xs:simpleType name="ChequeType2Code"> |
425 | +<xs:restriction base="xs:string"> |
426 | +<xs:enumeration value="CCHQ"/> |
427 | +<xs:enumeration value="CCCH"/> |
428 | +<xs:enumeration value="BCHQ"/> |
429 | +<xs:enumeration value="DRFT"/> |
430 | +<xs:enumeration value="ELDR"/> |
431 | +</xs:restriction> |
432 | +</xs:simpleType> |
433 | +<xs:simpleType name="ClearingChannel2Code"> |
434 | +<xs:restriction base="xs:string"> |
435 | +<xs:enumeration value="RTGS"/> |
436 | +<xs:enumeration value="RTNS"/> |
437 | +<xs:enumeration value="MPNS"/> |
438 | +<xs:enumeration value="BOOK"/> |
439 | +</xs:restriction> |
440 | +</xs:simpleType> |
441 | +<xs:complexType name="ClearingSystemMemberIdentification3Choice"> |
442 | +<xs:sequence> |
443 | +<xs:choice> |
444 | +<xs:element name="Id" type="ExternalClearingSystemMemberCode"/> |
445 | +<xs:element name="Prtry" type="Max35Text"/> |
446 | +</xs:choice> |
447 | +</xs:sequence> |
448 | +</xs:complexType> |
449 | +<xs:simpleType name="CountryCode"> |
450 | +<xs:restriction base="xs:string"> |
451 | +<xs:pattern value="[A-Z]{2,2}"/> |
452 | +</xs:restriction> |
453 | +</xs:simpleType> |
454 | +<xs:complexType name="CreditTransferTransactionInformation1"> |
455 | +<xs:sequence> |
456 | +<xs:element name="PmtId" type="PaymentIdentification1"/> |
457 | +<xs:element name="PmtTpInf" type="PaymentTypeInformation1" minOccurs="0" maxOccurs="1"/> |
458 | +<xs:element name="Amt" type="AmountType2Choice"/> |
459 | +<xs:element name="XchgRateInf" type="ExchangeRateInformation1" minOccurs="0" maxOccurs="1"/> |
460 | +<xs:element name="ChrgBr" type="ChargeBearerType1Code" minOccurs="0" maxOccurs="1"/> |
461 | +<xs:element name="ChqInstr" type="Cheque5" minOccurs="0" maxOccurs="1"/> |
462 | +<xs:element name="UltmtDbtr" type="PartyIdentification8" minOccurs="0" maxOccurs="1"/> |
463 | +<xs:element name="IntrmyAgt1" type="BranchAndFinancialInstitutionIdentification3" minOccurs="0" maxOccurs="1"/> |
464 | +<xs:element name="IntrmyAgt1Acct" type="CashAccount7" minOccurs="0" maxOccurs="1"/> |
465 | +<xs:element name="IntrmyAgt2" type="BranchAndFinancialInstitutionIdentification3" minOccurs="0" maxOccurs="1"/> |
466 | +<xs:element name="IntrmyAgt2Acct" type="CashAccount7" minOccurs="0" maxOccurs="1"/> |
467 | +<xs:element name="IntrmyAgt3" type="BranchAndFinancialInstitutionIdentification3" minOccurs="0" maxOccurs="1"/> |
468 | +<xs:element name="IntrmyAgt3Acct" type="CashAccount7" minOccurs="0" maxOccurs="1"/> |
469 | +<xs:element name="CdtrAgt" type="BranchAndFinancialInstitutionIdentification3" minOccurs="0" maxOccurs="1"/> |
470 | +<xs:element name="CdtrAgtAcct" type="CashAccount7" minOccurs="0" maxOccurs="1"/> |
471 | +<xs:element name="Cdtr" type="PartyIdentification8" minOccurs="0" maxOccurs="1"/> |
472 | +<xs:element name="CdtrAcct" type="CashAccount7" minOccurs="0" maxOccurs="1"/> |
473 | +<xs:element name="UltmtCdtr" type="PartyIdentification8" minOccurs="0" maxOccurs="1"/> |
474 | +<xs:element name="InstrForCdtrAgt" type="InstructionForCreditorAgent1" minOccurs="0" maxOccurs="unbounded"/> |
475 | +<xs:element name="InstrForDbtrAgt" type="Max140Text" minOccurs="0" maxOccurs="1"/> |
476 | +<xs:element name="Purp" type="Purpose1Choice" minOccurs="0" maxOccurs="1"/> |
477 | +<xs:element name="RgltryRptg" type="RegulatoryReporting2" minOccurs="0" maxOccurs="10"/> |
478 | +<xs:element name="Tax" type="TaxInformation2" minOccurs="0" maxOccurs="1"/> |
479 | +<xs:element name="RltdRmtInf" type="RemittanceLocation1" minOccurs="0" maxOccurs="10"/> |
480 | +<xs:element name="RmtInf" type="RemittanceInformation1" minOccurs="0" maxOccurs="1"/> |
481 | +</xs:sequence> |
482 | +</xs:complexType> |
483 | +<xs:complexType name="CreditorReferenceInformation1"> |
484 | +<xs:sequence> |
485 | +<xs:element name="CdtrRefTp" type="CreditorReferenceType1" minOccurs="0" maxOccurs="1"/> |
486 | +<xs:element name="CdtrRef" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
487 | +</xs:sequence> |
488 | +</xs:complexType> |
489 | +<xs:complexType name="CreditorReferenceType1"> |
490 | +<xs:sequence> |
491 | +<xs:choice> |
492 | +<xs:element name="Cd" type="DocumentType3Code"/> |
493 | +<xs:element name="Prtry" type="Max35Text"/> |
494 | +</xs:choice> |
495 | +<xs:element name="Issr" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
496 | +</xs:sequence> |
497 | +</xs:complexType> |
498 | +<xs:simpleType name="CurrencyAndAmount_SimpleType"> |
499 | +<xs:restriction base="xs:decimal"> |
500 | +<xs:minInclusive value="0"/> |
501 | +<xs:fractionDigits value="5"/> |
502 | +<xs:totalDigits value="18"/> |
503 | +</xs:restriction> |
504 | +</xs:simpleType> |
505 | +<xs:complexType name="CurrencyAndAmount"> |
506 | +<xs:simpleContent> |
507 | +<xs:extension base="CurrencyAndAmount_SimpleType"> |
508 | +<xs:attribute name="Ccy" type="CurrencyCode" use="required"/> |
509 | +</xs:extension> |
510 | +</xs:simpleContent> |
511 | +</xs:complexType> |
512 | +<xs:simpleType name="CurrencyCode"> |
513 | +<xs:restriction base="xs:string"> |
514 | +<xs:pattern value="[A-Z]{3,3}"/> |
515 | +</xs:restriction> |
516 | +</xs:simpleType> |
517 | +<xs:complexType name="DateAndPlaceOfBirth"> |
518 | +<xs:sequence> |
519 | +<xs:element name="BirthDt" type="ISODate"/> |
520 | +<xs:element name="PrvcOfBirth" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
521 | +<xs:element name="CityOfBirth" type="Max35Text"/> |
522 | +<xs:element name="CtryOfBirth" type="CountryCode"/> |
523 | +</xs:sequence> |
524 | +</xs:complexType> |
525 | +<xs:simpleType name="DecimalNumber"> |
526 | +<xs:restriction base="xs:decimal"> |
527 | +<xs:fractionDigits value="17"/> |
528 | +<xs:totalDigits value="18"/> |
529 | +</xs:restriction> |
530 | +</xs:simpleType> |
531 | +<xs:complexType name="Document"> |
532 | +<xs:sequence> |
533 | +<xs:element name="pain.001.001.02" type="pain.001.001.02"/> |
534 | +</xs:sequence> |
535 | +</xs:complexType> |
536 | +<xs:simpleType name="DocumentType2Code"> |
537 | +<xs:restriction base="xs:string"> |
538 | +<xs:enumeration value="MSIN"/> |
539 | +<xs:enumeration value="CNFA"/> |
540 | +<xs:enumeration value="DNFA"/> |
541 | +<xs:enumeration value="CINV"/> |
542 | +<xs:enumeration value="CREN"/> |
543 | +<xs:enumeration value="DEBN"/> |
544 | +<xs:enumeration value="HIRI"/> |
545 | +<xs:enumeration value="SBIN"/> |
546 | +<xs:enumeration value="CMCN"/> |
547 | +<xs:enumeration value="SOAC"/> |
548 | +<xs:enumeration value="DISP"/> |
549 | +</xs:restriction> |
550 | +</xs:simpleType> |
551 | +<xs:simpleType name="DocumentType3Code"> |
552 | +<xs:restriction base="xs:string"> |
553 | +<xs:enumeration value="RADM"/> |
554 | +<xs:enumeration value="RPIN"/> |
555 | +<xs:enumeration value="FXDR"/> |
556 | +<xs:enumeration value="DISP"/> |
557 | +<xs:enumeration value="PUOR"/> |
558 | +<xs:enumeration value="SCOR"/> |
559 | +</xs:restriction> |
560 | +</xs:simpleType> |
561 | +<xs:simpleType name="DunsIdentifier"> |
562 | +<xs:restriction base="xs:string"> |
563 | +<xs:pattern value="[0-9]{9,9}"/> |
564 | +</xs:restriction> |
565 | +</xs:simpleType> |
566 | +<xs:simpleType name="EANGLNIdentifier"> |
567 | +<xs:restriction base="xs:string"> |
568 | +<xs:pattern value="[0-9]{13,13}"/> |
569 | +</xs:restriction> |
570 | +</xs:simpleType> |
571 | +<xs:complexType name="EquivalentAmount"> |
572 | +<xs:sequence> |
573 | +<xs:element name="Amt" type="CurrencyAndAmount"/> |
574 | +<xs:element name="CcyOfTrf" type="CurrencyCode"/> |
575 | +</xs:sequence> |
576 | +</xs:complexType> |
577 | +<xs:complexType name="ExchangeRateInformation1"> |
578 | +<xs:sequence> |
579 | +<xs:element name="XchgRate" type="BaseOneRate" minOccurs="0" maxOccurs="1"/> |
580 | +<xs:element name="RateTp" type="ExchangeRateType1Code" minOccurs="0" maxOccurs="1"/> |
581 | +<xs:element name="CtrctId" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
582 | +</xs:sequence> |
583 | +</xs:complexType> |
584 | +<xs:simpleType name="ExchangeRateType1Code"> |
585 | +<xs:restriction base="xs:string"> |
586 | +<xs:enumeration value="SPOT"/> |
587 | +<xs:enumeration value="SALE"/> |
588 | +<xs:enumeration value="AGRD"/> |
589 | +</xs:restriction> |
590 | +</xs:simpleType> |
591 | +<xs:simpleType name="ExternalClearingSystemMemberCode"> |
592 | +<xs:restriction base="xs:string"> |
593 | +<xs:minLength value="1"/> |
594 | +<xs:maxLength value="35"/> |
595 | +</xs:restriction> |
596 | +</xs:simpleType> |
597 | +<xs:simpleType name="ExternalLocalInstrumentCode"> |
598 | +<xs:restriction base="xs:string"> |
599 | +<xs:minLength value="1"/> |
600 | +<xs:maxLength value="35"/> |
601 | +</xs:restriction> |
602 | +</xs:simpleType> |
603 | +<xs:simpleType name="ExternalPurposeCode"> |
604 | +<xs:restriction base="xs:string"> |
605 | +<xs:minLength value="1"/> |
606 | +<xs:maxLength value="35"/> |
607 | +</xs:restriction> |
608 | +</xs:simpleType> |
609 | +<xs:complexType name="FinancialInstitutionIdentification3"> |
610 | +<xs:sequence> |
611 | +<xs:element name="BIC" type="BICIdentifier" minOccurs="0" maxOccurs="1"/> |
612 | +<xs:element name="ClrSysMmbId" type="ClearingSystemMemberIdentification3Choice" minOccurs="0" maxOccurs="1"/> |
613 | +<xs:element name="Nm" type="Max70Text" minOccurs="0" maxOccurs="1"/> |
614 | +<xs:element name="PstlAdr" type="PostalAddress1" minOccurs="0" maxOccurs="1"/> |
615 | +<xs:element name="PrtryId" type="GenericIdentification3" minOccurs="0" maxOccurs="1"/> |
616 | +</xs:sequence> |
617 | +</xs:complexType> |
618 | +<xs:complexType name="FinancialInstitutionIdentification5Choice"> |
619 | +<xs:sequence> |
620 | +<xs:choice> |
621 | +<xs:element name="BIC" type="BICIdentifier"/> |
622 | +<xs:element name="ClrSysMmbId" type="ClearingSystemMemberIdentification3Choice"/> |
623 | +<xs:element name="NmAndAdr" type="NameAndAddress7"/> |
624 | +<xs:element name="PrtryId" type="GenericIdentification3"/> |
625 | +<xs:element name="CmbndId" type="FinancialInstitutionIdentification3"/> |
626 | +</xs:choice> |
627 | +</xs:sequence> |
628 | +</xs:complexType> |
629 | +<xs:complexType name="GenericIdentification3"> |
630 | +<xs:sequence> |
631 | +<xs:element name="Id" type="Max35Text"/> |
632 | +<xs:element name="Issr" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
633 | +</xs:sequence> |
634 | +</xs:complexType> |
635 | +<xs:complexType name="GenericIdentification4"> |
636 | +<xs:sequence> |
637 | +<xs:element name="Id" type="Max35Text"/> |
638 | +<xs:element name="IdTp" type="Max35Text"/> |
639 | +</xs:sequence> |
640 | +</xs:complexType> |
641 | +<xs:complexType name="GroupHeader1"> |
642 | +<xs:sequence> |
643 | +<xs:element name="MsgId" type="Max35Text"/> |
644 | +<xs:element name="CreDtTm" type="ISODateTime"/> |
645 | +<xs:element name="Authstn" type="Max128Text" minOccurs="0" maxOccurs="2"/> |
646 | +<xs:element name="BtchBookg" type="BatchBookingIndicator" minOccurs="0" maxOccurs="1"/> |
647 | +<xs:element name="NbOfTxs" type="Max15NumericText"/> |
648 | +<xs:element name="CtrlSum" type="DecimalNumber" minOccurs="0" maxOccurs="1"/> |
649 | +<xs:element name="Grpg" type="Grouping1Code"/> |
650 | +<xs:element name="InitgPty" type="PartyIdentification8"/> |
651 | +<xs:element name="FwdgAgt" type="BranchAndFinancialInstitutionIdentification3" minOccurs="0" maxOccurs="1"/> |
652 | +</xs:sequence> |
653 | +</xs:complexType> |
654 | +<xs:simpleType name="Grouping1Code"> |
655 | +<xs:restriction base="xs:string"> |
656 | +<xs:enumeration value="SNGL"/> |
657 | +<xs:enumeration value="GRPD"/> |
658 | +<xs:enumeration value="MIXD"/> |
659 | +</xs:restriction> |
660 | +</xs:simpleType> |
661 | +<xs:simpleType name="IBANIdentifier"> |
662 | +<xs:restriction base="xs:string"> |
663 | +<xs:pattern value="[a-zA-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}"/> |
664 | +</xs:restriction> |
665 | +</xs:simpleType> |
666 | +<xs:simpleType name="IBEIIdentifier"> |
667 | +<xs:restriction base="xs:string"> |
668 | +<xs:pattern value="[A-Z]{2,2}[B-DF-HJ-NP-TV-XZ0-9]{7,7}[0-9]{1,1}"/> |
669 | +</xs:restriction> |
670 | +</xs:simpleType> |
671 | +<xs:simpleType name="ISODate"> |
672 | +<xs:restriction base="xs:date"/> |
673 | +</xs:simpleType> |
674 | +<xs:simpleType name="ISODateTime"> |
675 | +<xs:restriction base="xs:dateTime"/> |
676 | +</xs:simpleType> |
677 | +<xs:simpleType name="Instruction3Code"> |
678 | +<xs:restriction base="xs:string"> |
679 | +<xs:enumeration value="CHQB"/> |
680 | +<xs:enumeration value="HOLD"/> |
681 | +<xs:enumeration value="PHOB"/> |
682 | +<xs:enumeration value="TELB"/> |
683 | +</xs:restriction> |
684 | +</xs:simpleType> |
685 | +<xs:complexType name="InstructionForCreditorAgent1"> |
686 | +<xs:sequence> |
687 | +<xs:element name="Cd" type="Instruction3Code" minOccurs="0" maxOccurs="1"/> |
688 | +<xs:element name="InstrInf" type="Max140Text" minOccurs="0" maxOccurs="1"/> |
689 | +</xs:sequence> |
690 | +</xs:complexType> |
691 | +<xs:complexType name="LocalInstrument1Choice"> |
692 | +<xs:sequence> |
693 | +<xs:choice> |
694 | +<xs:element name="Cd" type="ExternalLocalInstrumentCode"/> |
695 | +<xs:element name="Prtry" type="Max35Text"/> |
696 | +</xs:choice> |
697 | +</xs:sequence> |
698 | +</xs:complexType> |
699 | +<xs:simpleType name="Max128Text"> |
700 | +<xs:restriction base="xs:string"> |
701 | +<xs:minLength value="1"/> |
702 | +<xs:maxLength value="128"/> |
703 | +</xs:restriction> |
704 | +</xs:simpleType> |
705 | +<xs:simpleType name="Max140Text"> |
706 | +<xs:restriction base="xs:string"> |
707 | +<xs:minLength value="1"/> |
708 | +<xs:maxLength value="140"/> |
709 | +</xs:restriction> |
710 | +</xs:simpleType> |
711 | +<xs:simpleType name="Max15NumericText"> |
712 | +<xs:restriction base="xs:string"> |
713 | +<xs:pattern value="[0-9]{1,15}"/> |
714 | +</xs:restriction> |
715 | +</xs:simpleType> |
716 | +<xs:simpleType name="Max16Text"> |
717 | +<xs:restriction base="xs:string"> |
718 | +<xs:minLength value="1"/> |
719 | +<xs:maxLength value="16"/> |
720 | +</xs:restriction> |
721 | +</xs:simpleType> |
722 | +<xs:simpleType name="Max256Text"> |
723 | +<xs:restriction base="xs:string"> |
724 | +<xs:minLength value="1"/> |
725 | +<xs:maxLength value="256"/> |
726 | +</xs:restriction> |
727 | +</xs:simpleType> |
728 | +<xs:simpleType name="Max34Text"> |
729 | +<xs:restriction base="xs:string"> |
730 | +<xs:minLength value="1"/> |
731 | +<xs:maxLength value="34"/> |
732 | +</xs:restriction> |
733 | +</xs:simpleType> |
734 | +<xs:simpleType name="Max35Text"> |
735 | +<xs:restriction base="xs:string"> |
736 | +<xs:minLength value="1"/> |
737 | +<xs:maxLength value="35"/> |
738 | +</xs:restriction> |
739 | +</xs:simpleType> |
740 | +<xs:simpleType name="Max3Text"> |
741 | +<xs:restriction base="xs:string"> |
742 | +<xs:minLength value="1"/> |
743 | +<xs:maxLength value="3"/> |
744 | +</xs:restriction> |
745 | +</xs:simpleType> |
746 | +<xs:simpleType name="Max70Text"> |
747 | +<xs:restriction base="xs:string"> |
748 | +<xs:minLength value="1"/> |
749 | +<xs:maxLength value="70"/> |
750 | +</xs:restriction> |
751 | +</xs:simpleType> |
752 | +<xs:complexType name="NameAndAddress3"> |
753 | +<xs:sequence> |
754 | +<xs:element name="Nm" type="Max70Text"/> |
755 | +<xs:element name="Adr" type="PostalAddress1"/> |
756 | +</xs:sequence> |
757 | +</xs:complexType> |
758 | +<xs:complexType name="NameAndAddress7"> |
759 | +<xs:sequence> |
760 | +<xs:element name="Nm" type="Max70Text"/> |
761 | +<xs:element name="PstlAdr" type="PostalAddress1"/> |
762 | +</xs:sequence> |
763 | +</xs:complexType> |
764 | +<xs:complexType name="OrganisationIdentification2"> |
765 | +<xs:sequence> |
766 | +<xs:element name="BIC" type="BICIdentifier" minOccurs="0" maxOccurs="1"/> |
767 | +<xs:element name="IBEI" type="IBEIIdentifier" minOccurs="0" maxOccurs="1"/> |
768 | +<xs:element name="BEI" type="BEIIdentifier" minOccurs="0" maxOccurs="1"/> |
769 | +<xs:element name="EANGLN" type="EANGLNIdentifier" minOccurs="0" maxOccurs="1"/> |
770 | +<xs:element name="USCHU" type="CHIPSUniversalIdentifier" minOccurs="0" maxOccurs="1"/> |
771 | +<xs:element name="DUNS" type="DunsIdentifier" minOccurs="0" maxOccurs="1"/> |
772 | +<xs:element name="BkPtyId" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
773 | +<xs:element name="TaxIdNb" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
774 | +<xs:element name="PrtryId" type="GenericIdentification3" minOccurs="0" maxOccurs="1"/> |
775 | +</xs:sequence> |
776 | +</xs:complexType> |
777 | +<xs:complexType name="Party2Choice"> |
778 | +<xs:sequence> |
779 | +<xs:choice> |
780 | +<xs:element name="OrgId" type="OrganisationIdentification2"/> |
781 | +<xs:element name="PrvtId" type="PersonIdentification3" minOccurs="1" maxOccurs="4"/> |
782 | +</xs:choice> |
783 | +</xs:sequence> |
784 | +</xs:complexType> |
785 | +<xs:complexType name="PartyIdentification8"> |
786 | +<xs:sequence> |
787 | +<xs:element name="Nm" type="Max70Text" minOccurs="0" maxOccurs="1"/> |
788 | +<xs:element name="PstlAdr" type="PostalAddress1" minOccurs="0" maxOccurs="1"/> |
789 | +<xs:element name="Id" type="Party2Choice" minOccurs="0" maxOccurs="1"/> |
790 | +<xs:element name="CtryOfRes" type="CountryCode" minOccurs="0" maxOccurs="1"/> |
791 | +</xs:sequence> |
792 | +</xs:complexType> |
793 | +<xs:simpleType name="PaymentCategoryPurpose1Code"> |
794 | +<xs:restriction base="xs:string"> |
795 | +<xs:enumeration value="CORT"/> |
796 | +<xs:enumeration value="SALA"/> |
797 | +<xs:enumeration value="TREA"/> |
798 | +<xs:enumeration value="CASH"/> |
799 | +<xs:enumeration value="DIVI"/> |
800 | +<xs:enumeration value="GOVT"/> |
801 | +<xs:enumeration value="INTE"/> |
802 | +<xs:enumeration value="LOAN"/> |
803 | +<xs:enumeration value="PENS"/> |
804 | +<xs:enumeration value="SECU"/> |
805 | +<xs:enumeration value="SSBE"/> |
806 | +<xs:enumeration value="SUPP"/> |
807 | +<xs:enumeration value="TAXS"/> |
808 | +<xs:enumeration value="TRAD"/> |
809 | +<xs:enumeration value="VATX"/> |
810 | +<xs:enumeration value="HEDG"/> |
811 | +<xs:enumeration value="INTC"/> |
812 | +<xs:enumeration value="WHLD"/> |
813 | +</xs:restriction> |
814 | +</xs:simpleType> |
815 | +<xs:complexType name="PaymentIdentification1"> |
816 | +<xs:sequence> |
817 | +<xs:element name="InstrId" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
818 | +<xs:element name="EndToEndId" type="Max35Text"/> |
819 | +</xs:sequence> |
820 | +</xs:complexType> |
821 | +<xs:complexType name="PaymentInstructionInformation1"> |
822 | +<xs:sequence> |
823 | +<xs:element name="PmtInfId" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
824 | +<xs:element name="PmtMtd" type="PaymentMethod3Code"/> |
825 | +<xs:element name="PmtTpInf" type="PaymentTypeInformation1" minOccurs="0" maxOccurs="1"/> |
826 | +<xs:element name="ReqdExctnDt" type="ISODate"/> |
827 | +<xs:element name="PoolgAdjstmntDt" type="ISODate" minOccurs="0" maxOccurs="1"/> |
828 | +<xs:element name="Dbtr" type="PartyIdentification8"/> |
829 | +<xs:element name="DbtrAcct" type="CashAccount7"/> |
830 | +<xs:element name="DbtrAgt" type="BranchAndFinancialInstitutionIdentification3"/> |
831 | +<xs:element name="DbtrAgtAcct" type="CashAccount7" minOccurs="0" maxOccurs="1"/> |
832 | +<xs:element name="UltmtDbtr" type="PartyIdentification8" minOccurs="0" maxOccurs="1"/> |
833 | +<xs:element name="ChrgBr" type="ChargeBearerType1Code" minOccurs="0" maxOccurs="1"/> |
834 | +<xs:element name="ChrgsAcct" type="CashAccount7" minOccurs="0" maxOccurs="1"/> |
835 | +<xs:element name="ChrgsAcctAgt" type="BranchAndFinancialInstitutionIdentification3" minOccurs="0" maxOccurs="1"/> |
836 | +<xs:element name="CdtTrfTxInf" type="CreditTransferTransactionInformation1" minOccurs="1" maxOccurs="unbounded"/> |
837 | +</xs:sequence> |
838 | +</xs:complexType> |
839 | +<xs:simpleType name="PaymentMethod3Code"> |
840 | +<xs:restriction base="xs:string"> |
841 | +<xs:enumeration value="CHK"/> |
842 | +<xs:enumeration value="TRF"/> |
843 | +<xs:enumeration value="TRA"/> |
844 | +</xs:restriction> |
845 | +</xs:simpleType> |
846 | +<xs:complexType name="PaymentTypeInformation1"> |
847 | +<xs:sequence> |
848 | +<xs:element name="InstrPrty" type="Priority2Code" minOccurs="0" maxOccurs="1"/> |
849 | +<xs:choice> |
850 | +<xs:element name="SvcLvl" type="ServiceLevel2Choice" minOccurs="0" maxOccurs="1"/> |
851 | +<xs:element name="ClrChanl" type="ClearingChannel2Code" minOccurs="0" maxOccurs="1"/> |
852 | +</xs:choice> |
853 | +<xs:element name="LclInstrm" type="LocalInstrument1Choice" minOccurs="0" maxOccurs="1"/> |
854 | +<xs:element name="CtgyPurp" type="PaymentCategoryPurpose1Code" minOccurs="0" maxOccurs="1"/> |
855 | +</xs:sequence> |
856 | +</xs:complexType> |
857 | +<xs:simpleType name="PercentageRate"> |
858 | +<xs:restriction base="xs:decimal"> |
859 | +<xs:fractionDigits value="10"/> |
860 | +<xs:totalDigits value="11"/> |
861 | +</xs:restriction> |
862 | +</xs:simpleType> |
863 | +<xs:complexType name="PersonIdentification3"> |
864 | +<xs:sequence> |
865 | +<xs:choice> |
866 | +<xs:element name="DrvrsLicNb" type="Max35Text"/> |
867 | +<xs:element name="CstmrNb" type="Max35Text"/> |
868 | +<xs:element name="SclSctyNb" type="Max35Text"/> |
869 | +<xs:element name="AlnRegnNb" type="Max35Text"/> |
870 | +<xs:element name="PsptNb" type="Max35Text"/> |
871 | +<xs:element name="TaxIdNb" type="Max35Text"/> |
872 | +<xs:element name="IdntyCardNb" type="Max35Text"/> |
873 | +<xs:element name="MplyrIdNb" type="Max35Text"/> |
874 | +<xs:element name="DtAndPlcOfBirth" type="DateAndPlaceOfBirth"/> |
875 | +<xs:element name="OthrId" type="GenericIdentification4"/> |
876 | +</xs:choice> |
877 | +<xs:element name="Issr" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
878 | +</xs:sequence> |
879 | +</xs:complexType> |
880 | +<xs:complexType name="PostalAddress1"> |
881 | +<xs:sequence> |
882 | +<xs:element name="AdrTp" type="AddressType2Code" minOccurs="0" maxOccurs="1"/> |
883 | +<xs:element name="AdrLine" type="Max70Text" minOccurs="0" maxOccurs="5"/> |
884 | +<xs:element name="StrtNm" type="Max70Text" minOccurs="0" maxOccurs="1"/> |
885 | +<xs:element name="BldgNb" type="Max16Text" minOccurs="0" maxOccurs="1"/> |
886 | +<xs:element name="PstCd" type="Max16Text" minOccurs="0" maxOccurs="1"/> |
887 | +<xs:element name="TwnNm" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
888 | +<xs:element name="CtrySubDvsn" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
889 | +<xs:element name="Ctry" type="CountryCode"/> |
890 | +</xs:sequence> |
891 | +</xs:complexType> |
892 | +<xs:simpleType name="Priority2Code"> |
893 | +<xs:restriction base="xs:string"> |
894 | +<xs:enumeration value="HIGH"/> |
895 | +<xs:enumeration value="NORM"/> |
896 | +</xs:restriction> |
897 | +</xs:simpleType> |
898 | +<xs:complexType name="Purpose1Choice"> |
899 | +<xs:sequence> |
900 | +<xs:choice> |
901 | +<xs:element name="Cd" type="ExternalPurposeCode"/> |
902 | +<xs:element name="Prtry" type="Max35Text"/> |
903 | +</xs:choice> |
904 | +</xs:sequence> |
905 | +</xs:complexType> |
906 | +<xs:complexType name="ReferredDocumentAmount1Choice"> |
907 | +<xs:sequence> |
908 | +<xs:choice> |
909 | +<xs:element name="DuePyblAmt" type="CurrencyAndAmount"/> |
910 | +<xs:element name="DscntApldAmt" type="CurrencyAndAmount"/> |
911 | +<xs:element name="RmtdAmt" type="CurrencyAndAmount"/> |
912 | +<xs:element name="CdtNoteAmt" type="CurrencyAndAmount"/> |
913 | +<xs:element name="TaxAmt" type="CurrencyAndAmount"/> |
914 | +</xs:choice> |
915 | +</xs:sequence> |
916 | +</xs:complexType> |
917 | +<xs:complexType name="ReferredDocumentInformation1"> |
918 | +<xs:sequence> |
919 | +<xs:element name="RfrdDocTp" type="ReferredDocumentType1" minOccurs="0" maxOccurs="1"/> |
920 | +<xs:element name="RfrdDocNb" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
921 | +</xs:sequence> |
922 | +</xs:complexType> |
923 | +<xs:complexType name="ReferredDocumentType1"> |
924 | +<xs:sequence> |
925 | +<xs:choice> |
926 | +<xs:element name="Cd" type="DocumentType2Code"/> |
927 | +<xs:element name="Prtry" type="Max35Text"/> |
928 | +</xs:choice> |
929 | +<xs:element name="Issr" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
930 | +</xs:sequence> |
931 | +</xs:complexType> |
932 | +<xs:complexType name="RegulatoryAuthority"> |
933 | +<xs:sequence> |
934 | +<xs:element name="AuthrtyNm" type="Max70Text" minOccurs="0" maxOccurs="1"/> |
935 | +<xs:element name="AuthrtyCtry" type="CountryCode" minOccurs="0" maxOccurs="1"/> |
936 | +</xs:sequence> |
937 | +</xs:complexType> |
938 | +<xs:complexType name="RegulatoryReporting2"> |
939 | +<xs:sequence> |
940 | +<xs:element name="DbtCdtRptgInd" type="RegulatoryReportingType1Code" minOccurs="0" maxOccurs="1"/> |
941 | +<xs:element name="Authrty" type="RegulatoryAuthority" minOccurs="0" maxOccurs="1"/> |
942 | +<xs:element name="RgltryDtls" type="StructuredRegulatoryReporting2" minOccurs="0" maxOccurs="1"/> |
943 | +</xs:sequence> |
944 | +</xs:complexType> |
945 | +<xs:simpleType name="RegulatoryReportingType1Code"> |
946 | +<xs:restriction base="xs:string"> |
947 | +<xs:enumeration value="CRED"/> |
948 | +<xs:enumeration value="DEBT"/> |
949 | +<xs:enumeration value="BOTH"/> |
950 | +</xs:restriction> |
951 | +</xs:simpleType> |
952 | +<xs:complexType name="RemittanceInformation1"> |
953 | +<xs:sequence> |
954 | +<xs:element name="Ustrd" type="Max140Text" minOccurs="0" maxOccurs="unbounded"/> |
955 | +<xs:element name="Strd" type="StructuredRemittanceInformation6" minOccurs="0" maxOccurs="unbounded"/> |
956 | +</xs:sequence> |
957 | +</xs:complexType> |
958 | +<xs:complexType name="RemittanceLocation1"> |
959 | +<xs:sequence> |
960 | +<xs:element name="RmtId" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
961 | +<xs:element name="RmtLctnMtd" type="RemittanceLocationMethod1Code" minOccurs="0" maxOccurs="1"/> |
962 | +<xs:element name="RmtLctnElctrncAdr" type="Max256Text" minOccurs="0" maxOccurs="1"/> |
963 | +<xs:element name="RmtLctnPstlAdr" type="NameAndAddress3" minOccurs="0" maxOccurs="1"/> |
964 | +</xs:sequence> |
965 | +</xs:complexType> |
966 | +<xs:simpleType name="RemittanceLocationMethod1Code"> |
967 | +<xs:restriction base="xs:string"> |
968 | +<xs:enumeration value="FAXI"/> |
969 | +<xs:enumeration value="EDIC"/> |
970 | +<xs:enumeration value="URID"/> |
971 | +<xs:enumeration value="EMAL"/> |
972 | +<xs:enumeration value="POST"/> |
973 | +</xs:restriction> |
974 | +</xs:simpleType> |
975 | +<xs:simpleType name="ServiceLevel1Code"> |
976 | +<xs:restriction base="xs:string"> |
977 | +<xs:enumeration value="SEPA"/> |
978 | +<xs:enumeration value="SDVA"/> |
979 | +<xs:enumeration value="PRPT"/> |
980 | +</xs:restriction> |
981 | +</xs:simpleType> |
982 | +<xs:complexType name="ServiceLevel2Choice"> |
983 | +<xs:sequence> |
984 | +<xs:choice> |
985 | +<xs:element name="Cd" type="ServiceLevel1Code"/> |
986 | +<xs:element name="Prtry" type="Max35Text"/> |
987 | +</xs:choice> |
988 | +</xs:sequence> |
989 | +</xs:complexType> |
990 | +<xs:complexType name="SimpleIdentificationInformation2"> |
991 | +<xs:sequence> |
992 | +<xs:element name="Id" type="Max34Text"/> |
993 | +</xs:sequence> |
994 | +</xs:complexType> |
995 | +<xs:complexType name="StructuredRegulatoryReporting2"> |
996 | +<xs:sequence> |
997 | +<xs:element name="Cd" type="Max3Text" minOccurs="0" maxOccurs="1"/> |
998 | +<xs:element name="Amt" type="CurrencyAndAmount" minOccurs="0" maxOccurs="1"/> |
999 | +<xs:element name="Inf" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
1000 | +</xs:sequence> |
1001 | +</xs:complexType> |
1002 | +<xs:complexType name="StructuredRemittanceInformation6"> |
1003 | +<xs:sequence> |
1004 | +<xs:element name="RfrdDocInf" type="ReferredDocumentInformation1" minOccurs="0" maxOccurs="1"/> |
1005 | +<xs:element name="RfrdDocRltdDt" type="ISODate" minOccurs="0" maxOccurs="1"/> |
1006 | +<xs:element name="RfrdDocAmt" type="ReferredDocumentAmount1Choice" minOccurs="0" maxOccurs="unbounded"/> |
1007 | +<xs:element name="CdtrRefInf" type="CreditorReferenceInformation1" minOccurs="0" maxOccurs="1"/> |
1008 | +<xs:element name="Invcr" type="PartyIdentification8" minOccurs="0" maxOccurs="1"/> |
1009 | +<xs:element name="Invcee" type="PartyIdentification8" minOccurs="0" maxOccurs="1"/> |
1010 | +<xs:element name="AddtlRmtInf" type="Max140Text" minOccurs="0" maxOccurs="1"/> |
1011 | +</xs:sequence> |
1012 | +</xs:complexType> |
1013 | +<xs:complexType name="TaxDetails"> |
1014 | +<xs:sequence> |
1015 | +<xs:element name="CertId" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
1016 | +<xs:element name="TaxTp" type="TaxType" minOccurs="0" maxOccurs="1"/> |
1017 | +</xs:sequence> |
1018 | +</xs:complexType> |
1019 | +<xs:complexType name="TaxInformation2"> |
1020 | +<xs:sequence> |
1021 | +<xs:element name="CdtrTaxId" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
1022 | +<xs:element name="CdtrTaxTp" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
1023 | +<xs:element name="DbtrTaxId" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
1024 | +<xs:element name="TaxRefNb" type="Max140Text" minOccurs="0" maxOccurs="1"/> |
1025 | +<xs:element name="TtlTaxblBaseAmt" type="CurrencyAndAmount" minOccurs="0" maxOccurs="1"/> |
1026 | +<xs:element name="TtlTaxAmt" type="CurrencyAndAmount" minOccurs="0" maxOccurs="1"/> |
1027 | +<xs:element name="TaxDt" type="ISODate" minOccurs="0" maxOccurs="1"/> |
1028 | +<xs:element name="TaxTpInf" type="TaxDetails" minOccurs="0" maxOccurs="unbounded"/> |
1029 | +</xs:sequence> |
1030 | +</xs:complexType> |
1031 | +<xs:complexType name="TaxType"> |
1032 | +<xs:sequence> |
1033 | +<xs:element name="CtgyDesc" type="Max35Text" minOccurs="0" maxOccurs="1"/> |
1034 | +<xs:element name="Rate" type="PercentageRate" minOccurs="0" maxOccurs="1"/> |
1035 | +<xs:element name="TaxblBaseAmt" type="CurrencyAndAmount" minOccurs="0" maxOccurs="1"/> |
1036 | +<xs:element name="Amt" type="CurrencyAndAmount" minOccurs="0" maxOccurs="1"/> |
1037 | +</xs:sequence> |
1038 | +</xs:complexType> |
1039 | +<xs:simpleType name="UPICIdentifier"> |
1040 | +<xs:restriction base="xs:string"> |
1041 | +<xs:pattern value="[0-9]{8,17}"/> |
1042 | +</xs:restriction> |
1043 | +</xs:simpleType> |
1044 | +<xs:complexType name="pain.001.001.02"> |
1045 | +<xs:sequence> |
1046 | +<xs:element name="GrpHdr" type="GroupHeader1"/> |
1047 | +<xs:element name="PmtInf" type="PaymentInstructionInformation1" minOccurs="1" maxOccurs="unbounded"/> |
1048 | +</xs:sequence> |
1049 | +</xs:complexType> |
1050 | +</xs:schema> |
1051 | |
1052 | === added file 'account_banking_sepa_credit_transfer/data/pain.001.001.03.xsd' |
1053 | --- account_banking_sepa_credit_transfer/data/pain.001.001.03.xsd 1970-01-01 00:00:00 +0000 |
1054 | +++ account_banking_sepa_credit_transfer/data/pain.001.001.03.xsd 2013-06-06 08:07:29 +0000 |
1055 | @@ -0,0 +1,921 @@ |
1056 | +<?xml version="1.0" encoding="UTF-8" standalone="no"?> |
1057 | +<!--Generated by SWIFTStandards Workstation (build:R6.1.0.2) on 2009 Jan 08 17:30:53--> |
1058 | +<xs:schema xmlns="urn:iso:std:iso:20022:tech:xsd:pain.001.001.03" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="urn:iso:std:iso:20022:tech:xsd:pain.001.001.03"> |
1059 | + <xs:element name="Document" type="Document"/> |
1060 | + <xs:complexType name="AccountIdentification4Choice"> |
1061 | + <xs:sequence> |
1062 | + <xs:choice> |
1063 | + <xs:element name="IBAN" type="IBAN2007Identifier"/> |
1064 | + <xs:element name="Othr" type="GenericAccountIdentification1"/> |
1065 | + </xs:choice> |
1066 | + </xs:sequence> |
1067 | + </xs:complexType> |
1068 | + <xs:complexType name="AccountSchemeName1Choice"> |
1069 | + <xs:sequence> |
1070 | + <xs:choice> |
1071 | + <xs:element name="Cd" type="ExternalAccountIdentification1Code"/> |
1072 | + <xs:element name="Prtry" type="Max35Text"/> |
1073 | + </xs:choice> |
1074 | + </xs:sequence> |
1075 | + </xs:complexType> |
1076 | + <xs:simpleType name="ActiveOrHistoricCurrencyAndAmount_SimpleType"> |
1077 | + <xs:restriction base="xs:decimal"> |
1078 | + <xs:minInclusive value="0"/> |
1079 | + <xs:fractionDigits value="5"/> |
1080 | + <xs:totalDigits value="18"/> |
1081 | + </xs:restriction> |
1082 | + </xs:simpleType> |
1083 | + <xs:complexType name="ActiveOrHistoricCurrencyAndAmount"> |
1084 | + <xs:simpleContent> |
1085 | + <xs:extension base="ActiveOrHistoricCurrencyAndAmount_SimpleType"> |
1086 | + <xs:attribute name="Ccy" type="ActiveOrHistoricCurrencyCode" use="required"/> |
1087 | + </xs:extension> |
1088 | + </xs:simpleContent> |
1089 | + </xs:complexType> |
1090 | + <xs:simpleType name="ActiveOrHistoricCurrencyCode"> |
1091 | + <xs:restriction base="xs:string"> |
1092 | + <xs:pattern value="[A-Z]{3,3}"/> |
1093 | + </xs:restriction> |
1094 | + </xs:simpleType> |
1095 | + <xs:simpleType name="AddressType2Code"> |
1096 | + <xs:restriction base="xs:string"> |
1097 | + <xs:enumeration value="ADDR"/> |
1098 | + <xs:enumeration value="PBOX"/> |
1099 | + <xs:enumeration value="HOME"/> |
1100 | + <xs:enumeration value="BIZZ"/> |
1101 | + <xs:enumeration value="MLTO"/> |
1102 | + <xs:enumeration value="DLVY"/> |
1103 | + </xs:restriction> |
1104 | + </xs:simpleType> |
1105 | + <xs:complexType name="AmountType3Choice"> |
1106 | + <xs:sequence> |
1107 | + <xs:choice> |
1108 | + <xs:element name="InstdAmt" type="ActiveOrHistoricCurrencyAndAmount"/> |
1109 | + <xs:element name="EqvtAmt" type="EquivalentAmount2"/> |
1110 | + </xs:choice> |
1111 | + </xs:sequence> |
1112 | + </xs:complexType> |
1113 | + <xs:simpleType name="AnyBICIdentifier"> |
1114 | + <xs:restriction base="xs:string"> |
1115 | + <xs:pattern value="[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}"/> |
1116 | + </xs:restriction> |
1117 | + </xs:simpleType> |
1118 | + <xs:complexType name="Authorisation1Choice"> |
1119 | + <xs:sequence> |
1120 | + <xs:choice> |
1121 | + <xs:element name="Cd" type="Authorisation1Code"/> |
1122 | + <xs:element name="Prtry" type="Max128Text"/> |
1123 | + </xs:choice> |
1124 | + </xs:sequence> |
1125 | + </xs:complexType> |
1126 | + <xs:simpleType name="Authorisation1Code"> |
1127 | + <xs:restriction base="xs:string"> |
1128 | + <xs:enumeration value="AUTH"/> |
1129 | + <xs:enumeration value="FDET"/> |
1130 | + <xs:enumeration value="FSUM"/> |
1131 | + <xs:enumeration value="ILEV"/> |
1132 | + </xs:restriction> |
1133 | + </xs:simpleType> |
1134 | + <xs:simpleType name="BICIdentifier"> |
1135 | + <xs:restriction base="xs:string"> |
1136 | + <xs:pattern value="[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}"/> |
1137 | + </xs:restriction> |
1138 | + </xs:simpleType> |
1139 | + <xs:simpleType name="BaseOneRate"> |
1140 | + <xs:restriction base="xs:decimal"> |
1141 | + <xs:fractionDigits value="10"/> |
1142 | + <xs:totalDigits value="11"/> |
1143 | + </xs:restriction> |
1144 | + </xs:simpleType> |
1145 | + <xs:simpleType name="BatchBookingIndicator"> |
1146 | + <xs:restriction base="xs:boolean"/> |
1147 | + </xs:simpleType> |
1148 | + <xs:complexType name="BranchAndFinancialInstitutionIdentification4"> |
1149 | + <xs:sequence> |
1150 | + <xs:element name="FinInstnId" type="FinancialInstitutionIdentification7"/> |
1151 | + <xs:element maxOccurs="1" minOccurs="0" name="BrnchId" type="BranchData2"/> |
1152 | + </xs:sequence> |
1153 | + </xs:complexType> |
1154 | + <xs:complexType name="BranchData2"> |
1155 | + <xs:sequence> |
1156 | + <xs:element maxOccurs="1" minOccurs="0" name="Id" type="Max35Text"/> |
1157 | + <xs:element maxOccurs="1" minOccurs="0" name="Nm" type="Max140Text"/> |
1158 | + <xs:element maxOccurs="1" minOccurs="0" name="PstlAdr" type="PostalAddress6"/> |
1159 | + </xs:sequence> |
1160 | + </xs:complexType> |
1161 | + <xs:complexType name="CashAccount16"> |
1162 | + <xs:sequence> |
1163 | + <xs:element name="Id" type="AccountIdentification4Choice"/> |
1164 | + <xs:element maxOccurs="1" minOccurs="0" name="Tp" type="CashAccountType2"/> |
1165 | + <xs:element maxOccurs="1" minOccurs="0" name="Ccy" type="ActiveOrHistoricCurrencyCode"/> |
1166 | + <xs:element maxOccurs="1" minOccurs="0" name="Nm" type="Max70Text"/> |
1167 | + </xs:sequence> |
1168 | + </xs:complexType> |
1169 | + <xs:complexType name="CashAccountType2"> |
1170 | + <xs:sequence> |
1171 | + <xs:choice> |
1172 | + <xs:element name="Cd" type="CashAccountType4Code"/> |
1173 | + <xs:element name="Prtry" type="Max35Text"/> |
1174 | + </xs:choice> |
1175 | + </xs:sequence> |
1176 | + </xs:complexType> |
1177 | + <xs:simpleType name="CashAccountType4Code"> |
1178 | + <xs:restriction base="xs:string"> |
1179 | + <xs:enumeration value="CASH"/> |
1180 | + <xs:enumeration value="CHAR"/> |
1181 | + <xs:enumeration value="COMM"/> |
1182 | + <xs:enumeration value="TAXE"/> |
1183 | + <xs:enumeration value="CISH"/> |
1184 | + <xs:enumeration value="TRAS"/> |
1185 | + <xs:enumeration value="SACC"/> |
1186 | + <xs:enumeration value="CACC"/> |
1187 | + <xs:enumeration value="SVGS"/> |
1188 | + <xs:enumeration value="ONDP"/> |
1189 | + <xs:enumeration value="MGLD"/> |
1190 | + <xs:enumeration value="NREX"/> |
1191 | + <xs:enumeration value="MOMA"/> |
1192 | + <xs:enumeration value="LOAN"/> |
1193 | + <xs:enumeration value="SLRY"/> |
1194 | + <xs:enumeration value="ODFT"/> |
1195 | + </xs:restriction> |
1196 | + </xs:simpleType> |
1197 | + <xs:complexType name="CategoryPurpose1Choice"> |
1198 | + <xs:sequence> |
1199 | + <xs:choice> |
1200 | + <xs:element name="Cd" type="ExternalCategoryPurpose1Code"/> |
1201 | + <xs:element name="Prtry" type="Max35Text"/> |
1202 | + </xs:choice> |
1203 | + </xs:sequence> |
1204 | + </xs:complexType> |
1205 | + <xs:simpleType name="ChargeBearerType1Code"> |
1206 | + <xs:restriction base="xs:string"> |
1207 | + <xs:enumeration value="DEBT"/> |
1208 | + <xs:enumeration value="CRED"/> |
1209 | + <xs:enumeration value="SHAR"/> |
1210 | + <xs:enumeration value="SLEV"/> |
1211 | + </xs:restriction> |
1212 | + </xs:simpleType> |
1213 | + <xs:complexType name="Cheque6"> |
1214 | + <xs:sequence> |
1215 | + <xs:element maxOccurs="1" minOccurs="0" name="ChqTp" type="ChequeType2Code"/> |
1216 | + <xs:element maxOccurs="1" minOccurs="0" name="ChqNb" type="Max35Text"/> |
1217 | + <xs:element maxOccurs="1" minOccurs="0" name="ChqFr" type="NameAndAddress10"/> |
1218 | + <xs:element maxOccurs="1" minOccurs="0" name="DlvryMtd" type="ChequeDeliveryMethod1Choice"/> |
1219 | + <xs:element maxOccurs="1" minOccurs="0" name="DlvrTo" type="NameAndAddress10"/> |
1220 | + <xs:element maxOccurs="1" minOccurs="0" name="InstrPrty" type="Priority2Code"/> |
1221 | + <xs:element maxOccurs="1" minOccurs="0" name="ChqMtrtyDt" type="ISODate"/> |
1222 | + <xs:element maxOccurs="1" minOccurs="0" name="FrmsCd" type="Max35Text"/> |
1223 | + <xs:element maxOccurs="2" minOccurs="0" name="MemoFld" type="Max35Text"/> |
1224 | + <xs:element maxOccurs="1" minOccurs="0" name="RgnlClrZone" type="Max35Text"/> |
1225 | + <xs:element maxOccurs="1" minOccurs="0" name="PrtLctn" type="Max35Text"/> |
1226 | + </xs:sequence> |
1227 | + </xs:complexType> |
1228 | + <xs:simpleType name="ChequeDelivery1Code"> |
1229 | + <xs:restriction base="xs:string"> |
1230 | + <xs:enumeration value="MLDB"/> |
1231 | + <xs:enumeration value="MLCD"/> |
1232 | + <xs:enumeration value="MLFA"/> |
1233 | + <xs:enumeration value="CRDB"/> |
1234 | + <xs:enumeration value="CRCD"/> |
1235 | + <xs:enumeration value="CRFA"/> |
1236 | + <xs:enumeration value="PUDB"/> |
1237 | + <xs:enumeration value="PUCD"/> |
1238 | + <xs:enumeration value="PUFA"/> |
1239 | + <xs:enumeration value="RGDB"/> |
1240 | + <xs:enumeration value="RGCD"/> |
1241 | + <xs:enumeration value="RGFA"/> |
1242 | + </xs:restriction> |
1243 | + </xs:simpleType> |
1244 | + <xs:complexType name="ChequeDeliveryMethod1Choice"> |
1245 | + <xs:sequence> |
1246 | + <xs:choice> |
1247 | + <xs:element name="Cd" type="ChequeDelivery1Code"/> |
1248 | + <xs:element name="Prtry" type="Max35Text"/> |
1249 | + </xs:choice> |
1250 | + </xs:sequence> |
1251 | + </xs:complexType> |
1252 | + <xs:simpleType name="ChequeType2Code"> |
1253 | + <xs:restriction base="xs:string"> |
1254 | + <xs:enumeration value="CCHQ"/> |
1255 | + <xs:enumeration value="CCCH"/> |
1256 | + <xs:enumeration value="BCHQ"/> |
1257 | + <xs:enumeration value="DRFT"/> |
1258 | + <xs:enumeration value="ELDR"/> |
1259 | + </xs:restriction> |
1260 | + </xs:simpleType> |
1261 | + <xs:complexType name="ClearingSystemIdentification2Choice"> |
1262 | + <xs:sequence> |
1263 | + <xs:choice> |
1264 | + <xs:element name="Cd" type="ExternalClearingSystemIdentification1Code"/> |
1265 | + <xs:element name="Prtry" type="Max35Text"/> |
1266 | + </xs:choice> |
1267 | + </xs:sequence> |
1268 | + </xs:complexType> |
1269 | + <xs:complexType name="ClearingSystemMemberIdentification2"> |
1270 | + <xs:sequence> |
1271 | + <xs:element maxOccurs="1" minOccurs="0" name="ClrSysId" type="ClearingSystemIdentification2Choice"/> |
1272 | + <xs:element name="MmbId" type="Max35Text"/> |
1273 | + </xs:sequence> |
1274 | + </xs:complexType> |
1275 | + <xs:complexType name="ContactDetails2"> |
1276 | + <xs:sequence> |
1277 | + <xs:element maxOccurs="1" minOccurs="0" name="NmPrfx" type="NamePrefix1Code"/> |
1278 | + <xs:element maxOccurs="1" minOccurs="0" name="Nm" type="Max140Text"/> |
1279 | + <xs:element maxOccurs="1" minOccurs="0" name="PhneNb" type="PhoneNumber"/> |
1280 | + <xs:element maxOccurs="1" minOccurs="0" name="MobNb" type="PhoneNumber"/> |
1281 | + <xs:element maxOccurs="1" minOccurs="0" name="FaxNb" type="PhoneNumber"/> |
1282 | + <xs:element maxOccurs="1" minOccurs="0" name="EmailAdr" type="Max2048Text"/> |
1283 | + <xs:element maxOccurs="1" minOccurs="0" name="Othr" type="Max35Text"/> |
1284 | + </xs:sequence> |
1285 | + </xs:complexType> |
1286 | + <xs:simpleType name="CountryCode"> |
1287 | + <xs:restriction base="xs:string"> |
1288 | + <xs:pattern value="[A-Z]{2,2}"/> |
1289 | + </xs:restriction> |
1290 | + </xs:simpleType> |
1291 | + <xs:simpleType name="CreditDebitCode"> |
1292 | + <xs:restriction base="xs:string"> |
1293 | + <xs:enumeration value="CRDT"/> |
1294 | + <xs:enumeration value="DBIT"/> |
1295 | + </xs:restriction> |
1296 | + </xs:simpleType> |
1297 | + <xs:complexType name="CreditTransferTransactionInformation10"> |
1298 | + <xs:sequence> |
1299 | + <xs:element name="PmtId" type="PaymentIdentification1"/> |
1300 | + <xs:element maxOccurs="1" minOccurs="0" name="PmtTpInf" type="PaymentTypeInformation19"/> |
1301 | + <xs:element name="Amt" type="AmountType3Choice"/> |
1302 | + <xs:element maxOccurs="1" minOccurs="0" name="XchgRateInf" type="ExchangeRateInformation1"/> |
1303 | + <xs:element maxOccurs="1" minOccurs="0" name="ChrgBr" type="ChargeBearerType1Code"/> |
1304 | + <xs:element maxOccurs="1" minOccurs="0" name="ChqInstr" type="Cheque6"/> |
1305 | + <xs:element maxOccurs="1" minOccurs="0" name="UltmtDbtr" type="PartyIdentification32"/> |
1306 | + <xs:element maxOccurs="1" minOccurs="0" name="IntrmyAgt1" type="BranchAndFinancialInstitutionIdentification4"/> |
1307 | + <xs:element maxOccurs="1" minOccurs="0" name="IntrmyAgt1Acct" type="CashAccount16"/> |
1308 | + <xs:element maxOccurs="1" minOccurs="0" name="IntrmyAgt2" type="BranchAndFinancialInstitutionIdentification4"/> |
1309 | + <xs:element maxOccurs="1" minOccurs="0" name="IntrmyAgt2Acct" type="CashAccount16"/> |
1310 | + <xs:element maxOccurs="1" minOccurs="0" name="IntrmyAgt3" type="BranchAndFinancialInstitutionIdentification4"/> |
1311 | + <xs:element maxOccurs="1" minOccurs="0" name="IntrmyAgt3Acct" type="CashAccount16"/> |
1312 | + <xs:element maxOccurs="1" minOccurs="0" name="CdtrAgt" type="BranchAndFinancialInstitutionIdentification4"/> |
1313 | + <xs:element maxOccurs="1" minOccurs="0" name="CdtrAgtAcct" type="CashAccount16"/> |
1314 | + <xs:element maxOccurs="1" minOccurs="0" name="Cdtr" type="PartyIdentification32"/> |
1315 | + <xs:element maxOccurs="1" minOccurs="0" name="CdtrAcct" type="CashAccount16"/> |
1316 | + <xs:element maxOccurs="1" minOccurs="0" name="UltmtCdtr" type="PartyIdentification32"/> |
1317 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="InstrForCdtrAgt" type="InstructionForCreditorAgent1"/> |
1318 | + <xs:element maxOccurs="1" minOccurs="0" name="InstrForDbtrAgt" type="Max140Text"/> |
1319 | + <xs:element maxOccurs="1" minOccurs="0" name="Purp" type="Purpose2Choice"/> |
1320 | + <xs:element maxOccurs="10" minOccurs="0" name="RgltryRptg" type="RegulatoryReporting3"/> |
1321 | + <xs:element maxOccurs="1" minOccurs="0" name="Tax" type="TaxInformation3"/> |
1322 | + <xs:element maxOccurs="10" minOccurs="0" name="RltdRmtInf" type="RemittanceLocation2"/> |
1323 | + <xs:element maxOccurs="1" minOccurs="0" name="RmtInf" type="RemittanceInformation5"/> |
1324 | + </xs:sequence> |
1325 | + </xs:complexType> |
1326 | + <xs:complexType name="CreditorReferenceInformation2"> |
1327 | + <xs:sequence> |
1328 | + <xs:element maxOccurs="1" minOccurs="0" name="Tp" type="CreditorReferenceType2"/> |
1329 | + <xs:element maxOccurs="1" minOccurs="0" name="Ref" type="Max35Text"/> |
1330 | + </xs:sequence> |
1331 | + </xs:complexType> |
1332 | + <xs:complexType name="CreditorReferenceType1Choice"> |
1333 | + <xs:sequence> |
1334 | + <xs:choice> |
1335 | + <xs:element name="Cd" type="DocumentType3Code"/> |
1336 | + <xs:element name="Prtry" type="Max35Text"/> |
1337 | + </xs:choice> |
1338 | + </xs:sequence> |
1339 | + </xs:complexType> |
1340 | + <xs:complexType name="CreditorReferenceType2"> |
1341 | + <xs:sequence> |
1342 | + <xs:element name="CdOrPrtry" type="CreditorReferenceType1Choice"/> |
1343 | + <xs:element maxOccurs="1" minOccurs="0" name="Issr" type="Max35Text"/> |
1344 | + </xs:sequence> |
1345 | + </xs:complexType> |
1346 | + <xs:complexType name="CustomerCreditTransferInitiationV03"> |
1347 | + <xs:sequence> |
1348 | + <xs:element name="GrpHdr" type="GroupHeader32"/> |
1349 | + <xs:element maxOccurs="unbounded" minOccurs="1" name="PmtInf" type="PaymentInstructionInformation3"/> |
1350 | + </xs:sequence> |
1351 | + </xs:complexType> |
1352 | + <xs:complexType name="DateAndPlaceOfBirth"> |
1353 | + <xs:sequence> |
1354 | + <xs:element name="BirthDt" type="ISODate"/> |
1355 | + <xs:element maxOccurs="1" minOccurs="0" name="PrvcOfBirth" type="Max35Text"/> |
1356 | + <xs:element name="CityOfBirth" type="Max35Text"/> |
1357 | + <xs:element name="CtryOfBirth" type="CountryCode"/> |
1358 | + </xs:sequence> |
1359 | + </xs:complexType> |
1360 | + <xs:complexType name="DatePeriodDetails"> |
1361 | + <xs:sequence> |
1362 | + <xs:element name="FrDt" type="ISODate"/> |
1363 | + <xs:element name="ToDt" type="ISODate"/> |
1364 | + </xs:sequence> |
1365 | + </xs:complexType> |
1366 | + <xs:simpleType name="DecimalNumber"> |
1367 | + <xs:restriction base="xs:decimal"> |
1368 | + <xs:fractionDigits value="17"/> |
1369 | + <xs:totalDigits value="18"/> |
1370 | + </xs:restriction> |
1371 | + </xs:simpleType> |
1372 | + <xs:complexType name="Document"> |
1373 | + <xs:sequence> |
1374 | + <xs:element name="CstmrCdtTrfInitn" type="CustomerCreditTransferInitiationV03"/> |
1375 | + </xs:sequence> |
1376 | + </xs:complexType> |
1377 | + <xs:complexType name="DocumentAdjustment1"> |
1378 | + <xs:sequence> |
1379 | + <xs:element name="Amt" type="ActiveOrHistoricCurrencyAndAmount"/> |
1380 | + <xs:element maxOccurs="1" minOccurs="0" name="CdtDbtInd" type="CreditDebitCode"/> |
1381 | + <xs:element maxOccurs="1" minOccurs="0" name="Rsn" type="Max4Text"/> |
1382 | + <xs:element maxOccurs="1" minOccurs="0" name="AddtlInf" type="Max140Text"/> |
1383 | + </xs:sequence> |
1384 | + </xs:complexType> |
1385 | + <xs:simpleType name="DocumentType3Code"> |
1386 | + <xs:restriction base="xs:string"> |
1387 | + <xs:enumeration value="RADM"/> |
1388 | + <xs:enumeration value="RPIN"/> |
1389 | + <xs:enumeration value="FXDR"/> |
1390 | + <xs:enumeration value="DISP"/> |
1391 | + <xs:enumeration value="PUOR"/> |
1392 | + <xs:enumeration value="SCOR"/> |
1393 | + </xs:restriction> |
1394 | + </xs:simpleType> |
1395 | + <xs:simpleType name="DocumentType5Code"> |
1396 | + <xs:restriction base="xs:string"> |
1397 | + <xs:enumeration value="MSIN"/> |
1398 | + <xs:enumeration value="CNFA"/> |
1399 | + <xs:enumeration value="DNFA"/> |
1400 | + <xs:enumeration value="CINV"/> |
1401 | + <xs:enumeration value="CREN"/> |
1402 | + <xs:enumeration value="DEBN"/> |
1403 | + <xs:enumeration value="HIRI"/> |
1404 | + <xs:enumeration value="SBIN"/> |
1405 | + <xs:enumeration value="CMCN"/> |
1406 | + <xs:enumeration value="SOAC"/> |
1407 | + <xs:enumeration value="DISP"/> |
1408 | + <xs:enumeration value="BOLD"/> |
1409 | + <xs:enumeration value="VCHR"/> |
1410 | + <xs:enumeration value="AROI"/> |
1411 | + <xs:enumeration value="TSUT"/> |
1412 | + </xs:restriction> |
1413 | + </xs:simpleType> |
1414 | + <xs:complexType name="EquivalentAmount2"> |
1415 | + <xs:sequence> |
1416 | + <xs:element name="Amt" type="ActiveOrHistoricCurrencyAndAmount"/> |
1417 | + <xs:element name="CcyOfTrf" type="ActiveOrHistoricCurrencyCode"/> |
1418 | + </xs:sequence> |
1419 | + </xs:complexType> |
1420 | + <xs:complexType name="ExchangeRateInformation1"> |
1421 | + <xs:sequence> |
1422 | + <xs:element maxOccurs="1" minOccurs="0" name="XchgRate" type="BaseOneRate"/> |
1423 | + <xs:element maxOccurs="1" minOccurs="0" name="RateTp" type="ExchangeRateType1Code"/> |
1424 | + <xs:element maxOccurs="1" minOccurs="0" name="CtrctId" type="Max35Text"/> |
1425 | + </xs:sequence> |
1426 | + </xs:complexType> |
1427 | + <xs:simpleType name="ExchangeRateType1Code"> |
1428 | + <xs:restriction base="xs:string"> |
1429 | + <xs:enumeration value="SPOT"/> |
1430 | + <xs:enumeration value="SALE"/> |
1431 | + <xs:enumeration value="AGRD"/> |
1432 | + </xs:restriction> |
1433 | + </xs:simpleType> |
1434 | + <xs:simpleType name="ExternalAccountIdentification1Code"> |
1435 | + <xs:restriction base="xs:string"> |
1436 | + <xs:minLength value="1"/> |
1437 | + <xs:maxLength value="4"/> |
1438 | + </xs:restriction> |
1439 | + </xs:simpleType> |
1440 | + <xs:simpleType name="ExternalCategoryPurpose1Code"> |
1441 | + <xs:restriction base="xs:string"> |
1442 | + <xs:minLength value="1"/> |
1443 | + <xs:maxLength value="4"/> |
1444 | + </xs:restriction> |
1445 | + </xs:simpleType> |
1446 | + <xs:simpleType name="ExternalClearingSystemIdentification1Code"> |
1447 | + <xs:restriction base="xs:string"> |
1448 | + <xs:minLength value="1"/> |
1449 | + <xs:maxLength value="5"/> |
1450 | + </xs:restriction> |
1451 | + </xs:simpleType> |
1452 | + <xs:simpleType name="ExternalFinancialInstitutionIdentification1Code"> |
1453 | + <xs:restriction base="xs:string"> |
1454 | + <xs:minLength value="1"/> |
1455 | + <xs:maxLength value="4"/> |
1456 | + </xs:restriction> |
1457 | + </xs:simpleType> |
1458 | + <xs:simpleType name="ExternalLocalInstrument1Code"> |
1459 | + <xs:restriction base="xs:string"> |
1460 | + <xs:minLength value="1"/> |
1461 | + <xs:maxLength value="35"/> |
1462 | + </xs:restriction> |
1463 | + </xs:simpleType> |
1464 | + <xs:simpleType name="ExternalOrganisationIdentification1Code"> |
1465 | + <xs:restriction base="xs:string"> |
1466 | + <xs:minLength value="1"/> |
1467 | + <xs:maxLength value="4"/> |
1468 | + </xs:restriction> |
1469 | + </xs:simpleType> |
1470 | + <xs:simpleType name="ExternalPersonIdentification1Code"> |
1471 | + <xs:restriction base="xs:string"> |
1472 | + <xs:minLength value="1"/> |
1473 | + <xs:maxLength value="4"/> |
1474 | + </xs:restriction> |
1475 | + </xs:simpleType> |
1476 | + <xs:simpleType name="ExternalPurpose1Code"> |
1477 | + <xs:restriction base="xs:string"> |
1478 | + <xs:minLength value="1"/> |
1479 | + <xs:maxLength value="4"/> |
1480 | + </xs:restriction> |
1481 | + </xs:simpleType> |
1482 | + <xs:simpleType name="ExternalServiceLevel1Code"> |
1483 | + <xs:restriction base="xs:string"> |
1484 | + <xs:minLength value="1"/> |
1485 | + <xs:maxLength value="4"/> |
1486 | + </xs:restriction> |
1487 | + </xs:simpleType> |
1488 | + <xs:complexType name="FinancialIdentificationSchemeName1Choice"> |
1489 | + <xs:sequence> |
1490 | + <xs:choice> |
1491 | + <xs:element name="Cd" type="ExternalFinancialInstitutionIdentification1Code"/> |
1492 | + <xs:element name="Prtry" type="Max35Text"/> |
1493 | + </xs:choice> |
1494 | + </xs:sequence> |
1495 | + </xs:complexType> |
1496 | + <xs:complexType name="FinancialInstitutionIdentification7"> |
1497 | + <xs:sequence> |
1498 | + <xs:element maxOccurs="1" minOccurs="0" name="BIC" type="BICIdentifier"/> |
1499 | + <xs:element maxOccurs="1" minOccurs="0" name="ClrSysMmbId" type="ClearingSystemMemberIdentification2"/> |
1500 | + <xs:element maxOccurs="1" minOccurs="0" name="Nm" type="Max140Text"/> |
1501 | + <xs:element maxOccurs="1" minOccurs="0" name="PstlAdr" type="PostalAddress6"/> |
1502 | + <xs:element maxOccurs="1" minOccurs="0" name="Othr" type="GenericFinancialIdentification1"/> |
1503 | + </xs:sequence> |
1504 | + </xs:complexType> |
1505 | + <xs:complexType name="GenericAccountIdentification1"> |
1506 | + <xs:sequence> |
1507 | + <xs:element name="Id" type="Max34Text"/> |
1508 | + <xs:element maxOccurs="1" minOccurs="0" name="SchmeNm" type="AccountSchemeName1Choice"/> |
1509 | + <xs:element maxOccurs="1" minOccurs="0" name="Issr" type="Max35Text"/> |
1510 | + </xs:sequence> |
1511 | + </xs:complexType> |
1512 | + <xs:complexType name="GenericFinancialIdentification1"> |
1513 | + <xs:sequence> |
1514 | + <xs:element name="Id" type="Max35Text"/> |
1515 | + <xs:element maxOccurs="1" minOccurs="0" name="SchmeNm" type="FinancialIdentificationSchemeName1Choice"/> |
1516 | + <xs:element maxOccurs="1" minOccurs="0" name="Issr" type="Max35Text"/> |
1517 | + </xs:sequence> |
1518 | + </xs:complexType> |
1519 | + <xs:complexType name="GenericOrganisationIdentification1"> |
1520 | + <xs:sequence> |
1521 | + <xs:element name="Id" type="Max35Text"/> |
1522 | + <xs:element maxOccurs="1" minOccurs="0" name="SchmeNm" type="OrganisationIdentificationSchemeName1Choice"/> |
1523 | + <xs:element maxOccurs="1" minOccurs="0" name="Issr" type="Max35Text"/> |
1524 | + </xs:sequence> |
1525 | + </xs:complexType> |
1526 | + <xs:complexType name="GenericPersonIdentification1"> |
1527 | + <xs:sequence> |
1528 | + <xs:element name="Id" type="Max35Text"/> |
1529 | + <xs:element maxOccurs="1" minOccurs="0" name="SchmeNm" type="PersonIdentificationSchemeName1Choice"/> |
1530 | + <xs:element maxOccurs="1" minOccurs="0" name="Issr" type="Max35Text"/> |
1531 | + </xs:sequence> |
1532 | + </xs:complexType> |
1533 | + <xs:complexType name="GroupHeader32"> |
1534 | + <xs:sequence> |
1535 | + <xs:element name="MsgId" type="Max35Text"/> |
1536 | + <xs:element name="CreDtTm" type="ISODateTime"/> |
1537 | + <xs:element maxOccurs="2" minOccurs="0" name="Authstn" type="Authorisation1Choice"/> |
1538 | + <xs:element name="NbOfTxs" type="Max15NumericText"/> |
1539 | + <xs:element maxOccurs="1" minOccurs="0" name="CtrlSum" type="DecimalNumber"/> |
1540 | + <xs:element name="InitgPty" type="PartyIdentification32"/> |
1541 | + <xs:element maxOccurs="1" minOccurs="0" name="FwdgAgt" type="BranchAndFinancialInstitutionIdentification4"/> |
1542 | + </xs:sequence> |
1543 | + </xs:complexType> |
1544 | + <xs:simpleType name="IBAN2007Identifier"> |
1545 | + <xs:restriction base="xs:string"> |
1546 | + <xs:pattern value="[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}"/> |
1547 | + </xs:restriction> |
1548 | + </xs:simpleType> |
1549 | + <xs:simpleType name="ISODate"> |
1550 | + <xs:restriction base="xs:date"/> |
1551 | + </xs:simpleType> |
1552 | + <xs:simpleType name="ISODateTime"> |
1553 | + <xs:restriction base="xs:dateTime"/> |
1554 | + </xs:simpleType> |
1555 | + <xs:simpleType name="Instruction3Code"> |
1556 | + <xs:restriction base="xs:string"> |
1557 | + <xs:enumeration value="CHQB"/> |
1558 | + <xs:enumeration value="HOLD"/> |
1559 | + <xs:enumeration value="PHOB"/> |
1560 | + <xs:enumeration value="TELB"/> |
1561 | + </xs:restriction> |
1562 | + </xs:simpleType> |
1563 | + <xs:complexType name="InstructionForCreditorAgent1"> |
1564 | + <xs:sequence> |
1565 | + <xs:element maxOccurs="1" minOccurs="0" name="Cd" type="Instruction3Code"/> |
1566 | + <xs:element maxOccurs="1" minOccurs="0" name="InstrInf" type="Max140Text"/> |
1567 | + </xs:sequence> |
1568 | + </xs:complexType> |
1569 | + <xs:complexType name="LocalInstrument2Choice"> |
1570 | + <xs:sequence> |
1571 | + <xs:choice> |
1572 | + <xs:element name="Cd" type="ExternalLocalInstrument1Code"/> |
1573 | + <xs:element name="Prtry" type="Max35Text"/> |
1574 | + </xs:choice> |
1575 | + </xs:sequence> |
1576 | + </xs:complexType> |
1577 | + <xs:simpleType name="Max10Text"> |
1578 | + <xs:restriction base="xs:string"> |
1579 | + <xs:minLength value="1"/> |
1580 | + <xs:maxLength value="10"/> |
1581 | + </xs:restriction> |
1582 | + </xs:simpleType> |
1583 | + <xs:simpleType name="Max128Text"> |
1584 | + <xs:restriction base="xs:string"> |
1585 | + <xs:minLength value="1"/> |
1586 | + <xs:maxLength value="128"/> |
1587 | + </xs:restriction> |
1588 | + </xs:simpleType> |
1589 | + <xs:simpleType name="Max140Text"> |
1590 | + <xs:restriction base="xs:string"> |
1591 | + <xs:minLength value="1"/> |
1592 | + <xs:maxLength value="140"/> |
1593 | + </xs:restriction> |
1594 | + </xs:simpleType> |
1595 | + <xs:simpleType name="Max15NumericText"> |
1596 | + <xs:restriction base="xs:string"> |
1597 | + <xs:pattern value="[0-9]{1,15}"/> |
1598 | + </xs:restriction> |
1599 | + </xs:simpleType> |
1600 | + <xs:simpleType name="Max16Text"> |
1601 | + <xs:restriction base="xs:string"> |
1602 | + <xs:minLength value="1"/> |
1603 | + <xs:maxLength value="16"/> |
1604 | + </xs:restriction> |
1605 | + </xs:simpleType> |
1606 | + <xs:simpleType name="Max2048Text"> |
1607 | + <xs:restriction base="xs:string"> |
1608 | + <xs:minLength value="1"/> |
1609 | + <xs:maxLength value="2048"/> |
1610 | + </xs:restriction> |
1611 | + </xs:simpleType> |
1612 | + <xs:simpleType name="Max34Text"> |
1613 | + <xs:restriction base="xs:string"> |
1614 | + <xs:minLength value="1"/> |
1615 | + <xs:maxLength value="34"/> |
1616 | + </xs:restriction> |
1617 | + </xs:simpleType> |
1618 | + <xs:simpleType name="Max35Text"> |
1619 | + <xs:restriction base="xs:string"> |
1620 | + <xs:minLength value="1"/> |
1621 | + <xs:maxLength value="35"/> |
1622 | + </xs:restriction> |
1623 | + </xs:simpleType> |
1624 | + <xs:simpleType name="Max4Text"> |
1625 | + <xs:restriction base="xs:string"> |
1626 | + <xs:minLength value="1"/> |
1627 | + <xs:maxLength value="4"/> |
1628 | + </xs:restriction> |
1629 | + </xs:simpleType> |
1630 | + <xs:simpleType name="Max70Text"> |
1631 | + <xs:restriction base="xs:string"> |
1632 | + <xs:minLength value="1"/> |
1633 | + <xs:maxLength value="70"/> |
1634 | + </xs:restriction> |
1635 | + </xs:simpleType> |
1636 | + <xs:complexType name="NameAndAddress10"> |
1637 | + <xs:sequence> |
1638 | + <xs:element name="Nm" type="Max140Text"/> |
1639 | + <xs:element name="Adr" type="PostalAddress6"/> |
1640 | + </xs:sequence> |
1641 | + </xs:complexType> |
1642 | + <xs:simpleType name="NamePrefix1Code"> |
1643 | + <xs:restriction base="xs:string"> |
1644 | + <xs:enumeration value="DOCT"/> |
1645 | + <xs:enumeration value="MIST"/> |
1646 | + <xs:enumeration value="MISS"/> |
1647 | + <xs:enumeration value="MADM"/> |
1648 | + </xs:restriction> |
1649 | + </xs:simpleType> |
1650 | + <xs:simpleType name="Number"> |
1651 | + <xs:restriction base="xs:decimal"> |
1652 | + <xs:fractionDigits value="0"/> |
1653 | + <xs:totalDigits value="18"/> |
1654 | + </xs:restriction> |
1655 | + </xs:simpleType> |
1656 | + <xs:complexType name="OrganisationIdentification4"> |
1657 | + <xs:sequence> |
1658 | + <xs:element maxOccurs="1" minOccurs="0" name="BICOrBEI" type="AnyBICIdentifier"/> |
1659 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="Othr" type="GenericOrganisationIdentification1"/> |
1660 | + </xs:sequence> |
1661 | + </xs:complexType> |
1662 | + <xs:complexType name="OrganisationIdentificationSchemeName1Choice"> |
1663 | + <xs:sequence> |
1664 | + <xs:choice> |
1665 | + <xs:element name="Cd" type="ExternalOrganisationIdentification1Code"/> |
1666 | + <xs:element name="Prtry" type="Max35Text"/> |
1667 | + </xs:choice> |
1668 | + </xs:sequence> |
1669 | + </xs:complexType> |
1670 | + <xs:complexType name="Party6Choice"> |
1671 | + <xs:sequence> |
1672 | + <xs:choice> |
1673 | + <xs:element name="OrgId" type="OrganisationIdentification4"/> |
1674 | + <xs:element name="PrvtId" type="PersonIdentification5"/> |
1675 | + </xs:choice> |
1676 | + </xs:sequence> |
1677 | + </xs:complexType> |
1678 | + <xs:complexType name="PartyIdentification32"> |
1679 | + <xs:sequence> |
1680 | + <xs:element maxOccurs="1" minOccurs="0" name="Nm" type="Max140Text"/> |
1681 | + <xs:element maxOccurs="1" minOccurs="0" name="PstlAdr" type="PostalAddress6"/> |
1682 | + <xs:element maxOccurs="1" minOccurs="0" name="Id" type="Party6Choice"/> |
1683 | + <xs:element maxOccurs="1" minOccurs="0" name="CtryOfRes" type="CountryCode"/> |
1684 | + <xs:element maxOccurs="1" minOccurs="0" name="CtctDtls" type="ContactDetails2"/> |
1685 | + </xs:sequence> |
1686 | + </xs:complexType> |
1687 | + <xs:complexType name="PaymentIdentification1"> |
1688 | + <xs:sequence> |
1689 | + <xs:element maxOccurs="1" minOccurs="0" name="InstrId" type="Max35Text"/> |
1690 | + <xs:element name="EndToEndId" type="Max35Text"/> |
1691 | + </xs:sequence> |
1692 | + </xs:complexType> |
1693 | + <xs:complexType name="PaymentInstructionInformation3"> |
1694 | + <xs:sequence> |
1695 | + <xs:element name="PmtInfId" type="Max35Text"/> |
1696 | + <xs:element name="PmtMtd" type="PaymentMethod3Code"/> |
1697 | + <xs:element maxOccurs="1" minOccurs="0" name="BtchBookg" type="BatchBookingIndicator"/> |
1698 | + <xs:element maxOccurs="1" minOccurs="0" name="NbOfTxs" type="Max15NumericText"/> |
1699 | + <xs:element maxOccurs="1" minOccurs="0" name="CtrlSum" type="DecimalNumber"/> |
1700 | + <xs:element maxOccurs="1" minOccurs="0" name="PmtTpInf" type="PaymentTypeInformation19"/> |
1701 | + <xs:element name="ReqdExctnDt" type="ISODate"/> |
1702 | + <xs:element maxOccurs="1" minOccurs="0" name="PoolgAdjstmntDt" type="ISODate"/> |
1703 | + <xs:element name="Dbtr" type="PartyIdentification32"/> |
1704 | + <xs:element name="DbtrAcct" type="CashAccount16"/> |
1705 | + <xs:element name="DbtrAgt" type="BranchAndFinancialInstitutionIdentification4"/> |
1706 | + <xs:element maxOccurs="1" minOccurs="0" name="DbtrAgtAcct" type="CashAccount16"/> |
1707 | + <xs:element maxOccurs="1" minOccurs="0" name="UltmtDbtr" type="PartyIdentification32"/> |
1708 | + <xs:element maxOccurs="1" minOccurs="0" name="ChrgBr" type="ChargeBearerType1Code"/> |
1709 | + <xs:element maxOccurs="1" minOccurs="0" name="ChrgsAcct" type="CashAccount16"/> |
1710 | + <xs:element maxOccurs="1" minOccurs="0" name="ChrgsAcctAgt" type="BranchAndFinancialInstitutionIdentification4"/> |
1711 | + <xs:element maxOccurs="unbounded" minOccurs="1" name="CdtTrfTxInf" type="CreditTransferTransactionInformation10"/> |
1712 | + </xs:sequence> |
1713 | + </xs:complexType> |
1714 | + <xs:simpleType name="PaymentMethod3Code"> |
1715 | + <xs:restriction base="xs:string"> |
1716 | + <xs:enumeration value="CHK"/> |
1717 | + <xs:enumeration value="TRF"/> |
1718 | + <xs:enumeration value="TRA"/> |
1719 | + </xs:restriction> |
1720 | + </xs:simpleType> |
1721 | + <xs:complexType name="PaymentTypeInformation19"> |
1722 | + <xs:sequence> |
1723 | + <xs:element maxOccurs="1" minOccurs="0" name="InstrPrty" type="Priority2Code"/> |
1724 | + <xs:element maxOccurs="1" minOccurs="0" name="SvcLvl" type="ServiceLevel8Choice"/> |
1725 | + <xs:element maxOccurs="1" minOccurs="0" name="LclInstrm" type="LocalInstrument2Choice"/> |
1726 | + <xs:element maxOccurs="1" minOccurs="0" name="CtgyPurp" type="CategoryPurpose1Choice"/> |
1727 | + </xs:sequence> |
1728 | + </xs:complexType> |
1729 | + <xs:simpleType name="PercentageRate"> |
1730 | + <xs:restriction base="xs:decimal"> |
1731 | + <xs:fractionDigits value="10"/> |
1732 | + <xs:totalDigits value="11"/> |
1733 | + </xs:restriction> |
1734 | + </xs:simpleType> |
1735 | + <xs:complexType name="PersonIdentification5"> |
1736 | + <xs:sequence> |
1737 | + <xs:element maxOccurs="1" minOccurs="0" name="DtAndPlcOfBirth" type="DateAndPlaceOfBirth"/> |
1738 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="Othr" type="GenericPersonIdentification1"/> |
1739 | + </xs:sequence> |
1740 | + </xs:complexType> |
1741 | + <xs:complexType name="PersonIdentificationSchemeName1Choice"> |
1742 | + <xs:sequence> |
1743 | + <xs:choice> |
1744 | + <xs:element name="Cd" type="ExternalPersonIdentification1Code"/> |
1745 | + <xs:element name="Prtry" type="Max35Text"/> |
1746 | + </xs:choice> |
1747 | + </xs:sequence> |
1748 | + </xs:complexType> |
1749 | + <xs:simpleType name="PhoneNumber"> |
1750 | + <xs:restriction base="xs:string"> |
1751 | + <xs:pattern value="\+[0-9]{1,3}-[0-9()+\-]{1,30}"/> |
1752 | + </xs:restriction> |
1753 | + </xs:simpleType> |
1754 | + <xs:complexType name="PostalAddress6"> |
1755 | + <xs:sequence> |
1756 | + <xs:element maxOccurs="1" minOccurs="0" name="AdrTp" type="AddressType2Code"/> |
1757 | + <xs:element maxOccurs="1" minOccurs="0" name="Dept" type="Max70Text"/> |
1758 | + <xs:element maxOccurs="1" minOccurs="0" name="SubDept" type="Max70Text"/> |
1759 | + <xs:element maxOccurs="1" minOccurs="0" name="StrtNm" type="Max70Text"/> |
1760 | + <xs:element maxOccurs="1" minOccurs="0" name="BldgNb" type="Max16Text"/> |
1761 | + <xs:element maxOccurs="1" minOccurs="0" name="PstCd" type="Max16Text"/> |
1762 | + <xs:element maxOccurs="1" minOccurs="0" name="TwnNm" type="Max35Text"/> |
1763 | + <xs:element maxOccurs="1" minOccurs="0" name="CtrySubDvsn" type="Max35Text"/> |
1764 | + <xs:element maxOccurs="1" minOccurs="0" name="Ctry" type="CountryCode"/> |
1765 | + <xs:element maxOccurs="7" minOccurs="0" name="AdrLine" type="Max70Text"/> |
1766 | + </xs:sequence> |
1767 | + </xs:complexType> |
1768 | + <xs:simpleType name="Priority2Code"> |
1769 | + <xs:restriction base="xs:string"> |
1770 | + <xs:enumeration value="HIGH"/> |
1771 | + <xs:enumeration value="NORM"/> |
1772 | + </xs:restriction> |
1773 | + </xs:simpleType> |
1774 | + <xs:complexType name="Purpose2Choice"> |
1775 | + <xs:sequence> |
1776 | + <xs:choice> |
1777 | + <xs:element name="Cd" type="ExternalPurpose1Code"/> |
1778 | + <xs:element name="Prtry" type="Max35Text"/> |
1779 | + </xs:choice> |
1780 | + </xs:sequence> |
1781 | + </xs:complexType> |
1782 | + <xs:complexType name="ReferredDocumentInformation3"> |
1783 | + <xs:sequence> |
1784 | + <xs:element maxOccurs="1" minOccurs="0" name="Tp" type="ReferredDocumentType2"/> |
1785 | + <xs:element maxOccurs="1" minOccurs="0" name="Nb" type="Max35Text"/> |
1786 | + <xs:element maxOccurs="1" minOccurs="0" name="RltdDt" type="ISODate"/> |
1787 | + </xs:sequence> |
1788 | + </xs:complexType> |
1789 | + <xs:complexType name="ReferredDocumentType1Choice"> |
1790 | + <xs:sequence> |
1791 | + <xs:choice> |
1792 | + <xs:element name="Cd" type="DocumentType5Code"/> |
1793 | + <xs:element name="Prtry" type="Max35Text"/> |
1794 | + </xs:choice> |
1795 | + </xs:sequence> |
1796 | + </xs:complexType> |
1797 | + <xs:complexType name="ReferredDocumentType2"> |
1798 | + <xs:sequence> |
1799 | + <xs:element name="CdOrPrtry" type="ReferredDocumentType1Choice"/> |
1800 | + <xs:element maxOccurs="1" minOccurs="0" name="Issr" type="Max35Text"/> |
1801 | + </xs:sequence> |
1802 | + </xs:complexType> |
1803 | + <xs:complexType name="RegulatoryAuthority2"> |
1804 | + <xs:sequence> |
1805 | + <xs:element maxOccurs="1" minOccurs="0" name="Nm" type="Max140Text"/> |
1806 | + <xs:element maxOccurs="1" minOccurs="0" name="Ctry" type="CountryCode"/> |
1807 | + </xs:sequence> |
1808 | + </xs:complexType> |
1809 | + <xs:complexType name="RegulatoryReporting3"> |
1810 | + <xs:sequence> |
1811 | + <xs:element maxOccurs="1" minOccurs="0" name="DbtCdtRptgInd" type="RegulatoryReportingType1Code"/> |
1812 | + <xs:element maxOccurs="1" minOccurs="0" name="Authrty" type="RegulatoryAuthority2"/> |
1813 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="Dtls" type="StructuredRegulatoryReporting3"/> |
1814 | + </xs:sequence> |
1815 | + </xs:complexType> |
1816 | + <xs:simpleType name="RegulatoryReportingType1Code"> |
1817 | + <xs:restriction base="xs:string"> |
1818 | + <xs:enumeration value="CRED"/> |
1819 | + <xs:enumeration value="DEBT"/> |
1820 | + <xs:enumeration value="BOTH"/> |
1821 | + </xs:restriction> |
1822 | + </xs:simpleType> |
1823 | + <xs:complexType name="RemittanceAmount1"> |
1824 | + <xs:sequence> |
1825 | + <xs:element maxOccurs="1" minOccurs="0" name="DuePyblAmt" type="ActiveOrHistoricCurrencyAndAmount"/> |
1826 | + <xs:element maxOccurs="1" minOccurs="0" name="DscntApldAmt" type="ActiveOrHistoricCurrencyAndAmount"/> |
1827 | + <xs:element maxOccurs="1" minOccurs="0" name="CdtNoteAmt" type="ActiveOrHistoricCurrencyAndAmount"/> |
1828 | + <xs:element maxOccurs="1" minOccurs="0" name="TaxAmt" type="ActiveOrHistoricCurrencyAndAmount"/> |
1829 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="AdjstmntAmtAndRsn" type="DocumentAdjustment1"/> |
1830 | + <xs:element maxOccurs="1" minOccurs="0" name="RmtdAmt" type="ActiveOrHistoricCurrencyAndAmount"/> |
1831 | + </xs:sequence> |
1832 | + </xs:complexType> |
1833 | + <xs:complexType name="RemittanceInformation5"> |
1834 | + <xs:sequence> |
1835 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="Ustrd" type="Max140Text"/> |
1836 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="Strd" type="StructuredRemittanceInformation7"/> |
1837 | + </xs:sequence> |
1838 | + </xs:complexType> |
1839 | + <xs:complexType name="RemittanceLocation2"> |
1840 | + <xs:sequence> |
1841 | + <xs:element maxOccurs="1" minOccurs="0" name="RmtId" type="Max35Text"/> |
1842 | + <xs:element maxOccurs="1" minOccurs="0" name="RmtLctnMtd" type="RemittanceLocationMethod2Code"/> |
1843 | + <xs:element maxOccurs="1" minOccurs="0" name="RmtLctnElctrncAdr" type="Max2048Text"/> |
1844 | + <xs:element maxOccurs="1" minOccurs="0" name="RmtLctnPstlAdr" type="NameAndAddress10"/> |
1845 | + </xs:sequence> |
1846 | + </xs:complexType> |
1847 | + <xs:simpleType name="RemittanceLocationMethod2Code"> |
1848 | + <xs:restriction base="xs:string"> |
1849 | + <xs:enumeration value="FAXI"/> |
1850 | + <xs:enumeration value="EDIC"/> |
1851 | + <xs:enumeration value="URID"/> |
1852 | + <xs:enumeration value="EMAL"/> |
1853 | + <xs:enumeration value="POST"/> |
1854 | + <xs:enumeration value="SMSM"/> |
1855 | + </xs:restriction> |
1856 | + </xs:simpleType> |
1857 | + <xs:complexType name="ServiceLevel8Choice"> |
1858 | + <xs:sequence> |
1859 | + <xs:choice> |
1860 | + <xs:element name="Cd" type="ExternalServiceLevel1Code"/> |
1861 | + <xs:element name="Prtry" type="Max35Text"/> |
1862 | + </xs:choice> |
1863 | + </xs:sequence> |
1864 | + </xs:complexType> |
1865 | + <xs:complexType name="StructuredRegulatoryReporting3"> |
1866 | + <xs:sequence> |
1867 | + <xs:element maxOccurs="1" minOccurs="0" name="Tp" type="Max35Text"/> |
1868 | + <xs:element maxOccurs="1" minOccurs="0" name="Dt" type="ISODate"/> |
1869 | + <xs:element maxOccurs="1" minOccurs="0" name="Ctry" type="CountryCode"/> |
1870 | + <xs:element maxOccurs="1" minOccurs="0" name="Cd" type="Max10Text"/> |
1871 | + <xs:element maxOccurs="1" minOccurs="0" name="Amt" type="ActiveOrHistoricCurrencyAndAmount"/> |
1872 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="Inf" type="Max35Text"/> |
1873 | + </xs:sequence> |
1874 | + </xs:complexType> |
1875 | + <xs:complexType name="StructuredRemittanceInformation7"> |
1876 | + <xs:sequence> |
1877 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="RfrdDocInf" type="ReferredDocumentInformation3"/> |
1878 | + <xs:element maxOccurs="1" minOccurs="0" name="RfrdDocAmt" type="RemittanceAmount1"/> |
1879 | + <xs:element maxOccurs="1" minOccurs="0" name="CdtrRefInf" type="CreditorReferenceInformation2"/> |
1880 | + <xs:element maxOccurs="1" minOccurs="0" name="Invcr" type="PartyIdentification32"/> |
1881 | + <xs:element maxOccurs="1" minOccurs="0" name="Invcee" type="PartyIdentification32"/> |
1882 | + <xs:element maxOccurs="3" minOccurs="0" name="AddtlRmtInf" type="Max140Text"/> |
1883 | + </xs:sequence> |
1884 | + </xs:complexType> |
1885 | + <xs:complexType name="TaxAmount1"> |
1886 | + <xs:sequence> |
1887 | + <xs:element maxOccurs="1" minOccurs="0" name="Rate" type="PercentageRate"/> |
1888 | + <xs:element maxOccurs="1" minOccurs="0" name="TaxblBaseAmt" type="ActiveOrHistoricCurrencyAndAmount"/> |
1889 | + <xs:element maxOccurs="1" minOccurs="0" name="TtlAmt" type="ActiveOrHistoricCurrencyAndAmount"/> |
1890 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="Dtls" type="TaxRecordDetails1"/> |
1891 | + </xs:sequence> |
1892 | + </xs:complexType> |
1893 | + <xs:complexType name="TaxAuthorisation1"> |
1894 | + <xs:sequence> |
1895 | + <xs:element maxOccurs="1" minOccurs="0" name="Titl" type="Max35Text"/> |
1896 | + <xs:element maxOccurs="1" minOccurs="0" name="Nm" type="Max140Text"/> |
1897 | + </xs:sequence> |
1898 | + </xs:complexType> |
1899 | + <xs:complexType name="TaxInformation3"> |
1900 | + <xs:sequence> |
1901 | + <xs:element maxOccurs="1" minOccurs="0" name="Cdtr" type="TaxParty1"/> |
1902 | + <xs:element maxOccurs="1" minOccurs="0" name="Dbtr" type="TaxParty2"/> |
1903 | + <xs:element maxOccurs="1" minOccurs="0" name="AdmstnZn" type="Max35Text"/> |
1904 | + <xs:element maxOccurs="1" minOccurs="0" name="RefNb" type="Max140Text"/> |
1905 | + <xs:element maxOccurs="1" minOccurs="0" name="Mtd" type="Max35Text"/> |
1906 | + <xs:element maxOccurs="1" minOccurs="0" name="TtlTaxblBaseAmt" type="ActiveOrHistoricCurrencyAndAmount"/> |
1907 | + <xs:element maxOccurs="1" minOccurs="0" name="TtlTaxAmt" type="ActiveOrHistoricCurrencyAndAmount"/> |
1908 | + <xs:element maxOccurs="1" minOccurs="0" name="Dt" type="ISODate"/> |
1909 | + <xs:element maxOccurs="1" minOccurs="0" name="SeqNb" type="Number"/> |
1910 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="Rcrd" type="TaxRecord1"/> |
1911 | + </xs:sequence> |
1912 | + </xs:complexType> |
1913 | + <xs:complexType name="TaxParty1"> |
1914 | + <xs:sequence> |
1915 | + <xs:element maxOccurs="1" minOccurs="0" name="TaxId" type="Max35Text"/> |
1916 | + <xs:element maxOccurs="1" minOccurs="0" name="RegnId" type="Max35Text"/> |
1917 | + <xs:element maxOccurs="1" minOccurs="0" name="TaxTp" type="Max35Text"/> |
1918 | + </xs:sequence> |
1919 | + </xs:complexType> |
1920 | + <xs:complexType name="TaxParty2"> |
1921 | + <xs:sequence> |
1922 | + <xs:element maxOccurs="1" minOccurs="0" name="TaxId" type="Max35Text"/> |
1923 | + <xs:element maxOccurs="1" minOccurs="0" name="RegnId" type="Max35Text"/> |
1924 | + <xs:element maxOccurs="1" minOccurs="0" name="TaxTp" type="Max35Text"/> |
1925 | + <xs:element maxOccurs="1" minOccurs="0" name="Authstn" type="TaxAuthorisation1"/> |
1926 | + </xs:sequence> |
1927 | + </xs:complexType> |
1928 | + <xs:complexType name="TaxPeriod1"> |
1929 | + <xs:sequence> |
1930 | + <xs:element maxOccurs="1" minOccurs="0" name="Yr" type="ISODate"/> |
1931 | + <xs:element maxOccurs="1" minOccurs="0" name="Tp" type="TaxRecordPeriod1Code"/> |
1932 | + <xs:element maxOccurs="1" minOccurs="0" name="FrToDt" type="DatePeriodDetails"/> |
1933 | + </xs:sequence> |
1934 | + </xs:complexType> |
1935 | + <xs:complexType name="TaxRecord1"> |
1936 | + <xs:sequence> |
1937 | + <xs:element maxOccurs="1" minOccurs="0" name="Tp" type="Max35Text"/> |
1938 | + <xs:element maxOccurs="1" minOccurs="0" name="Ctgy" type="Max35Text"/> |
1939 | + <xs:element maxOccurs="1" minOccurs="0" name="CtgyDtls" type="Max35Text"/> |
1940 | + <xs:element maxOccurs="1" minOccurs="0" name="DbtrSts" type="Max35Text"/> |
1941 | + <xs:element maxOccurs="1" minOccurs="0" name="CertId" type="Max35Text"/> |
1942 | + <xs:element maxOccurs="1" minOccurs="0" name="FrmsCd" type="Max35Text"/> |
1943 | + <xs:element maxOccurs="1" minOccurs="0" name="Prd" type="TaxPeriod1"/> |
1944 | + <xs:element maxOccurs="1" minOccurs="0" name="TaxAmt" type="TaxAmount1"/> |
1945 | + <xs:element maxOccurs="1" minOccurs="0" name="AddtlInf" type="Max140Text"/> |
1946 | + </xs:sequence> |
1947 | + </xs:complexType> |
1948 | + <xs:complexType name="TaxRecordDetails1"> |
1949 | + <xs:sequence> |
1950 | + <xs:element maxOccurs="1" minOccurs="0" name="Prd" type="TaxPeriod1"/> |
1951 | + <xs:element name="Amt" type="ActiveOrHistoricCurrencyAndAmount"/> |
1952 | + </xs:sequence> |
1953 | + </xs:complexType> |
1954 | + <xs:simpleType name="TaxRecordPeriod1Code"> |
1955 | + <xs:restriction base="xs:string"> |
1956 | + <xs:enumeration value="MM01"/> |
1957 | + <xs:enumeration value="MM02"/> |
1958 | + <xs:enumeration value="MM03"/> |
1959 | + <xs:enumeration value="MM04"/> |
1960 | + <xs:enumeration value="MM05"/> |
1961 | + <xs:enumeration value="MM06"/> |
1962 | + <xs:enumeration value="MM07"/> |
1963 | + <xs:enumeration value="MM08"/> |
1964 | + <xs:enumeration value="MM09"/> |
1965 | + <xs:enumeration value="MM10"/> |
1966 | + <xs:enumeration value="MM11"/> |
1967 | + <xs:enumeration value="MM12"/> |
1968 | + <xs:enumeration value="QTR1"/> |
1969 | + <xs:enumeration value="QTR2"/> |
1970 | + <xs:enumeration value="QTR3"/> |
1971 | + <xs:enumeration value="QTR4"/> |
1972 | + <xs:enumeration value="HLF1"/> |
1973 | + <xs:enumeration value="HLF2"/> |
1974 | + </xs:restriction> |
1975 | + </xs:simpleType> |
1976 | +</xs:schema> |
1977 | |
1978 | === added file 'account_banking_sepa_credit_transfer/data/pain.001.001.04.xsd' |
1979 | --- account_banking_sepa_credit_transfer/data/pain.001.001.04.xsd 1970-01-01 00:00:00 +0000 |
1980 | +++ account_banking_sepa_credit_transfer/data/pain.001.001.04.xsd 2013-06-06 08:07:29 +0000 |
1981 | @@ -0,0 +1,968 @@ |
1982 | +<?xml version="1.0" encoding="UTF-8"?> |
1983 | +<!--Generated by SWIFTStandards Workstation (build:R7.1.30.4) on 2012 Jun 07 20:47:19--> |
1984 | +<xs:schema elementFormDefault="qualified" targetNamespace="urn:iso:std:iso:20022:tech:xsd:pain.001.001.04" xmlns="urn:iso:std:iso:20022:tech:xsd:pain.001.001.04" xmlns:xs="http://www.w3.org/2001/XMLSchema"> |
1985 | + <xs:element name="Document" type="Document"/> |
1986 | + <xs:complexType name="AccountIdentification4Choice"> |
1987 | + <xs:sequence> |
1988 | + <xs:choice> |
1989 | + <xs:element name="IBAN" type="IBAN2007Identifier"/> |
1990 | + <xs:element name="Othr" type="GenericAccountIdentification1"/> |
1991 | + </xs:choice> |
1992 | + </xs:sequence> |
1993 | + </xs:complexType> |
1994 | + <xs:complexType name="AccountSchemeName1Choice"> |
1995 | + <xs:sequence> |
1996 | + <xs:choice> |
1997 | + <xs:element name="Cd" type="ExternalAccountIdentification1Code"/> |
1998 | + <xs:element name="Prtry" type="Max35Text"/> |
1999 | + </xs:choice> |
2000 | + </xs:sequence> |
2001 | + </xs:complexType> |
2002 | + <xs:simpleType name="ActiveOrHistoricCurrencyAndAmount_SimpleType"> |
2003 | + <xs:restriction base="xs:decimal"> |
2004 | + <xs:fractionDigits value="5"/> |
2005 | + <xs:totalDigits value="18"/> |
2006 | + <xs:minInclusive value="0"/> |
2007 | + </xs:restriction> |
2008 | + </xs:simpleType> |
2009 | + <xs:complexType name="ActiveOrHistoricCurrencyAndAmount"> |
2010 | + <xs:simpleContent> |
2011 | + <xs:extension base="ActiveOrHistoricCurrencyAndAmount_SimpleType"> |
2012 | + <xs:attribute name="Ccy" type="ActiveOrHistoricCurrencyCode" use="required"/> |
2013 | + </xs:extension> |
2014 | + </xs:simpleContent> |
2015 | + </xs:complexType> |
2016 | + <xs:simpleType name="ActiveOrHistoricCurrencyCode"> |
2017 | + <xs:restriction base="xs:string"> |
2018 | + <xs:pattern value="[A-Z]{3,3}"/> |
2019 | + </xs:restriction> |
2020 | + </xs:simpleType> |
2021 | + <xs:simpleType name="AddressType2Code"> |
2022 | + <xs:restriction base="xs:string"> |
2023 | + <xs:enumeration value="ADDR"/> |
2024 | + <xs:enumeration value="PBOX"/> |
2025 | + <xs:enumeration value="HOME"/> |
2026 | + <xs:enumeration value="BIZZ"/> |
2027 | + <xs:enumeration value="MLTO"/> |
2028 | + <xs:enumeration value="DLVY"/> |
2029 | + </xs:restriction> |
2030 | + </xs:simpleType> |
2031 | + <xs:complexType name="AmountType3Choice"> |
2032 | + <xs:sequence> |
2033 | + <xs:choice> |
2034 | + <xs:element name="InstdAmt" type="ActiveOrHistoricCurrencyAndAmount"/> |
2035 | + <xs:element name="EqvtAmt" type="EquivalentAmount2"/> |
2036 | + </xs:choice> |
2037 | + </xs:sequence> |
2038 | + </xs:complexType> |
2039 | + <xs:simpleType name="AnyBICIdentifier"> |
2040 | + <xs:restriction base="xs:string"> |
2041 | + <xs:pattern value="[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}"/> |
2042 | + </xs:restriction> |
2043 | + </xs:simpleType> |
2044 | + <xs:complexType name="Authorisation1Choice"> |
2045 | + <xs:sequence> |
2046 | + <xs:choice> |
2047 | + <xs:element name="Cd" type="Authorisation1Code"/> |
2048 | + <xs:element name="Prtry" type="Max128Text"/> |
2049 | + </xs:choice> |
2050 | + </xs:sequence> |
2051 | + </xs:complexType> |
2052 | + <xs:simpleType name="Authorisation1Code"> |
2053 | + <xs:restriction base="xs:string"> |
2054 | + <xs:enumeration value="AUTH"/> |
2055 | + <xs:enumeration value="FDET"/> |
2056 | + <xs:enumeration value="FSUM"/> |
2057 | + <xs:enumeration value="ILEV"/> |
2058 | + </xs:restriction> |
2059 | + </xs:simpleType> |
2060 | + <xs:simpleType name="BICFIIdentifier"> |
2061 | + <xs:restriction base="xs:string"> |
2062 | + <xs:pattern value="[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}"/> |
2063 | + </xs:restriction> |
2064 | + </xs:simpleType> |
2065 | + <xs:simpleType name="BaseOneRate"> |
2066 | + <xs:restriction base="xs:decimal"> |
2067 | + <xs:fractionDigits value="10"/> |
2068 | + <xs:totalDigits value="11"/> |
2069 | + </xs:restriction> |
2070 | + </xs:simpleType> |
2071 | + <xs:simpleType name="BatchBookingIndicator"> |
2072 | + <xs:restriction base="xs:boolean"/> |
2073 | + </xs:simpleType> |
2074 | + <xs:complexType name="BranchAndFinancialInstitutionIdentification5"> |
2075 | + <xs:sequence> |
2076 | + <xs:element name="FinInstnId" type="FinancialInstitutionIdentification8"/> |
2077 | + <xs:element maxOccurs="1" minOccurs="0" name="BrnchId" type="BranchData2"/> |
2078 | + </xs:sequence> |
2079 | + </xs:complexType> |
2080 | + <xs:complexType name="BranchData2"> |
2081 | + <xs:sequence> |
2082 | + <xs:element maxOccurs="1" minOccurs="0" name="Id" type="Max35Text"/> |
2083 | + <xs:element maxOccurs="1" minOccurs="0" name="Nm" type="Max140Text"/> |
2084 | + <xs:element maxOccurs="1" minOccurs="0" name="PstlAdr" type="PostalAddress6"/> |
2085 | + </xs:sequence> |
2086 | + </xs:complexType> |
2087 | + <xs:complexType name="CashAccount24"> |
2088 | + <xs:sequence> |
2089 | + <xs:element name="Id" type="AccountIdentification4Choice"/> |
2090 | + <xs:element maxOccurs="1" minOccurs="0" name="Tp" type="CashAccountType2Choice"/> |
2091 | + <xs:element maxOccurs="1" minOccurs="0" name="Ccy" type="ActiveOrHistoricCurrencyCode"/> |
2092 | + <xs:element maxOccurs="1" minOccurs="0" name="Nm" type="Max70Text"/> |
2093 | + </xs:sequence> |
2094 | + </xs:complexType> |
2095 | + <xs:complexType name="CashAccountType2Choice"> |
2096 | + <xs:sequence> |
2097 | + <xs:choice> |
2098 | + <xs:element name="Cd" type="ExternalCashAccountType1Code"/> |
2099 | + <xs:element name="Prtry" type="Max35Text"/> |
2100 | + </xs:choice> |
2101 | + </xs:sequence> |
2102 | + </xs:complexType> |
2103 | + <xs:complexType name="CategoryPurpose1Choice"> |
2104 | + <xs:sequence> |
2105 | + <xs:choice> |
2106 | + <xs:element name="Cd" type="ExternalCategoryPurpose1Code"/> |
2107 | + <xs:element name="Prtry" type="Max35Text"/> |
2108 | + </xs:choice> |
2109 | + </xs:sequence> |
2110 | + </xs:complexType> |
2111 | + <xs:simpleType name="ChargeBearerType1Code"> |
2112 | + <xs:restriction base="xs:string"> |
2113 | + <xs:enumeration value="DEBT"/> |
2114 | + <xs:enumeration value="CRED"/> |
2115 | + <xs:enumeration value="SHAR"/> |
2116 | + <xs:enumeration value="SLEV"/> |
2117 | + </xs:restriction> |
2118 | + </xs:simpleType> |
2119 | + <xs:complexType name="Cheque7"> |
2120 | + <xs:sequence> |
2121 | + <xs:element maxOccurs="1" minOccurs="0" name="ChqTp" type="ChequeType2Code"/> |
2122 | + <xs:element maxOccurs="1" minOccurs="0" name="ChqNb" type="Max35Text"/> |
2123 | + <xs:element maxOccurs="1" minOccurs="0" name="ChqFr" type="NameAndAddress10"/> |
2124 | + <xs:element maxOccurs="1" minOccurs="0" name="DlvryMtd" type="ChequeDeliveryMethod1Choice"/> |
2125 | + <xs:element maxOccurs="1" minOccurs="0" name="DlvrTo" type="NameAndAddress10"/> |
2126 | + <xs:element maxOccurs="1" minOccurs="0" name="InstrPrty" type="Priority2Code"/> |
2127 | + <xs:element maxOccurs="1" minOccurs="0" name="ChqMtrtyDt" type="ISODate"/> |
2128 | + <xs:element maxOccurs="1" minOccurs="0" name="FrmsCd" type="Max35Text"/> |
2129 | + <xs:element maxOccurs="2" minOccurs="0" name="MemoFld" type="Max35Text"/> |
2130 | + <xs:element maxOccurs="1" minOccurs="0" name="RgnlClrZone" type="Max35Text"/> |
2131 | + <xs:element maxOccurs="1" minOccurs="0" name="PrtLctn" type="Max35Text"/> |
2132 | + <xs:element maxOccurs="5" minOccurs="0" name="Sgntr" type="Max70Text"/> |
2133 | + </xs:sequence> |
2134 | + </xs:complexType> |
2135 | + <xs:simpleType name="ChequeDelivery1Code"> |
2136 | + <xs:restriction base="xs:string"> |
2137 | + <xs:enumeration value="MLDB"/> |
2138 | + <xs:enumeration value="MLCD"/> |
2139 | + <xs:enumeration value="MLFA"/> |
2140 | + <xs:enumeration value="CRDB"/> |
2141 | + <xs:enumeration value="CRCD"/> |
2142 | + <xs:enumeration value="CRFA"/> |
2143 | + <xs:enumeration value="PUDB"/> |
2144 | + <xs:enumeration value="PUCD"/> |
2145 | + <xs:enumeration value="PUFA"/> |
2146 | + <xs:enumeration value="RGDB"/> |
2147 | + <xs:enumeration value="RGCD"/> |
2148 | + <xs:enumeration value="RGFA"/> |
2149 | + </xs:restriction> |
2150 | + </xs:simpleType> |
2151 | + <xs:complexType name="ChequeDeliveryMethod1Choice"> |
2152 | + <xs:sequence> |
2153 | + <xs:choice> |
2154 | + <xs:element name="Cd" type="ChequeDelivery1Code"/> |
2155 | + <xs:element name="Prtry" type="Max35Text"/> |
2156 | + </xs:choice> |
2157 | + </xs:sequence> |
2158 | + </xs:complexType> |
2159 | + <xs:simpleType name="ChequeType2Code"> |
2160 | + <xs:restriction base="xs:string"> |
2161 | + <xs:enumeration value="CCHQ"/> |
2162 | + <xs:enumeration value="CCCH"/> |
2163 | + <xs:enumeration value="BCHQ"/> |
2164 | + <xs:enumeration value="DRFT"/> |
2165 | + <xs:enumeration value="ELDR"/> |
2166 | + </xs:restriction> |
2167 | + </xs:simpleType> |
2168 | + <xs:complexType name="ClearingSystemIdentification2Choice"> |
2169 | + <xs:sequence> |
2170 | + <xs:choice> |
2171 | + <xs:element name="Cd" type="ExternalClearingSystemIdentification1Code"/> |
2172 | + <xs:element name="Prtry" type="Max35Text"/> |
2173 | + </xs:choice> |
2174 | + </xs:sequence> |
2175 | + </xs:complexType> |
2176 | + <xs:complexType name="ClearingSystemMemberIdentification2"> |
2177 | + <xs:sequence> |
2178 | + <xs:element maxOccurs="1" minOccurs="0" name="ClrSysId" type="ClearingSystemIdentification2Choice"/> |
2179 | + <xs:element name="MmbId" type="Max35Text"/> |
2180 | + </xs:sequence> |
2181 | + </xs:complexType> |
2182 | + <xs:complexType name="ContactDetails2"> |
2183 | + <xs:sequence> |
2184 | + <xs:element maxOccurs="1" minOccurs="0" name="NmPrfx" type="NamePrefix1Code"/> |
2185 | + <xs:element maxOccurs="1" minOccurs="0" name="Nm" type="Max140Text"/> |
2186 | + <xs:element maxOccurs="1" minOccurs="0" name="PhneNb" type="PhoneNumber"/> |
2187 | + <xs:element maxOccurs="1" minOccurs="0" name="MobNb" type="PhoneNumber"/> |
2188 | + <xs:element maxOccurs="1" minOccurs="0" name="FaxNb" type="PhoneNumber"/> |
2189 | + <xs:element maxOccurs="1" minOccurs="0" name="EmailAdr" type="Max2048Text"/> |
2190 | + <xs:element maxOccurs="1" minOccurs="0" name="Othr" type="Max35Text"/> |
2191 | + </xs:sequence> |
2192 | + </xs:complexType> |
2193 | + <xs:simpleType name="CountryCode"> |
2194 | + <xs:restriction base="xs:string"> |
2195 | + <xs:pattern value="[A-Z]{2,2}"/> |
2196 | + </xs:restriction> |
2197 | + </xs:simpleType> |
2198 | + <xs:simpleType name="CreditDebitCode"> |
2199 | + <xs:restriction base="xs:string"> |
2200 | + <xs:enumeration value="CRDT"/> |
2201 | + <xs:enumeration value="DBIT"/> |
2202 | + </xs:restriction> |
2203 | + </xs:simpleType> |
2204 | + <xs:complexType name="CreditTransferTransaction1"> |
2205 | + <xs:sequence> |
2206 | + <xs:element name="PmtId" type="PaymentIdentification1"/> |
2207 | + <xs:element maxOccurs="1" minOccurs="0" name="PmtTpInf" type="PaymentTypeInformation19"/> |
2208 | + <xs:element name="Amt" type="AmountType3Choice"/> |
2209 | + <xs:element maxOccurs="1" minOccurs="0" name="XchgRateInf" type="ExchangeRate1"/> |
2210 | + <xs:element maxOccurs="1" minOccurs="0" name="ChrgBr" type="ChargeBearerType1Code"/> |
2211 | + <xs:element maxOccurs="1" minOccurs="0" name="ChqInstr" type="Cheque7"/> |
2212 | + <xs:element maxOccurs="1" minOccurs="0" name="UltmtDbtr" type="PartyIdentification43"/> |
2213 | + <xs:element maxOccurs="1" minOccurs="0" name="IntrmyAgt1" type="BranchAndFinancialInstitutionIdentification5"/> |
2214 | + <xs:element maxOccurs="1" minOccurs="0" name="IntrmyAgt1Acct" type="CashAccount24"/> |
2215 | + <xs:element maxOccurs="1" minOccurs="0" name="IntrmyAgt2" type="BranchAndFinancialInstitutionIdentification5"/> |
2216 | + <xs:element maxOccurs="1" minOccurs="0" name="IntrmyAgt2Acct" type="CashAccount24"/> |
2217 | + <xs:element maxOccurs="1" minOccurs="0" name="IntrmyAgt3" type="BranchAndFinancialInstitutionIdentification5"/> |
2218 | + <xs:element maxOccurs="1" minOccurs="0" name="IntrmyAgt3Acct" type="CashAccount24"/> |
2219 | + <xs:element maxOccurs="1" minOccurs="0" name="CdtrAgt" type="BranchAndFinancialInstitutionIdentification5"/> |
2220 | + <xs:element maxOccurs="1" minOccurs="0" name="CdtrAgtAcct" type="CashAccount24"/> |
2221 | + <xs:element maxOccurs="1" minOccurs="0" name="Cdtr" type="PartyIdentification43"/> |
2222 | + <xs:element maxOccurs="1" minOccurs="0" name="CdtrAcct" type="CashAccount24"/> |
2223 | + <xs:element maxOccurs="1" minOccurs="0" name="UltmtCdtr" type="PartyIdentification43"/> |
2224 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="InstrForCdtrAgt" type="InstructionForCreditorAgent1"/> |
2225 | + <xs:element maxOccurs="1" minOccurs="0" name="InstrForDbtrAgt" type="Max140Text"/> |
2226 | + <xs:element maxOccurs="1" minOccurs="0" name="Purp" type="Purpose2Choice"/> |
2227 | + <xs:element maxOccurs="10" minOccurs="0" name="RgltryRptg" type="RegulatoryReporting3"/> |
2228 | + <xs:element maxOccurs="1" minOccurs="0" name="Tax" type="TaxInformation3"/> |
2229 | + <xs:element maxOccurs="10" minOccurs="0" name="RltdRmtInf" type="RemittanceLocation2"/> |
2230 | + <xs:element maxOccurs="1" minOccurs="0" name="RmtInf" type="RemittanceInformation7"/> |
2231 | + </xs:sequence> |
2232 | + </xs:complexType> |
2233 | + <xs:complexType name="CreditorReferenceInformation2"> |
2234 | + <xs:sequence> |
2235 | + <xs:element maxOccurs="1" minOccurs="0" name="Tp" type="CreditorReferenceType2"/> |
2236 | + <xs:element maxOccurs="1" minOccurs="0" name="Ref" type="Max35Text"/> |
2237 | + </xs:sequence> |
2238 | + </xs:complexType> |
2239 | + <xs:complexType name="CreditorReferenceType1Choice"> |
2240 | + <xs:sequence> |
2241 | + <xs:choice> |
2242 | + <xs:element name="Cd" type="DocumentType3Code"/> |
2243 | + <xs:element name="Prtry" type="Max35Text"/> |
2244 | + </xs:choice> |
2245 | + </xs:sequence> |
2246 | + </xs:complexType> |
2247 | + <xs:complexType name="CreditorReferenceType2"> |
2248 | + <xs:sequence> |
2249 | + <xs:element name="CdOrPrtry" type="CreditorReferenceType1Choice"/> |
2250 | + <xs:element maxOccurs="1" minOccurs="0" name="Issr" type="Max35Text"/> |
2251 | + </xs:sequence> |
2252 | + </xs:complexType> |
2253 | + <xs:complexType name="CustomerCreditTransferInitiationV04"> |
2254 | + <xs:sequence> |
2255 | + <xs:element name="GrpHdr" type="GroupHeader48"/> |
2256 | + <xs:element maxOccurs="unbounded" minOccurs="1" name="PmtInf" type="PaymentInstruction6"/> |
2257 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="SplmtryData" type="SupplementaryData1"/> |
2258 | + </xs:sequence> |
2259 | + </xs:complexType> |
2260 | + <xs:complexType name="DateAndPlaceOfBirth"> |
2261 | + <xs:sequence> |
2262 | + <xs:element name="BirthDt" type="ISODate"/> |
2263 | + <xs:element maxOccurs="1" minOccurs="0" name="PrvcOfBirth" type="Max35Text"/> |
2264 | + <xs:element name="CityOfBirth" type="Max35Text"/> |
2265 | + <xs:element name="CtryOfBirth" type="CountryCode"/> |
2266 | + </xs:sequence> |
2267 | + </xs:complexType> |
2268 | + <xs:complexType name="DatePeriodDetails"> |
2269 | + <xs:sequence> |
2270 | + <xs:element name="FrDt" type="ISODate"/> |
2271 | + <xs:element name="ToDt" type="ISODate"/> |
2272 | + </xs:sequence> |
2273 | + </xs:complexType> |
2274 | + <xs:simpleType name="DecimalNumber"> |
2275 | + <xs:restriction base="xs:decimal"> |
2276 | + <xs:fractionDigits value="17"/> |
2277 | + <xs:totalDigits value="18"/> |
2278 | + </xs:restriction> |
2279 | + </xs:simpleType> |
2280 | + <xs:complexType name="DiscountAmountAndType1"> |
2281 | + <xs:sequence> |
2282 | + <xs:element maxOccurs="1" minOccurs="0" name="Tp" type="DiscountAmountType1Choice"/> |
2283 | + <xs:element name="Amt" type="ActiveOrHistoricCurrencyAndAmount"/> |
2284 | + </xs:sequence> |
2285 | + </xs:complexType> |
2286 | + <xs:complexType name="DiscountAmountType1Choice"> |
2287 | + <xs:sequence> |
2288 | + <xs:choice> |
2289 | + <xs:element name="Cd" type="ExternalDiscountAmountType1Code"/> |
2290 | + <xs:element name="Prtry" type="Max35Text"/> |
2291 | + </xs:choice> |
2292 | + </xs:sequence> |
2293 | + </xs:complexType> |
2294 | + <xs:complexType name="Document"> |
2295 | + <xs:sequence> |
2296 | + <xs:element name="CstmrCdtTrfInitn" type="CustomerCreditTransferInitiationV04"/> |
2297 | + </xs:sequence> |
2298 | + </xs:complexType> |
2299 | + <xs:complexType name="DocumentAdjustment1"> |
2300 | + <xs:sequence> |
2301 | + <xs:element name="Amt" type="ActiveOrHistoricCurrencyAndAmount"/> |
2302 | + <xs:element maxOccurs="1" minOccurs="0" name="CdtDbtInd" type="CreditDebitCode"/> |
2303 | + <xs:element maxOccurs="1" minOccurs="0" name="Rsn" type="Max4Text"/> |
2304 | + <xs:element maxOccurs="1" minOccurs="0" name="AddtlInf" type="Max140Text"/> |
2305 | + </xs:sequence> |
2306 | + </xs:complexType> |
2307 | + <xs:simpleType name="DocumentType3Code"> |
2308 | + <xs:restriction base="xs:string"> |
2309 | + <xs:enumeration value="RADM"/> |
2310 | + <xs:enumeration value="RPIN"/> |
2311 | + <xs:enumeration value="FXDR"/> |
2312 | + <xs:enumeration value="DISP"/> |
2313 | + <xs:enumeration value="PUOR"/> |
2314 | + <xs:enumeration value="SCOR"/> |
2315 | + </xs:restriction> |
2316 | + </xs:simpleType> |
2317 | + <xs:simpleType name="DocumentType5Code"> |
2318 | + <xs:restriction base="xs:string"> |
2319 | + <xs:enumeration value="MSIN"/> |
2320 | + <xs:enumeration value="CNFA"/> |
2321 | + <xs:enumeration value="DNFA"/> |
2322 | + <xs:enumeration value="CINV"/> |
2323 | + <xs:enumeration value="CREN"/> |
2324 | + <xs:enumeration value="DEBN"/> |
2325 | + <xs:enumeration value="HIRI"/> |
2326 | + <xs:enumeration value="SBIN"/> |
2327 | + <xs:enumeration value="CMCN"/> |
2328 | + <xs:enumeration value="SOAC"/> |
2329 | + <xs:enumeration value="DISP"/> |
2330 | + <xs:enumeration value="BOLD"/> |
2331 | + <xs:enumeration value="VCHR"/> |
2332 | + <xs:enumeration value="AROI"/> |
2333 | + <xs:enumeration value="TSUT"/> |
2334 | + </xs:restriction> |
2335 | + </xs:simpleType> |
2336 | + <xs:complexType name="EquivalentAmount2"> |
2337 | + <xs:sequence> |
2338 | + <xs:element name="Amt" type="ActiveOrHistoricCurrencyAndAmount"/> |
2339 | + <xs:element name="CcyOfTrf" type="ActiveOrHistoricCurrencyCode"/> |
2340 | + </xs:sequence> |
2341 | + </xs:complexType> |
2342 | + <xs:complexType name="ExchangeRate1"> |
2343 | + <xs:sequence> |
2344 | + <xs:element maxOccurs="1" minOccurs="0" name="UnitCcy" type="ActiveOrHistoricCurrencyCode"/> |
2345 | + <xs:element maxOccurs="1" minOccurs="0" name="XchgRate" type="BaseOneRate"/> |
2346 | + <xs:element maxOccurs="1" minOccurs="0" name="RateTp" type="ExchangeRateType1Code"/> |
2347 | + <xs:element maxOccurs="1" minOccurs="0" name="CtrctId" type="Max35Text"/> |
2348 | + </xs:sequence> |
2349 | + </xs:complexType> |
2350 | + <xs:simpleType name="ExchangeRateType1Code"> |
2351 | + <xs:restriction base="xs:string"> |
2352 | + <xs:enumeration value="SPOT"/> |
2353 | + <xs:enumeration value="SALE"/> |
2354 | + <xs:enumeration value="AGRD"/> |
2355 | + </xs:restriction> |
2356 | + </xs:simpleType> |
2357 | + <xs:simpleType name="ExternalAccountIdentification1Code"> |
2358 | + <xs:restriction base="xs:string"> |
2359 | + <xs:minLength value="1"/> |
2360 | + <xs:maxLength value="4"/> |
2361 | + </xs:restriction> |
2362 | + </xs:simpleType> |
2363 | + <xs:simpleType name="ExternalCashAccountType1Code"> |
2364 | + <xs:restriction base="xs:string"> |
2365 | + <xs:minLength value="1"/> |
2366 | + <xs:maxLength value="4"/> |
2367 | + </xs:restriction> |
2368 | + </xs:simpleType> |
2369 | + <xs:simpleType name="ExternalCategoryPurpose1Code"> |
2370 | + <xs:restriction base="xs:string"> |
2371 | + <xs:minLength value="1"/> |
2372 | + <xs:maxLength value="4"/> |
2373 | + </xs:restriction> |
2374 | + </xs:simpleType> |
2375 | + <xs:simpleType name="ExternalClearingSystemIdentification1Code"> |
2376 | + <xs:restriction base="xs:string"> |
2377 | + <xs:minLength value="1"/> |
2378 | + <xs:maxLength value="5"/> |
2379 | + </xs:restriction> |
2380 | + </xs:simpleType> |
2381 | + <xs:simpleType name="ExternalDiscountAmountType1Code"> |
2382 | + <xs:restriction base="xs:string"> |
2383 | + <xs:minLength value="1"/> |
2384 | + <xs:maxLength value="4"/> |
2385 | + </xs:restriction> |
2386 | + </xs:simpleType> |
2387 | + <xs:simpleType name="ExternalFinancialInstitutionIdentification1Code"> |
2388 | + <xs:restriction base="xs:string"> |
2389 | + <xs:minLength value="1"/> |
2390 | + <xs:maxLength value="4"/> |
2391 | + </xs:restriction> |
2392 | + </xs:simpleType> |
2393 | + <xs:simpleType name="ExternalLocalInstrument1Code"> |
2394 | + <xs:restriction base="xs:string"> |
2395 | + <xs:minLength value="1"/> |
2396 | + <xs:maxLength value="35"/> |
2397 | + </xs:restriction> |
2398 | + </xs:simpleType> |
2399 | + <xs:simpleType name="ExternalOrganisationIdentification1Code"> |
2400 | + <xs:restriction base="xs:string"> |
2401 | + <xs:minLength value="1"/> |
2402 | + <xs:maxLength value="4"/> |
2403 | + </xs:restriction> |
2404 | + </xs:simpleType> |
2405 | + <xs:simpleType name="ExternalPersonIdentification1Code"> |
2406 | + <xs:restriction base="xs:string"> |
2407 | + <xs:minLength value="1"/> |
2408 | + <xs:maxLength value="4"/> |
2409 | + </xs:restriction> |
2410 | + </xs:simpleType> |
2411 | + <xs:simpleType name="ExternalPurpose1Code"> |
2412 | + <xs:restriction base="xs:string"> |
2413 | + <xs:minLength value="1"/> |
2414 | + <xs:maxLength value="4"/> |
2415 | + </xs:restriction> |
2416 | + </xs:simpleType> |
2417 | + <xs:simpleType name="ExternalServiceLevel1Code"> |
2418 | + <xs:restriction base="xs:string"> |
2419 | + <xs:minLength value="1"/> |
2420 | + <xs:maxLength value="4"/> |
2421 | + </xs:restriction> |
2422 | + </xs:simpleType> |
2423 | + <xs:simpleType name="ExternalTaxAmountType1Code"> |
2424 | + <xs:restriction base="xs:string"> |
2425 | + <xs:minLength value="1"/> |
2426 | + <xs:maxLength value="4"/> |
2427 | + </xs:restriction> |
2428 | + </xs:simpleType> |
2429 | + <xs:complexType name="FinancialIdentificationSchemeName1Choice"> |
2430 | + <xs:sequence> |
2431 | + <xs:choice> |
2432 | + <xs:element name="Cd" type="ExternalFinancialInstitutionIdentification1Code"/> |
2433 | + <xs:element name="Prtry" type="Max35Text"/> |
2434 | + </xs:choice> |
2435 | + </xs:sequence> |
2436 | + </xs:complexType> |
2437 | + <xs:complexType name="FinancialInstitutionIdentification8"> |
2438 | + <xs:sequence> |
2439 | + <xs:element maxOccurs="1" minOccurs="0" name="BICFI" type="BICFIIdentifier"/> |
2440 | + <xs:element maxOccurs="1" minOccurs="0" name="ClrSysMmbId" type="ClearingSystemMemberIdentification2"/> |
2441 | + <xs:element maxOccurs="1" minOccurs="0" name="Nm" type="Max140Text"/> |
2442 | + <xs:element maxOccurs="1" minOccurs="0" name="PstlAdr" type="PostalAddress6"/> |
2443 | + <xs:element maxOccurs="1" minOccurs="0" name="Othr" type="GenericFinancialIdentification1"/> |
2444 | + </xs:sequence> |
2445 | + </xs:complexType> |
2446 | + <xs:complexType name="GenericAccountIdentification1"> |
2447 | + <xs:sequence> |
2448 | + <xs:element name="Id" type="Max34Text"/> |
2449 | + <xs:element maxOccurs="1" minOccurs="0" name="SchmeNm" type="AccountSchemeName1Choice"/> |
2450 | + <xs:element maxOccurs="1" minOccurs="0" name="Issr" type="Max35Text"/> |
2451 | + </xs:sequence> |
2452 | + </xs:complexType> |
2453 | + <xs:complexType name="GenericFinancialIdentification1"> |
2454 | + <xs:sequence> |
2455 | + <xs:element name="Id" type="Max35Text"/> |
2456 | + <xs:element maxOccurs="1" minOccurs="0" name="SchmeNm" type="FinancialIdentificationSchemeName1Choice"/> |
2457 | + <xs:element maxOccurs="1" minOccurs="0" name="Issr" type="Max35Text"/> |
2458 | + </xs:sequence> |
2459 | + </xs:complexType> |
2460 | + <xs:complexType name="GenericOrganisationIdentification1"> |
2461 | + <xs:sequence> |
2462 | + <xs:element name="Id" type="Max35Text"/> |
2463 | + <xs:element maxOccurs="1" minOccurs="0" name="SchmeNm" type="OrganisationIdentificationSchemeName1Choice"/> |
2464 | + <xs:element maxOccurs="1" minOccurs="0" name="Issr" type="Max35Text"/> |
2465 | + </xs:sequence> |
2466 | + </xs:complexType> |
2467 | + <xs:complexType name="GenericPersonIdentification1"> |
2468 | + <xs:sequence> |
2469 | + <xs:element name="Id" type="Max35Text"/> |
2470 | + <xs:element maxOccurs="1" minOccurs="0" name="SchmeNm" type="PersonIdentificationSchemeName1Choice"/> |
2471 | + <xs:element maxOccurs="1" minOccurs="0" name="Issr" type="Max35Text"/> |
2472 | + </xs:sequence> |
2473 | + </xs:complexType> |
2474 | + <xs:complexType name="GroupHeader48"> |
2475 | + <xs:sequence> |
2476 | + <xs:element name="MsgId" type="Max35Text"/> |
2477 | + <xs:element name="CreDtTm" type="ISODateTime"/> |
2478 | + <xs:element maxOccurs="2" minOccurs="0" name="Authstn" type="Authorisation1Choice"/> |
2479 | + <xs:element name="NbOfTxs" type="Max15NumericText"/> |
2480 | + <xs:element maxOccurs="1" minOccurs="0" name="CtrlSum" type="DecimalNumber"/> |
2481 | + <xs:element name="InitgPty" type="PartyIdentification43"/> |
2482 | + <xs:element maxOccurs="1" minOccurs="0" name="FwdgAgt" type="BranchAndFinancialInstitutionIdentification5"/> |
2483 | + </xs:sequence> |
2484 | + </xs:complexType> |
2485 | + <xs:simpleType name="IBAN2007Identifier"> |
2486 | + <xs:restriction base="xs:string"> |
2487 | + <xs:pattern value="[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}"/> |
2488 | + </xs:restriction> |
2489 | + </xs:simpleType> |
2490 | + <xs:simpleType name="ISODate"> |
2491 | + <xs:restriction base="xs:date"/> |
2492 | + </xs:simpleType> |
2493 | + <xs:simpleType name="ISODateTime"> |
2494 | + <xs:restriction base="xs:dateTime"/> |
2495 | + </xs:simpleType> |
2496 | + <xs:simpleType name="Instruction3Code"> |
2497 | + <xs:restriction base="xs:string"> |
2498 | + <xs:enumeration value="CHQB"/> |
2499 | + <xs:enumeration value="HOLD"/> |
2500 | + <xs:enumeration value="PHOB"/> |
2501 | + <xs:enumeration value="TELB"/> |
2502 | + </xs:restriction> |
2503 | + </xs:simpleType> |
2504 | + <xs:complexType name="InstructionForCreditorAgent1"> |
2505 | + <xs:sequence> |
2506 | + <xs:element maxOccurs="1" minOccurs="0" name="Cd" type="Instruction3Code"/> |
2507 | + <xs:element maxOccurs="1" minOccurs="0" name="InstrInf" type="Max140Text"/> |
2508 | + </xs:sequence> |
2509 | + </xs:complexType> |
2510 | + <xs:complexType name="LocalInstrument2Choice"> |
2511 | + <xs:sequence> |
2512 | + <xs:choice> |
2513 | + <xs:element name="Cd" type="ExternalLocalInstrument1Code"/> |
2514 | + <xs:element name="Prtry" type="Max35Text"/> |
2515 | + </xs:choice> |
2516 | + </xs:sequence> |
2517 | + </xs:complexType> |
2518 | + <xs:simpleType name="Max10Text"> |
2519 | + <xs:restriction base="xs:string"> |
2520 | + <xs:minLength value="1"/> |
2521 | + <xs:maxLength value="10"/> |
2522 | + </xs:restriction> |
2523 | + </xs:simpleType> |
2524 | + <xs:simpleType name="Max128Text"> |
2525 | + <xs:restriction base="xs:string"> |
2526 | + <xs:minLength value="1"/> |
2527 | + <xs:maxLength value="128"/> |
2528 | + </xs:restriction> |
2529 | + </xs:simpleType> |
2530 | + <xs:simpleType name="Max140Text"> |
2531 | + <xs:restriction base="xs:string"> |
2532 | + <xs:minLength value="1"/> |
2533 | + <xs:maxLength value="140"/> |
2534 | + </xs:restriction> |
2535 | + </xs:simpleType> |
2536 | + <xs:simpleType name="Max15NumericText"> |
2537 | + <xs:restriction base="xs:string"> |
2538 | + <xs:pattern value="[0-9]{1,15}"/> |
2539 | + </xs:restriction> |
2540 | + </xs:simpleType> |
2541 | + <xs:simpleType name="Max16Text"> |
2542 | + <xs:restriction base="xs:string"> |
2543 | + <xs:minLength value="1"/> |
2544 | + <xs:maxLength value="16"/> |
2545 | + </xs:restriction> |
2546 | + </xs:simpleType> |
2547 | + <xs:simpleType name="Max2048Text"> |
2548 | + <xs:restriction base="xs:string"> |
2549 | + <xs:minLength value="1"/> |
2550 | + <xs:maxLength value="2048"/> |
2551 | + </xs:restriction> |
2552 | + </xs:simpleType> |
2553 | + <xs:simpleType name="Max34Text"> |
2554 | + <xs:restriction base="xs:string"> |
2555 | + <xs:minLength value="1"/> |
2556 | + <xs:maxLength value="34"/> |
2557 | + </xs:restriction> |
2558 | + </xs:simpleType> |
2559 | + <xs:simpleType name="Max350Text"> |
2560 | + <xs:restriction base="xs:string"> |
2561 | + <xs:minLength value="1"/> |
2562 | + <xs:maxLength value="350"/> |
2563 | + </xs:restriction> |
2564 | + </xs:simpleType> |
2565 | + <xs:simpleType name="Max35Text"> |
2566 | + <xs:restriction base="xs:string"> |
2567 | + <xs:minLength value="1"/> |
2568 | + <xs:maxLength value="35"/> |
2569 | + </xs:restriction> |
2570 | + </xs:simpleType> |
2571 | + <xs:simpleType name="Max4Text"> |
2572 | + <xs:restriction base="xs:string"> |
2573 | + <xs:minLength value="1"/> |
2574 | + <xs:maxLength value="4"/> |
2575 | + </xs:restriction> |
2576 | + </xs:simpleType> |
2577 | + <xs:simpleType name="Max70Text"> |
2578 | + <xs:restriction base="xs:string"> |
2579 | + <xs:minLength value="1"/> |
2580 | + <xs:maxLength value="70"/> |
2581 | + </xs:restriction> |
2582 | + </xs:simpleType> |
2583 | + <xs:complexType name="NameAndAddress10"> |
2584 | + <xs:sequence> |
2585 | + <xs:element name="Nm" type="Max140Text"/> |
2586 | + <xs:element name="Adr" type="PostalAddress6"/> |
2587 | + </xs:sequence> |
2588 | + </xs:complexType> |
2589 | + <xs:simpleType name="NamePrefix1Code"> |
2590 | + <xs:restriction base="xs:string"> |
2591 | + <xs:enumeration value="DOCT"/> |
2592 | + <xs:enumeration value="MIST"/> |
2593 | + <xs:enumeration value="MISS"/> |
2594 | + <xs:enumeration value="MADM"/> |
2595 | + </xs:restriction> |
2596 | + </xs:simpleType> |
2597 | + <xs:simpleType name="Number"> |
2598 | + <xs:restriction base="xs:decimal"> |
2599 | + <xs:fractionDigits value="0"/> |
2600 | + <xs:totalDigits value="18"/> |
2601 | + </xs:restriction> |
2602 | + </xs:simpleType> |
2603 | + <xs:complexType name="OrganisationIdentification8"> |
2604 | + <xs:sequence> |
2605 | + <xs:element maxOccurs="1" minOccurs="0" name="AnyBIC" type="AnyBICIdentifier"/> |
2606 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="Othr" type="GenericOrganisationIdentification1"/> |
2607 | + </xs:sequence> |
2608 | + </xs:complexType> |
2609 | + <xs:complexType name="OrganisationIdentificationSchemeName1Choice"> |
2610 | + <xs:sequence> |
2611 | + <xs:choice> |
2612 | + <xs:element name="Cd" type="ExternalOrganisationIdentification1Code"/> |
2613 | + <xs:element name="Prtry" type="Max35Text"/> |
2614 | + </xs:choice> |
2615 | + </xs:sequence> |
2616 | + </xs:complexType> |
2617 | + <xs:complexType name="Party11Choice"> |
2618 | + <xs:sequence> |
2619 | + <xs:choice> |
2620 | + <xs:element name="OrgId" type="OrganisationIdentification8"/> |
2621 | + <xs:element name="PrvtId" type="PersonIdentification5"/> |
2622 | + </xs:choice> |
2623 | + </xs:sequence> |
2624 | + </xs:complexType> |
2625 | + <xs:complexType name="PartyIdentification43"> |
2626 | + <xs:sequence> |
2627 | + <xs:element maxOccurs="1" minOccurs="0" name="Nm" type="Max140Text"/> |
2628 | + <xs:element maxOccurs="1" minOccurs="0" name="PstlAdr" type="PostalAddress6"/> |
2629 | + <xs:element maxOccurs="1" minOccurs="0" name="Id" type="Party11Choice"/> |
2630 | + <xs:element maxOccurs="1" minOccurs="0" name="CtryOfRes" type="CountryCode"/> |
2631 | + <xs:element maxOccurs="1" minOccurs="0" name="CtctDtls" type="ContactDetails2"/> |
2632 | + </xs:sequence> |
2633 | + </xs:complexType> |
2634 | + <xs:complexType name="PaymentIdentification1"> |
2635 | + <xs:sequence> |
2636 | + <xs:element maxOccurs="1" minOccurs="0" name="InstrId" type="Max35Text"/> |
2637 | + <xs:element name="EndToEndId" type="Max35Text"/> |
2638 | + </xs:sequence> |
2639 | + </xs:complexType> |
2640 | + <xs:complexType name="PaymentInstruction6"> |
2641 | + <xs:sequence> |
2642 | + <xs:element name="PmtInfId" type="Max35Text"/> |
2643 | + <xs:element name="PmtMtd" type="PaymentMethod3Code"/> |
2644 | + <xs:element maxOccurs="1" minOccurs="0" name="BtchBookg" type="BatchBookingIndicator"/> |
2645 | + <xs:element maxOccurs="1" minOccurs="0" name="NbOfTxs" type="Max15NumericText"/> |
2646 | + <xs:element maxOccurs="1" minOccurs="0" name="CtrlSum" type="DecimalNumber"/> |
2647 | + <xs:element maxOccurs="1" minOccurs="0" name="PmtTpInf" type="PaymentTypeInformation19"/> |
2648 | + <xs:element name="ReqdExctnDt" type="ISODate"/> |
2649 | + <xs:element maxOccurs="1" minOccurs="0" name="PoolgAdjstmntDt" type="ISODate"/> |
2650 | + <xs:element name="Dbtr" type="PartyIdentification43"/> |
2651 | + <xs:element name="DbtrAcct" type="CashAccount24"/> |
2652 | + <xs:element name="DbtrAgt" type="BranchAndFinancialInstitutionIdentification5"/> |
2653 | + <xs:element maxOccurs="1" minOccurs="0" name="DbtrAgtAcct" type="CashAccount24"/> |
2654 | + <xs:element maxOccurs="1" minOccurs="0" name="InstrForDbtrAgt" type="Max140Text"/> |
2655 | + <xs:element maxOccurs="1" minOccurs="0" name="UltmtDbtr" type="PartyIdentification43"/> |
2656 | + <xs:element maxOccurs="1" minOccurs="0" name="ChrgBr" type="ChargeBearerType1Code"/> |
2657 | + <xs:element maxOccurs="1" minOccurs="0" name="ChrgsAcct" type="CashAccount24"/> |
2658 | + <xs:element maxOccurs="1" minOccurs="0" name="ChrgsAcctAgt" type="BranchAndFinancialInstitutionIdentification5"/> |
2659 | + <xs:element maxOccurs="unbounded" minOccurs="1" name="CdtTrfTxInf" type="CreditTransferTransaction1"/> |
2660 | + </xs:sequence> |
2661 | + </xs:complexType> |
2662 | + <xs:simpleType name="PaymentMethod3Code"> |
2663 | + <xs:restriction base="xs:string"> |
2664 | + <xs:enumeration value="CHK"/> |
2665 | + <xs:enumeration value="TRF"/> |
2666 | + <xs:enumeration value="TRA"/> |
2667 | + </xs:restriction> |
2668 | + </xs:simpleType> |
2669 | + <xs:complexType name="PaymentTypeInformation19"> |
2670 | + <xs:sequence> |
2671 | + <xs:element maxOccurs="1" minOccurs="0" name="InstrPrty" type="Priority2Code"/> |
2672 | + <xs:element maxOccurs="1" minOccurs="0" name="SvcLvl" type="ServiceLevel8Choice"/> |
2673 | + <xs:element maxOccurs="1" minOccurs="0" name="LclInstrm" type="LocalInstrument2Choice"/> |
2674 | + <xs:element maxOccurs="1" minOccurs="0" name="CtgyPurp" type="CategoryPurpose1Choice"/> |
2675 | + </xs:sequence> |
2676 | + </xs:complexType> |
2677 | + <xs:simpleType name="PercentageRate"> |
2678 | + <xs:restriction base="xs:decimal"> |
2679 | + <xs:fractionDigits value="10"/> |
2680 | + <xs:totalDigits value="11"/> |
2681 | + </xs:restriction> |
2682 | + </xs:simpleType> |
2683 | + <xs:complexType name="PersonIdentification5"> |
2684 | + <xs:sequence> |
2685 | + <xs:element maxOccurs="1" minOccurs="0" name="DtAndPlcOfBirth" type="DateAndPlaceOfBirth"/> |
2686 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="Othr" type="GenericPersonIdentification1"/> |
2687 | + </xs:sequence> |
2688 | + </xs:complexType> |
2689 | + <xs:complexType name="PersonIdentificationSchemeName1Choice"> |
2690 | + <xs:sequence> |
2691 | + <xs:choice> |
2692 | + <xs:element name="Cd" type="ExternalPersonIdentification1Code"/> |
2693 | + <xs:element name="Prtry" type="Max35Text"/> |
2694 | + </xs:choice> |
2695 | + </xs:sequence> |
2696 | + </xs:complexType> |
2697 | + <xs:simpleType name="PhoneNumber"> |
2698 | + <xs:restriction base="xs:string"> |
2699 | + <xs:pattern value="\+[0-9]{1,3}-[0-9()+\-]{1,30}"/> |
2700 | + </xs:restriction> |
2701 | + </xs:simpleType> |
2702 | + <xs:complexType name="PostalAddress6"> |
2703 | + <xs:sequence> |
2704 | + <xs:element maxOccurs="1" minOccurs="0" name="AdrTp" type="AddressType2Code"/> |
2705 | + <xs:element maxOccurs="1" minOccurs="0" name="Dept" type="Max70Text"/> |
2706 | + <xs:element maxOccurs="1" minOccurs="0" name="SubDept" type="Max70Text"/> |
2707 | + <xs:element maxOccurs="1" minOccurs="0" name="StrtNm" type="Max70Text"/> |
2708 | + <xs:element maxOccurs="1" minOccurs="0" name="BldgNb" type="Max16Text"/> |
2709 | + <xs:element maxOccurs="1" minOccurs="0" name="PstCd" type="Max16Text"/> |
2710 | + <xs:element maxOccurs="1" minOccurs="0" name="TwnNm" type="Max35Text"/> |
2711 | + <xs:element maxOccurs="1" minOccurs="0" name="CtrySubDvsn" type="Max35Text"/> |
2712 | + <xs:element maxOccurs="1" minOccurs="0" name="Ctry" type="CountryCode"/> |
2713 | + <xs:element maxOccurs="7" minOccurs="0" name="AdrLine" type="Max70Text"/> |
2714 | + </xs:sequence> |
2715 | + </xs:complexType> |
2716 | + <xs:simpleType name="Priority2Code"> |
2717 | + <xs:restriction base="xs:string"> |
2718 | + <xs:enumeration value="HIGH"/> |
2719 | + <xs:enumeration value="NORM"/> |
2720 | + </xs:restriction> |
2721 | + </xs:simpleType> |
2722 | + <xs:complexType name="Purpose2Choice"> |
2723 | + <xs:sequence> |
2724 | + <xs:choice> |
2725 | + <xs:element name="Cd" type="ExternalPurpose1Code"/> |
2726 | + <xs:element name="Prtry" type="Max35Text"/> |
2727 | + </xs:choice> |
2728 | + </xs:sequence> |
2729 | + </xs:complexType> |
2730 | + <xs:complexType name="ReferredDocumentInformation3"> |
2731 | + <xs:sequence> |
2732 | + <xs:element maxOccurs="1" minOccurs="0" name="Tp" type="ReferredDocumentType2"/> |
2733 | + <xs:element maxOccurs="1" minOccurs="0" name="Nb" type="Max35Text"/> |
2734 | + <xs:element maxOccurs="1" minOccurs="0" name="RltdDt" type="ISODate"/> |
2735 | + </xs:sequence> |
2736 | + </xs:complexType> |
2737 | + <xs:complexType name="ReferredDocumentType1Choice"> |
2738 | + <xs:sequence> |
2739 | + <xs:choice> |
2740 | + <xs:element name="Cd" type="DocumentType5Code"/> |
2741 | + <xs:element name="Prtry" type="Max35Text"/> |
2742 | + </xs:choice> |
2743 | + </xs:sequence> |
2744 | + </xs:complexType> |
2745 | + <xs:complexType name="ReferredDocumentType2"> |
2746 | + <xs:sequence> |
2747 | + <xs:element name="CdOrPrtry" type="ReferredDocumentType1Choice"/> |
2748 | + <xs:element maxOccurs="1" minOccurs="0" name="Issr" type="Max35Text"/> |
2749 | + </xs:sequence> |
2750 | + </xs:complexType> |
2751 | + <xs:complexType name="RegulatoryAuthority2"> |
2752 | + <xs:sequence> |
2753 | + <xs:element maxOccurs="1" minOccurs="0" name="Nm" type="Max140Text"/> |
2754 | + <xs:element maxOccurs="1" minOccurs="0" name="Ctry" type="CountryCode"/> |
2755 | + </xs:sequence> |
2756 | + </xs:complexType> |
2757 | + <xs:complexType name="RegulatoryReporting3"> |
2758 | + <xs:sequence> |
2759 | + <xs:element maxOccurs="1" minOccurs="0" name="DbtCdtRptgInd" type="RegulatoryReportingType1Code"/> |
2760 | + <xs:element maxOccurs="1" minOccurs="0" name="Authrty" type="RegulatoryAuthority2"/> |
2761 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="Dtls" type="StructuredRegulatoryReporting3"/> |
2762 | + </xs:sequence> |
2763 | + </xs:complexType> |
2764 | + <xs:simpleType name="RegulatoryReportingType1Code"> |
2765 | + <xs:restriction base="xs:string"> |
2766 | + <xs:enumeration value="CRED"/> |
2767 | + <xs:enumeration value="DEBT"/> |
2768 | + <xs:enumeration value="BOTH"/> |
2769 | + </xs:restriction> |
2770 | + </xs:simpleType> |
2771 | + <xs:complexType name="RemittanceAmount2"> |
2772 | + <xs:sequence> |
2773 | + <xs:element maxOccurs="1" minOccurs="0" name="DuePyblAmt" type="ActiveOrHistoricCurrencyAndAmount"/> |
2774 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="DscntApldAmt" type="DiscountAmountAndType1"/> |
2775 | + <xs:element maxOccurs="1" minOccurs="0" name="CdtNoteAmt" type="ActiveOrHistoricCurrencyAndAmount"/> |
2776 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="TaxAmt" type="TaxAmountAndType1"/> |
2777 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="AdjstmntAmtAndRsn" type="DocumentAdjustment1"/> |
2778 | + <xs:element maxOccurs="1" minOccurs="0" name="RmtdAmt" type="ActiveOrHistoricCurrencyAndAmount"/> |
2779 | + </xs:sequence> |
2780 | + </xs:complexType> |
2781 | + <xs:complexType name="RemittanceInformation7"> |
2782 | + <xs:sequence> |
2783 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="Ustrd" type="Max140Text"/> |
2784 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="Strd" type="StructuredRemittanceInformation9"/> |
2785 | + </xs:sequence> |
2786 | + </xs:complexType> |
2787 | + <xs:complexType name="RemittanceLocation2"> |
2788 | + <xs:sequence> |
2789 | + <xs:element maxOccurs="1" minOccurs="0" name="RmtId" type="Max35Text"/> |
2790 | + <xs:element maxOccurs="1" minOccurs="0" name="RmtLctnMtd" type="RemittanceLocationMethod2Code"/> |
2791 | + <xs:element maxOccurs="1" minOccurs="0" name="RmtLctnElctrncAdr" type="Max2048Text"/> |
2792 | + <xs:element maxOccurs="1" minOccurs="0" name="RmtLctnPstlAdr" type="NameAndAddress10"/> |
2793 | + </xs:sequence> |
2794 | + </xs:complexType> |
2795 | + <xs:simpleType name="RemittanceLocationMethod2Code"> |
2796 | + <xs:restriction base="xs:string"> |
2797 | + <xs:enumeration value="FAXI"/> |
2798 | + <xs:enumeration value="EDIC"/> |
2799 | + <xs:enumeration value="URID"/> |
2800 | + <xs:enumeration value="EMAL"/> |
2801 | + <xs:enumeration value="POST"/> |
2802 | + <xs:enumeration value="SMSM"/> |
2803 | + </xs:restriction> |
2804 | + </xs:simpleType> |
2805 | + <xs:complexType name="ServiceLevel8Choice"> |
2806 | + <xs:sequence> |
2807 | + <xs:choice> |
2808 | + <xs:element name="Cd" type="ExternalServiceLevel1Code"/> |
2809 | + <xs:element name="Prtry" type="Max35Text"/> |
2810 | + </xs:choice> |
2811 | + </xs:sequence> |
2812 | + </xs:complexType> |
2813 | + <xs:complexType name="StructuredRegulatoryReporting3"> |
2814 | + <xs:sequence> |
2815 | + <xs:element maxOccurs="1" minOccurs="0" name="Tp" type="Max35Text"/> |
2816 | + <xs:element maxOccurs="1" minOccurs="0" name="Dt" type="ISODate"/> |
2817 | + <xs:element maxOccurs="1" minOccurs="0" name="Ctry" type="CountryCode"/> |
2818 | + <xs:element maxOccurs="1" minOccurs="0" name="Cd" type="Max10Text"/> |
2819 | + <xs:element maxOccurs="1" minOccurs="0" name="Amt" type="ActiveOrHistoricCurrencyAndAmount"/> |
2820 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="Inf" type="Max35Text"/> |
2821 | + </xs:sequence> |
2822 | + </xs:complexType> |
2823 | + <xs:complexType name="StructuredRemittanceInformation9"> |
2824 | + <xs:sequence> |
2825 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="RfrdDocInf" type="ReferredDocumentInformation3"/> |
2826 | + <xs:element maxOccurs="1" minOccurs="0" name="RfrdDocAmt" type="RemittanceAmount2"/> |
2827 | + <xs:element maxOccurs="1" minOccurs="0" name="CdtrRefInf" type="CreditorReferenceInformation2"/> |
2828 | + <xs:element maxOccurs="1" minOccurs="0" name="Invcr" type="PartyIdentification43"/> |
2829 | + <xs:element maxOccurs="1" minOccurs="0" name="Invcee" type="PartyIdentification43"/> |
2830 | + <xs:element maxOccurs="3" minOccurs="0" name="AddtlRmtInf" type="Max140Text"/> |
2831 | + </xs:sequence> |
2832 | + </xs:complexType> |
2833 | + <xs:complexType name="SupplementaryData1"> |
2834 | + <xs:sequence> |
2835 | + <xs:element maxOccurs="1" minOccurs="0" name="PlcAndNm" type="Max350Text"/> |
2836 | + <xs:element name="Envlp" type="SupplementaryDataEnvelope1"/> |
2837 | + </xs:sequence> |
2838 | + </xs:complexType> |
2839 | + <xs:complexType name="SupplementaryDataEnvelope1"> |
2840 | + <xs:sequence> |
2841 | + <xs:any namespace="##any" processContents="lax"/> |
2842 | + </xs:sequence> |
2843 | + </xs:complexType> |
2844 | + <xs:complexType name="TaxAmount1"> |
2845 | + <xs:sequence> |
2846 | + <xs:element maxOccurs="1" minOccurs="0" name="Rate" type="PercentageRate"/> |
2847 | + <xs:element maxOccurs="1" minOccurs="0" name="TaxblBaseAmt" type="ActiveOrHistoricCurrencyAndAmount"/> |
2848 | + <xs:element maxOccurs="1" minOccurs="0" name="TtlAmt" type="ActiveOrHistoricCurrencyAndAmount"/> |
2849 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="Dtls" type="TaxRecordDetails1"/> |
2850 | + </xs:sequence> |
2851 | + </xs:complexType> |
2852 | + <xs:complexType name="TaxAmountAndType1"> |
2853 | + <xs:sequence> |
2854 | + <xs:element maxOccurs="1" minOccurs="0" name="Tp" type="TaxAmountType1Choice"/> |
2855 | + <xs:element name="Amt" type="ActiveOrHistoricCurrencyAndAmount"/> |
2856 | + </xs:sequence> |
2857 | + </xs:complexType> |
2858 | + <xs:complexType name="TaxAmountType1Choice"> |
2859 | + <xs:sequence> |
2860 | + <xs:choice> |
2861 | + <xs:element name="Cd" type="ExternalTaxAmountType1Code"/> |
2862 | + <xs:element name="Prtry" type="Max35Text"/> |
2863 | + </xs:choice> |
2864 | + </xs:sequence> |
2865 | + </xs:complexType> |
2866 | + <xs:complexType name="TaxAuthorisation1"> |
2867 | + <xs:sequence> |
2868 | + <xs:element maxOccurs="1" minOccurs="0" name="Titl" type="Max35Text"/> |
2869 | + <xs:element maxOccurs="1" minOccurs="0" name="Nm" type="Max140Text"/> |
2870 | + </xs:sequence> |
2871 | + </xs:complexType> |
2872 | + <xs:complexType name="TaxInformation3"> |
2873 | + <xs:sequence> |
2874 | + <xs:element maxOccurs="1" minOccurs="0" name="Cdtr" type="TaxParty1"/> |
2875 | + <xs:element maxOccurs="1" minOccurs="0" name="Dbtr" type="TaxParty2"/> |
2876 | + <xs:element maxOccurs="1" minOccurs="0" name="AdmstnZn" type="Max35Text"/> |
2877 | + <xs:element maxOccurs="1" minOccurs="0" name="RefNb" type="Max140Text"/> |
2878 | + <xs:element maxOccurs="1" minOccurs="0" name="Mtd" type="Max35Text"/> |
2879 | + <xs:element maxOccurs="1" minOccurs="0" name="TtlTaxblBaseAmt" type="ActiveOrHistoricCurrencyAndAmount"/> |
2880 | + <xs:element maxOccurs="1" minOccurs="0" name="TtlTaxAmt" type="ActiveOrHistoricCurrencyAndAmount"/> |
2881 | + <xs:element maxOccurs="1" minOccurs="0" name="Dt" type="ISODate"/> |
2882 | + <xs:element maxOccurs="1" minOccurs="0" name="SeqNb" type="Number"/> |
2883 | + <xs:element maxOccurs="unbounded" minOccurs="0" name="Rcrd" type="TaxRecord1"/> |
2884 | + </xs:sequence> |
2885 | + </xs:complexType> |
2886 | + <xs:complexType name="TaxParty1"> |
2887 | + <xs:sequence> |
2888 | + <xs:element maxOccurs="1" minOccurs="0" name="TaxId" type="Max35Text"/> |
2889 | + <xs:element maxOccurs="1" minOccurs="0" name="RegnId" type="Max35Text"/> |
2890 | + <xs:element maxOccurs="1" minOccurs="0" name="TaxTp" type="Max35Text"/> |
2891 | + </xs:sequence> |
2892 | + </xs:complexType> |
2893 | + <xs:complexType name="TaxParty2"> |
2894 | + <xs:sequence> |
2895 | + <xs:element maxOccurs="1" minOccurs="0" name="TaxId" type="Max35Text"/> |
2896 | + <xs:element maxOccurs="1" minOccurs="0" name="RegnId" type="Max35Text"/> |
2897 | + <xs:element maxOccurs="1" minOccurs="0" name="TaxTp" type="Max35Text"/> |
2898 | + <xs:element maxOccurs="1" minOccurs="0" name="Authstn" type="TaxAuthorisation1"/> |
2899 | + </xs:sequence> |
2900 | + </xs:complexType> |
2901 | + <xs:complexType name="TaxPeriod1"> |
2902 | + <xs:sequence> |
2903 | + <xs:element maxOccurs="1" minOccurs="0" name="Yr" type="ISODate"/> |
2904 | + <xs:element maxOccurs="1" minOccurs="0" name="Tp" type="TaxRecordPeriod1Code"/> |
2905 | + <xs:element maxOccurs="1" minOccurs="0" name="FrToDt" type="DatePeriodDetails"/> |
2906 | + </xs:sequence> |
2907 | + </xs:complexType> |
2908 | + <xs:complexType name="TaxRecord1"> |
2909 | + <xs:sequence> |
2910 | + <xs:element maxOccurs="1" minOccurs="0" name="Tp" type="Max35Text"/> |
2911 | + <xs:element maxOccurs="1" minOccurs="0" name="Ctgy" type="Max35Text"/> |
2912 | + <xs:element maxOccurs="1" minOccurs="0" name="CtgyDtls" type="Max35Text"/> |
2913 | + <xs:element maxOccurs="1" minOccurs="0" name="DbtrSts" type="Max35Text"/> |
2914 | + <xs:element maxOccurs="1" minOccurs="0" name="CertId" type="Max35Text"/> |
2915 | + <xs:element maxOccurs="1" minOccurs="0" name="FrmsCd" type="Max35Text"/> |
2916 | + <xs:element maxOccurs="1" minOccurs="0" name="Prd" type="TaxPeriod1"/> |
2917 | + <xs:element maxOccurs="1" minOccurs="0" name="TaxAmt" type="TaxAmount1"/> |
2918 | + <xs:element maxOccurs="1" minOccurs="0" name="AddtlInf" type="Max140Text"/> |
2919 | + </xs:sequence> |
2920 | + </xs:complexType> |
2921 | + <xs:complexType name="TaxRecordDetails1"> |
2922 | + <xs:sequence> |
2923 | + <xs:element maxOccurs="1" minOccurs="0" name="Prd" type="TaxPeriod1"/> |
2924 | + <xs:element name="Amt" type="ActiveOrHistoricCurrencyAndAmount"/> |
2925 | + </xs:sequence> |
2926 | + </xs:complexType> |
2927 | + <xs:simpleType name="TaxRecordPeriod1Code"> |
2928 | + <xs:restriction base="xs:string"> |
2929 | + <xs:enumeration value="MM01"/> |
2930 | + <xs:enumeration value="MM02"/> |
2931 | + <xs:enumeration value="MM03"/> |
2932 | + <xs:enumeration value="MM04"/> |
2933 | + <xs:enumeration value="MM05"/> |
2934 | + <xs:enumeration value="MM06"/> |
2935 | + <xs:enumeration value="MM07"/> |
2936 | + <xs:enumeration value="MM08"/> |
2937 | + <xs:enumeration value="MM09"/> |
2938 | + <xs:enumeration value="MM10"/> |
2939 | + <xs:enumeration value="MM11"/> |
2940 | + <xs:enumeration value="MM12"/> |
2941 | + <xs:enumeration value="QTR1"/> |
2942 | + <xs:enumeration value="QTR2"/> |
2943 | + <xs:enumeration value="QTR3"/> |
2944 | + <xs:enumeration value="QTR4"/> |
2945 | + <xs:enumeration value="HLF1"/> |
2946 | + <xs:enumeration value="HLF2"/> |
2947 | + </xs:restriction> |
2948 | + </xs:simpleType> |
2949 | +</xs:schema> |
2950 | \ No newline at end of file |
2951 | |
2952 | === added file 'account_banking_sepa_credit_transfer/data/payment_type_sepa_sct.xml' |
2953 | --- account_banking_sepa_credit_transfer/data/payment_type_sepa_sct.xml 1970-01-01 00:00:00 +0000 |
2954 | +++ account_banking_sepa_credit_transfer/data/payment_type_sepa_sct.xml 2013-06-06 08:07:29 +0000 |
2955 | @@ -0,0 +1,33 @@ |
2956 | +<?xml version="1.0" encoding="utf-8"?> |
2957 | +<openerp> |
2958 | +<data noupdate="1"> |
2959 | + |
2960 | + |
2961 | +<!-- TODO In the suitable_bank_types field, we should restrict to IBAN type and Rib+IBAN of l10n_fr_rib ? --> |
2962 | +<record id="export_sepa_sct_001_001_04" model="payment.mode.type"> |
2963 | + <field name="name">SEPA Credit Transfer v04</field> |
2964 | + <field name="code">pain.001.001.04</field> |
2965 | + <field name="suitable_bank_types"></field> |
2966 | + <field name="ir_model_id" ref="model_banking_export_sepa_wizard"/> |
2967 | + <field name="payment_order_type">payment</field> |
2968 | +</record> |
2969 | + |
2970 | +<record id="export_sepa_sct_001_001_03" model="payment.mode.type"> |
2971 | + <field name="name">SEPA Credit Transfer v03</field> |
2972 | + <field name="code">pain.001.001.03</field> |
2973 | + <field name="suitable_bank_types"></field> |
2974 | + <field name="ir_model_id" ref="model_banking_export_sepa_wizard"/> |
2975 | + <field name="payment_order_type">payment</field> |
2976 | +</record> |
2977 | + |
2978 | +<record id="export_sepa_sct_001_001_02" model="payment.mode.type"> |
2979 | + <field name="name">SEPA Credit Transfer v02</field> |
2980 | + <field name="code">pain.001.001.02</field> |
2981 | + <field name="suitable_bank_types"></field> |
2982 | + <field name="ir_model_id" ref="model_banking_export_sepa_wizard"/> |
2983 | + <field name="payment_order_type">payment</field> |
2984 | +</record> |
2985 | + |
2986 | + |
2987 | +</data> |
2988 | +</openerp> |
2989 | |
2990 | === added directory 'account_banking_sepa_credit_transfer/i18n' |
2991 | === added file 'account_banking_sepa_credit_transfer/i18n/account_banking_sepa_credit_transfer.pot' |
2992 | --- account_banking_sepa_credit_transfer/i18n/account_banking_sepa_credit_transfer.pot 1970-01-01 00:00:00 +0000 |
2993 | +++ account_banking_sepa_credit_transfer/i18n/account_banking_sepa_credit_transfer.pot 2013-06-06 08:07:29 +0000 |
2994 | @@ -0,0 +1,251 @@ |
2995 | +# Translation of OpenERP Server. |
2996 | +# This file contains the translation of the following modules: |
2997 | +# * account_banking_sepa_credit_transfer |
2998 | +# |
2999 | +msgid "" |
3000 | +msgstr "" |
3001 | +"Project-Id-Version: OpenERP Server 6.1\n" |
3002 | +"Report-Msgid-Bugs-To: \n" |
3003 | +"POT-Creation-Date: 2013-06-06 08:01+0000\n" |
3004 | +"PO-Revision-Date: 2013-06-06 08:01+0000\n" |
3005 | +"Last-Translator: <>\n" |
3006 | +"Language-Team: \n" |
3007 | +"MIME-Version: 1.0\n" |
3008 | +"Content-Type: text/plain; charset=UTF-8\n" |
3009 | +"Content-Transfer-Encoding: \n" |
3010 | +"Plural-Forms: \n" |
3011 | + |
3012 | +#. module: account_banking_sepa_credit_transfer |
3013 | +#: field:banking.export.sepa,file:0 |
3014 | +#: field:banking.export.sepa.wizard,file_id:0 |
3015 | +msgid "SEPA XML file" |
3016 | +msgstr "" |
3017 | + |
3018 | +#. module: account_banking_sepa_credit_transfer |
3019 | +#: view:banking.export.sepa:0 |
3020 | +msgid "Payment order" |
3021 | +msgstr "" |
3022 | + |
3023 | +#. module: account_banking_sepa_credit_transfer |
3024 | +#: selection:banking.export.sepa.wizard,state:0 |
3025 | +msgid "Create" |
3026 | +msgstr "" |
3027 | + |
3028 | +#. module: account_banking_sepa_credit_transfer |
3029 | +#: help:banking.export.sepa.wizard,msg_identification:0 |
3030 | +msgid "This is the message identification of the entire SEPA XML file. 35 characters max." |
3031 | +msgstr "" |
3032 | + |
3033 | +#. module: account_banking_sepa_credit_transfer |
3034 | +#: field:banking.export.sepa,filename:0 |
3035 | +#: field:banking.export.sepa.wizard,filename:0 |
3036 | +msgid "Filename" |
3037 | +msgstr "" |
3038 | + |
3039 | +#. module: account_banking_sepa_credit_transfer |
3040 | +#: view:banking.export.sepa:0 |
3041 | +msgid "General information" |
3042 | +msgstr "" |
3043 | + |
3044 | +#. module: account_banking_sepa_credit_transfer |
3045 | +#: field:banking.export.sepa,state:0 |
3046 | +#: field:banking.export.sepa.wizard,state:0 |
3047 | +msgid "State" |
3048 | +msgstr "" |
3049 | + |
3050 | +#. module: account_banking_sepa_credit_transfer |
3051 | +#: selection:banking.export.sepa,state:0 |
3052 | +msgid "Draft" |
3053 | +msgstr "" |
3054 | + |
3055 | +#. module: account_banking_sepa_credit_transfer |
3056 | +#: field:banking.export.sepa,prefered_exec_date:0 |
3057 | +#: field:banking.export.sepa.wizard,prefered_exec_date:0 |
3058 | +msgid "Prefered execution date" |
3059 | +msgstr "" |
3060 | + |
3061 | +#. module: account_banking_sepa_credit_transfer |
3062 | +#: selection:banking.export.sepa,charge_bearer:0 |
3063 | +#: selection:banking.export.sepa.wizard,charge_bearer:0 |
3064 | +msgid "Shared" |
3065 | +msgstr "" |
3066 | + |
3067 | +#. module: account_banking_sepa_credit_transfer |
3068 | +#: field:banking.export.sepa,generation_date:0 |
3069 | +msgid "Generation date" |
3070 | +msgstr "" |
3071 | + |
3072 | +#. module: account_banking_sepa_credit_transfer |
3073 | +#: model:ir.model,name:account_banking_sepa_credit_transfer.model_banking_export_sepa_wizard |
3074 | +msgid "Export SEPA Credit Transfer XML file" |
3075 | +msgstr "" |
3076 | + |
3077 | +#. module: account_banking_sepa_credit_transfer |
3078 | +#: view:banking.export.sepa:0 |
3079 | +msgid "SEPA Credit Transfer" |
3080 | +msgstr "" |
3081 | + |
3082 | +#. module: account_banking_sepa_credit_transfer |
3083 | +#: selection:banking.export.sepa.wizard,state:0 |
3084 | +msgid "Finish" |
3085 | +msgstr "" |
3086 | + |
3087 | +#. module: account_banking_sepa_credit_transfer |
3088 | +#: selection:banking.export.sepa,state:0 |
3089 | +msgid "Reconciled" |
3090 | +msgstr "" |
3091 | + |
3092 | +#. module: account_banking_sepa_credit_transfer |
3093 | +#: model:ir.actions.act_window,name:account_banking_sepa_credit_transfer.act_banking_export_sepa_payment_order |
3094 | +msgid "Generated SEPA files" |
3095 | +msgstr "" |
3096 | + |
3097 | +#. module: account_banking_sepa_credit_transfer |
3098 | +#: model:ir.actions.act_window,name:account_banking_sepa_credit_transfer.action_account_banking_sepa |
3099 | +#: model:ir.ui.menu,name:account_banking_sepa_credit_transfer.menu_account_banking_sepa |
3100 | +msgid "Generated SEPA XML files" |
3101 | +msgstr "" |
3102 | + |
3103 | +#. module: account_banking_sepa_credit_transfer |
3104 | +#: selection:banking.export.sepa,state:0 |
3105 | +msgid "Sent" |
3106 | +msgstr "" |
3107 | + |
3108 | +#. module: account_banking_sepa_credit_transfer |
3109 | +#: view:banking.export.sepa.wizard:0 |
3110 | +msgid "Validate" |
3111 | +msgstr "" |
3112 | + |
3113 | +#. module: account_banking_sepa_credit_transfer |
3114 | +#: view:banking.export.sepa.wizard:0 |
3115 | +msgid "Generate" |
3116 | +msgstr "" |
3117 | + |
3118 | +#. module: account_banking_sepa_credit_transfer |
3119 | +#: field:banking.export.sepa,msg_identification:0 |
3120 | +#: field:banking.export.sepa.wizard,msg_identification:0 |
3121 | +msgid "Message identification" |
3122 | +msgstr "" |
3123 | + |
3124 | +#. module: account_banking_sepa_credit_transfer |
3125 | +#: code:addons/account_banking_sepa_credit_transfer/wizard/export_sepa.py:284 |
3126 | +#, python-format |
3127 | +msgid "The generated XML file is not valid against the official XML Schema Definition. The generated XML file and the full error have been written in the server logs. Here is the error, which may give you an idea on the cause of the problem : %s" |
3128 | +msgstr "" |
3129 | + |
3130 | +#. module: account_banking_sepa_credit_transfer |
3131 | +#: field:banking.export.sepa,total_amount:0 |
3132 | +#: field:banking.export.sepa.wizard,total_amount:0 |
3133 | +msgid "Total amount" |
3134 | +msgstr "" |
3135 | + |
3136 | +#. module: account_banking_sepa_credit_transfer |
3137 | +#: help:banking.export.sepa,charge_bearer:0 |
3138 | +#: help:banking.export.sepa.wizard,charge_bearer:0 |
3139 | +msgid "Shared : 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 (most transfers use this). Borne by creditor : all transaction charges are to be borne by the creditor. Borne by debtor : all transaction charges are to be borne by the debtor. Following service level : transaction charges are to be applied following the rules agreed in the service level and/or scheme." |
3140 | +msgstr "" |
3141 | + |
3142 | +#. module: account_banking_sepa_credit_transfer |
3143 | +#: selection:banking.export.sepa,charge_bearer:0 |
3144 | +#: selection:banking.export.sepa.wizard,charge_bearer:0 |
3145 | +msgid "Borne by creditor" |
3146 | +msgstr "" |
3147 | + |
3148 | +#. module: account_banking_sepa_credit_transfer |
3149 | +#: view:banking.export.sepa:0 |
3150 | +#: field:banking.export.sepa,payment_order_ids:0 |
3151 | +#: field:banking.export.sepa.wizard,payment_order_ids:0 |
3152 | +msgid "Payment orders" |
3153 | +msgstr "" |
3154 | + |
3155 | +#. module: account_banking_sepa_credit_transfer |
3156 | +#: code:addons/account_banking_sepa_credit_transfer/wizard/export_sepa.py:90 |
3157 | +#, python-format |
3158 | +msgid "This IBAN is not valid : %s" |
3159 | +msgstr "" |
3160 | + |
3161 | +#. module: account_banking_sepa_credit_transfer |
3162 | +#: view:banking.export.sepa.wizard:0 |
3163 | +msgid "SEPA XML file generation" |
3164 | +msgstr "" |
3165 | + |
3166 | +#. module: account_banking_sepa_credit_transfer |
3167 | +#: view:banking.export.sepa.wizard:0 |
3168 | +msgid "Reference for further communication" |
3169 | +msgstr "" |
3170 | + |
3171 | +#. module: account_banking_sepa_credit_transfer |
3172 | +#: view:banking.export.sepa.wizard:0 |
3173 | +msgid "Processing details" |
3174 | +msgstr "" |
3175 | + |
3176 | +#. module: account_banking_sepa_credit_transfer |
3177 | +#: model:ir.model,name:account_banking_sepa_credit_transfer.model_banking_export_sepa |
3178 | +msgid "SEPA export" |
3179 | +msgstr "" |
3180 | + |
3181 | +#. module: account_banking_sepa_credit_transfer |
3182 | +#: selection:banking.export.sepa,charge_bearer:0 |
3183 | +#: selection:banking.export.sepa.wizard,charge_bearer:0 |
3184 | +msgid "Borne by debtor" |
3185 | +msgstr "" |
3186 | + |
3187 | +#. module: account_banking_sepa_credit_transfer |
3188 | +#: field:banking.export.sepa,nb_transactions:0 |
3189 | +#: field:banking.export.sepa.wizard,nb_transactions:0 |
3190 | +msgid "Number of transactions" |
3191 | +msgstr "" |
3192 | + |
3193 | +#. module: account_banking_sepa_credit_transfer |
3194 | +#: selection:banking.export.sepa,charge_bearer:0 |
3195 | +#: selection:banking.export.sepa.wizard,charge_bearer:0 |
3196 | +msgid "Following service level" |
3197 | +msgstr "" |
3198 | + |
3199 | +#. module: account_banking_sepa_credit_transfer |
3200 | +#: field:banking.export.sepa,charge_bearer:0 |
3201 | +#: field:banking.export.sepa.wizard,charge_bearer:0 |
3202 | +msgid "Charge bearer" |
3203 | +msgstr "" |
3204 | + |
3205 | +#. module: account_banking_sepa_credit_transfer |
3206 | +#: help:banking.export.sepa,batch_booking:0 |
3207 | +#: help:banking.export.sepa.wizard,batch_booking:0 |
3208 | +msgid "If true, the bank statement will display only one debit line for all the wire transfers of the SEPA XML file ; if false, the bank statement will display one debit line per wire transfer of the SEPA XML file." |
3209 | +msgstr "" |
3210 | + |
3211 | +#. module: account_banking_sepa_credit_transfer |
3212 | +#: help:banking.export.sepa.wizard,prefered_exec_date:0 |
3213 | +msgid "This is the date on which the file should be processed by the bank. Please keep in mind that banks only execute on working days and typically use a delay of two days between execution date and effective transfer date." |
3214 | +msgstr "" |
3215 | + |
3216 | +#. module: account_banking_sepa_credit_transfer |
3217 | +#: field:banking.export.sepa.wizard,file:0 |
3218 | +msgid "File" |
3219 | +msgstr "" |
3220 | + |
3221 | +#. module: account_banking_sepa_credit_transfer |
3222 | +#: view:banking.export.sepa.wizard:0 |
3223 | +msgid "Cancel" |
3224 | +msgstr "" |
3225 | + |
3226 | +#. module: account_banking_sepa_credit_transfer |
3227 | +#: code:addons/account_banking_sepa_credit_transfer/wizard/export_sepa.py:135 |
3228 | +#, python-format |
3229 | +msgid "Payment Type Code '%s' is not supported. The only Payment Type Codes supported for SEPA Credit Transfers are 'pain.001.001.02', 'pain.001.001.03' and 'pain.001.001.04'." |
3230 | +msgstr "" |
3231 | + |
3232 | +#. module: account_banking_sepa_credit_transfer |
3233 | +#: code:addons/account_banking_sepa_credit_transfer/wizard/export_sepa.py:90 |
3234 | +#: code:addons/account_banking_sepa_credit_transfer/wizard/export_sepa.py:135 |
3235 | +#: code:addons/account_banking_sepa_credit_transfer/wizard/export_sepa.py:284 |
3236 | +#, python-format |
3237 | +msgid "Error :" |
3238 | +msgstr "" |
3239 | + |
3240 | +#. module: account_banking_sepa_credit_transfer |
3241 | +#: field:banking.export.sepa,batch_booking:0 |
3242 | +#: field:banking.export.sepa.wizard,batch_booking:0 |
3243 | +msgid "Batch booking" |
3244 | +msgstr "" |
3245 | + |
3246 | |
3247 | === added file 'account_banking_sepa_credit_transfer/i18n/fr.po' |
3248 | --- account_banking_sepa_credit_transfer/i18n/fr.po 1970-01-01 00:00:00 +0000 |
3249 | +++ account_banking_sepa_credit_transfer/i18n/fr.po 2013-06-06 08:07:29 +0000 |
3250 | @@ -0,0 +1,251 @@ |
3251 | +# Translation of OpenERP Server. |
3252 | +# This file contains the translation of the following modules: |
3253 | +# * account_banking_sepa_credit_transfer |
3254 | +# |
3255 | +msgid "" |
3256 | +msgstr "" |
3257 | +"Project-Id-Version: OpenERP Server 6.1\n" |
3258 | +"Report-Msgid-Bugs-To: \n" |
3259 | +"POT-Creation-Date: 2013-06-06 08:01+0000\n" |
3260 | +"PO-Revision-Date: 2013-06-06 08:01+0000\n" |
3261 | +"Last-Translator: <>\n" |
3262 | +"Language-Team: \n" |
3263 | +"MIME-Version: 1.0\n" |
3264 | +"Content-Type: text/plain; charset=UTF-8\n" |
3265 | +"Content-Transfer-Encoding: \n" |
3266 | +"Plural-Forms: \n" |
3267 | + |
3268 | +#. module: account_banking_sepa_credit_transfer |
3269 | +#: field:banking.export.sepa,file:0 |
3270 | +#: field:banking.export.sepa.wizard,file_id:0 |
3271 | +msgid "SEPA XML file" |
3272 | +msgstr "Fichier SEPA XML" |
3273 | + |
3274 | +#. module: account_banking_sepa_credit_transfer |
3275 | +#: view:banking.export.sepa:0 |
3276 | +msgid "Payment order" |
3277 | +msgstr "Ordre de paiement" |
3278 | + |
3279 | +#. module: account_banking_sepa_credit_transfer |
3280 | +#: selection:banking.export.sepa.wizard,state:0 |
3281 | +msgid "Create" |
3282 | +msgstr "Créer" |
3283 | + |
3284 | +#. module: account_banking_sepa_credit_transfer |
3285 | +#: help:banking.export.sepa.wizard,msg_identification:0 |
3286 | +msgid "This is the message identification of the entire SEPA XML file. 35 characters max." |
3287 | +msgstr "Ceci est le libellé d'identification du fichier SEPA XML. 35 caractères maximum." |
3288 | + |
3289 | +#. module: account_banking_sepa_credit_transfer |
3290 | +#: field:banking.export.sepa,filename:0 |
3291 | +#: field:banking.export.sepa.wizard,filename:0 |
3292 | +msgid "Filename" |
3293 | +msgstr "Nom du fichier" |
3294 | + |
3295 | +#. module: account_banking_sepa_credit_transfer |
3296 | +#: view:banking.export.sepa:0 |
3297 | +msgid "General information" |
3298 | +msgstr "Informations générales" |
3299 | + |
3300 | +#. module: account_banking_sepa_credit_transfer |
3301 | +#: field:banking.export.sepa,state:0 |
3302 | +#: field:banking.export.sepa.wizard,state:0 |
3303 | +msgid "State" |
3304 | +msgstr "État" |
3305 | + |
3306 | +#. module: account_banking_sepa_credit_transfer |
3307 | +#: selection:banking.export.sepa,state:0 |
3308 | +msgid "Draft" |
3309 | +msgstr "Brouillon" |
3310 | + |
3311 | +#. module: account_banking_sepa_credit_transfer |
3312 | +#: field:banking.export.sepa,prefered_exec_date:0 |
3313 | +#: field:banking.export.sepa.wizard,prefered_exec_date:0 |
3314 | +msgid "Prefered execution date" |
3315 | +msgstr "Date d'exécution demandée" |
3316 | + |
3317 | +#. module: account_banking_sepa_credit_transfer |
3318 | +#: selection:banking.export.sepa,charge_bearer:0 |
3319 | +#: selection:banking.export.sepa.wizard,charge_bearer:0 |
3320 | +msgid "Shared" |
3321 | +msgstr "Partagé" |
3322 | + |
3323 | +#. module: account_banking_sepa_credit_transfer |
3324 | +#: field:banking.export.sepa,generation_date:0 |
3325 | +msgid "Generation date" |
3326 | +msgstr "Date de génération" |
3327 | + |
3328 | +#. module: account_banking_sepa_credit_transfer |
3329 | +#: model:ir.model,name:account_banking_sepa_credit_transfer.model_banking_export_sepa_wizard |
3330 | +msgid "Export SEPA Credit Transfer XML file" |
3331 | +msgstr "Exporte the fichier de virement SEPA XML" |
3332 | + |
3333 | +#. module: account_banking_sepa_credit_transfer |
3334 | +#: view:banking.export.sepa:0 |
3335 | +msgid "SEPA Credit Transfer" |
3336 | +msgstr "Virement SEPA" |
3337 | + |
3338 | +#. module: account_banking_sepa_credit_transfer |
3339 | +#: selection:banking.export.sepa.wizard,state:0 |
3340 | +msgid "Finish" |
3341 | +msgstr "Finir" |
3342 | + |
3343 | +#. module: account_banking_sepa_credit_transfer |
3344 | +#: selection:banking.export.sepa,state:0 |
3345 | +msgid "Reconciled" |
3346 | +msgstr "Réconcilié" |
3347 | + |
3348 | +#. module: account_banking_sepa_credit_transfer |
3349 | +#: model:ir.actions.act_window,name:account_banking_sepa_credit_transfer.act_banking_export_sepa_payment_order |
3350 | +msgid "Generated SEPA files" |
3351 | +msgstr "Fichiers SEPA générés" |
3352 | + |
3353 | +#. module: account_banking_sepa_credit_transfer |
3354 | +#: model:ir.actions.act_window,name:account_banking_sepa_credit_transfer.action_account_banking_sepa |
3355 | +#: model:ir.ui.menu,name:account_banking_sepa_credit_transfer.menu_account_banking_sepa |
3356 | +msgid "Generated SEPA XML files" |
3357 | +msgstr "Fichiers SEPA XML générés" |
3358 | + |
3359 | +#. module: account_banking_sepa_credit_transfer |
3360 | +#: selection:banking.export.sepa,state:0 |
3361 | +msgid "Sent" |
3362 | +msgstr "Envoyé" |
3363 | + |
3364 | +#. module: account_banking_sepa_credit_transfer |
3365 | +#: view:banking.export.sepa.wizard:0 |
3366 | +msgid "Validate" |
3367 | +msgstr "Valider" |
3368 | + |
3369 | +#. module: account_banking_sepa_credit_transfer |
3370 | +#: view:banking.export.sepa.wizard:0 |
3371 | +msgid "Generate" |
3372 | +msgstr "Générer" |
3373 | + |
3374 | +#. module: account_banking_sepa_credit_transfer |
3375 | +#: field:banking.export.sepa,msg_identification:0 |
3376 | +#: field:banking.export.sepa.wizard,msg_identification:0 |
3377 | +msgid "Message identification" |
3378 | +msgstr "Libellé d'identification" |
3379 | + |
3380 | +#. module: account_banking_sepa_credit_transfer |
3381 | +#: code:addons/account_banking_sepa_credit_transfer/wizard/export_sepa.py:284 |
3382 | +#, python-format |
3383 | +msgid "The generated XML file is not valid against the official XML Schema Definition. The generated XML file and the full error have been written in the server logs. Here is the error, which may give you an idea on the cause of the problem : %s" |
3384 | +msgstr "Le fichier XML généré n'est pas valide par rapport à la Définition du Schéma XML officiel. Le fichier XML généré et le message d'erreur complet ont été écrits dans les logs du serveur. Voici l'erreur, qui vous donnera peut-être une idée sur la cause du problème : %s" |
3385 | + |
3386 | +#. module: account_banking_sepa_credit_transfer |
3387 | +#: field:banking.export.sepa,total_amount:0 |
3388 | +#: field:banking.export.sepa.wizard,total_amount:0 |
3389 | +msgid "Total amount" |
3390 | +msgstr "Montant total" |
3391 | + |
3392 | +#. module: account_banking_sepa_credit_transfer |
3393 | +#: help:banking.export.sepa,charge_bearer:0 |
3394 | +#: help:banking.export.sepa.wizard,charge_bearer:0 |
3395 | +msgid "Shared : 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 (most transfers use this). Borne by creditor : all transaction charges are to be borne by the creditor. Borne by debtor : all transaction charges are to be borne by the debtor. Following service level : transaction charges are to be applied following the rules agreed in the service level and/or scheme." |
3396 | +msgstr "Partagés : les frais bancaires côté émetteur sont à la charge de l'émetteur et les frais bancaires côté destinataire sont à la charge du destinataire (la plupart des virements utilisent cette répartition). Supportés par le destinataire : tous les frais bancaires sont à la charge du destinataire. Supportés par l'émetteur : tous les frais bancaires sont à la charge de l'émetteur. Suivant le niveau de service : la répartition des frais bancaires suit les règles pré-établies dans le contrat avec la banque." |
3397 | + |
3398 | +#. module: account_banking_sepa_credit_transfer |
3399 | +#: selection:banking.export.sepa,charge_bearer:0 |
3400 | +#: selection:banking.export.sepa.wizard,charge_bearer:0 |
3401 | +msgid "Borne by creditor" |
3402 | +msgstr "Supportés par le destinataire" |
3403 | + |
3404 | +#. module: account_banking_sepa_credit_transfer |
3405 | +#: view:banking.export.sepa:0 |
3406 | +#: field:banking.export.sepa,payment_order_ids:0 |
3407 | +#: field:banking.export.sepa.wizard,payment_order_ids:0 |
3408 | +msgid "Payment orders" |
3409 | +msgstr "Ordres de paiement" |
3410 | + |
3411 | +#. module: account_banking_sepa_credit_transfer |
3412 | +#: code:addons/account_banking_sepa_credit_transfer/wizard/export_sepa.py:90 |
3413 | +#, python-format |
3414 | +msgid "This IBAN is not valid : %s" |
3415 | +msgstr "Cet IBAN n'est pas valide : %s" |
3416 | + |
3417 | +#. module: account_banking_sepa_credit_transfer |
3418 | +#: view:banking.export.sepa.wizard:0 |
3419 | +msgid "SEPA XML file generation" |
3420 | +msgstr "Génération du fichier SEPA XML" |
3421 | + |
3422 | +#. module: account_banking_sepa_credit_transfer |
3423 | +#: view:banking.export.sepa.wizard:0 |
3424 | +msgid "Reference for further communication" |
3425 | +msgstr "Référence pour communication ultérieure" |
3426 | + |
3427 | +#. module: account_banking_sepa_credit_transfer |
3428 | +#: view:banking.export.sepa.wizard:0 |
3429 | +msgid "Processing details" |
3430 | +msgstr "Paramètres" |
3431 | + |
3432 | +#. module: account_banking_sepa_credit_transfer |
3433 | +#: model:ir.model,name:account_banking_sepa_credit_transfer.model_banking_export_sepa |
3434 | +msgid "SEPA export" |
3435 | +msgstr "Export SEPA" |
3436 | + |
3437 | +#. module: account_banking_sepa_credit_transfer |
3438 | +#: selection:banking.export.sepa,charge_bearer:0 |
3439 | +#: selection:banking.export.sepa.wizard,charge_bearer:0 |
3440 | +msgid "Borne by debtor" |
3441 | +msgstr "Supportés par l'émetteur" |
3442 | + |
3443 | +#. module: account_banking_sepa_credit_transfer |
3444 | +#: field:banking.export.sepa,nb_transactions:0 |
3445 | +#: field:banking.export.sepa.wizard,nb_transactions:0 |
3446 | +msgid "Number of transactions" |
3447 | +msgstr "Nombre de transactions" |
3448 | + |
3449 | +#. module: account_banking_sepa_credit_transfer |
3450 | +#: selection:banking.export.sepa,charge_bearer:0 |
3451 | +#: selection:banking.export.sepa.wizard,charge_bearer:0 |
3452 | +msgid "Following service level" |
3453 | +msgstr "Suivant le niveau de service" |
3454 | + |
3455 | +#. module: account_banking_sepa_credit_transfer |
3456 | +#: field:banking.export.sepa,charge_bearer:0 |
3457 | +#: field:banking.export.sepa.wizard,charge_bearer:0 |
3458 | +msgid "Charge bearer" |
3459 | +msgstr "Répartition des frais" |
3460 | + |
3461 | +#. module: account_banking_sepa_credit_transfer |
3462 | +#: help:banking.export.sepa,batch_booking:0 |
3463 | +#: help:banking.export.sepa.wizard,batch_booking:0 |
3464 | +msgid "If true, the bank statement will display only one debit line for all the wire transfers of the SEPA XML file ; if false, the bank statement will display one debit line per wire transfer of the SEPA XML file." |
3465 | +msgstr "Si coché, le relevé de compte ne comportera qu'une ligne de débit pour tous les virements du fichier SEPA XML ; si non coché, le relevé de compte comportera une ligne de débit pour chaque virement du fichier SEPA XML." |
3466 | + |
3467 | +#. module: account_banking_sepa_credit_transfer |
3468 | +#: help:banking.export.sepa.wizard,prefered_exec_date:0 |
3469 | +msgid "This is the date on which the file should be processed by the bank. Please keep in mind that banks only execute on working days and typically use a delay of two days between execution date and effective transfer date." |
3470 | +msgstr "C'est la date à laquelle le fichier doit être traité par la banque. Gardez en tête que les banques réalisent des traitements seulement les jours ouvrés et ont habituellement un délai de 2 jours entre la date de traitement et la date du transfert effectif." |
3471 | + |
3472 | +#. module: account_banking_sepa_credit_transfer |
3473 | +#: field:banking.export.sepa.wizard,file:0 |
3474 | +msgid "File" |
3475 | +msgstr "Fichier" |
3476 | + |
3477 | +#. module: account_banking_sepa_credit_transfer |
3478 | +#: view:banking.export.sepa.wizard:0 |
3479 | +msgid "Cancel" |
3480 | +msgstr "Annuler" |
3481 | + |
3482 | +#. module: account_banking_sepa_credit_transfer |
3483 | +#: code:addons/account_banking_sepa_credit_transfer/wizard/export_sepa.py:135 |
3484 | +#, python-format |
3485 | +msgid "Payment Type Code '%s' is not supported. The only Payment Type Codes supported for SEPA Credit Transfers are 'pain.001.001.02', 'pain.001.001.03' and 'pain.001.001.04'." |
3486 | +msgstr "Le code '%s' pour le Type de Paiment n'est pas supporté. Les seuls codes de Types de Paiement supportés pour les virements SEPA sont 'pain.001.001.02', 'pain.001.001.03' et 'pain.001.001.04'." |
3487 | + |
3488 | +#. module: account_banking_sepa_credit_transfer |
3489 | +#: code:addons/account_banking_sepa_credit_transfer/wizard/export_sepa.py:90 |
3490 | +#: code:addons/account_banking_sepa_credit_transfer/wizard/export_sepa.py:135 |
3491 | +#: code:addons/account_banking_sepa_credit_transfer/wizard/export_sepa.py:284 |
3492 | +#, python-format |
3493 | +msgid "Error :" |
3494 | +msgstr "Erreur :" |
3495 | + |
3496 | +#. module: account_banking_sepa_credit_transfer |
3497 | +#: field:banking.export.sepa,batch_booking:0 |
3498 | +#: field:banking.export.sepa.wizard,batch_booking:0 |
3499 | +msgid "Batch booking" |
3500 | +msgstr "Débit groupé" |
3501 | + |
3502 | |
3503 | === added directory 'account_banking_sepa_credit_transfer/security' |
3504 | === added file 'account_banking_sepa_credit_transfer/security/ir.model.access.csv' |
3505 | --- account_banking_sepa_credit_transfer/security/ir.model.access.csv 1970-01-01 00:00:00 +0000 |
3506 | +++ account_banking_sepa_credit_transfer/security/ir.model.access.csv 2013-06-06 08:07:29 +0000 |
3507 | @@ -0,0 +1,2 @@ |
3508 | +"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink" |
3509 | +"access_banking_export_sepa","Full access on banking.export.sepa","model_banking_export_sepa","account_payment.group_account_payment",1,1,1,1 |
3510 | |
3511 | === added directory 'account_banking_sepa_credit_transfer/wizard' |
3512 | === added file 'account_banking_sepa_credit_transfer/wizard/__init__.py' |
3513 | --- account_banking_sepa_credit_transfer/wizard/__init__.py 1970-01-01 00:00:00 +0000 |
3514 | +++ account_banking_sepa_credit_transfer/wizard/__init__.py 2013-06-06 08:07:29 +0000 |
3515 | @@ -0,0 +1,23 @@ |
3516 | +# -*- encoding: utf-8 -*- |
3517 | +############################################################################## |
3518 | +# |
3519 | +# SEPA Credit Transfer module for OpenERP |
3520 | +# Copyright (C) 2010-2013 Akretion (http://www.akretion.com) |
3521 | +# @author: Alexis de Lattre <alexis.delattre@akretion.com> |
3522 | +# |
3523 | +# This program is free software: you can redistribute it and/or modify |
3524 | +# it under the terms of the GNU Affero General Public License as |
3525 | +# published by the Free Software Foundation, either version 3 of the |
3526 | +# License, or (at your option) any later version. |
3527 | +# |
3528 | +# This program is distributed in the hope that it will be useful, |
3529 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of |
3530 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
3531 | +# GNU Affero General Public License for more details. |
3532 | +# |
3533 | +# You should have received a copy of the GNU Affero General Public License |
3534 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. |
3535 | +# |
3536 | +############################################################################## |
3537 | + |
3538 | +import export_sepa |
3539 | |
3540 | === added file 'account_banking_sepa_credit_transfer/wizard/export_sepa.py' |
3541 | --- account_banking_sepa_credit_transfer/wizard/export_sepa.py 1970-01-01 00:00:00 +0000 |
3542 | +++ account_banking_sepa_credit_transfer/wizard/export_sepa.py 2013-06-06 08:07:29 +0000 |
3543 | @@ -0,0 +1,341 @@ |
3544 | +# -*- encoding: utf-8 -*- |
3545 | +############################################################################## |
3546 | +# |
3547 | +# SEPA Credit Transfer module for OpenERP |
3548 | +# Copyright (C) 2010-2013 Akretion (http://www.akretion.com) |
3549 | +# @author: Alexis de Lattre <alexis.delattre@akretion.com> |
3550 | +# |
3551 | +# This program is free software: you can redistribute it and/or modify |
3552 | +# it under the terms of the GNU Affero General Public License as |
3553 | +# published by the Free Software Foundation, either version 3 of the |
3554 | +# License, or (at your option) any later version. |
3555 | +# |
3556 | +# This program is distributed in the hope that it will be useful, |
3557 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of |
3558 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
3559 | +# GNU Affero General Public License for more details. |
3560 | +# |
3561 | +# You should have received a copy of the GNU Affero General Public License |
3562 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. |
3563 | +# |
3564 | +############################################################################## |
3565 | + |
3566 | + |
3567 | +from osv import osv, fields |
3568 | +import base64 |
3569 | +from datetime import datetime, timedelta |
3570 | +from tools.translate import _ |
3571 | +import tools |
3572 | +from lxml import etree |
3573 | +import logging |
3574 | +import netsvc |
3575 | + |
3576 | +_logger = logging.getLogger(__name__) |
3577 | + |
3578 | + |
3579 | +class banking_export_sepa_wizard(osv.osv_memory): |
3580 | + _name = 'banking.export.sepa.wizard' |
3581 | + _description = 'Export SEPA Credit Transfer XML file' |
3582 | + _columns = { |
3583 | + 'state': fields.selection([('create', 'Create'), ('finish', 'Finish')], |
3584 | + 'State', readonly=True), |
3585 | + 'msg_identification': fields.char('Message identification', size=35, |
3586 | + # Can't set required=True on the field because it blocks |
3587 | + # the launch of the wizard -> I set it as required in the view |
3588 | + help='This is the message identification of the entire SEPA XML file. 35 characters max.'), |
3589 | + 'batch_booking': fields.boolean('Batch booking', |
3590 | + help="If true, the bank statement will display only one debit line for all the wire transfers of the SEPA XML file ; if false, the bank statement will display one debit line per wire transfer of the SEPA XML file."), |
3591 | + 'prefered_exec_date': fields.date('Prefered execution date', |
3592 | + help='This is the date on which the file should be processed by the bank. Please keep in mind that banks only execute on working days and typically use a delay of two days between execution date and effective transfer date.'), |
3593 | + 'charge_bearer': fields.selection([ |
3594 | + ('SHAR', 'Shared'), |
3595 | + ('CRED', 'Borne by creditor'), |
3596 | + ('DEBT', 'Borne by debtor'), |
3597 | + ('SLEV', 'Following service level'), |
3598 | + ], 'Charge bearer', required=True, |
3599 | + help='Shared : 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 (most transfers use this). Borne by creditor : all transaction charges are to be borne by the creditor. Borne by debtor : all transaction charges are to be borne by the debtor. Following service level : transaction charges are to be applied following the rules agreed in the service level and/or scheme.'), |
3600 | + 'nb_transactions': fields.related('file_id', 'nb_transactions', |
3601 | + type='integer', string='Number of transactions', readonly=True), |
3602 | + 'total_amount': fields.related('file_id', 'total_amount', type='float', |
3603 | + string='Total amount', readonly=True), |
3604 | + 'file_id': fields.many2one('banking.export.sepa', 'SEPA XML file', readonly=True), |
3605 | + 'file': fields.related('file_id', 'file', string="File", type='binary', |
3606 | + readonly=True), |
3607 | + 'filename': fields.related('file_id', 'filename', string="Filename", |
3608 | + type='char', size=256, readonly=True), |
3609 | + 'payment_order_ids': fields.many2many('payment.order', |
3610 | + 'wiz_sepa_payorders_rel', 'wizard_id', 'payment_order_id', |
3611 | + 'Payment orders', readonly=True), |
3612 | + } |
3613 | + |
3614 | + _defaults = { |
3615 | + 'charge_bearer': 'SLEV', |
3616 | + 'state': 'create', |
3617 | + } |
3618 | + |
3619 | + |
3620 | + def _limit_size(self, cr, uid, field, max_size, context=None): |
3621 | + '''Limit size of strings to respect the PAIN standard''' |
3622 | + max_size = int(max_size) |
3623 | + return field[0:max_size] |
3624 | + |
3625 | + |
3626 | + def _validate_iban(self, cr, uid, iban, context=None): |
3627 | + '''if IBAN is valid, returns IBAN |
3628 | + if IBAN is NOT valid, raises an error message''' |
3629 | + partner_bank_obj = self.pool.get('res.partner.bank') |
3630 | + if partner_bank_obj.is_iban_valid(cr, uid, iban, context=context): |
3631 | + return iban.replace(' ', '') |
3632 | + else: |
3633 | + raise osv.except_osv(_('Error :'), _("This IBAN is not valid : %s") % iban) |
3634 | + |
3635 | + def create(self, cr, uid, vals, context=None): |
3636 | + payment_order_ids = context.get('active_ids', []) |
3637 | + vals.update({ |
3638 | + 'payment_order_ids': [[6, 0, payment_order_ids]], |
3639 | + }) |
3640 | + return super(banking_export_sepa_wizard, self).create(cr, uid, |
3641 | + vals, context=context) |
3642 | + |
3643 | + |
3644 | + def create_sepa(self, cr, uid, ids, context=None): |
3645 | + ''' |
3646 | + Creates the SEPA Credit Transfer file. That's the important code ! |
3647 | + ''' |
3648 | + payment_order_obj = self.pool.get('payment.order') |
3649 | + |
3650 | + sepa_export = self.browse(cr, uid, ids[0], context=context) |
3651 | + |
3652 | + my_company_name = sepa_export.payment_order_ids[0].mode.bank_id.partner_id.name |
3653 | + my_company_iban = self._validate_iban(cr, uid, sepa_export.payment_order_ids[0].mode.bank_id.iban, context=context) |
3654 | + my_company_bic = sepa_export.payment_order_ids[0].mode.bank_id.bank.bic |
3655 | + #my_company_country_code = sepa_export.payment_order_ids[0].mode.bank_id.partner_id.address[0].country_id.code |
3656 | + #my_company_city = sepa_export.payment_order_ids[0].mode.bank_id.partner_id.address[0].city |
3657 | + #my_company_street1 = sepa_export.payment_order_ids[0].mode.bank_id.partner_id.address[0].street |
3658 | + pain_flavor = sepa_export.payment_order_ids[0].mode.type.code |
3659 | + if pain_flavor == 'pain.001.001.02': |
3660 | + bic_xml_tag = 'BIC' |
3661 | + name_maxsize = 70 |
3662 | + root_xml_tag = 'pain.001.001.02' |
3663 | + elif pain_flavor == 'pain.001.001.03': |
3664 | + bic_xml_tag = 'BIC' |
3665 | + # size 70 -> 140 for <Nm> with pain.001.001.03 |
3666 | + # BUT the European Payment Council, in the document |
3667 | + # "SEPA Credit Transfer Scheme Customer-to-bank Implementation guidelines" v6.0 |
3668 | + # available on http://www.europeanpaymentscouncil.eu/knowledge_bank.cfm |
3669 | + # says that 'Nm' should be limited to 70 |
3670 | + # so we follow the "European Payment Council" and we put 70 and not 140 |
3671 | + name_maxsize = 70 |
3672 | + root_xml_tag = 'CstmrCdtTrfInitn' |
3673 | + elif pain_flavor == 'pain.001.001.04': |
3674 | + bic_xml_tag = 'BICFI' |
3675 | + name_maxsize = 140 |
3676 | + root_xml_tag = 'CstmrCdtTrfInitn' |
3677 | + else: |
3678 | + raise osv.except_osv(_('Error :'), _("Payment Type Code '%s' is not supported. The only Payment Type Codes supported for SEPA Credit Transfers are 'pain.001.001.02', 'pain.001.001.03' and 'pain.001.001.04'.") % pain_flavor) |
3679 | + if sepa_export.batch_booking: |
3680 | + my_batch_booking = 'true' |
3681 | + else: |
3682 | + my_batch_booking = 'false' |
3683 | + my_msg_identification = sepa_export.msg_identification |
3684 | + if sepa_export.prefered_exec_date: |
3685 | + my_requested_exec_date = sepa_export.prefered_exec_date |
3686 | + else: |
3687 | + my_requested_exec_date = datetime.strftime(datetime.today() + timedelta(days=1), '%Y-%m-%d') |
3688 | + |
3689 | + pain_ns = { |
3690 | + 'xsi': 'http://www.w3.org/2001/XMLSchema-instance', |
3691 | + None: 'urn:iso:std:iso:20022:tech:xsd:%s' % pain_flavor, |
3692 | + } |
3693 | + |
3694 | + root = etree.Element('Document', nsmap=pain_ns) |
3695 | + pain_root = etree.SubElement(root, root_xml_tag) |
3696 | + # A. Group header |
3697 | + group_header = etree.SubElement(pain_root, 'GrpHdr') |
3698 | + message_identification = etree.SubElement(group_header, 'MsgId') |
3699 | + message_identification.text = self._limit_size(cr, uid, my_msg_identification, 35, context=context) |
3700 | + creation_date_time = etree.SubElement(group_header, 'CreDtTm') |
3701 | + creation_date_time.text = datetime.strftime(datetime.today(), '%Y-%m-%dT%H:%M:%S') |
3702 | + if pain_flavor == 'pain.001.001.02': |
3703 | + # batch_booking is in "Group header" with pain.001.001.02 |
3704 | + # and in "Payment info" in pain.001.001.03/04 |
3705 | + batch_booking = etree.SubElement(group_header, 'BtchBookg') |
3706 | + batch_booking.text = my_batch_booking |
3707 | + nb_of_transactions_grphdr = etree.SubElement(group_header, 'NbOfTxs') |
3708 | + control_sum_grphdr = etree.SubElement(group_header, 'CtrlSum') |
3709 | + # Grpg removed in pain.001.001.03 |
3710 | + if pain_flavor == 'pain.001.001.02': |
3711 | + grouping = etree.SubElement(group_header, 'Grpg') |
3712 | + grouping.text = 'GRPD' |
3713 | + initiating_party = etree.SubElement(group_header, 'InitgPty') |
3714 | + initiating_party_name = etree.SubElement(initiating_party, 'Nm') |
3715 | + initiating_party_name.text = self._limit_size(cr, uid, my_company_name, name_maxsize, context=context) |
3716 | + # B. Payment info |
3717 | + payment_info = etree.SubElement(pain_root, 'PmtInf') |
3718 | + payment_info_identification = etree.SubElement(payment_info, 'PmtInfId') |
3719 | + payment_info_identification.text = self._limit_size(cr, uid, my_msg_identification, 35, context=context) |
3720 | + payment_method = etree.SubElement(payment_info, 'PmtMtd') |
3721 | + payment_method.text = 'TRF' |
3722 | + if pain_flavor in ['pain.001.001.03', 'pain.001.001.04']: |
3723 | + # batch_booking is in "Group header" with pain.001.001.02 |
3724 | + # and in "Payment info" in pain.001.001.03/04 |
3725 | + batch_booking = etree.SubElement(payment_info, 'BtchBookg') |
3726 | + batch_booking.text = my_batch_booking |
3727 | + # It may seem surprising, but the |
3728 | + # "SEPA Credit Transfer Scheme Customer-to-bank Implementation guidelines" |
3729 | + # v6.0 says that control sum and nb_of_transactions should be present |
3730 | + # at both "group header" level and "payment info" level |
3731 | + # This seems to be confirmed by the tests carried out at |
3732 | + # BNP Paribas in PAIN v001.001.03 |
3733 | + if pain_flavor in ['pain.001.001.03', 'pain.001.001.04']: |
3734 | + nb_of_transactions_pmtinf = etree.SubElement(payment_info, 'NbOfTxs') |
3735 | + control_sum_pmtinf = etree.SubElement(payment_info, 'CtrlSum') |
3736 | + payment_type_info = etree.SubElement(payment_info, 'PmtTpInf') |
3737 | + service_level = etree.SubElement(payment_type_info, 'SvcLvl') |
3738 | + service_level_code = etree.SubElement(service_level, 'Cd') |
3739 | + service_level_code.text = 'SEPA' |
3740 | + requested_exec_date = etree.SubElement(payment_info, 'ReqdExctnDt') |
3741 | + requested_exec_date.text = my_requested_exec_date |
3742 | + debtor = etree.SubElement(payment_info, 'Dbtr') |
3743 | + debtor_name = etree.SubElement(debtor, 'Nm') |
3744 | + debtor_name.text = self._limit_size(cr, uid, my_company_name, name_maxsize, context=context) |
3745 | +# debtor_address = etree.SubElement(debtor, 'PstlAdr') |
3746 | +# debtor_street = etree.SubElement(debtor_address, 'AdrLine') |
3747 | +# debtor_street.text = my_company_street1 |
3748 | +# debtor_city = etree.SubElement(debtor_address, 'AdrLine') |
3749 | +# debtor_city.text = my_company_city |
3750 | +# debtor_country = etree.SubElement(debtor_address, 'Ctry') |
3751 | +# debtor_country.text = my_company_country_code |
3752 | + debtor_account = etree.SubElement(payment_info, 'DbtrAcct') |
3753 | + debtor_account_id = etree.SubElement(debtor_account, 'Id') |
3754 | + debtor_account_iban = etree.SubElement(debtor_account_id, 'IBAN') |
3755 | + debtor_account_iban.text = my_company_iban |
3756 | + debtor_agent = etree.SubElement(payment_info, 'DbtrAgt') |
3757 | + debtor_agent_institution = etree.SubElement(debtor_agent, 'FinInstnId') |
3758 | + debtor_agent_bic = etree.SubElement(debtor_agent_institution, bic_xml_tag) |
3759 | + debtor_agent_bic.text = my_company_bic |
3760 | + charge_bearer = etree.SubElement(payment_info, 'ChrgBr') |
3761 | + charge_bearer.text = sepa_export.charge_bearer |
3762 | + |
3763 | + transactions_count = 0 |
3764 | + total_amount = 0.0 |
3765 | + amount_control_sum = 0.0 |
3766 | + # Iterate on payment orders |
3767 | + for payment_order in sepa_export.payment_order_ids: |
3768 | + total_amount = total_amount + payment_order.total |
3769 | + # Iterate each payment lines |
3770 | + for line in payment_order.line_ids: |
3771 | + transactions_count += 1 |
3772 | + # C. Credit Transfer Transaction Info |
3773 | + credit_transfer_transaction_info = etree.SubElement(payment_info, 'CdtTrfTxInf') |
3774 | + payment_identification = etree.SubElement(credit_transfer_transaction_info, 'PmtId') |
3775 | + instruction_identification = etree.SubElement(payment_identification, 'InstrId') |
3776 | + instruction_identification.text = self._limit_size(cr, uid, line.communication, 35, context=context) #otherwise, we can reach the invoice fields via ml_inv_ref |
3777 | + end2end_identification = etree.SubElement(payment_identification, 'EndToEndId') |
3778 | + end2end_identification.text = self._limit_size(cr, uid, line.communication, 35, context=context) |
3779 | + amount = etree.SubElement(credit_transfer_transaction_info, 'Amt') |
3780 | + instructed_amount = etree.SubElement(amount, 'InstdAmt', Ccy=line.currency.name) |
3781 | + instructed_amount.text = '%.2f' % line.amount_currency |
3782 | + amount_control_sum += line.amount_currency |
3783 | + creditor_agent = etree.SubElement(credit_transfer_transaction_info, 'CdtrAgt') |
3784 | + creditor_agent_institution = etree.SubElement(creditor_agent, 'FinInstnId') |
3785 | + creditor_agent_bic = etree.SubElement(creditor_agent_institution, bic_xml_tag) |
3786 | + creditor_agent_bic.text = line.bank_id.bank.bic |
3787 | + creditor = etree.SubElement(credit_transfer_transaction_info, 'Cdtr') |
3788 | + creditor_name = etree.SubElement(creditor, 'Nm') |
3789 | + creditor_name.text = self._limit_size(cr, uid, line.partner_id.name, name_maxsize, context=context) |
3790 | +# I don't think they want it |
3791 | +# If they want it, we need to implement full spec p26 appendix |
3792 | +# creditor_address = etree.SubElement(creditor, 'PstlAdr') |
3793 | +# creditor_street = etree.SubElement(creditor_address, 'AdrLine') |
3794 | +# creditor_street.text = line.partner_id.address[0].street |
3795 | +# creditor_city = etree.SubElement(creditor_address, 'AdrLine') |
3796 | +# creditor_city.text = line.partner_id.address[0].city |
3797 | +# creditor_country = etree.SubElement(creditor_address, 'Ctry') |
3798 | +# creditor_country.text = line.partner_id.address[0].country_id.code |
3799 | + creditor_account = etree.SubElement(credit_transfer_transaction_info, 'CdtrAcct') |
3800 | + creditor_account_id = etree.SubElement(creditor_account, 'Id') |
3801 | + creditor_account_iban = etree.SubElement(creditor_account_id, 'IBAN') |
3802 | + creditor_account_iban.text = self._validate_iban(cr, uid, line.bank_id.iban, context=context) |
3803 | + remittance_info = etree.SubElement(credit_transfer_transaction_info, 'RmtInf') |
3804 | + # switch to Structured (Strdr) ? If we do it, beware that the format is not the same between pain 02 and pain 03 |
3805 | + remittance_info_unstructured = etree.SubElement(remittance_info, 'Ustrd') |
3806 | + remittance_info_unstructured.text = self._limit_size(cr, uid, line.communication, 140, context=context) |
3807 | + |
3808 | + if pain_flavor in ['pain.001.001.03', 'pain.001.001.04']: |
3809 | + nb_of_transactions_grphdr.text = nb_of_transactions_pmtinf.text = str(transactions_count) |
3810 | + control_sum_grphdr.text = control_sum_pmtinf.text = '%.2f' % amount_control_sum |
3811 | + else: |
3812 | + nb_of_transactions_grphdr.text = str(transactions_count) |
3813 | + control_sum_grphdr.text = '%.2f' % amount_control_sum |
3814 | + |
3815 | + |
3816 | + xml_string = etree.tostring(root, pretty_print=True, encoding='UTF-8', xml_declaration=True) |
3817 | + _logger.debug("Generated SEPA XML file below") |
3818 | + _logger.debug(xml_string) |
3819 | + official_pain_schema = etree.XMLSchema(etree.parse(tools.file_open('account_banking_sepa_credit_transfer/data/%s.xsd' % pain_flavor))) |
3820 | + |
3821 | + try: |
3822 | + official_pain_schema.validate(root) |
3823 | + except Exception, e: |
3824 | + _logger.warning("The XML file is invalid against the XML Schema Definition") |
3825 | + _logger.warning(xml_string) |
3826 | + _logger.warning(e) |
3827 | + raise osv.except_osv(_('Error :'), _('The generated XML file is not valid against the official XML Schema Definition. The generated XML file and the full error have been written in the server logs. Here is the error, which may give you an idea on the cause of the problem : %s') % str(e)) |
3828 | + |
3829 | + # CREATE the banking.export.sepa record |
3830 | + file_id = self.pool.get('banking.export.sepa').create(cr, uid, |
3831 | + { |
3832 | + 'msg_identification': my_msg_identification, |
3833 | + 'batch_booking': sepa_export.batch_booking, |
3834 | + 'charge_bearer': sepa_export.charge_bearer, |
3835 | + 'prefered_exec_date': sepa_export.prefered_exec_date, |
3836 | + 'total_amount': total_amount, |
3837 | + 'nb_transactions': transactions_count, |
3838 | + 'file': base64.encodestring(xml_string), |
3839 | + 'payment_order_ids': [ |
3840 | + (6, 0, [x.id for x in sepa_export.payment_order_ids]) |
3841 | + ], |
3842 | + }, context=context) |
3843 | + |
3844 | + self.write(cr, uid, ids, { |
3845 | + 'file_id': file_id, |
3846 | + 'state': 'finish', |
3847 | + }, context=context) |
3848 | + |
3849 | + action = { |
3850 | + 'name': 'SEPA XML', |
3851 | + 'type': 'ir.actions.act_window', |
3852 | + 'view_type': 'form', |
3853 | + 'view_mode': 'form,tree', |
3854 | + 'res_model': self._name, |
3855 | + 'res_id': ids[0], |
3856 | + 'target': 'new', |
3857 | + } |
3858 | + return action |
3859 | + |
3860 | + |
3861 | + def cancel_sepa(self, cr, uid, ids, context=None): |
3862 | + ''' |
3863 | + Cancel the SEPA PAIN: just drop the file |
3864 | + ''' |
3865 | + sepa_export = self.browse(cr, uid, ids[0], context=context) |
3866 | + self.pool.get('banking.export.sepa').unlink(cr, uid, sepa_export.file_id.id, context=context) |
3867 | + return {'type': 'ir.actions.act_window_close'} |
3868 | + |
3869 | + |
3870 | + def save_sepa(self, cr, uid, ids, context=None): |
3871 | + ''' |
3872 | + Save the SEPA PAIN: mark all payments in the file as 'sent'. |
3873 | + ''' |
3874 | + sepa_export = self.browse(cr, uid, ids[0], context=context) |
3875 | + sepa_file = self.pool.get('banking.export.sepa').write(cr, uid, |
3876 | + sepa_export.file_id.id, {'state': 'sent'}, context=context) |
3877 | + wf_service = netsvc.LocalService('workflow') |
3878 | + for order in sepa_export.payment_order_ids: |
3879 | + wf_service.trg_validate(uid, 'payment.order', order.id, 'sent', cr) |
3880 | + return {'type': 'ir.actions.act_window_close'} |
3881 | + |
3882 | + |
3883 | +banking_export_sepa_wizard() |
3884 | + |
3885 | |
3886 | === added file 'account_banking_sepa_credit_transfer/wizard/export_sepa_view.xml' |
3887 | --- account_banking_sepa_credit_transfer/wizard/export_sepa_view.xml 1970-01-01 00:00:00 +0000 |
3888 | +++ account_banking_sepa_credit_transfer/wizard/export_sepa_view.xml 2013-06-06 08:07:29 +0000 |
3889 | @@ -0,0 +1,48 @@ |
3890 | +<?xml version="1.0" encoding="utf-8"?> |
3891 | +<!-- |
3892 | + Copyright (C) 2010-2012 Akretion (http://www.akretion.com) |
3893 | + @author: Alexis de Lattre <alexis.delattre@akretion.com> |
3894 | + The licence is in the file __openerp__.py |
3895 | +--> |
3896 | +<openerp> |
3897 | +<data> |
3898 | + |
3899 | +<record id="banking_export_sepa_wizard_view" model="ir.ui.view"> |
3900 | + <field name="name">banking.export.sepa.wizard.view</field> |
3901 | + <field name="model">banking.export.sepa.wizard</field> |
3902 | + <field name="type">form</field> |
3903 | + <field name="arch" type="xml"> |
3904 | + <form string="SEPA XML file generation"> |
3905 | + <field name="state" invisible="True"/> |
3906 | + <group states="create"> |
3907 | + <separator colspan="4" string="Processing details" /> |
3908 | + <field name="batch_booking" /> |
3909 | + <field name="prefered_exec_date" /> |
3910 | + <field name="charge_bearer" /> |
3911 | + <separator colspan="4" string="Reference for further communication" /> |
3912 | + <field name="msg_identification" required="True" /> |
3913 | + <newline /> |
3914 | + <button icon="gtk-close" special="cancel" string="Cancel" colspan="2"/> |
3915 | + <button icon="gtk-ok" string="Generate" name="create_sepa" type="object" colspan="2"/> |
3916 | + </group> |
3917 | + <group states="finish"> |
3918 | + <field name="total_amount" /> |
3919 | + <!-- Don't display this field, to avoid this bug : |
3920 | + https://bugs.launchpad.net/openobject-client-web/+bug/718989 |
3921 | + Bug desc : in the Gtk client, you have to clic twice on the |
3922 | + "Create" button. |
3923 | + <field name="nb_transactions" /> --> |
3924 | + <newline /> |
3925 | + <field name="file_id" /> |
3926 | + <field name="file" filename="filename" /> |
3927 | + <field name="filename" invisible="True"/> |
3928 | + <newline /> |
3929 | + <button icon="gtk-cancel" string="Cancel" name="cancel_sepa" type="object" colspan="2"/> |
3930 | + <button icon="gtk-ok" string="Validate" name="save_sepa" type="object" colspan="2"/> |
3931 | + </group> |
3932 | + </form> |
3933 | + </field> |
3934 | +</record> |
3935 | + |
3936 | +</data> |
3937 | +</openerp> |
Hi Alexis,
your proposal has been eagerly awaited! Thank you for your work. We are currently testing this version, and it looks pretty good so far.
We have not got the validation back from the bank, but you may be aware that the specs leave room enough for their own dialect of the standard. I am afraid we will hit the requirement to allow for such dialects sooner or later. Have you considered a more flexible approach so that some dialect module can define their own processing for specific nodes only?
Code looks pretty good on the whole. One question:
At line 3101 there starts a pretty weird translation string, containing the good part of a python code file. The translation string that triggered that is commented out, so that may be the problem. The fact that the iban check is disabled looks dubious in itself. Is that something that can be resolved?