.CSV settlement report documentation

This section describes the structure and content of the .CSV Report

Introduction

The CSV format is designed to automate the reconciliation of payment transactions.

Note: Amounts are not in cents as in the API (e.g. amount from the API as 400 is presented as 4.00 in the .csv report)

File format - Content and Lines

The first column shows what kind of line it is. The possible lines are:

H-SE - Header for Settlement lines - Listing of all columns that will be included in SE - Settlement rows in this file.

H-PA - Header for Payment lines - Listing of all columns that will be included in PA - Payments rows in this file.

H-PO - Header for Payment Operations - Listing of all columns that will be included in PO - Payment Operation rows in this file.

SE - Settlements

Settlements are the funds that has been paid out to your bank account. It includes e.g. the amount that has been paid out and the transaction message equivalent to what you will see on your bank statements.

The settlement amount paid out is the sum of the PO:s (payment operations) amounts for CAPTURE and REFUND operations, and deducted potential transactions fees.

For full description of the Settlements line, see settlements table below.

PA - Payments

The settlement contains one or multiple Payments. The payment is the same as in the payment generated when you initiate a payment request towards the API platform.

For full description of the Payment line, see payments table below.

PO - Payment Operations

The payment operations is the operations made to the specific payment. The CSV report contain the most important operations that affect the settlement, such as CAPTURE and REFUND.

There can be multiple operations for a Payment.

Each CSV report contains one Settlement and only Payment Operations relevant for that Settlement, as well as the Payment that is parent for each Payment Operation. A Payment can therefore appear in multiple Settlements. E.g. if one Settlement contains a CAPTURE Payment Operation for a certain Payment and a later Settlement contains a REFUND Payment Operation for the same Payment.

For full description of the Payment Operations line, see payment operations table below.

File format message structure

Pass includeHeaders=true as a query parameter to include column headers at the beginning of the file.

The file format is structured as follows (optional when includeHeaders=true)

(Optional) H-SE (Optional) H-PA (Optional) H-PO SE PA PO PO ... PA PO ...

File message components

Settlement components

Field name

Field description

Field Length

SE

Line type of settlement

String, 2

payoutReference

Unique reference for the payout

String

marketCountryCode

Market country code (configured for the bank account)

String

currencyCode

Payout currency (ISO 4217)

String,3

amount

The amount paid out to your account

Decimal

transactionMessage

Transaction message visible on your bank statement. Structured as the first 7 characters of the payoutReference + PAYER. This is to include a reference to the unique payoutReference that is to long for your bank to handle + the reference to PAYER so that you easily can locate from who the funds are from.

E.g. "hya0373 PAYER"

Note: Your bank might limit the length of this message and can cut off parts of the message.

String

bookingDate

The date funds was booked debited on Payer's bank account

Date

valueDate

The date funds was released from Payer's bank account

Date

payoutDate

The date Payout request was sent to the bank.

Date

schemeTotalFeeExcludingVat

Total card specific scheme fees for the transactions excluding Vat

Decimal

interchangeTotalFeeExcludingVat

Total card specific interchange fees for the transactions excluding Vat

Decimal

payerTotalFeeExcludingVat

Total fees deducted by Payer

Decimal

feeVatPercentage

Vat percentage for the fees (0 if reverse charge applies)

Decimal

totalFeesExcludingVat

The settlement total sum of all fees (above)

Decimal

totalFeesVatAmount

The settlement total Vat amounts for the Fees.

Decimal

Payment components

Field name

Field description

Field Length

PA

Line type for payments

String, 2

id

The payment Id

Integer

uniqueId

The unique Id

String

initialAmount

The amount of the transaction when initiated

Decimal

externalPaymentReference

Your external payment reference when initiating the payment

String, max 40, min 0

additionalReference

Your external payment reference when initiating the payment (optional)

String, max 40 min 0

currencyCode

Payment Currency (ISO 4217)

String, 3

type

Type of payment method (e.g. CARD, BANK etc.)

String

Payment operation components

Field name

Field description

Field Length

PO

Line type for payment operations

String, 2

type

The type of operation

CAPTURE: Captured funds for a payment REFUND: Refunded funds amount for a payment

String

amount

Amount of the operation

Note: Can differ from the payment amount

Decimal

createdDate

Date when operation was created

Date

operationId

The id of the operation

String

expiryDate

Card specific expiry date for payment operations with Type=AUTH

Date

description

Your transactionDescription sent in when you Capture or Refund a payment

String

schemeTotalFeeExcludingVat

Card specific scheme fees for the transaction excluding Vat

Decimal

interchangeTotalFeeExcludingVat

Card specific interchange fee for the transaction excluding Vat

Decimal

payerTotalFeeExcludingVat

Payer Fee for the transaction excluding Vat

Decimal

feeVatPercentage

The Fee vat percentage

Decimal

cardSchemeName

Name of card scheme

String

cardUsage

Type of card

String

cardCategory

Card category

String

interchangeDomain

Card interchange domain

String

countryIssuer

Card country issuer, as an ISO 3166 numeric code

Integer

File processing considerations

Info

Note that we may add or remove fields from the CSV files in the future. When parsing a CSV file, we therefore advice you to use the header rows to identify which fields that are included for each row type in that particular file. I.e., on the H-SE row, if the first field after H-SE is payoutReference, then when parsing an SE row later, you should parse the first field after SE as payoutReference. Parsing this way will ensure that you will be able to parse files even if a field is added or removed.

Example file

Example file including headers (optional when includeHeaders=true)

H-SE,payoutReference,marketCountryCode,currencyCode,amount,transactionMessage,bookingDate,valueDate,payoutDate,schemeTotalFeeExcludingVat,interchangeTotalFeeExcludingVat,payerTotalFeeExcludingVat,feeVatPercentage,totalFeesExcludingVat,totalFeesVatAmount H-PA,id,uniqueId,initialAmount,externalPaymentReference,additionalReference,currencyCode,type H-PO,type,amount,createdDate,operationId,expiryDate,description,schemeTotalFeeExcludingVat,interchangeTotalFeeExcludingVat,payerTotalFeeExcludingVat,feeVatPercentage,cardSchemeName,cardUsage,cardCategory,interchangeDomain,countryIssuer SE,5q4qsr24-kkn7-u8wy-4naw-veu04zx50rew,SE,SEK,4.00,5q4qsr2 PAYER,,,2021-04-08,0.96892300,0.00000000,0.01750000,25.00,0.99,0.01 PA,3,e2b4ed44-0643-4679-8ec1-20f685f7859f,1.00,e714418c-29b6-475a-9f23-89b182cdae10,,SEK,CARD PO,CAPTURE,1.00,2021-04-08T09:58:02.096+02:00,318200920,,description,0.29688800,0.00000000,0.00250000,25.00,Mastercard,Debit,Consumer,Domestic,752 PO,REFUND,1.00,2021-04-08T09:58:02.096+02:00,318202986,,,0.07290000,0.00000000,0.00250000,25.00 PA,2,c4b28af0-a4ef-4537-8ca9-c131a091a60c,1.00,6b20781b-f633-43fb-9939-4f72f36ca1c8,,SEK,CARD PO,CAPTURE,1.00,2021-04-08T09:58:02.091+02:00,318974698,,description,0.29888900,0.00000000,0.00250000,25.00,Mastercard,Debit,Consumer,Domestic,752 PA,1,cc5dab49-78f5-4f9e-aed7-d82a82005b74,4.00,5a596726-77f5-49f0-8e05-5c1d878acaef,,SEK,CARD PO,CAPTURE,4.00,2021-04-08T09:58:02.087+02:00,318975666,,description,0.30024600,0.00000000,0.01000000,25.00,Mastercard,Debit,Consumer,Domestic,752