Process flow chart
VIPPS process flow
Paygate interface
Format Description a alphabetical as alphabetical with special characters n numeric an alphanumeric ans alphanumeric with special characters ns numeric with special characters bool boolean expression (true or false) 3 fixed length with 3 digits/characters ..3 variable length with maximum 3 digits/characters enum enumeration of allowed values dttm ISODateTime (YYYY-MM-DDThh:mm:ss) Abbreviation Description CND condition M mandatory O optional C conditional Notice: Please note that the names of parameters can be returned in upper or lower case.Definitions
Data formats
Abbreviations
Comment If a parameter is mandatory, then it must be present If a parameter is optional, then it can be present, but it is not required If a parameter is conditional, then there is a conditional rule which specifies whether it is mandatory or optional
Payment with VIPPS over form interface
To initiate a payment with VIPPS, please use the following URL:
https://www.computop-paygate.com/vipps.aspx |
Notice: For security reasons, Computop Paygate rejects all payment requests with formatting errors. Therefore, please use the correct data type for each parameter. The following table describes the encrypted payment request parameters:
| Key | Format | CND | Description |
|---|---|---|---|
ans..30 | M | MerchantID, assigned by Computop. Additionally this parameter has to be passed in plain language too. |
| Key | Format | CND | Description |
|---|---|---|---|
| TransID | ans..64 | M | TransactionID provided by you which should be unique for each payment |
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 |
|---|---|---|---|
an64 | M | Hash Message Authentication Code (HMAC) with SHA-256 algorithm. Details can be found here: |
Key | Format | CND | Description |
|---|---|---|---|
OrderDesc | ans..100 | M | Description of purchased goods |
| Key | Format | CND | Description |
|---|---|---|---|
| URLSuccess | ans..256 | M | Complete URL which calls up Paygate if payment has been successful. The URL may be called up only via port 443. This URL may not contain parameters: In order to exchange values between Paygate and shop, please use the parameter UserData.
|
| Key | Format | CND | Description |
|---|---|---|---|
| URLFailure | ans..256 | M | Complete URL which calls up Paygate if payment has been unsuccessful. The URL may be called up only via port 443. This URL may not contain parameters: In order to exchange values between Paygate and shop, please use the parameter UserData.
|
| Key | Format | CND | Description |
|---|---|---|---|
| Response | a7 | O | Status response sent by Paygate to URLSuccess and URLFailure, should be encrypted. For this purpose, transmit Response=encrypt parameter. |
| Key | Format | CND | Description |
|---|---|---|---|
| URLNotify | ans..256 | M | Complete URL which Paygate calls up in order to notify the shop about the payment result. The URL may be called up only via port 443. It may not contain parameters: Use the UserData parameter instead.
|
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. |
| Key | Format | CND | Description |
|---|---|---|---|
| Plain | ans..50 | O | A single value to be set by the merchant to return some information unencrypted in response/notify, e.g. the MID. "Plain"-parameter is part of encrypted "Data" in Computop Paygate and therefore protected against manipulation. |
| Key | Format | CND | Description |
|---|---|---|---|
| Custom | ans..1024 | O | "Custom"-parameter is added to the request data before encryption and is part of encrypted "Data" in Computop Paygate request. By this they are protected against manipulation by a consumer. The Custom-value is added to the Computop Paygate response in plain text and the "|" is replaced by a "&". By this you can put a single value into Custom-parameter and get multiple key-value-pairs back in response for your own purpose. |
The following table gives the result parameters which Computop Paygate transmits to URLSuccess or URLFailure and URLNotify. If you have specified the Response=encrypt parameter, the following parameters are sent Blowfish encrypted to your system: pls. be prepared to receive additional parameters at any time and do not check the order of parameters
the key (e.g. mid, RefNr) should not be checked case-sentive
| Key | Format | CND | Description |
|---|---|---|---|
ans..30 | M | MerchantID, assigned by Computop |
| Key | Format | CND | Description |
|---|---|---|---|
| PayID | an32 | M | ID assigned by Paygate for the payment, e.g. for referencing in batch files as well as for capture or credit request. |
| Key | Format | CND | Description |
|---|---|---|---|
| XID | an32 | M | ID for all single transactions (authorisation, capture, credit note) for one payment assigned by Paygate |
| Key | Format | CND | Description |
|---|---|---|---|
| TransID | ans..64 | M | TransactionID provided by you which should be unique for each payment |
| Key | Format | CND | Description |
|---|---|---|---|
| Status | a..50 | M | OK or AUTHORIZE_REQUEST (URLSuccess) as well as FAILED (URLFailure) |
| Key | Format | CND | Description |
|---|---|---|---|
| Description | ans..1024 | M | Further details in the event that payment is rejected. Please do not use the Description but the Code parameter for the transaction status analysis! |
| Key | Format | CND | Description |
|---|---|---|---|
| Code | an8 | M | Error code according to Paygate Response Codes (A4 Error codes) |
| Key | Format | CND | Description |
|---|---|---|---|
| Plain | ans..50 | O | A single value to be set by the merchant to return some information unencrypted in response/notify, e.g. the MID. "Plain"-parameter is part of encrypted "Data" in Computop Paygate and therefore protected against manipulation. |
| Key | Format | CND | Description |
|---|---|---|---|
| Custom | ans..1024 | O | "Custom"-parameter is added to the request data before encryption and is part of encrypted "Data" in Computop Paygate request. By this they are protected against manipulation by a consumer. The Custom-value is added to the Computop Paygate response in plain text and the "|" is replaced by a "&". By this you can put a single value into Custom-parameter and get multiple key-value-pairs back in response for your own purpose. |
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:
https://www.computop-paygate.com/vipps.aspx |
Notice: For security reasons, Computop Paygate rejects all payment requests with formatting errors. Therefore, please use the correct data type for each parameter. The following table describes the encrypted payment request parameters:
| Key | Format | CND | Description |
|---|---|---|---|
ans..30 | M | MerchantID, assigned by Computop. Additionally this parameter has to be passed in plain language too. |
| Key | Format | CND | Description |
|---|---|---|---|
| TransID | ans..64 | M | TransactionID provided by you which should be unique for each payment |
| Key | Format | CND | Description |
|---|---|---|---|
an64 | M | Hash Message Authentication Code (HMAC) with SHA-256 algorithm. Details can be found here: |
| Key | Format | CND | Description |
|---|---|---|---|
| URLSuccess | ans..256 | M | Complete URL which calls up Paygate if payment has been successful. The URL may be called up only via port 443. This URL may not contain parameters: In order to exchange values between Paygate and shop, please use the parameter UserData.
|
| Key | Format | CND | Description |
|---|---|---|---|
| URLFailure | ans..256 | M | Complete URL which calls up Paygate if payment has been unsuccessful. The URL may be called up only via port 443. This URL may not contain parameters: In order to exchange values between Paygate and shop, please use the parameter UserData.
|
| Key | Format | CND | Description |
|---|---|---|---|
| Response | a7 | O | Status response sent by Paygate to URLSuccess and URLFailure, should be encrypted. For this purpose, transmit Response=encrypt parameter. |
| Key | Format | CND | Description |
|---|---|---|---|
| URLNotify | ans..256 | M | Complete URL which Paygate calls up in order to notify the shop about the payment result. The URL may be called up only via port 443. It may not contain parameters: Use the UserData parameter instead.
|
| Key | Format | CND | Description |
|---|---|---|---|
| Plain | ans..50 | O | A single value to be set by the merchant to return some information unencrypted in response/notify, e.g. the MID. "Plain"-parameter is part of encrypted "Data" in Computop Paygate and therefore protected against manipulation. |
| Key | Format | CND | Description |
|---|---|---|---|
| Custom | ans..1024 | O | "Custom"-parameter is added to the request data before encryption and is part of encrypted "Data" in Computop Paygate request. By this they are protected against manipulation by a consumer. The Custom-value is added to the Computop Paygate response in plain text and the "|" is replaced by a "&". By this you can put a single value into Custom-parameter and get multiple key-value-pairs back in response for your own purpose. |
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)
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 |
The following table gives the result parameters which Computop Paygate transmits to URLSuccess or URLFailure and URLNotify. If you have specified the Response=encrypt parameter, the following parameters are sent Blowfish encrypted to your system: pls. be prepared to receive additional parameters at any time and do not check the order of parameters
the key (e.g. mid, RefNr) should not be checked case-sentive
| Key | Format | CND | Description |
|---|---|---|---|
ans..30 | M | MerchantID, assigned by Computop |
| Key | Format | CND | Description |
|---|---|---|---|
| PayID | an32 | M | ID assigned by Paygate for the payment, e.g. for referencing in batch files as well as for capture or credit request. |
| Key | Format | CND | Description |
|---|---|---|---|
| XID | an32 | M | ID for all single transactions (authorisation, capture, credit note) for one payment assigned by Paygate |
| Key | Format | CND | Description |
|---|---|---|---|
| TransID | ans..64 | M | TransactionID provided by you which should be unique for each payment |
| Key | Format | CND | Description |
|---|---|---|---|
| Status | a..50 | M | OK or AUTHORIZE_REQUEST (URLSuccess) as well as FAILED (URLFailure) |
| Key | Format | CND | Description |
|---|---|---|---|
| Description | ans..1024 | M | Further details in the event that payment is rejected. Please do not use the Description but the Code parameter for the transaction status analysis! |
| Key | Format | CND | Description |
|---|---|---|---|
| Code | an8 | M | Error code according to Paygate Response Codes (A4 Error codes) |
| Key | Format | CND | Description |
|---|---|---|---|
| Plain | ans..50 | O | A single value to be set by the merchant to return some information unencrypted in response/notify, e.g. the MID. "Plain"-parameter is part of encrypted "Data" in Computop Paygate and therefore protected against manipulation. |
| Key | Format | CND | Description |
|---|---|---|---|
| Custom | ans..1024 | O | "Custom"-parameter is added to the request data before encryption and is part of encrypted "Data" in Computop Paygate request. By this they are protected against manipulation by a consumer. The Custom-value is added to the Computop Paygate response in plain text and the "|" is replaced by a "&". By this you can put a single value into Custom-parameter and get multiple key-value-pairs back in response for your own purpose. |
Key | Format | CND | Description |
|---|---|---|---|
BillingAgreementID | ans..64 | M | Agreement identifier assigned by VIPPS |
RedirectUrl | ans..256 | M | URL to redirect customer for agreement confirmation |
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:
https://www.computop-paygate.com/vipps.aspx |
Notice: For security reasons, Computop Paygate rejects all payment requests with formatting errors. Therefore, please use the correct data type for each parameter. The following table describes the encrypted payment request parameters:
| Key | Format | CND | Description |
|---|---|---|---|
ans..30 | M | MerchantID, assigned by Computop. Additionally this parameter has to be passed in plain language too. |
| Key | Format | CND | Description |
|---|---|---|---|
| TransID | ans..64 | M | TransactionID provided by you which should be unique for each payment |
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 |
|---|---|---|---|
an64 | M | Hash Message Authentication Code (HMAC) with SHA-256 algorithm. Details can be found here: |
Key | Format | CND | Description |
|---|---|---|---|
OrderDesc | ans..100 | M | Charge description visible to customer |
| Key | Format | CND | Description |
|---|---|---|---|
| URLSuccess | ans..256 | M | Complete URL which calls up Paygate if payment has been successful. The URL may be called up only via port 443. This URL may not contain parameters: In order to exchange values between Paygate and shop, please use the parameter UserData.
|
| Key | Format | CND | Description |
|---|---|---|---|
| URLFailure | ans..256 | M | Complete URL which calls up Paygate if payment has been unsuccessful. The URL may be called up only via port 443. This URL may not contain parameters: In order to exchange values between Paygate and shop, please use the parameter UserData.
|
| Key | Format | CND | Description |
|---|---|---|---|
| Response | a7 | O | Status response sent by Paygate to URLSuccess and URLFailure, should be encrypted. For this purpose, transmit Response=encrypt parameter. |
| Key | Format | CND | Description |
|---|---|---|---|
| URLNotify | ans..256 | M | Complete URL which Paygate calls up in order to notify the shop about the payment result. The URL may be called up only via port 443. It may not contain parameters: Use the UserData parameter instead.
|
| Key | Format | CND | Description |
|---|---|---|---|
| Plain | ans..50 | O | A single value to be set by the merchant to return some information unencrypted in response/notify, e.g. the MID. "Plain"-parameter is part of encrypted "Data" in Computop Paygate and therefore protected against manipulation. |
| Key | Format | CND | Description |
|---|---|---|---|
| Custom | ans..1024 | O | "Custom"-parameter is added to the request data before encryption and is part of encrypted "Data" in Computop Paygate request. By this they are protected against manipulation by a consumer. The Custom-value is added to the Computop Paygate response in plain text and the "|" is replaced by a "&". By this you can put a single value into Custom-parameter and get multiple key-value-pairs back in response for your own purpose. |
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 |
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)
The following table gives the result parameters which Computop Paygate transmits to URLSuccess or URLFailure and URLNotify. If you have specified the Response=encrypt parameter, the following parameters are sent Blowfish encrypted to your system: pls. be prepared to receive additional parameters at any time and do not check the order of parameters
the key (e.g. mid, RefNr) should not be checked case-sentive
| Key | Format | CND | Description |
|---|---|---|---|
ans..30 | M | MerchantID, assigned by Computop |
| Key | Format | CND | Description |
|---|---|---|---|
| PayID | an32 | M | ID assigned by Paygate for the payment, e.g. for referencing in batch files as well as for capture or credit request. |
| Key | Format | CND | Description |
|---|---|---|---|
| XID | an32 | M | ID for all single transactions (authorisation, capture, credit note) for one payment assigned by Paygate |
| Key | Format | CND | Description |
|---|---|---|---|
| TransID | ans..64 | M | TransactionID provided by you which should be unique for each payment |
| Key | Format | CND | Description |
|---|---|---|---|
| Status | a..50 | M | OK (URLSuccess) or FAILED (URLFailure) |
| Key | Format | CND | Description |
|---|---|---|---|
| Description | ans..1024 | M | Further details in the event that payment is rejected. Please do not use the Description but the Code parameter for the transaction status analysis! |
| Key | Format | CND | Description |
|---|---|---|---|
| Code | an8 | M | Error code according to Paygate Response Codes (A4 Error codes) |
| Key | Format | CND | Description |
|---|---|---|---|
| Plain | ans..50 | O | A single value to be set by the merchant to return some information unencrypted in response/notify, e.g. the MID. "Plain"-parameter is part of encrypted "Data" in Computop Paygate and therefore protected against manipulation. |
| Key | Format | CND | Description |
|---|---|---|---|
| Custom | ans..1024 | O | "Custom"-parameter is added to the request data before encryption and is part of encrypted "Data" in Computop Paygate request. By this they are protected against manipulation by a consumer. The Custom-value is added to the Computop Paygate response in plain text and the "|" is replaced by a "&". By this you can put a single value into Custom-parameter and get multiple key-value-pairs back in response for your own purpose. |
Key | Format | CND | Description |
|---|---|---|---|
BillingAgreementID | ans..64 | M | Agreement identifier assigned by VIPPS |
RedirectUrl | ans..256 | M | URL to redirect customer for agreement confirmation |
Cancel/Terminate agreement (RTF=C) for VIPPS recurring payments
Agreement termination is done via vipps.aspx with RTF="C":
https://www.computop-paygate.com/vipps.aspx |
Notice: For security reasons, Computop Paygate rejects all payment requests with formatting errors. Therefore, please use the correct data type for each parameter. The following table describes the encrypted payment request parameters:
| Key | Format | CND | Description |
|---|---|---|---|
ans..30 | M | MerchantID, assigned by Computop. Additionally this parameter has to be passed in plain language too. |
| Key | Format | CND | Description |
|---|---|---|---|
| TransID | ans..64 | M | TransactionID provided by you which should be unique for each payment |
| Key | Format | CND | Description |
|---|---|---|---|
an64 | M | Hash Message Authentication Code (HMAC) with SHA-256 algorithm. Details can be found here: |
| Key | Format | CND | Description |
|---|---|---|---|
| URLSuccess | ans..256 | M | Complete URL which calls up Paygate if payment has been successful. The URL may be called up only via port 443. This URL may not contain parameters: In order to exchange values between Paygate and shop, please use the parameter UserData.
|
| Key | Format | CND | Description |
|---|---|---|---|
| URLFailure | ans..256 | M | Complete URL which calls up Paygate if payment has been unsuccessful. The URL may be called up only via port 443. This URL may not contain parameters: In order to exchange values between Paygate and shop, please use the parameter UserData.
|
| Key | Format | CND | Description |
|---|---|---|---|
| Response | a7 | O | Status response sent by Paygate to URLSuccess and URLFailure, should be encrypted. For this purpose, transmit Response=encrypt parameter. |
| Key | Format | CND | Description |
|---|---|---|---|
| URLNotify | ans..256 | M | Complete URL which Paygate calls up in order to notify the shop about the payment result. The URL may be called up only via port 443. It may not contain parameters: Use the UserData parameter instead.
|
Key | Format | CND | Description |
|---|---|---|---|
RTF | a1 | M | Must be C to terminate agreement |
BillingAgreementID | ans..64 | M | Agreement identifier to terminate |
| Key | Format | CND | Description |
|---|---|---|---|
| Plain | ans..50 | O | A single value to be set by the merchant to return some information unencrypted in response/notify, e.g. the MID. "Plain"-parameter is part of encrypted "Data" in Computop Paygate and therefore protected against manipulation. |
| Key | Format | CND | Description |
|---|---|---|---|
| Custom | ans..1024 | O | "Custom"-parameter is added to the request data before encryption and is part of encrypted "Data" in Computop Paygate request. By this they are protected against manipulation by a consumer. The Custom-value is added to the Computop Paygate response in plain text and the "|" is replaced by a "&". By this you can put a single value into Custom-parameter and get multiple key-value-pairs back in response for your own purpose. |
The following table gives the result parameters which Computop Paygate transmits to URLSuccess or URLFailure and URLNotify. If you have specified the Response=encrypt parameter, the following parameters are sent Blowfish encrypted to your system: pls. be prepared to receive additional parameters at any time and do not check the order of parameters
the key (e.g. mid, RefNr) should not be checked case-sentive
| Key | Format | CND | Description |
|---|---|---|---|
ans..30 | M | MerchantID, assigned by Computop |
| Key | Format | CND | Description |
|---|---|---|---|
| PayID | an32 | M | ID assigned by Paygate for the payment, e.g. for referencing in batch files as well as for capture or credit request. |
| Key | Format | CND | Description |
|---|---|---|---|
| XID | an32 | M | ID for all single transactions (authorisation, capture, credit note) for one payment assigned by Paygate |
| Key | Format | CND | Description |
|---|---|---|---|
| TransID | ans..64 | M | TransactionID provided by you which should be unique for each payment |
| Key | Format | CND | Description |
|---|---|---|---|
| Status | a..50 | M | OK (URLSuccess) or FAILED (URLFailure) |
| Key | Format | CND | Description |
|---|---|---|---|
| Description | ans..1024 | M | Further details in the event that payment is rejected. Please do not use the Description but the Code parameter for the transaction status analysis! |
| Key | Format | CND | Description |
|---|---|---|---|
| Code | an8 | M | Error code according to Paygate Response Codes (A4 Error codes) |
Key | Format | CND | Description |
|---|---|---|---|
BillingAgreementID | ans..64 | M | Agreement ID that was terminated |
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:
https://www.computop-paygate.com/capture.aspx |
Notice: For security reasons, Computop Paygate rejects all payment requests with formatting errors. Therefore, please use the correct data type for each parameter. The following table describes the encrypted payment request parameters:
| Key | Format | CND | Description |
|---|---|---|---|
ans..30 | M | MerchantID, assigned by Computop. Additionally this parameter has to be passed in plain language too. |
| Key | Format | CND | Description |
|---|---|---|---|
| PayID | an32 | M | ID assigned by Paygate for the payment to be captured |
| Key | Format | CND | Description |
|---|---|---|---|
| TransID | ans..64 | M | TransactionID provided by you which should be unique for each payment |
| Key | Format | CND | Description |
|---|---|---|---|
| Amount | n..10 | M | Amount in the smallest currency unit (e.g. EUR Cent). Please contact the Computop Helpdesk, if you want to capture amounts <100 (smallest currency unit). |
| Key | Format | CND | Description |
|---|---|---|---|
| Currency | a3 | M | Currency, three letters DIN / ISO 4217, e.g. EUR, USD, GBP. Please find an overview here: A1 Currency table |
| Key | Format | CND | Description |
|---|---|---|---|
an64 | M | Hash Message Authentication Code (HMAC) with SHA-256 algorithm. Details can be found here: |
| Key | Format | CND | Description |
|---|---|---|---|
| ReqId | ans..32 | O | To avoid double payments or actions (e.g. by ETM), enter an alphanumeric value which identifies your transaction and may be assigned only once. If the transaction or action is submitted again with the same ReqID, Computop Paygate will not carry out the payment or new action, but will just return the status of the original transaction or action. Please note that the Computop Paygate must have a finalized transaction status for the first initial action (authentication/authorisation). This does not apply to 3-D Secure authentications that are terminated by a timeout. The 3-D Secure Timeout status does not count as a completed status in which the ReqID functionality on Paygate does not take effect. Submissions with identical ReqID for an open status will be processed regularly. Notice: Please note that a ReqID is only valid for 12 month, then it gets deleted at the Paygate. |
The following table describes the result parameters with which the Computop Paygate responds to your system pls. be prepared to receive additional parameters at any time and do not check the order of parameters
the key (e.g. mid, RefNr) should not be checked case-sentive
| Key | Format | CND | Description |
|---|---|---|---|
ans..30 | M | MerchantID, assigned by Computop |
| Key | Format | CND | Description |
|---|---|---|---|
| PayID | an32 | M | ID assigned by Paygate for the payment, e.g. for referencing in batch files as well as for capture or credit request. |
| Key | Format | CND | Description |
|---|---|---|---|
| XID | an32 | M | ID for all single transactions (authorisation, capture, credit note) for one payment assigned by Paygate |
| Key | Format | CND | Description |
|---|---|---|---|
| TransID | ans..64 | M | TransactionID provided by you which should be unique for each payment |
| Key | Format | CND | Description |
|---|---|---|---|
| Status | a..50 | M | OK (URLSuccess) or FAILED (URLFailure) |
| Key | Format | CND | Description |
|---|---|---|---|
| Description | ans..1024 | M | Further details in the event that payment is rejected. Please do not use the Description but the Code parameter for the transaction status analysis! |
| Key | Format | CND | Description |
|---|---|---|---|
| Code | an8 | M | Error code according to Paygate Response Codes (A4 Error codes) |
Credit with reference
Credits (refunds) are possible via a Server-to-Server connection. For a Credit with reference to a capture the amount of the Credit is limited to the amount of the previous capture. To carry out a credit with a reference transaction, please use the following URL:
https://www.computop-paygate.com/credit.aspx |
Notice: For security reasons, Computop Paygate rejects all payment requests with formatting errors. Therefore, please use the correct data type for each parameter. The following table describes the encrypted payment request parameters:
| Key | Format | CND | Description |
|---|---|---|---|
ans..30 | M | MerchantID, assigned by Computop. Additionally this parameter has to be passed in plain language too. |
| Key | Format | CND | Description |
|---|---|---|---|
| PayID | an32 | M | ID assigned by Paygate for the payment to be credited |
| Key | Format | CND | Description |
|---|---|---|---|
| TransID | ans..64 | M | TransactionID provided by you which should be unique for each payment |
| Key | Format | CND | Description |
|---|---|---|---|
| Amount | n..10 | M | Amount in the smallest currency unit (e.g. EUR Cent). Please contact the Computop Helpdesk, if you want to capture amounts <100 (smallest currency unit). |
| Key | Format | CND | Description |
|---|---|---|---|
| Currency | a3 | M | Currency, three letters DIN / ISO 4217, e.g. EUR, USD, GBP. Please find an overview here: A1 Currency table |
| Key | Format | CND | Description |
|---|---|---|---|
an64 | M | Hash Message Authentication Code (HMAC) with SHA-256 algorithm. Details can be found here: |
| Key | Format | CND | Description |
|---|---|---|---|
| ReqId | ans..32 | O | To avoid double payments or actions (e.g. by ETM), enter an alphanumeric value which identifies your transaction and may be assigned only once. If the transaction or action is submitted again with the same ReqID, Computop Paygate will not carry out the payment or new action, but will just return the status of the original transaction or action. Please note that the Computop Paygate must have a finalized transaction status for the first initial action (authentication/authorisation). This does not apply to 3-D Secure authentications that are terminated by a timeout. The 3-D Secure Timeout status does not count as a completed status in which the ReqID functionality on Paygate does not take effect. Submissions with identical ReqID for an open status will be processed regularly. Notice: Please note that a ReqID is only valid for 12 month, then it gets deleted at the Paygate. |
The following table describes the result parameters with which the Computop Paygate responds to your system pls. be prepared to receive additional parameters at any time and do not check the order of parameters
the key (e.g. mid, RefNr) should not be checked case-sentive
| Key | Format | CND | Description |
|---|---|---|---|
ans..30 | M | MerchantID, assigned by Computop |
| Key | Format | CND | Description |
|---|---|---|---|
| PayID | an32 | M | ID assigned by Paygate for the payment, e.g. for referencing in batch files as well as for capture or credit request. |
| Key | Format | CND | Description |
|---|---|---|---|
| XID | an32 | M | ID for all single transactions (authorisation, capture, credit note) for one payment assigned by Paygate |
| Key | Format | CND | Description |
|---|---|---|---|
| TransID | ans..64 | M | TransactionID provided by you which should be unique for each payment |
| Key | Format | CND | Description |
|---|---|---|---|
| Status | a..50 | M | OK (URLSuccess) or FAILED (URLFailure) |
| Key | Format | CND | Description |
|---|---|---|---|
| Description | ans..1024 | M | Further details in the event that payment is rejected. Please do not use the Description but the Code parameter for the transaction status analysis! |
| Key | Format | CND | Description |
|---|---|---|---|
| Code | an8 | M | Error code according to Paygate Response Codes (A4 Error codes) |
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:
https://www.computop-paygate.com/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.
Notice: For security reasons, Computop Paygate rejects all payment requests with formatting errors. Therefore, please use the correct data type for each parameter. The following table describes the encrypted payment request parameters:
| Key | Format | CND | Description |
|---|---|---|---|
ans..30 | M | MerchantID, assigned by Computop. Additionally this parameter has to be passed in plain language too. |
| Key | Format | CND | Description |
|---|---|---|---|
| PayID | an32 | M | ID assigned by Paygate for the payment to be reversed |
| Key | Format | CND | Description |
|---|---|---|---|
| TransID | ans..64 | M | TransactionID provided by you which should be unique for each payment |
| Key | Format | CND | Description |
|---|---|---|---|
| Amount | n..10 | M | Amount in the smallest currency unit (e.g. EUR Cent). Please contact the Computop Helpdesk, if you want to capture amounts <100 (smallest currency unit). |
| Key | Format | CND | Description |
|---|---|---|---|
| Currency | a3 | M | Currency, three letters DIN / ISO 4217, e.g. EUR, USD, GBP. Please find an overview here: A1 Currency table |
| Key | Format | CND | Description |
|---|---|---|---|
an64 | M | Hash Message Authentication Code (HMAC) with SHA-256 algorithm. Details can be found here: |
| Key | Format | CND | Description |
|---|---|---|---|
| ReqId | ans..32 | O | To avoid double payments or actions (e.g. by ETM), enter an alphanumeric value which identifies your transaction and may be assigned only once. If the transaction or action is submitted again with the same ReqID, Computop Paygate will not carry out the payment or new action, but will just return the status of the original transaction or action. Please note that the Computop Paygate must have a finalized transaction status for the first initial action (authentication/authorisation). This does not apply to 3-D Secure authentications that are terminated by a timeout. The 3-D Secure Timeout status does not count as a completed status in which the ReqID functionality on Paygate does not take effect. Submissions with identical ReqID for an open status will be processed regularly. Notice: Please note that a ReqID is only valid for 12 month, then it gets deleted at the Paygate. |
The following table describes the result parameters with which the Computop Paygate responds to your system pls. be prepared to receive additional parameters at any time and do not check the order of parameters
the key (e.g. mid, RefNr) should not be checked case-sentive
| Key | Format | CND | Description |
|---|---|---|---|
ans..30 | M | MerchantID, assigned by Computop |
| Key | Format | CND | Description |
|---|---|---|---|
| PayID | an32 | M | ID assigned by Paygate for the payment, e.g. for referencing in batch files as well as for capture or credit request. |
| Key | Format | CND | Description |
|---|---|---|---|
| XID | an32 | M | ID for all single transactions (authorisation, capture, credit note) for one payment assigned by Paygate |
| Key | Format | CND | Description |
|---|---|---|---|
| TransID | ans..64 | M | TransactionID provided by you which should be unique for each payment |
| Key | Format | CND | Description |
|---|---|---|---|
| Status | a..50 | M | OK (URLSuccess) or FAILED (URLFailure) |
| Key | Format | CND | Description |
|---|---|---|---|
| Description | ans..1024 | M | Further details in the event that payment is rejected. Please do not use the Description but the Code parameter for the transaction status analysis! |
| Key | Format | CND | Description |
|---|---|---|---|
| Code | an8 | M | Error code according to Paygate Response Codes (A4 Error codes) |