Get the points history of a connected user.


Get the points history of a connected user. You can filter these points.


Filter the type of points (positive for credit, negative for debit)optional
beforestring (cursor)Pagination: points before the cursoroptional
afterstring (cursor)Pagination: points after the cursoroptional


Returns a Promise containing an object with the 50 last operations on the user points history, grouped by month. Example:

  count_element: 50,
  elements: {
    'Avril 2023': [
        reason: {
          interaction_id: '{{id}}',
          interaction_type: 'sending',
          message: 'Congrats ! You earned points',
        card_code: '{{cardCode}}',
        event_date: '2023-04-28 15:47:28',
        points_type: 'non-qualifying',
        program_name: '{{programName}}',
        status: 'pending',
        tier_name: 'Bronze',
        validity_end: '2023-06-28 15:47:12',
        validity_start: '2023-04-29 15:47:12',
        value_date: '2023-04-28 15:47:12',
        id: 12345,
        points_credited: 0,
        points_earned: 12,
        points_remaining: 0,
      // 49 more objects
  paging: {
    cursors: {
      after: 'WzQ2MDAyNDcyXQ==',
      before: 'QwZ3dsYnvEIXuy=',
    next: '{{baseUrl}}/{{cardCode}}?limit=50&after=WzQ2MDAyNDcyXQ==&sorting_by=ID',


The before and after cursors in the Promise response could be used as parameters for your next call to this method to get previous or next history page.


This method response could be different if your Loyalty SDK is set to another language. Here, 'Avril 2023' would be 'April 2023'.

Code example

splioSDK.getUserPointsHistory({type: 'positive'}).then((pointsHistory) => {
  console.log("Points earned in 'Avril 2023'", pointsHistory.elements['Avril 2023']);
  console.log('Cursor for next page', pointsHistory.paging.cursors.after);