About VIPPS

General information about VIPPS

Logo

Info

Vipps is a mobile wallet enabling quick and secure payments in Norway, Denmark and Finland, where it operates as MobilePay. Users can link their phone numbers to payment cards for peer-to-peer transfers, bill payments and online or in-store purchases. It also simplifies shared expense management, like splitting group costs. It is widely adopted across Scandinavia, offering seamless digital payment experiences for consumers and merchants alike.

TypePayments by eWallet

A mobile payment solution enables customers to complete transactions using their phone number. This system integrates both Vipps and MobilePay through a unified API. The process involves steps such as authorization, token generation, and redirection. The unified API is designed for use in Sweden and Finland under the MobilePay brand and in Norway under the Vipps brand. Customers receive a request on their mobile app and confirm the transaction directly on their smartphone. This solution streamlines payments by securely storing card details in the app, eliminating the need for manual card entry. It also supports invoice receipt. The design guidelinke could be found on following link: https://developer.vippsmobilepay.com/docs/knowledge-base/design-guidelines/buttons/

Further information can be found on the webpage of VIPPS (https://vippsmobilepay.com/en).

On this page


Process flow chart

VIPPS process flow


interface


Payment with VIPPS over form interface

To initiate a payment with VIPPS, please use the following URL:

vipps.aspx

 

Key

Format

CND

Description

RefNr

an..50

O

Unique identifier for the payment. Must be unique for the sales unit. It should be UUID preferably, without leading zero, A-Z/a-z, hyphen '-'. New reference ID should be provided for each attempt.

Amount

n..10

M

Amount in the smallest currency unit. Minimum amounts: NOK: 100 øre, DKK: 1 øre, EUR: 1 cent

Currency

a3

M

Currency, three digits DIN / ISO 4217, e.g. NOK, EUR, DKK. Please find an overview here: A1 Currency table

Key

Format

CND

Description

OrderDesc

ans..100

M

Description of purchased goods

Key

Format

CND

Description

MinAge

n..2

O

Minimum age required for purchase. If specified, VIPPS will verify customer's age before allowing payment. Valid values: 15-99

phoneNumber

an..15

O

Customer's phone number in MSISDN format (e.g., 4712345678). Recommended to provide for better user experience allows pre-filling phone number on VIPPS payment page.

Parameters for VIPPS


Result parameters for URLNotify, URLSuccess and URLFailure in case of VIPPS


Create agreement for VIPPS recurring payments (RTF=A or RTF=I)

In order to create an agreement for VIPPS recurring payments with or without initial charge, please use the following URL:

vipps.aspx

 

Key

Format

CND

Description

RTF

a1

C

A = Create agreement without initial charge / I = Create agreement with initial charge

ProductName

ans..45

M

Product name displayed to customer

OrderDesc

ans..100

M

Description of purchased goods/products

PricingType

ans..8

M

For LEGACY = Fixed recurring amount / For VARIABLE = Flexible amount per charge

Amount

n..10

C

For LEGACY: Mandatory - fixed recurring amount in smallest currency unit / For VARIABLE: Mandatory - suggested maximum amount that customer can approve. Minimum amounts apply: NOK 100 øre, DKK 1 øre, EUR 1 cent.

Currency

a3

M

Currency, three digits DIN / ISO 4217, e.g. NOK, EUR, DKK. Please find an overview here: A1 Currency table

AgreementInterval

ans..5

O

Interval unit: YEAR, MONTH, WEEK, DAY. If not provided, creates variable agreement without fixed interval

AgreementIntervalCount

n..2

O

Number of units in time period (e.g., unit=WEEK, count=2 for bi-weekly)

URLConfirm

ans..256

M

URL where customer is redirected after agreement approval/rejection in VIPPS app

TermURL

ans..1024

C

URL where customer can manage subscription. Mandatory for Norway. Must offer actual management capabilities, not just contact info.

phoneNumber

an..15

O

Customer's phone number in MSISDN format (e.g., 4712345678) for pre-filling. Accepts 0-15 digits. If 10-15 digits provided, sent to VIPPS for pre-filling. If less than 10 digits or empty, omitted from request but payment proceeds normally. Customer enters phone manually on VIPPS page when not provided.

MinAge

n..2

O

Minimum age required (15-99). VIPPS verifies before allowing payment.

AboID

ans..64

O

External subscription ID to map agreement to merchant's system

RefNr

an..50

O

Unique identifier for payment (UUID preferred, A-Z/a-z, hyphen allowed)

ChargeAmount

n..10

M

Only for RTF=I: Initial charge amount in smallest currency unit (e.g. 1000 = 10.00 NOK)

  • Amount (or leave empty/0) = defines the recurring pricing for FUTURE charges
  • ChargeAmount = defines the actual amount charged IMMEDIATELY upon agreement approval
  • These can be different (e.g. discounted first payment, then regular price)

Example  Monthly subscription with first month discount:

RTF=I
PricingType=LEGACY
Amount=1000                    // Regular monthly price for future charges
ChargeAmount=500               // Discounted first month charge
ChargeDescription=First month special offer

ChargeDescription

ans..100

M

Only for RTF=I: Description for the initial charge (visible to customer)




Campaign parameters (optional)

CampaignType

ans..13

O

PRICECAMPAIGN = Special price until end date /
PERIODCAMPAIGN = Special price for defined intervals /
EVENTCAMPAIGN = Special price until event date

CampaignPrice

n..10

C

Campaign price in smallest currency unit. Required if CampaignType specified.

CampaignEnd

dttm

C

Required for PRICECAMPAIGN: Campaign end date (ISO 8601)

CampaignIntervalUnit

ans..5

C

Required for PERIODCAMPAIGN: Unit for period: YEAR, MONTH, WEEK, DAY

CampaignIntervalCount

n..2

C

Required for PERIODCAMPAIGN: Number of units (1-31)

CampaignEventDate

dttm

C

Required for EVENTCAMPAIGN: Event date (ISO 8601)

CampaignEventText

ans..100

C

Required for EVENTCAMPAIGN: Event description

Parameters for creating an agreement for VIPPS recurring payments


Key

Format

CND

Description

BillingAgreementID

ans..64

M

Agreement identifier assigned by VIPPS

RedirectUrl

ans..256

M

URL to redirect customer for agreement confirmation

Response parameters for creating an agreement for VIPPS recurring payments


Create recurring payment (RTF=R) for VIPPS

There are two types of charges in VIPPS recurring:

  • Initial charge: Created automatically with RTF=I during agreement creation
  • Regular/recurring charge: Created with RTF=R for existing agreements (this section)

In order to create a VIPPS recurring payment, please use the following URL:

vipps.aspx

 

Key

Format

CND

Description

Amount

n..10

M

Charge amount in smallest currency unit

Currency

a3

M

Currency (must match agreement currency)

Key

Format

CND

Description

OrderDesc

ans..100

M

Charge description visible to customer

Key

Format

CND

Description

RTF

a1

M

Must be R to create recurring charge

BillingAgreementID

ans..64

M

Agreement identifier to charge against (from agreement creation response)

DueDate

a10

M

When charge should be processed (YYYY-MM-DD format). Must be at least 2 days in advance (production) or 1 day (test environment).

AboID

ans..64

O

External subscription ID

Parameters for creating a VIPPS recurring payment


Notice on Charge processing: 

  • DIRECT_CAPTURE: Amount is charged immediately on due date (one-stage payment)
  • RESERVE_CAPTURE: Amount is reserved on due date, requires explicit capture within:
    • 14 days (MobilePay)
    • 180 days (VIPPS Norway)


Key

Format

CND

Description

BillingAgreementID

ans..64

M

Agreement identifier assigned by VIPPS

RedirectUrl

ans..256

M

URL to redirect customer for agreement confirmation

Response parameters for creating a VIPPS recurring payment


Cancel/Terminate agreement (RTF=C) for VIPPS recurring payments

Agreement termination is done via vipps.aspx with RTF="C":

vipps.aspx

 

Key

Format

CND

Description

RTF

a1

M

Must be C to terminate agreement

BillingAgreementID

ans..64

M

Agreement identifier to terminate

Parameters for terminating an agreement for VIPPS recurring payments


Key

Format

CND

Description

BillingAgreementID

ans..64

M

Agreement ID that was terminated

Response parameters for terminating an agreement for VIPPS recurring payments


Important notes for recurring payments

Phone number parameter

  • Format: 0-15 numeric digits accepted
  • Conditional sending to VIPPS:
    • If 10-15 digits provided → Sent to VIPPS as Customer.phoneNumber for pre-filling
    • If less than 10 digits or empty → Omitted from VIPPS request, customer enters manually
  • Payment never blocked: Invalid or missing phone numbers do not prevent payment processing
  • Best practice: Include country code (e.g., 4746586653 for Norwegian number) to enable pre-filling

Agreement management

  • Customer has 10 minutes to accept agreement after creation
  • Both merchant and customer can terminate agreements
  • Once canceled (status "STOPPED"), an agreement cannot be reactivated
  • If recurring payments need to be resumed, a new agreement must be created

Charge processing

  • DueDate Requirement: Charges must be created at least 2 days in advance (production) or 1 day (test environment)
  • DIRECT_CAPTURE: Amount is charged immediately on due date (one-stage payment)
  • RESERVE_CAPTURE: Amount is reserved on due date and requires explicit capture within:
    • 14 days (MobilePay)
    • 180 days (VIPPS Norway)
  • Multiple partial captures and refunds are supported

Pricing models

  • LEGACY: Fixed recurring amount specified at agreement creation using the Amount parameter
  • VARIABLE: Flexible amount per charge. Merchant must specify suggested maximum amount (suggestedMaxAmount). Minimum amounts: NOK 100 øre, DKK 1 øre, EUR 1 cent.

Campaign support

Campaigns allow temporary pricing modifications:

  • PRICECAMPAIGN: Special price until specific end date
  • PERIODCAMPAIGN: Special price for defined number of intervals
  • EVENTCAMPAIGN: Special price until specific event date

User-initiated cancellations

Customers can cancel agreements directly in their VIPPS/MobilePay app. When this occurs:

  • Merchant receives notification via URLNotify
  • All pending charges are automatically canceled
  • Agreement status changes to STOPPED


Examples

Example 1: Create agreement without initial charge

MerchantID=YourMerchantID
TransID=unique-trans-12345
MAC=<calculated-hmac>
Currency=NOK
RTF=A
PricingType=LEGACY
Amount=9900
ProductName=Monthly Premium Subscription
OrderDesc=Access to all premium features
AgreementInterval=MONTH
AgreementIntervalCount=1
URLSuccess=https://yoursite.com/success
URLFailure=https://yoursite.com/failure
URLNotify=https://yoursite.com/notify
URLConfirm=https://yoursite.com/confirm
TermURL=https://yoursite.com/manage-subscription


Example 2: Create agreement with discounted initial charge

MerchantID=YourMerchantID
TransID=unique-trans-12346
MAC=<calculated-hmac>
Currency=NOK
RTF=I
PricingType=LEGACY
Amount=9900
ChargeAmount=4900
ChargeDescription=First month 50% off
ProductName=Monthly Premium Subscription
OrderDesc=Access to all premium features
AgreementInterval=MONTH
AgreementIntervalCount=1
URLSuccess=https://yoursite.com/success
URLFailure=https://yoursite.com/failure
URLNotify=https://yoursite.com/notify
URLConfirm=https://yoursite.com/confirm
TermURL=https://yoursite.com/manage-subscription


Example 3: Create recurring charge

MerchantID=YourMerchantID
TransID=unique-trans-12347
MAC=<calculated-hmac>
RTF=R
BillingAgreementID=agr_XsUxU8X
Amount=9900
Currency=NOK
OrderDesc=Monthly subscription payment - February 2025
DueDate=2025-02-15

Example 4: Terminate agreement

MerchantID=YourMerchantID
TransID=unique-trans-12348
MAC=<calculated-hmac>
RTF=C
BillingAgreementID=agr_XsUxU8X
URLSuccess=https://yoursite.com/success
URLFailure=https://yoursite.com/failure
URLNotify=https://yoursite.com/notify



Capture

Captures are possible via a Server-to-Server connection. To carry out a capture via a Server-to-Server connection, please use the following URL:

capture.aspx

 

Parameters for captures of VIPPS


Result parameters for captures of VIPPS


Credit with reference

credit.aspx


Parameters for credit payments with VIPPS


Response parameters for credit payments with VIPPS


Reversal

Reversals are possible via a Server-to-Server connection. In order to cancel a payment via a server-to-server communication, please use the following URL:

reverse.aspx

 

Notice: Reverse.aspx does not only reverse authorisations, but any LAST TRANSACTION STAGE! If the last transaction was a capture, Reverse.aspx initiates the reverse, e.g. a credit. Therefore, the utmost caution is urged. Use is at your own risk. We recommend checking the transaction status with Inquire.aspx before using Reverse.aspx.

Parameters for reversals of VIPPS


Result parameters for reversals of VIPPS