You are on page 1of 62

Cash Management

Release 12 Bank Data Model


Public APIs

Author: Cash Management Development


Creation Date: October 6, 2009
Last Updated: October 6, 2009
File URL: http://files.oraclecorp.com/
Version: 1.1
Status: Draft

Approver Name Role Date

Copyright  2009 Oracle Corporation


All Rights Reserved

This document is not a promise to deliver and may not be included as part of any contract.
1. Document Information

1.1 Change Record

Date Author Version Change Reference

14/08/2009 Tarun Alapati 1.0

1.2 Contributors

Contributor Role Position

1.3 Reviewers

Name Role Position Document Status Date Reviewed Comments


Incorporated

Varun Netan Applications


Engineer
Chirayu Sutaria Project Leader

Document Information Oracle Confidential - For internal use only Page ii of 62


Contents
1. Document Information ......................................................................................... ii
1.1 Change Record........................................................................................................................ii
1.2 Contributors ............................................................................................................................ii
1.3 Reviewers................................................................................................................................ii
2. Introduction............................................................................................................5
2.1 Scope of the Document ........................................................................................................... 5
2.2 Basic Business Needs.............................................................................................................. 5
3. Integration with Trading Community Architecture (TCA) APIs .....................6
4. Major Features.......................................................................................................7
4.1 Setting Applications Context .................................................................................................. 7
4.2 Exception Handling and Results Messages............................................................................. 7
4.3 Return Status ........................................................................................................................... 7
4.4 Locking Mechanism................................................................................................................ 8
4.5 Standard IN or IN/OUT Parameters........................................................................................ 8
4.6 Standard OUT Parameters....................................................................................................... 8
4.7 Country-specific Validations .................................................................................................. 9
4.8 Document Layout.................................................................................................................... 9
5. BANK APIs...........................................................................................................10
5.1 CE_BANK_PUB.create_bank .............................................................................................. 10
5.1.1 PL/SQL Procedure...................................................................................................... 10
5.1.2 Parameter Descriptions ............................................................................................... 11
5.1.3 UI Mappings ............................................................................................................... 13
5.2 CE_BANK_PUB.update_bank ............................................................................................. 14
5.2.1 PL/SQL Procedure...................................................................................................... 14
5.2.2 Parameter Descriptions ............................................................................................... 15
5.2.3 UI Mappings ............................................................................................................... 17
5.3 CE_BANK_PUB.check_bank_exist ..................................................................................... 18
5.3.1 PL/SQL Procedure...................................................................................................... 18
5.3.2 Parameter Descriptions ............................................................................................... 18
5.4 CE_BANK_PUB.set_bank_end_date ................................................................................... 20
5.4.1 PL/SQL Procedure...................................................................................................... 20
5.4.2 Parameter Descriptions ............................................................................................... 20
6. BANK BRANCH APIs ........................................................................................22
6.1 CE_BANK_PUB.create_bank_branch ................................................................................. 22
6.1.1 PL/SQL Procedure...................................................................................................... 22
6.1.2 Parameter Descriptions ............................................................................................... 23
6.1.3 UI Mappings ............................................................................................................... 25
6.2 CE_BANK_PUB.update_bank_branch ................................................................................ 26

Document Information Oracle Confidential - For internal use only Page iii of 62
6.2.1 PL/SQL Procedure...................................................................................................... 26
6.2.2 Parameter Descriptions ............................................................................................... 27
6.2.3 UI Mappings ............................................................................................................... 29
6.3 CE_BANK_PUB.check_branch_exist.................................................................................. 30
6.3.1 PL/SQL Procedure...................................................................................................... 30
6.3.2 Parameter Descriptions ............................................................................................... 31
6.4 CE_BANK_PUB.set_bank_branch_end_date ...................................................................... 32
6.4.1 PL/SQL Procedure...................................................................................................... 32
6.4.2 Parameter Descriptions ............................................................................................... 33
7. BANK ACCOUNT APIs .....................................................................................34
7.1 PL/SQL Record Structure for Bank Account........................................................................ 34
7.2 CE_BANK_PUB.create_bank_acct...................................................................................... 35
7.2.1 PL/SQL Procedure...................................................................................................... 35
7.2.2 Parameter Descriptions ............................................................................................... 36
7.2.3 UI Mappings ............................................................................................................... 41
7.3 CE_BANK_PUB.update_bank_acct..................................................................................... 43
7.3.1 PL/SQL Procedure...................................................................................................... 43
7.3.2 Parameter Descriptions ............................................................................................... 44
7.3.3 UI Mappings ............................................................................................................... 49
8. BANK ACCOUNT USE APIs.............................................................................50
8.1 PL/SQL Record Structure for Bank Account Use................................................................. 50
8.2 CE_BANK_PUB. create_bank_acct_use.............................................................................. 51
8.2.1 PL/SQL Procedure...................................................................................................... 51
8.2.2 Parameter Descriptions ............................................................................................... 51
8.2.3 UI Mappings ............................................................................................................... 56
8.3 CE_BANK_PUB.update_bank_acct_use ............................................................................. 57
8.3.1 PL/SQL Procedure...................................................................................................... 57
8.3.2 Parameter Descriptions ............................................................................................... 58
8.3.3 UI Mappings ............................................................................................................... 61
9. Error Message Description .................................................................................62

Document Information Oracle Confidential - For internal use only Page iv of 62


2. Introduction

2.1 Scope of the Document

This document outlines the specifications and the methodology for using the various Cash Management Public APIs.
These APIs provide an extension to existing functionality of creating and manipulating banks, bank branches and bank
accounts. These APIs can be accessed using standard PL/SQL server-side routine calls. The document also provides an
exhaustive list of error messages that are returned by various API’s(see section 9)

2.2 Basic Business Needs

The Cash Management Public API provides the following basic functionality using different API calls:
1. Creating and updating a Bank.
2. Checking if a bank already exists in the application or not.
3. End dating a bank.
4. Creating and updating a bank branch.
5. Checking if a bank branch already exists in the application or not.
6. End dating a bank branch.
7. Creating and updating a bank account.
8. Creating and updating the bank account uses.

Introduction Oracle Confidential - For internal use only Page 5 of 62


3. Integration with Trading Community Architecture (TCA) APIs

Applications in the Oracle E-Business Suite use the TCA public APIs to insert and update entities in the TCA model.
The following table illustrates the integration between TCA APIs and the Cash Management APIs. Please note that
banks and bank branches are TCA parties in R12. Cash Management provides and interface through which these parties
are created and updated. The tables which store the data are all TCA (HZ) tables.

Cash Management API Calls TCA API?

create_bank Yes: Calls HZ_BANK_PUB.create_bank


update_bank Yes: Calls HZ_BANK_PUB.update_bank
check_bank_exist No
Yes: Calls HZ_BANK_PUB.update_bank. And in
set_bank_end_date some of the cases call is made to
HZ_BANK_PUB.update_bank_branch
create_bank_branch Yes: Calls HZ_BANK_PUB.create_bank_branch
update_bank_branch Yes: Calls HZ_BANK_PUB.update_bank_branch
check_branch_exits No
set_bank_branch_end_date Yes: Calls HZ_BANK_PUB.update_bank_branch
create_bank_acct No
update_bank_acct No
create_bank_acct_use No
update_bank_acct_use No

Integration with Trading Community Architecture (TCA) APIsOracle Confidential - For internal use only Page 6 of 62
4. Major Features

4.1 Setting Applications Context


The TCA APIs require the Applications Context in a database session to be set, before calling any Trading Community
Architecture application programming interfaces (API). As some of the Cash Management APIs in turn call the TCA
API the database session should be set before running the Cash Management APIs. The APIs rely on global variables
and profiles that are part of this Applications Context. For details on setting Applications Context, please refer to Note
209185.1 on Oracle MetaLink (http://metalink.oracle.com).

4.2 Exception Handling and Results Messages


The APIs provide an extensive set of error-handling and error-reporting mechanisms so that errors encountered in the
different phases of API execution are reported and put on the message stack. The calling program has the option of
looking up all the error messages or the first error message on the stack. If there is only one error in the message stack,
the error is displayed as one of the output parameters of the API routine. There are three types of information that the
APIs provide to their calling programs:
• Overall status.
• Messages describing the operations performed or errors encountered by the API.
• Output values, that the program making the call to the API might need to use.

4.3 Return Status


The return status (x_return_status) of the API informs the caller about the result of the operation or operations performed
by the API. The possible return status values and their meanings are:
• Success - FND_API.G_RET_STS_SUCCESS: A success return status indicates that the API performed all of
the operations requested by its caller. A success return status can be accompanied by informative messages in
the API message list.
• Error - FND_API.G_RET_STS_ERROR: An error return status indicates that the API failed to perform
some or all of the operations requested by its caller. An error return status is usually accompanied by messages
describing any errors and how to resolve them. In most cases, it is possible for an end-user to correct normal,
expected errors such as missing attributes or invalid date ranges.
• Unexpected Error - FND_API.G_RET_STS_UNEXP_ERROR: An unexpected error status indicates that
the API encountered an unexpected error condition that it could not handle. In this case, the API cannot
continue its regular processing. Examples of such errors are irrecoverable data inconsistency errors, memory
errors, and programming errors such as attempting to divide by zero. In most cases, an end user will not be able
to correct unexpected errors. These errors usually require resolution by a system administrator or an application
developer.

Major Features Oracle Confidential - For internal use only Page 7 of 62


4.4 Locking Mechanism
The public APIs provide a new locking mechanism for update procedures, based on the new
OBJECT_VERSION_NUMBER column, which has been included in all HZ tables.
For this reason, OBJECT_VERSION_NUMBER is a mandatory attribute for all update APIs. The locking mechanism
works as follows:
• Whenever a new record is created, the value in the OBJECT_VERSION_NUMBER column is set to 1.
• Whenever a record is updated, the value in the OBJECT_VERSION_NUMBER column is reset to
OBJECT_VERSION_NUMBER + 1.
• For records that existed in the HZ tables prior to introduction of this locking mechanism, the API sets the value
in the column OBJECT_VERSION_NUMBER to null.

4.5 Standard IN or IN/OUT Parameters


1. p_<entity>_object_version_number IN/OUT NUMBER Required - This parameter is either called
p_object_version_number or p_<entity>_object_version_number. For example, for the
hz_party_v2pub.update_organization API, this parameter is called p_party_object_version_number because
organization is a type of party. The parameter value must match the version number in the database of the
record being updated. An error will be returned if the calling program passes an object version number that is
not identical to the one in the database for the existing record. This parameter is referred to as Input/Output
Standard API parameter throughout the document.
2. p_init_msg_list IN VARCHAR2 Optional- The default is FND_API.G_FALSE. If set to true, the API calls
fnd_msg_pub.initialize to initialize the message stack. If it set to false, then the calling program must initialize
the message stack. The initialization must only be done once in the case where more than one API is being
called. This parameter is referred to as Input Standard API Parameters throughout the document.

4.6 Standard OUT Parameters


The names of all output parameters begin with "x_"
• x_return_status OUT VARCHAR2(1) The Out parameter returns the status of the API.
The returned value is one of the following:
 FND_API.G_RET_STS_SUCCESS – Success
 FND_API.G_RET_STS_ERROR - Expected error, validation or missing data.
 FND_API.G_RET_STS_UNEXP_ERROR - the calling program cannot correct unexpected error.

• x_msg_count OUT NUMBER


• x_msg_data OUT VARCHAR2

The x_msg_count variable contains the number of messages in the message list. If the count is one, then the x_msg_data
variable holds the encoded message.

These parameters have been referred to as Output-Standard API Parameters throughout the document

Major Features Oracle Confidential - For internal use only Page 8 of 62


4.7 Country-specific Validations
The users have an option to disable the country-specific bank validations, which are fired by the system during setup of
banks, bank branches and bank accounts. The profile option 'CE: Disable Bank Validations' can be set at the site,
application, responsibility or user level. The profile is seeded with a default value of 'No' at the site level. The country-
specific validations pertaining to the bank number, branch number, account number and check digit, as detailed in the
R12 Cash Management User Guide - Appendix F, can be disabled by this profile. If the profile is set to 'Yes', these
validations will not fire. The checks for unique banks, branches, accounts and the mandatory requirement of bank
account number are not affected by this profile.

Note:
i) The profile option ‘CE: Disable Bank Validations’ can be set at the user or responsibility level. The
application context should also be set accordingly.
ii) The option to disable the country specific validations is available by applying the patch of the bug
7582842.

4.8 Document Layout


The document lists all the CE Public APIs. These can be broadly classified into:
1. Bank APIs.
2. Bank Branches APIs.
3. Bank Account APIs.
4. Bank Account Use APIs.

Each of these APIs is organized into API overview, PL/SQL procedure, Parameter descriptions and UI Mappings
section. The Error key messages described in the Parameter descriptions section of the API have been expanded and
message text is given at the end of the document.

Major Features Oracle Confidential - For internal use only Page 9 of 62


5. BANK APIs

5.1 CE_BANK_PUB.create_bank
This API is used to create a bank. The create_bank API calls the HZ_BANK_PUB.create_bank API to create the bank as
an Organization in the HZ_PARTIES table. On successful creation of bank, the API returns the bank party id along with
the information/error messages. The API returns a null bank party id if the bank is not created. This API has 4 output and
34 input parameters in total. Based on the type, the following is the breakdown of the parameters:
Input
Standard API parameters: 1
Application parameters: 8 + 25 (descriptive flexfield record parameters)

Output
Standard API parameters: 3
Application parameters: 1

5.1.1 PL/SQL Procedure

CE_BANK_PUB.create_bank (
p_init_msg_list,
p_country_code,
p_bank_name ,
p_bank_number ,
p_alternate_bank_name ,
p_short_bank_name,
p_description ,
p_tax_payer_id ,
p_tax_registration_number ,
p_attribute_category ,
p_attribute1 ,
p_attribute2 ,
p_attribute3 ,
p_attribute4 ,
p_attribute5 ,
p_attribute6 ,
p_attribute7 ,
p_attribute8 ,
p_attribute9 ,
p_attribute10 ,
p_attribute11 ,
p_attribute12 ,
p_attribute13 ,
p_attribute14 ,
p_attribute15 ,
p_attribute16 ,
p_attribute17 ,
p_attribute18 ,
p_attribute19 ,
p_attribute20 ,
p_attribute21 ,
p_attribute22 ,
p_attribute23 ,
p_attribute24,
x_bank_id ,
x_return_status,
x_msg_count,
x_msg_data
);

BANK APIs Oracle Confidential - For internal use only Page 10 of 62


5.1.2 Parameter Descriptions
If required parameters are not passed to this API, then the API call will fail. However, depending on the business
scenario, the user will have to pass values for other parameters to successfully create the business object. Otherwise,
error messages will be reported.

Parameter Name Type Data Type Reqd Default Validation, Comments

Allows API callers to request that the


fnd_api.g
p_init_msg_list IN VARCHAR2 No API does initialization of the message
_false
list on their behalf.
This is a 2 letter country code value as
defined in the table
p_country_code IN VARCHAR2 Yes FND_TERRITORIES for a particular
country.
Error: CE_API_REQUIRED_PARAM
This is the Bank Name field.
p_bank_name IN VARCHAR2 Yes Validation: Mandatory attribute
Error: CE_API_REQUIRED_PARAM
This is the Bank number field, country
specific validations are applied on this
p_bank_number IN VARCHAR2 No NULL field. Validations are applied based on
the home country that is
p_country_code.
This field represents the alternate bank
name. Country Specific Validations are
p_alternate_bank_name IN VARCHAR2 No NULL
applicable on this field in particular for
the Country Japan
An alias or other name by which the
bank is
p_short_bank_name IN VARCHAR2 No NULL
known. This is the Short name field of
the Bank
This field stores the description details
p_description IN VARCHAR2 No NULL
of the bank
Taxpayer identification number. Can be
SSN or income taxpayer ID in US,
fiscal code or NIF in Europe. Country
p_tax_payer_id IN VARCHAR2 No NULL
Specific Validations are applicable on
this field in particular for the Country
Colombia
Taxpayer registration number, also
p_tax_registration_number IN VARCHAR2 No NULL
known as the VAT number.
p_attribute_category IN VARCHAR2 No NULL
p_attribute1 IN VARCHAR2 No NULL
p_attribute2 IN VARCHAR2 No NULL
p_attribute3 IN VARCHAR2 No NULL
p_attribute4 IN VARCHAR2 No NULL
p_attribute5 IN VARCHAR2 No NULL
p_attribute6 IN VARCHAR2 No NULL
p_attribute7 IN VARCHAR2 No NULL
p_attribute8 IN VARCHAR2 No NULL
p_attribute9 IN VARCHAR2 No NULL
p_attribute10 IN VARCHAR2 No NULL
p_attribute11 IN VARCHAR2 No NULL
p_attribute12 IN VARCHAR2 No NULL

BANK APIs Oracle Confidential - For internal use only Page 11 of 62


Parameter Name Type Data Type Reqd Default Validation, Comments

p_attribute13 IN VARCHAR2 No NULL


p_attribute14 IN VARCHAR2 No NULL
p_attribute15 IN VARCHAR2 No NULL
p_attribute16 IN VARCHAR2 No NULL
p_attribute17 IN VARCHAR2 No NULL
p_attribute18 IN VARCHAR2 No NULL
p_attribute19 IN VARCHAR2 No NULL
p_attribute20 IN VARCHAR2 No NULL
p_attribute21 IN VARCHAR2 No NULL
p_attribute22 IN VARCHAR2 No NULL
p_attribute23 IN VARCHAR2 No NULL
p_attribute24 IN VARCHAR2 No NULL
The bank party ID for the bank is
x_bank_id OUT NUMBER
returned on successful bank creation
The return status of the API, informs
the caller about the result of the
x_return_status OUT VARCHAR2
operation or operations performed by
the API
Number of messages in the FND
x_msg_count OUT NUMBER
message stack
If the count for x_msg_count is one,
x_msg_data OUT VARCHAR2 then the x_msg_data column holds the
encoded message

Status Output Value


The Bank party ID for the newly created bank along with
Success
x_return_status of FND_API.G_RET_STS_SUCCESS
A null value for the Bank party ID.
Failure x_return_status of either FND_API.G_RET_STS_ERROR
FND_API.G_RET_STS_UNEXP_ERROR

Note: The user can crosscheck if the bank is successfully created in the application or not by querying the bank details in
ce_banks_v database view.

BANK APIs Oracle Confidential - For internal use only Page 12 of 62


5.1.3 UI Mappings
The below screen-shot shows the mapping of create_bank API parameters with the UI fields of Create Bank: Bank
Information Page.

BANK APIs Oracle Confidential - For internal use only Page 13 of 62


5.2 CE_BANK_PUB.update_bank
This API is used to update a bank already existing in the application. The update_bank API calls the
HZ_BANK_PUB.update_bank API to update the bank details of bank in the HZ_PARTIES table. On successful update
of bank, the API returns the information/error messages. This API has 3 output, 35 input and 1 input/output parameters
in total. Based on the type, the following is the breakdown of the parameters:
Input
Standard API parameters: 1
Application parameters: 9 + 25 (descriptive flexfield record parameters)
Output
Standard API parameters: 3
Application parameters: 0
Input/Output
Standard API parameters: 1

5.2.1 PL/SQL Procedure


CE_BANK_PUB.update_bank (
p_init_msg_list,
p_bank_id,
p_bank_name ,
p_bank_number ,
p_alternate_bank_name ,
p_short_bank_name,
p_description ,
p_tax_payer_id ,
p_tax_registration_number ,
p_attribute_category ,
p_attribute1 ,
p_attribute2 ,
p_attribute3 ,
p_attribute4 ,
p_attribute5 ,
p_attribute6 ,
p_attribute7 ,
p_attribute8 ,
p_attribute9 ,
p_attribute10 ,
p_attribute11 ,
p_attribute12 ,
p_attribute13 ,
p_attribute14 ,
p_attribute15 ,
p_attribute16 ,
p_attribute17 ,
p_attribute18 ,
p_attribute19 ,
p_attribute20 ,
p_attribute21 ,
p_attribute22 ,
p_attribute23 ,
p_attribute24,
p_country_validate ,
p_object_version_number,
x_return_status,
x_msg_count,
x_msg_data
);

BANK APIs Oracle Confidential - For internal use only Page 14 of 62


5.2.2 Parameter Descriptions
The existing values of bank details are retained for the non-required parameters if values are not passed for them.

Parameter Name Type Data Type Reqd Default Validation, Comments


Allows API callers to request that the
fnd_api.g
p_init_msg_list IN VARCHAR2 No API does initialization of the message
_false
list on their behalf.
Validation: Valid bank party_id from
HZ_PARTIES table for the Bank to be
updated.
p_bank_id IN NUMBER Yes Comment: Pass the party_id from
HZ_PARTIES record for the
organization
Error: CE_API_REQUIRED_PARAM
This is the Bank Name field.
Validation: Mandatory attribute
p_bank_name IN VARCHAR2 Yes
Validation: Cannot be updated to null
Error: CE_API_REQUIRED_PARAM
This is the Bank number field, country
specific validations are applied on this
p_bank_number IN VARCHAR2 No NULL field. Validations are applied based on
the home country that is
p_country_code.
This field represents the alternate bank
name. Country Specific Validations are
p_alternate_bank_name IN VARCHAR2 No NULL
applicable on this field in particular for
the Country Japan
An alias or other name by which the
bank is
p_short_bank_name IN VARCHAR2 No NULL
known. This is the Short name field of
the Bank
This field stores the description details
p_description IN VARCHAR2 No NULL
of the bank
Taxpayer identification number. Can be
SSN or income taxpayer ID in US,
fiscal code or NIF in Europe. Country
p_tax_payer_id IN VARCHAR2 No NULL
Specific Validations are applicable on
this field in particular for the Country
Colombia
Taxpayer registration number, also
known as the VAT number. Validation:
p_tax_registration_number IN VARCHAR2 No NULL
Validated against AR lookup type
MONTH
p_attribute_category IN VARCHAR2 No NULL
p_attribute1 IN VARCHAR2 No NULL
p_attribute2 IN VARCHAR2 No NULL
p_attribute3 IN VARCHAR2 No NULL
p_attribute4 IN VARCHAR2 No NULL
p_attribute5 IN VARCHAR2 No NULL
p_attribute6 IN VARCHAR2 No NULL
p_attribute7 IN VARCHAR2 No NULL
p_attribute8 IN VARCHAR2 No NULL
p_attribute9 IN VARCHAR2 No NULL

BANK APIs Oracle Confidential - For internal use only Page 15 of 62


Parameter Name Type Data Type Reqd Default Validation, Comments
p_attribute10 IN VARCHAR2 No NULL
p_attribute11 IN VARCHAR2 No NULL
p_attribute12 IN VARCHAR2 No NULL
p_attribute13 IN VARCHAR2 No NULL
p_attribute14 IN VARCHAR2 No NULL
p_attribute15 IN VARCHAR2 No NULL
p_attribute16 IN VARCHAR2 No NULL
p_attribute17 IN VARCHAR2 No NULL
p_attribute18 IN VARCHAR2 No NULL
p_attribute19 IN VARCHAR2 No NULL
p_attribute20 IN VARCHAR2 No NULL
p_attribute21 IN VARCHAR2 No NULL
p_attribute22 IN VARCHAR2 No NULL
p_attribute23 IN VARCHAR2 No NULL
p_attribute24 IN VARCHAR2 No NULL

The country specific validation errors


p_country_validate IN VARCHAR2 No Y are reported only if this field is set to
'Y'.

Validation:
• Mandatory attribute
• Validated against value in the
database for
IN the existing party record
p_object_version_number
OUT Comment:
• Pass the current
object_version_number of
the record from hz_parties
• Return new value after update
The return status of the API, informs
the caller about the result of the
x_return_status OUT VARCHAR2
operation or operations performed by
the API
Number of messages in the FND
x_msg_count OUT NUMBER
message stack
If the count for x_msg_count is one,
then the
x_msg_data OUT VARCHAR2
x_msg_data column holds the encoded
message

Status Output Value


The incremented object version number along with x_return_status of
Success
FND_API.G_RET_STS_SUCCESS
x_return_status of either FND_API.G_RET_STS_ERROR
Failure
FND_API.G_RET_STS_UNEXP_ERROR

BANK APIs Oracle Confidential - For internal use only Page 16 of 62


5.2.3 UI Mappings
The below screen-shot shows the mapping of update_bank API parameters with the UI fields of Update Bank: Bank
Information Page.

BANK APIs Oracle Confidential - For internal use only Page 17 of 62


5.3 CE_BANK_PUB.check_bank_exist
This procedure is used to find if a bank already exists in the system or not. If the bank is present then the Bank party ID
is returned along with its end date. The bank search can be done either using the bank name field or the bank number
field. The API works as listed below

Case 1. If a value other than null is passed for p_bank_name field, API searches the bank based on its name without
taking into account the bank number p_bank_number. In this case the p_bank_number field is not used anywhere.

Case 2. If a null value is passed for the p_bank_name field,


a. Then API checks for p_bank_number field, if the value for bank number field is not null then the bank is
searched based on the bank number.
b. If a null value is passed for p_bank_number field then null values are returned for the Bank ID.

This API has 2 output and 3 input parameters in total. Based on the type, the following is the breakdown of the
parameters:

Input
Standard API parameters: 0
Application parameters: 3
Output
Standard API parameters: 0
Application parameters: 2

5.3.1 PL/SQL Procedure


CE_BANK_PUB.check_bank_exist(
p_country_code,
p_bank_name,
p_bank_number,
x_bank_id,
x_end_date
);

5.3.2 Parameter Descriptions

Parameter Name Type Data Type Reqd Default Validation, Comments


This is the Country Code for the
country the bank belongs to. The code
p_country_code IN VARCHAR2 Yes
is as defined in the
FND_TERRITORIES table
This field represents the bank name
p_bank_name IN VARCHAR2 Yes
which has to be searched
This field represents the bank number
p_bank_number IN VARCHAR2 Yes
which has to be searched
Bank Party ID if bank exists, null if
x_bank_id OUT NUMBER Yes
bank does not exist.
x_end_date OUT DATE Yes End date of the bank.

BANK APIs Oracle Confidential - For internal use only Page 18 of 62


Status Output Value
The bank party id and end date for the given bank name/ bank number along with x_return_status of
Success
FND_API.G_RET_STS_SUCCESS
X_return_status of either FND_API.G_RET_STS_ERROR or
Failure
FND_API.G_RET_STS_UNEXP_ERROR

BANK APIs Oracle Confidential - For internal use only Page 19 of 62


5.4 CE_BANK_PUB.set_bank_end_date
This API is used to set the end date of a bank of a bank already defined in the application. This API uses the
HZ_BANK_PUB.update_bank public API to update the end date detail of the bank. This API has 3 output, 3 input and 1
input/output parameters in total. Based on the type, the following is the breakdown of the parameters:

Input
Standard API parameters: 1
Application parameters: 2

Output
Standard API parameters: 3
Application parameters: 0

Input/Output
Standard API parameters: 1

5.4.1 PL/SQL Procedure


CE_BANK_PUB.set_bank_end_date (
p_init_msg_list,
p_bank_id,
p_end_date,
p_object_version_number,
x_return_status,
x_msg_count,
x_msg_data
);

5.4.2 Parameter Descriptions

Parameter Name Type Data Type Reqd Default Validation, Comments

Allows API callers to request that the


fnd_api.g
p_init_msg_list IN VARCHAR2 No API does initialization of the message
_false
list on their behalf.
Validation: Valid bank party_id from
HZ_PARTIES
table for the Bank to be updated.
Comment: Pass the party_id from
p_bank_id IN NUMBER Yes HZ_PARTIES
record for the organization.
Error:
CE_API_REQUIRED_PARAM
CE_API_NO_BANK
p_end_date IN DATE Yes New end date value.

Pass the current


object_version_number of the record
from hz_parties
IN Validation: Mandatory attribute
p_object_version_number NUMBER Yes
OUT Validated against value in the database
for the existing party record
Comment:
Return new value after update

BANK APIs Oracle Confidential - For internal use only Page 20 of 62


Parameter Name Type Data Type Reqd Default Validation, Comments
The return status of the API, informs
the caller about the result of the
x_return_status OUT VARCHAR2 Yes
operation or operations performed by
the API
Number of messages in the FND
x_msg_count OUT NUMBER Yes
message stack
If the count for x_msg_count is one,
x_msg_data OUT VARCHAR2 Yes then the x_msg_data column holds the
encoded message

Status Output Value


The incremented object version number along with x_return_status of
Success
FND_API.G_RET_STS_SUCCESS
x_return_status of either FND_API.G_RET_STS_ERROR or
Failure
FND_API.G_RET_STS_UNEXP_ERROR

BANK APIs Oracle Confidential - For internal use only Page 21 of 62


6. BANK BRANCH APIs

6.1 CE_BANK_PUB.create_bank_branch
This API is used to create a bank branch. The create_bank_branch API calls the HZ_BANK_PUB.create_bank_branch
API to create the bank branch as an Organization in the HZ_PARTIES table. On successful creation of bank, the API
return the bank party id along with the information /error messages. The API returns a null bank branch party id if the
bank branch is not created. This API has 4 output and 35 input parameters in total. Based on the type, the following is
the breakdown of the parameters:

Input
Standard API parameters: 1
Application parameters: 9 + 25 (descriptive flexfield record parameters)
Output
Standard API parameters: 3
Application parameters: 1

6.1.1 PL/SQL Procedure

CE_BANK_PUB.create_bank_branch (
p_init_msg_list,
p_bank_id,
p_branch_name,
p_branch_number,
p_branch_type,
p_alternate_branch_name,
p_description,
p_bic,
p_eft_number,
p_rfc_identifier,
p_attribute_category,
p_attribute1,
p_attribute2,
p_attribute3,
p_attribute4,
p_attribute5,
p_attribute6,
p_attribute7,
p_attribute8,
p_attribute9,
p_attribute10,
p_attribute11,
p_attribute12,
p_attribute13,
p_attribute14,
p_attribute15,
p_attribute16,
p_attribute17,
p_attribute18,
p_attribute19,
p_attribute20,
p_attribute21,
p_attribute22,
p_attribute23,
p_attribute24,
x_branch_id,
x_return_status,
x_msg_count,
x_msg_data
);

BANK BRANCH APIs Oracle Confidential - For internal use only Page 22 of 62
6.1.2 Parameter Descriptions

Parameter Name Type Data Type Reqd Default Validation, Comments


Allows API callers to request that the API
fnd_api.g
p_init_msg_list IN VARCHAR2 No does initialization of the message list on their
_false
behalf.
The bank party id for which the bank branch
has to be created.
Validation: This is a mandatory parameter.
p_bank_id IN NUMBER Yes
Valid bank party id should be passed.
Error: CE_API_REQUIRED_PARAM
CE_API_NO_BANK
This field represents the name of the branch.
p_branch_name IN VARCHAR2 Yes Validation: This is a mandatory parameter
Error: CE_API_REQUIRED_PARAM
This is the Branch number field, country
specific validations are applied on this field.
p_branch_number IN VARCHAR2 No NULL Validations are applied based on the country
of the bank for which this bank branch is
created
This is branch type field.
Validation: Validated against
p_branch_type IN VARCHAR2 No NULL AR_LOOKUPS for lookup type
'BANK_BRANCH_TYPE'.
Error: HZ_API_INVALID_PARTY_TYPE
This field represents the alternate branch
name. Country Specific Validations are
p_alternate_branch_name IN VARCHAR2 No NULL
applicable on this field in particular for the
Country Japan
This field stores the description details of the
p_description IN VARCHAR2 No NULL
bank branch
p_bic IN VARCHAR2 No NULL This field represents the EFT Swift Code.
The number that identifier you as a user of
p_eft_number IN VARCHAR2 No NULL electronic funds transfer service to your bank
or clearing organization.
This is the RFC identifier code of the bank
branch.
Validation: Validated against
p_rfc_identifier IN VARCHAR2 No NULL
CE_LOOKUPS for lookup type
'RFC_IDENTIFIER'.
Error: HZ_API_INVALID_LOOKUP
p_attribute_category IN VARCHAR2 No NULL
p_attribute1 IN VARCHAR2 No NULL
p_attribute2 IN VARCHAR2 No NULL
p_attribute3 IN VARCHAR2 No NULL
p_attribute4 IN VARCHAR2 No NULL
p_attribute5 IN VARCHAR2 No NULL
p_attribute6 IN VARCHAR2 No NULL
p_attribute7 IN VARCHAR2 No NULL
p_attribute8 IN VARCHAR2 No NULL
p_attribute9 IN VARCHAR2 No NULL
p_attribute10 IN VARCHAR2 No NULL
p_attribute11 IN VARCHAR2 No NULL

BANK BRANCH APIs Oracle Confidential - For internal use only Page 23 of 62
Parameter Name Type Data Type Reqd Default Validation, Comments
p_attribute12 IN VARCHAR2 No NULL
p_attribute13 IN VARCHAR2 No NULL
p_attribute14 IN VARCHAR2 No NULL
p_attribute15 IN VARCHAR2 No NULL
p_attribute16 IN VARCHAR2 No NULL
p_attribute17 IN VARCHAR2 No NULL
p_attribute18 IN VARCHAR2 No NULL
p_attribute19 IN VARCHAR2 No NULL
p_attribute20 IN VARCHAR2 No NULL
p_attribute21 IN VARCHAR2 No NULL
p_attribute22 IN VARCHAR2 No NULL
p_attribute23 IN VARCHAR2 No NULL
p_attribute24 IN VARCHAR2 No NULL
The Party ID for the bank branch or the
x_branch_id OUT NUMBER bank_branch_id is returned on successful
bank branch creation
The return status of the API, informs the
x_return_status OUT VARCHAR2 caller about the result of the operation or
operations performed by the API
Number of messages in the FND message
x_msg_count OUT NUMBER
stack
If the count for x_msg_count is one, then the
x_msg_data OUT VARCHAR2 x_msg_data column holds the encoded
message

Note: The parameter values for create_bank_branch should pass the below check
• A unique combination of bank number, bank branch number, and country else the API gives the error
HZ_BANK_NONUNIQUE_NUMBER.
• A unique combination of bank name and bank branch name else the API gives the error
HZ_BANK_NONUNIQUE_NAME.

The user can crosscheck if the bank branch is successfully created in the application or not by querying the bank
branch details in ce_bank_branches_v database view.

Status Output Value


The bank branch party ID for the newly created bank branch along
Success
with x_return_status of FND_API.G_RET_STS_SUCCESS
A null value for the bank branch party ID.
Failure x_return_status of either FND_API.G_RET_STS_ERROR
FND_API.G_RET_STS_UNEXP_ERROR

BANK BRANCH APIs Oracle Confidential - For internal use only Page 24 of 62
6.1.3 UI Mappings

The below screen-shot shows the mapping of create_bank_branch API parameters with the UI fields of Create Bank
Branch: Bank Branch Information Page.

BANK BRANCH APIs Oracle Confidential - For internal use only Page 25 of 62
6.2 CE_BANK_PUB.update_bank_branch
This API is used to update a bank branch already exising in the application. The update_bank _branchAPI calls the
HZ_BANK_PUB.update_bank_branch API to update the bank details of bank in the HZ_PARTIES table. On successful
update of bank branch, the API return the information /error messages. This API has 3 output, 36 input and 4 input/output
parameters in total. Based on the type, the following is the breakdown of the parameters:
Input
Standard API parameters: 1
Application parameters: 10 + 25 (descriptive flexfield record parameters)
Output
Standard API parameters: 3
Application parameters: 0
Input/Output
Standard API parameters: 4

6.2.1 PL/SQL Procedure


CE_BANK_PUB.update_bank_branch (
p_init_msg_list,
p_branch_id,
p_branch_name,
p_branch_number,
p_branch_type,
p_alternate_branch_name,
p_description,
p_bic,
p_eft_number,
p_rfc_identifier,
p_attribute_category,
p_attribute1,
p_attribute2,
p_attribute3,
p_attribute4,
p_attribute5,
p_attribute6,
p_attribute7,
p_attribute8,
p_attribute9,
p_attribute10,
p_attribute11,
p_attribute12,
p_attribute13,
p_attribute14,
p_attribute15,
p_attribute16,
p_attribute17,
p_attribute18,
p_attribute19,
p_attribute20,
p_attribute21,
p_attribute22,
p_attribute23,
p_attribute24,
p_country_validate,
p_bch_object_version_number,
p_typ_object_version_number,
p_rfc_object_version_number,
p_eft_object_version_number,
x_return_status,
x_msg_count,
x_msg_data,
);

BANK BRANCH APIs Oracle Confidential - For internal use only Page 26 of 62
6.2.2 Parameter Descriptions

Parameter Name Type Data Type Reqd Default Validation, Comments


Allows API callers to request that the API
fnd_api.g
p_init_msg_list IN VARCHAR2 No does initialization of the message list on their
_false
behalf.
The bank branch party id for which the bank
branch has to be updated.
p_branch_id IN NUMBER Yes Validation: This is a mandatory parameter.
Valid bank party id should be passed.
Error: CE_API_REQUIRED_PARAM
This field represents the name of the branch.
Validation: This is a mandatory parameter
p_branch_name IN VARCHAR2 Yes
Cannot be updated to null.
Error: CE_API_REQUIRED_PARAM
This is the Branch number field, country
specific validations are applied on this field.
p_branch_number IN VARCHAR2 No NULL Validations are applied based on the country
of the bank for which this bank branch is
created
This is branch type field.
Validation: Validated against
p_branch_type IN VARCHAR2 No NULL AR_LOOKUPS for lookup type
'BANK_BRANCH_TYPE'.
Error: HZ_API_INVALID_PARTY_TYPE
This field represents the alternate branch
name. Country Specific Validations are
p_alternate_branch_name IN VARCHAR2 No NULL
applicable on this field in particular for the
Country Japan
This field stores the description details of the
p_description IN VARCHAR2 No NULL
bank branch
p_bic IN VARCHAR2 No NULL This field represents the EFT Swift Code.
The number that identifier you as a user of
p_eft_number IN VARCHAR2 No NULL electronic funds transfer service to your bank
or clearing organization.
This is the RFC identifier code of the bank
branch.
Validation: Validated against
p_rfc_identifier IN VARCHAR2 No NULL
CE_LOOKUPS for lookup type
'RFC_IDENTIFIER'.
Error:HZ_API_INVALID_LOOKUP
p_attribute_category IN VARCHAR2 No NULL
p_attribute1 IN VARCHAR2 No NULL
p_attribute2 IN VARCHAR2 No NULL
p_attribute3 IN VARCHAR2 No NULL
p_attribute4 IN VARCHAR2 No NULL
p_attribute5 IN VARCHAR2 No NULL
p_attribute6 IN VARCHAR2 No NULL
p_attribute7 IN VARCHAR2 No NULL
p_attribute8 IN VARCHAR2 No NULL

BANK BRANCH APIs Oracle Confidential - For internal use only Page 27 of 62
Parameter Name Type Data Type Reqd Default Validation, Comments
p_attribute9 IN VARCHAR2 No NULL
p_attribute10 IN VARCHAR2 No NULL
p_attribute11 IN VARCHAR2 No NULL
p_attribute12 IN VARCHAR2 No NULL
p_attribute13 IN VARCHAR2 No NULL
p_attribute14 IN VARCHAR2 No NULL
p_attribute15 IN VARCHAR2 No NULL
p_attribute16 IN VARCHAR2 No NULL
p_attribute17 IN VARCHAR2 No NULL
p_attribute18 IN VARCHAR2 No NULL
p_attribute19 IN VARCHAR2 No NULL
p_attribute20 IN VARCHAR2 No NULL
p_attribute21 IN VARCHAR2 No NULL
p_attribute22 IN VARCHAR2 No NULL
p_attribute23 IN VARCHAR2 No NULL
p_attribute24 IN VARCHAR2 No NULL
The country specific validation errors are
p_country_validate IN VARCHAR2 No Y
reported only if this field is set to 'Y'.
Current object version number for the bank
p_bch_object_version_numb IN branch. The value for object_version_number
NUMBER
er OUT column in the HZ_PARTIES table for the
bank branch party id
Current object version number for bank
branch type code assignment i.e. the value
p_typ_object_version_numb IN for the column object_version_number in
NUMBER
er OUT HZ_CODE_ASSIGNMENTS table for
CLASS_CATEGORY
'BANK_BRANCH_TYPE'
Current object version number for RFC code
assignment i.e. the value for the column
p_rfc_object_version_numb IN
NUMBER object_version_number in
er OUT
HZ_CODE_ASSIGNMENTS table for
CLASS_CATEGORY 'RFC_IDENTIFIER'
Current object version number for BIC(EFT)
contact point i.e. the value for the column
p_eft_object_version_numb IN
NUMBER object_version_number in
er OUT
HZ_CONTACT_POINTS table for
CONTACT_POINT_ID 'EFT'
The return status of the API, informs the
x_return_status OUT VARCHAR2 caller about the result of the operation or
operations performed by the API
Number of messages in the FND message
x_msg_count OUT NUMBER
stack
If the count for x_msg_count is one, then the
x_msg_data OUT VARCHAR2 x_msg_data column holds the encoded
message

BANK BRANCH APIs Oracle Confidential - For internal use only Page 28 of 62
Note: The parameter values for update_bank_branch should also pass the below check as in create_bank_branch. But
these check are made only when either of the branch name or branch number field is updated
• A unique combination of bank number, bank branch number, and country else the API gives the error
HZ_BANK_NONUNIQUE_NUMBER.
• A unique combination of bank name and bank branch name else the API gives the error
HZ_BANK_NONUNIQUE_NAME.

Status Output Value


The incremented object version number along with
Success
x_return_status of FND_API.G_RET_STS_SUCCESS
x_return_status of either FND_API.G_RET_STS_ERROR
Failure
FND_API.G_RET_STS_UNEXP_ERROR

6.2.3 UI Mappings

The below screen-shot shows the mapping of update_bank_branch API parameters with the UI fields of Update
Bank Branch: Bank Branch Information Page.

BANK BRANCH APIs Oracle Confidential - For internal use only Page 29 of 62
6.3 CE_BANK_PUB.check_branch_exist
This procedure is used to find if a bank branch already exists in the system or not for the passed input parameters. If the
bank is present then the Bank branch party ID is returned along with its end date. The bank branch search can be done
either using the bank branch name field or the bank branch number field. The API works as listed below

Case 1. If a value other than null is passed for p_branch_name field, API searches the bank branch based on its
name without taking into account the bank branch number p_branch_number. In this case the p_bank_number
field is not used anywhere.

Case 2. If a null value is passed for the p_branch_name field,


a. Then API checks for p_branch_number field, if the value for bank branch number field is not null then
the bank branch is searched based on the bank branch number.
b. If a null value is passed for p_branch_number field then null values are returned for the Bank branch
party ID.

This API has 2 output and 3 input parameters in total. Based on the type, the following is the breakdown of the
parameters:

Input
Standard API parameters: 0
Application parameters: 3
Output
Standard API parameters: 0
Application parameters: 2

6.3.1 PL/SQL Procedure


CE_BANK_PUB.check_branch_exist(
p_bank_id,
p_branch_name,
p_branch_number,
x_branch_id,
x_end_date
);

BANK BRANCH APIs Oracle Confidential - For internal use only Page 30 of 62
6.3.2 Parameter Descriptions

Parameter Name Type Data Type Reqd Default Validation, Comments

This is the bank party id for which the bank


p_bank_id IN VARCHAR2 Yes
branch is being searched.

This field represents the bank branch name


p_branch_name IN VARCHAR2 Yes
which has to be searched
This field represents the bank branch number
p_branch_number IN VARCHAR2 Yes
which has to be searched
Bank branch Party ID if bank branch exists,
x_branch_id OUT NUMBER Yes
null if bank does not exist.
x_end_date OUT DATE Yes End date of the bank branch.

Status Output Value


The bank branch party id and end date for the given bank branch name/ bank branch number along with
Success
x_return_status of FND_API.G_RET_STS_SUCCESS
X_return_status of either FND_API.G_RET_STS_ERROR or
Failure
FND_API.G_RET_STS_UNEXP_ERROR

BANK BRANCH APIs Oracle Confidential - For internal use only Page 31 of 62
6.4 CE_BANK_PUB.set_bank_branch_end_date
This API is used to set the end date of a bank branch already defined in the application. This API uses the
HZ_BANK_PUB.update_bank_branch public API to update the end date detail of bank branch. This API has 3 output, 3
input and 1 input/output parameters in total. Based on the type, the following is the breakdown of the parameters:

Input
Standard API parameters: 1
Application parameters: 2
Output
Standard API parameters: 3
Application parameters: 0
Input/Output
Standard API parameters: 1

6.4.1 PL/SQL Procedure


CE_BANK_PUB.set_bank_branch_end_date (
p_init_msg_list,
p_branch_id,
p_end_date,
p_object_version_number,
x_return_status,
x_msg_count,
x_msg_data
);

BANK BRANCH APIs Oracle Confidential - For internal use only Page 32 of 62
6.4.2 Parameter Descriptions

Parameter Name Type Data Type Reqd Default Validation, Comments


Allows API callers to request that the
fnd_api.g
p_init_msg_list IN VARCHAR2 No API does initialization of the message
_false
list on their behalf.
Validation: Valid bank branch
party_id from HZ_PARTIES table for
the Bank branch to be updated.
Comment: Pass the party_id from
p_branch_id IN NUMBER Yes HZ_PARTIES record for the
organization.
Error:
CE_API_REQUIRED_PARAM
CE_API_NO_BRANCH
p_end_date IN DATE Yes New end date value.
Pass the current
object_version_number of the record
from hz_parties
IN Validation: Mandatory attribute
p_object_version_number NUMBER Yes
OUT Validated against value in the database
for the existing party record
Comment:
Return new value after update
The return status of the API, informs
the caller about the result of the
x_return_status OUT VARCHAR2 Yes
operation or operations performed by
the API
Number of messages in the FND
x_msg_count OUT NUMBER Yes
message stack
If the count for x_msg_count is one,
x_msg_data OUT VARCHAR2 Yes then the x_msg_data column holds the
encoded message

Status Output Value


The incremented object version number along with x_return_status of
Success
FND_API.G_RET_STS_SUCCESS
x_return_status of either FND_API.G_RET_STS_ERROR or
Failure
FND_API.G_RET_STS_UNEXP_ERROR

BANK BRANCH APIs Oracle Confidential - For internal use only Page 33 of 62
7. BANK ACCOUNT APIs

7.1 PL/SQL Record Structure for Bank Account


TYPE BankAcct_rec_type IS RECORD (
bank_account_id NUMBER(15),
branch_id NUMBER(15),
bank_id NUMBER(15),
account_owner_party_id NUMBER(15),
account_owner_org_id NUMBER(15),
account_classification VARCHAR2(30),
bank_account_name VARCHAR2(80),
bank_account_num VARCHAR2(100),
currency VARCHAR2(15),
iban VARCHAR2(50),
check_digits VARCHAR2(30),
eft_requester_id VARCHAR2(25),
secondary_account_reference VARCHAR2(30),
multi_currency_allowed_flag VARCHAR2(1),
alternate_acct_name VARCHAR2(320),
short_account_name VARCHAR2(30),
acct_type VARCHAR2(25),
acct_suffix VARCHAR2(30),
description_code1 VARCHAR2(60),
description_code2 VARCHAR2(60),
description VARCHAR2(240),
agency_location_code VARCHAR2(30),
ap_use_allowed_flag VARCHAR2(1),
ar_use_allowed_flag VARCHAR2(1),
xtr_use_allowed_flag VARCHAR2(1),
pay_use_allowed_flag VARCHAR2(1),
payment_multi_currency_flag VARCHAR2(1),
receipt_multi_currency_flag VARCHAR2(1),
zero_amount_allowed VARCHAR2(1),
max_outlay NUMBER(15),
max_check_amount NUMBER(15),
min_check_amount NUMBER(15),
ap_amount_tolerance NUMBER(15),
ar_amount_tolerance NUMBER(15),
xtr_amount_tolerance NUMBER(15),
pay_amount_tolerance NUMBER(15),
ce_amount_tolerance NUMBER(15),
ap_percent_tolerance NUMBER(15),
ar_percent_tolerance NUMBER(15),
xtr_percent_tolerance NUMBER(15),
pay_percent_tolerance NUMBER(15),
ce_percent_tolerance NUMBER(15),
start_date DATE,
end_date DATE,
account_holder_name_alt VARCHAR2(150),
account_holder_name VARCHAR2(240),
cashflow_display_order NUMBER(15),
pooled_flag VARCHAR2(1),
min_target_balance NUMBER(15),
max_target_balance NUMBER(15),
eft_user_num VARCHAR2(30),
masked_account_num VARCHAR2(100),
masked_iban VARCHAR2(50),
interest_schedule_id NUMBER(15),
asset_code_combination_id NUMBER(15),
cash_clearing_ccid NUMBER(15),
bank_charges_ccid NUMBER(15),
bank_errors_ccid NUMBER(15),
cashpool_min_payment_amt NUMBER,

BANK ACCOUNT APIs Oracle Confidential - For internal use only Page 34 of 62
cashpool_min_receipt_amt NUMBER,
cashpool_round_factor NUMBER(15),
cashpool_round_rule VARCHAR2(4),
attribute_category VARCHAR2(150),
attribute1 VARCHAR2(150),
attribute2 VARCHAR2(150),
attribute3 VARCHAR2(150),
attribute4 VARCHAR2(150),
attribute5 VARCHAR2(150),
attribute6 VARCHAR2(150),
attribute7 VARCHAR2(150),
attribute8 VARCHAR2(150),
attribute9 VARCHAR2(150),
attribute10 VARCHAR2(150),
attribute11 VARCHAR2(150),
attribute12 VARCHAR2(150),
attribute13 VARCHAR2(150),
attribute14 VARCHAR2(150),
attribute15 VARCHAR2(150),
xtr_bank_account_reference VARCHAR2(20)
);

7.2 CE_BANK_PUB.create_bank_acct
This API is used to create a bank account for the branch party id passed as an input parameter. The API uses the
BankAcct_rec_type record to pass the input values. On successful creation of bank account, the API return the bank
account id along with the information /error messages. The API returns a null bank account id if the bank branch is not
created. This API has 4 output and 2 input parameters in total. Based on the type, the following is the breakdown of the
parameters:

Input
Standard API parameters: 1
Application parameters: 1
Output
Standard API parameters: 3
Application parameters: 1

7.2.1 PL/SQL Procedure


CE_BANK_PUB.create_bank_acct (
p_init_msg_list,
p_acct_rec,
x_acct_id ,
x_return_status ,
x_msg_count,
x_msg_data
);

BANK ACCOUNT APIs Oracle Confidential - For internal use only Page 35 of 62
7.2.2 Parameter Descriptions

Parameter Name Type Data Type Reqd Default Validation, Comments

Allows API callers to request that the


fnd_api.g
p_init_msg_list IN VARCHAR2 No API does initialization of the message
_false
list on their behalf.
Represents the bank branch party id field
for which the bank account is to be
created.
Validations: This is a mandatory
parameter. The branch id should have a
branch_id IN NUMBER Yes
valid bank mapped to it. Also the branch
id should have a branch number defined.
Error: CE_API_REQUIRED_PARAM
CE_API_NO_BANK
CE_API_NO_BRANCH
bank_id IN NUMBER Represents the Bank Party Id field.
The organization party id for the Bank
account_owner_party_id IN NUMBER Yes
Account Owner.

This represents the Bank Account


account_owner_org_id IN NUMBER Yes Owner organization id
Error: CE_API_REQUIRED_PARAM

This represents the Bank Account


Classification field. The account can
account_classification IN VARCHAR2 Yes classification can be 'INTERNAL',
'SUBSIDIARY'
Error: CE_API_REQUIRED_PARAM

This the bank account name field that is


the name with which the bank account
will be created.
Validations: This is a mandatory field.
bank_account_name IN VARCHAR2 Yes
The bank account name should be
unique within a bank branch.
Error: CE_API_REQUIRED_PARAM
CE_DUP_ACCT_NAME

This the bank account number field that


is the number with which the bank
account will be created.
bank_account_num IN VARCHAR2 Yes Validations: This is a mandatory field.
Country specific validations are
applicable on this field.
Error: CE_API_REQUIRED_PARAM

This is a curency code value as defined


in the table FND_CURRENCIES.
Validation: Validates if the
currency IN VARCHAR2
currency_code is valid in
FND_CURRENCIES
Error: CE_BA_INVALID_CURRENCY

BANK ACCOUNT APIs Oracle Confidential - For internal use only Page 36 of 62
Parameter Name Type Data Type Reqd Default Validation, Comments
This field represents the International
Bank Account Number (IBAN), which is
an international standard that uniquely
identifies a bank account number.
Validations: Length should not exceed
34 characters. First 2 characters are letter
iban IN VARCHAR2
and the next 2 characters are numbers. A
modulus algorithm is used to certify if
the entered IBAN number is correct or
not
Error: CE_INVALID_IBAN
CE_INVALID_IBAN_FORMAT
The field represents the check digit,
which is used to validate the authenticity
check_digits IN VARCHAR2
of bank account number according to
country specific bank account validation.
eft_requester_id IN VARCHAR2 EFT requester identifier
Represents the Account Reference field.
secondary_account_referenc
IN VARCHAR2 Validation: Country specific validations
e
are applicable on this field
This represents the Multiple Currencies
Allowed field. The valid values for this
field are 'Y' and 'N'.
multi_currency_allowed_fla
IN VARCHAR2 Validation: The field can be updated to
g
'Y' only if the functional currency is
equal to bank account currency
Error: CE_BANK_MULTICURRENCY
alternate_acct_name IN VARCHAR2 The alternate name for the bank account
short_account_name IN VARCHAR2 The short name for the bank account
This field represents the Bank account
type.
acct_type IN VARCHAR2
Validations: Country specific validations
are applicable on this field
This field represents the Account Suffix
which is an identifier for the bank
acct_suffix IN VARCHAR2
Validations: Country specific validations
are applicable on this field
description_code1 IN VARCHAR2 Description code 1
description_code2 IN VARCHAR2 Description code 2
Represents the description field for the
description IN VARCHAR2
Bank Account
This field represents the Agency
Location Code.
Validations: Length of this field should
agency_location_code IN VARCHAR2 not be more than 8 characters and all the
characters should be numeric.
Error: CE_ALC_VALUE_TOO_LONG
CE_ALC_NUMERIC_VALUE_ONLY
Represents the Payables Account use
ap_use_allowed_flag IN VARCHAR2
flag. Valid values are 'Y' and 'N'.
Represents the Receivables Account use
ar_use_allowed_flag IN VARCHAR2
flag. Valid values are 'Y' and 'N'.

BANK ACCOUNT APIs Oracle Confidential - For internal use only Page 37 of 62
Parameter Name Type Data Type Reqd Default Validation, Comments

Represents the Treasury Account use


xtr_use_allowed_flag IN VARCHAR2
flag. Valid values are 'Y' and 'N'.

Represents the Payroll Account use flag.


pay_use_allowed_flag IN VARCHAR2
Valid values are 'Y' and 'N'.
Represents the Multiple Currency
payment_multi_currency_fla
IN VARCHAR2 Payments field. The valid values for this
g
field are 'Y' and 'N'
Represents the Multiple Currency
receipt_multi_currency_flag IN VARCHAR2 Receipts field. The valid values for this
field are 'Y' and 'N'
Represents the zero payment allowed
zero_amount_allowed IN VARCHAR2 field. The valid values for this field are
'Y' and 'N'
Represents the maximum outlay that is
the largest currency outlay that can be
max_outlay IN NUMBER
allowed for a payment batch for this
bank account.
Represents the Maximum payment that
is the lowest payment amount that is
max_check_amount IN NUMBER
allowed in a payment batch for this bank
account
Represents the Minimum payment that is
the lowest payment amount that is
min_check_amount IN NUMBER
allowed in a payment batch for this bank
account
ap_amount_tolerance IN NUMBER
ar_amount_tolerance IN NUMBER Represents the reconciliation tolerances
as a percentage for Payments, Receipts,
xtr_amount_tolerance IN NUMBER
Treasury, Payroll, Cash Management
pay_amount_tolerance IN NUMBER Cashflow
ce_amount_tolerance IN NUMBER
ap_percent_tolerance IN NUMBER
ar_percent_tolerance IN NUMBER Represents the reconciliation tolerances
as an amount for Payments, Receipts,
xtr_percent_tolerance IN NUMBER
Treasury, Payroll, Cash Management
pay_percent_tolerance IN NUMBER Cashflow
ce_percent_tolerance IN NUMBER
Represents the start date if you want to
limit the time during which this supplier
site uses this bank account as the
start_date IN DATE
primary bank account for receiving
electronic payments in the bank account
currency.
Represents the end date if you want to
limit the time during which this supplier
site uses this bank account as the
end_date IN DATE
primary bank account for receiving
electronic payments in the bank account
currency.

Represents the alternate name for the


account_holder_name_alt IN VARCHAR2
bank account holder

BANK ACCOUNT APIs Oracle Confidential - For internal use only Page 38 of 62
Parameter Name Type Data Type Reqd Default Validation, Comments

Represents the Account Owner field


which is name of the person or
account_holder_name IN VARCHAR2
organization within your organization
who is responsible for this account

Represents the Cash Flow Display Order


cashflow_display_order IN NUMBER
field
Represents the Pooled Account field.
pooled_flag IN VARCHAR2 The valid values for this field are 'Y' and
'N'.
Represents the Minimum Target Balance
that is the target balances which
determine the minimum balance for
min_target_balance IN NUMBER
bank account for Cash Management
transactions that you include in your
cash position
Represents the Maximum Target
Balance that is the target balances help
which determine the maximum balance
max_target_balance IN NUMBER
for bank account for Cash Management
transactions that you include in your
cash position
This field represents the EFT (electronic
funds transfer) user number field.
eft_user_num IN VARCHAR2
Validations: Country specific validations
are applicable on this field
Represents the Account Number field in
masked_account_num IN VARCHAR2
Masked format
Represents the IBAN Number field in
masked_iban IN VARCHAR2
Masked format
Interest schedule identifier. Defined in
interest_schedule_id IN NUMBER ce_interest_schedules.interest_schedule_
id
Accounting flexfield identifier for the
asset_code_combination_id IN NUMBER
cash account of the bank account
Accounting flexfield identifier for the
cash_clearing_ccid IN NUMBER
cash clearing account
Accounting flexfield identifier for the
bank_charges_ccid IN NUMBER
bank charges account
Accounting flexfield identifier for the
bank_errors_ccid IN NUMBER
bank errors account
Minimum payment amount for bank
cashpool_min_payment_amt IN NUMBER
account if included in a cash pool
Minimum receipt amount for bank
cashpool_min_receipt_amt IN NUMBER
account if included in a cash pool
Rounding factor for the transfer amount
cashpool_round_factor IN NUMBER during generation of a cash leveling
proposal
Rounding rule for the transfer amount
cashpool_round_rule IN VARCHAR2 during generation of a cash leveling
proposal
attribute_category IN VARCHAR2
attribute1 IN VARCHAR2
attribute2 IN VARCHAR2

BANK ACCOUNT APIs Oracle Confidential - For internal use only Page 39 of 62
Parameter Name Type Data Type Reqd Default Validation, Comments
attribute3 IN VARCHAR2
attribute4 IN VARCHAR2
attribute5 IN VARCHAR2
attribute6 IN VARCHAR2
attribute7 IN VARCHAR2
attribute8 IN VARCHAR2
attribute9 IN VARCHAR2
attribute10 IN VARCHAR2
attribute11 IN VARCHAR2
attribute12 IN VARCHAR2
attribute13 IN VARCHAR2
attribute14 IN VARCHAR2
attribute15 IN VARCHAR2
Represents the bank account number
xtr_bank_account_reference IN VARCHAR2 reference for a branch of the Treasury
bank.
The bank account id for the bank
x_acct_id OUT NUMBER account is returned on successful bank
account creation
The return status of the API, informs the
x_return_status OUT VARCHAR2 caller about the result of the operation or
operations performed by the API
Number of messages in the FND
x_msg_count OUT NUMBER
message stack
If the count for x_msg_count is one, then
x_msg_data OUT VARCHAR2 the x_msg_data column holds the
encoded message

Note: The fields asset_code_combination_id, cash_clearing_ccid, bank_charges_ccid, bank_errors_ccid should be the


value of column code_combination_id in the gl_code_combinations table for cash account, cash clearing account, bank
charges account, bank errors account number respectively.

Status Output Value


The bank account ID for the newly created bank account along with x_return_status of
Success
FND_API.G_RET_STS_SUCCESS
A null value for the bank account ID.
Failure x_return_status of either FND_API.G_RET_STS_ERROR
FND_API.G_RET_STS_UNEXP_ERROR

BANK ACCOUNT APIs Oracle Confidential - For internal use only Page 40 of 62
7.2.3 UI Mappings

The below screen-shot shows the mapping of create_bank_acct API parameters with the UI fields of Create Bank
Account Pages.

BANK ACCOUNT APIs Oracle Confidential - For internal use only Page 41 of 62
BANK ACCOUNT APIs Oracle Confidential - For internal use only Page 42 of 62
7.3 CE_BANK_PUB.update_bank_acct
This API is used to update a bank account details for bank account id passed as an input parameter. The API uses the
BankAcct_rec_type record to pass the input values. On successful update of bank account, the API return the information
/error messages. This API has 3 output, 2 input and 1 input/output parameters in total. Based on the type, the following is
the breakdown of the parameters:

Input
Standard API parameters: 1
Application parameters: 1
Output
Standard API parameters: 3
Application parameters: 0
Input/Output
Standard API parameters: 1

7.3.1 PL/SQL Procedure

CE_BANK_PUB.update_bank_acct (
p_init_msg_list,
p_acct_rec,
p_object_version_number,
x_return_status,
x_msg_count,
x_msg_data
);

BANK ACCOUNT APIs Oracle Confidential - For internal use only Page 43 of 62
7.3.2 Parameter Descriptions

Parameter Name Type Data Type Reqd Default Validation, Comments


Allows API callers to request that the
fnd_api.g
p_init_msg_list IN VARCHAR2 No API does initialization of the message
_false
list on their behalf.
The bank Account id for the bank
account that is to be updated
Validation: This is a mandatory field and
correct bank account id for the bank
bank_account_id IN NUMBER Yes
account to be updated should be given
for this field
Error: CE_API_REQUIRED_PARAM
CE_API_NO_ACCOUNT

Represents the bank branch party id field


branch_id IN NUMBER for the bank account. This field cannot
be updated

Represents the Bank Party Id field. This


bank_id IN NUMBER
field is also protected against update
The organization party id for the Bank
account_owner_party_id IN NUMBER Account Owner. This field is protected
against update
This represents the Bank Account
account_owner_org_id IN NUMBER Owner organization id. This field is
protected against update
This represents the Bank Account
Classification field. The account can
classification can be 'INTERNAL',
'SUBSIDIARY'. This field is protected
account_classification IN VARCHAR2 Yes against update, but a value has to be
passed for this field failing which an
error is thrown
ERROR:
CE_API_REQUIRED_PARAM

This the bank account name field that is


the name with which the bank account
will be created.
Validations: This is a mandatory field.
bank_account_name IN VARCHAR2 Yes
The bank account name should be
unique within a bank branch.
Error: CE_API_REQUIRED_PARAM
CE_DUP_ACCT_NAME

BANK ACCOUNT APIs Oracle Confidential - For internal use only Page 44 of 62
Parameter Name Type Data Type Reqd Default Validation, Comments

This is the bank account number field


that is the number with which the bank
account will be created.
bank_account_num IN VARCHAR2 Yes Validations: This is a mandatory field.
Country specific validations are
applicable on this field.
Error: CE_API_REQUIRED_PARAM

This is a curency code value as defined


currency IN VARCHAR2 in the table FND_CURRENCIES. This
field is protected against update
This field represents the International
Bank Account Number (IBAN), which is
an international standard that uniquely
identifies a bank account number.
Validations: Length should not exceed
34 characters. First 2 characters are letter
iban IN VARCHAR2
and the next 2 characters are numbers. A
modulus algorithm is used to certify if
the entered IBAN number is correct or
not
Error: CE_INVALID_IBAN
CE_INVALID_IBAN_FORMAT

The field represents the check digit,


which is used to validate the authenticity
check_digits IN VARCHAR2
of bank account number according to
country specific bank account validation.

eft_requester_id IN VARCHAR2 EFT requester identifier

Represents the Account Reference field.


secondary_account_referenc
IN VARCHAR2 Validation: Country specific validations
e
are applicable on this field

This represents the Multiple Currencies


Allowed field. The valid values for this
field are 'Y' and 'N'.
multi_currency_allowed_fla
IN VARCHAR2 Validation: The field can be updated to
g
'Y' only if the functional currency is
equal to bank account currency
Error: CE_BANK_MULTICURRENCY

alternate_acct_name IN VARCHAR2 The alternate name for the bank account

short_account_name IN VARCHAR2 The short name for the bank account

This field represents the Bank account


type.
acct_type IN VARCHAR2
Validations: Country specific validations
are applicable on this field

BANK ACCOUNT APIs Oracle Confidential - For internal use only Page 45 of 62
Parameter Name Type Data Type Reqd Default Validation, Comments

This field represents the Account Suffix


which is an identifier for the bank
acct_suffix IN VARCHAR2
Validations: Country specific validations
are applicable on this field

description_code1 IN VARCHAR2 Description code 1


description_code2 IN VARCHAR2 Description code 2

Represents the description field for the


description IN VARCHAR2
Bank Account

This field represents the Agency


Location Code.
Validations: Length of this field should
agency_location_code IN VARCHAR2 not be more than 8 characters and all the
characters should be numeric.
Error: CE_ALC_VALUE_TOO_LONG
CE_ALC_NUMERIC_VALUE_ONLY
Represents the Payables Account use
flag. Valid values are 'Y' and 'N'. The
ap_use_allowed_flag IN VARCHAR2
field can be updated to value 'Y' from 'N'
but the reverse is not possible
Represents the Receivables Account use
flag. Valid values are 'Y' and 'N'. The
ar_use_allowed_flag IN VARCHAR2
field can be updated to value 'Y' from 'N'
but the reverse is not possible
Represents the Treasury Account use
flag. Valid values are 'Y' and 'N'. The
xtr_use_allowed_flag IN VARCHAR2
field can be updated to value 'Y' from 'N'
but the reverse is not possible
Represents the Payroll Account use flag.
Valid values are 'Y' and 'N'. The field
pay_use_allowed_flag IN VARCHAR2
can be updated to value 'Y' from 'N' but
the reverse is not possible

Represents the Multiple Currency


payment_multi_currency_fla
IN VARCHAR2 Payments field. The valid values for this
g
field are 'Y' and 'N'

Represents the Multiple Currency


receipt_multi_currency_flag IN VARCHAR2 Receipts field. The valid values for this
field are 'Y' and 'N'

Represents the zero payment allowed


zero_amount_allowed IN VARCHAR2 field. The valid values for this field are
'Y' and 'N'

Represents the maximum outlay that is


the largest currency outlay that can be
max_outlay IN NUMBER
allowed for a payment batch for this
bank account.

BANK ACCOUNT APIs Oracle Confidential - For internal use only Page 46 of 62
Parameter Name Type Data Type Reqd Default Validation, Comments
Represents the Maximum payment that
is the lowest payment amount that is
max_check_amount IN NUMBER
allowed in a payment batch for this bank
account
Represents the Minimum payment that is
the lowest payment amount that is
min_check_amount IN NUMBER
allowed in a payment batch for this bank
account
ap_amount_tolerance IN NUMBER Represents the reconciliation tolerances
ar_amount_tolerance IN NUMBER as a percentage for Payments, Receipts,
xtr_amount_tolerance IN NUMBER Treasury, Payroll, Cash Management
pay_amount_tolerance IN NUMBER Cashflow. Cannot be updated to a null
ce_amount_tolerance IN NUMBER value
ap_percent_tolerance IN NUMBER Represents the reconciliation tolerances
ar_percent_tolerance IN NUMBER as an amount for Payments, Receipts,
xtr_percent_tolerance IN NUMBER Treasury, Payroll, Cash Management
pay_percent_tolerance IN NUMBER Cashflow. Cannot be updated to a null
ce_percent_tolerance IN NUMBER value.
Represents the start date if you want to
limit the time during which this supplier
site uses this bank account as the
start_date IN DATE
primary bank account for receiving
electronic payments in the bank account
currency.
Represents the end date if you want to
limit the time during which this supplier
site uses this bank account as the
end_date IN DATE
primary bank account for receiving
electronic payments in the bank account
currency.
Represents the alternate name for the
account_holder_name_alt IN VARCHAR2
bank account holder
Represents the Account Owner field
which is name of the person or
account_holder_name IN VARCHAR2
organization within your organization
who is responsible for this account
Represents the Cash Flow Display Order
cashflow_display_order IN NUMBER
field

Represents the Pooled Account field.


pooled_flag IN VARCHAR2 The valid values for this field are 'Y' and
'N'. Cannot be updated to a null value

Represents the Minimum Target Balance


that is the target balances which
determine the minimum balance for
min_target_balance IN NUMBER
bank account for Cash Management
transactions that you include in your
cash position

BANK ACCOUNT APIs Oracle Confidential - For internal use only Page 47 of 62
Parameter Name Type Data Type Reqd Default Validation, Comments
Represents the Maximum Target
Balance that is the target balances help
which determine the maximum balance
max_target_balance IN NUMBER
for bank account for Cash Management
transactions that you include in your
cash position
This field represents the EFT (electronic
funds transfer) user number field.
eft_user_num IN VARCHAR2
Validations: Country specific validations
are applicable on this field
Represents the Account Number field in
masked_account_num IN VARCHAR2
Masked format

Represents the IBAN Number field in


masked_iban IN VARCHAR2
Masked format
Interest schedule identifier. Defined in
interest_schedule_id IN NUMBER ce_interest_schedules.interest_schedule_
id
Accounting flexfield identifier for the
asset_code_combination_id IN NUMBER cash account of the bank account.
Cannot be updated to a null value.
Accounting flexfield identifier for the
cash_clearing_ccid IN NUMBER
cash clearing account
Accounting flexfield identifier for the
bank_charges_ccid IN NUMBER
bank charges account
Accounting flexfield identifier for the
bank_errors_ccid IN NUMBER
bank errors account
Minimum payment amount for bank
cashpool_min_payment_amt IN NUMBER
account if included in a cash pool
Minimum receipt amount for bank
cashpool_min_receipt_amt IN NUMBER
account if included in a cash pool
Rounding factor for the transfer amount
cashpool_round_factor IN NUMBER during generation of a cash leveling
proposal
Rounding rule for the transfer amount
cashpool_round_rule IN VARCHAR2 during generation of a cash leveling
proposal
attribute_category IN VARCHAR2
attribute1 IN VARCHAR2
attribute2 IN VARCHAR2
attribute3 IN VARCHAR2
attribute4 IN VARCHAR2
attribute5 IN VARCHAR2
attribute6 IN VARCHAR2
attribute7 IN VARCHAR2
attribute8 IN VARCHAR2
attribute9 IN VARCHAR2
attribute10 IN VARCHAR2
attribute11 IN VARCHAR2
attribute12 IN VARCHAR2
attribute13 IN VARCHAR2
attribute14 IN VARCHAR2
attribute15 IN VARCHAR2

BANK ACCOUNT APIs Oracle Confidential - For internal use only Page 48 of 62
Parameter Name Type Data Type Reqd Default Validation, Comments
Represents the bank account number
xtr_bank_account_reference IN VARCHAR2 reference for a branch of the Treasury
bank.
Current object version number for the
bank account. This is a mandatory
IN
p_object_version_number NUMBER Yes parameter.
OUT
Error: CE_API_REQUIRED_PARAM
CE_API_RECORD_CHANGED
The return status of the API, informs the
x_return_status OUT VARCHAR2 caller about the result of the operation or
operations performed by the API
Number of messages in the FND
x_msg_count OUT NUMBER
message stack
If the count for x_msg_count is one, then
x_msg_data OUT VARCHAR2 the x_msg_data column holds the
encoded message

Note: The fields asset_code_combination_id, cash_clearing_ccid, bank_charges_ccid, bank_errors_ccid should be the


value of column code_combination_id in the gl_code_combinations table for cash account, cash clearing account, bank
charges account, bank errors account number.

Status Output Value


The incremented object version number along with x_return_status of
Success
FND_API.G_RET_STS_SUCCESS
x_return_status of either FND_API.G_RET_STS_ERROR
Failure
FND_API.G_RET_STS_UNEXP_ERROR

7.3.3 UI Mappings

Refer the UI Mappings section of create_bank_acct API. The parameter mapping is same as that except that some of the
fields are locked against update as mentioned in the parameter description section 7.3.2.

BANK ACCOUNT APIs Oracle Confidential - For internal use only Page 49 of 62
8. BANK ACCOUNT USE APIs

8.1 PL/SQL Record Structure for Bank Account Use


TYPE BankAcct_use_rec_type IS RECORD (
bank_acct_use_id NUMBER(15),
bank_account_id NUMBER(15),
org_type VARCHAR2(2),
primary_flag VARCHAR2(1),
org_id NUMBER(15),
org_party_id NUMBER(15),
ap_use_enable_flag VARCHAR2(1),
ar_use_enable_flag VARCHAR2(1),
xtr_use_enable_flag VARCHAR2(1),
pay_use_enable_flag VARCHAR2(1),
edisc_receivables_trx_id NUMBER(15),
unedisc_receivables_trx_id NUMBER(15),
end_date DATE,
br_std_receivables_trx_id NUMBER(15),
legal_entity_id NUMBER(15),
investment_limit_code VARCHAR2(7),
funding_limit_code VARCHAR2(7),
ap_default_settlement_flag VARCHAR2(1),
xtr_default_settlement_flag VARCHAR2(1),
payroll_bank_account_id NUMBER(15),
pricing_model VARCHAR2(30),
authorized_flag VARCHAR2(1),
eft_script_name VARCHAR2(50),
default_account_flag VARCHAR2(1),
portfolio_code VARCHAR2(7),
attribute_category VARCHAR2(150),
attribute1 VARCHAR2(150),
attribute2 VARCHAR2(150),
attribute3 VARCHAR2(150),
attribute4 VARCHAR2(150),
attribute5 VARCHAR2(150),
attribute6 VARCHAR2(150),
attribute7 VARCHAR2(150),
attribute8 VARCHAR2(150),
attribute9 VARCHAR2(150),
attribute10 VARCHAR2(150),
attribute11 VARCHAR2(150),
attribute12 VARCHAR2(150),
attribute13 VARCHAR2(150),
attribute14 VARCHAR2(150),
attribute15 VARCHAR2(150),
asset_code_combination_id NUMBER(15),
ap_asset_ccid NUMBER(15),
ar_asset_ccid NUMBER(15),
cash_clearing_ccid NUMBER(15),
bank_charges_ccid NUMBER(15),
bank_errors_ccid NUMBER(15),
gain_code_combination_id NUMBER(15),
loss_code_combination_id NUMBER(15),
on_account_ccid NUMBER(15),
unapplied_ccid NUMBER(15),
unidentified_ccid NUMBER(15),
factor_ccid NUMBER(15),
receipt_clearing_ccid NUMBER(15),
remittance_ccid NUMBER(15),
ar_short_term_deposit_ccid NUMBER(15),
br_short_term_deposit_ccid NUMBER(15),
future_dated_payment_ccid NUMBER(15),

BANK ACCOUNT USE APIs Oracle Confidential - For internal use only Page 50 of 62
br_remittance_ccid NUMBER(15),
br_factor_ccid NUMBER(15),
bank_interest_expense_ccid NUMBER(15),
bank_interest_income_ccid NUMBER(15),
xtr_asset_ccid NUMBER(15),
ar_bank_charges_ccid NUMBER(15)
);

8.2 CE_BANK_PUB. create_bank_acct_use


This API is used to create bank account use for a bank account id, passed as an input parameter. The API uses the
BankAcct_use_rec_type record to pass the input values. On successful creation of bank account use, the API return the
bank account use id along with the information /error messages. The API returns a null bank account use id if the bank
account use id is not created. This API has 4 output and 2 input parameters in total. Based on the type, the following is
the breakdown of the parameters:

Input
Standard API parameters: 1
Application parameters: 1
Output
Standard API parameters: 3
Application parameters: 1

8.2.1 PL/SQL Procedure


CE_BANK_PUB.create_bank_acct_use (
p_init_msg_list,
p_acct_use_rec,
x_acct_use_id,
x_return_status,
x_msg_count,
x_msg_data
);

8.2.2 Parameter Descriptions

Parameter Name Type Data Type Reqd Default Validation, Comments

Allows API callers to request that the


fnd_api.g
p_init_msg_list IN VARCHAR2 No API does initialization of the message
_false
list on their behalf.

The bank account id for which the bank


account use to be created
Validations: This is a mandatory
bank_account_id IN NUMBER Yes parameter and valid value of bank
account id should be passed.
Error: CE_API_REQUIRED_PARAM
CE_BANK_ACCOUNT_ID_INVALID
The field represents the Organization
Type. The valid values for this are 'LE',
'OU', 'BG' and 'BGOU'.
org_type IN VARCHAR2 Yes
Validations: This is a mandatory
parameter
Error: CE_API_REQUIRED_PARAM

BANK ACCOUNT USE APIs Oracle Confidential - For internal use only Page 51 of 62
Parameter Name Type Data Type Reqd Default Validation, Comments
Flag to identify if the bank account use
primary_flag IN VARCHAR2
is primary. Valid values are 'Y' and 'N'.
This field represents the Organization Id,
if the organization type is not equal to
'LE', then this id is considered for all
organization related validations.
org_id IN NUMBER Yes Validations: The combination of org_id
and bank_account_id should be unique if
the org_type is not equal to 'LE'.
Error: CE_API_REQUIRED_PARAM
CE_DUP_ACCT_ORG_ACCESS

The field represents the Organization


org_party_id IN NUMBER
Party id for the organization id field

These fields represent the account use


ap_use_enable_flag IN VARCHAR2 flag for payments, receipts, treasury and
payroll respectively. The valid values for
these fields are 'Y' and 'N'.
Validation: At least one of these 4
parameters should be set to 'Y'.
Treasury account use can be set to 'Y'
only when the organization is of type
ar_use_enable_flag IN VARCHAR2
legal entity i.e 'LE'.
Payroll account use can be set to 'Y' only
when the organization is of type business
group or both business group and
operating unit i.e. 'BG' or 'BGOU'.
Payables and/or receivables account uses
xtr_use_enable_flag IN VARCHAR2 can be set to 'Y' only when the
organization is of type operating unit or
both business group and operating unit
i.e. 'OU' or 'BGOU'

Error: CE_NO_ACCOUNT_USE
CE_LE_ACCESS_ORG
pay_use_enable_flag IN VARCHAR2 CE_BG_ACCESS_ORG
CE_OU_ACCESS_ORG
CE_BGOU_ACCESS_ORG

The field represents the Transaction id of


Earned discounts activity. That is listed
edisc_receivables_trx_id IN NUMBER in in the ar_receivables_trx table for a
valid transaction of type earned
Discounts

The field represents the Transaction id of


Unearned discounts activity. That is
unedisc_receivables_trx_id IN NUMBER listed in the ar_receivables_trx table for
a valid transaction of type Unearned
Discounts
end_date IN DATE End Date

BANK ACCOUNT USE APIs Oracle Confidential - For internal use only Page 52 of 62
Parameter Name Type Data Type Reqd Default Validation, Comments

Receivables activity identifier used for


br_std_receivables_trx_id IN NUMBER short term debt definition for transaction
type of Bills Receivable Remittance.

This field represents the Organization Id,


if the organization type is equal to 'LE',
then this id is considered for all
organization related validations.
Validations: The combination of
legal_entity_id IN NUMBER Yes
legal_enity_id and bank_account_id
should be unique if the org_type is equal
to 'LE'
Error: CE_API_REQUIRED_PARAM
CE_DUP_ACCT_ORG_ACCESS
Investment Limit for the bank account in
investment_limit_code IN VARCHAR2
Treasury
Funding Limit for the bank account in
funding_limit_code IN VARCHAR2
Treasury
Represents the payables default
Settlement Account selection field. The
valid values are 'Y' and N'.
Validations: Only one account per
ap_default_settlement_flag IN VARCHAR2 currency and account use AP can be
flagged 'Y' as the default settlement
account for each LE or OU.
Error:
CE_AP_SETTLEMENT_EXIST_ORG
Represents the treasury default
Settlement Account selection field. The
valid values are 'Y' and N'.
Validations: Only one account per
currency and account use XTR can be
xtr_default_settlement_flag IN VARCHAR2
flagged 'Y' as the default settlement
account for each LE or OU.
Error:
CE_XTR_SETTLEMENT_EXIST_OR
G
payroll_bank_account_id IN NUMBER Payroll bank account identifier
pricing_model IN VARCHAR2 Pricing Model used in Treasury

Flag to indicate if account is authorized


for use in Treasury. Valid values for this
authorized_flag IN VARCHAR2
field are 'Y' and 'N'. Null value is not
allowed for this field

Settlement script to be issued for the


eft_script_name IN VARCHAR2
bank account in treasury
Default Account per currency per LE in
Treasury. Valid values for this field are
default_account_flag IN VARCHAR2
'Y' and 'N'. Null value is not allowed for
this field.
Portfolio Code associated to the bank
portfolio_code IN VARCHAR2
account in Treasury
attribute_category IN VARCHAR2
attribute1 IN VARCHAR2

BANK ACCOUNT USE APIs Oracle Confidential - For internal use only Page 53 of 62
Parameter Name Type Data Type Reqd Default Validation, Comments
attribute2 IN VARCHAR2
attribute3 IN VARCHAR2
attribute4 IN VARCHAR2
attribute5 IN VARCHAR2
attribute6 IN VARCHAR2
attribute7 IN VARCHAR2
attribute8 IN VARCHAR2
attribute9 IN VARCHAR2
attribute10 IN VARCHAR2
attribute11 IN VARCHAR2
attribute12 IN VARCHAR2
attribute13 IN VARCHAR2
attribute14 IN VARCHAR2
attribute15 IN VARCHAR2
Accounting flexfield identifier for the
cash account of the bank account.
Validation: The field is madatory if the
asset_code_combination_id IN NUMBER
account use is Payables or Receivables
Error:
CE_API_CASH_CCID_REQUIRED
Accounting flexfield identifier for the
ap_asset_ccid IN NUMBER
AP cash account
Accounting flexfield identifier for the
ar_asset_ccid IN NUMBER
AR cash account
Accounting flexfield identifier for the
cash_clearing_ccid IN NUMBER
cash clearing account
Accounting flexfield identifier for the
bank_charges_ccid IN NUMBER
bank charges account
Accounting flexfield identifier for the
bank_errors_ccid IN NUMBER
bank errors account
Accounting flexfield identifier for the
gain_code_combination_id IN NUMBER account that posts the realized exchange
rate gains
Accounting flexfield identifier for the
loss_code_combination_id IN NUMBER account that posts the realized exchange
rate losses
Accounting flexfield identifier for the on
on_account_ccid IN NUMBER
account account
Accounting flexfield identifier for the
unapplied_ccid IN NUMBER
unapplied account
Accounting flexfield identifier for the
unidentified_ccid IN NUMBER
unidentified account
Accounting flexfield identifier for the
factor_ccid IN NUMBER
factor account
Accounting flexfield identifier for the
receipt_clearing_ccid IN NUMBER
receipt confirmation account
Accounting flexfield identifier for the
remittance_ccid IN NUMBER
remittance account
Accounting flexfield identifier for the
ar_short_term_deposit_ccid IN NUMBER
AR short term deposit account
Accounting flexfield identifier for the
br_short_term_deposit_ccid IN NUMBER
BR short term deposit account

BANK ACCOUNT USE APIs Oracle Confidential - For internal use only Page 54 of 62
Parameter Name Type Data Type Reqd Default Validation, Comments
Accounting flexfield identifier for the
future_dated_payment_ccid IN NUMBER
future dated payment account
Accounting Flexfield identifier for the
br_remittance_ccid IN NUMBER
Bills Receivable Remittance Account
Accounting Flexfield identifier for the
br_factor_ccid IN NUMBER
Bills Receivable Factoring Account
Accounting flexfield identifier for the
bank_interest_expense_ccid IN NUMBER
bank interest expense account
Accounting flexfield identifier for the
bank_interest_income_ccid IN NUMBER
bank interest income account
Accounting flexfield identifier for the
xtr_asset_ccid IN NUMBER
Treasury cash account
Accounting Flexfield identifier for the
ar_bank_charges_ccid IN NUMBER
Receivables Bank Charges Account
The bank account use id for the bank
x_acct_use_id OUT NUMBER account is returned on successful bank
account use creation
The return status of the API, informs the
x_return_status OUT VARCHAR2 caller about the result of the operation or
operations performed by the API
Number of messages in the FND
x_msg_count OUT NUMBER
message stack
If the count for x_msg_count is one, then
x_msg_data OUT VARCHAR2 the x_msg_data column holds the
encoded message

Status Output Value


The bank account use ID for the newly created bank account use
Success
Along with x_return_status of FND_API.G_RET_STS_SUCCESS
A null value for the bank account use ID.
Failure x_return_status of either FND_API.G_RET_STS_ERROR
FND_API.G_RET_STS_UNEXP_ERROR

BANK ACCOUNT USE APIs Oracle Confidential - For internal use only Page 55 of 62
8.2.3 UI Mappings

The below screen-shot shows the mapping of create_bank_acct_use API parameters with the UI fields of Create Bank
Account Pages

The screen-shot below gives the mapping of the payables account access option mapping to the API parameters.

BANK ACCOUNT USE APIs Oracle Confidential - For internal use only Page 56 of 62
8.3 CE_BANK_PUB.update_bank_acct_use
This API is used to update a bank account use detail for a bank account use id passed as an input parameter. The API uses the
BankAcct_use_rec_type record to pass the input values. On successful update of bank account use, the API return the
information /error messages. This API has 3 output, 2 input and 2 input/output parameters in total. Based on the type, the
following is the breakdown of the parameters:

Input
Standard API parameters: 1
Application parameters: 1
Output
Standard API parameters: 3
Application parameters: 0
Input/Output
Standard API parameters: 2

8.3.1 PL/SQL Procedure

CE_BANK_PUB. update_bank_acct_use (
p_init_msg_list,
p_acct_use_rec,
p_use_ovn,
p_ccid_ovn,
x_return_status,
x_msg_count,
x_msg_data
);

BANK ACCOUNT USE APIs Oracle Confidential - For internal use only Page 57 of 62
8.3.2 Parameter Descriptions

Parameter Name Type Data Type Reqd Default Validation, Comments


Allows API callers to request that the
fnd_api.g
p_init_msg_list IN VARCHAR2 No API does initialization of the message
_false
list on their behalf.
Represents the bank account use
identifier that is to be updated.
bank_acct_use_id IN NUMBER Yes Validations: This is a mandatory field
Error: CE_API_REQUIRED_PARAM
CE_API_NO_ACCOUNT_USE
The bank account id for which the bank
account use to be created
Validations: This is a mandatory
parameter and valid value of bank
bank_account_id IN NUMBER
account id should be passed.
Error: CE_API_REQUIRED_PARAM

CE_BANK_ACCOUNT_ID_INVALID
The field represents the Organization
Type. The valida values for this are 'LE',
org_type IN VARCHAR2
'OU', 'BG' and 'BGOU'. This field is
locked against update
Flag to identify if the bank account use
primary_flag IN VARCHAR2
is primary. Valid values are 'Y' and 'N'.
This field represents the Organization Id,
if the organization type is not equal to
org_id IN NUMBER 'LE', then this id is considered for all
organization related validations. This
field is locked against update
The field represents the Organization
org_party_id IN NUMBER Party id for the organization id field.This
field is locked against update
ap_use_enable_flag IN VARCHAR2 These fields represent the account use
ar_use_enable_flag IN VARCHAR2 flag for payments, receipts, treasury and
xtr_use_enable_flag IN VARCHAR2 payroll respectively. The valid values for
these fields are 'Y' and 'N'.
Validation: At least one of these 4
parameters should be set to 'Y'.
Treasury account use can be set to 'Y'
only when the organization is of type
legal entity i.e 'LE'.
Payroll account use can be set to 'Y' only
when the organization is of type business
group or both business group and
operating unit i.e. 'BG' or 'BGOU'.
pay_use_enable_flag IN VARCHAR2 Payables and/or receivables account uses
can be set to 'Y' only when the
organization is of type operating unit or
both business group and operating unit
i.e. 'OU' or 'BGOU'
Error: CE_NO_ACCOUNT_USE
CE_LE_ACCESS_ORG
CE_BG_ACCESS_ORG
CE_OU_ACCESS_ORG
CE_BGOU_ACCESS_ORG

BANK ACCOUNT USE APIs Oracle Confidential - For internal use only Page 58 of 62
Parameter Name Type Data Type Reqd Default Validation, Comments
The field represents the Trasaction id of
Earned discounts activity. That is listed
edisc_receivables_trx_id IN NUMBER in in the ar_receivables_trx table for a
valid transaction of type earned
Discounts
The field represents the Trasaction id of
Unearned discounts activity. That is
unedisc_receivables_trx_id IN NUMBER listed in the ar_receivables_trx table for
a valid transaction of type Unearned
Discounts
end_date IN DATE End Date
Receivables activity identifier used for
br_std_receivables_trx_id IN NUMBER short term debt definition for transaction
type of Bills Receivable Remittance.
This field represents the Organization Id,
if the organization type is equal to 'LE',
legal_entity_id IN NUMBER then this id is considered for all
organization related validations. This
field is locked against update
Investment Limit for the bank account in
investment_limit_code IN VARCHAR2
Treasury
Funding Limit for the bank account in
funding_limit_code IN VARCHAR2
Treasury
Represents the payables default
Settlement Account selection field. The
valid values are 'Y' and N'.
Validations: Only one account per
ap_default_settlement_flag IN VARCHAR2 currency and account use AP can be
flagged 'Y' as the default settlement
account for each LE or OU.
Error:
CE_AP_SETTLEMENT_EXIST_ORG
Represents the treasury default
Settlement Account selection field. The
valid values are 'Y' and N'.
Validations: Only one account per
currency and account use XTR can be
xtr_default_settlement_flag IN VARCHAR2
flagged 'Y' as the default settlement
account for each LE or OU.
Error:
CE_XTR_SETTLEMENT_EXIST_OR
G
payroll_bank_account_id IN NUMBER Payroll bank account identifier
pricing_model IN VARCHAR2 Pricing Model used in Treasury
Flag to indicate if account is authorized
for use in Treasury. Valid values for this
authorized_flag IN VARCHAR2
field are 'Y' and 'N'. Null value is not
allowed for this field
Settlement script to be issued for the
eft_script_name IN VARCHAR2
bank account in treasury
Default Account per currency per LE in
Treasury. Valid values for this field are
default_account_flag IN VARCHAR2
'Y' and 'N'. Null value is not allowed for
this field
Portfolio Code associated to the bank
portfolio_code IN VARCHAR2
account in Treasury
attribute_category IN VARCHAR2
attribute1 IN VARCHAR2

BANK ACCOUNT USE APIs Oracle Confidential - For internal use only Page 59 of 62
Parameter Name Type Data Type Reqd Default Validation, Comments
attribute2 IN VARCHAR2
attribute3 IN VARCHAR2
attribute4 IN VARCHAR2
attribute5 IN VARCHAR2
attribute6 IN VARCHAR2
attribute7 IN VARCHAR2
attribute8 IN VARCHAR2
attribute9 IN VARCHAR2
attribute10 IN VARCHAR2
attribute11 IN VARCHAR2
attribute12 IN VARCHAR2
attribute13 IN VARCHAR2
attribute14 IN VARCHAR2
attribute15 IN VARCHAR2
Accounting flexfield identifier for the
cash account of the bank account.
Validation: The field is madatory if the
asset_code_combination_id IN NUMBER
account use is Payables or Receivables
Error:
CE_API_CASH_CCID_REQUIRED
Accounting flexfield identifier for the
ap_asset_ccid IN NUMBER
AP cash account
Accounting flexfield identifier for the
ar_asset_ccid IN NUMBER
AR cash account
Accounting flexfield identifier for the
cash_clearing_ccid IN NUMBER
cash clearing account
Accounting flexfield identifier for the
bank_charges_ccid IN NUMBER
bank charges account
Accounting flexfield identifier for the
bank_errors_ccid IN NUMBER
bank errors account
Accounting flexfield identifier for the
gain_code_combination_id IN NUMBER account that posts the realized exchange
rate gains
Accounting flexfield identifier for the
loss_code_combination_id IN NUMBER account that posts the realized exchange
rate losses
Accounting flexfield identifier for the on
on_account_ccid IN NUMBER
account
Accounting flexfield identifier for the
unapplied_ccid IN NUMBER
unapplied account
Accounting flexfield identifier for the
unidentified_ccid IN NUMBER
unidentified account
Accounting flexfield identifier for the
factor_ccid IN NUMBER
factor account
Accounting flexfield identifier for the
receipt_clearing_ccid IN NUMBER
receipt confirmation account
Accounting flexfield identifier for the
remittance_ccid IN NUMBER
remittance account
Accounting flexfield identifier for the
ar_short_term_deposit_ccid IN NUMBER
AR short term deposit account
Accounting flexfield identifier for the
br_short_term_deposit_ccid IN NUMBER
BR short term deposit account
Accounting flexfield identifier for the
future_dated_payment_ccid IN NUMBER
future dated payment account
Accounting Flexfield identifier for the
br_remittance_ccid IN NUMBER
Bills Receivable Remittance Account
br_factor_ccid IN NUMBER Accounting Flexfield identifier for the

BANK ACCOUNT USE APIs Oracle Confidential - For internal use only Page 60 of 62
Parameter Name Type Data Type Reqd Default Validation, Comments
Bills Receivable Factoring Account
Accounting flexfield identifier for the
bank_interest_expense_ccid IN NUMBER
bank interest expense account
Accounting flexfield identifier for the
bank_interest_income_ccid IN NUMBER
bank interest income account
Accounting flexfield identifier for the
xtr_asset_ccid IN NUMBER
Treasury cash account
Accounting Flexfield identifier for the
ar_bank_charges_ccid IN NUMBER
Receivables Bank Charges Account
Current object version number for the
bank account uses. This is a mandatory
IN
p_use_ovn NUMBER Yes parameter.
OUT
Error: CE_API_REQUIRED_PARAM
CE_API_RECORD_CHANGED
Current object version number for the
ce_gl_accounts_ccid. This is a
IN
p_ccid_ovn NUMBER Yes mandatory parameter.
OUT
Error: CE_API_REQUIRED_PARAM
CE_API_RECORD_CHANGED
The return status of the API, informs the
x_return_status OUT VARCHAR2 caller about the result of the operation or
operations performed by the API
Number of messages in the FND
x_msg_count OUT NUMBER
message stack
If the count for x_msg_count is one, then
x_msg_data OUT VARCHAR2 the x_msg_data column holds the
encoded message

Status Output Value


Incremented object version number for passed objects along with
Success
x_return_status of FND_API.G_RET_STS_SUCCESS
x_return_status of either FND_API.G_RET_STS_ERROR
Failure
FND_API.G_RET_STS_UNEXP_ERROR

8.3.3 UI Mappings

Refer the UI Mappings section of create_bank_acct_use API. The parameter mapping is same as that except that some of
the fields are locked against update as mentioned in the parameter description section 8.3.2.

BANK ACCOUNT USE APIs Oracle Confidential - For internal use only Page 61 of 62
9. Error Message Description
The table below lists the error message keys that are given in the parameter description of the APIs and the
corresponding message text.

Error Message Key Message Text


Value for &COLUMN must be a value defined in lookup type
HZ_API_INVALID_LOOKUP
&LOOKUP_TYPE.
The party of party ID &PARTY_ID must be a &TYPE type of party.
HZ_API_INVALID_PARTY_TYPE
Please enter a &TYPE type of party.
CE_API_NO_BANK You must select or create a bank.
CE_API_REQUIRED_PARAM Required Parameter is missing
CE_API_NO_BRANCH You must select or create a bank branch.
CE_API_NO_ACCOUNT You must select or create a bank Account.
CE_API_RECORD_CHANGED This record in table &TABLE cannot be locked as it has been updated by
HZ_API_RECORD_CHANGED another user.
Select treasury account use only when the access organization is legal
CE_LE_ACCESS_ORG
entity.
Select payroll account use only when the access organization is business
CE_BG_ACCESS_ORG
group.
Select payables and/or receivables account uses only when the access
CE_OU_ACCESS_ORG
organization is operating unit.
Select payables/receivables/payroll account uses when the access
CE_BGOU_ACCESS_ORG
organization is both business group and operating unit.
CE_DUP_ACCT_NAME This account name already exists for this bank branch. Please re-enter.
CE_INVALID_IBAN The international bank account number (IBAN) entered is invalid.
The IBAN entry is invalid. Valid entries for IBAN fields are numbers 0-9,
CE_INVALID_IBAN_FORMAT
uppercase letters A-Z, and no spaces.
CE_BA_INVALID_CURRENCY Currency code is not valid.
Please deselect the Multiple Currency option as it is not allowed because
CE_BANK_MULTICURRENCY
the Bank Account currency is not equal to the Ledger currency.
CE_ALC_NUMERIC_VALUE_ONLY Enter only numeric value for Agency Location Code
CE_ALC_VALUE_TOO_LONG The Agency Location Code value entered cannot be longer than 8 digits.
CE_BANK_ACCOUNT_ID_INVALID The entered bank account id is invalid.
The combinations of legal entity/Organization should be unique. Please re-
CE_DUP_ACCT_ORG_ACCESS
enter
CE_NO_ACCOUNT_USE Atleast one of the four account uses should be enabled.
Only one account per currency and payables account use can be the default
CE_AP_SETTLEMENT_EXIST_ORG
settlement account for each LE or OU.
Only one account per currency and treasury account use can be the default
CE_XTR_SETTLEMENT_EXIST_ORG
settlement account for each LE or OU.
The selection of Payables or Receivables account uses mandates the entry
CE_API_CASH_CCID_REQUIRED
of Accounting flexfield identifier for the cash account.

Error Message Description Oracle Confidential - For internal use only Page 62 of 62

You might also like