API Explorer

Forty Seven Bank Project APIs v3.0.0 tagged: KYC, Onboarding (12)

Bank

Accounts

Views

Counterparties

Transactions

Add KYC Check

Add a KYC check for the customer specified by CUSTOMER_ID. KYC Checks store details of checks on a customer made by the KYC team, their comments and a satisfied status.

Typical Successful Response:

								
									
{ "bank_id":"PlaceholderString", "customer_id":"PlaceholderString", "id":"PlaceholderString", "customer_number":"PlaceholderString", "date":"2013-01-22T00:08:00Z", "how":"PlaceholderString", "staff_user_id":"PlaceholderString", "staff_name":"PlaceholderString", "satisfied":true, "comments":"PlaceholderString" }
Possible Errors:
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-10001: Incorrect json format.
  • OBP-30111: Invalid Bank Id. The BANK_ID should only contain 0-9/a-z/A-Z/'-'/'.'/'_', the length should be smaller than 255.
  • OBP-30001: Bank not found. Please specify a valid value for BANK_ID.
  • OBP-30002: Customer not found. Please specify a valid value for CUSTOMER_ID.
  • OBP-00004: Server error: could not add message
  • OBP-50000: Unknown Error.
Implmented in 2_0_0 by addKycCheck

Add KYC Document.

Add a KYC document for the customer specified by CUSTOMER_ID. KYC Documents contain the document type (e.g. passport), place of issue, expiry etc.

Typical Successful Response:

								
									
{ "bank_id":"PlaceholderString", "customer_id":"PlaceholderString", "id":"PlaceholderString", "customer_number":"PlaceholderString", "type":"PlaceholderString", "number":"PlaceholderString", "issue_date":"2013-01-22T00:08:00Z", "issue_place":"PlaceholderString", "expiry_date":"2013-01-22T00:08:00Z" }
Possible Errors:
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-10001: Incorrect json format.
  • OBP-30111: Invalid Bank Id. The BANK_ID should only contain 0-9/a-z/A-Z/'-'/'.'/'_', the length should be smaller than 255.
  • OBP-30001: Bank not found. Please specify a valid value for BANK_ID.
  • OBP-30002: Customer not found. Please specify a valid value for CUSTOMER_ID.
  • Server error: could not add KycDocument
  • OBP-50000: Unknown Error.
Implmented in 2_0_0 by addKycDocument

Add KYC Media.

Add some KYC media for the customer specified by CUSTOMER_ID. KYC Media resources relate to KYC Documents and KYC Checks and contain media urls for scans of passports, utility bills etc.

Typical Successful Response:

								
									
{ "bank_id":"PlaceholderString", "customer_id":"PlaceholderString", "id":"PlaceholderString", "customer_number":"PlaceholderString", "type":"PlaceholderString", "url":"PlaceholderString", "date":"2013-01-22T00:08:00Z", "relates_to_kyc_document_id":"PlaceholderString", "relates_to_kyc_check_id":"PlaceholderString" }
Possible Errors:
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-10001: Incorrect json format.
  • OBP-30111: Invalid Bank Id. The BANK_ID should only contain 0-9/a-z/A-Z/'-'/'.'/'_', the length should be smaller than 255.
  • OBP-30002: Customer not found. Please specify a valid value for CUSTOMER_ID.
  • OBP-00004: Server error: could not add message
  • OBP-50000: Unknown Error.
Implmented in 2_0_0 by addKycMedia

Add KYC Status

Add a kyc_status for the customer specified by CUSTOMER_ID. KYC Status is a timeline of the KYC status of the customer

Typical Successful Response:

								
									
{ "customer_id":"PlaceholderString", "customer_number":"PlaceholderString", "ok":true, "date":"2013-01-22T00:08:00Z" }
Possible Errors:
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-10001: Incorrect json format.
  • OBP-30111: Invalid Bank Id. The BANK_ID should only contain 0-9/a-z/A-Z/'-'/'.'/'_', the length should be smaller than 255.
  • OBP-50000: Unknown Error.
  • OBP-30001: Bank not found. Please specify a valid value for BANK_ID.
  • OBP-00004: Server error: could not add message
  • OBP-30002: Customer not found. Please specify a valid value for CUSTOMER_ID.
Implmented in 2_0_0 by addKycStatus

Get Customer KYC Checks

Get KYC checks for the Customer specified by CUSTOMER_ID.

Authentication is Mandatory

Typical Successful Response:

								
									
{ "checks":[{ "bank_id":"PlaceholderString", "customer_id":"PlaceholderString", "id":"PlaceholderString", "customer_number":"PlaceholderString", "date":"2013-01-22T00:08:00Z", "how":"PlaceholderString", "staff_user_id":"PlaceholderString", "staff_name":"PlaceholderString", "satisfied":true, "comments":"PlaceholderString" }] }
Possible Errors:
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-30002: Customer not found. Please specify a valid value for CUSTOMER_ID.
  • OBP-50000: Unknown Error.
Implmented in 2_0_0 by getKycChecks

Get Customer KYC Documents

Get KYC (know your customer) documents for a customer specified by CUSTOMER_ID Get a list of documents that affirm the identity of the customer Passport, driving licence etc. Authentication is Optional

Typical Successful Response:

								
									
{ "documents":[{ "bank_id":"PlaceholderString", "customer_id":"PlaceholderString", "id":"PlaceholderString", "customer_number":"PlaceholderString", "type":"PlaceholderString", "number":"PlaceholderString", "issue_date":"2013-01-22T00:08:00Z", "issue_place":"PlaceholderString", "expiry_date":"2013-01-22T00:08:00Z" }] }
Possible Errors:
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-30002: Customer not found. Please specify a valid value for CUSTOMER_ID.
  • OBP-50000: Unknown Error.
Implmented in 2_0_0 by getKycDocuments

Get Customer KYC statuses

Get the KYC statuses for a customer specified by CUSTOMER_ID over time.

Authentication is Mandatory

Typical Successful Response:

								
									
{ "statuses":[{ "customer_id":"PlaceholderString", "customer_number":"PlaceholderString", "ok":true, "date":"2013-01-22T00:08:00Z" }] }
Possible Errors:
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-30002: Customer not found. Please specify a valid value for CUSTOMER_ID.
  • OBP-50000: Unknown Error.
Implmented in 2_0_0 by getKycStatuses

Get KYC Media for a customer

Get KYC media (scans, pictures, videos) that affirms the identity of the customer.

Authentication is Mandatory

Typical Successful Response:

								
									
{ "medias":[{ "bank_id":"PlaceholderString", "customer_id":"PlaceholderString", "id":"PlaceholderString", "customer_number":"PlaceholderString", "type":"PlaceholderString", "url":"PlaceholderString", "date":"2013-01-22T00:08:00Z", "relates_to_kyc_document_id":"PlaceholderString", "relates_to_kyc_check_id":"PlaceholderString" }] }
Possible Errors:
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-30002: Customer not found. Please specify a valid value for CUSTOMER_ID.
  • OBP-50000: Unknown Error.
Implmented in 2_0_0 by getKycMedia

Create Meeting (video conference/call)

Create Meeting: Initiate a video conference/call with the bank.

The Meetings resource contains meta data about video/other conference sessions, not the video/audio/chat itself.

The actual conferencing is handled by external providers. Currently OBP supports tokbox video conferences (WIP).

This is not a recomendation of tokbox per se.

provider_id determines the provider of the meeting / video chat service. MUST be url friendly (no spaces).

purpose_id explains the purpose of the chat. onboarding | mortgage | complaint etc. MUST be url friendly (no spaces).

Login is required.

This call is experimental. Currently staff_user_id is not set. Further calls will be needed to correctly set this.

Typical Successful Response:

								
									
{ "meeting_id":"String", "provider_id":"String", "purpose_id":"String", "bank_id":"String", "present":{ "staff_user_id":"String", "customer_user_id":"String" }, "keys":{ "session_id":"String", "staff_token":"String", "customer_token":"String" }, "when":"2013-01-22T00:08:00Z" }
Possible Errors:
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-30102: Meeting provider API Key is not configured.
  • OBP-30103: Meeting provider Secret is not configured.
  • OBP-30111: Invalid Bank Id. The BANK_ID should only contain 0-9/a-z/A-Z/'-'/'.'/'_', the length should be smaller than 255.
  • OBP-30001: Bank not found. Please specify a valid value for BANK_ID.
  • OBP-10001: Incorrect json format.
  • OBP-30101: Meetings are not supported on this server.
  • OBP-50000: Unknown Error.
Implmented in 2_0_0 by createMeeting

Get Meeting

Get Meeting specified by BANK_ID / MEETING_ID Meetings contain meta data about, and are used to facilitate, video conferences / chats etc.

The actual conference/chats are handled by external services.

Login is required.

This call is experimental and will require further authorisation in the future.

Typical Successful Response:

								
									
{ "meeting_id":"String", "provider_id":"String", "purpose_id":"String", "bank_id":"String", "present":{ "staff_user_id":"String", "customer_user_id":"String" }, "keys":{ "session_id":"String", "staff_token":"String", "customer_token":"String" }, "when":"2013-01-22T00:08:00Z" }
Possible Errors:
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-30001: Bank not found. Please specify a valid value for BANK_ID.
  • OBP-30102: Meeting provider API Key is not configured.
  • OBP-30103: Meeting provider Secret is not configured.
  • OBP-30104: Meeting not found.
  • OBP-30101: Meetings are not supported on this server.
  • OBP-50000: Unknown Error.
Implmented in 2_0_0 by getMeeting

Get Meetings

Meetings contain meta data about, and are used to facilitate, video conferences / chats etc.

The actual conference/chats are handled by external services.

Login is required.

This call is experimental and will require further authorisation in the future.

Typical Successful Response:

								
									
{ "meetings":[{ "meeting_id":"String", "provider_id":"String", "purpose_id":"String", "bank_id":"String", "present":{ "staff_user_id":"String", "customer_user_id":"String" }, "keys":{ "session_id":"String", "staff_token":"String", "customer_token":"String" }, "when":"2013-01-22T00:08:00Z" }] }
Possible Errors:
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-30102: Meeting provider API Key is not configured.
  • OBP-30103: Meeting provider Secret is not configured.
  • OBP-30001: Bank not found. Please specify a valid value for BANK_ID.
  • OBP-30101: Meetings are not supported on this server.
  • OBP-50000: Unknown Error.
Implmented in 2_0_0 by getMeetings

Create User.

Creates OBP user. No authorisation (currently) required.

Mimics current webform to Register.

Requires username(email) and password.

Returns 409 error if username not unique.

May require validation of email address.

Typical Successful Response:

								
									
{ "user_id":"5995d6a2-01b3-423c-a173-5481df49bdaf", "email":"robert.x.0.gh@example.com", "provider_id":"OBP", "provider":"OBP", "username":"robert.x.0.gh", "entitlements":{ "list":[{ "entitlement_id":"6fb17583-1e49-4435-bb74-a14fe0996723", "role_name":"CanQueryOtherUser", "bank_id":"gh.29.uk" }] } }
Possible Errors:
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-10001: Incorrect json format.
  • OBP-30207: Invalid Password Format. Your password should EITHER be at least 10 characters long and contain mixed numbers and both upper and lower case letters and at least one special character, OR be longer than 16 characters.
  • Error occurred during user creation.
  • User with the same username already exists.
  • OBP-50000: Unknown Error.
Implmented in 2_0_0 by createUser