​Get started

Step 1

​Make an agreement with your bank

Prerequisites

​The payment recipient ("Payee") must have a business account with a bank. The Payee must enter​ into an agreement with the bank to use the Electronic Agreement service (​Elektronisk avtaleinngåelse).

The Payee must als​o enter​ into agreements with the bank to use ​AvtaleGiro and must have an accounting system that generates KID.​

 

Go to topGo back to Developer

Step 2

​Create an HTML form in the company's website ​​

Inter​acti​​​​o​n with E-Agreement is via an HTTP POST request

​Create an HTML for​m in​ the compa​ny's website with one of these URLs to be the recipient of the submitted form:

For test: https://mtf.pvu.avtalegiro.no/ecsa/start
For prod: https://pvu.avtalegiro.no/ecsa/start

The application receives a payee request via a http post. The request can have the following parameters:

Parameter name​
​Mandatory ​Allowed values ​​Description
companyAccountNo​ ​Yes ​11-digit
Norwegian
bank account number
​The company's bank account number (only Norwegian accounts are accepted, and the company must have an agreement with their bank to use the service)
​kid ​Yes ​Numeric string ​Unique identification of payer (minimum 3, maximum 25 digits)​
​amountLimit ​No ​Positive integer ​​The maximum amount that the customer may be charged via AvtaleGiro within a calendar month. If not submitted, it will default to NOK 10000. The value may be changed by the payer.
​notificationDisabled ​No ​true/false ​Sets the default notification setting, which the payer may change. If true, the payer will NOT receive notification of new AvtaleGiro payment claims.
​​company​Name ​No ​Alphanumeric,
min 3 characters​
​​​The name of the company, as it should be displayed to the user.
​returnUrl ​No ​​Valid URL The URL to which the user should be dire​cted after completing or cancelling the AvtaleGiro onboarding process.​​


Code example

<form action="https://mtf.pvu.avtalegiro.no/ecsa/start" method="post">
  <input type="hidden" name="companyName" id="companyName" value="INSERT_COMPANY_NAME_HERE" />
  <input type="hidden" name="companyAccountNo" id="companyAccountNo" value="INSERT_COMPANY_ACCOUNT_NUMBER_HERE" />
  <input type="hidden" name="kid" id="kid" value="INSERT_CUSTOMER_KID_HERE" />
  <input type="hidden" name="amountLimit" id="amountLimit" value="INSERT_SUGGESTED_AMOUNT_LIMIT_HERE" />
  <input type="hidden" name="returnUrl" id="returnUrl" value="INSERT_RETURN_URL_HERE" />
  <input type="hidden" name="notificationDisabled" id="notificationDisabled" value="true" />
  <input type="submit" id="submit" value="submit" />
</form>

 

Test users

The following test users may be used for BankID authentication in the test environment of E-Agreement. Please ensure that users are not locked due to typing the incorrect OTP/password more than 3 times.

Personal number One-time code
Password
01014634734 otp qwer1234
04066100168 otp qwer1234



Go to topGo back to Developer

Step 3

​Receive status from application

The return URL provided as an input parameter is used in the following scenarios:

1. Once the user completes the signing process, a button with value "Fullfør" is displayed to the user. Upon clicking this button, the user will be directed to the return URL with status "OK".

2. If the user cancels the process, the user is directed to the return URL with status "Cancel".

3. If the signing process cannot be completed due to error, the user is directed to the return URL with status "Error".


A "status" parameter is added to the URL in all the above cases and may have the following values:

​Description Values​
​Agreement is signed and will be established ​OK
​Agreement signing has been interupted by the customer ​Cancel
​One or more subsystems are  unavailable

​Error

 

Go to topGo back to Developer

{
  "error": null,
  "ribbons": [
    {
      "id": "ctl00_PlaceHolderMain_RibbonPanel10_wrapper",
      "color": "#141413",
      "image": "/SiteCollectionImages/background/mastercard_1920x600_brandcircle_connections.png",
      "overlay_alpha": null
    },
    {
      "id": "ctl00_PlaceHolderMain_RibbonPanel11_wrapper",
      "color": "#ffffff",
      "image": null,
      "overlay_alpha": null
    },
    {
      "id": "ctl00_PlaceHolderMain_RibbonPanel12_wrapper",
      "color": "#f6f6f6",
      "image": null,
      "overlay_alpha": null
    },
    {
      "id": "ctl00_PlaceHolderMain_RibbonPanel13_wrapper",
      "color": "#ffffff",
      "image": null,
      "overlay_alpha": null
    },
    {
      "id": "ctl00_PlaceHolderMain_RibbonPanel1_wrapper",
      "color": "#ffffff",
      "image": null,
      "overlay_alpha": null
    }
  ]
}