IRQ CBS Batch Upload Manual2 2
IRQ CBS Batch Upload Manual2 2
CB5
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
9. Test batch 31
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.
§ 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.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:
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)
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.
o See more details about structure of output file 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.
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.
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.
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 rules for data reporting are the same as for the Contracts - see chapter Contract Structure for more details.
The rules for data reporting are the same as for the Contracts - see chapter Contract Structure for more details.
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.
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.
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_20171031_D_CON_1_XML OK
BANK_20171031_D_CON_0_XML ERROR
BANK_20171031_D_CON_2_XML ERROR
BANK_201701_M_CON_ BANK_201701_M_CON_ ERROR - versions are the same for the same snapshot
1_XML 1_XML date
· 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
· 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
· 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.
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.
· 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 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.
· BatchIdentifier (unique identification of the batch file) must be filled-in according to the following rules.
Actual version of any XSD schema may be obtained anytime from WS Batch service (public) using web service methods
GetSchema or GetSchemaXML
Note: Validation engine respond with ERROR if there is any problem in mandatory field and with WARNING if there is
problem optional field.
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
For more information please refer to the description of the method GetSchemaXML.
· 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.
· All CSV columns must present in the header, even the data are not available
The web service uses the following external operations (methods) for communication:
The picture below displays the process of using web-service for batch uploading:
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.
6.2 GetSchema
The method returns required XSD schema for input data file in string format .
Input parameters
Parameter Data Type Description
Output parameters
Parameter Data Type Description
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
Output parameters:
Parameter Data Type Description
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
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
Output parameters:
Parameter Data Type Description
Null If Success
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
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.
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
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.
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
Output parameters:
Parameter Data Type Description
BatchResult Enumeration (Lookup) · NotSpecified – batch didn’t get final result yet. Batch processing is
in progress
Inserted DateTime The time when batch was inserted into the system.
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>
</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
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>
<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
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>
</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
Output parameters
Parameter Data Type Description
Or in case of error:
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>
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)
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:
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
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
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.
- 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.
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)
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.
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)
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”.
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”.
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.
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.