Follow the below steps to create an investment for one individual beneficiary.
1. Create the application
Call either the POST /onboarding/applications/applicationType/Individual OR /onboarding/applications/externalReference/{externalReference}/applicationType/Individual endpoints.
- Individual is an applicationType for people as opposed to entities.
- externalReference is an application identifier you can use if you wish to set an additional identity on the application.
This will return the ApplicationId and the PrimaryBeneficiaryId which you will need going forward.
2. Populate the primary beneficiary details
Call the PUT /onboarding/applications/{applicationId}/beneficiaries/{beneficiaryId} endpoint with the correct details within the body of the request and using the above ApplicationId and BeneficiaryId provided above.
- See the PostBeneficiary/PutBeneficiary documentation for a breakdown of all the beneficiary fields.
This will return the ApplicationId and the PrimaryBeneficiaryId which you will need going forward.
3. Add beneficiary address details
Call the POST /onboarding/applications/{applicationId}/beneficiaries/{beneficiaryId}/addresses endpoint.
- AddressType can be set to "Residential" or "Postal".
- Nation is specified via ISO 3166-1 Alpha-2 format. i.e. "NZ", "AU", "US, "UK", "IN" etc.
- IsPrimary determines if this is to be used as the primary contact address. At least one address should be set to primary.
4. Add beneficiary phone details
Call the POST /onboarding/applications/{applicationId}/beneficiaries/{beneficiaryId}/phones endpoint.
- PhoneType can be set to "Home", "Business" or "Mobile".
- Nation is specified via ISO 3166-1 Alpha-2 format. i.e. "NZ", "AU", "US, "UK", "IN" etc.
- IsPrimary determines if this is to be used as the primary contact phone number. At least one phone number should be set to primary.
5. Add beneficiary identification details
Call the POST /onboarding/applications/{applicationId}/beneficiaries/{beneficiaryId}/identifications endpoint.
- IdentificationType can be set to "Passport", "DriversLicence", "BirthCertificate" or "CertifiedDocs".
- Nation is specified via ISO 3166-1 Alpha-2 format. i.e. "NZ", "AU", "US, "UK", "IN" etc.
- IsPrimary determines if this is to be used as the primary identification. At least one identification should be set to primary.
- Version is only used when supplying Drivers Licence details.
6. Add the investment
Call the POST /onboarding/applications/{applicationId}/investments endpoint.
- BeneficiaryId must be set to the PrimaryBeneficiaryId of the application.
- InvestmentType can be set to "Unit_Registry" or "Kiwisaver".
- InvestmentFunds can either be included within this call or processed separately via the below investment funds endpoint.
- If a strategy is to be used, instead of funds, then specify this within the InvestmentStrategy field. You will also need to specify a value for the InvestmentStrategyBand field.
- ExternalReference can be used to set a unique identifier on an investment. If none is provided, the onboarding process will generate one upon saving to Nexus.
- ReinvestPercentage will apply to any funds that do not have their own reinvestment percentage values set.
- AmountToInvest can be left as zero if all funds provided also use zero amounts.
7. Add investment funds
Call the POST /onboarding/applications/{applicationId}/investments/{investmentId}/investmentFunds/ endpoint.
- BeneficiaryId must be set to the PrimaryBeneficiaryId of the application.
- InvestmentId needs to be set to the parent Investment that this fund will be attached to.
- FundCode needs to be set to the correct portfolio code.
- FundName is not required to be populated, as this will auto populate, based on the FundCode, when the investment is created in Nexus, if left null.
- Amount can be left as zero if the investment itself has an AmountToInvest set to zero. Otherwise the total of all funds will need to sum to the investment’s AmountToInvest. This will be used to calculate the investment fund percentages if they do not add to 100.
- Percentage is the percent of the total investment that will be allocated to the given fund.
- ReinvestmentPercentage is used to specify a reinvestment value for the fund. Defaults to the parent investment’s reinvest percentage if left as null.
8. Add bank accounts
Call the POST /onboarding/applications/{applicationId}/bankaccounts endpoint.
- BeneficiaryId must be set to the PrimaryBeneficiaryId of the application.
- BankCode, BranchCode, Account and Suffix are all integers, leading zeroes can be ignored.
- IsVerified is only set to true if the beneficiaries bank account has been directly verified by supporting documentation.
- BankAccountCurrency should be set to "NZD".
- BankAccountName should match the name of the bank account as it appears on documentation. e.g. "Mr K Wilson" or "Mrs Edith McDougal" etc.
9. Add direct debits
Call the POST /onboarding/applications/{applicationId}/investments/{investmentId}/bankaccounts/{bankaccountId}/directDebits endpoint.
- BeneficiaryId must be set to the PrimaryBeneficiaryId of the application.
- BankAccountId specifies which bank account this direct debit is attached to.
- InvestmentId specifies which investment this direct debit is pointing to.
- Amount specifies the amount to be deducted each period.
- Frequency denotes what period the direct debit is. Valid values include:
- "Weekly"
- "Fortnightly"
- "Monthly"
- "Quarterly"
- "SemiAnnually"
- "Annually"
- "OneOff"
- Type is set to "DD".
- StartDate and EndDate specify the active time period. Note that the start date will dictate the day of the period the direct debit will be generated. For example, if you specify a weekly or fortnightly period, the start date will specify what day of the week. One should also provide a buffer between when the application is submitted and the start date to allow for any issues/delays that may arise in processing the application.
10. Submit the application
Call the POST /onboarding/applications/{applicationId}/submit endpoint. This will validate all of the information provided, and assuming there are no issues the application will be passed to Apex NZ to complete.
- Any issues will be returned in a list of errors. These are generally fairly clear to understand, however you can consult the list of common validation error messages here for additional information.