Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Sumsub Client Laravel Package

alexeevdv/sumsub-client

Laravel/PHP client for Sumsub API integration. Provides simple requests and helpers to manage applicants and verifications, submit documents, and handle webhook callbacks/signature validation, making it easier to connect your app to Sumsub KYC/AML workflows.

View on GitHub
Deep Wiki
Context7

sumsub-client

PHP 7.1 PHP 7.2 PHP 7.3 PHP 7.4 PHP 8.0 PHP 8.1

API client for sumsub.com

Installation

composer require alexeevdv/sumsub-client

Client configuration

Client works with any PSR-18 compatible HTTP client and require PSR-17 HTTP factory.

use alexeevdv\SumSub\Client;
use alexeevdv\SumSub\Request\RequestSigner;

$requestSigner = new RequestSigner('Your APP token', 'Your secret');

$client = new Client(
    $psr18HttpClient,
    $psr17HttpFactory,
    $requestSigner
);

Getting SDKs access token

use alexeevdv\SumSub\Request\AccessTokenRequest;

$externalUserId = 'some-id';
$levelName = 'some-level';
$ttlInSeconds = 3600;
$response = $client->getAccessToken(new AccessTokenRequest($externalUserId, $levelName, $ttlInSeconds));
$accessToken = $response->getToken();

Getting applicant data by applicant id

use alexeevdv\SumSub\Request\ApplicantDataRequest;

$applicantId = 'some-id';
$response = $client->getApplicantData(new ApplicantDataRequest($applicantId));
$applicantData = $response->asArray();

Getting applicant data by external user id

use alexeevdv\SumSub\Request\ApplicantDataRequest;

$externalUserId = 'some-id';
$response = $client->getApplicantData(new ApplicantDataRequest(null, $externalUserId));
$applicantData = $response->asArray();

Resetting an applicant

use alexeevdv\SumSub\Request\ResetApplicantRequest;

$applicantId = 'some-id';
$client->resetApplicant(new ResetApplicantRequest($applicantId));

Getting applicant status

use alexeevdv\SumSub\Request\ApplicantStatusRequest;

$applicantId = 'some-id';
$response = $client->getApplicantStatus(new ApplicantStatusRequest($applicantId));
$applicantStatus = $response->asArray();

Getting document images

use alexeevdv\SumSub\Request\DocumentImageRequest;

$inspectionId = 'some-id';
$imageId = '123';
$response = $client->getDocumentImages(new DocumentImageRequest($inspectionId, $imageId));
$stream = $response->asStream();
$conentType = $response->getContentType();

Getting inspection checks

use alexeevdv\SumSub\Request\InspectionChecksRequest;

$inspectionId = 'some-id';
$response = $client->getInspectionChecks(new InspectionChecksRequest($inspectionId));
$checksData = $response->asArray();
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
besmartand-pro/php-quality-config
sentix/ai-chatbot
terminal42/code-quality-tools
codifyo/ts-generator-bundle
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity