LoyalPro Logo
    Pricing
    DocsCore ConceptsManaging Customer Points

    Managing Customer Points

    Award, redeem, adjust, and track customer loyalty points

    8 min readCore Concepts
    Getting StartedCore ConceptsGuidesWebhooksBest PracticesTroubleshooting

    Overview

    Points are the currency of your loyalty program. This guide covers all the ways you can manage points for your customers - from awarding points on purchases to handling redemptions and adjustments.

    Award Points
    Redeem Points
    Adjust Points
    View History

    Awarding Points

    Award points to customers for purchases, referrals, or special events.

    Award Points
    // Award points for a purchase
    const transaction = await loyalpro.points.award({
      customer_id: "cus_abc123",
      points: 100,
      reason: "Purchase",
      metadata: {
        order_id: "order_12345",
        amount: 10000 // ₦10,000
      }
    });
    
    // Award bonus points
    await loyalpro.points.award({
      customer_id: "cus_abc123",
      points: 50,
      reason: "Birthday Bonus",
      type: "bonus"
    });
    
    // Award points with expiration
    await loyalpro.points.award({
      customer_id: "cus_abc123",
      points: 200,
      reason: "Promotional Campaign",
      expires_at: "2025-12-31T23:59:59Z"
    });

    Redeeming Points

    Process point redemptions when customers claim rewards.

    Redeem Points
    // Check customer balance first
    const customer = await loyalpro.customers.retrieve("cus_abc123");
    console.log(customer.points_balance); // 500
    
    // Redeem points for a reward
    const redemption = await loyalpro.points.redeem({
      customer_id: "cus_abc123",
      reward_id: "rwd_xyz789",
      points: 200
    });
    
    // Generate redemption code for POS
    console.log(redemption.code); // "REDEEM-ABC123"
    console.log(redemption.discount_amount); // 1000 (₦1,000)

    Important

    Always check the customer's balance before attempting a redemption to avoid "insufficient_balance" errors.

    Viewing Points History

    Track all points transactions for a customer.

    Get Points History
    // Get points transaction history
    const history = await loyalpro.points.list({
      customer_id: "cus_abc123",
      limit: 20,
      order: "desc"
    });
    
    // Each transaction includes:
    // - id, type (earned/redeemed/expired/adjusted)
    // - points, balance_after
    // - reason, metadata
    // - created_at
    
    history.data.forEach(txn => {
      console.log(`${txn.type}: ${txn.points} points - ${txn.reason}`);
    });

    Related Articles

    Setting Up Reward Tiers

    Create Bronze, Silver, Gold membership levels

    Understanding Analytics

    Track points issued and redeemed

    Was this page helpful?

    LoyalPro Logo
    Security Certificate

    Features

    • AI-powered Intelligence
    • Multi-tenant Architecture
    • Flexible Loyalty Models
    • Seamless Integration
    • Smart Notifications
    • Enterprise-grade Security

    Industries

    • Hospitality & Tourism
    • Retail & E-Commerce
    • Financial Technology
    • Banking & Financial Services
    • Transportation & Logistics
    • Sports & Fitness
    • Healthcare
    • Government

    Developer

    • Documentation
    • SDKs & Libraries
    • API References
    • API Status
    • API Change Log
    • Sandbox/Live Env

    Company

    • About
    • Careers
    • Contact
    • Term of Use
    • Privacy Policy
    • Disclaimer

    © 2025. AptiveAI Technologies Ltd. All Right Reserved.