[Home] [Help]
PACKAGE: APPS.IBY_PAYMENTCARD_PKG
Source
1 PACKAGE iby_paymentcard_pkg AUTHID CURRENT_USER AS
2 /*$Header: ibypmtcards.pls 120.0.12010000.5 2009/01/20 13:29:42 lmallick noship $*/
3
4 -- Constant for payment card types
5 C_INSTRTYPE_PAYMENTCARD CONSTANT VARCHAR2(20) := 'PAYMENTCARD';
6
7 -- Constant ofr Comcheck card issuer
8 C_ISSUER_COMCHECK VARCHAR2(20) := 'COMCHECK';
9
10 -- Number masking options
11 G_MASK_CHARACTER CONSTANT VARCHAR2(1) := 'X';
12 G_DEF_UNMASK_LENGTH CONSTANT NUMBER := 4;
13
14 -- Card validation errors
15 G_RC_INVALID_CARD_NUMBER CONSTANT VARCHAR2(30) := 'INVALID_CARD_NUMBER';
16 G_RC_INVALID_CARD_EXPIRY CONSTANT VARCHAR2(30) := 'INVALID_CARD_EXPIRY';
17 G_RC_INVALID_INSTR_TYPE CONSTANT VARCHAR2(30) := 'INVALID_INSTRUMENT_TYPE';
18 G_RC_INVALID_CARD_ISSUER CONSTANT VARCHAR2(30) := 'INVALID_CARD_ISSUER';
19 G_RC_INVALID_CARD_ID CONSTANT VARCHAR2(30) := 'INVALID_INSTRUMENT';
20 G_RC_INVALID_PARTY CONSTANT VARCHAR2(30) := 'INVALID_PARTY';
21 G_RC_INVALID_ADDRESS CONSTANT VARCHAR2(30) := 'INVALID_ADDRESS';
22
23 G_LKUP_INSTR_TYPE_PC CONSTANT VARCHAR2(30) := 'PAYMENTCARD';
24
25 -- Payment card billing site usage
26 G_PC_BILLING_SITE_USE CONSTANT VARCHAR2(30) := 'PAYMENTCARD_BILLING';
27
28 -- Address Type Flags
29 G_PARTY_SITE_ID CONSTANT VARCHAR2(1) := 'S';
30 G_PARTY_SITE_USE_ID CONSTANT VARCHAR2(1) := 'U';
31
32 TYPE PaymentCard_rec_type IS RECORD
33 (
34 Card_Id NUMBER,
35 Owner_Id NUMBER,
36 Card_Holder_Name VARCHAR2(80),
37 Billing_Address_Id NUMBER,
38 Billing_Postal_Code VARCHAR2(50),
39 Billing_Address_Territory VARCHAR2(2),
40 Card_Number VARCHAR2(30),
41 Expiration_Date DATE,
42 Instrument_Type VARCHAR2(30),
43 Card_Issuer VARCHAR2(30),
44 FI_Name VARCHAR2(80),
45 Single_Use_Flag VARCHAR2(1),
46 Info_Only_Flag VARCHAR2(1),
47 Card_Purpose VARCHAR2(30),
48 Card_Description VARCHAR2(240),
49 Active_Flag VARCHAR2(1),
50 Inactive_Date DATE,
51 Address_Type VARCHAR2(1), -- Internal to payments, defaulted to 'S'
52 Attribute_category VARCHAR2(150),
53 Attribute1 VARCHAR2(150),
54 Attribute2 VARCHAR2(150),
55 Attribute3 VARCHAR2(150),
56 Attribute4 VARCHAR2(150),
57 Attribute5 VARCHAR2(150),
58 Attribute6 VARCHAR2(150),
59 Attribute7 VARCHAR2(150),
60 Attribute8 VARCHAR2(150),
61 Attribute9 VARCHAR2(150),
62 Attribute10 VARCHAR2(150),
63 Attribute11 VARCHAR2(150),
64 Attribute12 VARCHAR2(150),
65 Attribute13 VARCHAR2(150),
66 Attribute14 VARCHAR2(150),
67 Attribute15 VARCHAR2(150)
68 );
69
70
71
72 --
73 -- USE
74 -- Gets credit card mask settings
75 --
76 PROCEDURE Get_Mask_Settings
77 (x_mask_setting OUT NOCOPY iby_sys_security_options.credit_card_mask_setting%TYPE,
78 x_unmask_len OUT NOCOPY iby_sys_security_options.credit_card_unmask_len%TYPE
79 );
80
81 --
82 -- USE
83 -- Generates a masked payment card number based upon system mask
84 -- settings
85 --
86 FUNCTION Mask_Card_Number(p_card_number IN iby_paymentcard.card_number%TYPE)
87 RETURN iby_paymentcard.masked_card_number%TYPE;
88
89 FUNCTION Mask_Card_Number
90 (p_card_number IN iby_paymentcard.card_number%TYPE,
91 p_mask_option IN iby_paymentcard.card_mask_setting%TYPE,
92 p_unmask_len IN iby_paymentcard.card_unmask_length%TYPE
93 )
94 RETURN iby_paymentcard.masked_card_number%TYPE;
95
96
97 -- 1. Create_Card
98 --
99 -- API name : Create_Card
100 -- Type : Public
101 -- Pre-reqs : None
102 -- Function : Creates a payment card instrument
103 -- Current version : 1.0
104 -- Previous version: 1.0
105 -- Initial version : 1.0
106 --
107 PROCEDURE Create_Card
108 (
109 p_api_version IN NUMBER,
110 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
111 p_commit IN VARCHAR2 := FND_API.G_TRUE,
112 x_return_status OUT NOCOPY VARCHAR2,
113 x_msg_count OUT NOCOPY NUMBER,
114 x_msg_data OUT NOCOPY VARCHAR2,
115 p_card_instrument IN PaymentCard_rec_type,
116 x_card_id OUT NOCOPY NUMBER,
117 x_response OUT NOCOPY IBY_FNDCPT_COMMON_PUB.Result_rec_type
118 );
119
120 -- 2. Update_Card
121 --
122 -- API name : Update_Card
123 -- Type : Public
124 -- Pre-reqs : None
125 -- Function : Modifies a payment card instrument
126 -- Current version : 1.0
127 -- Previous version: 1.0
128 -- Initial version : 1.0
129 --
130 PROCEDURE Update_Card
131 (
132 p_api_version IN NUMBER,
133 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
134 p_commit IN VARCHAR2 := FND_API.G_TRUE,
135 x_return_status OUT NOCOPY VARCHAR2,
136 x_msg_count OUT NOCOPY NUMBER,
137 x_msg_data OUT NOCOPY VARCHAR2,
138 p_card_instrument IN PaymentCard_rec_type,
139 x_response OUT NOCOPY IBY_FNDCPT_COMMON_PUB.Result_rec_type
140 );
141
142 -- 3. Get_Card
143 --
144 -- API name : Get_Card
145 -- Type : Public
146 -- Pre-reqs : None
147 -- Function : Queries a payment card instrument
148 -- Current version : 1.0
149 -- Previous version: 1.0
150 -- Initial version : 1.0
151 --
152 PROCEDURE Get_Card
153 (
154 p_api_version IN NUMBER,
155 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
156 x_return_status OUT NOCOPY VARCHAR2,
157 x_msg_count OUT NOCOPY NUMBER,
158 x_msg_data OUT NOCOPY VARCHAR2,
159 p_card_id NUMBER,
160 x_card_instrument OUT NOCOPY PaymentCard_rec_type,
161 x_response OUT NOCOPY IBY_FNDCPT_COMMON_PUB.Result_rec_type
162 );
163
164 -- 15. Card_Exists
165 --
166 -- API name : Card_Exists
167 -- Type : Public
168 -- Pre-reqs : None
169 -- Function : Queries if payment card is already registered;
170 -- identity is based on the card number and owning
171 -- party
172 -- Current version : 1.0
173 -- Previous version: 1.0
174 -- Initial version : 1.0
175 --
176 PROCEDURE Card_Exists
177 (
178 p_api_version IN NUMBER,
179 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
180 x_return_status OUT NOCOPY VARCHAR2,
181 x_msg_count OUT NOCOPY NUMBER,
182 x_msg_data OUT NOCOPY VARCHAR2,
183 p_owner_id NUMBER,
184 p_card_number VARCHAR2,
185 x_card_instrument OUT NOCOPY PaymentCard_rec_type,
186 x_response OUT NOCOPY IBY_FNDCPT_COMMON_PUB.Result_rec_type,
187 p_card_instr_type IN VARCHAR2 DEFAULT NULL
188 );
189
190
191 --
192 -- USE: Updates instrument masks according to new setting
193 --
194 -- ARGS: p_commit => whether to commit the changes
195 --
196 --
197 PROCEDURE Remask_Instruments
198 (
199 p_commit IN VARCHAR2 := FND_API.G_TRUE
200 );
201
202
203 END iby_paymentcard_pkg;