hippo 0.0.4
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/.gitignore +6 -0
- data/CHANGELOG +9 -0
- data/Gemfile +11 -0
- data/Guardfile +14 -0
- data/README.md +227 -0
- data/Rakefile +12 -0
- data/bin/demo_270.rb +280 -0
- data/bin/demo_276.rb +296 -0
- data/bin/demo_835.rb +170 -0
- data/hippo.gemspec +24 -0
- data/lib/hippo/exceptions.rb +8 -0
- data/lib/hippo/field.rb +6 -0
- data/lib/hippo/loop.rb +0 -0
- data/lib/hippo/parser.rb +92 -0
- data/lib/hippo/samples/835.edi +88 -0
- data/lib/hippo/samples/sample_835_with.rb +272 -0
- data/lib/hippo/samples/sample_parsed.rb +1162 -0
- data/lib/hippo/segments/AK1.rb +32 -0
- data/lib/hippo/segments/AK2.rb +31 -0
- data/lib/hippo/segments/AK9.rb +82 -0
- data/lib/hippo/segments/AMT.rb +31 -0
- data/lib/hippo/segments/BHT.rb +55 -0
- data/lib/hippo/segments/BPR.rb +175 -0
- data/lib/hippo/segments/CAS.rb +159 -0
- data/lib/hippo/segments/CL1.rb +39 -0
- data/lib/hippo/segments/CLM.rb +223 -0
- data/lib/hippo/segments/CLP.rb +119 -0
- data/lib/hippo/segments/CN1.rb +55 -0
- data/lib/hippo/segments/CR1.rb +87 -0
- data/lib/hippo/segments/CR2.rb +104 -0
- data/lib/hippo/segments/CR3.rb +47 -0
- data/lib/hippo/segments/CR4.rb +239 -0
- data/lib/hippo/segments/CR5.rb +151 -0
- data/lib/hippo/segments/CR6.rb +175 -0
- data/lib/hippo/segments/CR7.rb +33 -0
- data/lib/hippo/segments/CR8.rb +79 -0
- data/lib/hippo/segments/CRC.rb +63 -0
- data/lib/hippo/segments/CTP.rb +212 -0
- data/lib/hippo/segments/CTX.rb +105 -0
- data/lib/hippo/segments/CUR.rb +175 -0
- data/lib/hippo/segments/DMG.rb +115 -0
- data/lib/hippo/segments/DN1.rb +39 -0
- data/lib/hippo/segments/DN2.rb +55 -0
- data/lib/hippo/segments/DSB.rb +71 -0
- data/lib/hippo/segments/DTM.rb +55 -0
- data/lib/hippo/segments/DTP.rb +31 -0
- data/lib/hippo/segments/FRM.rb +47 -0
- data/lib/hippo/segments/GE.rb +19 -0
- data/lib/hippo/segments/GS.rb +52 -0
- data/lib/hippo/segments/HCP.rb +127 -0
- data/lib/hippo/segments/HI.rb +919 -0
- data/lib/hippo/segments/HL.rb +44 -0
- data/lib/hippo/segments/HSD.rb +72 -0
- data/lib/hippo/segments/IEA.rb +19 -0
- data/lib/hippo/segments/IK3.rb +40 -0
- data/lib/hippo/segments/IK4.rb +63 -0
- data/lib/hippo/segments/IK5.rb +55 -0
- data/lib/hippo/segments/IMM.rb +55 -0
- data/lib/hippo/segments/ISA.rb +95 -0
- data/lib/hippo/segments/K3.rb +147 -0
- data/lib/hippo/segments/LIN.rb +255 -0
- data/lib/hippo/segments/LQ.rb +23 -0
- data/lib/hippo/segments/LX.rb +21 -0
- data/lib/hippo/segments/MEA.rb +219 -0
- data/lib/hippo/segments/MIA.rb +199 -0
- data/lib/hippo/segments/MOA.rb +79 -0
- data/lib/hippo/segments/N1.rb +55 -0
- data/lib/hippo/segments/N2.rb +23 -0
- data/lib/hippo/segments/N3.rb +23 -0
- data/lib/hippo/segments/N4.rb +63 -0
- data/lib/hippo/segments/NM1.rb +103 -0
- data/lib/hippo/segments/NTE.rb +23 -0
- data/lib/hippo/segments/OI.rb +55 -0
- data/lib/hippo/segments/PAT.rb +79 -0
- data/lib/hippo/segments/PER.rb +79 -0
- data/lib/hippo/segments/PLB.rb +191 -0
- data/lib/hippo/segments/PRV.rb +75 -0
- data/lib/hippo/segments/PS1.rb +31 -0
- data/lib/hippo/segments/PWK.rb +116 -0
- data/lib/hippo/segments/QTY.rb +155 -0
- data/lib/hippo/segments/RDM.rb +135 -0
- data/lib/hippo/segments/REF.rb +83 -0
- data/lib/hippo/segments/SBR.rb +79 -0
- data/lib/hippo/segments/SE.rb +24 -0
- data/lib/hippo/segments/ST.rb +31 -0
- data/lib/hippo/segments/STC.rb +187 -0
- data/lib/hippo/segments/SV1.rb +267 -0
- data/lib/hippo/segments/SV2.rb +147 -0
- data/lib/hippo/segments/SV3.rb +223 -0
- data/lib/hippo/segments/SV4.rb +211 -0
- data/lib/hippo/segments/SV5.rb +123 -0
- data/lib/hippo/segments/SV6.rb +155 -0
- data/lib/hippo/segments/SV7.rb +55 -0
- data/lib/hippo/segments/SVC.rb +183 -0
- data/lib/hippo/segments/SVD.rb +116 -0
- data/lib/hippo/segments/TOO.rb +67 -0
- data/lib/hippo/segments/TRN.rb +39 -0
- data/lib/hippo/segments/TS2.rb +159 -0
- data/lib/hippo/segments/TS3.rb +199 -0
- data/lib/hippo/segments/UR.rb +23 -0
- data/lib/hippo/segments/base.rb +148 -0
- data/lib/hippo/segments.rb +85 -0
- data/lib/hippo/transaction_sets/HIPAA_276/L2000A.rb +28 -0
- data/lib/hippo/transaction_sets/HIPAA_276/L2000B.rb +28 -0
- data/lib/hippo/transaction_sets/HIPAA_276/L2000C.rb +28 -0
- data/lib/hippo/transaction_sets/HIPAA_276/L2000D.rb +45 -0
- data/lib/hippo/transaction_sets/HIPAA_276/L2000E.rb +45 -0
- data/lib/hippo/transaction_sets/HIPAA_276/L2100A.rb +20 -0
- data/lib/hippo/transaction_sets/HIPAA_276/L2100B.rb +20 -0
- data/lib/hippo/transaction_sets/HIPAA_276/L2100C.rb +19 -0
- data/lib/hippo/transaction_sets/HIPAA_276/L2100D.rb +19 -0
- data/lib/hippo/transaction_sets/HIPAA_276/L2100E.rb +20 -0
- data/lib/hippo/transaction_sets/HIPAA_276/L2200D.rb +116 -0
- data/lib/hippo/transaction_sets/HIPAA_276/L2200E.rb +116 -0
- data/lib/hippo/transaction_sets/HIPAA_276/L2210D.rb +36 -0
- data/lib/hippo/transaction_sets/HIPAA_276/L2210E.rb +36 -0
- data/lib/hippo/transaction_sets/HIPAA_276/base.rb +86 -0
- data/lib/hippo/transaction_sets/HIPAA_276.rb +21 -0
- data/lib/hippo/transaction_sets/HIPAA_277/L2000A.rb +35 -0
- data/lib/hippo/transaction_sets/HIPAA_277/L2000B.rb +35 -0
- data/lib/hippo/transaction_sets/HIPAA_277/L2000C.rb +35 -0
- data/lib/hippo/transaction_sets/HIPAA_277/L2000D.rb +35 -0
- data/lib/hippo/transaction_sets/HIPAA_277/L2000E.rb +35 -0
- data/lib/hippo/transaction_sets/HIPAA_277/L2100A.rb +19 -0
- data/lib/hippo/transaction_sets/HIPAA_277/L2100B.rb +20 -0
- data/lib/hippo/transaction_sets/HIPAA_277/L2100C.rb +19 -0
- data/lib/hippo/transaction_sets/HIPAA_277/L2100D.rb +20 -0
- data/lib/hippo/transaction_sets/HIPAA_277/L2100E.rb +20 -0
- data/lib/hippo/transaction_sets/HIPAA_277/L2200A.rb +41 -0
- data/lib/hippo/transaction_sets/HIPAA_277/L2200B.rb +66 -0
- data/lib/hippo/transaction_sets/HIPAA_277/L2200C.rb +73 -0
- data/lib/hippo/transaction_sets/HIPAA_277/L2200D.rb +73 -0
- data/lib/hippo/transaction_sets/HIPAA_277/L2200E.rb +103 -0
- data/lib/hippo/transaction_sets/HIPAA_277/L2220D.rb +56 -0
- data/lib/hippo/transaction_sets/HIPAA_277/L2220E.rb +43 -0
- data/lib/hippo/transaction_sets/HIPAA_277/base.rb +77 -0
- data/lib/hippo/transaction_sets/HIPAA_277.rb +24 -0
- data/lib/hippo/transaction_sets/HIPAA_835/L1000A.rb +71 -0
- data/lib/hippo/transaction_sets/HIPAA_835/L1000B.rb +47 -0
- data/lib/hippo/transaction_sets/HIPAA_835/L2000.rb +37 -0
- data/lib/hippo/transaction_sets/HIPAA_835/L2100.rb +182 -0
- data/lib/hippo/transaction_sets/HIPAA_835/L2110.rb +85 -0
- data/lib/hippo/transaction_sets/HIPAA_835/base.rb +112 -0
- data/lib/hippo/transaction_sets/HIPAA_835.rb +12 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L1000A.rb +30 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L1000B.rb +21 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2000A.rb +65 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2000B.rb +49 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2000C.rb +42 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2010AA.rb +57 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2010AB.rb +33 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2010AC.rb +51 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2010BA.rb +74 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2010BB.rb +48 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2010CA.rb +72 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2300.rb +510 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2310A.rb +26 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2310B.rb +37 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2310C.rb +52 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2310D.rb +27 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2310E.rb +34 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2310F.rb +34 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2320.rb +122 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2330A.rb +43 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2330B.rb +92 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2330C.rb +26 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2330D.rb +26 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2330E.rb +27 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2330F.rb +27 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2330G.rb +26 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2400.rb +475 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2410.rb +30 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2420A.rb +37 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2420B.rb +26 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2420C.rb +41 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2420D.rb +27 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2420E.rb +51 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2420F.rb +26 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2420G.rb +34 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2420H.rb +34 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2430.rb +44 -0
- data/lib/hippo/transaction_sets/HIPAA_837/L2440.rb +23 -0
- data/lib/hippo/transaction_sets/HIPAA_837/base.rb +81 -0
- data/lib/hippo/transaction_sets/HIPAA_837.rb +45 -0
- data/lib/hippo/transaction_sets/HIPAA_999/L2000 - AK2.rb +30 -0
- data/lib/hippo/transaction_sets/HIPAA_999/L2000AK2.rb +30 -0
- data/lib/hippo/transaction_sets/HIPAA_999/L2100 - AK2.rb +37 -0
- data/lib/hippo/transaction_sets/HIPAA_999/L2100AK2.rb +37 -0
- data/lib/hippo/transaction_sets/HIPAA_999/L2110 - AK2.rb +23 -0
- data/lib/hippo/transaction_sets/HIPAA_999/L2110AK2.rb +23 -0
- data/lib/hippo/transaction_sets/HIPAA_999/base.rb +46 -0
- data/lib/hippo/transaction_sets/HIPAA_999.rb +10 -0
- data/lib/hippo/transaction_sets/base.rb +136 -0
- data/lib/hippo/transaction_sets.rb +11 -0
- data/lib/hippo/version.rb +3 -0
- data/lib/hippo.rb +15 -0
- data/samples/835_4010.edi +1 -0
- data/samples/837_4010A1.edi +1 -0
- data/test/test_helper.rb +118 -0
- data/test/test_hipaa_837.rb +396 -0
- data/test/test_segments_base.rb +106 -0
- data/test/test_transaction_sets_base.rb +85 -0
- metadata +277 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
module Hippo::TransactionSets
|
|
2
|
+
module HIPAA_277
|
|
3
|
+
|
|
4
|
+
class L2100B < Hippo::TransactionSets::Base
|
|
5
|
+
loop_name 'L2100B' #Information Receiver Name
|
|
6
|
+
|
|
7
|
+
#Information Receiver Name
|
|
8
|
+
segment Hippo::Segments::NM1,
|
|
9
|
+
:name => 'Information Receiver Name',
|
|
10
|
+
:minimum => 1,
|
|
11
|
+
:maximum => 1,
|
|
12
|
+
:position => 500,
|
|
13
|
+
:defaults => {
|
|
14
|
+
'NM101' => '41',
|
|
15
|
+
'NM108' => '46'
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
module Hippo::TransactionSets
|
|
2
|
+
module HIPAA_277
|
|
3
|
+
|
|
4
|
+
class L2100C < Hippo::TransactionSets::Base
|
|
5
|
+
loop_name 'L2100C' #Billing Provider Name
|
|
6
|
+
|
|
7
|
+
#Billing Provider Name
|
|
8
|
+
segment Hippo::Segments::NM1,
|
|
9
|
+
:name => 'Billing Provider Name',
|
|
10
|
+
:minimum => 1,
|
|
11
|
+
:maximum => 1,
|
|
12
|
+
:position => 500,
|
|
13
|
+
:defaults => {
|
|
14
|
+
'NM101' => '85'
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
module Hippo::TransactionSets
|
|
2
|
+
module HIPAA_277
|
|
3
|
+
|
|
4
|
+
class L2100D < Hippo::TransactionSets::Base
|
|
5
|
+
loop_name 'L2100D' #Patient Name
|
|
6
|
+
|
|
7
|
+
#Patient Name
|
|
8
|
+
segment Hippo::Segments::NM1,
|
|
9
|
+
:name => 'Patient Name',
|
|
10
|
+
:minimum => 1,
|
|
11
|
+
:maximum => 1,
|
|
12
|
+
:position => 500,
|
|
13
|
+
:defaults => {
|
|
14
|
+
'NM101' => 'QC',
|
|
15
|
+
'NM102' => '1'
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
module Hippo::TransactionSets
|
|
2
|
+
module HIPAA_277
|
|
3
|
+
|
|
4
|
+
class L2100E < Hippo::TransactionSets::Base
|
|
5
|
+
loop_name 'L2100E' #Dependent Name
|
|
6
|
+
|
|
7
|
+
#Dependent Name
|
|
8
|
+
segment Hippo::Segments::NM1,
|
|
9
|
+
:name => 'Dependent Name',
|
|
10
|
+
:minimum => 1,
|
|
11
|
+
:maximum => 1,
|
|
12
|
+
:position => 500,
|
|
13
|
+
:defaults => {
|
|
14
|
+
'NM101' => 'QC',
|
|
15
|
+
'NM102' => '1'
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
module Hippo::TransactionSets
|
|
2
|
+
module HIPAA_277
|
|
3
|
+
|
|
4
|
+
class L2200A < Hippo::TransactionSets::Base
|
|
5
|
+
loop_name 'L2200A' #Transmission Receipt Control Identifier
|
|
6
|
+
|
|
7
|
+
#Transmission Receipt Control Identifier
|
|
8
|
+
segment Hippo::Segments::TRN,
|
|
9
|
+
:name => 'Transmission Receipt Control Identifier',
|
|
10
|
+
:minimum => 1,
|
|
11
|
+
:maximum => 1,
|
|
12
|
+
:position => 900,
|
|
13
|
+
:defaults => {
|
|
14
|
+
'TRN01' => '1'
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
#Information Source Receipt Date
|
|
18
|
+
segment Hippo::Segments::DTP,
|
|
19
|
+
:name => 'Information Source Receipt Date',
|
|
20
|
+
:minimum => 1,
|
|
21
|
+
:maximum => 1,
|
|
22
|
+
:position => 1200,
|
|
23
|
+
:defaults => {
|
|
24
|
+
'DTP01' => '050',
|
|
25
|
+
'DTP02' => 'D8'
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
#Information Source Process Date
|
|
29
|
+
segment Hippo::Segments::DTP,
|
|
30
|
+
:name => 'Information Source Process Date',
|
|
31
|
+
:minimum => 1,
|
|
32
|
+
:maximum => 1,
|
|
33
|
+
:position => 1205,
|
|
34
|
+
:defaults => {
|
|
35
|
+
'DTP01' => '009',
|
|
36
|
+
'DTP02' => 'D8'
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
end
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
module Hippo::TransactionSets
|
|
2
|
+
module HIPAA_277
|
|
3
|
+
|
|
4
|
+
class L2200B < Hippo::TransactionSets::Base
|
|
5
|
+
loop_name 'L2200B' #Information Receiver Application Trace Identifier
|
|
6
|
+
|
|
7
|
+
#Information Receiver Application Trace Identifier
|
|
8
|
+
segment Hippo::Segments::TRN,
|
|
9
|
+
:name => 'Information Receiver Application Trace Identifier',
|
|
10
|
+
:minimum => 1,
|
|
11
|
+
:maximum => 1,
|
|
12
|
+
:position => 900,
|
|
13
|
+
:defaults => {
|
|
14
|
+
'TRN01' => '2'
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
#Information Receiver Status Information
|
|
18
|
+
segment Hippo::Segments::STC,
|
|
19
|
+
:name => 'Information Receiver Status Information',
|
|
20
|
+
:minimum => 1,
|
|
21
|
+
:maximum => nil,
|
|
22
|
+
:position => 1000
|
|
23
|
+
|
|
24
|
+
#Total Accepted Quantity
|
|
25
|
+
segment Hippo::Segments::QTY,
|
|
26
|
+
:name => 'Total Accepted Quantity',
|
|
27
|
+
:minimum => 0,
|
|
28
|
+
:maximum => 1,
|
|
29
|
+
:position => 1210,
|
|
30
|
+
:defaults => {
|
|
31
|
+
'QTY01' => '90'
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
#Total Rejected Quantity
|
|
35
|
+
segment Hippo::Segments::QTY,
|
|
36
|
+
:name => 'Total Rejected Quantity',
|
|
37
|
+
:minimum => 0,
|
|
38
|
+
:maximum => 1,
|
|
39
|
+
:position => 1211,
|
|
40
|
+
:defaults => {
|
|
41
|
+
'QTY01' => 'AA'
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
#Total Accepted Amount
|
|
45
|
+
segment Hippo::Segments::AMT,
|
|
46
|
+
:name => 'Total Accepted Amount',
|
|
47
|
+
:minimum => 0,
|
|
48
|
+
:maximum => 1,
|
|
49
|
+
:position => 1220,
|
|
50
|
+
:defaults => {
|
|
51
|
+
'AMT01' => 'YU'
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
#Total Rejected Amount
|
|
55
|
+
segment Hippo::Segments::AMT,
|
|
56
|
+
:name => 'Total Rejected Amount',
|
|
57
|
+
:minimum => 0,
|
|
58
|
+
:maximum => 1,
|
|
59
|
+
:position => 1222,
|
|
60
|
+
:defaults => {
|
|
61
|
+
'AMT01' => 'YY'
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
end
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
module Hippo::TransactionSets
|
|
2
|
+
module HIPAA_277
|
|
3
|
+
|
|
4
|
+
class L2200C < Hippo::TransactionSets::Base
|
|
5
|
+
loop_name 'L2200C' #Provider of Service Information Trace Identifier
|
|
6
|
+
|
|
7
|
+
#Provider of Service Information Trace Identifier
|
|
8
|
+
segment Hippo::Segments::TRN,
|
|
9
|
+
:name => 'Provider of Service Information Trace Identifier',
|
|
10
|
+
:minimum => 0,
|
|
11
|
+
:maximum => 1,
|
|
12
|
+
:position => 900,
|
|
13
|
+
:defaults => {
|
|
14
|
+
'TRN01' => '1'
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
#Billing Provider Status Information
|
|
18
|
+
segment Hippo::Segments::STC,
|
|
19
|
+
:name => 'Billing Provider Status Information',
|
|
20
|
+
:minimum => 0,
|
|
21
|
+
:maximum => nil,
|
|
22
|
+
:position => 1000
|
|
23
|
+
|
|
24
|
+
#Provider Secondary Identifier
|
|
25
|
+
segment Hippo::Segments::REF,
|
|
26
|
+
:name => 'Provider Secondary Identifier',
|
|
27
|
+
:minimum => 0,
|
|
28
|
+
:maximum => 3,
|
|
29
|
+
:position => 1100
|
|
30
|
+
|
|
31
|
+
#Total Accepted Quantity
|
|
32
|
+
segment Hippo::Segments::QTY,
|
|
33
|
+
:name => 'Total Accepted Quantity',
|
|
34
|
+
:minimum => 0,
|
|
35
|
+
:maximum => 1,
|
|
36
|
+
:position => 1210,
|
|
37
|
+
:defaults => {
|
|
38
|
+
'QTY01' => 'QA'
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
#Total Rejected Quantity
|
|
42
|
+
segment Hippo::Segments::QTY,
|
|
43
|
+
:name => 'Total Rejected Quantity',
|
|
44
|
+
:minimum => 0,
|
|
45
|
+
:maximum => 1,
|
|
46
|
+
:position => 1215,
|
|
47
|
+
:defaults => {
|
|
48
|
+
'QTY01' => 'QC'
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
#Total Accepted Amount
|
|
52
|
+
segment Hippo::Segments::AMT,
|
|
53
|
+
:name => 'Total Accepted Amount',
|
|
54
|
+
:minimum => 0,
|
|
55
|
+
:maximum => 1,
|
|
56
|
+
:position => 1220,
|
|
57
|
+
:defaults => {
|
|
58
|
+
'AMT01' => 'YU'
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
#Total Rejected Amount
|
|
62
|
+
segment Hippo::Segments::AMT,
|
|
63
|
+
:name => 'Total Rejected Amount',
|
|
64
|
+
:minimum => 0,
|
|
65
|
+
:maximum => 1,
|
|
66
|
+
:position => 1225,
|
|
67
|
+
:defaults => {
|
|
68
|
+
'AMT01' => 'YY'
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
end
|
|
72
|
+
end
|
|
73
|
+
end
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
module Hippo::TransactionSets
|
|
2
|
+
module HIPAA_277
|
|
3
|
+
|
|
4
|
+
class L2200D < Hippo::TransactionSets::Base
|
|
5
|
+
loop_name 'L2200D' #Claim Status Tracking Number
|
|
6
|
+
|
|
7
|
+
#Claim Status Tracking Number
|
|
8
|
+
segment Hippo::Segments::TRN,
|
|
9
|
+
:name => 'Claim Status Tracking Number',
|
|
10
|
+
:minimum => 1,
|
|
11
|
+
:maximum => 1,
|
|
12
|
+
:position => 900,
|
|
13
|
+
:defaults => {
|
|
14
|
+
'TRN01' => '2'
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
#Claim Level Status Information
|
|
18
|
+
segment Hippo::Segments::STC,
|
|
19
|
+
:name => 'Claim Level Status Information',
|
|
20
|
+
:minimum => 1,
|
|
21
|
+
:maximum => nil,
|
|
22
|
+
:position => 1000
|
|
23
|
+
|
|
24
|
+
#Payer Claim Control Number
|
|
25
|
+
segment Hippo::Segments::REF,
|
|
26
|
+
:name => 'Payer Claim Control Number',
|
|
27
|
+
:minimum => 0,
|
|
28
|
+
:maximum => 1,
|
|
29
|
+
:position => 1100,
|
|
30
|
+
:defaults => {
|
|
31
|
+
'REF01' => '1K'
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
#Claim Identifier Number For Clearinghouse and Other Transmission Intermediaries
|
|
35
|
+
segment Hippo::Segments::REF,
|
|
36
|
+
:name => 'Claim Identifier Number For Clearinghouse and Other Transmission Intermediaries',
|
|
37
|
+
:minimum => 0,
|
|
38
|
+
:maximum => 1,
|
|
39
|
+
:position => 1110,
|
|
40
|
+
:defaults => {
|
|
41
|
+
'REF01' => 'D9'
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
#Institutional Bill Type Identification
|
|
45
|
+
segment Hippo::Segments::REF,
|
|
46
|
+
:name => 'Institutional Bill Type Identification',
|
|
47
|
+
:minimum => 0,
|
|
48
|
+
:maximum => 1,
|
|
49
|
+
:position => 1120,
|
|
50
|
+
:defaults => {
|
|
51
|
+
'REF01' => 'BLT'
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
#Claim Level Service Date
|
|
55
|
+
segment Hippo::Segments::DTP,
|
|
56
|
+
:name => 'Claim Level Service Date',
|
|
57
|
+
:minimum => 1,
|
|
58
|
+
:maximum => 1,
|
|
59
|
+
:position => 1200,
|
|
60
|
+
:defaults => {
|
|
61
|
+
'DTP01' => '472'
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
#Service Line Information
|
|
65
|
+
loop Hippo::TransactionSets::HIPAA_277::L2220D,
|
|
66
|
+
:name => 'Service Line Information',
|
|
67
|
+
:minimum => 0,
|
|
68
|
+
:maximum => nil,
|
|
69
|
+
:position => 1800
|
|
70
|
+
|
|
71
|
+
end
|
|
72
|
+
end
|
|
73
|
+
end
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
module Hippo::TransactionSets
|
|
2
|
+
module HIPAA_277
|
|
3
|
+
|
|
4
|
+
class L2200E < Hippo::TransactionSets::Base
|
|
5
|
+
loop_name 'L2200E' #Claim Status Tracking Number
|
|
6
|
+
|
|
7
|
+
#Claim Status Tracking Number
|
|
8
|
+
segment Hippo::Segments::TRN,
|
|
9
|
+
:name => 'Claim Status Tracking Number',
|
|
10
|
+
:minimum => 1,
|
|
11
|
+
:maximum => 1,
|
|
12
|
+
:position => 900,
|
|
13
|
+
:defaults => {
|
|
14
|
+
'TRN01' => '2'
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
#Claim Level Status Information
|
|
18
|
+
segment Hippo::Segments::STC,
|
|
19
|
+
:name => 'Claim Level Status Information',
|
|
20
|
+
:minimum => 1,
|
|
21
|
+
:maximum => nil,
|
|
22
|
+
:position => 1000
|
|
23
|
+
|
|
24
|
+
#Payer Claim Control Number
|
|
25
|
+
segment Hippo::Segments::REF,
|
|
26
|
+
:name => 'Payer Claim Control Number',
|
|
27
|
+
:minimum => 0,
|
|
28
|
+
:maximum => 1,
|
|
29
|
+
:position => 1100,
|
|
30
|
+
:defaults => {
|
|
31
|
+
'REF01' => '1K'
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
#Institutional Bill Type Identification
|
|
35
|
+
segment Hippo::Segments::REF,
|
|
36
|
+
:name => 'Institutional Bill Type Identification',
|
|
37
|
+
:minimum => 0,
|
|
38
|
+
:maximum => 1,
|
|
39
|
+
:position => 1120,
|
|
40
|
+
:defaults => {
|
|
41
|
+
'REF01' => 'BLT'
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
#Patient Control Number
|
|
45
|
+
segment Hippo::Segments::REF,
|
|
46
|
+
:name => 'Patient Control Number',
|
|
47
|
+
:minimum => 0,
|
|
48
|
+
:maximum => 1,
|
|
49
|
+
:position => 1145,
|
|
50
|
+
:defaults => {
|
|
51
|
+
'REF01' => 'EJ'
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
#Pharmacy Prescription Number
|
|
55
|
+
segment Hippo::Segments::REF,
|
|
56
|
+
:name => 'Pharmacy Prescription Number',
|
|
57
|
+
:minimum => 0,
|
|
58
|
+
:maximum => 1,
|
|
59
|
+
:position => 1150,
|
|
60
|
+
:defaults => {
|
|
61
|
+
'REF01' => 'XZ'
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
#Voucher Identifier
|
|
65
|
+
segment Hippo::Segments::REF,
|
|
66
|
+
:name => 'Voucher Identifier',
|
|
67
|
+
:minimum => 0,
|
|
68
|
+
:maximum => 1,
|
|
69
|
+
:position => 1155,
|
|
70
|
+
:defaults => {
|
|
71
|
+
'REF01' => 'VV'
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
#Claim Identification Number For Clearinghouses and Other Transmission Intermediaries
|
|
75
|
+
segment Hippo::Segments::REF,
|
|
76
|
+
:name => 'Claim Identification Number For Clearinghouses and Other Transmission Intermediaries',
|
|
77
|
+
:minimum => 0,
|
|
78
|
+
:maximum => 1,
|
|
79
|
+
:position => 1160,
|
|
80
|
+
:defaults => {
|
|
81
|
+
'REF01' => 'D9'
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
#Claim Service Date
|
|
85
|
+
segment Hippo::Segments::DTP,
|
|
86
|
+
:name => 'Claim Service Date',
|
|
87
|
+
:minimum => 0,
|
|
88
|
+
:maximum => 1,
|
|
89
|
+
:position => 1200,
|
|
90
|
+
:defaults => {
|
|
91
|
+
'DTP01' => '472'
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
#Service Line Information
|
|
95
|
+
loop Hippo::TransactionSets::HIPAA_277::L2220E,
|
|
96
|
+
:name => 'Service Line Information',
|
|
97
|
+
:minimum => 0,
|
|
98
|
+
:maximum => nil,
|
|
99
|
+
:position => 1800
|
|
100
|
+
|
|
101
|
+
end
|
|
102
|
+
end
|
|
103
|
+
end
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
module Hippo::TransactionSets
|
|
2
|
+
module HIPAA_277
|
|
3
|
+
|
|
4
|
+
class L2220D < Hippo::TransactionSets::Base
|
|
5
|
+
loop_name 'L2220D' #Service Line Information
|
|
6
|
+
|
|
7
|
+
#Service Line Information
|
|
8
|
+
segment Hippo::Segments::SVC,
|
|
9
|
+
:name => 'Service Line Information',
|
|
10
|
+
:minimum => 0,
|
|
11
|
+
:maximum => 1,
|
|
12
|
+
:position => 1800
|
|
13
|
+
|
|
14
|
+
#Service Line Level Status Information
|
|
15
|
+
segment Hippo::Segments::STC,
|
|
16
|
+
:name => 'Service Line Level Status Information',
|
|
17
|
+
:minimum => 1,
|
|
18
|
+
:maximum => nil,
|
|
19
|
+
:position => 1900,
|
|
20
|
+
:defaults => {
|
|
21
|
+
'STC03' => 'U'
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
#Service Line Item Identification
|
|
25
|
+
segment Hippo::Segments::REF,
|
|
26
|
+
:name => 'Service Line Item Identification',
|
|
27
|
+
:minimum => 1,
|
|
28
|
+
:maximum => 1,
|
|
29
|
+
:position => 2000,
|
|
30
|
+
:defaults => {
|
|
31
|
+
'REF01' => 'FJ'
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
#Pharmacy Prescription Number
|
|
35
|
+
segment Hippo::Segments::REF,
|
|
36
|
+
:name => 'Pharmacy Prescription Number',
|
|
37
|
+
:minimum => 0,
|
|
38
|
+
:maximum => 1,
|
|
39
|
+
:position => 2010,
|
|
40
|
+
:defaults => {
|
|
41
|
+
'REF01' => 'XZ'
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
#Service Line Date
|
|
45
|
+
segment Hippo::Segments::DTP,
|
|
46
|
+
:name => 'Service Line Date',
|
|
47
|
+
:minimum => 0,
|
|
48
|
+
:maximum => 1,
|
|
49
|
+
:position => 2100,
|
|
50
|
+
:defaults => {
|
|
51
|
+
'DTP01' => '472'
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
end
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
module Hippo::TransactionSets
|
|
2
|
+
module HIPAA_277
|
|
3
|
+
|
|
4
|
+
class L2220E < Hippo::TransactionSets::Base
|
|
5
|
+
loop_name 'L2220E' #Service Line Information
|
|
6
|
+
|
|
7
|
+
#Service Line Information
|
|
8
|
+
segment Hippo::Segments::SVC,
|
|
9
|
+
:name => 'Service Line Information',
|
|
10
|
+
:minimum => 0,
|
|
11
|
+
:maximum => 1,
|
|
12
|
+
:position => 1800
|
|
13
|
+
|
|
14
|
+
#Service Line Status Information
|
|
15
|
+
segment Hippo::Segments::STC,
|
|
16
|
+
:name => 'Service Line Status Information',
|
|
17
|
+
:minimum => 1,
|
|
18
|
+
:maximum => nil,
|
|
19
|
+
:position => 1900
|
|
20
|
+
|
|
21
|
+
#Service Line Item Identification
|
|
22
|
+
segment Hippo::Segments::REF,
|
|
23
|
+
:name => 'Service Line Item Identification',
|
|
24
|
+
:minimum => 0,
|
|
25
|
+
:maximum => 1,
|
|
26
|
+
:position => 2000,
|
|
27
|
+
:defaults => {
|
|
28
|
+
'REF01' => 'FJ'
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
#Service Line Date
|
|
32
|
+
segment Hippo::Segments::DTP,
|
|
33
|
+
:name => 'Service Line Date',
|
|
34
|
+
:minimum => 1,
|
|
35
|
+
:maximum => 1,
|
|
36
|
+
:position => 2100,
|
|
37
|
+
:defaults => {
|
|
38
|
+
'DTP01' => '472'
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
module Hippo::TransactionSets
|
|
2
|
+
module HIPAA_277
|
|
3
|
+
|
|
4
|
+
class Base < Hippo::TransactionSets::Base
|
|
5
|
+
|
|
6
|
+
#Transaction Set Header
|
|
7
|
+
segment Hippo::Segments::ST,
|
|
8
|
+
:name => 'Transaction Set Header',
|
|
9
|
+
:minimum => 1,
|
|
10
|
+
:maximum => 1,
|
|
11
|
+
:position => 100,
|
|
12
|
+
:defaults => {
|
|
13
|
+
'ST01' => '277'
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
#Beginning of Hierarchical Transaction
|
|
17
|
+
segment Hippo::Segments::BHT,
|
|
18
|
+
:name => 'Beginning of Hierarchical Transaction',
|
|
19
|
+
:minimum => 1,
|
|
20
|
+
:maximum => 1,
|
|
21
|
+
:position => 200,
|
|
22
|
+
:defaults => {
|
|
23
|
+
'BHT01' => '0085',
|
|
24
|
+
'BHT02' => '08',
|
|
25
|
+
'BHT06' => 'TH'
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
#Information Source Level
|
|
29
|
+
loop Hippo::TransactionSets::HIPAA_277::L2000A,
|
|
30
|
+
:name => 'Information Source Level',
|
|
31
|
+
:identified_by => {
|
|
32
|
+
'HL.HL03' => '20'
|
|
33
|
+
},
|
|
34
|
+
:minimum => 1,
|
|
35
|
+
:maximum => 1,
|
|
36
|
+
:position => 100
|
|
37
|
+
|
|
38
|
+
#Information Receiver Level
|
|
39
|
+
loop Hippo::TransactionSets::HIPAA_277::L2000B,
|
|
40
|
+
:name => 'Information Receiver Level',
|
|
41
|
+
:identified_by => {
|
|
42
|
+
'HL.HL03' => '21'
|
|
43
|
+
},
|
|
44
|
+
:minimum => 1,
|
|
45
|
+
:maximum => 1,
|
|
46
|
+
:position => 100
|
|
47
|
+
|
|
48
|
+
#Billing Provider of Service Level
|
|
49
|
+
loop Hippo::TransactionSets::HIPAA_277::L2000C,
|
|
50
|
+
:name => 'Billing Provider of Service Level',
|
|
51
|
+
:identified_by => {
|
|
52
|
+
'HL.HL03' => '19'
|
|
53
|
+
},
|
|
54
|
+
:minimum => 0,
|
|
55
|
+
:maximum => nil,
|
|
56
|
+
:position => 100
|
|
57
|
+
|
|
58
|
+
#Patient Level
|
|
59
|
+
loop Hippo::TransactionSets::HIPAA_277::L2000D,
|
|
60
|
+
:name => 'Patient Level',
|
|
61
|
+
:identified_by => {
|
|
62
|
+
'HL.HL03' => 'PT'
|
|
63
|
+
},
|
|
64
|
+
:minimum => 0,
|
|
65
|
+
:maximum => nil,
|
|
66
|
+
:position => 100
|
|
67
|
+
|
|
68
|
+
#Transaction Set Trailer
|
|
69
|
+
segment Hippo::Segments::SE,
|
|
70
|
+
:name => 'Transaction Set Trailer',
|
|
71
|
+
:minimum => 1,
|
|
72
|
+
:maximum => 1,
|
|
73
|
+
:position => 2700
|
|
74
|
+
|
|
75
|
+
end
|
|
76
|
+
end
|
|
77
|
+
end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
module Hippo::TransactionSets
|
|
2
|
+
module HIPAA_277
|
|
3
|
+
|
|
4
|
+
autoload :Base, 'hippo/transaction_sets/HIPAA_277/base'
|
|
5
|
+
autoload :L2000A, 'hippo/transaction_sets/HIPAA_277/L2000A'
|
|
6
|
+
autoload :L2000B, 'hippo/transaction_sets/HIPAA_277/L2000B'
|
|
7
|
+
autoload :L2000C, 'hippo/transaction_sets/HIPAA_277/L2000C'
|
|
8
|
+
autoload :L2000D, 'hippo/transaction_sets/HIPAA_277/L2000D'
|
|
9
|
+
autoload :L2000E, 'hippo/transaction_sets/HIPAA_277/L2000E'
|
|
10
|
+
autoload :L2100A, 'hippo/transaction_sets/HIPAA_277/L2100A'
|
|
11
|
+
autoload :L2100B, 'hippo/transaction_sets/HIPAA_277/L2100B'
|
|
12
|
+
autoload :L2100C, 'hippo/transaction_sets/HIPAA_277/L2100C'
|
|
13
|
+
autoload :L2100D, 'hippo/transaction_sets/HIPAA_277/L2100D'
|
|
14
|
+
autoload :L2100E, 'hippo/transaction_sets/HIPAA_277/L2100E'
|
|
15
|
+
autoload :L2200A, 'hippo/transaction_sets/HIPAA_277/L2200A'
|
|
16
|
+
autoload :L2200B, 'hippo/transaction_sets/HIPAA_277/L2200B'
|
|
17
|
+
autoload :L2200C, 'hippo/transaction_sets/HIPAA_277/L2200C'
|
|
18
|
+
autoload :L2200D, 'hippo/transaction_sets/HIPAA_277/L2200D'
|
|
19
|
+
autoload :L2200E, 'hippo/transaction_sets/HIPAA_277/L2200E'
|
|
20
|
+
autoload :L2220D, 'hippo/transaction_sets/HIPAA_277/L2220D'
|
|
21
|
+
autoload :L2220E, 'hippo/transaction_sets/HIPAA_277/L2220E'
|
|
22
|
+
|
|
23
|
+
end
|
|
24
|
+
end
|