Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

The aim is to make using our API as transparent as possible whether it is an Ambita broker or not.

As of today, there is a difference. Pantedokument sent to a non-Ambita broker will not get TINGLYST/TINGLYSING_FEILET status.

However, a new AFPant feature for sharing tinglysing information is being developed. When this new feature hits production, also pantedokument sent to non-Ambita brokers will get TINGLYST/TINGLYSING_FEILET.

To make the handling uniform whether it is an Ambita broker or not, the preferred handling is polling for events or status. Will work in both cases.

The drawing below depicts an overview of the complete process of sending a pantedokument to a real state broker. Please see below for more details about each scenario

Drawio
zoom1
simple0
inComment0
pageId1910374541
custContentId1914044537
lbox1
diagramDisplayNameflowchart-send-pant.drawio
contentVer4
revision4
baseUrlhttps://ambita.atlassian.net/wiki
diagramNameflowchart-send-pant.drawio
pCenter0
width1071
links
tbstyle
height721

Send pantedokument to an existing settlement for an Ambita broker

The flow diagram below describes steps for Ambita brokers only.

Drawio
zoom1
simple0
inComment0
pageId1910374541
custContentId1918566419
lbox1
diagramDisplayNameflowchart-send-pant-ambitabroker.drawio
contentVer2
revision2
baseUrlhttps://ambita.atlassian.net/wiki
diagramNameflowchart-send-pant-ambitabroker.drawio
pCenter0
width773
links
tbstyle
height321

If it is an Ambita broker and the settlement exists, the response is immediate and will contain the status MOTTATT_AV_MEGLER:

Code Block
languagexml
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
	<soap:Body>
		<ns2:sendToRealEstateBrokerResponse xmlns:ns2="http://dokument.ws7.etinglysing.no/">
			<return>
				<status>
					<created>2021-01-07T14:50:45.667+01:00</created>
					<documentStatusTinglysing/>
					<id>123321123</id>
					<statusCode>MOTTATT_AV_MEGLER</statusCode>
					<description>Pant - 4444/66/66// [G]</description>
					<reference>Customer reference</reference>
				</status>
				<type>PANTEDOKUMENT</type>
				<documentVersion>KARTVERKET</documentVersion>
			</return>
		</ns2:sendToRealEstateBrokerResponse>
	</soap:Body>
</soap:Envelope>

Pantedokument sent to an existing settlement for an Ambita broker will get TINGLYST or TINGLYSING_FEILET(given that the broker tinglyser pantedokumentet) Se this state diagram for more details.

Alternate flows

No alternate flows for “Send pantedokument to an Ambita broker and the settlement exists”

Send pantedokument to an external broker

The flow diagram below describes steps for non-Ambita brokers only.

Drawio
zoom1
simple0
inComment0
pageId1910374541
custContentId1914077335
lbox1
diagramDisplayNameflowchart-send-pant-external-broker.drawio
contentVer2
revision2
baseUrlhttps://ambita.atlassian.net/wiki
diagramNameflowchart-send-pant-external-broker.drawio
pCenter0
width963
links
tbstyle
height671

If a pantedokument is sent to a broker (sendToRealEstateBroker) and a settlement does not exist/is not an Ambita broker, the following steps is executed:

  • Can the real estate broker given, receive pantedokument. Determined by a lookup in Akeldo.

  • The pantedokument is uploaded to AFPant(Altinn) for the broker to download.

  • The pantedokument copy in etinglysing is changed from PART_SIGNER to SENDT_TIL_MEGLER

  • The response will contain SENDT_TIL_MEGLER:

    Code Block
    languagexml
    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    	<soap:Body>
    		<ns2:sendToRealEstateBrokerResponse xmlns:ns2="http://dokument.ws7.etinglysing.no/">
    			<return>
    				<status>
    					<created>2021-01-07T14:50:45.667+01:00</created>
    					<documentStatusTinglysing/>
    					<id>123321123</id>
    					<statusCode>MOTTATT_AV_MEGLER</statusCode>
    					<description>Pant - 4444/66/66// [G]</description>
    					<reference>Customer reference</reference>
    				</status>
    				<type>PANTEDOKUMENT</type>
    				<documentVersion>KARTVERKET</documentVersion>
    			</return>
    		</ns2:sendToRealEstateBrokerResponse>
    	</soap:Body>
    </soap:Envelope>

The final MOTTATT_AV_MEGLER state must be obtained by polling for event(hendelser) or status(getStatus)

Alternate flows

The following alternate flow might happen

Scenario

Broker is not able to receive pantedokument
Broker is not in Akeldo. In this case the response is immediate and no change is made to etinglysing’s copy of the pantedokument.

Response:

Code Block
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:Body>
      <soap:Fault>
         <faultcode>soap:Server</faultcode>
         <faultstring>Megler med org.nr. 999999999 kan ikke motta pantedokumentet elektronisk. Opprett pantedokumentet på papir.: null</faultstring>
         <detail>
            <ns2:FellesDokumentException xmlns:ns2="http://dokument.ws7.etinglysing.no/">
               <exceptionId>1610453917418</exceptionId>
               <documentMessages>
                  <documentMessage>
                     <errorGroup>VALIDERINGSFEIL</errorGroup>
                     <message>Megler med org.nr. 999999999 kan ikke motta pantedokumentet elektronisk. Opprett pantedokumentet på papir.</message>
                     <errorCode>9050</errorCode>
                  </documentMessage>
               </documentMessages>
            </ns2:FellesDokumentException>
         </detail>
      </soap:Fault>
   </soap:Body>
</soap:Envelope>

Pantedokument status does not change from SENDT_TIL_MEGLER

This happens very rarely and it means that there might some technical issue. To resolve this issue, contact the real estate broker.

The pantedokument gets SAMHANDLING_FEILET - buyer mismatch

One of the borrowers in the pantedokument does not exists in the brokers settlement. The settlement might not be ready. I these cases, take contact with the real estate broker. If the real estate broker is able to fix the problem, resend the pantedokument.

Error code 9999. The reason for is found in the detail element of the xml.
The prefix of the text, Kjøper mangler, is supplied by Ambita and the rest of the text is from the external broker system, in this case it is Fant ingen oppdrag i meglersystemet der debitor(er) fra pantedokument stemmer eksakt med kjøper(e) i megleroppdrag.

Example:

Code Block
languagexml
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
	<soap:Body>
		<ns2:getStatusResponse xmlns:ns2="http://dokument.ws7.etinglysing.no/">
			<return>
				<status>
					<created>2021-01-05T11:02:41.210+01:00</created>
					<documentStatusTinglysing/>
					<id>1234123</id>
					<statusCode>SAMHANDLING_FEILET</statusCode>
					<description>Pant - 5555/4444/333// [G]</description>
					<reference>customerRef</reference>
				</status>
				<type>PANTEDOKUMENT</type>
				<documentVersion>KARTVERKET</documentVersion>
				<documentMessages>
					<documentMessage>
						<detail>Kjøper mangler: Fant ingen oppdrag i meglersystemet der debitor(er) fra pantedokument stemmer eksakt med kjøper(e) i megleroppdrag.</detail>
						<errorGroup>EKSTERNFEIL</errorGroup>
						<message>Samhandling feilet</message>
						<errorCode>9999</errorCode>
					</documentMessage>
				</documentMessages>
			</return>
		</ns2:getStatusResponse>
	</soap:Body>
</soap:Envelope>

The pantedokument gets SAMHANDLING_FEILET - unable to find settlement

The external broker system is unable to find the settlement. I these cases, take contact with the real estate broker. If the real estate broker is able to fix the problem, resend the pantedokument.

Error code 9999. The reason for is found in the detail element of the xml.
The prefix of the text, Ukjent registerenhet:, is supplied by Ambita and the rest of the text is from the external broker system, in this case it is Fant ikke noe oppgjør for eiendomsnøkkel.

Code Block
languagexml
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
	<soap:Body>
		<ns2:getStatusResponse xmlns:ns2="http://dokument.ws7.etinglysing.no/">
			<return>
				<status>
					<created>2021-01-05T11:02:41.210+01:00</created>
					<documentStatusTinglysing/>
					<id>1234123</id>
					<statusCode>SAMHANDLING_FEILET</statusCode>
					<description>Pant - 5555/4444/333// [G]</description>
					<reference>customerRef</reference>
				</status>
				<type>PANTEDOKUMENT</type>
				<documentVersion>KARTVERKET</documentVersion>
				<documentMessages>
					<documentMessage>
						<detail>Ukjent registerenhet: Fant ikke noe oppgjør for eiendomsnøkkel</detail>
						<errorGroup>EKSTERNFEIL</errorGroup>
						<message>Samhandling feilet</message>
						<errorCode>9999</errorCode>
					</documentMessage>
				</documentMessages>
			</return>
		</ns2:getStatusResponse>
	</soap:Body>
</soap:Envelope>

The pantedokument gets SAMHANDLING_FEILET - rejected

For any number of reasons: sent to an organisation number that no longer has an active customer relationship with the supplier, incorrect config in Altinn AFPANT, or invalid shipment.

Retry sending the pantedokument and/or make contact with the real estate broker or Ambita kundesupport.

We have never experienced this error in beta or production.

Code Block
languagexml
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
	<soap:Body>
		<ns2:getStatusResponse xmlns:ns2="http://dokument.ws7.etinglysing.no/">
			<return>
				<status>
					<created>2021-01-05T11:02:41.210+01:00</created>
					<documentStatusTinglysing/>
					<id>1234123</id>
					<statusCode>SAMHANDLING_FEILET</statusCode>
					<description>Pant - 5555/4444/333// [G]</description>
					<reference>customerRef</reference>
				</status>
				<type>PANTEDOKUMENT</type>
				<documentVersion>KARTVERKET</documentVersion>
				<documentMessages>
					<documentMessage>
						<detail>Avvist: ....</detail>
						<errorGroup>EKSTERNFEIL</errorGroup>
						<message>Samhandling feilet</message>
						<errorCode>9999</errorCode>
					</documentMessage>
				</documentMessages>
			</return>
		</ns2:getStatusResponse>
	</soap:Body>
</soap:Envelope>