Brite Play

The Brite Play product allows the customer to perform a deposit and instantly gain access to the funds in the customer’s account at the merchant. It combines the ease of use of the AIS service, KYC information for account registration and instant transfers to give the user a seamless experience, specifically well suited for online gaming.

When a customer makes their first deposit, an account is created automatically by the merchant from the KYC information shared by Brite. This removes any need for lengthy manual registration forms. In the pure Play-setup, Brite is the only method through which the user can sign up, deposit and log in, as well as withdraw through.

To integrate the proper Brite Play flow you will need to integrate a combination of Instant Payment and KYC. By using the approval_requried parameter the functionality of Brite Play is achieved.

Integration

To initiate a deposit session make a request towards  sessions.create_deposit endpoint. To achieve the Brite Play functionality be sure to set approval_required: true for the session to stop and wait for your approval.

				
					// example request
{
    "deeplink_redirect": "string",
    "country_id": "string",  // required
    "callbacks": [
        {
            "url": "string",  // required
            "transaction_state": 1,
            "session_state": 1
        }
    ],
    "amount": 0,  // required
    "customer_firstname": "string",
    "customer_lastname": "string",
    "customer_dob": "string",
    "customer_id": "string",
    "customer_street_address": "string",
	"customer_zip": "string",
	"customer_city": "string",
	"customer_email": "string",
	"ssn": "string",
    "merchant_reference": "string",
	"locale": "string",
	"redirect_uri": "string",
    "approval_required": true,
    "brand_name": "string"  // required in DE
}
				
			

The deeplink_redirect is used for correct redirection after bankID approval for mobile devices. The customer_id is created when a new customer authenticates.If you already have a customer_id you can pass it in the request and if it does not match with the user authenticating the session will be aborted. This is useful to make sure that the expected user is making the deposit. The merchant_reference is set by the merchant. Approval_required is used to be able to have the option to approve or reject the session after authentication is done. 

				
					// example response
{
    "url": "string",
    "token": "string",
    "id": "string"
}
				
			

In the response you will find a URL where the client is hosted. A token for rendering the client using the javascript. And an id for the session. 

Inject the session token into the JavaScript client and render the client. After the customer has authenticated successfully in the client Brite sends a STATE_AUTHENTICATION_COMPLETE callback to the url stated for session_state; 2.

				
					// example request - callback
{
"session_state": 2,
"session_id": "string",
"merchant_id": "string"
}
				
			

To be able to create a KYC the first step is to get the customerID. Make a call to  session.get endpoint. Now create a KYC by calling the kyc.create endpoint. 

				
					// kyc.create request
{
    "customer_id": "string"  // required
}
				
			
				
					// kyc.create response
{
    "id": "string"
}
				
			
The response will contain an id for the KYC just created. Use the id from the kyc.create response when calling kyc.get to retrieve KYC information. Based on that information make a decision to approve or reject session by calling session.approve or session.reject populating the session id.
				
					// session.approve
{
    "id": "string"  // required
}