Skip to main content
Most banks give business accounts no webhooks, but they send an email for each transaction. hooksnode reads these alert emails and sends a typed event for each one:
  • bank.credit.received for money in
  • bank.debit.posted for money out
Amounts are integers in minor units (kobo for NGN, cents for USD), with an ISO 4217 currency code. See the event reference.

Turn it on

Bank alerts work on Gmail, Outlook and IMAP sources. Connect the mailbox that gets your alerts. Then set Bank alerts on the source:
Use only with a From contains filter for your bank’s alert address. Your destination then gets bank events and nothing else.

Supported banks

hooksnode knows the alert senders of these banks and fintechs: Access Bank, Ecobank, FCMB, Fidelity Bank, First Bank, Globus Bank, GTBank, Jaiz Bank, Keystone Bank, Kuda, Moniepoint, OPay, PalmPay, Parallex Bank, Polaris Bank, PremiumTrust Bank, Providus Bank, Stanbic IBTC, Sterling Bank, Titan Trust Bank, UBA, Union Bank, Unity Bank, Wema Bank and Zenith Bank. hooksnode also reads alerts from other senders, when the email has an account or balance line and an alert word.

The parser never guesses

If the email has no clear amount and direction, hooksnode sends no bank event. The confidence field tells you how sure the parser is: A common rule: post high credits at once, and send medium credits to a person to check.

AI fallback

When the rules cannot read an alert, a language model can try. This is off by default. To use it, tick Use AI when the rules cannot read an alert on the source. The server must also have a model set up.
With the AI fallback on, the model provider gets the text of the email. Tell your data protection officer before you turn it on.
How hooksnode keeps AI results safe:
  1. It calls the model only when the rules find no alert and the email looks like an alert.
  2. The model must answer in a fixed JSON schema.
  3. hooksnode checks the answer against the email. The amount and currency must appear in the email. A reference, name, balance or account number that is not in the email is dropped.
  4. The event says "parser": "ai", names the model in ai_model, and has "confidence": "medium".
  5. If the model fails, refuses or times out, hooksnode sends no bank event. In add mode the email event still goes out.

Example: reconcile invoices

Add a filter on the destination to get credits only:

Idempotency

The bank event’s idempotency key is the email’s key plus :bank. One email never makes two bank events.