Table of Contents

Sample applications

Nexus broker

IMPORTANT

This sample application is a proof of concept to start your development, and should not be used for production purposes, since some changes are required to turn it into a safe production-ready service.

In order to help you getting started efficiently, we have prepared a sample C# application that you can use to bootstrap your development. Included in this app you will find a simplified model of the features that are usually offered by a broker platform, such as the creation of customers, account and buy/sell operations (assuming the use of manual bank transfers for payments).

This application is a customer-facing frontend, which is directly connected to the Nexus API in order to carry out the operations that are made available on its interface. Regarding the administrative side, operators that need to analyse the usage data of the application can log into the Nexus portal with the account you created for them.

NOTE

For security and privacy reasons it is advised to add a confirmation mail for account creation, white-listing additional addresses and account deletion. Currently there is no second confirmation method on the customer side, you should consider adding it for enhanced security.

You can find the source code for the sample application on our hosted GIT repository on Github.

Further customization

Privacy concerns

In the sample app we provide the customer details are stored in Nexus. This method could not be ideal for privacy issues, therefore it can be exchanged with a local database to store the privacy sensitive information and only share an anonymous customer reference code with Nexus.

Instant payment methods support

Ïnstant payment methods can be added to the sample application, allowing the full automation of buy transactions and near-instant crypto delivery. To achieve this goal, you will have to use specific payment methods in Nexus and integrate the call-back functionality of payment processors in the sample app to create and update Nexus transactions.

Mail Support

Nexus also provides the functionality needed to manage and store the e-mail communication with the customers. If the Mail feature of Nexus is used, the mails will be available in the Nexus portal for Operators, Compliance and/or Support roles.

A new mail can be created internally by Nexus or through the client application using the POST endpoint. Its initial status will be ReadyToSend, meaning that mail is created as a record in Nexus but has not yet been sent out.

In the client application, a time-triggered event should run to fetch all ReadyToSend e-mails via the GET endpoint. This process connects with the client mail server to send out the mails as e-mails. Upon successful delivery, the mails should be updated to the Sent status in Nexus using the PUT endpoint. Optionally, the e-mail subject and body can be updated using the PUT.

An exemplary implementation of the mail system is included in the sample application, supporting the following mail types:

MailType Created By Description
NewAccountRequested Sample App Sample App creates a mail with this type when a new Account is created. This mail contains the activation link that is required to activate the newly created Account.
NewAccountActivated Sample App Sample App creates a mail with this type when the Account has been activated.
AccountDeletedByRequest Sample App Sample App creates a mail with this type when the Account has been deleted.
AccountInfoRequest Sample App Sample App creates a mail with this type when the Customer requests to their Account information.
TrustLevelUpdated Nexus Nexus creates a mail with this type when a Customer's trustlevel is automatically updated by Nexus.
TransactionBuyFinish Nexus Nexus creates a mail with this type when a Buy transaction is successfully been completed and the crypto has been sent to the Customer.