diff --git a/lib/compliance-external.js b/lib/compliance-external.js index 9974df29..87436f8f 100644 --- a/lib/compliance-external.js +++ b/lib/compliance-external.js @@ -40,16 +40,16 @@ const getApplicant = (settings, customer) => { } } -const createApplicantAccessToken = (settings, customerId, triggerId) => { +const createApplicantExternalLink = (settings, customerId, triggerId) => { const triggers = configManager.getTriggers(settings.config) const trigger = _.find(it => it.id === triggerId)(triggers) const { plugin } = getPlugin(settings) - return plugin.createApplicantAccessToken({ levelName: trigger.externalServiceApplicantLevel, userId: customerId }) - .then(r => r.data.token) + return plugin.createApplicantExternalLink({ levelName: trigger.externalServiceApplicantLevel, userId: customerId }) + .then(r => r.data.url) } module.exports = { createApplicant, getApplicant, - createApplicantAccessToken + createApplicantExternalLink } diff --git a/lib/graphql/types.js b/lib/graphql/types.js index 7977e522..8d086151 100644 --- a/lib/graphql/types.js +++ b/lib/graphql/types.js @@ -82,6 +82,7 @@ type CustomInput { constraintType: String! label1: String label2: String + label3: String choiceList: [String] } diff --git a/lib/new-admin/graphql/resolvers/externalCompliance.resolver.js b/lib/new-admin/graphql/resolvers/externalCompliance.resolver.js index 76b7a57a..c25afdc7 100644 --- a/lib/new-admin/graphql/resolvers/externalCompliance.resolver.js +++ b/lib/new-admin/graphql/resolvers/externalCompliance.resolver.js @@ -3,8 +3,8 @@ const { loadLatest } = require('../../../new-settings-loader') const resolvers = { Query: { - getApplicantAccessToken: (...[, { customerId, triggerId }]) => loadLatest() - .then(settings => externalCompliance.createApplicantAccessToken(settings, customerId, triggerId)) + getApplicantExternalLink: (...[, { customerId, triggerId }]) => loadLatest() + .then(settings => externalCompliance.createApplicantExternalLink(settings, customerId, triggerId)) } } diff --git a/lib/new-admin/graphql/types/externalCompliance.type.js b/lib/new-admin/graphql/types/externalCompliance.type.js index c8dbc02c..f05f3153 100644 --- a/lib/new-admin/graphql/types/externalCompliance.type.js +++ b/lib/new-admin/graphql/types/externalCompliance.type.js @@ -2,7 +2,7 @@ const { gql } = require('apollo-server-express') const typeDef = gql` type Query { - getApplicantAccessToken(customerId: ID, triggerId: ID): String + getApplicantExternalLink(customerId: ID, triggerId: ID): String } ` diff --git a/lib/plugins/compliance/sumsub/sumsub.js b/lib/plugins/compliance/sumsub/sumsub.js index 7637d170..0fdd9838 100644 --- a/lib/plugins/compliance/sumsub/sumsub.js +++ b/lib/plugins/compliance/sumsub/sumsub.js @@ -17,7 +17,7 @@ const getMissingRequiredFields = (fields, obj) => fields ) -const createApplicantAccessToken = opts => { +const createApplicantExternalLink = opts => { const REQUIRED_FIELDS = ['userId', 'levelName'] if (_.isEmpty(opts) || !hasRequiredFields(REQUIRED_FIELDS, opts)) { @@ -26,8 +26,9 @@ const createApplicantAccessToken = opts => { return request({ method: 'POST', - url: `/resources/accessTokens?userId=${opts.userId}&levelName=${opts.levelName}`, + url: `/resources/sdkIntegrations/levels/${opts.levelName}/websdkLink?ttlInSecs=${600}&externalUserId=${opts.userId}`, headers: { + 'Content-Type': 'application/json', 'Accept': 'application/json' } }) @@ -434,7 +435,7 @@ const getApiHealth = () => { module.exports = { CODE, - createApplicantAccessToken, + createApplicantExternalLink, createApplicant, getApplicant, addIdDocument, diff --git a/lib/routes/customerRoutes.js b/lib/routes/customerRoutes.js index ebf99334..ea9ed016 100644 --- a/lib/routes/customerRoutes.js +++ b/lib/routes/customerRoutes.js @@ -244,9 +244,8 @@ function getExternalComplianceLink (req, res, next) { const triggers = configManager.getTriggers(settings.config) const trigger = _.find(it => it.id === triggerId)(triggers) - return externalCompliance.createApplicantAccessToken(settings, customerId, trigger.id) - .then(token => { - const url = `https://${process.env.NODE_ENV === 'production' ? `${process.env.HOSTNAME}` : `localhost:3001` }/${trigger.externalService}?customer=${customerId}&trigger=${trigger.id}&t=${token}` + return externalCompliance.createApplicantExternalLink(settings, customerId, trigger.id) + .then(url => { process.env.NODE_ENV === 'development' && console.log(url) return respond(req, res, { url: url }) }) diff --git a/new-lamassu-admin/src/routing/routes.js b/new-lamassu-admin/src/routing/routes.js index bf6fdc4c..18876686 100644 --- a/new-lamassu-admin/src/routing/routes.js +++ b/new-lamassu-admin/src/routing/routes.js @@ -16,7 +16,6 @@ import Login from 'src/pages/Authentication/Login' import Register from 'src/pages/Authentication/Register' import Reset2FA from 'src/pages/Authentication/Reset2FA' import ResetPassword from 'src/pages/Authentication/ResetPassword' -import Sumsub from 'src/pages/Compliance/Sumsub' import Dashboard from 'src/pages/Dashboard' import Machines from 'src/pages/Machines' import Wizard from 'src/pages/Wizard' @@ -92,8 +91,7 @@ const Routes = () => { '/login', '/register', '/resetpassword', - '/reset2fa', - '/sumsub' + '/reset2fa' ] if (!wizardTested && !R.contains(location.pathname)(dontTriggerPages)) { @@ -144,7 +142,6 @@ const Routes = () => { - {/* */}