Releases: getyoti/yoti-java-sdk
Releases · getyoti/yoti-java-sdk
v3.2.1
v3.2.0
v3.1.0
v3.0.0
Changes
Use of ServiceLocator
- The use of the
ServiceLocatorclass has been dropped in order to simplify the development process of the SDK. - The
yoti-sdk-apiandyoti-sdk-implmodules have been merged, with theyoti-sdk-implmodule then being removed.
Builders
All builders have now been in-lined into their respective classes, and the use of factories has been dropped (they are no longer neccessary due to the removal of the use of ServiceLocator). Example below:
YotiClient client = YotiClientBuilder.newInstance().build() // OLD
YotiClient client = YotiClient.builder().build() // NEWv2.12.0
v2.11.0
Added
Doc Scan
- Support for supplementary documents
- Allow retrieval of frame for an ID document page
- Support for retrieval of document ID photo from an ID document
- Sandbox support for setting document ID photo for ID document
- Sandbox support for configuring in-session feedback
v2.10.0
Added
Doc Scan
- Support for ID document comparison checks
- Sandbox support has also been added for setting expectations for ID document comparison checks
- Ability to block the collection of bio-metric consent
- Allow the configuration of the
manual_checkvalue for requested Document Authenticity checks
v2.9.0
Added
- Support for Yoti Doc Scan Sandbox
- New client
DocScanSandboxClientwhich can be used to set the response configuration for a given session, or default response for an application.
- New client
Doc Scan Sandbox Example
import com.yoti.api.client.sandbox.docs.DocScanSandboxClient;
import com.yoti.api.client.sandbox.docs.request.check.report.SandboxRecommendation;
import com.yoti.api.client.sandbox.docs.request.check.report.SandboxBreakdown;
import com.yoti.api.client.sandbox.docs.request.check.SandboxDocumentAuthenticityCheck;
import com.yoti.api.client.sandbox.docs.request.check.SandboxDocumentTextDataCheck;
import com.yoti.api.client.sandbox.docs.request.check.SandboxDocumentFaceMatchCheck;
import com.yoti.api.client.sandbox.docs.request.check.SandboxLivenessCheck;
import com.yoti.api.client.sandbox.docs.request.ResponseConfig;
import com.yoti.api.client.sandbox.docs.request.SandboxCheckReports;
import com.yoti.api.client.sandbox.docs.request.SandboxTaskResults;
import com.yoti.api.client.sandbox.docs.request.task.SandboxDocumentTextDataExtractionTask;
HashMap documentFields = new HashMap<>();
documentFields.put("full_name", "firstValue");
documentFields.put("nationality", "GBR");
documentFields.put("date_of_birth", "1986-06-01");
documentFields.put("document_number", "123456789");
SandboxDocumentFilter documentFilter = SandboxDocumentFilter.builder()
.withCountryCode("GBR")
.withDocumentType("PASSPORT")
.build();
ResponseConfig responseConfig = ResponseConfig.builder()
.withCheckReports(
SandboxCheckReports.builder()
.withAsyncReportDelay(10)
.withDocumentAuthenticityCheck(
SandboxDocumentAuthenticityCheck.builder()
.withBreakdown(
SandboxBreakdown.builder()
.withSubCheck("security_features")
.withResult("NOT_AVAILABLE")
.withDetail("some_detail", "some_detail_value")
.build()
)
.withRecommendation(
SandboxRecommendation.builder()
.withValue("NOT_AVAILABLE")
.withReason("PICTURE_TOO_DARK")
.withRecoverySuggestion("BETTER_LIGHTING")
.build()
)
.withDocumentFilter(documentFilter)
.build()
)
.withDocumentFaceMatchCheck(
SandboxDocumentFaceMatchCheck.builder()
.withBreakdown(
SandboxBreakdown.builder()
.withSubCheck("security_features")
.withResult("PASS")
.build()
)
.withRecommendation(
SandboxRecommendation.builder()
.withValue("APPROVE")
.build()
)
.withDocumentFilter(documentFilter)
.build()
)
.withDocumentTextDataCheck(
SandboxDocumentTextDataCheck.builder()
.withBreakdown(
SandboxBreakdown.builder()
.withSubCheck("document_in_date")
.withResult("PASS")
.build()
)
.withRecommendation(
SandboxRecommendation.builder()
.withValue("APPROVE")
.build()
)
.withDocumentFilter(documentFilter)
.withDocumentFields(documentFields)
.build()
)
.withLivenessCheck(
SandboxLivenessCheck.forZoomLiveness()
.withBreakdown(
SandboxBreakdown.builder()
.withSubCheck("security_features")
.withResult("PASS")
.build()
)
.withRecommendation(
SandboxRecommendation.builder()
.withValue("APPROVE")
.build()
)
.build()
)
.build()
)
.withTaskResults(
SandboxTaskResults.builder()
.withDocumentTextDataExtractionTask(
SandboxDocumentTextDataExtractionTask.builder()
.withDocumentFields(documentFields)
.withDocumentFilter(documentFilter)
.build()
)
.build()
)
.build();
DocScanSandboxClient client = DocScanSandboxClient.builder()
.withSdkId("SANDBOX_CLIENT_SDK_ID")
.withKeyPair(keyPairSource)
.build();
client.configureSessionResponse(sessionId, responseConfig);v2.8.0
Added
Doc Scan
- Support for multiple documents - relying businesses can now add required documents when creating a session.
- Added methods to certain response classes that filter checks, resources e.g.
getAuthenticityChecks() - Added an example project for using the Java SDK with Doc Scan