LogoLogo
  • Overview
    • About
    • Integrations
      • Perkville API
      • Partners
      • Integrating Perkville
        • API requirements
        • Automating your program using Perkville's API
        • Integrating Your Mobile App with Perkville
          • Page to initiate the PKCE flow.
          • Joining the loyalty program
          • Referral page
            • Referred prospects
          • Point history page
          • Earning rules page
          • Rewards page
            • Redeem confirmation page
          • Vouchers page
            • Mark voucher used confirmation page
          • Challenges page
            • Challenge details page
      • Integration Reference
        • ABC Ignite
          • ABC Ignite Engagement app
            • Home screen
            • Intro page
            • Authorize ABC Fitness page
            • Points page
            • Earning page
            • Rewards page
              • Redeem reward
              • Reward voucher
            • Referral page
        • Mariana Tek
        • Shopify
    • Security
  • Features
    • Loyalty program rules
      • Earning rules
        • Join
        • Birthday
        • Custom
        • Referral
          • Referral offer
          • Completing a referral
          • Referral flow
            • 1. Share referral offer
            • 2.Receive referral offer
            • 3. View offer details
            • 4. Claim offer
            • 5. Receive voucher
            • 6. Earn points for completed referral
        • Twitter (X)
        • Activities
      • Redeeming rules
        • Custom rewards
          • Initial voucher status
        • External rewards
    • Promotions
      • Frequency bonus
        • For customers: How a monthly/weekly bonus works
      • Time bonus
      • Promotion bonus
    • Challenges
      • Creating a challenge
      • Manually adding challenge progress
    • Emails
      • Invitations
      • Point earning notification
      • Weekly summary
      • Redemption
      • Challenge emails
        • Challenge invitation
        • Challenge progress notification
    • Managing customers
      • Referrals
      • Customer profile
        • Managing customer emails
        • Program Status
        • Ad-hoc points, redemptions, and adjustments
        • Transfer account data
        • Voiding transactions
        • Perkville email subscription status
        • Reversing a user's Perkville account closure
      • Bulk point updates
        • Add / Redeem page
        • CSV upload
      • Inviting customers
      • Export customer list
    • Settings
      • Advanced
        • Agreements
        • Allowed registration URLs
        • Business dashboard message section
        • Integration platform
        • Join restriction
        • Membership settings
        • Prohibit staff from earning or redeeming points
        • Referral offer claim options
      • Advertising
      • Business info
      • Branding
        • Branding step 1: logo and colors
        • Branding step 2: web pages and emails
        • Setting up a custom branded domain
        • Setting up custom branded emails
      • Challenges
        • Global Challenge Settings
        • Challenge Settings
        • Challenge Progress Activities
        • Challenge Rewards
        • Challenge Invitations
      • Locations
      • Prohibit Customers
      • Staff members
      • Redeeming options
    • Vouchers
    • Reports
      • Customer list export with points
      • Challenge Overview
      • Points By Location
      • Redemption Details
      • Redemption Overview
      • Referral Details
      • Referral Overview
      • Registration Rate Overview
    • Agency
      • Ad terms
      • Suppressions
      • Advertisers
      • Images
      • Creatives
      • Campaigns
      • Obtaining business approval
  • FAQs
    • End customer FAQs
      • I'm unable to join a business' loyalty program. What should I do?
      • Freeing up your Gmail address if you accidentally created a duplicate account
    • Miscellaneous
      • Protecting against password reuse
      • Is it possible to pre-populate the email address field on the page for joining the reward program?
      • I need to change the support email that displays in the footer. How can I do that?
      • I would like to reactivate my business' Perkville account.
      • How do I control my email notifications?
      • How do I update my billing information (e.g. credit card on file)?
    • Onboarding
      • Can Perkville migrate data from other loyalty / rewards software platforms?
      • Is it possible to invite customers with a link in our own emails rather than through Perkville?
      • The reward images that I added look blurry. How can I fix this?
    • Managing emails and names
      • Can you merge two emails into the same account?
      • I would like to correct an email on an account. How do you do that?
      • Can I change which email my customer receives their notifications?
      • Can I remove an email address from a customer's account?
      • Can you change the name of a customer?
      • My customer has two accounts. What should I do?
      • How Do I Change the Email That I Use to Log in to Perkville?
      • My customer does not want to receive emails every time. What should I do?
      • How do I reset my password?
      • Answering "How can I deactivate my Perkville points account?"
    • Points
      • My customer's points are being expired. Why?
      • My customer is missing points. What should I do?
      • How do we add points to a customer or member account?
      • Can you reactivate points that expired?
    • Redemptions
      • A customer accidentally redeemed a reward. What should I do?
    • Referrals
      • Can you reward a customer for referring their friend?
      • Do referral offers expire and if so, is the referral notified?
      • I don't want customers to automatically get referral points. I want to manually complete referrals.
      • Referral submission error for front desk staff
      • How do I check if a referral has been submitted and its status?
Powered by GitBook
LogoLogo
On this page
  • 1. Register Your API Client
  • 2. Authentication
  • 3. Awarding Points via the Transaction API
  • 4. Managing Membership Data
  • 5. Retrieving User Information
  • Need Help?

Was this helpful?

  1. Overview
  2. Integrations
  3. Integrating Perkville

Automating your program using Perkville's API

This guide provides key steps and best practices for integrating with Perkville’s API to award points, track membership data, and retrieve user information.

PreviousAPI requirementsNextIntegrating Your Mobile App with Perkville

Last updated 1 month ago

Was this helpful?

1. Register Your API Client

Before interacting with Perkville’s API, you must . This registration process will provide you with:

  • A client ID and client secret

  • Access to generate an API key

Once registered, Perkville will assign the necessary admin-focused scopes to your client.

Please refer to for more information.

2. Authentication

To authenticate, use the Resource Owner Grant flow, which is the simplest method.

How It Works

  • Send a POST request with a username and password

  • Perkville will return a long-lived API token (does not expire)

Testing Consideration

  • Create a token on behalf of a business staff member at your test business.

  • This ensures access to test business data and the ability to create transactions.

Please refer to for more information.

3. Awarding Points via the Transaction API

Key Parameters

  • limit_to_once_per_calendar_day → Ensures a perk is awarded only once per day.

  • trans_source_id → Prevents duplicate point awards by assigning a unique ID to each transaction.

    • The trans_source_id must be unique across the entire Perkville business.

    • Construct an ID that uniquely identifies a user, sale, or check-in.

4. Managing Membership Data

Best Practices

  • Provide as many membership details as possible.

  • Keep records up to date to ensure users can participate in relevant programs.

  • Use POST or PATCH requests to update membership data.

    • POST requests can both create and update records.

5. Retrieving User Information

Example Query

To retrieve a user’s point balance and other details by email:

/v2/connections/?business=9823&user__emails__email=example_email@perkville.com

Need Help?

For any questions or further assistance, contact api@perkville.com.

Happy integrating! 🚀

Use Perkville’s to grant points for user activity.

To track and update membership data, use the .

If you need to surface user data within your system, use the .

register your API client
Perkville's API documentation
Perkville's API documentation
Transaction API
External Member API
Connection API