Skip to main content

ePayment webhook events

The ePayment API offers the possibility to subscribe to webhooks for any number of events:

  • You register a webhook URL
  • We send updates and information to the webhook URL you have specified
Please note

Webhooks offer a faster user experience than polling, but you should not rely on webhooks alone. In the rare cases where webhooks may be delayed you should poll the relevant API to get the information you need: GET:/epayment/v1/payments/{reference}. Depending on your use case you should set an appropriate timeout for webhooks. If the webhook is not received within that time you should start polling.

See Knowledge base for polling guidelines.

For any webhook, you will receive the following payload, where the only property changing is the name, which will reflect the event type you subscribed on.

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.

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 the event

{
  • "msn": "1234567",
  • "reference": "acme-shop-123-order123abc",
  • "pspReference": "string",
  • "name": "AUTHORIZED",
  • "amount": {
    },
  • "timestamp": "2019-08-24T14:15:22Z",
  • "idempotencyKey": "string",
  • "success": true
}

See also:

Help us improve our documentation

Did you find what you were looking for?