DBA Data[Home] [Help]

PACKAGE: APPS.IBY_FNDCPT_SETUP_PUB

Source


4 
1 PACKAGE IBY_FNDCPT_SETUP_PUB AUTHID CURRENT_USER AS
2 /*$Header: ibyfcsts.pls 120.26.12020000.1 2012/06/27 12:08:35 appldev ship $*/
3 
5 ------------------------------------------------------------------------
6 -- I. Constant Declarations
7 ------------------------------------------------------------------------
8 
9 G_CHNNL_ATTRIB_USE_OPTIONAL CONSTANT VARCHAR2(30) := 'OPTIONAL';
10 G_CHNNL_ATTRIB_USE_REQUIRED CONSTANT VARCHAR2(30) := 'REQUIRED';
11 G_CHNNL_ATTRIB_USE_DISABLED CONSTANT VARCHAR2(30) := 'DISABLED';
12 
13 G_ENC_PATCH_LEVEL_NORMAL CONSTANT VARCHAR2(30) := 'NORMAL';
14 G_ENC_PATCH_LEVEL_PADSS  CONSTANT VARCHAR2(30) := 'PADSS';
15 
16 G_PMT_FLOW_FNDCPT CONSTANT VARCHAR2(30) := 'FUNDS_CAPTURE';
17 
18 -- Channel Types
19 G_CHANNEL_CREDIT_CARD CONSTANT VARCHAR2(30) := 'CREDIT_CARD';
20 
21 -- Result Codes
22 G_RC_INVALID_CHNNL CONSTANT VARCHAR2(30) := 'INVALID_PMT_CHANNEL';
23 G_RC_INVALID_PMT_FUNCTION CONSTANT VARCHAR2(30) := 'INVALID_PMT_FUNCTION';
24 G_RC_INVALID_INSTRUMENT CONSTANT VARCHAR2(30) := 'INVALID_INSTRUMENT';
25 G_RC_INVALID_INSTR_ASSIGN CONSTANT VARCHAR2(30) := 'INVALID_INSTRUMENT_ASSIGNMENT';
26 G_RC_UNKNOWN_CARD CONSTANT VARCHAR2(30) := 'UNKNOWN_CARD';
27 
28 
29 -------------------------------------------------------------------------
30 -- II. Common Record Types
31 -------------------------------------------------------------------------
32 
33 
34 TYPE PayerAttributes_rec_type IS RECORD
35      (
36      Bank_Charge_Bearer  VARCHAR2(30),
37      DirectDebit_BankInstruction VARCHAR2(30)
38      );
39 
40 TYPE PmtChannel_rec_type IS RECORD
41      (
42      Pmt_Channel_Code    VARCHAR2(30),
43      Instrument_Type     VARCHAR2(30)
44      );
45 
46 TYPE PmtChannelAssignment_rec_type IS RECORD
47      (
48      Pmt_Channel_Code    VARCHAR2(30),
49      Default_Flag        VARCHAR2(1),
50      Inactive_Date       DATE
51      );
52 
53 TYPE PmtChannel_AttribUses_rec_type IS RECORD
54      (
55      Instr_SecCode_Use       VARCHAR2(30),
56      Instr_VoiceAuthFlag_Use VARCHAR2(30),
57      Instr_VoiceAuthCode_Use VARCHAR2(30),
58      Instr_VoiceAuthDate_Use VARCHAR2(30),
59      PO_Number_Use           VARCHAR2(30),
60      PO_Line_Number_Use      VARCHAR2(30),
61      AddInfo_Use             VARCHAR2(30),
62      Instr_Billing_Address   VARCHAR2(30)
63      );
64 
65 TYPE PmtInstrument_rec_type IS RECORD
66      (
67      Instrument_Type         VARCHAR2(30),
68      Instrument_Id           NUMBER
69      );
70 
71 TYPE PmtInstrAssignment_rec_type IS RECORD
72      (
73      Assignment_Id          NUMBER,
74      Instrument             PmtInstrument_rec_type,
75      Priority               NUMBER,
76      Start_Date             DATE,
77      End_Date               DATE
78      );
79 
80 
81 TYPE CreditCard_rec_type IS RECORD
82      (
83      Card_Id                NUMBER,
84      Owner_Id               NUMBER,
85      Card_Holder_Name       VARCHAR2(80),
86      Billing_Address_Id     NUMBER,
87      Billing_Postal_Code    VARCHAR2(50),
88      Billing_Address_Territory VARCHAR2(2),
89      Card_Number            VARCHAR2(30),
90      Expiration_Date        DATE,
91      Expired_Flag           VARCHAR2(1),
92      Instrument_Type        VARCHAR2(30),
93      PurchaseCard_Flag      VARCHAR2(1),
94      PurchaseCard_SubType   VARCHAR2(30),
95      Card_Issuer            VARCHAR2(30),
96      FI_Name                VARCHAR2(80),
97      Single_Use_Flag        VARCHAR2(1),
98      Info_Only_Flag         VARCHAR2(1),
99      Card_Purpose           VARCHAR2(30),
100      Card_Description       VARCHAR2(240),
101      Active_Flag            VARCHAR2(1),
102      Inactive_Date          DATE,
103      Address_Type           VARCHAR2(1), -- Internal to payments, defaulted to 'S'
104      Attribute_category    VARCHAR2(150),
105      Attribute1 VARCHAR2(150),
106      Attribute2 VARCHAR2(150),
107      Attribute3 VARCHAR2(150),
108      Attribute4 VARCHAR2(150),
109      Attribute5 VARCHAR2(150),
110      Attribute6 VARCHAR2(150),
111      Attribute7 VARCHAR2(150),
112      Attribute8 VARCHAR2(150),
113      Attribute9 VARCHAR2(150),
114      Attribute10 VARCHAR2(150),
115      Attribute11 VARCHAR2(150),
116      Attribute12 VARCHAR2(150),
117      Attribute13 VARCHAR2(150),
118      Attribute14 VARCHAR2(150),
119      Attribute15 VARCHAR2(150),
120      Attribute16 VARCHAR2(150),
121      Attribute17 VARCHAR2(150),
122      Attribute18 VARCHAR2(150),
123      Attribute19 VARCHAR2(150),
124      Attribute20 VARCHAR2(150),
125      Attribute21 VARCHAR2(150),
126      Attribute22 VARCHAR2(150),
127      Attribute23 VARCHAR2(150),
128      Attribute24 VARCHAR2(150),
129      Attribute25 VARCHAR2(150),
130      Attribute26 VARCHAR2(150),
131      Attribute27 VARCHAR2(150),
132      Attribute28 VARCHAR2(150),
133      Attribute29 VARCHAR2(150),
134      Attribute30 VARCHAR2(150),
135      Register_Invalid_Card  VARCHAR2(1)  -- This parameter is used by OIE to register invalid cards
136      );
137 
138 -- II.2 Table Types
139 
140 TYPE PmtChannel_tbl_type IS TABLE OF PmtChannel_rec_type
141 INDEX BY BINARY_INTEGER;
142 
143 TYPE PmtChannelAssignment_tbl_type IS TABLE OF PmtChannelAssignment_rec_type
144 INDEX BY BINARY_INTEGER;
145 
146 TYPE PmtInstrument_tbl_type IS TABLE OF PmtInstrument_rec_type
147 INDEX BY BINARY_INTEGER;
148 
149 TYPE PmtInstrAssignment_tbl_type IS TABLE OF PmtInstrAssignment_rec_type
150 INDEX BY BINARY_INTEGER;
151 
152 
156 
153 ------------------------------------------------------------------------------
154 -- III.  API Signatures
155 ------------------------------------------------------------------------------
157   -- 1. Set_Payer_Attributes
158   --
159   --   API name        : Set_Payer_Attributes
160   --   Type            : Public
161   --   Pre-reqs        : None
162   --   Function        : Sets payment-specific payer attributes
163   --   Current version : 1.0
164   --   Previous version: 1.0
165   --   Initial version : 1.0
166   --
167   PROCEDURE Set_Payer_Attributes
168             (
169             p_api_version      IN   NUMBER,
170             p_init_msg_list    IN   VARCHAR2  := FND_API.G_FALSE,
171             p_commit           IN   VARCHAR2  := FND_API.G_TRUE,
172             x_return_status    OUT NOCOPY VARCHAR2,
173             x_msg_count        OUT NOCOPY NUMBER,
174             x_msg_data         OUT NOCOPY VARCHAR2,
175             p_payer            IN   IBY_FNDCPT_COMMON_PUB.PayerContext_rec_type,
176             p_payer_attributes IN   PayerAttributes_rec_type,
177             x_payer_attribs_id OUT NOCOPY NUMBER,
178             x_response         OUT NOCOPY IBY_FNDCPT_COMMON_PUB.Result_rec_type
179           );
180 
181   -- 2. Get_Payer_Attributes
182   --
183   --   API name        : Get_Payer_Attributes
184   --   Type            : Public
185   --   Pre-reqs        : None
186   --   Function        : Gets payment-specific payer attributes
187   --   Current version : 1.0
188   --   Previous version: 1.0
189   --   Initial version : 1.0
190   --
191   PROCEDURE Get_Payer_Attributes
192             (
193             p_api_version      IN   NUMBER,
194             p_init_msg_list    IN   VARCHAR2  := FND_API.G_FALSE,
195             x_return_status    OUT NOCOPY VARCHAR2,
196             x_msg_count        OUT NOCOPY NUMBER,
197             x_msg_data         OUT NOCOPY VARCHAR2,
198             p_payer            IN   IBY_FNDCPT_COMMON_PUB.PayerContext_rec_type,
199             x_payer_attributes OUT NOCOPY PayerAttributes_rec_type,
200             x_payer_attribs_id OUT NOCOPY NUMBER,
201             x_response         OUT NOCOPY IBY_FNDCPT_COMMON_PUB.Result_rec_type
202             );
203 
204   -- 3. Get_Payment_Channel_Attribs
205   --
206   --   API name        : Get_Payment_Channel_Attribs
207   --   Type            : Public
208   --   Pre-reqs        : None
209   --   Function        : Gets payment channel attribute usages
210   --   Current version : 1.0
211   --   Previous version: 1.0
212   --   Initial version : 1.0
213   --
214   PROCEDURE Get_Payment_Channel_Attribs
215             (
216             p_api_version      IN   NUMBER,
217             p_init_msg_list    IN   VARCHAR2  := FND_API.G_FALSE,
218             x_return_status    OUT NOCOPY VARCHAR2,
219             x_msg_count        OUT NOCOPY NUMBER,
220             x_msg_data         OUT NOCOPY VARCHAR2,
221             p_channel_code     IN   VARCHAR2,
222             x_channel_attrib_uses OUT NOCOPY PmtChannel_AttribUses_rec_type,
223             x_response         OUT NOCOPY IBY_FNDCPT_COMMON_PUB.Result_rec_type
224             );
225 
226   -- 4. Set_Payer_Default_Pmt_Channel
227   --
228   --   API name        : Set_Payer_Default_Pmt_Channel
229   --   Type            : Public
230   --   Pre-reqs        : None
231   --   Function        : Sets a payer's default payment channel
232   --   Current version : 1.0
233   --   Previous version: 1.0
234   --   Initial version : 1.0
235   --
236   PROCEDURE Set_Payer_Default_Pmt_Channel
237             (
238             p_api_version      IN   NUMBER,
239             p_init_msg_list    IN   VARCHAR2  := FND_API.G_FALSE,
240             p_commit           IN   VARCHAR2  := FND_API.G_TRUE,
241             x_return_status    OUT NOCOPY VARCHAR2,
242             x_msg_count        OUT NOCOPY NUMBER,
243             x_msg_data         OUT NOCOPY VARCHAR2,
244             p_payer            IN   IBY_FNDCPT_COMMON_PUB.PayerContext_rec_type,
245             p_channel_assignment IN PmtChannelAssignment_rec_type,
246             x_assignment_id    OUT NOCOPY NUMBER,
247             x_response         OUT NOCOPY IBY_FNDCPT_COMMON_PUB.Result_rec_type
248             );
249 
250   -- 5. Get_Payer_Default_Pmt_Channel
251   --
252   --   API name        : Get_Payer_Default_Payment_Channel
253   --   Type            : Public
254   --   Pre-reqs        : None
255   --   Function        : Gets the payer's default payment channel
256   --   Current version : 1.0
257   --   Previous version: 1.0
258   --   Initial version : 1.0
259   --
260   PROCEDURE Get_Payer_Default_Pmt_Channel
261             (
262             p_api_version      IN   NUMBER,
263             p_init_msg_list    IN   VARCHAR2  := FND_API.G_FALSE,
264             x_return_status    OUT NOCOPY VARCHAR2,
265             x_msg_count        OUT NOCOPY NUMBER,
266             x_msg_data         OUT NOCOPY VARCHAR2,
267             p_payer            IN   IBY_FNDCPT_COMMON_PUB.PayerContext_rec_type,
268             x_channel_assignment OUT NOCOPY PmtChannelAssignment_rec_type,
269             x_response         OUT NOCOPY IBY_FNDCPT_COMMON_PUB.Result_rec_type
270             );
271 
272   -- 6. Get_Trxn_Appl_Payment_Channels
273   --
274   --   API name        : Get_Trxn_Applicable_Payment_Channels
275   --   Type            : Public
276   --   Pre-reqs        : None
277   --   Function        : Gets the payment channels applicable to the trxn
278   --   Current version : 1.0
279   --   Previous version: 1.0
280   --   Initial version : 1.0
281   --
282   PROCEDURE Get_Trxn_Appl_Pmt_Channels
283             (
284             p_api_version      IN   NUMBER,
288             x_msg_data         OUT NOCOPY VARCHAR2,
285             p_init_msg_list    IN   VARCHAR2  := FND_API.G_FALSE,
286             x_return_status    OUT NOCOPY VARCHAR2,
287             x_msg_count        OUT NOCOPY NUMBER,
289             p_payer            IN   IBY_FNDCPT_COMMON_PUB.PayerContext_rec_type,
290             p_payer_equivalency IN  VARCHAR2
291               := IBY_FNDCPT_COMMON_PUB.G_PAYER_EQUIV_UPWARD,
292             p_conditions       IN  IBY_FNDCPT_COMMON_PUB.TrxnContext_rec_type,
293             p_result_limit     IN  IBY_FNDCPT_COMMON_PUB.ResultLimit_rec_type,
294             x_channels         OUT NOCOPY PmtChannel_tbl_type,
295             x_response         OUT NOCOPY IBY_FNDCPT_COMMON_PUB.Result_rec_type
296             );
297 
298   -- 7. Set_Payer_Instr_Assignment
299   --
300   --   API name        : Set_Payer_Instr_Assignment
301   --   Type            : Public
302   --   Pre-reqs        : None
303   --   Function        : Assigns instrument to the payer
304   --   Current version : 1.0
305   --   Previous version: 1.0
306   --   Initial version : 1.0
307   --
308   PROCEDURE Set_Payer_Instr_Assignment
309             (
310             p_api_version      IN   NUMBER,
311             p_init_msg_list    IN   VARCHAR2  := FND_API.G_FALSE,
312             p_commit           IN   VARCHAR2  := FND_API.G_TRUE,
313             x_return_status    OUT NOCOPY VARCHAR2,
314             x_msg_count        OUT NOCOPY NUMBER,
315             x_msg_data         OUT NOCOPY VARCHAR2,
316             p_payer            IN   IBY_FNDCPT_COMMON_PUB.PayerContext_rec_type,
317             p_assignment_attribs IN PmtInstrAssignment_rec_type,
318             x_assign_id        OUT NOCOPY NUMBER,
319             x_response         OUT NOCOPY IBY_FNDCPT_COMMON_PUB.Result_rec_type
320             );
321 
322   -- 8. Get_Payer_Instr_Assignments
323   --
324   --   API name        :
325   --   Type            : Public
326   --   Pre-reqs        : None
327   --   Function        : Gets all instrument assignments for the payer
328   --   Current version : 1.0
329   --   Previous version: 1.0
330   --   Initial version : 1.0
331   --
332   PROCEDURE Get_Payer_Instr_Assignments
333             (
334             p_api_version      IN   NUMBER,
335             p_init_msg_list    IN   VARCHAR2  := FND_API.G_FALSE,
336             x_return_status    OUT NOCOPY VARCHAR2,
337             x_msg_count        OUT NOCOPY NUMBER,
338             x_msg_data         OUT NOCOPY VARCHAR2,
339             p_payer            IN   IBY_FNDCPT_COMMON_PUB.PayerContext_rec_type,
340             x_assignments      OUT NOCOPY PmtInstrAssignment_tbl_type,
341             x_response         OUT NOCOPY IBY_FNDCPT_COMMON_PUB.Result_rec_type
342             );
343 
344   -- 9. Get_Payer_All_Instruments
345   --
346   --   API name        : Get_Payer_All_Instruments
347   --   Type            : Public
348   --   Pre-reqs        : None
349   --   Function        : Get all instruments owned by the payer
350   --   Current version : 1.0
351   --   Previous version: 1.0
352   --   Initial version : 1.0
353   --
354   PROCEDURE Get_Payer_All_Instruments
355             (
356             p_api_version      IN   NUMBER,
357             p_init_msg_list    IN   VARCHAR2  := FND_API.G_FALSE,
358             x_return_status    OUT NOCOPY VARCHAR2,
359             x_msg_count        OUT NOCOPY NUMBER,
360             x_msg_data         OUT NOCOPY VARCHAR2,
361             p_party_id         IN   NUMBER,
362             x_instruments      OUT NOCOPY PmtInstrument_tbl_type,
363             x_response         OUT NOCOPY IBY_FNDCPT_COMMON_PUB.Result_rec_type
364             );
365 
366   -- 10. Get_Trxn_Appl_Instr_Assign
367   --
368   --   API name        : Get_Trxn_Appl_Instr_Assign
369   --   Type            : Public
370   --   Pre-reqs        : None
371   --   Function        : Gets applicable instrument assignments for the trxn
372   --   Current version : 1.0
373   --   Previous version: 1.0
374   --   Initial version : 1.0
375   --
376   PROCEDURE Get_Trxn_Appl_Instr_Assign
377             (
378             p_api_version      IN   NUMBER,
379             p_init_msg_list    IN   VARCHAR2  := FND_API.G_FALSE,
380             x_return_status    OUT NOCOPY VARCHAR2,
381             x_msg_count        OUT NOCOPY NUMBER,
382             x_msg_data         OUT NOCOPY VARCHAR2,
383             p_payer            IN   IBY_FNDCPT_COMMON_PUB.PayerContext_rec_type,
384             p_payer_equivalency IN  VARCHAR2 :=
385               IBY_FNDCPT_COMMON_PUB.G_PAYER_EQUIV_UPWARD,
386             p_conditions       IN  IBY_FNDCPT_COMMON_PUB.TrxnContext_rec_type,
387             p_result_limit     IN  IBY_FNDCPT_COMMON_PUB.ResultLimit_rec_type,
388             x_assignments      OUT NOCOPY PmtInstrAssignment_tbl_type,
389             x_response         OUT NOCOPY IBY_FNDCPT_COMMON_PUB.Result_rec_type
390             );
391 
392   -- 11. Create_Card
393   --
394   --   API name        : Create_Card
395   --   Type            : Public
396   --   Pre-reqs        : None
397   --   Function        : Creates a credit card instrument
398   --   Current version : 1.0
399   --   Previous version: 1.0
400   --   Initial version : 1.0
401   --
402   PROCEDURE Create_Card
403             (
404             p_api_version      IN   NUMBER,
405             p_init_msg_list    IN   VARCHAR2  := FND_API.G_FALSE,
406             p_commit           IN   VARCHAR2  := FND_API.G_TRUE,
407             x_return_status    OUT NOCOPY VARCHAR2,
408             x_msg_count        OUT NOCOPY NUMBER,
409             x_msg_data         OUT NOCOPY VARCHAR2,
410             p_card_instrument  IN   CreditCard_rec_type,
411             x_card_id          OUT NOCOPY NUMBER,
415   -- 12. Update_Card
412             x_response         OUT NOCOPY IBY_FNDCPT_COMMON_PUB.Result_rec_type
413             );
414 
416   --
417   --   API name        : Update_Card
418   --   Type            : Public
419   --   Pre-reqs        : None
420   --   Function        : Modifies a credit card instrument
421   --   Current version : 1.0
422   --   Previous version: 1.0
423   --   Initial version : 1.0
424   --
425   PROCEDURE Update_Card
426             (
427             p_api_version      IN   NUMBER,
428             p_init_msg_list    IN   VARCHAR2  := FND_API.G_FALSE,
429             p_commit           IN   VARCHAR2  := FND_API.G_TRUE,
430             x_return_status    OUT NOCOPY VARCHAR2,
431             x_msg_count        OUT NOCOPY NUMBER,
432             x_msg_data         OUT NOCOPY VARCHAR2,
433             p_card_instrument  IN   CreditCard_rec_type,
434             x_response         OUT NOCOPY IBY_FNDCPT_COMMON_PUB.Result_rec_type
435             );
436 
437   -- 13. Get_Card
438   --
439   --   API name        : Get_Card
440   --   Type            : Public
441   --   Pre-reqs        : None
442   --   Function        : Queries a credit card instrument
443   --   Current version : 1.0
444   --   Previous version: 1.0
445   --   Initial version : 1.0
446   --
447   PROCEDURE Get_Card
448             (
449             p_api_version      IN   NUMBER,
450             p_init_msg_list    IN   VARCHAR2  := FND_API.G_FALSE,
451             x_return_status    OUT NOCOPY VARCHAR2,
452             x_msg_count        OUT NOCOPY NUMBER,
453             x_msg_data         OUT NOCOPY VARCHAR2,
454             p_card_id               NUMBER,
455             x_card_instrument  OUT NOCOPY CreditCard_rec_type,
456             x_response         OUT NOCOPY IBY_FNDCPT_COMMON_PUB.Result_rec_type
457             );
458 
459   -- 15. Card_Exists
460   --
461   --   API name        : Card_Exists
462   --   Type            : Public
463   --   Pre-reqs        : None
464   --   Function        : Queries if credit card is already registered;
465   --                     identity is based on the card number and owning
466   --                     party
467   --   Current version : 1.0
468   --   Previous version: 1.0
469   --   Initial version : 1.0
470   --
471   PROCEDURE Card_Exists
472             (
473             p_api_version      IN   NUMBER,
474             p_init_msg_list    IN   VARCHAR2  := FND_API.G_FALSE,
475             x_return_status    OUT NOCOPY VARCHAR2,
476             x_msg_count        OUT NOCOPY NUMBER,
477             x_msg_data         OUT NOCOPY VARCHAR2,
478             p_owner_id              NUMBER,
479             p_card_number           VARCHAR2,
480             x_card_instrument  OUT NOCOPY CreditCard_rec_type,
481             x_response         OUT NOCOPY IBY_FNDCPT_COMMON_PUB.Result_rec_type,
482             p_card_instr_type  IN  VARCHAR2 DEFAULT NULL
483             );
484 
485   -- 16. Process_Credit_Card
486   --
487   --   API name        : Process_Credit_Card
488   --   Type            : Public
489   --   Pre-reqs        : None
490   --   Function        : Creates a credit card and instrument assignment.
491   --   Current version : 1.0
492   --   Previous version: 1.0
493   --   Initial version : 1.0
494   --
495   PROCEDURE Process_Credit_Card
496             (
497             p_api_version      IN   NUMBER,
498             p_init_msg_list    IN   VARCHAR2  := FND_API.G_FALSE,
499             p_commit           IN   VARCHAR2  := FND_API.G_TRUE,
500             x_return_status    OUT NOCOPY VARCHAR2,
501             x_msg_count        OUT NOCOPY NUMBER,
502             x_msg_data         OUT NOCOPY VARCHAR2,
503             p_payer            IN   IBY_FNDCPT_COMMON_PUB.PayerContext_rec_type,
504             p_credit_card      IN   CreditCard_rec_type,
505             p_assignment_attribs IN PmtInstrAssignment_rec_type,
506             x_assign_id        OUT NOCOPY NUMBER,
507             x_response         OUT NOCOPY IBY_FNDCPT_COMMON_PUB.Result_rec_type
508             );
509   -- 17. Update_Card_Wrapper
510   --
511   --   API name        : Update_Card_Wrapper
512   --   Type            : Public Wrapper for Java calls only to be used by Payments
513   --   Pre-reqs        : None
514   --   Function        : Modifies a credit card instrument
515   --   Current version : 1.0
516   --   Previous version: 1.0
517   --   Initial version : 1.0
518 PROCEDURE Update_Card_Wrapper
519       (
520               p_commit           IN   VARCHAR2,
521               p_instr_id         IN   iby_creditcard.instrid%TYPE,
522               p_owner_id         IN   iby_creditcard.card_owner_id%TYPE,
523               p_holder_name      IN   iby_creditcard.chname%TYPE,
524               p_billing_address_id IN iby_creditcard.addressid%TYPE,
525               p_address_type     IN   VARCHAR2,
526               p_billing_zip      IN   iby_creditcard.billing_addr_postal_code%TYPE,
527               p_billing_country  IN   iby_creditcard.bill_addr_territory_code%TYPE,
528               p_expiry_date      IN   iby_creditcard.expirydate%TYPE,
529               p_instr_type       IN   iby_creditcard.instrument_type%TYPE,
530               p_pcard_flag       IN   iby_creditcard.purchasecard_flag%TYPE,
531               p_pcard_type       IN   iby_creditcard.purchasecard_subtype%TYPE,
532               p_fi_name          IN   iby_creditcard.finame%TYPE,
533               p_single_use       IN   iby_creditcard.single_use_flag%TYPE,
534               p_info_only        IN   iby_creditcard.information_only_flag%TYPE,
535               p_purpose          IN   iby_creditcard.card_purpose%TYPE,
536               p_desc             IN   iby_creditcard.description%TYPE,
537               p_active_flag      IN   iby_creditcard.active_flag%TYPE,
541 	   p_attribute2	IN 	iby_creditcard.attribute2%TYPE,
538               p_inactive_date    IN   iby_creditcard.inactive_date%TYPE,
539 	   p_attribute_category IN iby_creditcard.attribute_category%TYPE,
540 	   p_attribute1	IN 	iby_creditcard.attribute1%TYPE,
542 	   p_attribute3	IN 	iby_creditcard.attribute3%TYPE,
543 	   p_attribute4	IN 	iby_creditcard.attribute4%TYPE,
544 	   p_attribute5	IN 	iby_creditcard.attribute5%TYPE,
545 	   p_attribute6	IN 	iby_creditcard.attribute6%TYPE,
546 	   p_attribute7	IN 	iby_creditcard.attribute7%TYPE,
547 	   p_attribute8	IN 	iby_creditcard.attribute8%TYPE,
548 	   p_attribute9	IN 	iby_creditcard.attribute9%TYPE,
549 	   p_attribute10	IN 	iby_creditcard.attribute10%TYPE,
550 	   p_attribute11	IN 	iby_creditcard.attribute11%TYPE,
551 	   p_attribute12	IN 	iby_creditcard.attribute12%TYPE,
552 	   p_attribute13	IN 	iby_creditcard.attribute13%TYPE,
553 	   p_attribute14	IN 	iby_creditcard.attribute14%TYPE,
554 	   p_attribute15	IN 	iby_creditcard.attribute15%TYPE,
555 	   p_attribute16	IN 	iby_creditcard.attribute16%TYPE,
556 	   p_attribute17	IN 	iby_creditcard.attribute17%TYPE,
557 	   p_attribute18	IN 	iby_creditcard.attribute18%TYPE,
558 	   p_attribute19	IN 	iby_creditcard.attribute19%TYPE,
559 	   p_attribute20	IN 	iby_creditcard.attribute20%TYPE,
560 	   p_attribute21	IN 	iby_creditcard.attribute21%TYPE,
561 	   p_attribute22	IN 	iby_creditcard.attribute22%TYPE,
562 	   p_attribute23	IN 	iby_creditcard.attribute23%TYPE,
563 	   p_attribute24	IN 	iby_creditcard.attribute24%TYPE,
564 	   p_attribute25	IN 	iby_creditcard.attribute25%TYPE,
565 	   p_attribute26	IN 	iby_creditcard.attribute26%TYPE,
566 	   p_attribute27	IN 	iby_creditcard.attribute27%TYPE,
567 	   p_attribute28	IN 	iby_creditcard.attribute28%TYPE,
568 	   p_attribute29	IN 	iby_creditcard.attribute29%TYPE,
569 	   p_attribute30	IN 	iby_creditcard.attribute30%TYPE,
570               x_result_code      OUT NOCOPY VARCHAR2,
571               x_return_status    OUT  NOCOPY VARCHAR2
572      );
573 
574   -- 18. Create_Card_Wrapper
575   --
576   --   API name        : Create_Card_Wrapper
577   --   Type            : Public Wrapper for Java calls only to be used by Payments
578   --   Pre-reqs        : None
579   --   Function        : Creates a credit card instrument
580   --   Current version : 1.0
581   --   Previous version: 1.0
582   --   Initial version : 1.0
583 
584 PROCEDURE Create_Card_Wrapper
585           (p_commit           IN   VARCHAR2,
586            p_owner_id         IN   iby_creditcard.card_owner_id%TYPE,
587            p_holder_name      IN   iby_creditcard.chname%TYPE,
588            p_billing_address_id IN iby_creditcard.addressid%TYPE,
589            p_address_type     IN   VARCHAR2,
590            p_billing_zip      IN   iby_creditcard.billing_addr_postal_code%TYPE,
591            p_billing_country  IN   iby_creditcard.bill_addr_territory_code%TYPE,
592            p_card_number      IN   iby_creditcard.ccnumber%TYPE,
593            p_expiry_date      IN   iby_creditcard.expirydate%TYPE,
594            p_instr_type       IN   iby_creditcard.instrument_type%TYPE,
595            p_pcard_flag       IN   iby_creditcard.purchasecard_flag%TYPE,
596            p_pcard_type       IN   iby_creditcard.purchasecard_subtype%TYPE,
597            p_issuer           IN   iby_creditcard.card_issuer_code%TYPE,
598            p_fi_name          IN   iby_creditcard.finame%TYPE,
599            p_single_use       IN   iby_creditcard.single_use_flag%TYPE,
600            p_info_only        IN   iby_creditcard.information_only_flag%TYPE,
601            p_purpose          IN   iby_creditcard.card_purpose%TYPE,
602            p_desc             IN   iby_creditcard.description%TYPE,
603            p_active_flag      IN   iby_creditcard.active_flag%TYPE,
604            p_inactive_date    IN   iby_creditcard.inactive_date%TYPE,
605            p_sys_sec_key      IN   iby_security_pkg.DES3_KEY_TYPE,
606 	   p_attribute_category IN iby_creditcard.attribute_category%TYPE,
607 	   p_attribute1	IN 	iby_creditcard.attribute1%TYPE,
608 	   p_attribute2	IN 	iby_creditcard.attribute2%TYPE,
609 	   p_attribute3	IN 	iby_creditcard.attribute3%TYPE,
610 	   p_attribute4	IN 	iby_creditcard.attribute4%TYPE,
611 	   p_attribute5	IN 	iby_creditcard.attribute5%TYPE,
612 	   p_attribute6	IN 	iby_creditcard.attribute6%TYPE,
613 	   p_attribute7	IN 	iby_creditcard.attribute7%TYPE,
614 	   p_attribute8	IN 	iby_creditcard.attribute8%TYPE,
615 	   p_attribute9	IN 	iby_creditcard.attribute9%TYPE,
616 	   p_attribute10	IN 	iby_creditcard.attribute10%TYPE,
617 	   p_attribute11	IN 	iby_creditcard.attribute11%TYPE,
618 	   p_attribute12	IN 	iby_creditcard.attribute12%TYPE,
619 	   p_attribute13	IN 	iby_creditcard.attribute13%TYPE,
620 	   p_attribute14	IN 	iby_creditcard.attribute14%TYPE,
621 	   p_attribute15	IN 	iby_creditcard.attribute15%TYPE,
622 	   p_attribute16	IN 	iby_creditcard.attribute16%TYPE,
623 	   p_attribute17	IN 	iby_creditcard.attribute17%TYPE,
624 	   p_attribute18	IN 	iby_creditcard.attribute18%TYPE,
625 	   p_attribute19	IN 	iby_creditcard.attribute19%TYPE,
626 	   p_attribute20	IN 	iby_creditcard.attribute20%TYPE,
627 	   p_attribute21	IN 	iby_creditcard.attribute21%TYPE,
628 	   p_attribute22	IN 	iby_creditcard.attribute22%TYPE,
629 	   p_attribute23	IN 	iby_creditcard.attribute23%TYPE,
630 	   p_attribute24	IN 	iby_creditcard.attribute24%TYPE,
631 	   p_attribute25	IN 	iby_creditcard.attribute25%TYPE,
632 	   p_attribute26	IN 	iby_creditcard.attribute26%TYPE,
633 	   p_attribute27	IN 	iby_creditcard.attribute27%TYPE,
634 	   p_attribute28	IN 	iby_creditcard.attribute28%TYPE,
635 	   p_attribute29	IN 	iby_creditcard.attribute29%TYPE,
636 	   p_attribute30	IN 	iby_creditcard.attribute30%TYPE,
637            x_result_code      OUT  NOCOPY VARCHAR2,
638            x_return_status    OUT  NOCOPY VARCHAR2,
639            x_instr_id         OUT  NOCOPY iby_creditcard.instrid%TYPE
640           );
641 
642 ------------------------------------------------------------------------------
643 -- IV.  Utility Functions
644 ------------------------------------------------------------------------------
645 
646   PROCEDURE Get_Payer_Id
647   (
648    p_payer IN IBY_FNDCPT_COMMON_PUB.PayerContext_rec_type,
649    p_validation_level IN VARCHAR2,
650    x_payer_level OUT NOCOPY VARCHAR2,
651    x_payer_id    OUT NOCOPY iby_external_payers_all.ext_payer_id%TYPE,
652    x_payer_attribs OUT NOCOPY PayerAttributes_rec_type
653    );
654 
655 
656   FUNCTION Get_Hash(p_number IN VARCHAR2, p_salt IN VARCHAR2) RETURN VARCHAR2;
657 
658   FUNCTION Get_Hash(p_number IN VARCHAR2, p_salt IN VARCHAR2, p_site_salt IN VARCHAR2)
659   RETURN VARCHAR2;
660 
661 
662   PROCEDURE Get_Trxn_Payer_Attributes
663   (
664    p_payer            IN   IBY_FNDCPT_COMMON_PUB.PayerContext_rec_type,
665    p_payer_equivalency IN  VARCHAR2
666      := IBY_FNDCPT_COMMON_PUB.G_PAYER_EQUIV_UPWARD,
667    x_payer_attributes OUT NOCOPY PayerAttributes_rec_type
668   );
669 
670   --
671   -- Scope: Public
672   -- USE  : Gets the card expiration status w.r.t an input date
673   --        (NOTE:Invoking this API would be a performance overhead
674   --         and hence done only when very much required)
675   --
676   --
677   PROCEDURE Get_Card_Expiration_Status
678   (p_instrid      IN   IBY_CREDITCARD.instrid%TYPE,
679    p_input_date   IN DATE,
680    x_expired      OUT NOCOPY VARCHAR2,
681    x_result_code  OUT NOCOPY VARCHAR2
682   );
683 
684   --
685   -- Scope: Public
686   -- USE  : Gets the current encryption patch level
687   --        At present, it returns either NORMAL or PADSS
688   --
689   --
690   FUNCTION Get_Encryption_Patch_Level
691   RETURN VARCHAR2;
692 
693   -- SEPA DD project changes Begin
694   -- Procedure to create new Mandate
695   PROCEDURE Create_Debit_Authorization
696   (p_debit_auth_id IN IBY_DEBIT_AUTHORIZATIONS.DEBIT_AUTHORIZATION_ID%TYPE,
697    p_bank_use_id IN IBY_DEBIT_AUTHORIZATIONS.EXTERNAL_BANK_ACCOUNT_USE_ID%TYPE,
698    p_auth_ref_number IN IBY_DEBIT_AUTHORIZATIONS.AUTHORIZATION_REFERENCE_NUMBER%TYPE,
699    p_initial_debit_auth_id IN IBY_DEBIT_AUTHORIZATIONS.INITIAL_DEBIT_AUTHORIZATION_ID%TYPE,
700    p_auth_rev_number IN IBY_DEBIT_AUTHORIZATIONS.AUTHORIZATION_REVISION_NUMBER%TYPE,
701    p_payment_code IN IBY_DEBIT_AUTHORIZATIONS.PAYMENT_TYPE_CODE%TYPE,
702    p_amend_readon_code IN IBY_DEBIT_AUTHORIZATIONS.AMENDMENT_REASON_CODE%TYPE,
703    p_auth_sign_date IN IBY_DEBIT_AUTHORIZATIONS.AUTH_SIGN_DATE%TYPE,
704    p_auth_cancel_date IN IBY_DEBIT_AUTHORIZATIONS.AUTH_CANCEL_DATE%TYPE,
705    p_debit_auth_method IN IBY_DEBIT_AUTHORIZATIONS.DEBIT_AUTH_METHOD%TYPE,
706    p_pre_notif_flag IN IBY_DEBIT_AUTHORIZATIONS.PRE_NOTIFICATION_REQUIRED_FLAG%TYPE,
707    p_creditor_id IN IBY_DEBIT_AUTHORIZATIONS.CREDITOR_LEGAL_ENTITY_ID%TYPE,
708    p_creditor_name IN IBY_DEBIT_AUTHORIZATIONS.CREDITOR_LE_NAME%TYPE,
709    p_debit_auth_begin IN IBY_DEBIT_AUTHORIZATIONS.DEBIT_AUTH_BEGIN%TYPE,
710    p_cust_addr_id IN IBY_DEBIT_AUTHORIZATIONS.CUST_ADDR_ID%TYPE,
711    p_debit_auth_flag IN IBY_DEBIT_AUTHORIZATIONS.DEBIT_AUTH_FLAG%TYPE,
712    p_debit_auth_ref IN  IBY_DEBIT_AUTHORIZATIONS.DEBIT_AUTH_REFERENCE%TYPE,
713    p_cust_id_code IN IBY_DEBIT_AUTHORIZATIONS.CUST_IDENTIFICATION_CODE%TYPE,
714    p_creditor_identifer IN IBY_DEBIT_AUTHORIZATIONS.CREDITOR_IDENTIFIER%TYPE,
715    p_debit_auth_end IN IBY_DEBIT_AUTHORIZATIONS.DEBIT_AUTH_END%TYPE,
716    p_mandate_file IN IBY_DEBIT_AUTHORIZATIONS.MANDATE_FILE%TYPE,
717    x_result OUT NOCOPY NUMBER
718    );
719 
720   -- Procedure to update the existing Mandate
721 PROCEDURE Update_Debit_Authorization
722   (p_debit_auth_id IN IBY_DEBIT_AUTHORIZATIONS.DEBIT_AUTHORIZATION_ID%TYPE,
723    p_bank_use_id IN IBY_DEBIT_AUTHORIZATIONS.EXTERNAL_BANK_ACCOUNT_USE_ID%TYPE,
724    p_auth_ref_number IN IBY_DEBIT_AUTHORIZATIONS.AUTHORIZATION_REFERENCE_NUMBER%TYPE,
725    p_initial_debit_auth_id IN IBY_DEBIT_AUTHORIZATIONS.INITIAL_DEBIT_AUTHORIZATION_ID%TYPE,
726    p_auth_rev_number IN IBY_DEBIT_AUTHORIZATIONS.AUTHORIZATION_REVISION_NUMBER%TYPE,
727    p_payment_code IN IBY_DEBIT_AUTHORIZATIONS.PAYMENT_TYPE_CODE%TYPE,
728    p_amend_readon_code IN IBY_DEBIT_AUTHORIZATIONS.AMENDMENT_REASON_CODE%TYPE,
729    p_auth_sign_date IN IBY_DEBIT_AUTHORIZATIONS.AUTH_SIGN_DATE%TYPE,
730    p_auth_cancel_date IN IBY_DEBIT_AUTHORIZATIONS.AUTH_CANCEL_DATE%TYPE,
731    p_debit_auth_method IN IBY_DEBIT_AUTHORIZATIONS.DEBIT_AUTH_METHOD%TYPE,
732    p_pre_notif_flag IN IBY_DEBIT_AUTHORIZATIONS.PRE_NOTIFICATION_REQUIRED_FLAG%TYPE,
733    p_creditor_id IN IBY_DEBIT_AUTHORIZATIONS.CREDITOR_LEGAL_ENTITY_ID%TYPE,
734    p_creditor_name IN IBY_DEBIT_AUTHORIZATIONS.CREDITOR_LE_NAME%TYPE,
735    p_debit_auth_begin IN IBY_DEBIT_AUTHORIZATIONS.DEBIT_AUTH_BEGIN%TYPE,
736    p_cust_addr_id IN IBY_DEBIT_AUTHORIZATIONS.CUST_ADDR_ID%TYPE,
737    p_debit_auth_flag IN IBY_DEBIT_AUTHORIZATIONS.DEBIT_AUTH_FLAG%TYPE,
738    p_debit_auth_ref IN  IBY_DEBIT_AUTHORIZATIONS.DEBIT_AUTH_REFERENCE%TYPE,
739    p_cust_id_code IN IBY_DEBIT_AUTHORIZATIONS.CUST_IDENTIFICATION_CODE%TYPE,
740    p_creditor_identifer IN IBY_DEBIT_AUTHORIZATIONS.CREDITOR_IDENTIFIER%TYPE,
741    p_debit_auth_end IN IBY_DEBIT_AUTHORIZATIONS.DEBIT_AUTH_END%TYPE,
742    p_mandate_file IN IBY_DEBIT_AUTHORIZATIONS.MANDATE_FILE%TYPE,
743    x_result OUT NOCOPY NUMBER
744    );
745   -- SEPA DD project changes End
746 
747 END IBY_FNDCPT_SETUP_PUB;