Vipps MobilePay Management API (1.0.0)
Download OpenAPI specification:Download
The Management API lets partners and merchants manage their sales units, etc. See the API Guide.
Please note: The Management API documentation contains both available functionality, and functionality on the idea stage. See each endpoint and the API guide for details.
Functionality for managing merchants. Merchants can to this on portal.vipps.no.
Get all merchants
Status: Idea/proposal.
For partners. Get a (long) list of all orgnos that have one or more sale units registered with the partner making the API call.
Authorizations:
header Parameters
Merchant-Serial-Number | string Example: 123456 The Merchant Serial Number (MSN) is a unique id for the sale unit that this payment is made for. This is a required parameter if you are a partner making payments on behalf of a merchant. The partner must use the merchant's MSN (not the partner's MSN). This parameter is optional, and recommended, for regular Vipps merchants making payments for themselves. |
Vipps-System-Name required | string Example: woocommerce The name of the solution. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Version required | |
Vipps-System-Plugin-Name required | string Example: vipps-woocommerce The name of the plugin. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Plugin-Version required |
Responses
Response samples
- 200
- default
{- "MerchantList": [
- {
- "orgno": 987654321,
- "name": "ACME Fantastic Fitness",
- "status": "ACTIVE"
}
]
}
Get a merchant by by organization number
Status: Available in Q3.
Get basic information about a merchant. Please note: There are strict rules for what information Vipps MobilePay is allowed to share with a partner, as this requires active consent from the merchant, and the merchant must also be able to withdraw the consent.
Authorizations:
path Parameters
orgno required | string = 9 characters ^\d{9}$ Example: 987654321 The organization number for the merchant |
header Parameters
Merchant-Serial-Number | string Example: 123456 The Merchant Serial Number (MSN) is a unique id for the sale unit that this payment is made for. This is a required parameter if you are a partner making payments on behalf of a merchant. The partner must use the merchant's MSN (not the partner's MSN). This parameter is optional, and recommended, for regular Vipps merchants making payments for themselves. |
Vipps-System-Name required | string Example: woocommerce The name of the solution. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Version required | |
Vipps-System-Plugin-Name required | string Example: vipps-woocommerce The name of the plugin. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Plugin-Version required |
Responses
Response samples
- 200
- default
{- "data": {
- "orgno": 987654321,
- "name": "ACME Fantastic Fitness",
- "status": "ACTIVE"
}
}
Get a merchant's contract(s)
Status: Idea/proposal.
May return a (link to a) PDF.
Authorizations:
path Parameters
orgno required | string = 9 characters ^\d{9}$ Example: 987654321 The organization number for the merchant |
header Parameters
Merchant-Serial-Number | string Example: 123456 The Merchant Serial Number (MSN) is a unique id for the sale unit that this payment is made for. This is a required parameter if you are a partner making payments on behalf of a merchant. The partner must use the merchant's MSN (not the partner's MSN). This parameter is optional, and recommended, for regular Vipps merchants making payments for themselves. |
Vipps-System-Name required | string Example: woocommerce The name of the solution. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Version required | |
Vipps-System-Plugin-Name required | string Example: vipps-woocommerce The name of the plugin. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Plugin-Version required |
Responses
Response samples
- 200
- default
{
}
Get sales units for a merchant by by organization number
Status: Available.
Get a list of sales units (MSNs) for the merchant. When used by a partner: Only returns sales units connected to the partner.
Authorizations:
path Parameters
orgno required | string = 9 characters ^\d{9}$ Example: 987654321 The organization number for the merchant |
header Parameters
Merchant-Serial-Number | string Example: 123456 The Merchant Serial Number (MSN) is a unique id for the sale unit that this payment is made for. This is a required parameter if you are a partner making payments on behalf of a merchant. The partner must use the merchant's MSN (not the partner's MSN). This parameter is optional, and recommended, for regular Vipps merchants making payments for themselves. |
Vipps-System-Name required | string Example: woocommerce The name of the solution. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Version required | |
Vipps-System-Plugin-Name required | string Example: vipps-woocommerce The name of the plugin. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Plugin-Version required |
Responses
Response samples
- 200
- default
[- "123456"
]
Functionality for managing sales units. Merchants can to this on portal.vipps.no.
Get all sales units that a merchant or partner has access to.
Status: Idea/proposal.
For partners using partner keys: Get a (long) list of all sales units registered with the partner making the API call.
Authorizations:
header Parameters
Merchant-Serial-Number | string Example: 123456 The Merchant Serial Number (MSN) is a unique id for the sale unit that this payment is made for. This is a required parameter if you are a partner making payments on behalf of a merchant. The partner must use the merchant's MSN (not the partner's MSN). This parameter is optional, and recommended, for regular Vipps merchants making payments for themselves. |
Vipps-System-Name required | string Example: woocommerce The name of the solution. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Version required | |
Vipps-System-Plugin-Name required | string Example: vipps-woocommerce The name of the plugin. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Plugin-Version required |
Responses
Response samples
- 200
- default
[- "123456"
]
Get sales unit details based on MSN
Status: Available.
Eliminates the need to contact the merchant or Vipps MobilePay to get information about the sales units.
Authorizations:
path Parameters
msn required | string [ 5 .. 6 ] characters ^\d{5,6}$ The Vipps MSN (merchant serial number) for the sales unit. |
header Parameters
Merchant-Serial-Number | string Example: 123456 The Merchant Serial Number (MSN) is a unique id for the sale unit that this payment is made for. This is a required parameter if you are a partner making payments on behalf of a merchant. The partner must use the merchant's MSN (not the partner's MSN). This parameter is optional, and recommended, for regular Vipps merchants making payments for themselves. |
Vipps-System-Name required | string Example: woocommerce The name of the solution. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Version required | |
Vipps-System-Plugin-Name required | string Example: vipps-woocommerce The name of the plugin. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Plugin-Version required |
Responses
Response samples
- 200
- default
{- "msn": "123456",
- "name": "ACME Fantastic Fitness",
- "businessIdentifier": {
- "scheme": "business:NO:ORG",
- "id": "9876543221"
}, - "configuration": {
- "paymentAllowed": false,
- "captureType": "ReserveCapture",
- "skipLandingPageAllowed": false,
- "recurringAllowed": false
}
}
Update sales unit
Status: Idea/proposal.
Change the sales unit's name, logo, possibly more.
Authorizations:
path Parameters
msn required | string [ 5 .. 6 ] characters ^\d{5,6}$ The Vipps MSN (merchant serial number) for the sales unit. |
header Parameters
Merchant-Serial-Number | string Example: 123456 The Merchant Serial Number (MSN) is a unique id for the sale unit that this payment is made for. This is a required parameter if you are a partner making payments on behalf of a merchant. The partner must use the merchant's MSN (not the partner's MSN). This parameter is optional, and recommended, for regular Vipps merchants making payments for themselves. |
Vipps-System-Name required | string Example: woocommerce The name of the solution. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Version required | |
Vipps-System-Plugin-Name required | string Example: vipps-woocommerce The name of the plugin. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Plugin-Version required |
Request Body schema: application/json
What to patch
name | string <= 50 characters Name of the sales unit. |
salesUnitLogo | string <byte> Base64 encoded string of the logo of the merchant. The logo will be displayed in the Vipps app, both when paying and on receipts and also in Vipps landing page. The logo must be in PNG (Portable Network Graphics) format. Square images are recommended. The longest side can not be more than 1000 pixels. The minimum size is 100 x 100 pixels. Images not matching the above criteria will not be shown to the merchant in the merchant portal. The logo can be edited later on portal.vipps.no. |
status | string Default: "ACTIVE" Enum: "ACTIVE" "DEACTIVATED" Status of the sales unit. This may be used to activate and deactivate a sales unit. |
Responses
Request samples
- Payload
{- "name": "ACME Fantastic Fitness DeLuxe",
- "salesUnitLogo": "VGhlIGltYWdlIGdvZXMgaGVyZQ==",
- "status": "ACTIVE"
}
Response samples
- default
{- "title": "Not authorized to create a product order",
- "status": 401,
- "detail": "Not authorized to create a product order. Check whether Authorization token and Ocp-Apim-Subscription-Key are correct.",
- "instance": "/products/orders",
- "traceId": "81b83246-5c19-7b94-875b-ea6d1114f099",
- "extraDetails": [
- {
- "key": "CustomErrorCode",
- "value": "9000"
}
]
}
Functionality for managing product orders. Merchants can to this on portal.vipps.no.
Get information about a product order
Status: Idea/proposal.
For both merchants and partners. The best way to check the status of a product order is on portal.vipps.no. Please note: There are strict rules for what information Vipps MobilePay is allowed to share with a partner, as this requires active consent from the merchant, and the merchant must also be able to withdraw the consent.
Authorizations:
path Parameters
product-order-id required | string [ 3 .. 10 ] characters ^\d{3,10}$ Example: 12345 The product order's id |
header Parameters
Merchant-Serial-Number | string Example: 123456 The Merchant Serial Number (MSN) is a unique id for the sale unit that this payment is made for. This is a required parameter if you are a partner making payments on behalf of a merchant. The partner must use the merchant's MSN (not the partner's MSN). This parameter is optional, and recommended, for regular Vipps merchants making payments for themselves. |
Vipps-System-Name required | string Example: woocommerce The name of the solution. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Version required | |
Vipps-System-Plugin-Name required | string Example: vipps-woocommerce The name of the plugin. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Plugin-Version required |
Responses
Response samples
- 200
- default
{- "prefilledOrderId": "81b83246-5c19-7b94-875b-ea6d1114f099",
- "prefillStatus": "PROCESSING"
}
Delete a product order
Status: Idea/proposal.
Undo: To be used if a PO is sent by mistake, etc.
Authorizations:
path Parameters
product-order-id required | string [ 3 .. 10 ] characters ^\d{3,10}$ Example: 12345 The product order's id |
header Parameters
Merchant-Serial-Number | string Example: 123456 The Merchant Serial Number (MSN) is a unique id for the sale unit that this payment is made for. This is a required parameter if you are a partner making payments on behalf of a merchant. The partner must use the merchant's MSN (not the partner's MSN). This parameter is optional, and recommended, for regular Vipps merchants making payments for themselves. |
Vipps-System-Name required | string Example: woocommerce The name of the solution. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Version required | |
Vipps-System-Plugin-Name required | string Example: vipps-woocommerce The name of the plugin. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Plugin-Version required |
Responses
Response samples
- default
{- "title": "Not authorized to create a product order",
- "status": 401,
- "detail": "Not authorized to create a product order. Check whether Authorization token and Ocp-Apim-Subscription-Key are correct.",
- "instance": "/products/orders",
- "traceId": "81b83246-5c19-7b94-875b-ea6d1114f099",
- "extraDetails": [
- {
- "key": "CustomErrorCode",
- "value": "9000"
}
]
}
Pre-fill a product order on behalf of a merchant
Status: Available.
Submit data that pre-fills the order form on portal.vipps.no, so the merchant can review the information and submit the product order.
Please note that complianceData
and website
information are required for the VIPPS_PA_NETT
product type.
Partners can still submit the product orders without it, but the merchant will have to fill
in compliance data and website information manually in the merchant portal product order form and submit,
and this is a common source of problems.
We have made as many of the fields as possible optional, but please try to send as much as you can, to make it easy for the merchant and make the processing as fast as possible.
IMPORTANT: Please provide all the necessary details, so it will not be necessary for us to request more details. This is the most common reason for delays. See: https://developer.vippsmobilepay.com/docs/partner/#typical-reasons-for-delays
Authorizations:
header Parameters
Merchant-Serial-Number | string Example: 123456 The Merchant Serial Number (MSN) is a unique id for the sale unit that this payment is made for. This is a required parameter if you are a partner making payments on behalf of a merchant. The partner must use the merchant's MSN (not the partner's MSN). This parameter is optional, and recommended, for regular Vipps merchants making payments for themselves. |
Vipps-System-Name required | string Example: woocommerce The name of the solution. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Version required | |
Vipps-System-Plugin-Name required | string Example: vipps-woocommerce The name of the plugin. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Plugin-Version required | |
Idempotency-Key required | string <= 50 characters ^[a-zA-Z0-9-]{1,50}$ Example: kRk3uEeiogxLu1yGSZRlNgsIv3TuNS An Idempotency key must be provided to ensure idempotent requests. |
Request Body schema: application/json
Product order for a merchant request body
required | object (businessIdentifier) Business registration number of the merchant for whom the partner is submitting the product order. Only Norwegian (business:NO:ORG) business registration numbers are allowed for now, but this format supports all countries. |
salesUnitName | string or null [ 1 .. 30 ] characters ^[\p{L}\p{M}\d\\(\)-_\+\s\.]+$ The name of the point of sale that will be shown to the users in the Vipps app and on the Vipps landing page. The sales unit name can be edited later on portal.vipps.no. |
salesUnitLogo | string or null <byte> Base64 encoded string of the logo of the merchant. The logo will be displayed in the Vipps app, both when paying and on receipts and also in Vipps landing page. The logo must be in PNG (Portable Network Graphics) format. Square images are recommended. The longest side can not be more than 1000 pixels. The minimum size is 100 x 100 pixels. Images not matching the above criteria will not be shown to the merchant in the merchant portal. The logo can be edited later on portal.vipps.no. |
settlementAccountNumber | string or null = 11 characters ^[0-9]{11,11}$ The bank account number belonging to the organisation that will be used for settlement. The bank account must be owned by the merchant. BBAN (not IBAN) format. |
pricePackageId | string or null <uuid> Only for |
productType required | string Enum: "VIPPS_PA_NETT" "VIPPS_LOGG_INN" "VIPPS_CHECKOUT" "VIPPS_I_KASSA" The type of product ordered for the merchant. |
productUseCase | string Enum: "Website" "WebsiteWithTest" "App" "Unknown" Where will sales take place? A website? A website that is not yet launched, so a test website must be used? A native app? Something else? |
annualTurnover | integer <int64> [ 0 .. 999999999 ] Annual turnover for the merchant in NOK (without øre). |
intendedPurpose | string or null Description (explanation) of the product or products that will be sold.
Include all information relevant to processing the product order, so the
processing of the application can be as efficient as possible.
This can include hints such as specifying "POS integration in physical store"
to indicate that the sales unit needs |
object or null | |
object or null |
Responses
Request samples
- Payload
{- "businessIdentifier": {
- "scheme": "business:NO:ORG",
- "id": "9876543221"
}, - "salesUnitName": "ACME Fantastic Fitness",
- "salesUnitLogo": "VGhlIGltYWdlIGdvZXMgaGVyZQ==",
- "settlementAccountNumber": "86011117947",
- "pricePackageId": "8a11afb7-c223-48ed-8ca6-4722b97261aa",
- "productType": "VIPPS_PA_NETT",
- "productUseCase": "WebsiteWithTest",
- "annualTurnover": 100000,
- "intendedPurpose": "Gym membership for accessing the gym's facilities.\nGuest will be not physically present when buying the subscription,\nas that is done on the gym's website.",
- "website": {
- "testWebsiteUrl": "https://example.com/test ",
- "testWebsiteUsername": "test-user",
- "testWebsitePassword": "test-password"
}, - "complianceData": {
- "giftCard": {
- "isSalesPercentageLessThanTen": false,
- "validityDuration": "3 years",
- "giftCardTurnoverShare": "about 25%"
}, - "membership": {
- "turnoverShare": "about 25%",
- "membershipValidity": "CurrentCalendarYear",
- "periodDistribution": "50% yearly 20% monthly"
}, - "subscription": {
- "turnoverShare": "about 25%",
- "periodDistribution": "50% yearly 20% monthly"
}, - "course": {
- "turnoverShare": "about 25%",
- "timeBeforeOrder": "10 days",
- "period": "once every 6. week",
- "isOnlineCourseOffered": false,
- "onlineAccessibleTime": "for 3 months"
}, - "ticket": {
- "turnoverShare": "about 25%",
- "prepurchaseTime": "10 weeks"
}, - "rent": {
- "turnoverShare": "about 25%",
- "prepurchaseTime": "15 days",
- "averageRentalDuration": "3 weeks"
}, - "prepaidServices": {
- "turnoverShare": "about 25%",
- "prepurchaseTime": "10 weeks"
}, - "donation": {
- "acceptsDonation": false
}
}
}
Response samples
- 201
- default
{- "prefilledOrderId": "81b83246-5c19-7b94-875b-ea6d1114f099",
}
Functionality for (or about) partners. See: Vipps Partners.
Get information about a partner.
Status: Idea/proposal.
For partners using partner keys: Get details for the partner that is making the request. An endpoint where a partner can fetch the information stored about them.
Authorizations:
header Parameters
Merchant-Serial-Number | string Example: 123456 The Merchant Serial Number (MSN) is a unique id for the sale unit that this payment is made for. This is a required parameter if you are a partner making payments on behalf of a merchant. The partner must use the merchant's MSN (not the partner's MSN). This parameter is optional, and recommended, for regular Vipps merchants making payments for themselves. |
Vipps-System-Name required | string Example: woocommerce The name of the solution. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Version required | |
Vipps-System-Plugin-Name required | string Example: vipps-woocommerce The name of the plugin. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Plugin-Version required |
Responses
Response samples
- 200
- default
{- "partnerId": "123456",
- "name": "ACME Partner Inc",
- "level": "Vipps Partner Premium",
- "partnerContactName": "firstName lastName",
- "partnerContactEmail": "firstname.lastname@vippsmobilepay.com",
- "status": "ACTIVE"
}
Get price packages for a partner.
Status: Available.
The price packages can have different names and percentages.
Each price packages has a unique id: pricePackageId
.
This endpoint lets partners get an overview of their price packages.
The pricePackageId
is also used for the pre-fill endpoint:
POST:/product-orders
.
Authorizations:
header Parameters
Merchant-Serial-Number | string Example: 123456 The Merchant Serial Number (MSN) is a unique id for the sale unit that this payment is made for. This is a required parameter if you are a partner making payments on behalf of a merchant. The partner must use the merchant's MSN (not the partner's MSN). This parameter is optional, and recommended, for regular Vipps merchants making payments for themselves. |
Vipps-System-Name required | string Example: woocommerce The name of the solution. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Version required | |
Vipps-System-Plugin-Name required | string Example: vipps-woocommerce The name of the plugin. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Plugin-Version required |
Responses
Response samples
- 200
- default
[- {
- "pricePackageId": "8a11afb7-c223-48ed-8ca6-4722b97261aa",
- "name": "POS standard",
- "description": "2.99%",
- "visibleInSignupForm": true,
- "productType": "ePayment"
}
]
Information about a partner's or merchant's API usage quality. The data is the same as on the API Dashboard: https://developer.vippsmobilepay.com/docs/developer-resources/api-dashboard/
Get API quality info: Errors, etc
Status: Idea/proposal.
We want all API integrations to be without errors. All merchants can check the API Dashboard. Partners are contractually required to monitor for errors (and correct problems quickly), and this endpoint makes that work much easier. The underlying data is the same as used by the API Dashboard.
Authorizations:
path Parameters
msn required | string [ 5 .. 6 ] characters ^\d{5,6}$ The Vipps MSN (merchant serial number) for the sales unit. |
header Parameters
Merchant-Serial-Number | string Example: 123456 The Merchant Serial Number (MSN) is a unique id for the sale unit that this payment is made for. This is a required parameter if you are a partner making payments on behalf of a merchant. The partner must use the merchant's MSN (not the partner's MSN). This parameter is optional, and recommended, for regular Vipps merchants making payments for themselves. |
Vipps-System-Name required | string Example: woocommerce The name of the solution. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Version required | |
Vipps-System-Plugin-Name required | string Example: vipps-woocommerce The name of the plugin. One word in lowercase letters is good. See HTTP headers. |
Vipps-System-Plugin-Version required |
Responses
Response samples
- 200
- default
{- "ApiQualityItems": [
- {
- "endpoint": "POST:/epayment/v1/payments",
- "total Requests": 1000,
- "successRate": 95,
- "status200": 950,
- "status400": 10,
- "status401": 10,
- "status403": 10,
- "status404": 10,
- "status429": 10,
- "status500": 0
}
]
}