Skip to main content

Event types

The Webhooks API sends out events for the following APIs.

ePayment API event types

We support up to 25 webhook registrations per event per MSN. For more about these limits, see webhook limits.

NameEvent Type
Createdepayments.payment.created.v1
Abortedepayments.payment.aborted.v1
Expiredepayments.payment.expired.v1
Cancelledepayments.payment.cancelled.v1
Capturedepayments.payment.captured.v1
Refundedepayments.payment.refunded.v1
Authorizedepayments.payment.authorized.v1
Terminatedepayments.payment.terminated.v1

The payload format is:

msn
required
string (MSNType) [ 4 .. 7 ] characters ^[0-9]{4,7}$

The merchant serial number (MSN) for the sales unit.

reference
required
string (ReferenceType) [ 8 .. 50 ] characters ^[a-zA-Z0-9-]{8,50}$

The reference is the unique identifier for the payment, specified when initiating the payment. The reference must be unique for the sales unit (MSN), but is not globally unique, so several MSNs may use the same reference. See the recommendations.

pspReference
required
string (PspReference)

Reference value for a payment, defined by Vipps MobilePay. Each payment operation (capture, refund, etc.) will have a unique pspReference.

name
required
string (PaymentEventName)
Enum: "CREATED" "ABORTED" "EXPIRED" "CANCELLED" "CAPTURED" "REFUNDED" "AUTHORIZED" "TERMINATED"
required
object (Amount)

Amount object, containing a value and a currency.

timestamp
required
string <date-time>
idempotencyKey
string or null

The Idempotency key of the request.

success
required
boolean

The outcome of this payment operation: true means that the operation was successful.

{
  • "msn": "1234567",
  • "reference": "acme-shop-123-order123abc",
  • "pspReference": "3343121302",
  • "name": "AUTHORIZED",
  • "amount": {
    },
  • "timestamp": "2024-12-31T00:00:00Z",
  • "idempotencyKey": "string",
  • "success": true
}

For more details, see ePayment Webhooks.

Login API event types

We support up to 25 webhook registrations per event per MSN.

NameEvent Type
Pinglogin.merchant-initiated.ping.v1

The payload will contain:

NameTypeDescription
auth_req_idStringThe auth_req_id that identifies the login.

For more details, see Login Webhooks.

QR API event types

We support up to one webhook registration per event per MSN. For more about these limits, see webhook limits.

NameEvent Type
CheckedInuser.checked-in.v1

The payload format is:

NameTypeDescription
customerTokenBase64 stringA reference to the customer. Should be used when initiating a payment through the ePayment API. Token is valid for 15 minutes.
merchantQrIdstringThe ID of the QR code that has been scanned which is defined by the merchant when the QR was created.
msnstringMerchant serial number. A unique ID of the sales unit to which the scanned QR belongs.
initiatedAtUTC Timestamp in ISO 8601 formatThe timestamp of when the customer scanned the QR.

For more details, see QR Webhooks.

Recurring API event types

We support up to 25 webhook registrations per event type per MSN. For more about these limits, see webhook limits.

Agreement webhook event types

NameEvent Type
Agreement acceptedrecurring.agreement-activated.v1
Agreement rejectedrecurring.agreement-rejected.v1
Agreement stoppedrecurring.agreement-stopped.v1
Agreement expiredrecurring.agreement-expired.v1

Payload properties may include:

Field nameTypeDescriptionPossible values
agreementIdstringID of an agreementagr_kFW4chk
agreementUUIDUUIDID of an agreement82ce990f-d08a-448c-bd26-ee6be8418d06
agreementExternalIdnullable stringMerchant provided external ID of agreementExtId123
eventTypeenumIndicates what has happened to an agreementValues provided in a table above
occurredISO 8601 UTC dateWhen change has occurred2023-10-10T13:30:36.079765975Z
actornullable enumIndicates who has initiated action. Applicable only for recurring.agreement-stopped.v1 webhook.MERCHANT, USER
msnstringMerchant Serial Number (MSN)119145

Charge webhook event types

NameEvent Type
Charge reservedrecurring.charge-reserved.v1
Charge capturedrecurring.charge-captured.v1
Charge cancelledrecurring.charge-canceled.v1
Charge failedrecurring.charge-failed.v1
Charge failed on creationrecurring.charge-creation-failed.v1

Payload properties may include:

Field nameTypeDescriptionPossible values
agreementIdstringID of an agreementagr_kFW4chk
chargeExternalIdnullable stringMerchant provided external ID of chargeExtId123
chargeIdstringID of a charge82ce990f-d08a-448c-bd26-ee6be8418d06
amountnumberAmount of charge in øre (NOK, DKK) or cents (EUR)300
chargeTypeenumIndicates type of chargeRECURRING, INITIAL, UNSCHEDULED
eventTypeenumIndicates what has happened to a chargeValues provided in a table above
currencyenumCurrency of chargeDKK, NOK, EUR
occurredISO 8601 UTC dateWhen change has occurred2023-10-10T13:30:36.079765975Z
amountCapturednumberAmount of payment that was captured100
amountCancelednumberAmount of charge that was canceled200
amountRefundednumberAmount of charge that was refunded100
failureCodenullable numberCode of an error during async creationListed below
failureTextnullable stringExplanation of an error during async creationListed below
msnstringMerchant Serial Number (MSN)119145

Possible failureCode and failureText combinations. These fields are only present if the charge has failed async validation and was created using the multiple charge creation endpoint: POST:/recurring/v3/agreements/charges.

Failure codeFailure textExplanation
50006DeclinedBySystemUnspecified exception during charge creation
50003AgreementNotActiveCharge is requested for non-active agreement
70001ChargeAmountTooHighForFixedAmountAgreementCharge amount is 5 times higher than fixed amount agreement's amount
70002ChargeCreationConflictTrying to create charge with same idempotency key more than once
70004ChargeTooFarInFutureDue date is too far in the future
70005ChargeDueDateTooSoonDue date is too soon

For more details, see: Recurring Webhooks.

Help us improve our documentation

Did you find what you were looking for?