Webhook Catalogue

A full reference of all webhook events emitted by Lorum, organised by category.

To enable events, configure your webhook categories in the portal under Settings > App.

Account

account_opened

Sent when a new account has been opened.

FieldTypeDescription
account_iduuidThe account identifier in the Lorum system
account_typeenumType of account - primary, payment, or virtual
account_namestringThe name set on the account
customer_iduuidThe ID of the customer
external_idstringExternal ID set when the account request was made
currencystringISO currency code for the account
{
  "type": "account_opened",
  "event_id": "018c35aa-4279-83e7-a90f-4b2901246c51",
  "event_version": 1,
  "account_opened": {
    "account_id": "018c35aa-4279-83e7-a90f-4b2901246c51",
    "account_name": "Contractors Inc.",
    "customer_id": null,
    "external_id": "01H2ZZV055MFPM8FD9RCJWM6R0",
    "currency": "AED",
    "account_type": "payment"
  }
}

account_updated

Sent when an account has been updated.

FieldTypeDescription
account_iduuidThe account identifier in the Lorum system
account_namestringThe name set on the account
account_ownerstringThe owner name set on the account
external_idstringExternal ID set when the account request was made
{
  "type": "account_updated",
  "event_id": "018c35ab-98bf-4390-bd51-858e61a87859",
  "event_version": 3,
  "account_updated": {
    "account_id": "018c35aa-4279-83e7-a90f-4b2901246c51",
    "account_name": "Contractors Ltd.",
    "account_owner": "John Contractor",
    "external_id": "01H2ZZV055MFPM8FD9RCJWM6R0"
  }
}

Payment

outbound_local_payment_created

A local payment has been initiated.

FieldTypeDescription
account_iduuidThe account from which the payment was made
transaction_iduuidThe Lorum transaction identifier
amount_with_feeintegerTransaction amount including fee in minor currency (e.g. 100 = 1.00)
instructed_amountintegerTransaction amount excluding fee in minor currency
fee_amountintegerFee amount in minor currency
remitterRemitterDetailsDetails of the payment remitter
beneficiaryBeneficiaryDetailsDetails of the payment beneficiary
purposePurposeCodePurpose of the transaction
currencystringISO currency code
external_referencestringReference set by the customer when initiating the payment
external_idstringExternal ID set on the create payment request
timestampISO8601 datetimeTimestamp of when the event took place
fee_sourceFeeSourceAccountOptional fee source account details
{
  "type": "outbound_local_payment_created",
  "event_id": "018c35b3-def3-a3bb-792d-f79534562555",
  "event_version": 4,
  "outbound_local_payment_created": {
    "account_id": "018c355c-2413-16df-509f-40e71b142eb3",
    "transaction_id": "018c35b3-def2-e645-1d5b-86be6746537b",
    "instructed_amount": 51239,
    "amount_with_fee": 51239,
    "fee_amount": 0,
    "remitter": {
      "name": "Monday Inc.",
      "identifier": { "iban": "AE220910000000808720471" }
    },
    "beneficiary": {
      "name": "Fulan AlFulani",
      "identifier": { "iban": "AE120266712486572167372" }
    },
    "external_reference": "local*1701708016",
    "external_id": "01JDHZK7QKF0WWQG43WNFQ3YCX",
    "timestamp": "2023-12-04T16:40:29.683099191Z",
    "purpose": "goods_bought",
    "currency": "AED"
  }
}

outbound_local_payment_submitted

A local payment has been submitted for processing.

FieldTypeDescription
account_iduuidThe account from which the payment was made
transaction_iduuidThe Lorum transaction identifier
external_idstringExternal ID set on the create payment request
timestampISO8601 datetimeTimestamp of when the event took place
{
  "type": "outbound_local_payment_submitted",
  "event_id": "018c35b3-e005-fd7b-ea42-aec8c20e521f",
  "event_version": 6,
  "outbound_local_payment_submitted": {
    "account_id": "018c355c-2413-16df-509f-40e71b142eb3",
    "transaction_id": "018c35b3-def2-e645-1d5b-86be6746537b",
    "external_id": "01JDHZK7QKF0WWQG43WNFQ3YCX",
    "timestamp": "2023-12-04T16:40:29.957851510Z"
  }
}

outbound_local_payment_executed

The local payment has been successfully processed.

FieldTypeDescription
account_iduuidThe account from which the payment was made
transaction_iduuidThe Lorum transaction identifier
external_idstringExternal ID set on the create payment request
timestampISO8601 datetimeTimestamp of when the event took place
{
  "type": "outbound_local_payment_executed",
  "event_id": "018c35b4-030f-a403-dfe2-7c757e94f00b",
  "event_version": 7,
  "outbound_local_payment_executed": {
    "account_id": "018c355c-2413-16df-509f-40e71b142eb3",
    "transaction_id": "018c35b3-def2-e645-1d5b-86be6746537b",
    "external_id": "01JDHZK7QKF0WWQG43WNFQ3YCX",
    "timestamp": "2023-12-04T16:40:38.927642874Z"
  }
}

outbound_local_payment_failed

The local payment attempt was unsuccessful.

FieldTypeDescription
account_iduuidThe account from which the payment was made
transaction_iduuidThe Lorum transaction identifier
external_idstringExternal ID set on the create payment request
timestampISO8601 datetimeTimestamp of when the event took place
failure_reasonFailureReasonCause of the payment failure
{
  "type": "outbound_local_payment_failed",
  "event_id": "018c35b9-fbdc-8081-969a-bc591888d2e6",
  "event_version": 12,
  "outbound_local_payment_failed": {
    "account_id": "018c0027-a9b0-1f65-54ea-fe723844940f",
    "transaction_id": "018c35b9-8f58-9b36-370d-b5e3f00705ff",
    "failure_reason": { "bank_error": "Manual failure in Portal" },
    "external_id": "01JDHZK7QKF0WWQG43WNFQ3YCX",
    "timestamp": "2023-12-04T16:47:10.300679370Z"
  }
}

outbound_local_payment_returned

A previously executed local payment has been returned by the beneficiary's bank.

FieldTypeDescription
account_iduuidThe account from which the payment was made
transaction_iduuidThe Lorum transaction identifier for the original payment
returned_transaction_iduuidThe Lorum transaction identifier for the return
amountintegerAmount in minor currency (e.g. 100 = 1.00)
remitterRemitterDetailsDetails of the payment remitter
beneficiaryBeneficiaryDetailsDetails of the payment beneficiary
external_referencestringReference set by the customer when initiating the payment
timestampISO8601 datetimeTimestamp of the return event
currencystringISO currency code
returned_reasonstringReason provided by the beneficiary's bank for the return
{
  "type": "outbound_local_payment_returned",
  "event_id": "018c35ba-1234-5678-9abc-def012345678",
  "event_version": 1,
  "outbound_local_payment_returned": {
    "account_id": "018c355c-2413-16df-509f-40e71b142eb3",
    "transaction_id": "018c35b3-def2-e645-1d5b-86be6746537b",
    "returned_transaction_id": "018c35ba-9876-5432-10fe-dcba98765432",
    "amount": 51239,
    "remitter": {
      "name": "Monday Inc.",
      "identifier": { "iban": "AE220910000000808720471" }
    },
    "beneficiary": {
      "name": "Fulan AlFulani",
      "identifier": { "iban": "AE120266712486572167372" }
    },
    "external_reference": "local*1701708016",
    "timestamp": "2023-12-05T10:15:30.123456789Z",
    "currency": "AED",
    "returned_reason": "Account closed"
  }
}

inbound_local_payment_settled

An inbound local payment has settled into the account.

FieldTypeDescription
account_iduuidThe account the payment settled into
transaction_iduuidThe Lorum transaction identifier
amount_with_feeintegerTransaction amount including fee in minor currency
instructed_amountintegerTransaction amount excluding fee in minor currency
fee_amountintegerFee amount in minor currency
remitterRemitterDetailsDetails of the payment remitter
beneficiaryBeneficiaryDetailsDetails of the payment beneficiary
purposePurposeCodePurpose of the transaction
currencystringISO currency code
external_referencestringReference set by the customer when initiating the payment
timestampISO8601 datetimeTimestamp of when the event took place
fee_sourceFeeSourceAccountOptional fee source account details
{
  "type": "inbound_local_payment_settled",
  "event_id": "018c35bc-9019-34b2-5210-ff9900d349bd",
  "event_version": 40,
  "inbound_local_payment_settled": {
    "account_id": "018bfd91-ea86-a787-9d72-754cddfbc294",
    "transaction_id": "018c35bc-9086-638d-0e9a-f1f46ea6146a",
    "instructed_amount": 100000000,
    "amount_with_fee": 100000000,
    "fee_amount": 0,
    "remitter": {
      "name": "Topup",
      "identifier": { "iban": "AE080070000000785666509" }
    },
    "beneficiary": {
      "name": "AED Merchant Account",
      "identifier": { "iban": "AE460266386228195554412" }
    },
    "external_reference": "funding*1701708590",
    "timestamp": "2023-12-04T16:49:59.325104057Z",
    "purpose": "none",
    "currency": "AED"
  }
}

fee_debited

A fee has been debited from an account. Triggered when fees are collected separately from the main transaction.

FieldTypeDescription
transaction_iduuidUnique identifier of the fee debit transaction
account_iduuidThe account from which the fee was debited
amountintegerFee amount in minor currency (e.g. 100 = 1.00)
timestampISO8601 datetimeTimestamp of when the fee was debited
fee_target.typeenumThe type of entity the fee was applied to (e.g. transaction)
fee_target.referenceuuidIdentifier of the entity the fee was charged against
currencystringCurrency in which the fee was debited
{
  "type": "fee_debited",
  "event_id": "49cd3525-bb13-4e85-8df0-a85741c2bc51",
  "event_version": 268,
  "fee_debited": {
    "transaction_id": "019c2978-2271-7bc1-8fd9-c2c183e1f354",
    "account_id": "0196b31a-bbd8-7d14-b333-a1465359b52d",
    "amount": 918,
    "timestamp": "2026-02-04T16:25:31.870483469Z",
    "fee_target": {
      "type": "Transaction",
      "reference": "019c2978-0714-7e93-8f4f-b2c3030e6831"
    },
    "currency": "AED"
  }
}

Transfer

internal_transfer_created

An internal transfer between two accounts has been initiated.

FieldTypeDescription
account_iduuidThe account from which the transfer is made
transaction_iduuidThe Lorum transaction identifier
amountintegerAmount in minor currency (e.g. 100 = 1.00)
to_account_iduuidThe destination account
referencestringReference set by the customer when initiating the transfer
external_idstringExternal ID set on the create transfer request
timestampISO8601 datetimeTimestamp of when the event took place
{
  "type": "internal_transfer_created",
  "event_id": "018c35ad-e939-11e1-b8ac-0896580ef2f6",
  "event_version": 38,
  "internal_transfer_created": {
    "account_id": "018bfd91-ea86-a787-9d72-754cddfbc294",
    "transaction_id": "018c35ad-e939-eea5-d179-495d3fe1a783",
    "amount": 1000000,
    "to_account_id": "018c355c-2413-16df-509f-40e71b142eb3",
    "reference": "transfer-1701707629",
    "external_id": "01JDHZK7QKF0WWQG43WNFQ3YCX",
    "timestamp": "2023-12-04T16:33:59.155913761Z"
  }
}

inbound_internal_transfer_settled

An internal transfer into the account has completed and settled.

FieldTypeDescription
account_iduuidThe account the transfer settled into
from_account_iduuidThe source account
transaction_iduuidThe Lorum transaction identifier
amountintegerAmount in minor currency (e.g. 100 = 1.00)
referencestringReference set by the customer when initiating the transfer
external_idstringExternal ID set on the create transfer request
timestampISO8601 datetimeTimestamp of when the event took place
{
  "type": "inbound_internal_transfer_settled",
  "event_id": "018c35ad-e9ab-ae02-28a0-ebc9d3b70a89",
  "event_version": 3,
  "inbound_internal_transfer_settled": {
    "account_id": "018c355c-2413-16df-509f-40e71b142eb3",
    "from_account_id": "018bfd91-ea86-a787-9d72-754cddfbc294",
    "transaction_id": "018c35ad-e9ab-ae02-28a0-ebc9d3b70a89",
    "amount": 1000000,
    "timestamp": "2023-12-04T16:33:59.211640Z",
    "reference": "transfer-1701707629",
    "external_id": "01JDHZK7QKF0WWQG43WNFQ3YCX"
  }
}

internal_transfer_settled

A transfer from the account has completed.

FieldTypeDescription
account_iduuidThe account from which the transfer settled
transaction_iduuidThe Lorum transaction identifier
external_idstringExternal ID set on the create transfer request
timestampISO8601 datetimeTimestamp of when the event took place
{
  "type": "internal_transfer_settled",
  "event_id": "018c35ad-ea8e-031c-55ec-86af02893c79",
  "event_version": 39,
  "internal_transfer_settled": {
    "account_id": "018bfd91-ea86-a787-9d72-754cddfbc294",
    "transaction_id": "018c35ad-e939-eea5-d179-495d3fe1a783",
    "external_id": "01JDHZK7QKF0WWQG43WNFQ3YCX",
    "timestamp": "2023-12-04T16:33:59.211640Z"
  }
}

internal_transfer_failed

An internal transfer between two accounts was unsuccessful.

FieldTypeDescription
account_iduuidThe account from which the transfer was attempted
transaction_iduuidThe Lorum transaction identifier
external_idstringExternal ID set on the create transfer request
timestampISO8601 datetimeTimestamp of when the event took place
failure_reasonFailureReasonCause of the transfer failure
{
  "type": "internal_transfer_failed",
  "event_id": "697cc542-aa22-4ee3-a278-949d59f24b15",
  "event_version": 44,
  "internal_transfer_failed": {
    "account_id": "018bfd91-ea86-a787-9d72-754cddfbc294",
    "transaction_id": "018c35ad-e939-eea5-d179-495d3fe1a783",
    "timestamp": "2023-12-04T16:33:59.211640Z",
    "failure_reason": "insufficient_funds",
    "external_id": "01JDHZK7QKF0WWQG43WNFQ3YCX"
  }
}

Exchange Transfer

outbound_exchange_transfer_created

A currency exchange from one account to another has been initiated.

FieldTypeDescription
account_iduuidThe source account
counterpart_account_iduuidThe destination account
transaction_iduuidThe Lorum transaction identifier
currencystringSource currency
amountintegerSource amount in minor currency (e.g. 100 = 1.00)
counterpart_currencystringDestination currency
counterpart_amountintegerDestination amount in minor currency
external_referencestringReference set by the customer when initiating the exchange
ratedecimalExchange rate used for the conversion
timestampISO8601 datetimeTimestamp of when the event took place
{
  "type": "outbound_exchange_transfer_created",
  "event_id": "019482b0-57d7-765c-bd23-2235f5d5aaab",
  "event_version": 29,
  "outbound_exchange_transfer_created": {
    "account_id": "01917542-1b7a-7c0c-a39b-17c96d0c7b53",
    "counterpart_account_id": "019342ec-af92-7470-9af9-7543cc6daf71",
    "transaction_id": "019482b0-57d7-765c-bd23-2235f5d5aaab",
    "amount": 10000,
    "counterpart_amount": 36615,
    "external_reference": "reference-123",
    "timestamp": "2024-10-10T07:49:42.487717774Z",
    "currency": "USD",
    "counterpart_currency": "AED",
    "rate": 3.6615
  }
}

outbound_exchange_transfer_submitted

A currency exchange has been submitted for processing.

FieldTypeDescription
account_iduuidThe source account
transaction_iduuidThe Lorum transaction identifier
timestampISO8601 datetimeTimestamp of when the event took place
{
  "type": "outbound_exchange_transfer_submitted",
  "event_id": "019482b0-871d-7d54-8346-a066ecc69221",
  "event_version": 30,
  "outbound_exchange_transfer_submitted": {
    "account_id": "01917542-1b7a-7c0c-a39b-17c96d0c7b53",
    "transaction_id": "019482b0-57d7-765c-bd23-2235f5d5aaab",
    "timestamp": "2024-10-10T07:49:54.649511283Z"
  }
}

outbound_exchange_transfer_executed

The currency exchange has been completed successfully.

FieldTypeDescription
account_iduuidThe source account
transaction_iduuidThe Lorum transaction identifier
timestampISO8601 datetimeTimestamp of when the event took place
{
  "type": "outbound_exchange_transfer_executed",
  "event_id": "019482b0-871d-7d54-8346-a066ecc69221",
  "event_version": 31,
  "outbound_exchange_transfer_executed": {
    "account_id": "01917542-1b7a-7c0c-a39b-17c96d0c7b53",
    "transaction_id": "019482b0-57d7-765c-bd23-2235f5d5aaab",
    "timestamp": "2024-10-10T07:49:54.649511283Z"
  }
}

inbound_exchange_transfer_settled

The converted funds have settled into the destination account.

FieldTypeDescription
account_iduuidThe destination account
counterpart_account_iduuidThe source account
transaction_iduuidThe Lorum transaction identifier
currencystringDestination currency
amountintegerDestination amount in minor currency
counterpart_currencystringSource currency
counterpart_amountintegerSource amount in minor currency
external_referencestringReference set by the customer when initiating the exchange
ratedecimalExchange rate used for the conversion
timestampISO8601 datetimeTimestamp of when the event took place
{
  "type": "inbound_exchange_transfer_settled",
  "event_id": "019482b0-8772-7a46-8792-73d9990dabd1",
  "event_version": 20,
  "inbound_exchange_transfer_settled": {
    "account_id": "019342ec-af92-7470-9af9-7543cc6daf71",
    "counterpart_account_id": "01917542-1b7a-7c0c-a39b-17c96d0c7b53",
    "transaction_id": "019482b0-873e-7f40-9ffe-1e3e298cbb10",
    "amount": 36615,
    "counterpart_amount": 10000,
    "external_reference": "reference-123",
    "timestamp": "2024-10-10T07:49:54.747094304Z",
    "currency": "AED",
    "counterpart_currency": "USD",
    "rate": 3.6615
  }
}

outbound_exchange_transfer_failed

The currency exchange was unsuccessful.

FieldTypeDescription
account_iduuidThe source account
transaction_iduuidThe Lorum transaction identifier
timestampISO8601 datetimeTimestamp of when the event took place
failure_reasonFailureReasonCause of the exchange failure
{
  "type": "outbound_exchange_transfer_failed",
  "event_id": "019482c7-c58d-7240-9850-9c76883b54cf",
  "event_version": 35,
  "outbound_exchange_transfer_failed": {
    "account_id": "01917542-1b7a-7c0c-a39b-17c96d0c7b53",
    "transaction_id": "019482c7-b534-7e55-a2f8-37ddb441866f",
    "failure_reason": { "bank_error": "Manual failure in Portal" },
    "timestamp": "2024-10-10T08:15:17.983389023Z"
  }
}

Onboarding

onboarding_completed

Customer onboarding for a currency has been successfully completed.

FieldTypeDescription
customer_iduuidThe unique identifier for the customer
currencystringISO currency code for the onboarded currency
{
  "type": "onboarding_completed",
  "event_id": "018c35aa-4279-83e7-a90f-4b2901246c51",
  "event_version": 0,
  "onboarding_completed": {
    "customer_id": "018c35aa-4279-83e7-a90f-4b2901246c51",
    "currency": "AED"
  }
}

onboarding_failed

Customer onboarding for a currency has failed.

FieldTypeDescription
customer_iduuidThe unique identifier for the customer
currencystringISO currency code for the onboarded currency
failure_reason.msgstringHuman-readable description of the failure
failure_reason.codeErrorCodeMachine-readable error code

ErrorCode values:

CodeDescription
missing_documentA required document is missing
missing_currency_dataCurrency-specific data is missing from the customer record
no_shareholdersBusiness customer has no shareholders linked
insufficient_majority_ownershipLinked shareholders do not meet the 51% ownership threshold
shareholder_not_onboardedA shareholder is not onboarded to the specified currency
business_registration_date_missingBusiness registration date is missing
individual_missing_proof_of_address_documentIndividual is missing a proof of address document
business_missing_proof_of_address_documentBusiness is missing a proof of address document
{
  "type": "onboarding_failed",
  "event_id": "018c35aa-4279-83e7-a90f-4b2901246c51",
  "event_version": 0,
  "onboarding_failed": {
    "customer_id": "018c35aa-4279-83e7-a90f-4b2901246c51",
    "currency": "AED",
    "failure_reason": {
      "msg": "Individual `018c35aa-4279-83e7-a90f-4b2901246c51` does not have document `passport`",
      "code": "missing_document"
    }
  }
}

Did this page help you?