Crate monzo_webhook

Crate monzo_webhook 

Source
Expand description

§Monzo Webhook

Serde-compatible structs containing the data from a Monzo bank webhook.

For examples of what different webhooks look like, see src/tests.txt.

§Usage

When implemented a receiver for a Monzo bank webhook, you can use these structs. For example, with axum:

async fn test_webhook_parse(Json(data): Json<monzo_webhook::Webhook>) -> String {
    format!("{data:#?}")
}

§Testing

This has been tested against the following types of transactions:

  • Faster Payments in- and outbound
  • Monzo-to-Monzo transactions
  • Pot and Account Deposits and Withdrawals
  • Contactless purchases
  • Online purchases

§This needs confirmation that it works with:

  • ATM withdrawals
  • ATM deposits
  • Deposits
  • Cheques
  • Online refunds
  • Chip & PIN purchases
  • Chip & PIN refunds
  • Contactless refunds
  • Direct Debits
  • Standing Orders
  • BACS Credits
  • BACS Debits
  • CHAPS Transfers
  • International Transfers via Swift
  • Fees and Charges
  • Interest Paid
  • Interest Earned

If you have any JSON webhook payloads of these types of transactions, I would appreciate seeing them. You are recommended to scrub any sensitive data or ID numbers first, then please open an issue.

Re-exports§

pub use crate::string_boolean::StringBoolean;
pub use has_extra_data::*;

Modules§

counterparty
decline
has_extra_data
merchant
metadata
string_boolean

Structs§

Webhook
The main webhook data type.
WebhookData

Enums§

Scheme
SettledTimestamp
WebhookType

Type Aliases§

ExtraValues