Skip to main content

Adjust and Find Rewards

Overview

Highnote supports manual reward adjustment. A manual reward adjustment is useful if reward points are redeemed outside of Highnote. With manual adjustment, you can adjust rewards in Highnote outside of the standard reward redemption flow.

You can also query reward point transfer to build a transfer feed for your account holder, or to monitor transfers for your organization.

Create reward point adjustment

Use the following mutation to create a manual reward point adjustment:

CreateRewardPointsAdjustment
Query
mutation CreateRewardPointsAdjustment(
$input: CreateRewardPointsAdjustmentInput!
) {
createRewardPointsAdjustment(input: $input) {
__typename
... on RewardPointsTransfer {
id
rewardPointsValue {
currencyCode
value
}
rewardPointsAmount {
currencyCode
value
}
createdAt
updatedAt
ledgers {
name
}
status {
... on RewardPointsTransferSuccessStatus {
status
}
... on RewardPointsTransferFailureStatus {
status
statusReasonCode
}
}
activity
memo
}
}
}
Variables
{
  "input": {
    "financialAccountId": "FINANCIAL_ACCOUNT_ID",
    "activity": "DEDUCT",
    "pointsToAdjust": 100,
    "memo": "memo"
  }
}
⚠️ Please login to execute queries. Visit the dashboard to authenticate.
Result
{
"data": {
"createRewardPointsAdjustment": {
"__typename": "RewardPointsTransfer",
"activity": "DEDUCT",
"createdAt": "2022-03-12T00:00:00.000Z",
"id": "adjustmentId",
"ledgers": [
{
"id": "LEDGER_ID"
}
],
"memo": "memo",
"rewardPointsAmount": {
"currencyCode": "XHP",
"value": 1
},
"rewardPointsValue": {
"currencyCode": "USD",
"value": 1
},
"status": {
"__typename": "RewardPointsTransferSuccessStatus",
"status": "COMPLETED"
},
"updatedAt": "2022-03-12T00:00:00.000Z"
},
"extensions": {
"requestId": "REQUEST_ID"
}
}
}

Find reward point transfers

You can query for reward point transfers on a financial account to check the status of reward point transfers, or monitor reward point transfer history. Use the following query to find reward point transfers on a financial account:

FindFinancialAccountWithRewardPointsTransfers
Query
query FindFinancialAccountWithRewardPointsTransfers($id: ID!) {
node(id: $id) {
__typename
... on FinancialAccount {
id
ledgers(ledgerNames: [REWARDS_POINTS]) {
id
name
debitBalance {
value
currencyCode
}
ledgerEntries {
edges {
node {
financialEvent {
__typename
... on RewardPointsTransfer {
id
redemptionConfiguration {
id
}
rewardEarnRule {
id
}
rewardPointsAmount {
value
currencyCode
}
status {
... on RewardPointsTransferSuccessStatus {
status
}
... on RewardPointsTransferFailureStatus {
status
statusReasonCode
}
}
activity
source
memo
externalTransactionIdentifier
}
}
amount {
value
}
}
}
}
}
}
}
}
Variables
{
"id": "FINANCIAL_ACCOUNT_ID"
}
⚠️ Please login to execute queries. Visit the dashboard to authenticate.
Result
{
"data": {
"node": {
"__typename": "FinancialAccount",
"id": "FINANCIAL_ACCOUNT_ID",
"ledgers": [
{
"id": "LEDGER_ID",
"name": "REWARDS_POINTS",
"debitBalance": {
"value": 500,
"currencyCode": "XHP"
},
"ledgerEntries": {
"edges": [
{
"node": {
"financialEvent": {
"__typename": "RewardPointsTransfer",
"id": "REWARD_POINTS_TRANSFER_ID",
"redemptionConfiguration": null,
"rewardEarnRule": {
"id": "REWARD_EARN_RULE_ID"
},
"rewardPointsAmount": {
"value": 500,
"currencyCode": "XHP"
},
"status": {
"status": "COMPLETED"
},
"activity": "AWARD",
"source": "CARD_TRANSACTION",
"memo": "Card transaction",
"externalTransactionIdentifier": null
},
"amount": {
"value": 500
}
}
}
]
}
}
]
}
},
"extensions": {
"requestId": "REQUEST_ID",
"rateLimit": {
"cost": 125,
"limit": 60060,
"remaining": 59935
}
}
}

View reward point balance

You can use a ledger balance query to create a reward point balance view, or transaction feed in your website or application. There are two ledgers that you can use for this purpose:

  • REWARDS_POINTS ledger
  • REDEEMABLE_REWARDS_POINTS ledger

Find ledger ID

To query for a rewards point ledger, you must find the ledger ID. When querying for a financial account, all ledger IDs are listed in the response.

Use the following query to find a financial account and its associated ledgers:

FindFinancialAccountLedgers
Query
query FindFinancialAccountLedgers($id: ID!) {
node(id: $id) {
__typename
... on FinancialAccount {
id
ledgers(ledgerNames: [REWARDS_POINTS]) {
id
name
debitBalance {
value
currencyCode
}
}
}
}
}
Variables
{
"id": "FINANCIAL_ACCOUNT_ID"
}
⚠️ Please login to execute queries. Visit the dashboard to authenticate.
Result
{
"data": {
"node": {}
},
"extensions": {
"requestId": "REQUEST_ID",
"rateLimit": {
"cost": 9,
"limit": 100,
"remaining": 99991
}
}
}

View reward point ledger

Use the following query to view reward points balance for a financial account:

FindLedger
Query
query FindLedger($id: ID!) {
node(id: $id) {
... on Ledger {
id
name
ledgerEntries(first: 1) {
edges {
node {
__typename
id
amount {
value
}
journalEntry {
credits {
amount {
value
}
}
debits {
amount {
value
}
}
}
}
}
}
}
}
}
Variables
{
"id": "LEDGER_ID"
}
⚠️ Please login to execute queries. Visit the dashboard to authenticate.
Result
{
"data": {
"node": {
"id": "LEDGER_ID",
"name": "REWARDS_POINTS",
"ledgerEntries": {
"edges": [
{
"node": {
"__typename": "CreditLedgerEntry",
"id": "LEDGER_ENTRY_ID",
"amount": {
"value": 1000
},
"journalEntry": {
"credits": [
{
"amount": {
"value": 1000
}
}
],
"debits": [
{
"amount": {
"value": 1000
}
}
]
}
}
}
]
}
}
}
}

View redeemable reward point ledger

Use the following query to view reward points balance for a financial account:

FindLedger
Query
query FindLedger($id: ID!) {
node(id: $id) {
... on Ledger {
id
name
ledgerEntries(first: 1) {
edges {
node {
__typename
id
amount {
value
}
journalEntry {
credits {
amount {
value
}
}
debits {
amount {
value
}
}
}
}
}
}
}
}
}
Variables
{
"id": "LEDGER_ID"
}
⚠️ Please login to execute queries. Visit the dashboard to authenticate.
Result
{
"data": {
"node": {
"id": "LEDGER_ID",
"name": "REWARDS_POINTS",
"ledgerEntries": {
"edges": [
{
"node": {
"__typename": "CreditLedgerEntry",
"id": "LEDGER_ENTRY_ID",
"amount": {
"value": 1000
},
"journalEntry": {
"credits": [
{
"amount": {
"value": 1000
}
}
],
"debits": [
{
"amount": {
"value": 1000
}
}
]
}
}
}
]
}
}
}
}