sepa 0.0.7 → 0.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/sepa/direct_debit_order.rb +19 -5
- data/lib/sepa/payments_initiation/generic_organisation_identification_1.rb +8 -0
- data/lib/sepa/payments_initiation/generic_person_identification_1.rb +8 -0
- data/lib/sepa/payments_initiation/organisation_identification.rb +6 -0
- data/lib/sepa/payments_initiation/organisation_identification_scheme_name_1_choice.rb +4 -0
- data/lib/sepa/payments_initiation/party_choice_identification.rb +6 -0
- data/lib/sepa/payments_initiation/party_identification.rb +0 -1
- data/lib/sepa/payments_initiation/person_identification_scheme_name_1_choice.rb +4 -0
- data/lib/sepa/payments_initiation/private_identification.rb +6 -0
- data/lib/sepa/version.rb +1 -1
- data/spec/sepa/direct_debit_order_spec.rb +17 -6
- data/spec/sepa/expected_customer_direct_debit_initiation_v02.xml +24 -0
- data/spec/sepa/expected_customer_direct_debit_initiation_v04.xml +12 -0
- data/spec/sepa/expected_customer_direct_debit_initiation_v04_with_org_id.xml +305 -0
- metadata +10 -2
@@ -3,7 +3,6 @@
|
|
3
3
|
require 'sepa/payments_initiation/pain00800104/customer_direct_debit_initiation'
|
4
4
|
|
5
5
|
class Sepa::DirectDebitOrder
|
6
|
-
|
7
6
|
module Helper
|
8
7
|
def blank? item
|
9
8
|
item == nil || blank_string?(item)
|
@@ -75,13 +74,27 @@ class Sepa::DirectDebitOrder
|
|
75
74
|
end
|
76
75
|
end
|
77
76
|
|
77
|
+
class PrivateSepaIdentifier < Struct.new(:sepa_identifier)
|
78
|
+
def to_properties prefix, opts
|
79
|
+
{ "#{prefix}.identification.private_identification.other.identification" => sepa_identifier,
|
80
|
+
"#{prefix}.identification.private_identification.other.scheme_name.proprietary" => "SEPA" }
|
81
|
+
end
|
82
|
+
end
|
83
|
+
|
84
|
+
class OrganisationSepaIdentifier < Struct.new(:sepa_identifier)
|
85
|
+
def to_properties prefix, opts
|
86
|
+
{ "#{prefix}.identification.organisation_identification.other.identification" => sepa_identifier,
|
87
|
+
"#{prefix}.identification.organisation_identification.other.scheme_name.proprietary" => "SEPA" }
|
88
|
+
end
|
89
|
+
end
|
90
|
+
|
78
91
|
class CreditorPayment
|
79
|
-
attr_accessor :creditor, :creditor_account, :id, :collection_date
|
92
|
+
attr_accessor :creditor, :creditor_account, :id, :collection_date, :sepa_identification
|
80
93
|
attr_accessor :direct_debits, :sequence_type
|
81
94
|
|
82
|
-
def initialize creditor, creditor_account, id, collection_date, direct_debits
|
95
|
+
def initialize creditor, creditor_account, id, collection_date, sepa_identification, direct_debits
|
83
96
|
@creditor, @creditor_account = creditor, creditor_account
|
84
|
-
@id, @collection_date = id, collection_date
|
97
|
+
@id, @collection_date, @sepa_identification = id, collection_date, sepa_identification
|
85
98
|
@direct_debits = direct_debits
|
86
99
|
end
|
87
100
|
|
@@ -102,7 +115,7 @@ class Sepa::DirectDebitOrder
|
|
102
115
|
|
103
116
|
seq_types.each do |seq_type, dds|
|
104
117
|
next if dds.empty?
|
105
|
-
ncp = CreditorPayment.new(creditor, creditor_account, "#{id}_#{seq_type}", collection_date, dds)
|
118
|
+
ncp = CreditorPayment.new(creditor, creditor_account, "#{id}_#{seq_type}", collection_date, sepa_identification, dds)
|
106
119
|
ncp.sequence_type = seq_type
|
107
120
|
yield ncp
|
108
121
|
end
|
@@ -134,6 +147,7 @@ class Sepa::DirectDebitOrder
|
|
134
147
|
|
135
148
|
hsh = hsh.merge creditor.to_properties("#{prefix}.creditor", opts)
|
136
149
|
hsh = hsh.merge creditor_account.to_properties("#{prefix}.creditor", opts)
|
150
|
+
hsh = hsh.merge sepa_identification.to_properties("#{prefix}.creditor_scheme_identification", opts)
|
137
151
|
|
138
152
|
direct_debits.each_with_index { |dd, j|
|
139
153
|
hsh = hsh.merge(dd.to_properties("#{prefix}.direct_debit_transaction_information[#{j}]", opts))
|
@@ -0,0 +1,8 @@
|
|
1
|
+
require "sepa/payments_initiation/organisation_identification_scheme_name_1_choice"
|
2
|
+
|
3
|
+
class Sepa::PaymentsInitiation::GenericOrganisationIdentification1 < Sepa::Base
|
4
|
+
definition "Unique identification of an organisation, as assigned by an institution, using an identification scheme."
|
5
|
+
attribute :identification, "Id"
|
6
|
+
attribute :scheme_name , "SchmeNm", Sepa::PaymentsInitiation::OrganisationIdentificationSchemeName1Choice
|
7
|
+
attribute :issuer , "Issr"
|
8
|
+
end
|
@@ -0,0 +1,8 @@
|
|
1
|
+
require "sepa/payments_initiation/person_identification_scheme_name_1_choice"
|
2
|
+
|
3
|
+
class Sepa::PaymentsInitiation::GenericPersonIdentification1 < Sepa::Base
|
4
|
+
definition "Unique identification of a person, as assigned by an institution, using an identification scheme."
|
5
|
+
attribute :identification, "Id"
|
6
|
+
attribute :scheme_name , "SchmeNm", Sepa::PaymentsInitiation::PersonIdentificationSchemeName1Choice
|
7
|
+
attribute :issuer , "Issr"
|
8
|
+
end
|
@@ -0,0 +1,6 @@
|
|
1
|
+
require "sepa/payments_initiation/generic_organisation_identification_1"
|
2
|
+
|
3
|
+
class Sepa::PaymentsInitiation::OrganisationIdentification < Sepa::Base
|
4
|
+
definition "Unique and unambiguous way to identify an organisation."
|
5
|
+
attribute :other, "Othr", Sepa::PaymentsInitiation::GenericOrganisationIdentification1
|
6
|
+
end
|
@@ -1,2 +1,8 @@
|
|
1
|
+
require "sepa/payments_initiation/organisation_identification"
|
2
|
+
require "sepa/payments_initiation/private_identification"
|
3
|
+
|
1
4
|
class Sepa::PaymentsInitiation::PartyChoiceIdentification < Sepa::Base
|
5
|
+
definition "Unique and unambiguous identification of a party."
|
6
|
+
attribute :organisation_identification, "OrgId" , Sepa::PaymentsInitiation::OrganisationIdentification
|
7
|
+
attribute :private_identification , "PrvtId", Sepa::PaymentsInitiation::PrivateIdentification
|
2
8
|
end
|
@@ -0,0 +1,6 @@
|
|
1
|
+
require "sepa/payments_initiation/generic_organisation_identification_1"
|
2
|
+
|
3
|
+
class Sepa::PaymentsInitiation::PrivateIdentification < Sepa::Base
|
4
|
+
definition "Unique and unambiguous identification of a person, eg, passport."
|
5
|
+
attribute :other, "Othr", Sepa::PaymentsInitiation::GenericPersonIdentification1
|
6
|
+
end
|
data/lib/sepa/version.rb
CHANGED
@@ -5,7 +5,7 @@ require "time"
|
|
5
5
|
|
6
6
|
describe Sepa::DirectDebitOrder do
|
7
7
|
|
8
|
-
|
8
|
+
def order sepa_identifier_class
|
9
9
|
bank_account0 = Sepa::DirectDebitOrder::BankAccount.new "FRZIZIPAPARAZZI345789", "FRZZPPKOOKOO"
|
10
10
|
debtor0 = Sepa::DirectDebitOrder::Party.new "DALTON/CONANMR", "64, Livva de Getamire", nil, "30005", "RENNES", "FR", "Conan DALTON", "01234567890", "conan@dalton.sepa.i.hope.this.works"
|
11
11
|
dd00 = Sepa::DirectDebitOrder::DirectDebit.new debtor0, bank_account0, "MONECOLE REG F13789 PVT 3", 1231.31, "EUR", "RCUR", "mandate-id-0"
|
@@ -26,27 +26,38 @@ describe Sepa::DirectDebitOrder do
|
|
26
26
|
|
27
27
|
creditor = Sepa::DirectDebitOrder::Party.new "Mon École", "3, Livva de Getamire", nil, "75022", "Paris", "FR", "M. le Directeur", "+33 999 999 999", "directeur@monecole.softify.com"
|
28
28
|
creditor_account = Sepa::DirectDebitOrder::BankAccount.new "FRGOOGOOYADDA9999999", "FRGGYELLOW99"
|
29
|
-
|
29
|
+
sepa_identifier = sepa_identifier_class.new "FR123ZZZ010203"
|
30
|
+
payment = Sepa::DirectDebitOrder::CreditorPayment.new creditor, creditor_account, "MONECOLE_PAYMENTS_20130703", Date.parse("2013-07-10"), sepa_identifier, [dd00, dd01, dd10, dd11, dd20, dd21]
|
30
31
|
|
31
32
|
initiator = Sepa::DirectDebitOrder::Party.new "SOFTIFY SARL", "289, Livva de Getamire", nil, "75021", "Paris", "FR", "M. Le Gérant", "+33 111 111 111", "gerant@softify.bigbang"
|
32
33
|
|
33
34
|
Sepa::DirectDebitOrder::Order.new "MSG0001", initiator, [payment]
|
34
|
-
|
35
|
+
end
|
35
36
|
|
36
|
-
|
37
|
-
|
37
|
+
it "should produce v02 xml corresponding to the given inputs" do
|
38
|
+
o = order Sepa::DirectDebitOrder::PrivateSepaIdentifier
|
39
|
+
xml = o.to_xml pain_008_001_version: "02"
|
38
40
|
expected = File.read(File.expand_path("../expected_customer_direct_debit_initiation_v02.xml", __FILE__))
|
39
41
|
expected.force_encoding(Encoding::UTF_8)
|
40
42
|
xml.should == expected
|
41
43
|
end
|
42
44
|
|
43
45
|
it "should produce v04 xml corresponding to the given inputs" do
|
44
|
-
|
46
|
+
o = order Sepa::DirectDebitOrder::PrivateSepaIdentifier
|
47
|
+
xml = o.to_xml pain_008_001_version: "04"
|
45
48
|
expected = File.read(File.expand_path("../expected_customer_direct_debit_initiation_v04.xml", __FILE__))
|
46
49
|
expected.force_encoding(Encoding::UTF_8)
|
47
50
|
xml.should == expected
|
48
51
|
end
|
49
52
|
|
53
|
+
it "should produce v04 xml corresponding to the given inputs with an organisation identifier for the creditor" do
|
54
|
+
o = order Sepa::DirectDebitOrder::OrganisationSepaIdentifier
|
55
|
+
xml = o.to_xml pain_008_001_version: "04"
|
56
|
+
expected = File.read(File.expand_path("../expected_customer_direct_debit_initiation_v04_with_org_id.xml", __FILE__))
|
57
|
+
expected.force_encoding(Encoding::UTF_8)
|
58
|
+
xml.should == expected
|
59
|
+
end
|
60
|
+
|
50
61
|
it "should not produce empty address elements" do
|
51
62
|
debtor = Sepa::DirectDebitOrder::Party.new "M Conan Dalton", "", nil, "", "", nil, nil, "", ""
|
52
63
|
props = debtor.to_properties "x", { }
|
@@ -61,6 +61,18 @@
|
|
61
61
|
</FinInstnId>
|
62
62
|
</CdtrAgt>
|
63
63
|
<ChrgBr>SLEV</ChrgBr>
|
64
|
+
<CdtrSchmeId>
|
65
|
+
<Id>
|
66
|
+
<PrvtId>
|
67
|
+
<Othr>
|
68
|
+
<Id>FR123ZZZ010203</Id>
|
69
|
+
<SchmeNm>
|
70
|
+
<Prtry>SEPA</Prtry>
|
71
|
+
</SchmeNm>
|
72
|
+
</Othr>
|
73
|
+
</PrvtId>
|
74
|
+
</Id>
|
75
|
+
</CdtrSchmeId>
|
64
76
|
<DrctDbtTxInf>
|
65
77
|
<PmtId>
|
66
78
|
<EndToEndId>MONECOLE REG F13790 PVT 3</EndToEndId>
|
@@ -172,6 +184,18 @@
|
|
172
184
|
</FinInstnId>
|
173
185
|
</CdtrAgt>
|
174
186
|
<ChrgBr>SLEV</ChrgBr>
|
187
|
+
<CdtrSchmeId>
|
188
|
+
<Id>
|
189
|
+
<PrvtId>
|
190
|
+
<Othr>
|
191
|
+
<Id>FR123ZZZ010203</Id>
|
192
|
+
<SchmeNm>
|
193
|
+
<Prtry>SEPA</Prtry>
|
194
|
+
</SchmeNm>
|
195
|
+
</Othr>
|
196
|
+
</PrvtId>
|
197
|
+
</Id>
|
198
|
+
</CdtrSchmeId>
|
175
199
|
<DrctDbtTxInf>
|
176
200
|
<PmtId>
|
177
201
|
<EndToEndId>MONECOLE REG F13789 PVT 3</EndToEndId>
|
@@ -60,6 +60,18 @@
|
|
60
60
|
</FinInstnId>
|
61
61
|
</CdtrAgt>
|
62
62
|
<ChrgBr>SLEV</ChrgBr>
|
63
|
+
<CdtrSchmeId>
|
64
|
+
<Id>
|
65
|
+
<PrvtId>
|
66
|
+
<Othr>
|
67
|
+
<Id>FR123ZZZ010203</Id>
|
68
|
+
<SchmeNm>
|
69
|
+
<Prtry>SEPA</Prtry>
|
70
|
+
</SchmeNm>
|
71
|
+
</Othr>
|
72
|
+
</PrvtId>
|
73
|
+
</Id>
|
74
|
+
</CdtrSchmeId>
|
63
75
|
<DrctDbtTxInf>
|
64
76
|
<PmtId>
|
65
77
|
<EndToEndId>MONECOLE REG F13789 PVT 3</EndToEndId>
|
@@ -0,0 +1,305 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.008.001.04" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:iso:std:iso:20022:tech:xsd:pain.008.001.04 pain.008.001.04.xsd">
|
3
|
+
<CstmrDrctDbtInitn>
|
4
|
+
<GrpHdr>
|
5
|
+
<MsgId>MSG0001</MsgId>
|
6
|
+
<CreDtTm>1992-02-28T18:30:00</CreDtTm>
|
7
|
+
<NbOfTxs>6</NbOfTxs>
|
8
|
+
<InitgPty>
|
9
|
+
<Nm>SOFTIFY SARL</Nm>
|
10
|
+
<PstlAdr>
|
11
|
+
<PstCd>75021</PstCd>
|
12
|
+
<TwnNm>Paris</TwnNm>
|
13
|
+
<Ctry>FR</Ctry>
|
14
|
+
<AdrLine>289, Livva de Getamire</AdrLine>
|
15
|
+
</PstlAdr>
|
16
|
+
<CtctDtls>
|
17
|
+
<Nm>M. Le Gérant</Nm>
|
18
|
+
<PhneNb>+33 111 111 111</PhneNb>
|
19
|
+
<EmailAdr>gerant@softify.bigbang</EmailAdr>
|
20
|
+
</CtctDtls>
|
21
|
+
</InitgPty>
|
22
|
+
<CtrlSum>8303.01</CtrlSum>
|
23
|
+
</GrpHdr>
|
24
|
+
<PmtInf>
|
25
|
+
<PmtInfId>MONECOLE_PAYMENTS_20130703</PmtInfId>
|
26
|
+
<PmtMtd>DD</PmtMtd>
|
27
|
+
<NbOfTxs>6</NbOfTxs>
|
28
|
+
<CtrlSum>8303.01</CtrlSum>
|
29
|
+
<PmtTpInf>
|
30
|
+
<SvcLvl>
|
31
|
+
<Cd>SEPA</Cd>
|
32
|
+
</SvcLvl>
|
33
|
+
<LclInstrm>
|
34
|
+
<Cd>CORE</Cd>
|
35
|
+
</LclInstrm>
|
36
|
+
</PmtTpInf>
|
37
|
+
<ReqdColltnDt>2013-07-10</ReqdColltnDt>
|
38
|
+
<Cdtr>
|
39
|
+
<Nm>Mon École</Nm>
|
40
|
+
<PstlAdr>
|
41
|
+
<PstCd>75022</PstCd>
|
42
|
+
<TwnNm>Paris</TwnNm>
|
43
|
+
<Ctry>FR</Ctry>
|
44
|
+
<AdrLine>3, Livva de Getamire</AdrLine>
|
45
|
+
</PstlAdr>
|
46
|
+
<CtctDtls>
|
47
|
+
<Nm>M. le Directeur</Nm>
|
48
|
+
<PhneNb>+33 999 999 999</PhneNb>
|
49
|
+
<EmailAdr>directeur@monecole.softify.com</EmailAdr>
|
50
|
+
</CtctDtls>
|
51
|
+
</Cdtr>
|
52
|
+
<CdtrAcct>
|
53
|
+
<Id>
|
54
|
+
<IBAN>FRGOOGOOYADDA9999999</IBAN>
|
55
|
+
</Id>
|
56
|
+
</CdtrAcct>
|
57
|
+
<CdtrAgt>
|
58
|
+
<FinInstnId>
|
59
|
+
<BICFI>FRGGYELLOW99</BICFI>
|
60
|
+
</FinInstnId>
|
61
|
+
</CdtrAgt>
|
62
|
+
<ChrgBr>SLEV</ChrgBr>
|
63
|
+
<CdtrSchmeId>
|
64
|
+
<Id>
|
65
|
+
<OrgId>
|
66
|
+
<Othr>
|
67
|
+
<Id>FR123ZZZ010203</Id>
|
68
|
+
<SchmeNm>
|
69
|
+
<Prtry>SEPA</Prtry>
|
70
|
+
</SchmeNm>
|
71
|
+
</Othr>
|
72
|
+
</OrgId>
|
73
|
+
</Id>
|
74
|
+
</CdtrSchmeId>
|
75
|
+
<DrctDbtTxInf>
|
76
|
+
<PmtId>
|
77
|
+
<EndToEndId>MONECOLE REG F13789 PVT 3</EndToEndId>
|
78
|
+
</PmtId>
|
79
|
+
<PmtTpInf>
|
80
|
+
<SeqTp>RCUR</SeqTp>
|
81
|
+
</PmtTpInf>
|
82
|
+
<InstdAmt Ccy="EUR">1231.31</InstdAmt>
|
83
|
+
<DrctDbtTx>
|
84
|
+
<MndtRltdInf>
|
85
|
+
<MndtId>mandate-id-0</MndtId>
|
86
|
+
</MndtRltdInf>
|
87
|
+
</DrctDbtTx>
|
88
|
+
<DbtrAgt>
|
89
|
+
<FinInstnId>
|
90
|
+
<BICFI>FRZZPPKOOKOO</BICFI>
|
91
|
+
</FinInstnId>
|
92
|
+
</DbtrAgt>
|
93
|
+
<Dbtr>
|
94
|
+
<Nm>DALTON/CONANMR</Nm>
|
95
|
+
<PstlAdr>
|
96
|
+
<PstCd>30005</PstCd>
|
97
|
+
<TwnNm>RENNES</TwnNm>
|
98
|
+
<Ctry>FR</Ctry>
|
99
|
+
<AdrLine>64, Livva de Getamire</AdrLine>
|
100
|
+
</PstlAdr>
|
101
|
+
<CtctDtls>
|
102
|
+
<Nm>Conan DALTON</Nm>
|
103
|
+
<PhneNb>01234567890</PhneNb>
|
104
|
+
<EmailAdr>conan@dalton.sepa.i.hope.this.works</EmailAdr>
|
105
|
+
</CtctDtls>
|
106
|
+
</Dbtr>
|
107
|
+
<DbtrAcct>
|
108
|
+
<Id>
|
109
|
+
<IBAN>FRZIZIPAPARAZZI345789</IBAN>
|
110
|
+
</Id>
|
111
|
+
</DbtrAcct>
|
112
|
+
</DrctDbtTxInf>
|
113
|
+
<DrctDbtTxInf>
|
114
|
+
<PmtId>
|
115
|
+
<EndToEndId>MONECOLE REG F13791 PVT 3</EndToEndId>
|
116
|
+
</PmtId>
|
117
|
+
<PmtTpInf>
|
118
|
+
<SeqTp>RCUR</SeqTp>
|
119
|
+
</PmtTpInf>
|
120
|
+
<InstdAmt Ccy="EUR">1133.33</InstdAmt>
|
121
|
+
<DrctDbtTx>
|
122
|
+
<MndtRltdInf>
|
123
|
+
<MndtId>mandate-id-0</MndtId>
|
124
|
+
</MndtRltdInf>
|
125
|
+
</DrctDbtTx>
|
126
|
+
<DbtrAgt>
|
127
|
+
<FinInstnId>
|
128
|
+
<BICFI>FRZZPPKOOKOO</BICFI>
|
129
|
+
</FinInstnId>
|
130
|
+
</DbtrAgt>
|
131
|
+
<Dbtr>
|
132
|
+
<Nm>DALTON/CONANMR</Nm>
|
133
|
+
<PstlAdr>
|
134
|
+
<PstCd>30005</PstCd>
|
135
|
+
<TwnNm>RENNES</TwnNm>
|
136
|
+
<Ctry>FR</Ctry>
|
137
|
+
<AdrLine>64, Livva de Getamire</AdrLine>
|
138
|
+
</PstlAdr>
|
139
|
+
<CtctDtls>
|
140
|
+
<Nm>Conan DALTON</Nm>
|
141
|
+
<PhneNb>01234567890</PhneNb>
|
142
|
+
<EmailAdr>conan@dalton.sepa.i.hope.this.works</EmailAdr>
|
143
|
+
</CtctDtls>
|
144
|
+
</Dbtr>
|
145
|
+
<DbtrAcct>
|
146
|
+
<Id>
|
147
|
+
<IBAN>FRZIZIPAPARAZZI345789</IBAN>
|
148
|
+
</Id>
|
149
|
+
</DbtrAcct>
|
150
|
+
</DrctDbtTxInf>
|
151
|
+
<DrctDbtTxInf>
|
152
|
+
<PmtId>
|
153
|
+
<EndToEndId>MONECOLE REG F13790 PVT 3</EndToEndId>
|
154
|
+
</PmtId>
|
155
|
+
<PmtTpInf>
|
156
|
+
<SeqTp>FRST</SeqTp>
|
157
|
+
</PmtTpInf>
|
158
|
+
<InstdAmt Ccy="EUR">1732.32</InstdAmt>
|
159
|
+
<DrctDbtTx>
|
160
|
+
<MndtRltdInf>
|
161
|
+
<MndtId>mandate-id-1</MndtId>
|
162
|
+
</MndtRltdInf>
|
163
|
+
</DrctDbtTx>
|
164
|
+
<DbtrAgt>
|
165
|
+
<FinInstnId>
|
166
|
+
<BICFI>FRQQWIGGA</BICFI>
|
167
|
+
</FinInstnId>
|
168
|
+
</DbtrAgt>
|
169
|
+
<Dbtr>
|
170
|
+
<Nm>ADAMS/SAMUELMR</Nm>
|
171
|
+
<PstlAdr>
|
172
|
+
<PstCd>75048</PstCd>
|
173
|
+
<TwnNm>PARIS</TwnNm>
|
174
|
+
<Ctry>FR</Ctry>
|
175
|
+
<AdrLine>256, Livva de Getamire</AdrLine>
|
176
|
+
</PstlAdr>
|
177
|
+
<CtctDtls>
|
178
|
+
<Nm>Samuel ADAMS</Nm>
|
179
|
+
<PhneNb>09876543210</PhneNb>
|
180
|
+
<EmailAdr>samuel@adams.sepa.i.hope.this.works</EmailAdr>
|
181
|
+
</CtctDtls>
|
182
|
+
</Dbtr>
|
183
|
+
<DbtrAcct>
|
184
|
+
<Id>
|
185
|
+
<IBAN>FRQUIQUIWIGWAM947551</IBAN>
|
186
|
+
</Id>
|
187
|
+
</DbtrAcct>
|
188
|
+
</DrctDbtTxInf>
|
189
|
+
<DrctDbtTxInf>
|
190
|
+
<PmtId>
|
191
|
+
<EndToEndId>MONECOLE REG F13792 PVT 3</EndToEndId>
|
192
|
+
</PmtId>
|
193
|
+
<PmtTpInf>
|
194
|
+
<SeqTp>FRST</SeqTp>
|
195
|
+
</PmtTpInf>
|
196
|
+
<InstdAmt Ccy="EUR">1034.34</InstdAmt>
|
197
|
+
<DrctDbtTx>
|
198
|
+
<MndtRltdInf>
|
199
|
+
<MndtId>mandate-id-1</MndtId>
|
200
|
+
</MndtRltdInf>
|
201
|
+
</DrctDbtTx>
|
202
|
+
<DbtrAgt>
|
203
|
+
<FinInstnId>
|
204
|
+
<BICFI>FRQQWIGGA</BICFI>
|
205
|
+
</FinInstnId>
|
206
|
+
</DbtrAgt>
|
207
|
+
<Dbtr>
|
208
|
+
<Nm>ADAMS/SAMUELMR</Nm>
|
209
|
+
<PstlAdr>
|
210
|
+
<PstCd>75048</PstCd>
|
211
|
+
<TwnNm>PARIS</TwnNm>
|
212
|
+
<Ctry>FR</Ctry>
|
213
|
+
<AdrLine>256, Livva de Getamire</AdrLine>
|
214
|
+
</PstlAdr>
|
215
|
+
<CtctDtls>
|
216
|
+
<Nm>Samuel ADAMS</Nm>
|
217
|
+
<PhneNb>09876543210</PhneNb>
|
218
|
+
<EmailAdr>samuel@adams.sepa.i.hope.this.works</EmailAdr>
|
219
|
+
</CtctDtls>
|
220
|
+
</Dbtr>
|
221
|
+
<DbtrAcct>
|
222
|
+
<Id>
|
223
|
+
<IBAN>FRQUIQUIWIGWAM947551</IBAN>
|
224
|
+
</Id>
|
225
|
+
</DbtrAcct>
|
226
|
+
</DrctDbtTxInf>
|
227
|
+
<DrctDbtTxInf>
|
228
|
+
<PmtId>
|
229
|
+
<EndToEndId>MONECOLE REG F13793 PVT 3</EndToEndId>
|
230
|
+
</PmtId>
|
231
|
+
<PmtTpInf>
|
232
|
+
<SeqTp>RCUR</SeqTp>
|
233
|
+
</PmtTpInf>
|
234
|
+
<InstdAmt Ccy="EUR">1935.35</InstdAmt>
|
235
|
+
<DrctDbtTx>
|
236
|
+
<MndtRltdInf>
|
237
|
+
<MndtId>mandate-id-1</MndtId>
|
238
|
+
</MndtRltdInf>
|
239
|
+
</DrctDbtTx>
|
240
|
+
<DbtrAgt>
|
241
|
+
<FinInstnId>
|
242
|
+
<BICFI>FRQQWIGGA</BICFI>
|
243
|
+
</FinInstnId>
|
244
|
+
</DbtrAgt>
|
245
|
+
<Dbtr>
|
246
|
+
<Nm>ADAMS/SAMUELMR</Nm>
|
247
|
+
<PstlAdr>
|
248
|
+
<PstCd>75099</PstCd>
|
249
|
+
<TwnNm>PARIS</TwnNm>
|
250
|
+
<Ctry>FR</Ctry>
|
251
|
+
<AdrLine>512, Livva de Meet Agir</AdrLine>
|
252
|
+
</PstlAdr>
|
253
|
+
<CtctDtls>
|
254
|
+
<Nm>Johann S. BACH</Nm>
|
255
|
+
<PhneNb>09876543210</PhneNb>
|
256
|
+
<EmailAdr>js@bach.sepa.i.hope.this.works</EmailAdr>
|
257
|
+
</CtctDtls>
|
258
|
+
</Dbtr>
|
259
|
+
<DbtrAcct>
|
260
|
+
<Id>
|
261
|
+
<IBAN>FRQUIQUIWIGWAM947551</IBAN>
|
262
|
+
</Id>
|
263
|
+
</DbtrAcct>
|
264
|
+
</DrctDbtTxInf>
|
265
|
+
<DrctDbtTxInf>
|
266
|
+
<PmtId>
|
267
|
+
<EndToEndId>MONECOLE REG F13794 PVT 3</EndToEndId>
|
268
|
+
</PmtId>
|
269
|
+
<PmtTpInf>
|
270
|
+
<SeqTp>RCUR</SeqTp>
|
271
|
+
</PmtTpInf>
|
272
|
+
<InstdAmt Ccy="EUR">1236.36</InstdAmt>
|
273
|
+
<DrctDbtTx>
|
274
|
+
<MndtRltdInf>
|
275
|
+
<MndtId>mandate-id-1</MndtId>
|
276
|
+
</MndtRltdInf>
|
277
|
+
</DrctDbtTx>
|
278
|
+
<DbtrAgt>
|
279
|
+
<FinInstnId>
|
280
|
+
<BICFI>FRQQWIGGA</BICFI>
|
281
|
+
</FinInstnId>
|
282
|
+
</DbtrAgt>
|
283
|
+
<Dbtr>
|
284
|
+
<Nm>ADAMS/SAMUELMR</Nm>
|
285
|
+
<PstlAdr>
|
286
|
+
<PstCd>75099</PstCd>
|
287
|
+
<TwnNm>PARIS</TwnNm>
|
288
|
+
<Ctry>FR</Ctry>
|
289
|
+
<AdrLine>512, Livva de Meet Agir</AdrLine>
|
290
|
+
</PstlAdr>
|
291
|
+
<CtctDtls>
|
292
|
+
<Nm>Johann S. BACH</Nm>
|
293
|
+
<PhneNb>09876543210</PhneNb>
|
294
|
+
<EmailAdr>js@bach.sepa.i.hope.this.works</EmailAdr>
|
295
|
+
</CtctDtls>
|
296
|
+
</Dbtr>
|
297
|
+
<DbtrAcct>
|
298
|
+
<Id>
|
299
|
+
<IBAN>FRQUIQUIWIGWAM947551</IBAN>
|
300
|
+
</Id>
|
301
|
+
</DbtrAcct>
|
302
|
+
</DrctDbtTxInf>
|
303
|
+
</PmtInf>
|
304
|
+
</CstmrDrctDbtInitn>
|
305
|
+
</Document>
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sepa
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.8
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-11-
|
12
|
+
date: 2013-11-11 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: builder
|
@@ -103,7 +103,11 @@ files:
|
|
103
103
|
- lib/sepa/payments_initiation/contact_details.rb
|
104
104
|
- lib/sepa/payments_initiation/financial_institution_identification.rb
|
105
105
|
- lib/sepa/payments_initiation/generic_account_identification.rb
|
106
|
+
- lib/sepa/payments_initiation/generic_organisation_identification_1.rb
|
107
|
+
- lib/sepa/payments_initiation/generic_person_identification_1.rb
|
106
108
|
- lib/sepa/payments_initiation/local_instrument_choice.rb
|
109
|
+
- lib/sepa/payments_initiation/organisation_identification.rb
|
110
|
+
- lib/sepa/payments_initiation/organisation_identification_scheme_name_1_choice.rb
|
107
111
|
- lib/sepa/payments_initiation/pain00800104/customer_direct_debit_initiation.rb
|
108
112
|
- lib/sepa/payments_initiation/pain00800104/direct_debit_transaction.rb
|
109
113
|
- lib/sepa/payments_initiation/pain00800104/direct_debit_transaction_information.rb
|
@@ -122,7 +126,9 @@ files:
|
|
122
126
|
- lib/sepa/payments_initiation/pain00800104/tax_party.rb
|
123
127
|
- lib/sepa/payments_initiation/party_choice_identification.rb
|
124
128
|
- lib/sepa/payments_initiation/party_identification.rb
|
129
|
+
- lib/sepa/payments_initiation/person_identification_scheme_name_1_choice.rb
|
125
130
|
- lib/sepa/payments_initiation/postal_address.rb
|
131
|
+
- lib/sepa/payments_initiation/private_identification.rb
|
126
132
|
- lib/sepa/version.rb
|
127
133
|
- sepa.gemspec
|
128
134
|
- spec/sepa/direct_debit_order_spec.rb
|
@@ -130,6 +136,7 @@ files:
|
|
130
136
|
- spec/sepa/expected-simple.xml
|
131
137
|
- spec/sepa/expected_customer_direct_debit_initiation_v02.xml
|
132
138
|
- spec/sepa/expected_customer_direct_debit_initiation_v04.xml
|
139
|
+
- spec/sepa/expected_customer_direct_debit_initiation_v04_with_org_id.xml
|
133
140
|
- spec/sepa/payments_initiation/pain00800104/customer_direct_debit_initiation_spec.rb
|
134
141
|
- spec/spec_helper.rb
|
135
142
|
homepage: https://github.com/conanite/sepa
|
@@ -164,5 +171,6 @@ test_files:
|
|
164
171
|
- spec/sepa/expected-simple.xml
|
165
172
|
- spec/sepa/expected_customer_direct_debit_initiation_v02.xml
|
166
173
|
- spec/sepa/expected_customer_direct_debit_initiation_v04.xml
|
174
|
+
- spec/sepa/expected_customer_direct_debit_initiation_v04_with_org_id.xml
|
167
175
|
- spec/sepa/payments_initiation/pain00800104/customer_direct_debit_initiation_spec.rb
|
168
176
|
- spec/spec_helper.rb
|