A.P.I dokumentation

(API: Application Programming Interface)

Betalingsfortrydelse

Du kan, som ERP udbyder, bruge vores HTTPS/REST API til at fortryde en allerede initieret betaling - dog kun såfremt at betaling er oprettet gennem BankIntegration, er sendt til banken og ikke allerede er gennemført.
Denne side omhandler alene API funktioner til at fortryde en betalingsanmodning.

Alle anmodninger skal godkendes, se mere her: beregning af godkendelses header


POST
https://api.bankintegration.dk/payment/cancel

På en anmodning om fortrydelse af en eller flere betalinger, sendes et JSON objekt tilbage i svarets body.

{
  "account": "52470021527478",
  "requestId": "REQ_01",
  "time" : "2015-05-21T12:45:23+02:00",
  "answers": [ 
    {
      "transId": "254778516",
      "paymentId": "PAY_0122457",
      "endToEndId": "72F0A84C17424C7EB2C71E88A4551395",
      "status": 256, // Cancelling
    }
  ]
}

Efterfølgende kan status request bruges til at verificerer om fortrydelse af betlinger er lykkedes.

Status kan være en af følgende værdier;

1 = "Created" - Afventer overførelse til banken.
2 = "Pending" - Sendt og modtaget af banken, eller afventer svar ved to-faktor godkendelse.
4 = "Accepted" - Valideret i banken, men ikke betalt endnu og kan stadig blive afvist.
8 = "Succeeed" - Betaling gennemført.
16 = "Rejected" - Afvist i banken (se fejl).
32 = "Failed" - Afvist i validering (se fejl)
64 = "NotFound" - Ikke fundet.
128 = "Warning" - Betaling kan ikke udføres, men er ikke afvist endnu – ex. ikke dækning på konto.
256 = "Cancelling" - Betaling er under fortrydelse af brugeren (kun nogle banker understøttes)
512 = "Waiting" - Betaling afventer godkendelse/signering i netbank (kun nogle banker understøttes)

GET anmodning

På anmodningen skal sættes et RequestId som returneres i svaret.

  • requestId: [string, required] ERP udbyderens ID på status anmodning. Returneres i svaret.
  • paymentIds: [string, optional] ERP udbyderens betalings ID fra en tidligere anmodning.
  • endToEndIds: [string, optional] EndToEnd ID fra en tidligere anmodning.
POST anmodninger:

Status kan alternativt hentes med en POST admodning.

I anmodnings body indsættes et JSON objekt til at selekterer de betalinger der ønskes en status på.
Kun betalinger fra den konto angivet i godkendelses header medtages.

  • requestId: [string, required] ERP udbyderens ID på status anmodning. Returneres i svaret.
  • paymentIds: [string, array, optional] Et array af ERP udbyderens betalings ID'er fra, en eller flere, tidligere anmodninger.
  • endToEndIds: [string, array, optional] Et array af End-To-End ID'er fra, en eller flere, tidligere anmodninger.
{
  "requestId": "string",
  "paymentIds": ["string, array"],
  "endToEndIds": ["string, array"],
}
Status svar

På en anmodning (GET/POST) på status på en eller flere betalinger, sendes en JSON objekt tilbage i svarets body.

  • accountId: [string] Konto nr. i BBAN format (47110012457890).
  • requestId: [string] RequestId kopieret fra anmodning.
  • transId: [string, optional] Transaktion ID fra tidligere betalingsanmodning.
  • time: [dateTime] Tidspunkt for afsendelse fra vores server.
  • answers: [object, array] Et array af status svar på betalingsanmodninger i scope.

{
  "accountId": "string",
  "requestId": "string",
  "time" : "datetime",
  "answers": [ "object:PaymentAnswer", "object:PaymentAnswer" ]
}
PaymentAnswer

  • transId: [string] Transaktions ID som returneret ved anmodning.
  • paymentId: [string] ERP udbyders betalings ID af betalingsanmodningen.
  • endToEndId: [string] Et unikt nr. genereret af systemet som også sendes til banken.
  • status: [integer] Status på betaling.
  • errors: [object, array] Et array af fejl beskeder hvis status er 16="Rejected" eller 32="Failed".
  • warnings: [object, array, optional] Et array af advarsler, om nogen.
  • info: [object, optional] Oplysninger om tekst på betalingens, samt beløb hhv. ved anmodning og gennemførelse.

{
  "transId": "string",
  "paymentId": "string",
  "endToEndId": "string",
  "status": "integer", // 1="Created", 2="Pending", 4="Accepted", 8="Succeeded" osv."
  "errors": [ "object:PaymentError", "object:PaymentError"],
  "warnings": [ "object:PaymentWarning", "object:PaymentWarning"],
  "info": { "object:PaymentInfo" }
}
PaymentError

  • code: [string] Fejlkode if. med betalingsfejl. Se nedenfor.
  • text: [string] Besked if. med fejl.

{
  "code": "string",
  "text": "string"
}
PaymentWarning

  • code: [string] Fejlkode if. med advarsel eller ændring. Ex. betalingsdato eller tekst. Se nedenfor.
  • text: [string] Besked vedr. advarsel.
  • param: [string, optional] Den oprindelige værdi, om nogen, der er blevet ændret if. med advarsel/ændring.

{
  "code": "string",
  "text": "string",
  "param": "string"
}
PaymentInfo

  • text: [string] Tekst på eget kontoudtog som angivet ved anmodning.
  • amounts: [object, optional] Oplysninger om beløb if. med betaling.
  • instructed: [object, optional] Beløb som angivet på anmodning.
  • transacted: [object, optional] Beløb som gennemført, forudsat status 8="Succeeded".
  • amount: [double] Det givne beløb.
  • currency: [string] Valutakode for det givne beløb.

{
  "text": "Min EUR betaling",
  "amounts": {
    "instructed": {
      "amount": 100,
      "currency": "EUR"
    }
    "transacted": {
      "amount": 748.52,
      "currency": "DKK"
    }
  }
}