В документе описывается сервис АО «Государственное кредитное бюро» (далее - ГКБ) сервис по верификации и оценки платежной дисциплины (далее - Сервис), методы запроса данных, примеры входных и выходных SOAP-запросов, возможные ошибки.
Описание сервиса InsurancePolicy
Сервис InsurancePolicy предназначен для получения сведений по страховому полису «Обязательного страхования гражданской правовой ответственности Владельцев Транспортных Средств» (далее ОСГПО ВТС).
При вызове веб-сервиса обязательно указываются следующие параметры:
1. ID и пароль клиента (организации) в HTTP Header, необходимые для базовой аутентификации. Так как коммуникация с веб-сервисами системы идет по защищенному протоколу HTTPS, то базовая аутентификация представляется безопасным решением.
2. ID пользователя, от имени которого будет выполнена запрашиваемая операция в SOAP Header:
Http Headers: {Authorization=[Basic c3ZjUnB0U3lzdGVtQWNjb3VudDpBbzZVRkdyVTZ2]}
SOAP Message: [Показать ответ]
1. <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:data="http://data.gbd.chdb.scb.kz/">
2. <soapenv:Header>
3. <userId> xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx </userId>
4. </soapenv:Header>
5. <soapenv:Body>
6. <data:getInsurancePolicyXml>
Состав данных запроса метода getInsurancePolicyPdf
Состав данных запроса метода getInsurancePolicyPdf [Показать ответ]
№
|
Наименование
|
Поле
|
Формат
|
Обязательность
|
Примечание
|
Блок входных параметров
(request)
|
1
|
ИИН субъекта
|
request → iin
|
xs:string
|
Да
|
Значение должно содержать 12 цифр.
|
2
|
Язык
|
request → language
|
xs:string
|
Да
|
Получение информации на языках: kk –Казахский, ru – Русский, en – Английский
|
3
|
Тип отчета
|
request → reportType
|
xs:int
|
Да
|
Заполнить любыми цифрами
|
4
|
Имя пользователя
|
request → senderId
|
xs:int
|
Да
|
Отличительное имя пользователя
|
5
|
Пароль
|
request → password
|
xs:int
|
Да
|
Указать пароль
|
6
|
Количество дней
|
request → consentConfirmed
|
xs:int
|
Да
|
Подтверждение субъекта
|
Состав данных запроса метода getInsurancePolicyXml
Состав данных запроса метода getInsurancePolicyXml [Показать ответ]
№
|
Наименование
|
Поле
|
Формат
|
Обязательность
|
Примечание
|
Блок входных параметров
(request)
|
1
|
ИИН субъекта
|
request → iin
|
xs:string
|
Да
|
Значение должно содержать 12 цифр.
|
2
|
Язык
|
request → language
|
xs:string
|
Да
|
Получение информации на языках: kk –Казахский, ru – Русский, en – Английский
|
3
|
Тип отчета
|
request → reportType
|
xs:int
|
Да
|
Заполнить любыми цифрами
|
4
|
Имя пользователя
|
request → senderId
|
xs:int
|
Да
|
Отличительное имя пользователя
|
5
|
Пароль
|
request → password
|
xs:int
|
Да
|
Указать пароль
|
6
|
Количество дней
|
request → consentConfirmed
|
xs:int
|
Да
|
Подтверждение субъекта
|
Пример вызова метода getInsurancePolicyPdf с помощью SOAP запроса имеет следующий вид:
Пример вызова метода getInsurancePolicyPdf с помощью SOAP запроса имеет следующий вид: [Показать ответ]
1. <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:data="http://data.gbd.chdb.scb.kz/">
2. <soapenv:Header>
3. <userId>Ваш userId</userId>
4. </soapenv:Header>
5. <soapenv:Body>
6. <data:getInsurancePolicyPdf>
7. <iinBin>Иин субъекта</iinBin>
8. <language>указать язык</language>
9. <reportType>123</reportType>
10. <senderId>логин</senderId>
11. <password>пароль</password>
12. <consentConfirmed>согласие субъекта</consentConfirmed>
13. </data:getInsurancePolicyPdf>
14. </soapenv:Body>
15. </soapenv:Envelope>
Пример вызова метода getInsurancePolicyXml с помощью SOAP запроса имеет следующий вид:
Пример вызова метода getInsurancePolicyXml с помощью SOAP запроса имеет следующий вид: [Показать ответ]
1. <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:data="http://data.gbd.chdb.scb.kz/">
2. <soapenv:Header>
3. <userId>Ваш userId</userId>
4. </soapenv:Header>
5. <soapenv:Body>
6. <data:getInsurancePolicyPdf>
7. <iinBin>Иин субъекта</iinBin>
8. <language> указать язык </language>
9. <reportType>123</reportType>
10. <senderId>логин</senderId>
11. <password>пароль</password>
12. <consentConfirmed>согласие субъекта</consentConfirmed>
13. </data:getInsurancePolicyPdf>
14. </soapenv:Body>
15. </soapenv:Envelope>
Пример успешного ответа на вызов метода getInsurancePolicyXml с помощью SOAP запроса имеет следующий вид:
Пример успешного ответа на вызов метода getInsurancePolicyXml с помощью SOAP запроса имеет следующий вид: [Показать ответ]
1. <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
2. <soap:Body>
3. <ns2:getInsurancePolicyXmlResponse xmlns:ns2="http://data.gbd.chdb.scb.kz/" xmlns:ns3="http://bip.bee.kz/SyncChannel/v10/Types">
4. <return>
5. <response>
6. <responseInfo>
7. <sessionId>Текущая сессия</sessionId>
8. </responseInfo>
9. <responseData>
10. <data xmlns:typ="http://bip.bee.kz/SyncChannel/v10/Types">
11. <status>Запрос успешно обработан</status>
12. <responseResult>Результат</responseResult>
13. <qrCode>QR-Код</qrCode>
14. <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
15. <ds:SignedInfo>
16. <ds:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
17. <ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#gost34310-gost34311"/>
18. <ds:Reference URI="">
19. <ds:Transforms>
20. <ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
21. <ds:Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments"/>
22. </ds:Transforms>
23. <ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#gost34311"/>
24. <ds:DigestValue>Ваш Сгенерированный-DigestValue</ds:DigestValue>
25. </ds:Reference>
26. </ds:SignedInfo>
27. <ds:SignatureValue>Ваш Сгенерированный-SignatureValue</ds:SignatureValue>
28. <ds:KeyInfo>
29. <ds:X509Data>
30. <ds:X509Certificate>Ваш Сертификат-X509Certificate</ds:X509Certificate>
31. </ds:X509Data>
32. </ds:KeyInfo>
33. </ds:Signature>
34. </data>
35. </responseData>
36. </response>
37. </return>
38. </ns2:getInsurancePolicyXmlResponse>
39. </soap:Body>
40. </soap:Envelope>
Пример успешного ответа на вызов метода getInsurancePolicyPDFс помощью SOAP запроса имеет следующий вид:
Пример успешного ответа на вызов метода getInsurancePolicyPDFс помощью SOAP запроса имеет следующий вид: [Показать ответ]
Пример успешного ответа на вызов метода getInsurancePolicyPDFс помощью SOAP запроса имеет следующий вид: в ответе метода getInsurancePolicyPDF строка <qrCode> не предоставлен т.к оно защита внутри сгенерированного PDF файла в строке <responseResult>
1. <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
2. <soap:Body>
3. <ns2:getInsurancePolicyPdfResponse xmlns:ns2="http://data.gbd.chdb.scb.kz/" xmlns:ns3="http://bip.bee.kz/SyncChannel/v10/Types">
4. <return>
5. <response>
6. <responseInfo>
7. <sessionId> Текущая сессия </sessionId>
8. </responseInfo>
9. <responseData>
10. <data xmlns:typ="http://bip.bee.kz/SyncChannel/v10/Types">
11. <status>Запрос успешно обработан, PDF сгенерирова в виде BASE64</status>
12. <responseResult>Результат</responseResult>
13. <qrCode xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
14. <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
15. <ds:SignedInfo>
16. <ds:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
17. <ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#gost34310-gost34311"/>
18. <ds:Reference URI="">
19. <ds:Transforms>
20. <ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
21. <ds:Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments"/>
22. </ds:Transforms>
23. <ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#gost34311"/>
24. <ds:DigestValue> Ваш Сгенерированный-DigestValue </ds:DigestValue>
25. </ds:Reference>
26. </ds:SignedInfo>
27. <ds:SignatureValue> Ваш Сгенерированный-SignatureValue </ds:SignatureValue>
28. <ds:KeyInfo>
29. <ds:X509Data>
30. <ds:X509Certificate> Ваш Сертификат-X509Certificate </ds:X509Certificate>
31. </ds:X509Data>
32. </ds:KeyInfo>
33. </ds:Signature>
34. </data>
35. </responseData>
36. </response>
37. </return>
38. </ns2:getInsurancePolicyPdfResponse>
39. </soap:Body>
40. </soap:Envelope>
Пример ответа на вызов метода InsurancePolicy с помощью SOAP запроса в случае, если не заполнено обязательное поле ИИН, имеет следующий вид:
Пример ответа на вызов метода InsurancePolicy с помощью SOAP запроса в случае, если не заполнено обязательное поле ИИН, имеет следующий вид: [Показать ответ]
1. <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
2. <SOAP-ENV:Header xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"/>
3. <soap:Body>
4. <soap:Fault>
5. <faultcode>soap:Server</faultcode>
6. <faultstring>Ошибки:</faultstring>
7. <detail>
8. <ns2:ValidationFault xmlns:ns2="http://scoring.chdb.scb.kz">
9. <constraintViolations>
10. <code>VAL-JSR-001</code>
11. <description>Обязательное поле "иин" отсутствует.</description>
12. <placeholders>иин</placeholders>
13. </constraintViolations>
14. </ns2:ValidationFault>
15. </detail>
16. </soap:Fault>
17. </soap:Body>
18. </soap:Envelope>
Пример ответа на вызов метода InsurancePolicy с помощью SOAP запроса в случае, если отсутствует права пользователя, имеет следующий вид:
Пример ответа на вызов метода InsurancePolicy с помощью SOAP запроса в случае, если отсутствует права пользователя, имеет следующий вид: [Показать ответ]
1. <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
2. <soap:Body>
3. <soap:Fault>
4. <faultcode>soap:Server</faultcode>
5. <faultstring>Пользователь xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx не имеет прав для выполнения действия</faultstring>
6. <detail>
7. <ns2:ScbException xmlns:ns2="http://data.gbd.chdb.scb.kz/" xmlns:ns3="http://bip.bee.kz/SyncChannel/v10/Types">
8. <faultCode>SBF-AD-1</faultCode>
9. </ns2:ScbException>
10. </detail>
11. </soap:Fault>
12. </soap:Body>
13. </soap:Envelope>
Пример ответа на вызов метода InsurancePolicy с помощью SOAP запроса в случае, если отсутствует обязательное поле, имеет следующий вид:
Пример ответа на вызов метода InsurancePolicy с помощью SOAP запроса в случае, если отсутствует обязательное поле, имеет следующий вид: [Показать ответ]
1. <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
2. <soap:Body>
3. <soap:Fault>
4. <faultcode>soap:Server</faultcode>
5. <faultstring> " Обязательное поле " отсутствует</faultstring>
6. <detail>
7. <ns2:ScbException xmlns:ns2="http://data.gbd.chdb.scb.kz/" xmlns:ns3="http://bip.bee.kz/SyncChannel/v10/Types">
8. <faultCode>VAL-JSR-001</faultCode>
9. </ns2:ScbException>
10. </detail>
11. </soap:Fault>
12. </soap:Body>
13. </soap:Envelope>
Обработка исключений метода InsurancePolicy
Отчет содержит следующие блоки: [Показать ответ]
Код/Текст ошибки/сообщения
|
Описание ошибки/сообщения
|
Примечание
|
SBF-AD-1
|
Пользователь %s не имеет прав для выполнения действия
|
|
SBF-VE-8
|
Номер "ИИН" должен содержать 12 цифр
|
|
VAL-JSR-001
|
Значение обязательного поля "%s" не должно быть пустым
|
|
VAL-JSR-001
|
Обязательное поле "%s" отсутствует
|
|
VAL-R-003
|
Для получение отчета необходимо подтвердить согласие субъекта на запрос его кредитной истории
|
|