Vent venligst ...


Loading...

Betalingswebservice

Teknisk dokumentation til betalingswebservice

Dette er en detaljeret beskrivelse af input- og outputværdierne i betalingswebservicen, som bruges til normale betalinger. Du finder vores webservice til normale betalinger her:

https://ssl.ditonlinebetalingssystem.dk/remote/payment.asmx

Sådan læses dokumentationen

Hver beskrivelse af en funktion består af input og output. Input er de felter, webservicen forventer, du sender, når du kalder den. Obligatoriske felter skal angives - resten kan du give tomme værdier. Output-felterne er dem, som webservicen returnerer.

Dataflow

1. Når kunden indtaster sine kortoplysninger og trykker 'Betal', autoriseres betalingen. At bruge authorize-kaldet kræver dog PCI-certificering, så derfor skal du i stedet bruge vores betalingsvindue. Så er det nemlig os, der laver autorisationen.

2. Betalingen hæves med fjernkaldet capture. Når dette kald er gennemført, vil indløseren overføre det hævede beløb fra kortholderens konto til forretningens konto.

3. Hvis en vare returneres til forretningen, eller hvis ordren annulleres, og beløbet allerede er hævet, kan beløbet føres tilbage til kortholders konto med kaldet credit

4. Hvis en vare returneres eller ordren annulleres, inden beløbet er hævet, kan beløbet frigives med funktionen delete.

Datatyper

Webservicen bruger objekter og datatyper i SOAP-formatet. Datatyperne er: integer, long, string, enum, boolean og datetime. Datetime skal formateres: ”åååå-MM-dd TT:mm:ss”. Alle funktioner returnerer en boolean, som indikerer, om operationen var succesfuld. Hvis den returnerede værdi er false, kan værdierne epayresponse og pbsresponse bruges til at finde årsagen.

capture

Input-felterne er de felter, du skal sende med, når du kalder webservicen.

InputTypeVærdierBeskrivelseObligatorisk
merchantnumberInteger7 cifreDit unikke forretningsnummer. Du kan finde det på din indløsningsaftale (f.eks. med Nets).Ja
transactionidLong
Det unikke nummer, der identificerer betalingen. Det returneres ved autorisationen.Ja
amountIntegerMindste enhederBeløbet i mindste enheder. F.eks. skal DKK 125,75 skrives som 12575 i amount-feltet.Ja
group
StringMaks. 100 karakterer.Den gruppe, som betalingen skal tilknyttes.Nej
invoice
StringMaks. 100 karakterer.Her kan sende fakturadata med til Storebox/Kvittering.dk. Se mere om fakturadata her.Nej


Her følger beskrivelser af output-felterne, som er dem, webservicen returnerer.

OutputTypeVærdierBeskrivelse
captureResultBooleanSe beskrivelsen af output values.
pbsResponseIntegerHvis Nets afviser betalingen, fremgår fejlkoden i pbsResponse. Hvis betalingen hæves, er værdien 0.
epayresponseIntegerHvis vi afviser betalingen, fremgår fejlkoden i epayresponse.
Output valuesHvis hævningen (capture) godkendes, returneres captureResult som true. Ellers er den returnerede værdi false. Returneres false, skal epayresponse og pbsResponse bruges til at finde årsagen.

credit

Input-felterne er de felter, du skal sende med, når du kalder webservicen.

InputTypeVærdierBeskrivelseObligatorisk
merchantnumberInteger7 cifreDit unikke forretningsnummer. Du kan finde det på din indløsningsaftale (f.eks. med Nets).Ja
transactionidLongMaks. 50 karakterer.Det unikke nummer, der identificerer betalingen. Det returneres ved autorisationen.Ja
amountIntegerMindste enhederBeløbet i mindste enheder. F.eks. skal DKK 125,75 skrives som 12575 i amount-feltet.Ja
group
StringMaks. 100 karakterer.Den gruppe, som betalingen skal tilknyttes.Nej
invoice
StringMaks. 100 karakterer.Her kan sende fakturadata med til Storebox/Kvittering.dk. Se mere om fakturadata her.Nej



Her følger beskrivelser af output-felterne, som er dem, webservicen returnerer.

OutputTypeVærdierBeskrivelse
creditResultBooleanSe beskrivelsen af output values.
pbsResponseIntegerHvis Nets afviser krediteringen, fremgår fejlkoden i pbsresponse. Hvis krediteringen godkendes, er værdien 0.
epayresponseIntegerHvis vi afviser krediteringen, fremgår fejlkoden i epayresponse.
Output valuesHvis krediteringen godkendes, returneres creditResult som true. Ellers er den returnerede værdi false. Returneres false, skal epayresponse og pbsresponse bruges til at finde årsagen.

delete

Input-felterne er de felter, du skal sende med, når du kalder webservicen.

InputTypeVærdierBeskrivelseObligatorisk
merchantnumberInteger7 cifreDit unikke forretningsnummer. Du kan finde det på din indløsningsaftale (f.eks. med Nets).Ja
transactionidLongMaks. 50 karakterer.Det unikke nummer, der identificerer betalingen. Det returneres ved autorisationen.Ja
group
StringMaks. 100 karakterer.Den gruppe, som betalingen skal tilknyttes.Nej



Her følger beskrivelser af output-felterne, som er dem, webservicen returnerer.

OutputTypeVærdierBeskrivelse
deleteResultBooleanSe beskrivelsen af output values.
epayresponseIntegerHvis vi afviser sletningen, fremgår fejlkoden i epayresponse.
Output valuesHvis sletningen godkendes, returneres deleteResult som true. Ellers er den returnerede værdi false. Returneres false, skal epayresponse og pbsresponse bruges til at finde årsagen.

getEpayError

Input-felterne er de felter, du skal sende med, når du kalder webservicen.

InputTypeVærdierBeskrivelseObligatorisk
merchantnumberInteger7 cifreDit unikke forretningsnummer. Du kan finde det på din indløsningsaftale.Ja
languageIntegerMaks. 50 karakterer.Sproget, som resultatet skal returneres på
(1) for dansk
(2) for engelsk
(3) for svensk
Ja
epayresponsecodeIntegerMindste enhederFejlkoden, du får fra Bambora i epayresponse.Nej



Her følger beskrivelser af output-felterne, som er dem, webservicen returnerer.

OutputTypeVærdierBeskrivelse
getEpayErrorResultBooleanSe beskrivelsen af output values.
epayResponseStringStringFejlen returneret som en streng fra Bambora.
epayresponseIntegerHvis vi afviser betalingen, fremgår fejlkoden i epayresponse.
Output valuesHvis det er muligt at få information om fejlkoden, returneres getEpayErrorResult som true. Ellers er den returnerede værdi false. Returneres false, skal epayresponse bruges til at finde årsagen.

getPbsError

Input-felterne er de felter, du skal sende med, når du kalder webservicen.

InputTypeVærdierBeskrivelseObligatorisk
merchantnumberInteger7 cifreDit unikke forretningsnummer. Du kan finde det på din indløsningsaftale.Ja
languageInteger1Sproget, som resultatet skal returneres på
(1) for dansk
(2) for engelsk
(3) for svensk
Ja
pbsresponsecodeIntegerFejlkoden, du får fra Nets i pbsresponse.Nej



Her følger beskrivelser af output-felterne, som er dem, webservicen returnerer.

OutputTypeVærdierBeskrivelse
getPbsErrorResultBooleanSe beskrivelsen af output values.
pbsResponseStringStringFejlen returneret som en streng fra Bambora.
epayresponseIntegerHvis vi afviser betalingen, fremgår fejlkoden i epayresponse.
Output valuesHvis det er muligt at få information om fejlkoden, returneres getPbsErrorResult som true. Ellers er den returnerede værdi false. Returneres false, skal epayresponse bruges til at finde årsagen.

getcardtype

Input-felterne er de felter, du skal sende med, når du kalder webservicen.

InputTypeVærdierBeskrivelseObligatorisk
merchantnumberInteger7 cifreDit unikke forretningsnummer. Du kan finde det på din indløsningsaftale.Ja
cardnumberStringMaks. 20 karakterer.Kortnummeret på kortholders betalingskort.Ja



Her følger beskrivelser af output-felterne, som er dem, webservicen returnerer.

OutputTypeVærdierBeskrivelse
getcardtypeResultBooleanSe beskrivelsen af output values.
cardtypeidIntegerKorttypen som et heltal.
cardnameStringNavnet på korttypen (f.eks. Dankort).
epayresponseIntegerHvis vi afviser betalingen, fremgår fejlkoden i epayresponse.
Output valuesHvis det er muligt at få information om korttypen, returneres getcardtypeResult som true. Ellers er den returnerede værdi false. Returneres false, skal epayresponse bruges til at finde årsagen.

gettransaction

Input-felterne er de felter, du skal sende med, når du kalder webservicen.

InputTypeVærdierBeskrivelseObligatorisk
merchantnumberInteger7 cifreDit unikke forretningsnummer. Du kan finde det på din indløsningsaftale (f.eks. med Nets).Ja
transactionidLongMaks. 50 karakterer.Det unikke nummer, der identificerer betalingen. Det returneres ved autorisationen.Ja



Her følger beskrivelser af output-felterne, som er dem, webservicen returnerer.

OutputTypeVærdierBeskrivelse
groupStringGruppe (hvis defineret).
authamountIntegerBeløbet, som er autoriseret på kortholderens kort.
currencyIntegerAutorisationens valuta.
cardtypeidIntegerDet brugte korts korttype.
capturedamountIntegerDet hævede beløb.
creditedamountIntegerDet krediterede beløb.
orderidStringOrdrenummer.
descriptionStringBeskrivelse (hvis defineret).
authdateDatetimeDato for autorisation.
captureddateDatetime.
deleteddateDatetimeDato for sletning.
crediteddateDatetimeDato for kreditering.
statusEnum0 = PAYMENT_UNDEFINED
1 = PAYMENT_NEW
2 = PAYMENT_CAPTURED
3 = PAYMENT_DELETED
4 = PAYMENT_INSTANT_CAPTURE_FAILED
5 = PAYMENT_SUBSCRIPTION_INI
6 = PAYMENT_RENEW
7 = PAYMENT_EUROLINE_WAIT_CAPTURE
8 = PAYMENT_EUROLINE_WAIT_CREDIT
Betalingens status. Som standard er status PAYMENT_NEW. PAYMENT_EUROLINE_WAIT_CAPTURE status: Transaktionen er hævet hos Bambora og afventer endelig hævning hos indløser; dette sker via en natlig batch kørsel.
PAYMENT_EUROLINE_WAIT_CREDIT status: Transaktionen er krediteret hos Bambora og afventer endelig kreditering hos indløser; dette sker via en natlig batch kørsel.
Når betalingen hæves, får den status som PAYMENT_CAPTURED.
[history] list start

transactionHistoryIDLongUnikt ID på transaktionens historie.
logonIDIntegerUnikt ID på brugeren, som udførte handlingen.
eventMsgStringBeskrivelse af handlingen.
createdDatetimeHandlingen blev udført på dette tidspunkt.
[history] list end

transactionidLongDet unikke nummer, der identificerer betalingen. Det returneres ved autorisationen.
cardholderString.
modeEnumOm betalingen er test eller produktion.
epayresponseIntegerHvis vi afviser betalingen, fremgår årsagen i epayresponse.
Output valuesHvis det er muligt at få information om betalingen, returneres funktionen som true. Ellers er den returnerede værdi false. Returneres false, skal epayresponse bruges til at finde årsagen.

gettransactionlist

Input-felterne er de felter, du skal sende med, når du kalder webservicen.

InputTypeVærdierBeskrivelseObliga-
torisk
merchantnumberInteger7 cifreDit unikke forretningsnummer. Du kan finde det på din indløsningsaftale.Ja
statusEnum0 = PAYMENT_UNDEFINED
1 = PAYMENT_NEW
2 = PAYMENT_CAPTURED
3 = PAYMENT_DELETED
4 = PAYMENT_INSTANT_CAPTURE_FAILED
5 = PAYMENT_SUBSCRIPTION_INI
6 = PAYMENT_RENEW
7 = PAYMENT_EUROLINE_WAIT_CAPTURE
8 = PAYMENT_EUROLINE_WAIT_CREDIT
Betalingens status. Som standard er status PAYMENT_NEW. PAYMENT_EUROLINE_WAIT_CAPTURE status: Transaktionen er hævet hos Bambora og afventer endelig hævning hos indløser; dette sker via en natlig batch kørsel. PAYMENT_EUROLINE_WAIT_CREDIT status: Transaktionen er krediteret hos Bambora og afventer endelig kreditering hos indløser; dette sker via en natlig batch kørsel. Når betalingen hæves, får den status som PAYMENT_CAPTURED.
Nej
searchdatestartDatetimeNull (nothing) og den ignoreresStartdato (defineret som: "åååå-MM-dd TT:mm:ss").Nej
searchdateend
DatetimeNull (nothing) og den ignoreresSlutdato (defineret som: "åååå-MM-dd TT:mm:ss").Nej
searchgroup
StringMaks. 100 karakterer.Søg betalinger i en defineret gruppe (denne må være tom).Nej
searchorderid
StringMaks. 20 karakterer.Søg betalinger med et defineret ordrenummer (denne må være tom).Nej



Her følger beskrivelser af output-felterne, som er dem, webservicen returnerer.

OutputTypeVærdierBeskrivelse
Output valuesSe resultatet i gettransaction. Værdierne er de samme. De er vedhæftet transactionInformationAry, som er et array af typen TransactionInformationType.

Se specifikation her: gettransaction.

getcardinfo

Input-felterne er de felter, du skal sende med, når du kalder webservicen.

InputTypeVærdierBeskrivelseObligatorisk
merchantnumberInteger7 cifreDit unikke forretningsnummer. Du kan finde det på din indløsningsaftale (f.eks. med Nets).Ja
cardno_prefixInteger6 cifre

Præfiks på betalingskortet, som gebyret beregnes ud fra. Det er vigtigt, at kun de første 6 cifre defineres, ellers vil systemet afvise kaldet.


Bemærk, at Danske Bank og Nordea skal bruge følgende præfikser:

000022 eller 000023 = Danske Netbetaling

000021 = Nordea e-betaling

Ja
amountIntegerMindste enhederBeløbet i mindste enheder. F.eks. skal DKK 125,75 skrives som 12575 i amount-feltet.Ja
currency
Integer208 = DKK 
978 = EUR 
840 = USD 
578 = NOK 
752 = SEK 
826 = GBP
Valuta, som beløbet defineres i. Hvis en kunde f.eks. skal betale med danske kroner, sættes værdien til 208. Se liste over valutakoder her.
Ja
acquirerIntegerNets/Teller = 1
Euroline = 2
BABS Swedbank = 8
Nordea SE = 21
Handelsbanken SE = 23
Elavon = 24
EVRY Swedbank = 25
EVRY Bambora = 26
EVRY Teller = 27
Nordea DK = 29
Nordea NO = 30
Nordea FI = 31
Handelsbanken DK = 32
Handelsbanken NO = 33
Handelsbanken FI = 34
Clearhaus = 37
Indløseren, som bruges på betalingen.Nej



Her følger beskrivelser af output-felterne, som er dem, webservicen returnerer.

OutputTypeVærdierBeskrivelse
feeIntegerTransaktionsgebyret beregnet ud fra værdien af input-felterne amount, currency og acquirer.
cardtypeInteger

1 = Dankort

2 = Visa/Dankort

3 = Visa/Electron (udenlandsk)

4 = Mastercard

5 = Mastercard (udenlandsk)

6 = Visa Electron

7 = JCB

8 = Diners Club

9 = Maestro

10 = America Express

11 = Ukendt

13 = Diners Club (udenlandsk)

14 = American Expres (udenlandsk)

15 = Maestro (udenlandsk)

16 = Forbrugsforeningen

17 = ewire

18 = Visa

19 = IKANO

20 = Andre

21 = Nordea e-betaling

22 = Danske Netbetaling

23 = BG Netbetalinger

24 = MasterCard

25 = MasterCard (udenlandsk)

26 = PayPal

27 = Mobilpenge

28 = Klarna

29 = Svea

30 = SEB Direktbetalning

31 = Nordea SE e-payment

32 = Handelsbanken SE e-payment

33 = Swedbank Direktbetalning

34 = ViaBill

35 = Beeptify

36 = iDeal

37 = Oberthur

38 = Paii

39 = Brandts

40 = MobilePay

41 = Resurs

42 = Ekspres Bank

Korttypen, som betalingen gennemføres med.
cardtypetextStringKorttypen i læsevenligt format.
epayresponseIntegerHvis vi afviser kaldet til API'et (værdien returneres som false), kan du finde årsagen i denne parameter. Du kan se hele listen med fejlkoder i Bambora-administrationen under punktet Support -> Systemfejlkoder.

Fejlfinding

Alle afvigelser i systemet bliver gemt i en separat log ved Bambora, som du kan tilgå fra din Bambora-administration. Hvis du oplever problemer med at kalde vores webservice, kan du finde information til fejlretning her.

Loggen findes i Bambora-administrationen under menupunktet API/Webservices -> Remote log. Alle fejlkoder findes under Support -> Systemfejlkoder og Support -> Fejlkoder fra PBS.