Skip to content

Weavr Webhook (v2)

For Verification, create a base64 hash using HmacSHA256 using Published-Timestamp header as message and your API key as secret. The result should match the Signature header.

Download OpenAPI description
Overview
Languages
Servers
Mock server
https://api.weavr.io/_mock/products/webhooks/openapi
https://api.weavr.io/""

Corporates

Webhooks

Consumers

Webhooks

Managed Cards

Webhooks

Card adjustmentWebhook

Request

Notification that a balance adjustment has been processed on a managed card.

Headers
call-refstring

A call reference generated by the caller and unique to the caller to provide correlation between the caller and system with a maximum length of 255

published-timestampinteger(int64)required

The timestamp, expressed in Epoch timestamp using millisecond precision, when this event was published.

signature-v2stringrequired

The signature to verify the authenticity of this request. This is the base64 hash (HmacSHA256) of the call-ref + payload + published-timestamp using your API key.

signaturestringDeprecatedrequired

The signature to verify the authenticity of this request. This is the base64 hash (HmacSHA256) of the published-timestamp using your API key.

Bodyapplication/jsonrequired
idobject(InstrumentId)required

The id of the managed card on which a settlement has been performed.

id.​idstring(Id)^[0-9]+$required
id.​typestring(InstrumentType)required
Enum"managed_cards""managed_accounts"
transactionIdstring^[0-9]+$required

The id of the transaction, for reference.

adjustmentTypestring(CardAdjustmentDetailsAdjustmentType)required

The type of adjustment that was processed.

Enum"DEFAULT_ADJUSTMENT""LOST_STOLEN_REPLACEMENT_BALANCE_TRANSFER"
adjustmentAmountobject(LegacyCurrencyAmount)required

The amount in the currency of the card.

adjustmentAmount.​currencystring(Currency)= 3 characters^[A-Z]*$required

The currency expressed in ISO-4217 code. Example: GBP, EUR, USD.

adjustmentAmount.​amountstring^[0-9]+$required

The monetary amount, scaled to the lowest denomination of the currency.

transactionTimestampstring^[0-9]+$required

The timestamp of the transaction, using epoch timestamp with millisecond precision.

availableBalanceobject(LegacyCurrencyAmount)

The updated card available balance after this adjustment was processed.

ownerobject(StringWrappedTypeId)required
owner.​typestring<= 50 characters^[a-zA-Z0-9_-]+$required
owner.​idstring^[0-9]+$required
detailsobject(ManagedCardModeDetails)
application/json
{ "id": { "id": "string", "type": "managed_cards" }, "transactionId": "string", "adjustmentType": "DEFAULT_ADJUSTMENT", "adjustmentAmount": { "currency": "str", "amount": "string" }, "transactionTimestamp": "string", "availableBalance": { "currency": "str", "amount": "string" }, "owner": { "type": "string", "id": "string" }, "details": { "prepaidModeDetails": { … }, "debitModeDetails": { … } } }

Responses

Success - No Content

Card settlementWebhook

Request

Notification that a card settlement has been processed on a managed card.

Headers
call-refstring

A call reference generated by the caller and unique to the caller to provide correlation between the caller and system with a maximum length of 255

published-timestampinteger(int64)required

The timestamp, expressed in Epoch timestamp using millisecond precision, when this event was published.

signature-v2stringrequired

The signature to verify the authenticity of this request. This is the base64 hash (HmacSHA256) of the call-ref + payload + published-timestamp using your API key.

signaturestringDeprecatedrequired

The signature to verify the authenticity of this request. This is the base64 hash (HmacSHA256) of the published-timestamp using your API key.

Bodyapplication/jsonrequired
idobject(InstrumentId)required

The id of the managed card on which a settlement has been performed.

id.​idstring(Id)^[0-9]+$required
id.​typestring(InstrumentType)required
Enum"managed_cards""managed_accounts"
transactionIdstring^[0-9]+$required

The id of the transaction, for reference.

settlementTypestring(CardMerchantSettlementMerchantTransactionType)required

The type of settlement that was processed. Refer to our documentation for further information related to this field.

Enum"SALE_PURCHASE""CASH_WITHDRAWAL""SALE_WITH_CASHBACK""MAIL_OR_TELEPHONE_ORDER""PURCHASE_REFUND_REVERSAL""ORIGINAL_CREDIT_TRANSACTION_REVERSAL""CASH_WITHDRAWAL_REVERSAL""PURCHASE_REFUND""PURCHASE_REVERSAL""ORIGINAL_CREDIT_TRANSACTION"
transactionAmountobject(LegacyCurrencyAmount)required

The amount in the currency of the card.

transactionAmount.​currencystring(Currency)= 3 characters^[A-Z]*$required

The currency expressed in ISO-4217 code. Example: GBP, EUR, USD.

transactionAmount.​amountstring^[0-9]+$required

The monetary amount, scaled to the lowest denomination of the currency.

transactionTimestampstring^[0-9]+$required

The timestamp of the transaction, using epoch timestamp with millisecond precision.

sourceAmountobject(LegacyCurrencyAmount)required

The amount in the currency of the merchant.

sourceAmount.​currencystring(Currency)= 3 characters^[A-Z]*$required

The currency expressed in ISO-4217 code. Example: GBP, EUR, USD.

sourceAmount.​amountstring^[0-9]+$required

The monetary amount, scaled to the lowest denomination of the currency.

merchantDataobject(MerchantData)required

Merchant related information

merchantData.​merchantNamestringrequired

The name of the merchant where the authorisation has been made.

merchantData.​merchantCategoryCodestringrequired

The merchant category code.

merchantData.​merchantIdstringrequired

The merchant ID.

merchantData.​merchantDescriptionstring

The merchant description

merchantData.​merchantStreetstring

The merchant street address (if available)

merchantData.​merchantCitystring

The merchant city (if available)

merchantData.​merchantStatestring

The merchant state address (if available)

merchantData.​merchantPostalCodestring

The merchant postal code (if available)

merchantData.​merchantCountrystring

The merchant country address

merchantData.​merchantTelephonestring

The merchant telephone number

merchantData.​merchantURLstring

The merchant URL

merchantData.​merchantNameOtherstring

The alternative merchant name

merchantData.​merchantNetworkIdstring

The merchant's network id

merchantData.​merchantContactstring

The merchant's contact (if available)

detailsobject(ManagedCardModeDetails)
availableBalanceobject(LegacyCurrencyAmount)

The updated card available balance after this authorisation was processed.

relatedAuthorisationIdsArray of integers(int64)

The list of related authorisation ids which this Settlement is related to.

relatedSettlementIdsArray of integers(int64)

The list of related settlement ids which this Settlement is related to.

ownerobject(StringWrappedTypeId)required
owner.​typestring<= 50 characters^[a-zA-Z0-9_-]+$required
owner.​idstring^[0-9]+$required
feeAmountobject(LegacyCurrencyAmount)required

The settlement fee, in the currency of the card.

feeAmount.​currencystring(Currency)= 3 characters^[A-Z]*$required

The currency expressed in ISO-4217 code. Example: GBP, EUR, USD.

feeAmount.​amountstring^[0-9]+$required

The monetary amount, scaled to the lowest denomination of the currency.

authCodestring[ 1 .. 6 ] characters

The authorisation code associated with this settlement.

statestring(ManagedCardsSettlementEventSettlementState)required

The state of the settlement.

Enum"PENDING""COMPLETED"
forexFeeobject(LegacyCurrencyAmount)

The forex fee, if any, that has been included in the transactionAmount.

digitalWalletDetailsobject(DigitalWalletDetails)

Contains information about the digital wallet, if it has been used.

userCurrencyTransactionDetailsobject(UserCurrencyTransactionDetails)

The object representing the localised transaction's details

merchantNamestringDeprecated

The name of the merchant where the authorisation has been made.

merchantCategoryCodestringDeprecated

The merchant category code.

merchantIdstringDeprecated

The merchant ID.

relatedAuthorisationIdstringDeprecated^[0-9]+$

The related authorisation id which this settlement is clearing.

relatedSettlementIdstringDeprecated^[0-9]+$

The related settlement id.

merchantCountryCodestringDeprecated

The merchant country code.

application/json
{ "id": { "id": "string", "type": "managed_cards" }, "transactionId": "string", "settlementType": "SALE_PURCHASE", "transactionAmount": { "currency": "str", "amount": "string" }, "transactionTimestamp": "string", "sourceAmount": { "currency": "str", "amount": "string" }, "merchantData": { "merchantName": "string", "merchantCategoryCode": "string", "merchantId": "string", "merchantDescription": "string", "merchantStreet": "string", "merchantCity": "string", "merchantState": "string", "merchantPostalCode": "string", "merchantCountry": "string", "merchantTelephone": "string", "merchantURL": "string", "merchantNameOther": "string", "merchantNetworkId": "string", "merchantContact": "string" }, "merchantName": "string", "merchantCategoryCode": "string", "merchantId": "string", "details": { "prepaidModeDetails": { … }, "debitModeDetails": { … } }, "availableBalance": { "currency": "str", "amount": "string" }, "relatedAuthorisationId": "string", "relatedSettlementId": "string", "relatedAuthorisationIds": [ 0 ], "relatedSettlementIds": [ 0 ], "owner": { "type": "string", "id": "string" }, "feeAmount": { "currency": "str", "amount": "string" }, "authCode": "string", "state": "PENDING", "forexFee": { "currency": "str", "amount": "string" }, "merchantCountryCode": "string", "digitalWalletDetails": { "digitalWalletType": "GOOGLE_PAY" }, "userCurrencyTransactionDetails": { "userTransactionAmount": { … }, "userExchangeRate": "string" } }

Responses

Success - No Content

Card expiry and renewalWebhook

Request

Notification that a card is about to expire, a card Expired or a Card was renewed.

Headers
call-refstring

A call reference generated by the caller and unique to the caller to provide correlation between the caller and system with a maximum length of 255

published-timestampinteger(int64)required

The timestamp, expressed in Epoch timestamp using millisecond precision, when this event was published.

signature-v2stringrequired

The signature to verify the authenticity of this request. This is the base64 hash (HmacSHA256) of the call-ref + payload + published-timestamp using your API key.

signaturestringDeprecatedrequired

The signature to verify the authenticity of this request. This is the base64 hash (HmacSHA256) of the published-timestamp using your API key.

Bodyapplication/jsonrequired
idobject(InstrumentId)required

The id of the managed card on which the event occurred.

id.​idstring(Id)^[0-9]+$required
id.​typestring(InstrumentType)required
Enum"managed_cards""managed_accounts"
eventTypestring(ManagedCardsExpiryAndRenewalEventType)required

The type of event.

Enum"CARD_ABOUT_TO_EXPIRE""CARD_EXPIRED""CARD_RENEWED"
stateobject(ManagedInstrumentState)required

The state of the instrument.

state.​statestring(InstrumentState)required

The state of the instrument indicating what it can and cannot do as follows:

  • ACTIVE: The instrument is in an active state and can be used in transactions.
  • BLOCKED: The instrument is temporarily blocked and cannot be used. Any funds on the instrument are also frozen. The blockedReason provides more information as to why it was blocked.
  • DESTROYED: The instrument has been permanently destroyed. The destroyReason provides more information as to why it was destroyed.
  • NOT_ENABLED: The instrument is not enabled for use, since the linked user has not completed all necessary verification steps.
Enum"ACTIVE""BLOCKED""DESTROYED""NOT_ENABLED"
state.​blockedReasonstring(BlockedReason)

The reason why the instrument has been blocked:

  • USER: The root, or an authorised user, of the identity owning the instrument has temporarily blocked the instrument.
  • SYSTEM: The platform or an administrator of the platform has temporarily blocked the instrument.
  • LOST: The instrument has been blocked because it was marked as lost.
Enum"USER""SYSTEM""LOST"
state.​destroyedReasonstring(DestroyedReason)

The reason why the instrument has been destroyed:

  • SYSTEM: The platform or an administrator of the platform has destroyed the instrument.
  • USER: The root, or an authorised user, of the identity owning the instrument has destroyed the instrument.
  • LOST: The instrument was automatically destroyed as it was marked as lost.
  • STOLEN: The instrument was automatically destroyed as it was marked as stolen.
  • EXPIRED: The instrument was automatically destroyed as it expired.
  • COMPROMISED: The instrument was automatically destroyed as it was marked as compromised.
Enum"SYSTEM""USER""LOST""STOLEN""EXPIRED""COMPROMISED"
cardTypestring(CardType)required
Enum"VIRTUAL""PHYSICAL"
expiryMmyystring

The end date of this card, in MMYY format.

renewalTypestring(CardRenewalType)required

Indicates how the card will be handled once it is close to expiring.

  • RENEW: The card will be automatically renewed, keeping the same card number but with a new expiry date and CVV.
  • NO_RENEW: Once the expiry date is reached, the card is destroyed.
Enum"RENEW""NO_RENEW"
renewalTimestampstring^[0-9]+$

The timestamp when the card will be renewed, expressed in Epoch timestamp using millisecond precision.

application/json
{ "id": { "id": "string", "type": "managed_cards" }, "eventType": "CARD_ABOUT_TO_EXPIRE", "state": { "state": "ACTIVE", "blockedReason": "USER", "destroyedReason": "SYSTEM" }, "cardType": "VIRTUAL", "expiryMmyy": "string", "renewalType": "RENEW", "renewalTimestamp": "string" }

Responses

Success - No Content

Managed Accounts

Webhooks

Linked Accounts

Webhooks

Transfers

Webhooks

Send

Webhooks

Outgoing Wire Transfers

Webhooks

Manual Transactions

Webhooks

Fees

Webhooks

Login

Webhooks

Stepup

Webhooks

Authentication Factors

Webhooks

Beneficiaries

Webhooks

Bulk Operations

Webhooks

Auth Users

Webhooks