HSBC Malaysia

Tested on real notifications v1 By PayPing community

Parser Rules (2)

hsbc.card-charged.v1
Priority: 200 Money Out
Match Body:
was charged to your (?:supp )?credit card
Extract amount:
(?<currency>RM|MYR|IDR|NZD|AUD|SGD|USD|JPY|THB|EUR|GBP|JP¥|NZ\$|US\$|S\$|A\$|¥|£|€|\$|[A-Z]{3})\s?(?<amount>[\d,]+\.?\d{0,2})
Extract counterparty:
at (?<counterparty>.+?) on \d
hsbc.funds-received.v1
Priority: 190 Money In
Match Body:
You've received .* in your A/C
Extract amount:
You've received (?<currency>RM|MYR|IDR|NZD|AUD|SGD|USD|JPY|THB|EUR|GBP|JP¥|NZ\$|US\$|S\$|A\$|¥|£|€|\$|[A-Z]{3})\s?(?<amount>[\d,]+\.?\d{0,2})

Tested Sample Notifications

These real anonymised notification formats were verified against the reference labeller.

real hsbcmalaysia #9: MYR950.00 was charged to your credit car
Body: MYR950.00 was charged to your credit card ending 1681 at MYDIN MART on 21/09/25. Pls call HSBC if you did not authorise.
Direction: out Amount: RM 950.00 Counterparty: MYDIN MART
real hsbcmalaysia #10: MYR30.00 was charged to your credit card
Body: MYR30.00 was charged to your credit card ending 4233 at MYDIN MART on 22/09/25. Pls call HSBC if you did not authorise.
Direction: out Amount: RM 30.00 Counterparty: MYDIN MART

Supported Apps

Android Package:
my.com.hsbc.hsbcmalaysia
iOS App Name:
HSBC Malaysia
Schema Version:
1

How to Import in App

  1. Click Copy JSON above.
  2. Open PayPing Lite on your phone.
  3. Open the Bank Rules tab.
  4. Tap + Add Bank Rule and paste.

Report an Issue / New Samples

If your bank modified their notification phrasing or if this parser missed a transaction, please share an anonymised sample!

Submit on GitHub

Raw JSON Definition

{
  "schemaVersion": 1,
  "id": "hsbc",
  "name": "HSBC Malaysia",
  "version": 1,
  "author": "PayPing community",
  "description": "Real-notification starter for HSBC credit-card charges and DuitNow funds received.",
  "androidPackages": ["my.com.hsbc.hsbcmalaysia"],
  "iosAppNames": ["HSBC Malaysia"],
  "rules": [
    {
      "id": "hsbc.card-charged.v1",
      "priority": 200,
      "match": { "body": "was charged to your (?:supp )?credit card" },
      "direction": "out",
      "extract": {
        "amount": "(?<currency>RM|MYR|IDR|NZD|AUD|SGD|USD|JPY|THB|EUR|GBP|JP¥|NZ\\$|US\\$|S\\$|A\\$|¥|£|€|\\$|[A-Z]{3})\\s?(?<amount>[\\d,]+\\.?\\d{0,2})",
        "counterparty": "at (?<counterparty>.+?) on \\d"
      }
    },
    {
      "id": "hsbc.funds-received.v1",
      "priority": 190,
      "match": { "body": "You've received .* in your A/C" },
      "direction": "in",
      "extract": {
        "amount": "You've received (?<currency>RM|MYR|IDR|NZD|AUD|SGD|USD|JPY|THB|EUR|GBP|JP¥|NZ\\$|US\\$|S\\$|A\\$|¥|£|€|\\$|[A-Z]{3})\\s?(?<amount>[\\d,]+\\.?\\d{0,2})"
      }
    }
  ]
}