wells_fargo 0.2.0

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.
Files changed (67) hide show
  1. data/.gitignore +5 -0
  2. data/Gemfile +4 -0
  3. data/PM XML Sample.xml +5260 -0
  4. data/PM XML Schema.xml +539 -0
  5. data/Rakefile +17 -0
  6. data/lib/schema.xml +539 -0
  7. data/lib/wells_fargo/element.rb +77 -0
  8. data/lib/wells_fargo/elements/account_reporting.rb +14 -0
  9. data/lib/wells_fargo/elements/additional_details.rb +10 -0
  10. data/lib/wells_fargo/elements/amt_group.rb +11 -0
  11. data/lib/wells_fargo/elements/bank_id.rb +9 -0
  12. data/lib/wells_fargo/elements/bank_info.rb +14 -0
  13. data/lib/wells_fargo/elements/check.rb +14 -0
  14. data/lib/wells_fargo/elements/contact_info.rb +11 -0
  15. data/lib/wells_fargo/elements/cur_amt.rb +9 -0
  16. data/lib/wells_fargo/elements/date_info.rb +9 -0
  17. data/lib/wells_fargo/elements/deductions.rb +9 -0
  18. data/lib/wells_fargo/elements/deductions_total.rb +9 -0
  19. data/lib/wells_fargo/elements/delivery.rb +28 -0
  20. data/lib/wells_fargo/elements/delivery_party.rb +12 -0
  21. data/lib/wells_fargo/elements/dep_acct_id.rb +11 -0
  22. data/lib/wells_fargo/elements/doc_delivery.rb +10 -0
  23. data/lib/wells_fargo/elements/earnings.rb +10 -0
  24. data/lib/wells_fargo/elements/earnings_total.rb +10 -0
  25. data/lib/wells_fargo/elements/edd_biller_id.rb +9 -0
  26. data/lib/wells_fargo/elements/eff_dt.rb +9 -0
  27. data/lib/wells_fargo/elements/exemptions.rb +12 -0
  28. data/lib/wells_fargo/elements/file.rb +14 -0
  29. data/lib/wells_fargo/elements/file_info_grp.rb +12 -0
  30. data/lib/wells_fargo/elements/file_out.rb +11 -0
  31. data/lib/wells_fargo/elements/id_info.rb +9 -0
  32. data/lib/wells_fargo/elements/intermediary_dep_acct_id.rb +9 -0
  33. data/lib/wells_fargo/elements/invoice_adj.rb +15 -0
  34. data/lib/wells_fargo/elements/invoice_info.rb +20 -0
  35. data/lib/wells_fargo/elements/invoice_mgr.rb +9 -0
  36. data/lib/wells_fargo/elements/message.rb +9 -0
  37. data/lib/wells_fargo/elements/name.rb +11 -0
  38. data/lib/wells_fargo/elements/name_map.rb +25 -0
  39. data/lib/wells_fargo/elements/note.rb +9 -0
  40. data/lib/wells_fargo/elements/orgnr_dep_acct_id.rb +9 -0
  41. data/lib/wells_fargo/elements/orgnr_party.rb +12 -0
  42. data/lib/wells_fargo/elements/payroll.rb +18 -0
  43. data/lib/wells_fargo/elements/phone_num.rb +10 -0
  44. data/lib/wells_fargo/elements/pmt_detail.rb +10 -0
  45. data/lib/wells_fargo/elements/pmt_rec.rb +41 -0
  46. data/lib/wells_fargo/elements/pmt_supp_ccr.rb +13 -0
  47. data/lib/wells_fargo/elements/pmt_supp_fdm.rb +12 -0
  48. data/lib/wells_fargo/elements/pmt_supp_pob.rb +9 -0
  49. data/lib/wells_fargo/elements/pmt_supp_wtx.rb +22 -0
  50. data/lib/wells_fargo/elements/po_info.rb +10 -0
  51. data/lib/wells_fargo/elements/post_addr.rb +16 -0
  52. data/lib/wells_fargo/elements/ra_info.rb +11 -0
  53. data/lib/wells_fargo/elements/rcvr_dep_acct_id.rb +9 -0
  54. data/lib/wells_fargo/elements/rcvr_party.rb +12 -0
  55. data/lib/wells_fargo/elements/ref_info.rb +10 -0
  56. data/lib/wells_fargo/elements/return_party.rb +12 -0
  57. data/lib/wells_fargo/elements/tax_info.rb +11 -0
  58. data/lib/wells_fargo/elements/vendor_party.rb +12 -0
  59. data/lib/wells_fargo/payment_manager.rb +27 -0
  60. data/lib/wells_fargo/schema.rb +84 -0
  61. data/lib/wells_fargo/version.rb +3 -0
  62. data/lib/wells_fargo.rb +26 -0
  63. data/test/element_test.rb +123 -0
  64. data/test/payment_manager_test.rb +31 -0
  65. data/test/test_helper.rb +3 -0
  66. data/wells_fargo.gemspec +24 -0
  67. metadata +162 -0
@@ -0,0 +1,14 @@
1
+ module WellsFargo
2
+ class Element
3
+ class BankInfo < WellsFargo::Element
4
+ attribute :name
5
+ attribute :branch_id
6
+ attribute :branch_name
7
+ attribute :bank_id_type
8
+
9
+ child :ref_info
10
+ child :post_addr
11
+ child :bank_id
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,14 @@
1
+ module WellsFargo
2
+ class Element
3
+ class Check < WellsFargo::Element
4
+
5
+
6
+ child :chk_num, :limit => 1
7
+ child :chk_doc_num, :limit => 1
8
+ child :chk_ctrl_num, :limit => 1
9
+ child :courier_name, :limit => 1
10
+ child :courier_account, :limit => 1
11
+ child :delivery_code, :limit => 1
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,11 @@
1
+ module WellsFargo
2
+ class Element
3
+ class ContactInfo < WellsFargo::Element
4
+ attribute :name
5
+
6
+ child :phone_num, :limit => 1
7
+ child :email_addr, :limit => 1
8
+ child :url, :limit => 1
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,9 @@
1
+ module WellsFargo
2
+ class Element
3
+ class CurAmt < WellsFargo::Element
4
+
5
+
6
+
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ module WellsFargo
2
+ class Element
3
+ class DateInfo < WellsFargo::Element
4
+ attribute :date_type
5
+
6
+ child :date, :limit => 0
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ module WellsFargo
2
+ class Element
3
+ class Deductions < WellsFargo::Element
4
+
5
+
6
+ child :amt_group
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ module WellsFargo
2
+ class Element
3
+ class DeductionsTotal < WellsFargo::Element
4
+
5
+
6
+ child :amt_group
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,28 @@
1
+ module WellsFargo
2
+ class Element
3
+ class Delivery < WellsFargo::Element
4
+
5
+
6
+ child :delivery_type, :limit => 1
7
+ child :delivery_contact_name, :limit => 1
8
+ child :delivery_fax_number, :limit => 1
9
+ child :delivery_email_address, :limit => 1
10
+ child :delivery_user_id, :limit => 1
11
+ child :delivery_company_id, :limit => 1
12
+ child :secure_type, :limit => 1
13
+ child :secure_question01, :limit => 1
14
+ child :secure_password01, :limit => 1
15
+ child :secure_question02, :limit => 1
16
+ child :secure_password02, :limit => 1
17
+ child :receiving_address1, :limit => 1
18
+ child :receiving_address2, :limit => 1
19
+ child :receiving_city, :limit => 1
20
+ child :receiving_state, :limit => 1
21
+ child :receiving_zip, :limit => 1
22
+ child :receiving_country, :limit => 1
23
+ child :receiving_country_code, :limit => 1
24
+ child :delivery_code, :limit => 1
25
+ child :courier_account, :limit => 1
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,12 @@
1
+ module WellsFargo
2
+ class Element
3
+ class DeliveryParty < WellsFargo::Element
4
+
5
+
6
+ child :name
7
+ child :ref_info
8
+ child :post_addr
9
+ child :contact_info
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,11 @@
1
+ module WellsFargo
2
+ class Element
3
+ class DepAcctID < WellsFargo::Element
4
+ attribute :acct_id
5
+ attribute :acct_type
6
+ attribute :acct_cur
7
+
8
+ child :bank_info
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,10 @@
1
+ module WellsFargo
2
+ class Element
3
+ class DocDelivery < WellsFargo::Element
4
+
5
+
6
+ child :edd_biller_id
7
+ child :file_out
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ module WellsFargo
2
+ class Element
3
+ class Earnings < WellsFargo::Element
4
+
5
+
6
+ child :hours, :limit => 1
7
+ child :amt_group, :limit => 1
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ module WellsFargo
2
+ class Element
3
+ class EarningsTotal < WellsFargo::Element
4
+
5
+
6
+ child :hours, :limit => 1
7
+ child :amt_group, :limit => 1
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,9 @@
1
+ module WellsFargo
2
+ class Element
3
+ class EDDBillerID < WellsFargo::Element
4
+
5
+
6
+
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ module WellsFargo
2
+ class Element
3
+ class EffDt < WellsFargo::Element
4
+
5
+
6
+
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,12 @@
1
+ module WellsFargo
2
+ class Element
3
+ class Exemptions < WellsFargo::Element
4
+
5
+
6
+ child :state_exmpt, :limit => 1
7
+ child :fed_exmpt, :limit => 1
8
+ child :withhold_status, :limit => 1
9
+ child :withhold_amt, :limit => 1
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,14 @@
1
+ module WellsFargo
2
+ class Element
3
+ class File < WellsFargo::Element
4
+ attribute :company_id
5
+ attribute :process_id
6
+ attribute :document_type
7
+ attribute :pmt_rec_count
8
+ attribute :pmt_rec_total
9
+
10
+ child :pmt_rec
11
+ child :file_info_grp
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,12 @@
1
+ module WellsFargo
2
+ class Element
3
+ class FileInfoGrp < WellsFargo::Element
4
+ attribute :file_date
5
+ attribute :file_time
6
+ attribute :file_control_number
7
+ attribute :group_control_number
8
+
9
+
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,11 @@
1
+ module WellsFargo
2
+ class Element
3
+ class FileOut < WellsFargo::Element
4
+
5
+
6
+ child :file_type, :limit => 0
7
+ child :file_format, :limit => 0
8
+ child :delivery
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,9 @@
1
+ module WellsFargo
2
+ class Element
3
+ class IDInfo < WellsFargo::Element
4
+ attribute :id_type
5
+
6
+ child :id, :limit => 0
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ module WellsFargo
2
+ class Element
3
+ class IntermediaryDepAcctID < WellsFargo::Element
4
+
5
+
6
+ child :dep_acct_id
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,15 @@
1
+ module WellsFargo
2
+ class Element
3
+ class InvoiceAdj < WellsFargo::Element
4
+ attribute :adj_type
5
+ attribute :adj_num_type
6
+
7
+ child :invoice_adj_num, :limit => 0
8
+ child :note
9
+ child :cur_amt
10
+ child :eff_dt
11
+ child :desc, :limit => 0
12
+ child :ra_info
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,20 @@
1
+ module WellsFargo
2
+ class Element
3
+ class InvoiceInfo < WellsFargo::Element
4
+ attribute :pmt_action_code
5
+ attribute :discount_cur_amt
6
+ attribute :total_cur_amt
7
+ attribute :net_cur_amt
8
+ attribute :withd_amt
9
+ attribute :eff_dt
10
+ attribute :invoice_type
11
+ attribute :invoice_num
12
+
13
+ child :ref_info
14
+ child :note
15
+ child :tax_info
16
+ child :invoice_adj
17
+ child :po_info
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,9 @@
1
+ module WellsFargo
2
+ class Element
3
+ class InvoiceMgr < WellsFargo::Element
4
+
5
+
6
+ child :invoice_mgr_flag, :limit => 0
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ module WellsFargo
2
+ class Element
3
+ class Message < WellsFargo::Element
4
+ attribute :msg_type
5
+
6
+ child :msg_text, :limit => 0
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,11 @@
1
+ module WellsFargo
2
+ class Element
3
+ class Name < WellsFargo::Element
4
+
5
+
6
+ child :name1, :limit => 1
7
+ child :name2, :limit => 1
8
+ child :name3, :limit => 1
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,25 @@
1
+ {�" amount1" Amount1"delivery_contact_name"DeliveryContactName" po_num"
2
+ PONum"invoice_mgr"InvoiceMgr"
3
+ addr3"
4
+ Addr3" amount2" Amount2"date_type"
5
+ hours"
6
+ Hours"invoice_info"InvoiceInfo" id_info" IDInfo"branch_id"
7
+ RefID"url"URL"invoice_num"InvoiceNum"tax_authority_code"TaxAuthorityCode"amt_group"
8
+ EffDt"branch_name"BranchName"delivery_fax_number"DeliveryFaxNumber"file_control_number"FileControlNumber"company_id"CompanyID"delivery_type"DeliveryType" ra_date" RADate"net_cur_amt"NetCurAmt"id"ID"
9
+ check"
10
+ Check"receiving_state"ReceivingState"
11
+ phone"
12
+ Phone" pmt_id"
13
+ PmtID"group_control_number"GroupControlNumber"file_date"
14
+ name1"
15
+ Name1"pmt_detail"PmtDetail"
16
+ name2"
17
+ Name2"post_addr"
18
+ RANum"
19
+ name3"
20
+ Name3"delivery_method"DeliveryMethod"
21
+ addr1"
22
+ Addr1"liability_date"LiabilityDate"receiving_country_code"ReceivingCountryCode"receiving_zip"ReceivingZip"tran_handling_code"TranHandlingCode"contact_info"ContactInfo" org_id"
23
+ OrgID"
24
+ addr2"
25
+ Addr2"deductions"Deductions"earnings_total"EarningsTotal
@@ -0,0 +1,9 @@
1
+ module WellsFargo
2
+ class Element
3
+ class Note < WellsFargo::Element
4
+ attribute :note_type
5
+
6
+ child :note_text, :limit => 0
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ module WellsFargo
2
+ class Element
3
+ class OrgnrDepAcctID < WellsFargo::Element
4
+
5
+
6
+ child :dep_acct_id
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,12 @@
1
+ module WellsFargo
2
+ class Element
3
+ class OrgnrParty < WellsFargo::Element
4
+
5
+
6
+ child :name
7
+ child :ref_info
8
+ child :post_addr
9
+ child :contact_info
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,18 @@
1
+ module WellsFargo
2
+ class Element
3
+ class Payroll < WellsFargo::Element
4
+ attribute :prd_end_date
5
+ attribute :prd_begin_date
6
+
7
+ child :exemptions
8
+ child :message
9
+ child :additional_details
10
+ child :earnings
11
+ child :earnings_total
12
+ child :deductions
13
+ child :deductions_total
14
+ child :account_reporting
15
+ child :ref_info
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,10 @@
1
+ module WellsFargo
2
+ class Element
3
+ class PhoneNum < WellsFargo::Element
4
+ attribute :phone_type
5
+ attribute :phone
6
+
7
+
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ module WellsFargo
2
+ class Element
3
+ class PmtDetail < WellsFargo::Element
4
+
5
+
6
+ child :invoice_info
7
+ child :payroll
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,41 @@
1
+ module WellsFargo
2
+ class Element
3
+ class PmtRec < WellsFargo::Element
4
+ attribute :pmt_format
5
+ attribute :pmt_format_intl
6
+ required_attribute :pmt_method
7
+ attribute :delivery_method
8
+ attribute :tran_handling_code
9
+ attribute :invoice_mgr_flag
10
+ attribute :pmt_cr_dr
11
+
12
+ child :ref_info
13
+ child :id_info
14
+ child :date_info
15
+ child :message
16
+ child :check
17
+ child :orgnr_party
18
+ child :rcvr_party
19
+ child :delivery_party
20
+ child :return_party
21
+ child :orgnr_dep_acct_id
22
+ child :rcvr_dep_acct_id
23
+ child :intermediary_dep_acct_id, :limit => 2
24
+ child :vendor_party
25
+ child :pmt_detail
26
+ child :doc_delivery
27
+ child :pdp_handling_code, :limit => 0
28
+ child :pmt_id, :limit => 0
29
+ child :pmt_supp_wtx
30
+ child :pmt_supp_fdm
31
+ child :pmt_supp_pob
32
+ child :pmt_supp_ccr
33
+ child :cur_amt
34
+ child :cur_code, :limit => 0
35
+ child :prc_date, :limit => 0
36
+ child :value_date, :limit => 0
37
+ child :rls_date, :limit => 0
38
+ child :invoice_mgr
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,13 @@
1
+ module WellsFargo
2
+ class Element
3
+ class PmtSuppCCR < WellsFargo::Element
4
+
5
+
6
+ child :payee_type, :limit => 1
7
+ child :exp_date, :limit => 1
8
+ child :merchant_id, :limit => 1
9
+ child :mcc_code, :limit => 1
10
+ child :division, :limit => 1
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,12 @@
1
+ module WellsFargo
2
+ class Element
3
+ class PmtSuppFDM < WellsFargo::Element
4
+
5
+
6
+ child :card_type, :limit => 1
7
+ child :exp_date, :limit => 1
8
+ child :order_flag, :limit => 1
9
+ child :ec, :limit => 1
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,9 @@
1
+ module WellsFargo
2
+ class Element
3
+ class PmtSuppPOB < WellsFargo::Element
4
+
5
+
6
+ child :orig_inv_date, :limit => 0
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,22 @@
1
+ module WellsFargo
2
+ class Element
3
+ class PmtSuppWTX < WellsFargo::Element
4
+
5
+
6
+ child :liability_date, :limit => 1
7
+ child :access_code, :limit => 1
8
+ child :pin, :limit => 1
9
+ child :state_fed_code, :limit => 1
10
+ child :tax_authority_code, :limit => 1
11
+ child :tax_type_code, :limit => 1
12
+ child :amount1, :limit => 1
13
+ child :amount_type1, :limit => 1
14
+ child :amount2, :limit => 1
15
+ child :amount_type2, :limit => 1
16
+ child :amount3, :limit => 1
17
+ child :amount_type3, :limit => 1
18
+ child :amount4, :limit => 1
19
+ child :amount_type4, :limit => 1
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,10 @@
1
+ module WellsFargo
2
+ class Element
3
+ class POInfo < WellsFargo::Element
4
+ attribute :po_type
5
+
6
+ child :po_num, :limit => 1
7
+ child :desc, :limit => 1
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,16 @@
1
+ module WellsFargo
2
+ class Element
3
+ class PostAddr < WellsFargo::Element
4
+
5
+
6
+ child :addr1, :limit => 1
7
+ child :addr2, :limit => 1
8
+ child :addr3, :limit => 1
9
+ child :city, :limit => 1
10
+ child :state_prov, :limit => 1
11
+ child :postal_code, :limit => 1
12
+ child :country, :limit => 1
13
+ child :country_name, :limit => 1
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,11 @@
1
+ module WellsFargo
2
+ class Element
3
+ class RAInfo < WellsFargo::Element
4
+ attribute :ra_num_type
5
+
6
+ child :ra_num, :limit => 1
7
+ child :ra_date, :limit => 1
8
+ child :desc, :limit => 1
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,9 @@
1
+ module WellsFargo
2
+ class Element
3
+ class RcvrDepAcctID < WellsFargo::Element
4
+
5
+
6
+ child :dep_acct_id
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,12 @@
1
+ module WellsFargo
2
+ class Element
3
+ class RcvrParty < WellsFargo::Element
4
+
5
+
6
+ child :name
7
+ child :ref_info
8
+ child :post_addr
9
+ child :contact_info
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,10 @@
1
+ module WellsFargo
2
+ class Element
3
+ class RefInfo < WellsFargo::Element
4
+ attribute :ref_type
5
+
6
+ child :ref_id, :limit => 0
7
+ child :ref_desc, :limit => 0
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,12 @@
1
+ module WellsFargo
2
+ class Element
3
+ class ReturnParty < WellsFargo::Element
4
+
5
+
6
+ child :name
7
+ child :ref_info
8
+ child :post_addr
9
+ child :contact_info
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,11 @@
1
+ module WellsFargo
2
+ class Element
3
+ class TaxInfo < WellsFargo::Element
4
+ attribute :tax_type
5
+
6
+ child :org_id, :limit => 1
7
+ child :cur_amt, :limit => 1
8
+ child :rate, :limit => 1
9
+ end
10
+ end
11
+ end