API Overview

chevron-down-icon chevron-up-icon

With Apex NZ’s onboarding and post-onboarding API’s, you can develop your own investment related applications to securely signup investors, share with them a historical view of their investment data and enable a level of self-management.

Our API’s handle the synchronisation of data between data sources, access to required third party services and all aspects of user management. User management can also be performed by the client application if required.

There are a number of API’s that can be utilised in both the onboarding and the ongoing management of investors and their investments.

Onboarding

Apex NZ's onboarding API takes an automated approach to the registry workflow. Utilising a mixture of proprietary and third party services, developers can integrate into a workflow which:

  • Validates and verifies AML and residential addresses data in real-time.
  • Provides a configurable setup to meet a range of client / investment requirements.
  • Triggers communication checkpoints at different stages of the onboaring process so visibility is at the forefront.
  • Accepts multi-invesmtent, bank account and direct debit set up data.

NeXus - Investors and Investments

Apex NZ's post onboarding API provides developers the ability to retrieve and update existing investors data. Developers are able to:

  • Present historical investor data from date of inception to current date. (Updated daily). Please note: This is not a bulk API
  • Show a view of multiple linked investors and investments.
  • Update customer details and add transactions.
  • Provide the ability for a customer to manage their account.
  • A secure environment for an investor to view their investment data.

Onboarding API Flow

chevron-down-icon chevron-up-icon

Apex NZ's onboarding flow follows a series of four stages. These stages perform specific onboarding requirements ranging from AML checking to internal peer peviews. These stages can be configured to meet specific client and compliance requirements. The diagram and information below describe each stage and the functions they provides.

  1. Application Review

    This stage:

    • Checks all required fields have valid data so that applications can be saved to NeXus. e.g. Investment data, tax information etc.
    • Enables manual data input

    Returns:

    • Stage Success or Fail
    • List of all missing fields
  2. AML check

    This stage:

    • Checks that all fields required for AML check are completed
    • Passes application data to CloudCheck’s AML API service
    • Performs manual AML if required (Apex NZ use only)

    Returns:

    • Stage Success or Fail (with list of missing fields and specific errors)
    • AML report attached to application (PDF)
    • Automated email workflow if AML delivers a failed result (including partial passes)
  1. Peer Review

    This stage:

    • Apex NZ internal stage for reviewing any data manually entered into applications by the Apex NZ team

    Returns:

    • Approved or Denied
    • Automated workflow to correct errors if denied (incl. emails to originally editor)
  2. Completed

    This stage:

    • Validates all data fields and workflow statuses
    • Saves completed applications into NeXus
    • Uploads attached documents to cloud storage

    Returns:

    • Stage Success or Fail
    • NeXus Beneficiary ID
    • Locks application so it can’t be edited
    • Completion email (Release 2)

NeXus Static Data Updates and Transactions

chevron-down-icon chevron-up-icon

Once investors and investments have been onboarded, certain updates or new transactions can be handled by the API. This API enables a wealth of data to be retrieved and allows a subset of that information to be updated. Our Swagger site contains all the data that can be retrieved via the API.

 

Field / Type Via the API Updated

Fields that can be updated via the NeXus API

The below table highlights what fields / data can be updated via the API and duration when those updates will be visible.

Preferred name Instant
PIR Rate
Primary Phone NumberInstant
Primary AddressInstant
Transactions - ApplicationsOvernight
Transactions - RedemptionsOvernight
Transactions - Custom Profile RebalanceOvernight

Required Fields

chevron-down-icon chevron-up-icon

Beneficiary and AML

The required fields for AML depend on the type of identification document supplied e.g. Driver's Licence requires Driver's Licence Number and Version

Field Data type Required AML

All Beneficiaries

Beneficiary.LastNameString
Beneficiary.PreferredNameString 1
Beneficiary.EmailString
Beneficiary.PreferredCommString
Beneficiary.IRDNoString
Beneficiary.InvestorTypeString 4
Beneficiary.NationString 2
Beneficiary.ExternalReferenceString 3
Beneficiary.PIRRateNumber
Beneficiary.TaxResidentBoolean
Beneficiary.IsUSTaxResidentBoolean
Beneficiary.TINNumberString
Beneficiary.TINCountryString 2
Beneficiary.TINNumber2String
Beneficiary.TINCountry2String 2
Beneficiary.TINNumber3String
Beneficiary.TINCountry3String 2
Beneficiary.RiskString 4
Beneficiary.SouthOfWealthString 4
Beneficiary.UserDefined1String
to...
Beneficiary.UserDefined10String

Individual Beneficiaries

Beneficiary.FirstNameString
Beneficiary.MiddleNameString
Beneficiary.DateOfBirthString
Beneficiary.GenderString
Beneficiary.TitleString
Beneficiary.PlaceOfBirthString 2
Beneficiary.IdVerifiedBoolean
Beneficiary.NotifiedForeignInvestorBoolean
Beneficiary.OccupationString 4
Beneficiary.OccupationStatusString 4

Entity Beneficiaries

Beneficiary.GIINString
Beneficiary.FATCATypeString 4
Beneficiary.CompanyNumberString

1 If the Preferred Name is not supplied then NeXus will use FirstName.

2 Supplied country value needs to follow ISO Alpha-2 Code. E.g. New Zealand = NZ

3 External references associated with beneficiaries are extremely important as they provide the ability for NeXus to match the correct beneficiary when making static updates or subsequent investments. The external reference can be supplied via the API e.g. to match existing references in CRM’s or one will be created during the onboarding process.

4 Refer to the Swagger for a list of accepted values.

Driver’s Licence

ID items are restricted to one per beneficiary. e.g. an investor can only have one driver’s license. If these items require updating please use PUT vs POST. We will return an error if a POST tries to create a duplicate item.

BeneficiaryIdentification.NumberString
BeneficiaryIdentification.VersionString
BeneficiaryIdentification.ExpiryDateString
BeneficiaryIdentification.NationString

Passport

ID items are restricted to one per beneficiary. e.g. an investor can only have one driver’s license. If these items require updating please use PUT vs POST. We will return an error if a POST tries to create a duplicate item.

BeneficiaryIdentification.NumberString
BeneficiaryIdentification.Expiry String
BeneficiaryIdentification.NationString

Birth Certificate

ID items are restricted to one per beneficiary. e.g. an investor can only have one driver’s license. If these items require updating please use PUT vs POST. We will return an error if a POST tries to create a duplicate item.

BeneficiaryIdentification.NumberString
BeneficiaryIdentification.NationString

Beneficiary Address

BeneficiaryAddress.AddressLine1String
BeneficiaryAddress.CityString
BeneficiaryAddress.PostcodeString
BeneficiaryAddress.RegionString
BeneficiaryAddress.StateString
BeneficiaryAddress.NationString 1
BeneficiaryAddress.AddressTypeString 2
BeneficiaryAddress.IsPrimaryBoolean 3

1 If funds are only open to NZ residents, NZ should be set as a default value for Country of Residency, Citizenship and Address Country if the fields are not to be visible on the front-end application.

2 Options are Residential or Postal

3 Please note: Primary is defaulted to True for the first record added. If a subsequent record is set to Primary, then the old Primary record is set to False. If a Primary record is deleted, then the last modified record is set to Primary.

Beneficiary Phone Number

These items will be restricted to one per beneficiary. e.g. an investor can only have one driver’s license. If these items require updating please use PUT vs POST. We will return an error if a POST tries to create a duplicate item.

BeneficiaryPhone.PhoneNumberString
BeneficiaryPhone.PhoneTypeString 1
BeneficiaryPhones.IsPrimaryBoolean 2

1 Options are Home, Business or Mobile.

2 Please note: Primary is defaulted to True for the first record added. If a subsequent record is set to Primary, then the old Primary record is set to False. If a Primary record is deleted, then the last modified record is set to Primary.

Investment 1

Investment Strategy data (even if it’s blank data) must be posted at the same time as Investment Funds data for validation via the API to occur.

Investment.NameString
Investment.InvestmentTypeString
Investment.AmountToInvestNumber 1
Investment.ReinvestPercentageNumber 2
Investment.InvestmentStrategyString 3
Investment.InvestmentStrategyBand Int 3
Investment.ExternalReference String 4
Investment.AdvisorCodeString
Investment.AdvisorRate Decimal
Investment.UserDefined1String
to...
Investment.UserDefined10String

1 AmountToInvest can utilise a value of zero, however you will need to specify the fund percentages of any attached investment funds. These funds must also have zero amounts..

2 0 = Cash out and 100 = Reinvest. Only use if individual funds are not going to have specific distribution percentages.

3 If the customer has the ability to choose a Predefined Strategy OR a Custom Strategy of their own they should use the Investment Funds fields below. Validation upfront must determine that at least either a Predefined Strategy or a Custom Strategy have been selected by the customer.

4 External references associated with investments provide the means for NeXus to match additional beneficiaries to an investment or making investment specific static updates. The external reference can be supplied via the API or one will be created during the onboarding process.

Investment Funds1

None of the following fields are required if the Investment has an Investment Strategy and Amount. However, Funds data (even if it’s blank data) must be posted at the same time as Investment Strategy data for validation via the API to occur.

An error is returned if the fund amounts don’t sum to the investment amount.

InvestmentFund.NameString
InvestmentFund.CodeString
InvestmentFund.AmountNumber
InvestmentFund.PercentageNumber
InvestmentFund.ReinvestPercentage 3Number

1 Amount can utilise a value of zero, however you will need to specify the percentage of the parent investment's funds to be allocated. The parent investment must also use an AmountToInvest of zero.

2 0 = Cash out and 100 = Reinvest. Individual funds can have specific distribution percentages. Only use if the investment level distribution percentage is overriding the parent investment reinvest percentage.

Bank Accounts

This data is only required if the applicant wants to make regular contributions to their investments.

BankAccount.BankCodeInteger
BankAccount.BranchCodeInteger
BankAccount.AccountInteger
BankAccount.SuffixInteger
BankAccount.BankAccountNameString
BankAccount.BankAccountCurrencyString 1

1 This value will generally be 'NZD'.

Direct Debit

This data is only required if the applicant wants to make regular contributions to their investments.

DirectDebit.AmountNumber
DirectDebit.StartDateString 1
DirectDebit.EndDateString
DirectDebit.FrequencyString 2
DirectDebit.IsActiveString 3
DirectDebit.TypeString 4

1 DD start dates must be at least 12 days in the future given legislative requirements to send confirmations at least 10 days in advance of first payment?

2 Options are Weekly, Monthly, Fortnightly, Quarterly, Semiannually & Annually

3 This should be set to 'True'.

4 This should be set to 'DD'.

Enum types & status codes

chevron-down-icon chevron-up-icon

Below is a list of common enum types that apply specifically to project requirements. Additional enums can be found on the MMC Swagger.

Type Value

Investor Types

Individual8

Investment Types

Unit_Registry0
KiwiSaver1

DD Distribution Methods

CashC or 0
ReinvestR or 100

Phone Types

HomeHome
BusinessBusiness
MobileMobile

Identification Types

PassportPassport
Drivers LicenceDrivers Licence
Birth CertificateBirth Certificate

Nation / Country Codes

Supplied country and nation values need to follow ISO Alpha-2 Code. E.g. New Zealand = NZ

For a document listing all of these codes, please click here.

Beneficiary.NationNZ
BeneficiaryAddress.NationNZ
BeneficiaryIdentification.NationNZ
BeneficiaryPhone.NationNZ

Relationship Types

This relationship types describe the nature of the relationship between two beneficiaries. Note that valid relationships are restricted based on the investor types of each beneficiary.

For a document listing all valid relationships between specific investor types, please click here.

Trustee
Settlor
Director
Beneficial Owner
Authorised Person
Effective Control
Parent
Guardian

Swagger

chevron-down-icon chevron-up-icon

All our API calls can be accessed through our Swagger site. Here you will find all available end points, models and examples.