0% found this document useful (0 votes)
28 views35 pages

IRQ CBS Batch Upload Manual2 2

Uploaded by

Ali Esam Dabes
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views35 pages

IRQ CBS Batch Upload Manual2 2

Uploaded by

Ali Esam Dabes
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 35

1

CB5

Data Upload Manual

© 2020 Creditinfo CEE s.r.o.


2 Data Upload Manual

Table of Contents

1. Introduction 4
1.1 Purpose ............................................................................................................................... 4
1.2 Glossary ............................................................................................................................... 4
1.3 Other related documents
............................................................................................................................... 5
1.4 URLs ............................................................................................................................... 5

2. Getting Started 5

3. Collection and Update of the Information 6


3.1 When data must
...............................................................................................................................
be sent? 6
3.2 Which data must
...............................................................................................................................
be sent? 7
........................................................................................................................................................................................
Bounced Cheques 8
........................................................................................................................................................................................
Collateral Structure 8
3.3 Data Formats ............................................................................................................................... 8
........................................................................................................................................................................................
Batch Identifier 8
........................................................................................................................................................................................
Mandatory fields 11
........................................................................................................................................................................................
Non-mandatory fields 12
........................................................................................................................................................................................
Regular expressions 12
........................................................................................................................................................................................
Data Quality Rules 12

4. How to create an XML Batch 13


4.1 Batch with contract
...............................................................................................................................
records 13
4.2 Batch with collateral
...............................................................................................................................
records 13
4.3 Batch with bounced
...............................................................................................................................
cheque records 14
4.4 Rules for the XML
...............................................................................................................................
files 14
4.5 XSD schema validation
............................................................................................................................... 15
........................................................................................................................................................................................
What is validated by the XSD 15
........................................................................................................................................................................................
What is not validated by the XSD 15
........................................................................................................................................................................................
How to get input XSD schema online 15

5. How to create a CSV Batch 16


5.1 Rules for CSV...............................................................................................................................
files 17

6. How to upload batch via Web Service 18


6.1 Authorization...............................................................................................................................
and steps 19
6.2 GetSchema ............................................................................................................................... 20
6.3 GetSchemaXML
............................................................................................................................... 20
6.4 GetSupportedSchemas
............................................................................................................................... 21
6.5 Begin ............................................................................................................................... 21
6.6 PutData ............................................................................................................................... 22
6.7 Finish ............................................................................................................................... 23
6.8 GetBatchInfo ............................................................................................................................... 24
6.9 GetResponseData
............................................................................................................................... 26

© 2020 Creditinfo CEE s.r.o.


3

6.10 GetData ............................................................................................................................... 27


6.11 GetBathchVersion
............................................................................................................................... 28

7. How to upload a batch via Back Office 28

8. How to check the restuls of batch processing 29


8.1 Results of batch
...............................................................................................................................
processing - SOAP 29
8.2 Structure of output
...............................................................................................................................
file 30

9. Test batch 31

10. Volume Limitations 32

11. Special cases and exceptions 32


11.1 Fixing of incorrect
...............................................................................................................................
data sent by mistake 32
11.2 How to report
...............................................................................................................................
granted contract which is not used/activated yet 32
11.3 How to report
...............................................................................................................................
the contract which is rescheduled or reorganized 33
11.4 How to close...............................................................................................................................
the contract 33
11.5 How to update
...............................................................................................................................
the contract 33
11.6 How to add Customers
...............................................................................................................................
linked to the contract 33
11.7 How to remove
...............................................................................................................................
Customers linked to the contract 34

© 2020 Creditinfo CEE s.r.o.


4 Data Upload Manual

1. Introduction
1.1 Purpose
This manual provides data providers with information how to prepare and upload periodical data extracts to the Credit
Bureau System (CBS). Periodic data extract (batch file) must be always in required structure and format and properly
uploaded to the system. Furthermore, the results of the batch processing may be downloaded by the responsible users,
enabling data providers to fix possible errors in their data.

The Credit Bureau database may be updated from different types of data sources. This document describes general rules
and principles which must be followed by participating data providers who uploads various information regular basis.

This user guide is aimed at the technical team of each institution that is responsible for implementing the regular
contribution of data to CBS.

1.2 Glossary
Below are the definitions of some important terms used in this document:

§ Batch - A file sent to CBS on a periodical basis by Subscribers which contains credit information and other data about
the Subscriber's customers. It refers to XML file or CSV (available in some countries) files that have been compressed
into a zip package.
§ Bounced Cheques - data structure used for reporting of bounced cheques = cheques that cannot be processed because
the writer has insufficient funds.
§ CBS, CB5, System - Credit Bureau System. The software solution providing the ability to store credit data from different
sources, and providing the ability for customers to retrieve credit data in the form of reports.
§ Client/Customer - company (Legal entity) or individual (physical person) – the client of the Subscriber, having credit or
any other relationship with it, whose data is being imported into CBS’s database.
§ Contract - credit relationship between subscriber and its customer. Usually the term refers to a loan, obligation
(installment, non-installment, credit cards, consumer credit, etc.)
§ Company - client of the subscriber, legal entity to be reported to CBS together with contract or payment information.
Company is main data entity in CBS.
§ Credit Bureau operator - A legal entity in the specific country, which is the administrator of the local bureau system.
The term also refers to an administrative user – the staff of the local Credit Bureau company.
§ CSV - simple data file of “comma separated values”; one format of the batch file.
§ Data quality rule - business rule which validates data for its consistency. For example – Date of Birth cannot be in the
future.
§ DB - database.
§ FTP - File Transfer Protocol, the technological standard used for data transfer.
§ Individual - client of subscriber, physical person to be reported to CBS together with Contract information. Individual is
main data entity in CBS.
§ Lookup - a field with a predefined set of enumerated values, e.g. List of currencies, list of countries, roles of client in the
contract (e.g. Main Debtor, Co-debtor, Guarantor).
§ Part - Part of a ZIP file which was separated into smaller parts. In order to facilitate uploading large files (usually > 10
MB), these files are broken down into smaller pieces.
§ Payment Incident - simple data entity for simplified collection of debts from smaller data providers such utilities,
telecoms. Usually the term refers to a negative debts, or invoices.
§ Snapshot - the instance of a subscriber's database on a given day. E.g. A snapshot of a subscriber's data for January
refers to a package of all current data about Customers and Contracts extracted from their database on the 31st of
January. In the case of daily snapshots, a snapshot for 12.01.2012 means the daily extract which was done on this day.
§ Subject data - information about customer of Subscriber, or any other personal information available from sources like
Tax registry, court claims, etc.

© 2020 Creditinfo CEE s.r.o.


5

§ Subscriber - an institution (usually bank or insurance company, telecom or other) which is a customer of CBS having a
contract with the Credit Bureau. It is usually the provider of credit information about subjects and its contracts, and/or
the consumer of data reports delivered by CBS.
§ System Provider - a software company – the global system administrator, the owner of the solution, providing system
integration, support and maintenance.
§ User - user of CBS. This can be a human being or program application belonging to the Subscriber, or Credit Bureau
staff.
§ Web service - communication interface used for interaction with CBS (e.g. methods for data upload, requesting of
credit reports, etc.).
§ XML - the file of extensible mark-up language; one format of the batch file.
§ XSD - XML Schema Definition, the description of correct structure, format and content of an XML file.
§ ZIP - file compression technology. Batches are compressed by standard ZIP without the use of encryption or passwords.

1.3 Other related documents


The following documents describe the system parts in deeper details or provide a sample of CBS usage:
· Data Structure Documents
The specification of the data entities in excel files.
§ Bounced Cheques - see CBS_Data_Structures_Cheque_IRAQ.xlsx for more details
§ Collaterals - see CBS_Data_Structures_Collateral_IRAQ.xlsx for more details
§ Contracts - see CBS_Data_Structures_Contract_IRAQ.xlsx for more details

1.4 URLs
WsBatch service (Web-Service which facilitates batch uploading):
· LIVE environment: ws.cbicbs.net/wsbatch/service.svc
· TEST environment: wstest.cbicbs.net/wsbatch/service.svc
·

2. Getting Started
Following steps are required in order to send the data to CBS:

1. Get data from your core system


o Please see the definition of the data which must be sent in the paragraph: What data must be sent.

2. Create a batch file - CBS supports two formats of the batch file:
o XML files (see How to create an XML Batch)
o CSV files (see How to create a CSV Batch)

After the file is created it is needed to ZIP it.

Note: Naming of the zipped file is important. See the naming convention in: Batch name (Batch Identifier)

3. Upload the batch to the system - use one of the following options:
o Web-service: see How to upload a batch through Web-service
o Note: For uploading batch files via Back Office application please refer to Back Office Manual.

4. Check the batch status


o Web-service: see how to check the batch status in the description of the GetBatchInfo method.
o Note: For checking status of batch files via Back Office application please refer to Back Office Manual.

© 2020 Creditinfo CEE s.r.o.


6 Data Upload Manual

o See more details about structure of output file here: How to check the results of batch processing

5. Download the results of batch processing (response) when status is "Finished"


o When the batch is processed (Batch Status = Finished), user may download the batch response in order to see a list
of potential errors and warnings.
o See more details here: How to check the results of batch processing

6. If any errors or warnings are found, fix them and send the fixed batch
o If batch file contains errors in the data, it is necessary to fix them and upload the corrected version of the batch file.
See this chapter about Versions.

3. Collection and Update of the Information


3.1 When data must be sent?
Key Information
1) The update of the complete portfolio must be sent every month according to the agreement with subscribers and CBS
operator (at least once a month).
2) The update can be sent by the subscriber more frequently (e.g. daily, weekly). In that case it is required to consult and
agree such updates with the CBS operator.

MONTHLY UPDATE (mandatory)


The monthly batch file is data file which must be sent each month according to the agreement with subscribers and CBS
operator. The monthly batch file must contain the whole portfolio – it means all data records which are valid to the last
day of the previous month (data are provided retrospectively after End-of-the-Month procedures are finished).

Example: The batch file sent on 05.02.2018 contains all records valid to 31.01.2018 (January 2018). The deadline was
agreed by the 10th calendar day (regardless of holidays and bank closing) by all subscribers.

© 2020 Creditinfo CEE s.r.o.


7

It is also possible to correct historical information in case of data have not been sent before or in case wrong data have
been sent to the system. For these purposes it is needed to extract the data valid to this time from the database and set
the Snapshot date to the date in past. See more in the description of the Batch Identifier.

DAILY UPDATE (optional)


The daily batch file is data file which may contain essential updates of the subscriber’s portfolio.
§ First Payment Default (e.g. client becomes negative for the first time, client did not pay regular installment for the
first time)
§ Client died, disappeared or committed fraud (negative status of the client has changed significantly)
§ New contract is opened
§ Open contract is Closed in a non-standard way (e.g. Written Off, Sold to Third Party or Terminated due to the
Insolvency Proceedings)

The structure of the daily batch is completely the same as for the monthly batch, but it is not required to provide the
complete portfolio. The Batch Identifier is also set accordingly – parameter "D" for daily update is used instead of "M".

In exceptional cases, it is possible to upload the complete portfolio (all contracts, loan agreements, payments, etc.) of the
subscriber (e.g. Micro Financial Institutions) on daily basis. The maximum number of contracts that can be uploaded daily
is limited to 5000. The monthly batch must be sent even if the daily batch contains the whole portfolio.

The picture shows an example of possible daily batch uses cases:

3.2 Which data must be sent?


Please refer to the latest data structure documents for description of the data fields, formats and data quality rules.

© 2020 Creditinfo CEE s.r.o.


8 Data Upload Manual

3.2.1 Bounced Cheques


Structure of Bounced Cheques is as follows:
· Entity Code - unique identification of the record. This identification must be the same for the whole life cycle of the
record.
· Bounced Cheque Data - attributes of the cheque (e.g. reason, amount and dates)
· Individual / Company - identification information about all Individuals and Companies related to the bounced cheque
· Subject Role - defines roles of Individual or Company towards the collateral (Issuer, Beneficiary).

The rules for data reporting are the same as for the Contracts - see chapter Contract Structure for more details.

3.2.2 Collateral Structure


Structure of Collaterals is as follows:
· Collateral Code - unique identification of the collateral record. This identification must be the same for the whole life
cycle of the record.
· Collateral Data - attributes of the collateral (e.g. identification data, collateral amount and dates, etc.)
· Individual / Company - identification information about all Individuals and Companies related to the collateral record
· Subject Role - defines roles of Individual or Company towards the collateral (Provider, Obligor or Beneficiary).

The rules for data reporting are the same as for the Contracts - see chapter Contract Structure for more details.

3.3 Data Formats


3.3.1 Batch Identifier
Each batch file is identified by the unique batch identifier. It identifies who uploads data, when the data was valid
(snapshot date), what is their source and the other parameters.

Batch identifier must be stated on several places:


· during data upload via web service interface, when calling specific web service methods
· inside the XML batch file in /Batch/BatchIdentifier node - if uploading data in XML format
· in the name of the zipped batch file
· In the Header.csv file - if uploading data in CSV format

Format of batch Identifier: SubscriberCode_SnapshotDate_BatchPeriodicity_SourceCode_Version_BatchType_Test

Parameter Values Description


name
Subscriber Code String Abbreviation of the data provider (subscriber) as registered in CBS
administration module. Please contact the CBS operator for more details.

Snapshot Date Monthly Batch: E.g. “201701” – for January 2017


“YYYYMM” E.g. “20170116” – January the 16th 2017
Daily Batch:
“YYYYMMDD”
Batch Monthly Batch: “M” Specifies the batch periodicity Monthly or Daily
Periodicity Daily Batch: “D”

© 2020 Creditinfo CEE s.r.o.


9

Source Code String Specifies a particular source system and type of data provided.
Each data provider may utilize several data sources (systems), one for
mortgages, another for leasing operations or credit cards.
For each data source "Source Code" must be registered in CBS
administration module. Please contact the CBS operator for more details.

Version Use "1" for the initial A version of the batch file.
version of batch file If 1s t version of batch file was rejected (due to a big amount of wrong
Use "2" or higher for records) – send fixed batch with version "2", etc.
corrected versions
CBS uses data only from the highest version of batch file. Data from
previous versions are omitted.

It is not allowed to upload higher version of batch file if processing of


previous version is not finished (Status = In progress).

Batch Type "XML or "CSV" Defines format of batch file.

Test Add “T” if it is a test batch Optional parameter, please refer to Test batch chapter for further details.
file
Test files are only validated but not stored to CBS database.

See Batch Identifier samples below.

BATCH IDENTIFIER RULES:

· Snapshot date cannot be in the future

Today is 21.11.2017
Daily batch Snapshot date (Monthly batch)

BANK_20171031_D_CON_1_XML OK BANK_201710_M_CON_1_XML OK

BANK_20180131_D_CON_1_XML ERROR BANK_201801_M_CON_1_XML ERROR

· Batch version must be "1" for initial (first upload)

BANK_20171031_D_CON_1_XML OK
BANK_20171031_D_CON_0_XML ERROR
BANK_20171031_D_CON_2_XML ERROR

· Batch version (for the same day or month) must be incremental

Previous value Next value Result

BANK_201701_M_CON_ BANK_201701_M_CON_ OK - version 2 means a correction of the previous


1_XML 2_XML version

© 2020 Creditinfo CEE s.r.o.


10 Data Upload Manual

BANK_201701_M_CON_1_X BANK_201702_M_CON_1_X OK - The next monthly batch.


ML ML

BANK_201701_M_CON_ BANK_201701_M_CON_ ERROR - versions are the same for the same snapshot
1_XML 1_XML date

BANK_201701_M_CON_ BANK_201701_M_CON_ ERROR - gap between version numbers


1_XML 3_XML

· The same Batch Identifier must be declared in ZIP file name (ZIP file) and inside batch file:
§ XML - element Batch/BatchIdentifier
§ CSV - inside "Header.csv", mandatory column BatchIdentifier

BATCH IDENTIFIER EXAMPLES

· BANKABC_201701_M_CON_1_XML = monthly batch with validity date January 2017, sent by Bank ABC in XML
format
§ BANKABC – code of subscriber name (registered in CBS administration module)
§ 201701 – snapshot date indicating that data is valid to the end of the January 2017
§ M – identifies that it is Monthly batch
§ CON – code of data source (registered in CBS administration module). Note: Data source represents data
source from which data provider sends data to the CBS (e.g. core banking system, data repository, etc). This
helps to identify origin of the uploaded information.
§ 1 – version of the batch file (1 = initial data upload)
§ XML – identifies that data is being sent in XML format

· BANKABC_20170131_D_CON_2_XML_T = monthly batch with validity date January 2017, sent by Bank ABC in
XML format
§ BANKABC – code of subscriber name (registered in CBS administration module)
§ 20170131 – snapshot date indicating that data is valid to the end of the January 2017
§ D – identifies that it is Daily batch
§ CON – code of data source (registered in CBS administration module). Note: Data source represents data
source from which data provider sends data to the CBS (e.g. core banking system, data repository, etc). This
helps to identify origin of the uploaded information.
§ 2 – version of the batch file (2 = correction of previous data upload)
§ XML – identifies that data is being sent in XML format
§ T – test batch only

© 2020 Creditinfo CEE s.r.o.


11

3.3.2 Mandatory fields


All mandatory fields must always be filled-in otherwise the whole record will NOT be accepted.

· Text values (text strings such names, addresses, etc.) – the fields must always contain real values. It is not allowed to
fill-in fake or dummy values such as “Unknown”, “Not available”, etc. If text value is longer than the maximum allowed
size (e.g. First Name’s maximum length is 64) – the record will be rejected.
· Date values (Start date, Expected End date, etc.) – the fields must always contain real values. It’s not possible to them
with fake or dummy dates such as 1900.01.01, 2000.01.01, etc.
· Lookups (Periodicity of Payments, Marital Status, etc.) – enumeration values must be taken from the predefined list
otherwise the record will be rejected.
· Decimal values (Total Approved amount, Outstanding amount, etc.) – in all cases, these fields consist of 2 sub-fields:
Amount and Currency. Currency must be relevant with the currency of the contract, reported in the appropriate field.
The currency of related amounts must be corresponding (e.g. the currency of Outstanding Amount and the currency of
Past Due Amount must be the same in the same contract). In some cases, e.g. when the client does not have any past
due amount, but the field is mandatory – the field must be populated with 0 value (e.g. 0 EUR).
· Numbers (integers) values (Number of Due Installments, Past Due Days, etc.) - the fields must always contain real
values. In case some number values are not available (e.g. customer doesn’t have overdue, there are no any Due
installments), the field should be populated with 0 values.

Please refer to data structure documents for more details.

© 2020 Creditinfo CEE s.r.o.


12 Data Upload Manual

3.3.3 Non-mandatory fields


Optional values can be "empty" and should be filled-in only if subscribers have them in their internal system.

Following rules are applied for populating of the non-mandatory fields:


· If data are not available at all, the tag of the field must not present in XML at all.
· If value is longer than allowed size (e.g. Birth Surname’s maximum length is 64) – this value is cut to the maximum
allowed while storing to the database.

Note: Do not fill in non-mandatory fields with dummy or fake values like “Default”, “Unknown”, “Not available”, "0" or
"1" for amounts, "0" or "-1" for integer values, "1900.01.01" for dates, etc. This may have a negative impact on system's
performance, stability and overall quality of credit reports.

Please refer to data structure documents for more details.

3.3.4 Regular expressions


Format of some values (typically ID numbers or phone numbers) could be constrained by some regular expressions
(pattern). For example the maximum number of characters cannot be exceeded.
Please refer to data structure documents for more details.

3.3.5 Data Quality Rules


The Data Quality Rule refers to a logical restriction on the data which are sent to CBS.

The goal of Data Quality Rules is to avoid:


· Errors in data (e.g. negative amounts)
· Mistypes (e.g. wrong formats of the IDs)
· Logical errors, caused by inconsistency of data in the Subscriber’s database. (e.g. Contract Start Date in the future)
· Lack of essential information (e.g. missing contacts, IDs)
· Extreme cases (e.g. huge number of collateral, which could cause problems with report generation)
· Incorrect overwriting of historical data (e.g. present value of Number of Due installments is not consistent with the
previous value (cannot grow rapidly like from '1' into '200' in 1 month). E.g. “Total Amount must be greater than
zero.” This rule is checking the value of the Total amount, which has been sent in the batch.
· In case of contract data fail on business rule(s) (e.g. TotalAmount = -5000$), then a whole contract is refused and it
is not stored in the database. Subscriber is required to fix the error and send the updated data in next batch.

© 2020 Creditinfo CEE s.r.o.


13

Please refer to data structure documents for more details.

4. How to create an XML Batch


This paragraph describes an XML format of the batch and explains how to validate XML file against XSD (See XSD schema
validation).

See also the rules of work with XML document.

4.1 Batch with contract records


The structure of input XML file containing Contract records is as follows:

4.2 Batch with collateral records


The structure of input XML file containing Collateral records is as follows:

© 2020 Creditinfo CEE s.r.o.


14 Data Upload Manual

4.3 Batch with bounced cheque records


The structure of input XML file containing Boune Cheque records is as follows:

4.4 Rules for the XML files


· Use UTF-8 encoding for XML file:

· Different data entities must be reported in separate XML files (e.g. data bout Contracts and data about Bounced
Cheques must be reported in separate batch files)

· XML file must be always named as follows:


o Contracts.xml in case of Contract structures
o BouncedCheques.xml for reporting of Bounced Cheque structures
o Collaterals.xml in case of Collateral structures

· XML file must contain complete portfolio (all records). Records cannot be splitted into several batches.
o The maximum number of records not limited.

Example: Subscriber has 100 000 credit records. All records must be sent monthly in one batch file. It means, that all 100
000 records are present in one XML file.

· All Tags and values are case sensitive.


o The names of the field (xml nodes) are case sensitive. For example correct field name is <PhaseOfContract>, not
<PHASEOFCONTRACT>
o The same rule must be applied for lookup values.

· At least one subject (Individual or Company) must be reported


o All records without subject information are automatically rejected

© 2020 Creditinfo CEE s.r.o.


15

· BatchIdentifier (unique identification of the batch file) must be filled-in according to the following rules.

· Each XML file must be valid against input XSD schema


o Please refer to the rules for XSD schema validation for more details.
o Batch file with Contract records must be valid against ContractFull schema
o Batch file with Collaterals must be valid against CollateralFull schema
o Batch file with Bounced Cheques must be valid against BouncedChequeFull schema
o Batch file with Collaterals must be valid against CollateralFull schema

Actual version of any XSD schema may be obtained anytime from WS Batch service (public) using web service methods
GetSchema or GetSchemaXML

4.5 XSD schema validation


The XSD schema is required to validate input XML batch sent to CBS. It is possible to get the latest XSD schema anytime,
see here for more information.

4.5.1 What is validated by the XSD


· If batch is well-formed = constructed in accordance with the syntactic rules
· Data types - Dates, Decimal, String, etc.
· Presence of all mandatory fields
· Patterns (e.g. phone format, ID format...)
· Accuracy of Lookup values (if Gender = Male or Female)
· Maximal field length (Present Surname max 64 characters...)
· If complex types such amounts are filled-in correctly (e.g. complex type CollateralValue consists of two elements Value
and Currency)

Note: Validation engine respond with ERROR if there is any problem in mandatory field and with WARNING if there is
problem optional field.

4.5.2 What is not validated by the XSD


· XSD does not compare two values (e.g. Birth date and current date)
· XSD does not validate data quality rules (e.g. Total Amount must be greater than 0)
· XSD does not validate mistypes in data (e.g. Jhn instead of John)
· XSD does not validate if some value is required from several options (e.g. at least one ID must be filled-in)

4.5.3 How to get input XSD schema online


It is possible to download input schema using method GetSchema or GetSchemaXML from WsBatch service.

· XSD schema for contract records


<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:cb5="http://creditinfo.com/CB5">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<cb5:GetSchemaXml>
<cb5:schemaType>ContractFull</cb5:schemaType>
</cb5:GetSchemaXml>

© 2020 Creditinfo CEE s.r.o.


16 Data Upload Manual

</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

· XSD schema for Bounced Cheque records


<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:cb5="http://creditinfo.com/CB5">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<cb5:GetSchemaXml>
<cb5:schemaType>BouncedChequeFull</cb5:schemaType>
</cb5:GetSchemaXml>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

· XSD schema for Collateral records


<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:cb5="http://creditinfo.com/CB5">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<cb5:GetSchemaXml>
<cb5:schemaType>CollateralFull</cb5:schemaType>
</cb5:GetSchemaXml>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

For more information please refer to the description of the method GetSchemaXML.

5. How to create a CSV Batch


It is possible to send the data in CSV format (XML is highly recommended). For that it is needed to export data into
several CSV files.

Please refer to the Rules for CSV files.


Please refer to the CSV samples enclosed with the current guideline.

CSV file for Contract structures


· Collateral.csv – List of collaterals, related to contracts + detailed information of each
· Company.csv – List of companies, related to contracts + detailed information of each
· ContractData.csv – List of contracts + detailed information of each
· Header.csv – contains Identifier of the Batch (BatchIdentifier)
· Individual.csv – List of individuals, related to contracts + detailed information of each
· SubjectRelation.csv – Relations between subjects, related to contracts.
· SubjectRoles.csv – Roles of customers in contracts

CSV file for Bounced Cheque structures


· Header.csv – contains Identifier of the Batch (BatchIdentifier)
· BouncedChequeData.csv - detailed information about cheque like amounts, dates, statuses, etc.
· Company.csv – List of companies, related to contracts + detailed information of each
· Individual.csv – List of individuals, related to contracts + detailed information of each
· SubjectRoles.csv – Roles of customers in contracts

CSV file for Collateral structures

© 2020 Creditinfo CEE s.r.o.


17

· Header.csv – contains Identifier of the Batch (BatchIdentifier)


· CollateralData.csv - detailed information about cheque like amounts, dates, statuses, etc.
· Company.csv – List of companies, related to contracts + detailed information of each
· Individual.csv – List of individuals, related to contracts + detailed information of each
· SubjectRoles.csv – Roles of customers in contracts

5.1 Rules for CSV files


· CSV files must be COMMA delimited files in UTF-8 encoding

· Different data entities cannot be mixed in one ZIP file

· All CSV files must present in ZIP file with exact names (file names are case sensitive).
o Even files which are empty must be always present in ZIP archive

· Archive with CSV files must contain whole portfolio (all records). Records cannot be split into several batches.
o The maximum number of records not limited.

Example: Subscriber has 100 000 credit records. All records must be sent monthly in one batch file. It means, that all 100
000 records will be populated in one CSV file.

· The first row in each CSV file must always be header

· Header fields are not Case Sensitive

· Lookups' values are Case Sensitive


o The values of the lookup fields are case sensitive (e.g. for field CollateralType the only valid value is "RealEstate" not
"REALESTATE", etc.)

· All CSV columns must present in the header, even the data are not available

· Repeatable values are separated with PIPE

© 2020 Creditinfo CEE s.r.o.


18 Data Upload Manual

· All CSV files (except Header.csv) must contain:


o ContractCode as the first column - when sending data about - when sending data about Contracts

6. How to upload batch via Web Service


The web-service interface is a best way for the automation of the data uploading process. It gives users a possibility not
only for data uploading, but also for automatic controlling of the results returned by the validations of the system.

The web service uses the following external operations (methods) for communication:

Batch upload methods:


1. Begin - initializes the start of the batch uploading
2. PutData - uploads parts of the zipped XML batch file in binary data using Batch Identifier
3. Finish - informs web-service that uploading of the particular batch was finished
4. GetBatchInfo - returns a current status of the uploaded batch
5. GetResponseData - returns a detailed result of the uploaded batch

The picture below displays the process of using web-service for batch uploading:

Additional supportive methods:


· GetSchema - returns required XSD schema for input data file in string format
· GetSchemaXML - returns required XSD schema in XML format
· GetSupportedSchemas - returns a list of supported schemes
· GetData - returns the input batch file, which has been already sent
· Exists - serves for checking if the batch was already registered in the system by testing whether the batch identifier
exist or not
· GetBathchVersion - the highest version of a batch file in the system

© 2020 Creditinfo CEE s.r.o.


19

6.1 Authorization and steps


Authorization:
In order to operate with CBS system it’s needed to obtain login and password provided by CBS operator. Using those
credentials a user can access the web-service.
Using standard XML (WSDL) connection and WS credentials (login and password) user can authorize on the web-service:

Calling of WS methods - steps


1) Download an XSD schema for creating and validating XML batch files from WSDL file located at WsBatch Service
(...WsBatch/service.svc?wsdl). See How to get input XSD schema online.
2) Create an XML or CSV batch file with contract records according to the XSD schema. Only XML files can be checked
against the XSD schema directly.
XML: See How to create an XML Batch
CSV: See How to create a CSV Batch.
3) If using XML file, validate it against XSD schema and correct errors if XML file is not valid. Otherwise proceed.
4) Compress XML batch file (only zip is allowed). If size of compressed file is above 1MB (1048576 bytes), split zipped file
into smaller parts (similar to Total Commander binary split).
5) Encode parts (file parts) to Base64. This procedure is as follows: Open zip file part as a text, encode whole text string
to BASE64 format (Notepad++: Plugins>MIME Tools > Base 64 Encode). Now you have Base64 encoded text string
needed in step 7.
6) Call Begin method on web-service to begin transaction. Fill in the input parameter BatchIdentifier. Please refer to the
format of Batch Identifier.
7) Call PutData method on web-service to upload data in Base64 format. Do it by pasting encoded Base64 text string
between <ns0:data> </ns0:data> elements. Check demo code here. Do it for each part (part) separately.
8) Call Finish method on web-service to finish transaction.
9) Call GetBatchInfo method on web-service to get the status of uploaded batch file.
Note: if batch processing is still in progress, call GetBatchInfo method repeatedly later.
10) As soon as GetBatchInfo method returns Batch status "Finished", call GetResponseData method via web-service to
download the response in Base64 format. if response consists of more parts, then do it for each part separately.
If the batch got stuck in the Processing status for more than 24 hours, please contact our support team.
11) Decode Base64 to zip (join parts together)
12) Unzip compressed zip file to get the XML response.

© 2020 Creditinfo CEE s.r.o.


20 Data Upload Manual

13) Check the system response for the results of batch processing. See How to check the results of batch processing.
14) Call the method Exists to send the information about last Batch Identifier uploaded in the system

Note: It is strongly recommended to send the Test Batch before uploading data to the live environment.

Testing Batch - steps:


1) Add the _T parameter to the end of the Batch Identifier E.g. TestBank_201204_M_DEF_1_XML_T.
2) Send the Test Batch to the system. (see the steps above, the only difference in the uploading process is the Batch
Identifier with _T parameter at the end.)
3) Check possible errors which have been raised after validation (each error contains code and description).
4) If some errors have been found - fix them and send the Test Batch again with the increased Version. E.g.
TestBank_201204_M_DEF_2_XML_T
5) Repeat steps 2-4 until all errors are fixed.
6) Send the batch to Live environment: Remove the _T parameter from the Batch Identifier. E.g.
TestBank_201204_M_DEF_1_XML

6.2 GetSchema
The method returns required XSD schema for input data file in string format .

Input parameters
Parameter Data Type Description

schemaType String Currently supported schemes (input value):


· ContractFull – returns the scheme of input XML batch (contract data)
· BatchResponse – returns response structure

Output parameters
Parameter Data Type Description

GetSchemaResult String Body of XSD file in string format.

INPUT
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:cb5="http://creditinfo.com/CB5">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<cb5:GetSchema>
<cb5:schemaType>ContractFull</cb5:schemaType>
</cb5:GetSchema>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

6.3 GetSchemaXML
The method returns required XSD schema in XML format for input data file.

Input parameters:
Parameter Data Description
Type

© 2020 Creditinfo CEE s.r.o.


21

schemaType String Currently supported schemes (input value):


· ContractFull – returns the scheme of input XML batch (contract data)
· BatchResponse – returns response structure

Output parameters:
Parameter Data Type Description

GetSchemaXMLResult String Body of XSD file in XML format.

INPUT
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:cb5="http://creditinfo.com/CB5">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<cb5:GetSchemaXml>
<cb5:schemaType>ContractFull</cb5:schemaType>
</cb5:GetSchemaXml>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

6.4 GetSupportedSchemas
The method returns a list of supported schemes.
Input parameters: No parameters required

Output parameters:
Parameter Data Type Description

GetSupportedSchemasResult String List of currently supported schemas.


· ContractFull – returns the scheme of input XML batch (contract data)
· BatchResponse – returns response structure

INPUT
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:cb5="http://creditinfo.com/CB5">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<cb5:GetSupportedSchemas/>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

6.5 Begin
The method initializes the start of the batch uploading. Calling of that method means, that subscriber begins of uploading
the exact batch, identified by Batch Identifier.

Input parameters:
Parameter Data Type Description

© 2020 Creditinfo CEE s.r.o.


22 Data Upload Manual

BatchIdentifier String Batch Identifier. See detailed description here.

Output parameters:
Parameter Data Type Description

Null If Success

FaultException Section If Error - please see a structure of WSDL to see a


structure of exception output.

INPUT
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:cb5="http://creditinfo.com/CB5">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<cb5:Begin>
<cb5:batchIdentifier>ABC_201207_M_DEF_1_XML</cb5:batchIdentifier>
</cb5:Begin>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

OUTPUT OK
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns0="http://tempuri.org/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<BeginResponse xmlns="http://creditinfo.com/CB5/BatchService"/>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

OUTPUT ERROR
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body>
<s:Fault>
<faultcode>s:Client</faultcode>
<faultstring xml:lang="en-GB">Subscriber not found. Name was: 'ABC'</faultstring>
<detail>
<BatchFaultException xmlns="http://creditinfo.com/CB5/BatchInternalService"
xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<Message>Subscriber not found. Name was: 'ABC'</Message>
<TrackId>46562e16-555d-4389-8e9c-eadaa8f054e6</TrackId>
</BatchFaultException>
</detail>
</s:Fault>
</s:Body>
</s:Envelope>

6.6 PutData
The method uploads parts of the zipped XML batch file in binary data (BASE64BINARY) using Batch Identifier used in Begin
method.

Input parameters

© 2020 Creditinfo CEE s.r.o.


23

Parameter Data Type Description

batchIdentifier String Batch Identifier. See detailed description here.

partId Integer The Id of the ZIP package part, which is being uploaded to web-service.
The first partId must be 1, then 2, 3....
In case if there is only 1 part (ZIP package < 1 MB) – then there will be just 1.

data Base64 The binary data of a ZIP package part

Output parameters
Parameter Data Type Description

Null If Success

FaultException Section If Error - please see a structure of WSDL to see a structure of exception output.

INPUT
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns0="http://tempuri.org/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns0:PutData>
<ns0:batchIdentifier>ABC_201207_M_DEF_1_XML</ns0:batchIdentifier>
<ns0:partId>1</ns0:partId> <ns0:data>UEsDBAoAAAAAAKqU0kAlOrhQCAAAAAgAAAAIAAAAdGVzd.........…</ns0:data>
</ns0:PutData>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

OUTPUT
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns0="http://tempuri.org/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<PutDataResponse xmlns="http://creditinfo.com/CB5/BatchService"/>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

6.7 Finish
The method informs web-service that uploading of the particular batch (with exact Batch Identifier) was finished and no
other parts of the ZIP file are expected.

Input parameters:
Parameter Data Type Description

batchIdentifier String Batch Identifier. See detailed description here.

partCount Integer Number of parts which have been uploaded. This is a double check if all the parts
have been uploaded successfully. In case of PartCount <> number of parts uploaded
with this Batch Identifier – an error will be raised.

© 2020 Creditinfo CEE s.r.o.


24 Data Upload Manual

Output parameters:
Parameter Data Type Description

Null If Success

Or in case of error:

FaultException Section If Error - Please see a structure of WSDL to see a structure of exception output.

INPUT
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ba="http://creditinfo.com/CB5/BatchService">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ba:Finish>
<ba:batchIdentifier>ABC_201004_M_DEF_1_XML</ba:batchIdentifier>
<ba:partCount>1</ba:partCount>
</ba:Finish>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

OUTPUT
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<ActivityId CorrelationId="19596da9-5fe5-4b44-9980-8165605e2167"
xmlns="http://schemas.microsoft.com/2004/09/ServiceModel/Diagnostics"
>dd2e88ac-62e9-4950-80c8-bf8c8d575a0f</ActivityId>
</s:Header>
<s:Body>
<FinishResponse xmlns="http://creditinfo.com/CB5/BatchService"/>
</s:Body>
</s:Envelope>

6.8 GetBatchInfo
The method returns a current status of the uploaded batch. It is needed to check the status of the batch periodically after
uploading to make sure, that the batch has been uploaded successfully.

Input parameters:
Parameter Data Type Description

batchIdentifier String Batch Identifier. See detailed description here.

Output parameters:
Parameter Data Type Description

BatchIdentifier String Batch Identifier. See detailed description here.

BatchResult Enumeration (Lookup) · NotSpecified – batch didn’t get final result yet. Batch processing is
in progress

© 2020 Creditinfo CEE s.r.o.


25

· Success – Batch has been processed successfully and correct data


have been stored in the database.
· FinishedWithErrors -the batch has been processed, but at least
one contract has been rejected due to errors in data.
· UploadingTimedOut – batch uploading failed on exceeded time
out (24 hours)
· IncompleteBatch – batch file is incomplete (some part of the file
is missing)
· NotWellFormed – batch is not well-formed. (e.g. missing
mandatory CSV file in ZIP package)
· NotApproved – batch is being approved by system operator
· BatchRejected – batch was rejected because % of failed records in
batch exceeded maximum allowed = 50
· InternalError – internal system error.

BatchStatus Enumeration (Lookup) · NotSpecified – batch status is not specified


· Uploading – batch data are being uploaded
· WaitingForApproval – batch is being reviewed by system
operator and waiting to be approved
· Processing – batch is being processed
· Finished – batch is processed and batch data are uploaded into
the Live database.
Please note: batches marked with Test parameter get status
Finished without uploading data into Live database.

FinalResponsePartCount Integer Number of parts of the response file.

Finished DateTime The time when batch got status Finished.

Inserted DateTime The time when batch was inserted into the system.

RequestPartCount Integer Number of parts of the input ZIP file.

ResponsePartCount Integer Number of parts of the output ZIP file.

NumberOfFailedRecords Integer Number of records which have been rejected due to errors in data.

NumberOfRecordsWith Integer Number of records which have been uploaded to the system, but
Warnings warnings have been raised during processing.
NumberOfSuccessfulRec Integer Number of records which have been uploaded to the system
ords successfully
TotalNumberOfRecords Integer Total number of records in batch

INPUT
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ba="http://creditinfo.com/CB5/BatchService">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ba:GetBatchInfo>
<ba:batchIdentifier>ABC_201005_M_DEF_1_XML</ba:batchIdentifier>
</ba:GetBatchInfo>

© 2020 Creditinfo CEE s.r.o.


26 Data Upload Manual

</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

OUTPUT
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<ActivityId CorrelationId="f62dab92-badc-4566-912e-3907f1920262"
xmlns="http://schemas.microsoft.com/2004/09/ServiceModel/Diagnostics"
>22eaeb52-37fe-45a2-8466-9c306ce938b7</ActivityId>
</s:Header>
<s:Body>
<GetBatchInfoResponse xmlns="http://creditinfo.com/CB5/BatchPublicService">
<GetBatchInfoResult xmlns:a="http://creditinfo.com/CB5/BatchInternalService"
xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<a:BatchIdentifier>ABC_201005_M_DEF_1_XML</a:BatchIdentifier>
<a:BatchResult>Success</a:BatchResult>
<a:BatchStatus>Finished</a:BatchStatus>
<a:Finished>2012-09-02T18:01:15.767</a:Finished>
<a:Inserted>2012-09-02T18:01:02.747</a:Inserted>
<a:NumberOfFailedRecords>0</a:NumberOfFailedRecords>
<a:NumberOfRecordsWithWarnings>0</a:NumberOfRecordsWithWarnings>
<a:NumberOfSuccessfulRecords>1</a:NumberOfSuccessfulRecords>
<a:RequestPartsCount>1</a:RequestPartsCount>
<a:ResponsePartsCount>1</a:ResponsePartsCount>
<a:TotalNumberOfRecords>1</a:TotalNumberOfRecords>
</GetBatchInfoResult>
</GetBatchInfoResponse>
</s:Body>
</s:Envelope>

6.9 GetResponseData
The method returns a detailed result of the uploaded batch: list of successfully uploaded contracts and list of errors. The
method returns a response part by part (if response was too big and divided to several parts).

Input parameters
Parameter Data Type Description

BatchIdentifier String Batch Identifier. See detailed description here.

PartId Integer Part number which is going to be downloaded. Usually only 1 part is available.
More than 1 part will be in case of data file have more than approx. 10000
contracts with error messages.

Output parameters
Parameter Data Type Description

GetResponseDataResult Base64 Data in base64 string format. After decoding it will be a ZIP file with XML or CSV
data (depends on the input format)

INPUT
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ba="http://creditinfo.com/CB5/BatchService">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ba:GetResponseData>

© 2020 Creditinfo CEE s.r.o.


27

<ba:batchIdentifier>ABC_201005_M_DEF_1_XML</ba:batchIdentifier>
<ba:partId>1</ba:partId>
</ba:GetResponseData>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

OUTPUT
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body>
<GetResponseDataResponse xmlns="http://creditinfo.com/CB5/BatchService">
<GetResponseDataResult>UEsDBC0ACAAIALRo7EAAAAAA//////////8eABQAUmVWYW........…</GetResponseDataResult>
</GetResponseDataResponse>
</s:Body>
</s:Envelope>

After the BASE64 string from the field GetResponseDataResult is decoded it will be a ZIP file with 3 files. See the details
here: Structure of output file

6.10 GetData
This method returns the input batch file, which has been already sent to CBS (part by part in case of big file).
Mainly the method is used for the disputes and testing purposes.

Input parameters
Parameter Data Type Description

batchIdentifier String Batch Identifier. See detailed description here

partId Integer The Id of the part of the ZIP package, which was uploaded in the PutData method.

Output parameters
Parameter Data Type Description

GetDataResult Base64 Data in base64 string format. After decoding it will be a ZIP file with XML or CSV data
(depends on the input format).

INPUT
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns0="http://tempuri.org/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns0:Begin>
<ns0:batchIdentifier>ABC_201207_M_DEF_1_XML</ns0:batchIdentifier>
<ns0:partId>1</ns0:partId>
</ns0:Begin>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

OUTPUT
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns0="http://tempuri.org/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns0:GetDataResponse>
<ns0:GetDataResult>UEsDBBQAAAAIACZE1EBqBXhmZAwAAF0sAAANAAAAQ29u…</ns0:GetDataResult>
</ns0:GetDataResponse>

© 2020 Creditinfo CEE s.r.o.


28 Data Upload Manual

</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

6.11 GetBathchVersion
This method serves for the latest batch version in the system. The purpose is to give feedback to Batch Transfer Module
(BTM) that is sending the batch to the system but does not know about the result and thus about the last Batch
Identifier. BTM is the solution that transform data sent from financial institution to the system in the prescribed form.

Input parameters
Parameter Data Type Description

BatchIdentifier String Batch in shortened form: SubscriberName_SnapshotDate_Periodicity_SourceName. E.g.


ABC_201201_M_DEF.

Output parameters
Parameter Data Type Description

GetBatchVersio integer Provides current batch version


nResult

Or in case of error:

Message String Invalid structure of batchIdentifier. Structure must be as follows:


SubscriberName_SnapshotDate_Periodicity_SourceName. E.g. ABC_201201_M_DEF.
Value was {0}

INPUT
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:cb5="http://creditinfo.com/CB5">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<cb5:GetBatchVersion>
<cb5:batchIdentifier>ADMINBANK_20140101_D_DEF</cb5:batchIdentifier>
</cb5:GetBatchVersion>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

OUTPUT
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body>
<GetBatchVersionResponse xmlns="http://creditinfo.com/CB5">
<GetBatchVersionResult>7</GetBatchVersionResult>
</GetBatchVersionResponse>
</s:Body>
</s:Envelope>

7. How to upload a batch via Back Office


Note: Please check the "Back Office Manual" for more information.

Steps to upload new batch file:

© 2020 Creditinfo CEE s.r.o.


29

1. Select "Data Management - Batch Management" from the navigation panel and click on "Upload batch" button
2. Select package (batch file compressed by ZIP) from a source folder and click on "Upload" button
3. Check the status of the batch processing in the "Batch Management" queue. Click on "Search" button to refresh list of
the batch files. When option "Show latest" is checked, only the latest version of each batch file is displayed.
4. When batch status is "Finished", it is highly recommended to review the "Batch Result"
5. Download original "Batch file" or "Response" for the selected batch file (not available for "Correction" type of batch =
contains "C" in the name of batch identifier). Response structure is as follows:
6. If necessary fix errors in data and upload the next version of the batch file by increasing its version number (e.g.
ABC_201201_M_DEF_1_XML --> ABC_201201_M_DEF_2_XML)

8. How to check the restuls of batch processing


8.1 Results of batch processing - SOAP
This paragraph describes how to read a system response and check the results of batch processing.

1) Using WS method GetBatchInfo


You can anytime get the status of the batch by calling the method GetBatchInfo. See the whole work flow in the picture
below:

1) Call the GetBatchInfo method with an input parameter BatchIdentifier.

2) Check the BatchStatus returned by GetBatchInfo method. BatchStatus must be "Finished" otherwise batch processing
is still in progress.

3) If BatchStatus is Finished, then check the BatchResult which may have following states:

© 2020 Creditinfo CEE s.r.o.


30 Data Upload Manual

Result Description
Batch Rejected batch was rejected because % of failed records in batch exceeded maximum allowed (check it with the
system administrator)
Finished With the batch has been processed, but at least one contract has been rejected due to errors in data
Errors
Incomplete Batch batch file is incomplete (some required part of the file is missing)
Internal Error internal system error occurred - please try to restart upload by clicking "Restart Batch" button and/or
contact system administrator in such case
Not Approved batch is waiting for approval by system administrator
Not Well-Formed batch is not well-formed (e.g. missing mandatory CSV file in ZIP package or incorrect structure of XML
file)
Not Specified batch did not get final result yet (batch processing is still in progress)
Rejected by batch was manually rejected by the subscriber (1s t level of the data approval)
Checker
Rejected by batch was manually rejected by CBS operator (2nd level of the data approval)
Operator
Rolled Back successfully uploaded batch file was manually rolled back (disabled)
Success batch has been processed successfully and all data were stored in the database
Uploading Timed batch uploading failed on exceeded time out (24 hours)
Out

4) Download results of batch processing (only when BatchStatus = Finished) by calling the method GetResponseData

8.2 Structure of output file


After batch is processed, the system generates the output ZIP with the response files.

File name Description

Data This file lists all errors and warnings which have been raised during data validation.
e.g. "Mandatory field is missing. Field name: Residency"

File This file lists errors and warning regarding the batch file itself.
e.g. "Missing header line"

Summary The file shows the summary statistics of found issues during batch processing.
Log The format of the statistics file is the following:
ü Number of failed records - shows the number of records failed;
ü Number of entities with warnings - shows a number of records where at least one warning
has been raised;
ü Number of successful records - shows a number of successfully passed records (also with
only Warnings);
ü Total number of records - shows the number of all records in
the batch;
ü Total number of errors - shows the number of all found errors in data;
ü Total number of warnings - shows the number of all warnings found in data;

Additionally, if any errors/warnings are found, the statistics file shows its occurrence. For
example:
Error CodeType Occurrence

© 2020 Creditinfo CEE s.r.o.


31

VALID13 Warning 1
SBR32 Error 7
SBR39 Error 2

Statistics The file shows the data distribution in uploaded batch. This statistic helps to identify whether
any default values were used during batch creation.
If the are duplicated values in the uploaded data across all contracts / subjects the statistics
will show:
ü Field Name - which field was duplicated (e.g. "MobilePhone")
ü Value - which value in the field was duplicated (e.g. "+420111222333")
ü Number of Occurrences - number of duplicated values (e.g. "80")
ü Percentage - percentage of duplicated values (e.g. "40.00")
ü Total - total occurrence of the field in the batch file (e.g. "200")

9. Test batch
Test batches specified with the "T" parameter inside of Batch Identifier serve the purposes of testing data correctness. It
gives possibility to check the data first before uploading it to the Live CBS database. It gives feedback without writing data
into the live database.

E.g. “ABC_20120314_D_DEF_1_XML_T”.

Note: Start uploading of the new data with sending the batch marked as TEST BATCH. It will avoid incorrect data to be in
Live environment. The testing can be repeated as many times as possible. When the test batch is passed correctly -
upload the batch to the Live (just remove the _T parameter from Batch Identifier.

Following validations are enabled for Test batch:


· Validation XML against XSD:
- Well-form
- Batch identifier format
- Data Quality Rules between data in one batch (without comparing current and historical values)
· Validation CSV:
- Checking if all mandatory files present in ZIP
- Checking if CSV files have correct header
· Validations of data:
- Data Quality Rules between data in the same batch (without comparing current and previous values)
- Batch identifier format (in XML)

© 2020 Creditinfo CEE s.r.o.


32 Data Upload Manual

- Data formats
- Mandatory fields

Note: As soon as CBS has checked the Test Batch – it is needed to remove the “T” parameter and send the batch again to
Live environment.

10. Volume Limitations


This paragraph details the restrictions within the system. The following limits must ensure that system will not be
overloaded with huge amount of data at one time. Please follow the parameters below while creating a batch file.

1. Contracts:
Conditions:
· Max. number of subjects (individuals or companies) - 100
· Max. number of collateral - 100
· Max. number of subject relations - 100
Broken conditions:
· such contract will not be saved into database (business rules)

2. Parts (batch is split to parts)


· min. size of part is 1 MB (except first or last part or only part)
· min. size of last part is 1 Mb
· max. size of part is 100 MB
· recommended size 10-50 MB - depends on the quality of communication line

3. Batches
· Daily batch contains max. 5000 contracts.
· Each subscriber must send monthly batch even if it sends full DB on daily basis by the 10th of the next month.

11. Special cases and exceptions


During contract lifetime, there are special cases, when reporting of the changes must be described in deeper details. This
paragraph details the way how to send the data correctly.

11.1 Fixing of incorrect data sent by mistake


In case the data have been sent incorrectly to the system with errors (e.g. mismatch of the phase, wrong amount, etc.), in
order to correct this and restore original status, it is needed to send the same batch again with the same batch identifier
with increased Version Number.

E.g. Bank ABC sent the monthly batch in January 2012 with incorrect data in contract, then it is needed to fix an error,
update the version in the batch identifier and send again:
ABC_201201_M_DEF_1_XML (with error) --> ABC_201201_M_D_2_XML (error fixed)

11.2 How to report granted contract which is not used/activated yet


If the contract is granted to Customer then it must be reported in very next monthly batch (or in very next daily / weekly
batch). The “Phase of Contract” should be reported as “Open”, as there are already agreed and signed services and also
obligations of Customer to pay.

© 2020 Creditinfo CEE s.r.o.


33

There are situations when an Open contract is assigned to Customer, but he still cannot use granted funds: there are for
example some additional conditions to be fulfilled (g. Customer has to prove some additional certification, parties wait
for some formal confirmation of other party as land registry etc.). In such situation the field “Contract Status” should be
set to the value “GrantedButNotActivated”.

Later on, when credit is released and contract is in the standard regime, the field “Contract Status” should be set to the
value “GrantedAndActivated”.

11.3 How to report the contract which is rescheduled or reorganized


There are situations when main parameters of an Open contract are changed. Customer asks for the change of payment
calendar (e.g. prolonging of the contract period), significant change of the Instalment Amount etc. Financial institution
can also change in some cases the basic conditions of the contract.

If main conditions of an Open contract are agreed and changed in such significant way which in fact means that the main
contract parameters are very different compared with previous status, then the contract should be reported with the
field “Contract Status” with value “Rescheduled”.

11.4 How to close the contract


If the Open contract is closed in the internal banking system then it is necessary to report it in very next monthly batch
with different value of field “Phase of Contract”. There are different situations how the contract is closed – even it is
closed in the standard way or client did not pay his obligations fully. All possible situations are described by field
“Contract Status” and related lookup table.

Closed contract should be reported just once. Then, in another batches, system does not expect to get any more updates
of Closed contracts. It is technically possible to update it in the future – but only in case of correction of errors (e.g. when
there were wrong amounts reported in Closed contract; or the contract was Closed by mistake – then Subscriber can
send the update again). See Fixing of incorrect data sent by mistake.

Values to be filled in Closed contract:


Field Value
Phase of Contract Closed
Contract Status Choose value from lookup field ContractStatus, according the real status of Closed contract

11.5 How to update the contract


If there are some errors in data of the contract, it's needed to resend the same batch as it has been sent to the system,
but with the next version number.
See Fixing of incorrect data sent by mistake.

11.6 How to add Customers linked to the contract


If the new Customer should be added to the Customers linked to the contract then it is necessary just to simply add his
personal record to the contract (including his role).

© 2020 Creditinfo CEE s.r.o.


34 Data Upload Manual

11.7 How to remove Customers linked to the contract


If the Customer should be removed from the contract then there are two following situations which should be solved in
different way:

1) If the Customer was linked to the contract by mistake and it is necessary to remove him in order to correct the
information about contract, then it is necessary to fix incorrect batch. See Fixing of incorrect data sent by mistake.

2) If the Customer has been linked to the contract correctly and for any reason his role is finished then his contract
history should be kept and shown in his credit report also in the future (even he will be removed from this contract).
Then the original contract should be Closed and the new one should be opened – please see How to transfer the
contract to another Main Debtor.

© 2020 Creditinfo CEE s.r.o.


35

End of the document

© 2020 Creditinfo CEE s.r.o.

You might also like