1 PACKAGE OE_PrePayment_PVT AS
2 /* $Header: OEXVPPYS.pls 120.9.12010000.1 2008/07/25 08:06:32 appldev ship $ */
3
4 g_process_pmt_req_logged VARCHAR2(1) := 'N';
5
6 /*--------------------------------------------------------------------------
7 Function Calculate_Pending_Amount
8 Returns the pending amount to be processed
9 Note that the threshold factor has been included here
10 /*--------------------------------------------------------------------------
11
12 FUNCTION Calculate_Pending_Amount
13 ( p_header_rec IN OE_Order_PUB.Header_Rec_Type)
14 RETURN NUMBER;
15
16 /*--------------------------------------------------------------------------
17 Procedure Create_Receipt
18 This procedure calls AR API to create a new receipt for the amount specified.
19 This procedure is called from OE_PrePayment_PVT.Process_Payment.
20 ----------------------------------------------------------------------------*/
21 PROCEDURE Create_Receipt
22 ( p_header_rec IN OE_Order_PUB.Header_Rec_Type
23 , p_amount IN NUMBER
24 , p_receipt_method_id IN NUMBER
25 , p_bank_acct_id IN NUMBER
26 , p_bank_acct_uses_id IN NUMBER
27 , p_trxn_extension_id IN NUMBER --R12 CC Encryption
28 , p_payment_set_id IN OUT NOCOPY NUMBER
29 , p_receipt_number IN OUT NOCOPY VARCHAR2 -- bug 4724845
30 , x_payment_response_error_code OUT NOCOPY VARCHAR2
31 , p_approval_code IN OUT NOCOPY VARCHAR2
32 , x_msg_count OUT NOCOPY NUMBER
33 , x_msg_data OUT NOCOPY VARCHAR2
34 , x_return_status OUT NOCOPY VARCHAR2
35 , x_result_out OUT NOCOPY VARCHAR2
36 );
37
38 /*--------------------------------------------------------------------------
39 Procedure Refund_Request
40 This procedure calls AR API to submit refund request for the amount specified.
41 ----------------------------------------------------------------------------*/
42 PROCEDURE Refund_Request
43 ( p_header_rec IN OE_Order_PUB.Header_Rec_Type
44 , p_amount IN NUMBER
45 , p_payment_set_id IN NUMBER
46 , x_msg_count OUT NOCOPY NUMBER
47 , x_msg_data OUT NOCOPY VARCHAR2
48 , x_return_status OUT NOCOPY VARCHAR2
49 , x_result_out OUT NOCOPY VARCHAR2
50 );
51
52 /*--------------------------------------------------------------------------
53 Procedure Process_PrePayment_Order
54 This is the main procedure to process prepayment for prepaid orders .
55 ----------------------------------------------------------------------------*/
56 PROCEDURE Process_PrePayment_Order
57 ( p_header_rec IN OE_Order_PUB.Header_Rec_Type
58 , p_calling_action IN VARCHAR2
59 , p_delayed_request IN VARCHAR2
60 , x_msg_count OUT NOCOPY NUMBER
61 , x_msg_data OUT NOCOPY VARCHAR2
62 , x_return_status OUT NOCOPY VARCHAR2
63 );
64
65 PROCEDURE Any_Prepayment_Hold_Exists
66 ( p_header_id IN NUMBER -- Unique Order Header Id
67 , p_hold_exists OUT NOCOPY VARCHAR2 -- 'Y' or 'N'
68 );
69
70 PROCEDURE Release_prepayment_hold
71 ( p_header_id IN NUMBER -- Unique Order Header Id
72 , p_msg_count OUT NOCOPY NUMBER -- Message Count
73 , p_msg_data OUT NOCOPY VARCHAR2 -- Messages
74 , p_return_status OUT NOCOPY VARCHAR2 -- Success or Failure
75 );
76
77
78 PROCEDURE Apply_prepayment_hold
79 ( p_header_id IN NUMBER -- Unique Order Header Id
80 , p_hold_id IN NUMBER -- Seeded Id of Hold to be applied
81 , p_msg_count IN OUT NOCOPY NUMBER -- Message Count
82 , p_msg_data IN OUT NOCOPY VARCHAR2 -- Messages
83 , p_return_status OUT NOCOPY VARCHAR2 -- Success or Failure
84 );
85
86 PROCEDURE Release_Payment_Hold
87 ( p_header_id IN NUMBER -- Unique Order Header Id
88 , p_hold_id IN NUMBER
89 , p_msg_count OUT NOCOPY NUMBER -- Message Count
90 , p_msg_data OUT NOCOPY VARCHAR2 -- Messages
91 , p_return_status OUT NOCOPY VARCHAR2 -- Success or Failure
92 );
93
94 FUNCTION Get_Format_Mask(p_currency_code IN VARCHAR2)
95 RETURN VARCHAR2;
96
97 -- New procedure for pack J multiple payments project.
98 PROCEDURE Process_Payments
99 ( p_header_id IN NUMBER
100 , p_line_id IN NUMBER DEFAULT null --bug3524209
101 , p_calling_action IN VARCHAR2
102 , p_amount IN NUMBER
103 , p_delayed_request IN VARCHAR2
104 --R12 CVV2
105 --comm rej, p_reject_on_auth_failure IN VARCHAR2 DEFAULT NULL
106 --comm rej, p_reject_on_risk_failure IN VARCHAR2 DEFAULT NULL
107 , p_risk_eval_flag IN VARCHAR2 DEFAULT NULL --bug 6805953 'Y'
108 --R12 CVV2
109 , p_process_prepayment IN VARCHAR2 DEFAULT 'Y'
110 , p_process_authorization IN VARCHAR2 DEFAULT 'Y'
111 , x_msg_count OUT NOCOPY NUMBER
112 , x_msg_data OUT NOCOPY VARCHAR2
113 , x_return_status OUT NOCOPY VARCHAR2
114 );
115 --R12 CC Encryption
116 Procedure Delete_Payments
117 ( p_line_id IN NUMBER
118 , p_header_id IN NUMBER
119 , p_invoice_to_org_id IN NUMBER
120 , x_return_status OUT NOCOPY VARCHAR2
121 , x_msg_count OUT NOCOPY NUMBER
122 , x_msg_data OUT NOCOPY VARCHAR2
123 );
124 --R12 CC Encryption
125 procedure Split_Payment
126 (p_line_id IN NUMBER
127 ,p_header_id IN NUMBER
128 ,p_split_from_line_id IN NUMBER
129 ,x_return_status OUT NOCOPY VARCHAR2
130 ,x_msg_count OUT NOCOPY NUMBER
131 ,x_msg_data OUT NOCOPY VARCHAR2
132 );
133
134 PROCEDURE Process_Payment_Assurance
135 (p_api_version_number IN NUMBER
136 ,p_line_id IN NUMBER
137 ,p_activity_id IN NUMBER
138 ,p_exists_prepay IN VARCHAR2 DEFAULT 'Y' --pnpl
139 ,x_result_out OUT NOCOPY VARCHAR2
140 ,x_return_status OUT NOCOPY VARCHAR2
141 ,x_msg_count OUT NOCOPY VARCHAR2
142 ,x_msg_data OUT NOCOPY VARCHAR2
143 );
144
145 Procedure Print_Payment_Receipt(p_header_id in Number,
146 x_result_out out NOCOPY /* file.sql.39 change */ varchar2,
147 x_return_status out NOCOPY /* file.sql.39 change */ varchar2);
148
149 PROCEDURE Update_Hdr_Payment(p_header_id in number,
150 p_action in varchar2 := NULL,
151 p_line_id in number := NULL,
152 x_return_status out nocopy varchar2,
153 x_msg_count out nocopy number,
154 x_msg_data out nocopy varchar2);
155
156 /*--------------------------------------------------------------------------
157 Procedure Create_Refund
158 This procedure calls AR Refund Wrapper API for multiple payments project.
159 ----------------------------------------------------------------------------*/
160 PROCEDURE Create_Refund
161 ( p_header_rec IN OE_Order_PUB.Header_Rec_Type
162 , p_refund_amount IN NUMBER
163 , p_payment_set_id IN NUMBER
164 , p_bank_account_id IN NUMBER
165 , p_receipt_method_id IN NUMBER
166 , x_return_status OUT NOCOPY VARCHAR2
167 );
168
169 PROCEDURE Process_Payment_Refund
170 ( p_header_rec IN OE_Order_PUB.Header_Rec_Type
171 , x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER
172 , x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2
173 , x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2
174 );
175
176 PROCEDURE Any_Payment_Hold_Exists
177 ( p_header_id IN NUMBER -- Unique Order Header Id
178 , p_line_id IN NUMBER DEFAULT NULL --pnpl
179 , p_hold_exists OUT NOCOPY VARCHAR2 -- 'Y' or 'N'
180 );
181
182 PROCEDURE Update_Payment_Numbers(p_header_id in number,
183 p_line_id in number := NULL,
184 x_return_status out nocopy varchar2,
185 x_msg_count out nocopy number,
186 x_msg_data out nocopy varchar2);
187
188 PROCEDURE Delete_Payment_Hold
189 (p_line_id IN NUMBER
190 ,p_header_id IN NUMBER
191 ,p_hold_type IN VARCHAR2
192 ,x_return_status OUT NOCOPY VARCHAR2
193 ,x_msg_count OUT NOCOPY NUMBER
194 ,x_msg_data OUT NOCOPY VARCHAR2
195 );
196
197 --pnpl start
198 TYPE pay_now_total_rec IS RECORD
199 (line_id NUMBER(15) DEFAULT NULL
200 ,pay_now_line_amount NUMBER DEFAULT NULL
201 ,pay_now_freight_amount NUMBER DEFAULT NULL
202 ,pay_now_tax_amount NUMBER DEFAULT NULL
203 ,pay_now_total NUMBER DEFAULT NULL
204 ,term_id ra_terms.term_id%type DEFAULT NULL
205 ,currency_code fnd_currencies.currency_code%type DEFAULT NULL
206 );
207
208 TYPE pay_now_total_tbl IS TABLE of pay_now_total_rec
209 INDEX BY BINARY_INTEGER;
210
211 -----------------------------------------------------------------------------------------
212 -- New procedure Get_First_Installment added for Pay Now Pay Later project to fetch and calculate first installment amount from AR tables.
213 ------------------------------------------------------------------------------------------
214 PROCEDURE Get_First_Installment
215 (p_currency_code IN fnd_currencies.currency_code%TYPE
216 ,p_x_due_now_total_detail_tbl IN OUT NOCOPY AR_VIEW_TERM_GRP.amounts_table
217 ,x_due_now_total_summary_rec OUT NOCOPY AR_VIEW_TERM_GRP.summary_amounts_rec
218 ,x_return_status OUT NOCOPY VARCHAR2
219 ,x_msg_count OUT NOCOPY NUMBER
220 ,x_msg_data OUT NOCOPY VARCHAR2
221 );
222
223
224 ----------------------------------------------------------------------------------------------------
225 -- New procedure to get pay now amounts for a sales order
226 ----------------------------------------------------------------------------------------------------
227 PROCEDURE Get_Pay_Now_Amounts
228 (p_header_id IN NUMBER DEFAULT NULL
229 ,p_line_id IN NUMBER DEFAULT NULL
230 ,p_exc_inv_lines IN VARCHAR2 DEFAULT NULL
231 ,x_pay_now_subtotal OUT NOCOPY NUMBER
232 ,x_pay_now_tax OUT NOCOPY NUMBER
233 ,x_pay_now_charges OUT NOCOPY NUMBER
234 ,x_pay_now_total OUT NOCOPY NUMBER
235 ,x_pay_now_commitment OUT NOCOPY NUMBER
236 ,x_msg_count OUT NOCOPY NUMBER
237 ,x_msg_data OUT NOCOPY VARCHAR2
238 ,x_return_status OUT NOCOPY VARCHAR2
239 );
240
241 --pnpl end
242
243 END OE_PrePayment_PVT ;
244