Star Points

Introduction

Star Points is Sri Lanka’s largest points based loyalty scheme operates on mobile platform.
Star Points is a continuous rewards promotion that uses a points based loyalty strategy to deliver customer value at a low cost to the merchant partners.
Star Points has been positioned as an alternative currency.

Obectives of star points

  1. Better customer satisfaction
  2. Business Expansion
  3. Non dialog catering
  4. Better customer catering

Authorization API calls

All API call request to ideabiz.lk required Authorization headers. Please refer (http://docs.ideabiz.lk/Getting_Started/Token_Manegment) for Authorization

Request Header

Authorization: Bearer [access token]
Accept: application/json

Earn Starpoints

The functionality of earn points is to get the starpoints to customer from merchants. The earn point ratio is based on the merchants defined deliverable point ratio.

Operation Name:

earnStarpoints()


Earn Request

Parameter Name Description Data Type
*counterAlias Counter name given by the star point system String
*counterAuth Counter password given by the star point system String
*subscriberType [MOBILE, BAR_CODE ,ACCOUNT,WEB] String
*subscriberValue Value of the above selected type String
identificationNumber Other Identification number. String
*billNumber Reference number to external system String
*transactionAmount Total value of the transaction String
*accessMode Service Access mode(POS) String


EARN Response

Parameter Name Description Data Type
numberOfPointEarned Earned Star Points for received transaction double
totalPoints Remaining Total Star Points double
transactionReferance Unique identification of the transaction String
errorDesc Description of any error String
status Status of the transaction. 0 is success. int

URL

https://ideabiz.lk/apicall/startpoint/v1/earnStarpoints

Body

{  
    "counterAlias": "TEST_COUNTER",
    "counterAuth" : "TEST_AUTH",
    "subscriberType" : "MOBILE",
    "subscriberValue" : "77XXXXXXX",
    "identificationNumber" : "09876",
    "billNumber" : "132345C001",
    "transactionAmount" :"200.00",
    "accessMode" :"POS"
}

Burn Starpoints with authentication

Burn points API is performing the redeem points functionality of the starpoints system. It can be done after authenticating the customer by sending the PIN code to the mobile or by the random NIC based question. Points can be redeemed before expiration and there should be at least defined points by the system should be remaining after redeeming.


Operation Name:

burnStarpointsWithAuth()

Burn Starpoints with Auth Request

Parameter Name Description Data Type
*counterAlias Counter name given by the star point system String
*counterAuth Counter password given by the star point system String
identificationNumber This is optional number to identifying transaction mode(card number …) String
*billNumber Merchant reference number String
*noOfPoints No of Star Points to be burnt double
*billValue Bill Amount double
*subscriberType [MOBILE, BAR_CODE ,ACCOUNT,EMAIL] String
*subscriberValue [MOBILE_No, BAR_CODE No, ACCOUNT No,EMAIL Addr] String
*subscriberAuth Authentication Code of the Subscriber String
*accessMode This can be POS or WEB String

Burn Starpoints with Auth Response

Parameter Name Description Data Type
totalPoints Total number of points of the customer. double
transactionReferance Unique identification of the transaction String
errorDesc Description of any error String
status Status of the transaction. 0 is success. int


URL

https://ideabiz.lk/apicall/startpoint/v1/burnStarpointsWithAuth

Body

{  
  "counterAlias":"TEST_COUNTER",
  "counterAuth":"TEST_AUTH",
  "identificationNumber": "77XXXXXXX",
  "billNumber":"132345C001",
  "noOfPoints":12.5,
  "billValue":100.00,
  "subscriberType":"MOBILE",
  "subscriberValue":"774715762",
  "subscriberAuth":"7460",
  "accessMode":"POS"
}

Burn Starpoints without Authentication

“Burn points” function facilitates the customer to redeem the starpoints from his own accounts to other accounts.

Operation Name:

burnStarpoints()


Burn Starpoints without Auth Request

Parameter Name Description Data Type
*counterAlias Counter name given by the star point system String
*counterAuth Counter password given by the star point system String
identificationNumber This is optional number to identifying transaction mode(card number …) String
*billNumber Merchant reference number String
*noOfPoints No of Star Points to be burnt double
*billValue Bill Amount double
*subscriberType [MOBILE, BAR_CODE ,ACCOUNT,EMAIL] String
*subscriberValue [MOBILE_No, BAR_CODE No, ACCOUNT No,EMAIL Addr] String
*accessMode This can be POS or WEB String

Burn Starpoints without a Auth Response

Parameter Name Description Data Type
totalPoints Total number of points of the customer. double
transactionReferance Unique identification of the transaction String
errorDesc Description of any error String
status Status of the transaction. 0 is success. int

URL

https://ideabiz.lk/apicall/startpoint/v1/burnStarpoints


Body

{  
   "counterAlias": "TEST_COUNTER",
   "counterAuth" : "TEST_AUTH",
   "identificationNumber" : "77XXXXXXX",
   "billNumber":"132345C001",
   "noOfPoints":100,
   "billValue":100.00,
   "subscriberType":"MOBILE",
   "subscriberValue":"774715762",
   "accessMode" :"POS"
}


Balance Check

Balance check is the function that is used to check the available amount, Redeemable amount and expiry amount of the account that is related to starpoints.

Operation Name:

balanceCheck()

Balance Check Request

Parameter Name Description Data Type
*counterAlias Counter name given by the starpoint system String
*counterAuth Counter password given by the starpoint system String
*subscriberType [MOBILE, BAR_CODE, ACCOUNT…etc] String
*subscriberValue Value of the above selected type String
*accessMode This can be POS or WEB String


Balance Check Response

Parameter Name Description Data Type
currentBalance Remaining Star Point Balance double
redeemableBalance Redeemable Star Point Balance double
expiredAmount Expired Star point amount double
status Status of the transaction. 0 is success. int
errorDesc Description of any error String
expiredDate Last Expiry calculated date String


URL

https://ideabiz.lk/apicall/startpoint/v1/balanceCheck

Body

{  
   "counterAlias":"TEST_COUNTER",
   "counterAuth":" TEST_AUTH",
   "subscriberType":"MOBILE",
   "subscriberValue":"77XXXXXXX",
   "accessMode":"POS"
}


Earn Reversal

According to the customer or merchant request, earned points can be rollback by this functionality. The process of rolling back is done by the transaction reference number and the merchant counter.
Operation Name:

starpointsEarnReversal()


Earn Reversal Request

Parameter Name Description Data Type
*counterAlias Counter name given by the star point system String
*counterAuth Counter password given by the star point system String
subscriberAuth Customer authentication if required String
*subscriberType [MOBILE, BAR_CODE ,ACCOUNT,WEB] String
*subscriberValue Value of the above selected type String
*billNumber Bill number of the transaction String
*transactionReference References number of the reverse transaction String
*accessMode Service Access mode(POS) String


Earn Reversal Response

Parameter Name Description Data Type
transactionReference References number of the reverse transaction String
errorDesc Description of the error String
status Status of the transaction. 0 is success. int

URL

https://ideabiz.lk/apicall/startpoint/v1/starpointsEarnReversal

Body

{  
   "counterAlias": "TEST_COUNTER",
   "counterAuth" : "TEST_AUTH",
   "subscriberType":"MOBILE",
   "subscriberValue":"77XXXXXXX",
   "billNumber":"132345C001",
   "transactionReference":"791289004",
   "accessMode":"POS"
}


Burn Reversal Starpoints

The burn reversal of starpoints system functionality is handling all reversals of points burn that was done in past. The time and the reference number should be the mandatory parameters that the merchant should be given to the system for the success of the functionality.

###Burn reversal using reference number Operation Name:

starpointsBurnReversal()


Burn Reversal Request

Parameter Name Description Data Type
*counterAlias Counter name given by the star point system String
*counterAuth Counter password given by the star point system String
subscriberAuth Customer authentication if required String
*subscriberType [MOBILE, BAR_CODE ,ACCOUNT,WEB] String
*subscriberValue Value of the above selected type String
Identification Number The number that is identified for the bill String
*billNumber Bill number of the reverse transaction String
*transactionReference References number of the reverse transaction String
*accessMode Service Access mode(POS) String

Burn Reversal Response

Parameter Name Description Data Type
transactionReference Unique identification of the reverse transaction String
errorDesc Description of any error String
status Status of the transaction. 0 is success. int


URL

https://ideabiz.lk/apicall/startpoint/v1/starpointsBurnReversal


Body

{  
   "counterAlias": "TEST_COUNTER",
   "counterAuth" : "TEST_AUTH",
   "subscriberType":"MOBILE",
   "subscriberValue":"774715762",
   "identificationNumber":"77XXXXXXX",
   "billNumber":"132345C001",
   "accessMode":"POS"
}

Burn reversal using bill number


Operation Name

starpointsBurnReversalByBillNo()

Burn Reversal Request

Parameter Name Description Data Type
*counterAlias Counter name given by the star point system String
*counterAuth Counter password given by the star point system String
subscriberAuth Customer authentication if required String
*subscriberType [MOBILE, BAR_CODE ,ACCOUNT,WEB] String
*subscriberValue Value of the above selected type String
Identification Number The number that is identified for the bill String
*billNumber Bill number of the transaction String
*transactionReference References number of the reverse transaction String
*accessMode Service Access mode(POS) String

Burn Reversal Response | Parameter Name | Description | Data Type | | ------------- |-----------------------| | transactionReference | Unique identification of the reverse transaction | String | | errorDesc | Description of any error | String | | status | Status of the transaction. 0 is success. | int |

URL

https://ideabiz.lk/apicall/startpoint/v1/starpointsBurnReversalByBillNo

Body

{  
   "counterAlias": "TEST_COUNTER",
   "counterAuth" : "TEST_AUTH",
   "subscriberType":"MOBILE",
   "subscriberValue":"77XXXXXXX",
   "identificationNumber":"777371371",
   "billNumber":"132345C001",
   "accessMode":"POS"
}

Profile Registration

To access to the starpoints through an application, first of all it needs to register to the starpoints system through profile registration process.
Operation Name:

profileRegister(), profileRegisterCommit()


Profile Register Request

Parameter Name Description Data Type
*counterAuth Counter password given by the starpoint system String
*counterAlias Counter name given by the starpoint system String
typeBeans This is array list of IdentityTypeBean IdentityTypeBean[] (subscriberType,subscriberValue)
cxName Value of the above selected type String
address This can be POS or WEB String
*identificationType Customer Identification type NIC/PP String
*identifiacationValue Customer Identification value. String
email Customer Email. Email is mandatory for if the accessMode is WEB String
*accessMode This can be POS or WEB String


Profile Registration Response

Parameter Name Description Data Type
transactionNumber Reference number for commit request String
errorDesc Description of any error String
status Status of the transaction. 0 is success. int
isPinAvailable If true need to get customer pin Boolean
pinQuestion Question need to ask for get PIN String


URL

https://ideabiz.lk/apicall/startpoint/v1/profileRegister


Body

{  
  "counterAlias":"TEST_COUNTER",
  "counterAuth":"TEST_AUTH",
  "typeBeans":[{"subscriberType":"BAR_CODE",
"subscriberValue":"11112230"}],
  "identificationType":"NIC",
  "identificationValue": "888888888V",
  "accessMode" : "POS"
}

Profile Register Commit Request

Parameter Name Description Data Type
*counterAuth Counter password given by the starpoint system String
*counterAlias Counter name given by the starpoint system String
*referenceNumber Reference number return by registration request String
customerPin Value of the above selected type String
*accessMode This can be POS or WEB String


Profile Register Commit Response

Parameter Name Description Data Type
errorDesc Description of any error String
status Status of the transaction. 0 is success. int
applicationAliases This is array list of IdentityTypeBean
In web mode system return ACCOUNT for future transactions.
This is array list of IdentityTypeBean
In web mode system return ACCOUNT for future transactions.


URL

https://ideabiz.lk/apicall/startpoint/v1/profileRegisterCommit


Body

{  
  "counterAlias":"TEST_COUNTER",
  "counterAuth":"TEST_AUTH",
  "referenceNumber":"2529",
  "accessMode" : "POS"
}


Authentication for 3rd party Applications

These APIs are provided for 3rd party applications which are connecting with Dialog Starpoints and it is authenticating the mobile application to do the transaction and view the balance check.
Operation Name:

sendAuthCodeToCustomer(),validateCustomerAuthentication()

Send Auth Code to Customer

Parameter Name Description Data Type
*counterAlias Counter name given by the starpoint system String
*counterAuth Counter password given by the starpoint system String
*subscriberType [MOBILE, BAR_CODE ,ACCOUNT,WEB] String
*subscriberValue Value of the above selected type String
*accessMode This can be POS or WEB String


Send Auth Code Customer Response

Parameter Name Description Data Type
errorCode Unique identification of the reverse transaction double
errorMessage Description of any error double
isPinSend Unique identification of the transaction String
randomQuestion Question generated from NIC number String


URL

https://ideabiz.lk/apicall/startpoint/v1/sendAuthCodeToCustomer


Body

{  
  "counterAlias":"TEST_COUNTER",
  "counterAuth":"TEST_AUTH",
  "subscriberType":"MOBILE",
  "subscriberValue":"77XXXXXXX",
  "accessMode":"POS"
}


Validate Customer Aunthentication Request

Parameter Name Description Data Type
*counterAlias Counter name given by the starpoint system String
*counterAuth Counter password given by the starpoint system String
*subscriberType [MOBILE, BAR_CODE ,ACCOUNT,WEB] String
*subscriberValue Value of the above selected type String
*customerPin PIN value that the customer received String
*accessMode This can be POS or WEB String


Validate Customer Authentication Response

Parameter Name Description Data Type
errorCode Defined status for particular Error String
errorDescription Description of the error code String


URL

https://ideabiz.lk/apicall/startpoint/v1/validateCustomerAuthentication


Body

{  
  "counterAlias":"TEST_COUNTER",
  "counterAuth":"TEST_AUTH",
  "subscriberType":"MOBILE",
  "subscriberValue":"77XXXXXXX",
  "accessMode":"POS"
}


Point Transfer

This function is to fulfill the requirement of transferring star points between mobile numbers within same NIC, BRC or Passport.
Operation Name:

transferStarpoints()


Points Transfer Request

Parameter Name Description Data Type
*counterAlias Counter name given by the starpoint system String
*counterAuth Counter password given by the starpoint system String
*serviceAccessMode Service Access mode(POS) String
*fromsubscriberType [MOBILE, BAR_CODE ,ACCOUNT,EMAIL] String
*fromsubscriberValue Value of the above selected type String
*tosubscriberType [MOBILE, BAR_CODE ,ACCOUNT,EMAIL] String
*tosubscriberValue Value of the above selected type String
*amount Star point amount double


Point Transfer Response

Parameter Name Description Data Type
errorCode Defined status for particular Error String
errorDescription Description of the error code String


URL

https://ideabiz.lk/apicall/startpoint/v1/transferStarpoints


Body

{  
  "counterAlias":"TEST_COUNTER",
  "counterAuth":"TEST_AUTH",
  "serviceAccessMode":"POS",
  "fromSubscriberType":"MOBILE",
  "fromSubscriberValu":"77XXXXXXX"    ,
  "toSubscriberType":"MOBILE",
  "toSubscriberValue":"77XXXXXXX ",
  "amount":200.00
}

Point Donation

This function is to highlight the scenario where customer will be able to donate star points from his account to predefined list of charitable institutes.
E.g.:

  • HelpAge
  • Unicef

Operation Name:

starpointsDonate()


Points Donation Request

Parameter Name Description Data Type
*counterAlias Counter name given by the starpoint system String
*counterAuth Counter password given by the starpoint system String
*donationAlias Donation name given by the star point system String
*subscriberType [MOBILE, BAR_CODE ,ACCOUNT,WEB] String
*subscriberValue Value of the above selected type String
*amount Star point amount String


Point Donation Response

Parameter Name Description Data Type
statusCode Defined status for particular Error String
errorDescription Description of the error code String


URL

https://ideabiz.lk/apicall/startpoint/v1/starpointsDonate


Body

{  
  "counterAlias":"TEST_COUNTER",
  "counterAuth":"TEST_AUTH",
  "donationAlias":"UNISEF",
  "subscriberType":"MOBILE",
  "subscriberValue":"77XXXXXXX ",
  "amount":200.00
}


Points Redemption

This API provides the functionality of burning starpoints from different types of domains like DTV, GSM from the user’s own account.

Operation Name:

starpointRedemption()


Points Redemption Request

Parameter Name Description Data Type
*counterAlias Counter name given by the starpoint system String
*counterAuth Counter password given by the starpoint system String
*subscriberType [MOBILE, BAR_CODE ,ACCOUNT,EMAIL] String
*subscriberValue [MOBILE_No, BAR_CODE No,ACCOUNT No,EMAIL Addr] String
*amount amount to be redeem double
*domainName Domain need to be paid the amount String
*domainValue Mobile number or account Number String


Points Redemption Response

Parameter Name Description Data Type
statusCode Defined status for particular Error String
errorDescription Description of the error code String


URL

https://ideabiz.lk/apicall/startpoint/v1/starpointsRedemption


Body

{  
  "counterAlias":"TEST_COUNTER",
  "counterAuth":"TEST_AUTH",
  "subscriberType":"MOBILE",
  "subscriberValue":"77XXXXXXX ",
  "amount":200.00,
  "domainName":"DTV",
  "domainValue":"77XXXXXXX "
}


Notify Customer

Third party application sends notification of the customer state changes.
Operation Name:

notifyCustomerEvent()


Event Notification Request

Parameter Name Description Data Type
*currentSubscriber Current identification of the customer (MOBILE,77XXXXXXX) IdentityTypeBean[] (subscriberType,subscriberValue)
newSubscriber Subscriber new identification (MOBILE,77XXXXXXX) IdentityTypeBean[] (subscriberType,subscriberValue)
*subscriberEvent Received customer state change event (NUMBER_CHANGE, PROFILE_CHANGE, ACCOUNT_TRANSFER, CONTRACT_TRANSFER, RECYCLED, BLACK_LIST) Enumeration
*actualUser User of the action preform String


Event Notification Response

Parameter Name Description Data Type
statusCode Defined status for particular Error String
errorDescription Description of the error code String


URL

https://ideabiz.lk/apicall/startpoint/v1/notifyCustomerEvent


Body

{  
"currentSubscriber":{"subscriberType" : "MOBILE","subscriberValue" : "77XXXXXXX ",},
"newSubscriber":{"subscriberType" : "MOBILE","subscriberValue" : "77XXXXXXX ",},  
"subscriberEvent":"ACCOUNT_TRANSFER",
"actualUser":"Q12"             
}
Last updated on 28th Oct 2019