Record Disclosure Acceptance

An important requirement when onboarding new customers is telling them about laws and regulations that affect them: that is, you must disclose that regulatory information.

Disclosures and disclosure documents

Banks and regulators need to verify that the required disclosures have been made, so Synctera keeps a record of every disclosure you make to every customer. Our API thus supports the concept of a disclosure record, which we usually just call a disclosure.

The main fields of a disclosure are:

  • person_id or business_id: identifies the relevant customer
  • event_type: describes the customer's level of interaction with the disclosed document
  • type: describes the regulatory requirement that triggered the disclosure
  • version: identifies a particular revision of the disclosed document

Together, type and version uniquely specify a disclosure document. These are represented in Synctera's database, but not currently available via our API. You should have a default set of disclosure documents already available:

disclosure typedocument version
REG_DD1.0
KYC_DATA_COLLECTION1.0
REG_E1.0
REG_CC1.0
E_SIGN1.0
PRIVACY_NOTICE1.0
TERMS_AND_CONDITIONS1.0

You may not need every disclosure type: Synctera's compliance team can help you if need guidance here. See the API reference for more information about disclosure types.

One more thing: Synctera does not currently store actual disclosure documents. Our disclosure documents are just records in a database that refer to documents that you must write and disclose to your customers. A future version of this API will support storage of the documents themselves.

Creating a disclosure record

After you disclose a piece of information to a customer, typically by presenting them with a document that they must read and accept, you need to create a disclosure by calling POST /v0/disclosures. The request body is a disclosure record.

Personal customers

To create a disclosure record for a personal customer:

curl \
  -X POST \
  -H "Authorization: Bearer $apikey" \
  -H 'Content-Type: application/json' \
  https://api.synctera.com/v0/disclosures \
  --data-binary '
  {
    "person_id": "e72f1f20-7a95-4b19-aafc-c73f868183e7",
    "type": "REG_DD",
    "version": "1.0",
    "event_type": "ACKNOWLEDGED",
    "disclosure_date": "2022-03-17T17:04:34Z"
  }'

Business customers

To create a disclosure record for a business customer, specify business_id instead of person_id:

curl \
  -X POST \
  -H "Authorization: Bearer $apikey" \
  -H 'Content-Type: application/json' \
  https://api.synctera.com/v0/disclosures \
  --data-binary '
  {
    "business_id": "d894d64b-d513-42f2-9b3a-2cd5989b6ef8",
    "type": "REG_E",
    "version": "1.1",
    "event_type": "DISPLAYED",
    "disclosure_date": "2022-04-03T10:43:12Z"
  }'

What it means

Together, type and version identify the disclosure document. If this disclosure document does not already exist in Synctera's system, you will get an error. See above for the list of available disclosure documents.

The type and event_type fields are fully described in the API specification.

Response

On success, POST /v0/disclosures returns a 201 Created response with the new disclosure record (including a unique ID). For example, the above request to create a disclosure for a personal customer might return

{
  "id": "08a27c6b-b55f-42c3-8805-f5ad442b0312",
  "creation_time": "2022-04-05T23:29:42.436824Z",
  "last_updated_time": "2022-04-05T23:29:42.436824Z",
  "person_id": "e72f1f20-7a95-4b19-aafc-c73f868183e7",
  "type": "REG_DD",
  "version": "1.0",
  "event_type": "ACKNOWLEDGED",
  "disclosure_date": "2022-03-17T17:04:34Z"
}

Retrieval

After creating disclosures, you can list them or retrieve individual records. Get a paginated list all disclosure records across your customer base:

GET /v0/disclosures

You can filter by person_id or business_id to limit the result
to a single customer:

GET /v0/disclosures?person_id={person_id}

GET /v0/disclosures?business_id={business_id}

And you can fetch a single disclosure record by ID:

GET /v0/disclosures/{disclosure_id}

API reference documentation: