PSP Signup API (1.1.7)
Download OpenAPI specification:Download
The Vipps PSP Signup API allows PSPs to onboard and control their merchants.
Get all merchants
header Parameters
Authorization required | string Default: eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1Ni (truncated) The access token is a base64-encoded string that is required for all API calls. It is a JWT (JSON Web Token). The access token is fetched from the |
Ocp-Apim-Subscription-Key required | string Subscription key for the PSP Signup API |
Responses
Response samples
- 200
- 400
- 403
- 405
- 500
{- "merchants": [
- {
- "organizationNumber": "123456789",
- "companyName": "Vipps AS",
- "companyEmail": "user@example.com",
- "merchantSerialNumber": "123456",
- "name": "Example AS",
- "mccCode": "5411",
- "status": "ACTIVE",
- "email": "user@example.com",
- "createdAt": "2019-01-01T00:00:00Z",
- "updatedAt": "2019-01-01T00:00:00Z",
- "address": {
- "addressLine1": "Robert Levins gate 5",
- "addressLine2": "Att: Rune Garborg",
- "city": "Oslo",
- "postCode": "0154",
- "country": "NO"
}
}
]
}
Create a new merchant
header Parameters
Authorization required | string Default: eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1Ni (truncated) The access token is a base64-encoded string that is required for all API calls. It is a JWT (JSON Web Token). The access token is fetched from the |
Ocp-Apim-Subscription-Key required | string Subscription key for the PSP Signup API |
Idempotency-Key required | string Unique key for idempotent operation |
Request Body schema: application/json
merchant
organizationNumber required | string [ 1 .. 50 ] characters Organization number of the merchant, in the correct format for the organization's country. For Norway: The orgno must be 9 digits without spaces, the merchant must be active in Brønnøysundregistrene and the orgno must be for the main entity ("hovedenhet"), not a sub entity ("underenhet"). For other countries: The orgno, address, etc is validated as much as practically possible. |
name required | string <= 200 characters The merchant's name. This name will be displayed in the Vipps app. This may be different from the legal name in |
mccCode required | string = 4 characters ^\d{4}$ Four-digit number listed in ISO 18245 for retail financial services, used to classify a business by the types of goods or services it provides. (Apologies for the "MCC code" typo) |
logo required | string Base64 encoded string of the logo of the merchant. The logo will be displayed in the Vipps app, both when paying and on receipts. 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. |
string <email> <= 255 characters ^[a-zA-Z0-9.!#$%&*+\/=?^_{|}~-]+@[a-zA-Z0-9](... Contact email for the merchant. Can be same as companyEmail | |
website | string <uri> <= 255 characters ^[(http(s)?):\/\/(www\.)?a-zA-Z0-9@:%._\+~#=]... The URL for the merchant's website |
required | object (Address) The merchant's address |
companyName required | string <= 255 characters The legal name of the organization. This may be different from |
companyEmail required | string <email> <= 255 characters ^[a-zA-Z0-9.!#$%&*+\/=?^_{|}~-]+@[a-zA-Z0-9](... The merchant's email address |
Responses
Request samples
- Payload
{- "organizationNumber": "123456789",
- "name": "Example AS",
- "mccCode": "5411",
- "logo": "VGhlIGltYWdlIGdvZXMgaGVyZQ== (truncated)",
- "email": "user@example.com",
- "address": {
- "addressLine1": "Robert Levins gate 5",
- "addressLine2": "Att: Rune Garborg",
- "city": "Oslo",
- "postCode": "0154",
- "country": "NO"
}, - "companyName": "Vipps AS",
- "companyEmail": "user@example.com"
}
Response samples
- 200
- 400
- 403
- 405
- 409
- 415
- 500
{- "merchantSerialNumber": "123456"
}
Get merchant by Id
path Parameters
merchantSerialNumber required | string [ 5 .. 6 ] characters ^\d{5,6}$ The Vipps merchant serial number |
header Parameters
Authorization required | string Default: eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1Ni (truncated) The access token is a base64-encoded string that is required for all API calls. It is a JWT (JSON Web Token). The access token is fetched from the |
Ocp-Apim-Subscription-Key required | string Subscription key for the PSP Signup API |
Responses
Response samples
- 200
- 400
- 403
- 404
- 405
- 500
{- "organizationNumber": "123456789",
- "companyName": "Vipps AS",
- "companyEmail": "user@example.com",
- "merchantSerialNumber": "123456",
- "name": "Example AS",
- "mccCode": "5411",
- "status": "ACTIVE",
- "email": "user@example.com",
- "createdAt": "2019-01-01T00:00:00Z",
- "updatedAt": "2019-01-01T00:00:00Z",
- "address": {
- "addressLine1": "Robert Levins gate 5",
- "addressLine2": "Att: Rune Garborg",
- "city": "Oslo",
- "postCode": "0154",
- "country": "NO"
}
}
Update a merchant
path Parameters
merchantSerialNumber required | string [ 5 .. 6 ] characters ^\d{5,6}$ The Vipps merchant serial number |
header Parameters
Authorization required | string Default: eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1Ni (truncated) The access token is a base64-encoded string that is required for all API calls. It is a JWT (JSON Web Token). The access token is fetched from the |
Ocp-Apim-Subscription-Key required | string Subscription key for the PSP Signup API |
Request Body schema: application/json
merchant
deactivate | boolean Set as true in order to deactivate a merchant. Already deactivated merchant cannot be activated or updated through the API |
name | string <= 200 characters The merchant's name. This name will be displayed in the Vipps app. This may be different from the legal name in |
mccCode | string = 4 characters ^\d{4}$ Four-digit number listed in ISO 18245 for retail financial services, used to classify a business by the types of goods or services it provides. (Apologies for the "MCC code" typo) |
logo | string Base64 encoded string of the logo of the merchant. The logo will be displayed in the Vipps app, both when paying and on receipts. 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. |
string <email> <= 255 characters ^[a-zA-Z0-9.!#$%&*+\/=?^_{|}~-]+@[a-zA-Z0-9](... Contact email for the merchant. Can be same as companyEmail | |
website | string <uri> <= 255 characters ^[(http(s)?):\/\/(www\.)?a-zA-Z0-9@:%._\+~#=]... The URL for the merchant's website |
object (Address) The merchant's address |
Responses
Request samples
- Payload
{- "deactivate": true,
- "name": "Example AS",
- "mccCode": "5411",
- "logo": "VGhlIGltYWdlIGdvZXMgaGVyZQ==",
- "email": "user@example.com",
- "address": {
- "addressLine1": "Robert Levins gate 5",
- "addressLine2": "Att: Rune Garborg",
- "city": "Oslo",
- "postCode": "0154",
- "country": "NO"
}
}
Response samples
- 400
- 403
- 404
- 405
- 415
- 500
{- "title": "Postcode validation error",
- "status": 400,
- "detail": "Postcode must be four digits",
}