Vent venligst ...


Loading...
Teknisk Dokumentation
Hjemmesider

Batch processing

Batch processing

Batch processing betyder ganske enkelt, at du én gang i døgnet sender ePay en fil, som indeholder alle dine transaktioner for dette døgn, i stedet for at sende oplysningerne enkeltvis og løbende. Når dit system ikke skal stå og kalde op til ePay hele tiden, mindsker du presset på både dit og vores system, og du frigør dermed flere kræfter begge steder.

Vi anbefaler batch processing, hvis din virksomhed gennemfører over 100 transaktioner dagligt.

Bemærk, at batch-filer drejer sig om efterbehandlingen af dine transaktioner. Selve autorisationen af betalinger sker i ePays betalingsvindue.

Sådan gør du

Batch processing foregår ved, at du sender filer til ePay gennem en SFTP-forbindelse (SSH File Transfer Protocol). ePay har opsat en server, som behandler alle filerne. Når du skal sende filer til ePay, logger du på SFTP-serveren med det udleverede brugernavn og kodeord.

Hvis du vil i gang med at bruge batch processing, skal du kontakte os, da vi skal lave en manuel opkobling til din virksomhed.

Filer og mapper

Når du logger på SFTP-serveren, kan du se fire mapper, som indeholder de forskellige filer:

Mappen ”IN” indeholder alle filer fra virksomheden til ePay
Mappen ”OUT” indeholder alle filer fra ePay til virksomheden
Mappen ”ERROR” indeholder filer med syntaksfejl
Mappen ”ARCHIVE” indeholder alle filer fra ”IN”-mappen, som er blevet behandlet

Navngivning af filer

Vi anbefaler, at filer til ePay navngives i følgende format: ÅÅÅÅMMDDTT (år, måned, dato, time)

Filer fra ePay til virksomheden gemmes i OUT-mappen i følgende format: ÅÅÅÅMMDDTT

Afventende filer (pending)

Transaktioner, som af en eller anden grund ikke bliver gennemført, gemmes i følgende format, når ePay genererer output-filen: ÅÅÅÅMMDDTT_pending

Filer gemmes som pending, hvis f.eks.:

  • En transaktion skal hæves på et senere tidspunkt (dette kan virksomheden styre)
  • Autorisationen af en instant capture skal ske på et senere tidspunkt
  • ePay ikke kunne behandle transaktionen

En række i denne fil indeholder følgende oplysninger:

InputTypeVærdierBeskrivelse
OperationInteger
Den handling, der skal foretages på transaktionen:
1. Capture (hæv beløb)
2. Credit (krediter beløb)
3. Delete (slet transaktion)
4. Authorise subscription (autoriser betaling på et abonnement)
5. Delete subscription (slet abonnement)
MerchantnumberInteger7-10 cifre Dit unikke forretningsnummer. Du kan finde det på din indløsningsaftale (f.eks. med Nets).
TransactionidLong
Det unikke nummer, der identificerer betalingen. Det returneres ved autorisationen. Hvis operation = 4 eller 5, er dette felt tomt (blank).
Subscriptionid Long
Det unikke nummer, der identificerer abonnementet. Hvis operation = 1, 2 eller 3, er dette felt tomt (blank).
AmountLongMindste enhederBeløbet i mindste enheder. F.eks. skal DKK 125,75 skrives som 12575 i amount-feltet.
DateDate20130115
ÅÅÅÅMMDD
Den dato, hvor handlingen skal udføres. Hvis f.eks. betalingen skal hæves den 21. juni 2013, sættes datoen til 20130621.

Bemærk venligst, at det ikke er nødvendigt at gøre noget ved denne fil. Det er blot information fra ePay til virksomheden om transaktioner, der afventer behandling.

Fejlede transaktioner

Transaktioner, som ikke kunne gennemføres på grund af fejl hos ePay eller indløseren, gemmes i følgende format i OUT-mappen: ÅÅÅÅMMDDTT_error

Bemærk, at når en sådan fil genereres, sendes der en e-mail til virksomheden og ePays support.

En række i denne fil indeholder følgende oplysninger:

InputTypeVærdierBeskrivelse
OperationInteger
Den handling, der skal foretages på transaktionen:
1. Capture (hæv beløb)
2. Credit (krediter beløb)
3. Delete (slet transaktion)
4. Authorise subscription (autoriser betaling på et abonnement)
5. Delete subscription (slet abonnement)
MerchantnumberInteger7-10 cifre Dit unikke forretningsnummer. Du kan finde det på din indløsningsaftale (f.eks. med Nets).
TransactionidLong
Det unikke nummer, der identificerer betalingen. Det returneres ved autorisationen. Hvis operation = 4 eller 5, er dette felt tomt (blank).
Subscriptionid Long
Det unikke nummer, der identificerer abonnementet. Hvis operation = 1, 2 eller 3, er dette felt tomt (blank).
AmountLongMindste enhederBeløbet i mindste enheder. F.eks. skal DKK 125,75 skrives som 12575 i amount-feltet.
ActionCodeString0-9 a-ZDen fejlkode, der beskriver, hvorfor transaktionen blev afvist. 

Bemærk venligst, at du skal foretage en manuel handling på transaktionerne i denne fil. Transaktionerne bliver ikke behandlet igen. Den sædvanlige procedure vil være at sende informationen til ePay i en ny batch-fil.

Filernes indhold

Filerne skal defineres som CSV (comma separated values) i formatet RFC 4180. Du kan se en specifikation af formatet her: http://tools.ietf.org/html/rfc4180

Der udføres én handling per række.

Vær opmærksom på:
  • en fil kan indeholde flere forskellige handlinger
  • separatoren mellem hver handling (række) er \r\n (0x0a 0x0d)
  • separatoren mellem hvert felt i rækken er et semikolon (;)
  • obligatoriske felter skal defineres
  • felter, der ikke er obligatoriske, skal være tomme (blank), hvis de ikke defineres

Bemærk også, at rækkerne skal være dynamiske. Da ePay på et senere tidpunkt kan tilføje flere felter til hver række, må du ikke forvente, at hver række indeholde et bestemt antal kolonner. Dette skal være dynamisk.

Behandling af filer

ePay behandler transaktionerne løbende, som vi modtager dem. Du vælger selv, om du vil modtage én samlet output-fil, som vi sender én gang i døgnet, eller du vil modtage en output-fil per input-fil. Vælger du at modtage flere output-filer, sendes svarfilen, så snart alle rækker i input-filen er behandlet. 

Hvis du vil modtage én output-fil, aftaler du tidspunktet for afsendelse med os. 

Filer, der er ældre en 30 dage, slettes fra OUT-mappen.

Filer i IN-mappen slettes, når de er behandlet. De flyttes til ARCHIVE-mappen efter behandling. Filer i ARCHIVE-mappen slettes efter 30 dage.

Datatyper

Følgende beskriver de data, der sendes mellem dit system og ePay. For hvert kald kan du se input-felter, som er de felter, du sender til ePay, og output-felter, som er de felter, ePay returnerer.

Der er fem handlinger, du kan udføre på en fil:

1. Capture (hæv beløb)
2. Credit (krediter beløb)
3. Delete (slet transaktion, og frigiv beløbet)
4. Authorise subscription (autoriser betaling på et abonnement)
5. Delete subscription (slet abonnement)

Capture

Input-felterne er de felter, du skal sende til ePay.

InputTypeVærdierBeskrivelseObligatorisk
OperationInteger1 (låst)Den handling, der skal foretages på transaktionen.Ja
MerchantnumberInteger7-10 cifre Dit 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
Amount
LongMindste enhederBeløbet i mindste enheder. F.eks. skal DKK 125,75 skrives som 12575 i amount-feltet. Bemærk, at hvis denne er 0, hæves det fulde beløb.
Ja
GroupStringMaks. 100 karaktererDen gruppe, som betalingen skal tilknyttes.
Nej
CaptureDateDate20130115
ÅÅÅÅMMDD
Hvis feltet ikke er tomt, hæves betalingen på den angivne dato. Datoen kan maksimalt være dags dato + 14 dage.Nej

Output-felterne er dem, som ePay returnerer.

OutputTypeVærdierBeskrivelse
OperationInteger1 (låst)Den handling, der er foretaget på transaktionen.
MerchantnumberInteger7-10 cifreDit unikke forretningsnummer. Du kan finde det på din indløsningsaftale (f.eks. med Nets).
TransactionidLongDet unikke nummer, der identificerer betalingen. Det returneres ved autorisationen.
AmountLongMindste enhederBeløbet i mindste enheder. F.eks. skal DKK 125,75 skrives som 12575 i amount-feltet. Hvis der i input-filen stod 0, vises det fulde hævede beløb her.
Epayresponse / action codeString0 = succesHvis denne værdi ikke er = 0, skal du finde årsagen til, handlingen blev afvist, ved at slå fejlkoden op på listen over fejlkoder i din ePay-administration.

Credit

Input-felterne er de felter, du skal sende til ePay.

InputTypeVærdierBeskrivelseObligatorisk
OperationInteger2 (låst)Den handling, der skal foretages på transaktionen.Ja
MerchantnumberInteger7-10 cifre Dit 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
Amount
LongMindste enhederBeløbet i mindste enheder. F.eks. skal DKK 125,75 skrives som 12575 i amount-feltet. Bemærk, at hvis denne er 0, krediteres hele beløbet.
Ja
GroupStringMaks. 100 karaktererDen gruppe, som betalingen skal tilknyttes.
Nej

Output-felterne er dem, som ePay returnerer.

OutputTypeVærdierBeskrivelse
OperationInteger2 (låst)Den handling, der er foretaget på transaktionen.
MerchantnumberInteger7-10 cifreDit unikke forretningsnummer. Du kan finde det på din indløsningsaftale (f.eks. med Nets).
TransactionidLongDet unikke nummer, der identificerer betalingen. Det returneres ved autorisationen.
AmountLongMindste enhederBeløbet i mindste enheder. F.eks. skal DKK 125,75 skrives som 12575 i amount-feltet. Hvis der i input-filen stod 0, vises det fulde krediterede beløb her.
Epayresponse / action codeString0 = succesHvis denne værdi ikke er = 0, skal du finde årsagen til, at handlingen blev afvist, ved at slå fejlkoden op på listen over fejlkoder i din ePay-administration.

Delete

Input-felterne er de felter, du skal sende til ePay.

InputTypeVærdierBeskrivelseObligatorisk
OperationInteger3 (låst)Den handling, der skal foretages på transaktionen.Ja
MerchantnumberInteger7-10 cifre Dit 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
GroupStringMaks. 100 karaktererDen gruppe, som betalingen skal tilknyttes.
Nej

Output-felterne er dem, som ePay returnerer.

OutputTypeVærdierBeskrivelse
OperationInteger3 (låst)Den handling, der er foretaget på transaktionen.
MerchantnumberInteger7-10 cifreDit unikke forretningsnummer. Du kan finde det på din indløsningsaftale (f.eks. med Nets).
TransactionidLongDet unikke nummer, der identificerer betalingen. Det returneres ved autorisationen.
Epayresponse / action codeString0 = succesHvis denne værdi ikke er = 0, skal du finde årsagen til, at handlingen blev afvist, ved at slå fejlkoden op på listen over fejlkoder i din ePay-administration.

Authorise subscription

Input-felterne er de felter, du skal sende til ePay.

InputTypeVærdierBeskrivelseObligatorisk
OperationInteger4 (låst)Den handling, der skal foretages på abonnementet.Ja
MerchantnumberInteger7-10 cifre Dit unikke forretningsnummer. Du kan finde det på din indløsningsaftale (f.eks. med Nets).
Ja
SubscriptionidLong
Det unikke nummer, der identificerer abonnementet.
Ja
Amount
LongMindste enhederBeløbet i mindste enheder. F.eks. skal DKK 125,75 skrives som 12575 i amount-feltet. Bemærk, at beløbet SKAL være større end 0.
Ja
CurrencyString208 = DKK
978 = EUR
840 = USD
Den valuta, som betalingen skal gennemføres i.
Ja
InstantcaptureInt0 = false
1 = true
Hvis denne sættes til 1, hæves betalingen øjeblikkeligt. Som udgangspunkt er den sat til 0, og du skal manuelt hæve betalingen fra din ePay-administration, via API eller gennem batch-filer.Ja
CaptureDateDate20130115
ÅÅÅÅMMDD
Hvis feltet ikke er tomt, hæves betalingen på den angivne dato. Dette felt ignoreres, hvis Instantcapture = 1.

Datoen kan maksimalt være dags dato + 14 dage.
Nej
GroupStringMaks. 100 karaktererDen gruppe, som betalingen skal tilknyttes.
Nej
DescriptionStringMaks. 1024 karaktererEn beskrivelse af betalingen. Beskrivelsen kan ses i din ePay-administration.
Nej
AddfeeInt0 = false
1 = true
Hvis denne er sat til 1, vil ePay udregne transaktionsgebyret og lægge det til beløbet.Ja
OrderidStringA-z 0-9Det ordre-ID, som betalingen skal have. Hvis denne er tom, bliver transaktions-ID'et brugt - ellers bruges dato-tid.Nej

Output-felterne er dem, som ePay returnerer.

OutputTypeVærdierBeskrivelse
OperationInteger4 (låst)Den handling, der er foretaget på abonnementet.
MerchantnumberInteger7-10 cifreDit unikke forretningsnummer. Du kan finde det på din indløsningsaftale (f.eks. med Nets).
SubscriptionidLongDet unikke nummer, der identificerer abonnementet.
AmountLongMindste enhederBeløbet i mindste enheder. F.eks. skal DKK 125,75 skrives som 12575 i amount-feltet.
CurrencyString208 = DKK
978 = EUR
840 = USD
Valutaen, som betalingen gennemføres i.
TransactionidLong
Det transaktions-ID, som skabes ved autorisationen. Hvis autorisationen afvises, vil værdien i dette felt være 0.
FeeLongMindste enhederHvis input-parameteren addfee var = 1, fremgår gebyret i dette felt. Bemærk venligst, at output-parameteren amount IKKE indeholder gebyret.
Epayresponse / action codeString0 = succesHvis denne værdi ikke er = 0, skal du finde årsagen til, handlingen blev afvist, ved at slå fejlkoden op på listen over fejlkoder i din ePay-administration.

Delete subscription

Input-felterne er de felter, du skal sende til ePay.

InputTypeVærdierBeskrivelseObligatorisk
OperationInteger5 (låst)Den handling, der skal foretages på abonnementet.Ja
MerchantnumberInteger7-10 cifre Dit unikke forretningsnummer. Du kan finde det på din indløsningsaftale (f.eks. med Nets).
Ja
SubscriptionidLong
Det unikke nummer, der identificerer abonnementet.
Ja
GroupStringMaks. 100 karaktererDen gruppe, som betalingen skal tilknyttes.
Nej

Output-felterne er dem, som ePay returnerer.

OutputTypeVærdierBeskrivelse
OperationInteger5 (låst)Den handling, der er foretaget på abonnementet.
MerchantnumberInteger7-10 cifreDit unikke forretningsnummer. Du kan finde det på din indløsningsaftale (f.eks. med Nets).
SubscriptionidLongDet unikke nummer, der identificerer abonnementet.
Epayresponse / action codeString0 = succesHvis denne værdi ikke er = 0, skal du finde årsagen til, handlingen blev afvist, ved at slå fejlkoden op på listen over fejlkoder i din ePay-administration.

Eksempel

Sådan ser en datarække ud, når en transaktion hæves. Input-felterne defineres således:

ParameterVærdi
Operation1
Merchantnumber12345678
Transactionid987654321
Amount2000
Group(blank)

CSV-rækken vil se således ud:

1;12345678;987654321;2000;;

Hvis transaktionen godkendes, ser svarrækken sådan ud:

1;12345678;987654321;2000;0;

Test batch-serveren

Det er nemt at teste batch processing. Du kan bruge dit testforretningsnummer til at teste interface og adgang til ePays SFTP-server. Den samme SFTP-konto bruges til både test og produktion.

Vær opmærksom på, at dit testforretningsnummer skal være konfigureret til SFTP-kontoen. Kontakt ePay for at få dette sat op.