Status Updates

Monitor payment link statuses with webhook updates

A webhook is an automated API call from feezback to an endpoint API on your side.

With every status change of your payment link, you will get a webhook event:PaymentStatusChanged

📘

Match the webhook to your transfer or customer

Use payload.context to correlate the webhook notification with a specific transaction. Use payload.user to match to your unique user identifier.

Webhook implementation

  • Implement a REST endpoint accepting POST requests
  • Return HTTP 200 status code within 3 seconds
  • Handle JSON payloads with timestamp, event, and payload fields

Webhook Event Details

  • Event Type: PaymentStatusChanged
  • Content Type: application/json

Payload Structure

Top-Level Fields

FieldTypeDescription
payloadObjectContains the main payment transaction details
eventStringThe type of event that triggered the webhook
timestampStringISO 8601 timestamp of when the event occurred

Payload Fields

Note: Do not limit payload fields, as additional fields may be passed by the bank in some scenarios.

FieldTypeDescriptionExample
userStringUser identifier - sub"123456782@tppName"
paymentRequestString, up to 50 digitsUnique UUID for the payment request"9739700b-bfe9-4754-b31b-c55da09577ec"
psuIdString, up to 10 digitsPayment Service User ID"123456782"
requestedAmountString, up to 7 digitsThe amount requested for payment"1.00"
finalAmountObjectObject containing final amount details{"amount": "1", "currency": "ILS"}
aspspCodeString, up to 6 digitsBank identifier code"20"
accountNumberString, up to 34 digitsIBAN or account number"IL790205740000000101678"
psuMessageString, up to 21 digitsMessage reference number (אסמכתא). Can be null if the bank did not send any, or if not a final status."002115"
referenceNumberString, up to 21 digitsTransaction reference number. Can be null if the bank did not send any, or if not a final status."002115"
contextString, up to 50 digitsFree text from Payment LGS"Fusion context"
transferTypeString: "masav" / "fp" / "zahav"Type of transfer"masav"
accountTypeString: "PRIVATE" / "BUSINESS" / "CORPORATE"The type of the account: private, business, or corporate"PRIVATE"
corporateIdNumber9-digit business number (ח.פ.)"515555555"
currentStatusString, see payment status table belowCurrent status of the payment"acceptedTechnicalValidation"
previousStatusString, see payment status table belowPrevious status of the payment (can be null if this is the first status indication)"received"
recurringBooleanIf true, the payment is recurring periodically (monthly). Only sent for periodic payments."True"
startDateISO DateThe first execution date of periodic payments. Only sent for periodic payments."2025-12-12"
occurrencesNumberThe number of times a periodic payment transaction will be executed. If not sent, the payment has no pre-defined number of occurrences and will continue until cancelled. Only sent for periodic payments.3
tppString, up to 10 digitsCustomer identifier"tppID"

Status Transitions

The webhook tracks status changes through:

  • previousStatus: The status before the change
  • currentStatus: The new status after the change

Example transition: receivedacceptedTechnicalValidation


Sample Webhook Payload

Single payment – payment approved

{
    "payload": {
        "user": "123456782@tppName",
        "paymentRequest": "9739700b-bfe9-4754-b31b-c55da09577ec",
        "psuId": "123456782",
        "requestedAmount": "1.00",
        "finalAmount": {
            "amount": "1.00",
            "currency": "ILS"
        },
        "aspspCode": "20",
        "accountNumber": "IL790205740000000101678",
        "psuMessage": "002115",
        "referenceNumber": "002115",
        "context": "Fusion context",
        "transferType": "masav",
        "currentStatus": "acceptedTechnicalValidation",
        "previousStatus": "received",
        "tpp": "{organizationId}"
    },
    "event": "PaymentStatusChanged",
    "timestamp": "2025-01-18T18:25:54.114182+00:00"
}

Periodic payment – payment request received by the bank

{
  "timestamp": "2026-04-07T11:38:21.491871+00:00",
  "event": "PaymentStatusChanged",
  "payload": {
    "user": "{user}@{organization}",
    "paymentRequest": "a2d4a116-3da4-4fdd-85d3-41739dc5cbd0",
    "psuId": "204293062",
    "requestedAmount": "1",
    "finalAmount": false,
    "aspspCode": "11",
    "accountNumber": "IL710110950000102188000",
    "psuMessage": null,
    "referenceNumber": null,
    "remittanceInformationUnstructured": "Fusion payment description",
    "context": "Fusion context",
    "transferType": "fp",
    "accountType": "PRIVATE",
    "corporateId": null,
    "lastStatusChange": null,
    "currentStatus": "received",
    "previousStatus": null,
    "recurring": true,
    "startDate": "2027-12-18",
    "occurrences": 3,
    "tpp": "{organizationId}"
  }
}



Did this page help you?