Entur Developer
Payments

AppClaimResponse

Information about how to access mobile app "terminal".
appClaimUrl
​string · required

Location of the payment terminal.

Example: https://landing.vipps.no/?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1Ni
paymentId
​integer · int64 · required

ID of the payment the transaction belongs to. Used with the transactionId to later capture transaction.

Example: 1
transactionId
​integer · int64 · required

ID of the transaction this terminal belongs to. Used with the transactionId to later capture transaction.

Example: 10

AppClaimRequest

Information used to create a payment claim in a mobile app where end-user can accept payment.
description
​string

Customize the text to be presented to the end-user in the payment app. This often involves some kind of product information.

Example: Train ticket(s) from entur.org
phoneNumber
​string · pattern: ^([0-9]{8}|\+?[0-9]{…

Phone number where the claim should be presented. Accepted formats: 8-digit Norwegian number (country code 47 is added automatically if not provided), MSISDN (digits only, country code included, 10–15 digits), or E.164 (leading +, 10–15 digits). Supported country codes: Norway (47), Denmark (45), Sweden (46), Finland (358).

Example: 4791234567
redirectUrl
​string · minLength: 1

Location to be redirected to from the 3rd party landing page/app.

Example: https://www.entur.org or my-app://my-url

CreditMergePatch

Request body used to update a credit. The properties described here are the only properties that can be updated on a credit.
totalCreditAmount
​string · required

Amount to credit, represented in the standard currency. Maximum (totalDigits: 18, fractionDigits: 5) according to ISO 20022. The integer and fractional digits are separated by a dot.

Example: 450.00
​CreditTransactionRequest[]

List of individual transactions to credit.

Example: [{"amount":"450.00","currency":"NOK","paymentTransactionId":1,"reimbursementTypeGroup":"PAYMENTCARD"}]
active
​boolean

Active is used during activation of credit

Example: true

CreditRequest

Information used to create a Credit.
​CreditTransactionRequest[] · required

List of individual transactions to credit.

orderId
​string · required

ID of the order this credit belongs to.

Example: HE8NDS7XY
orderVersion
​integer · int32 · required

Version of the order this credit belongs to.

Example: 1
totalCreditAmount
​string · maxLength: 19 · pattern: ^[1-9][0-9]{0,17}\.[… · required

Amount to credit, represented in the standard currency. Maximum (totalDigits: 18, fractionDigits: 5) according to ISO 20022. The integer and fractional digits are separated by a dot.

Example: 450.00
currency
​string · pattern: [A-Z]{3}

The currency used for this credit. Default value is 'NOK'

Example: NOK
Default: NOK
customerNumber
​string

Customer who owns this credit. This value is only considered for privileged client (internal and partner tenants.

Example: 123456789
settlementId
​integer · int64

Supplied to the client by an external system for handling settlements. For Internal Entur Clients this is Entur’s Electronic Journal.

Example: 1873

CreditTransactionRequest

Single credit transaction referring to a single payment transaction.
amount
​string · maxLength: 19 · pattern: ^[1-9][0-9]{0,17}\.[… · required

Amount to credit, represented in the standard currency. Maximum (totalDigits: 18, fractionDigits: 5) according to ISO 20022. The integer and fractional digits are separated by a dot.

Example: 450.00
paymentTransactionId
​integer · int64 · required

Reference to the transaction to credit.

Example: 1
currency
​string · pattern: [A-Z]{3}

3-letter ISO 4217 currency code. Default is NOK.

Example: NOK
Default: NOK
reimbursementTypeGroup
​PaymentTypeGroup · enum

A PaymentTypeGroup used to override which kind of method to use for reimbursement, instead of using same as used for the payment transaction.This will only take effect if the payment method on the payment transaction allows for overriding.

Enum values:
AGENT
CASH
ECARD
GIFTCARD
INVOICE
MOBILE
PAYMENTCARD
PAYPAL
Example: CASH
​object

Required data when importing transaction/overriding method of reimbursement. This only works when importing already credited transactions, and will only be considered when this is the case.

Example: {"companyId":"1","envNetworkId":"578000","mediaSerialNumberId":"0067340023","paymentType":"Coop Mastercard","rrn":"000123456123","terminalId":"123-133-44","externalTransactionId":"7381cc2886b147198tuf257440c614fd","transactionConfirmedAt":"2025-01-12T16:13:13Z","transactionData":{"someKey":"someValue"}}

GiftCardRequest

Information used to create a payment claim with a gift card.
giftCardCode
​string · required

The code identifying a gift card.

Example: 1927bd54-4cc4

InvoiceRequest

Information used to customize an invoice.
customerIdentificationNumber
​string

Customer identification number to identify customer information on electronic banking transactions. Used for penalty fare invoices in Xledger. Has absolutely nothing to do with Entur customers.

Example: 12345678
externalInvoiceNumber
​string

An external invoice number that is generated outside the sales system. This number is the invoice number on the written invoice, and must be sent to Xledger

Example: 21000557302577563
languageCode
​string

Language code to override terminal language and invoice if possible. Overrides customer preferences. ISO 639-3 format.

Example: NOB
Default: NOB
redirectUrl
​string · pattern: ^(https?://).{0,1024…

Location to be redirected to from the payment terminal. Required for Collector

Example: https://www.entur.org
invoiceId
​integer · int64

Id of Invoice. Only set in request for PUT

Example: 1

AuthorizeRequest

Information used to update a transaction and payment with correct amount and authorize the new amount to Nets.
totalAmount
​string · required

Amount to pay, represented in the standard currency. Maximum (totalDigits: 18, fractionDigits: 5) according to ISO 20022. The integer and fractional digits are separated by a dot.

Example: 450.00

AuthorizeResponse

Information about the authorized transaction
paymentId
​integer · int64 · required

ID of the payment the transaction belongs to. Used with the transactionId to later capture transaction.

Example: 1
transactionId
​integer · int64 · required

ID of the transaction this terminal belongs to. Used with the paymentId to later capture transaction.

Example: 10

InvoiceResponse

Information about the invoice payment
invoiceId
​integer · int64 · required

ID of the invoice connected to the payment. Used to lookup invoice in the invoice api

Example: 1
paymentId
​integer · int64 · required

ID of the payment the transaction belongs to. Used with the transactionId to later capture transaction.

Example: 1
transactionId
​integer · int64 · required

ID of the transaction this terminal belongs to. Used with the paymentId to later capture transaction.

Example: 1
terminalUri
​string

If paymentType is COLLECTOR: Location of the payment terminal, else null

Example: https://epayment.nets.eu/Terminal/default.aspx?merchantId=1234567&transactionId=77770fb3a53347777071cd6f4a3e7777
expiryDate
​string · date-time

Legacy field, only present on historical Collector B2B invoices: expiry date for when the invoice is no longer payable

Example: 2025-09-30T22:00:00Z
publicToken
​string

Legacy field, only present on historical Collector B2B invoices: token used in creation of payment iframe

Example: public-SE-0a94436dba53edc468584935e7da524eb8d5d8feab85ed03

PanHashTerminalRequest

Information used to create a terminal.
panHash
​string · required

The pan hash used to execute the payment.

Example: eVHXJzGr4gu1lz9TwGJU
recurringType
​string · minLength: 1 · maxLength: 1 · pattern: ^R|S$ · required

The type of the recurring payment. Can be either R og S.

Example: R
redirectUrl
​string · pattern: ^(https?://).{0,1024… · required

Location to be redirected to from the payment terminal.

Example: http://www.entur.org

PaymentMergePatch

Request body udes to update a payment. The properties described here are the only properties that can be updated on a payment.
totalAmount
​string · required

Amount to pay, represented in the standard currency. Maximum (totalDigits: 18, fractionDigits: 5) according to ISO 20022. The integer and fractional digits are separated by a dot. Editable: true

Example: 450.00
active
​boolean

Active is used during activation of payment

Example: true
settlementId
​integer

Id of a settlement used to identify on-site payments i.e. mobile terminals, ticket vending machines and customer service help-desks.

Example: 100123

PaymentRequest

Information used to create a Payment.
orderId
​string · required

Id of the order this payment belongs to.

Example: HE8NDS7XY
orderVersion
​integer · int32 · required

Version of the order this payment belongs to.

Example: 1
totalAmount
​string · maxLength: 19 · pattern: ^[1-9][0-9]{0,17}\.[… · required

Amount to pay, represented in the standard currency. Maximum (totalDigits: 18, fractionDigits: 5) according to ISO 20022. The integer and fractional digits are separated by a dot.

Example: 450.00
currency
​string · pattern: [A-Z]{3}

3-letter ISO 4217 currency code. Default is NOK.

Example: NOK
Default: NOK
customerNumber
​string

Customer who owns this payment. This value is only considered for privileged client (internal and partner tenants.

Example: 123456789
settlementId
​integer · int64

Supplied to the client by an external system for handling settlements. For Internal Entur Clients this is Entur’s Electronic Journal.

Example: 18234
​TransactionRequest

Information used to create a transaction.

Example: {"amount":"450.00","currency":"NOK","isImport":false,"paymentType":"VISA","paymentTypeGroup":"PAYMENTCARD","recurringPaymentId":1,"with3DSecure":true,"scaExemption":"LOW_VALUE"}

RecurringPaymentRequest

Recurring payment API resource.
customerNumber
​string

The customer number this recurring payment belongs to. This field is optional and will only be considered for certain privileged clients. This value can not be updated.

Example: 42
isPrimary
​boolean

Is the recurring payment the primary recurring payment of the user. There can only be one primary recurring payment at a time. Therefore, changing this status to true might set another recurring payment's isPrimary to false.

Example: false
nickname
​string

Nickname for the recurring payment

Example: Bottomless mastercard

RecurringPaymentResponse

Response type for the Recurring Payment API
cardExpiresAt
​string · date-time · required

The stored card's expiration date, may be longer than the recurring payment's expiration date, but never shorter.

Example: 2025-01-12T16:13:13Z
createdAt
​string · date-time · required

Timestamp for when the recurring payment was created.

Example: 2025-01-12T16:13:13Z
expiresAt
​string · date-time · required

When the recurring payment is no longer valid

Example: 2025-02-12T16:13:13Z
maskedPan
​string · required

The stored card's masked number

Example: 4925 **** **** 0004
paymentType
​PaymentType · enum · required

The actual type of payment.

Enum values:
AMEX
BANKAXEPT
COLLECTOR
GIFTCARD
MASTERCARD
PAYPAL
VIPPS
VISA
Example: VISA
primary
​boolean · required

Is the recurring payment the primary recurring payment of the user. There can only be one primary recurring payment at a time. Therefore, changing this status to true might set another recurring payment's isPrimary to false.

Example: false
recurringPaymentId
​integer · int64 · required

ID of the recurring payment

Example: 111
recurringStatus
​RecurringStatus · enum · required

Status of this recurring payment

Enum values:
ACTIVE
CANCELLED
CREATED
DEFAULTED
EXPIRED
Example: ACTIVE
nickname
​string

Nickname for the recurring payment

Example: Bottomless mastercard

RecurringStatus

string · enum
Enum values:
ACTIVE
CANCELLED
CREATED
DEFAULTED
EXPIRED

Status of this recurring payment

Example: ACTIVE

TerminalCountryCode

string · enum
Enum values:
NO
DK
SE
FI

ISO 3166-1 Alpha 2 country code used for certain terminals (PayPal, Collector). Used to decide which country store the customer wants to use. Default is 'NO'

Example: NO
Default: NO

TerminalLanguage

string · enum
Enum values:
da_DK
de_DE
en_GB
es_ES
et_EE
fi_FI
fr_FR
it_IT

Language used in the payment terminal. Default is 'no_NO'.

Example: no_NO

TransactionType

string · enum
Enum values:
MIT_UCOF

Set the type of transaction. Only set this field to MIT_UCOF if you want to create a Merchant Initiated Transaction (MIT) which refers to a card payment started by a merchant without the customer being actively involved. If this value is not set, a payment terminal will be created as normal.

Example: MIT_UCOF

TerminalRequest

Information used to customize the payment terminal.
redirectUrl
​string · pattern: ^(https?://).{0,1024… · required

Location to be redirected to from the payment terminal.

Example: https://www.entur.org
callbackUrl
​string

Location where notification of payment completion will be sent. If this is not provided, then the client will have to check for completion manually by getting the transaction and checking its status. The callback will be repeated until the server receives an HTTP 202 response.

Example: https://entur.org
customerNumber
​string

Customer number used with recurring payment creation. This field is optional and will only be considered for certain privileged clients.

Example: 123456789
storePayment
​boolean

Should the card be stored for recurring payments. If customer is not logged in, the value of this will be disregarded.

Example: false
Default: false
terminalLanguage
​TerminalLanguage · enum

Language used in the payment terminal. Default is 'no_NO'.

Enum values:
da_DK
de_DE
en_GB
es_ES
et_EE
fi_FI
fr_FR
it_IT
Example: no_NO
countryCode
​TerminalCountryCode · enum

ISO 3166-1 Alpha 2 country code used for certain terminals (PayPal, Collector). Used to decide which country store the customer wants to use. Default is 'NO'

Enum values:
NO
DK
SE
FI
Example: NO
Default: NO
autoSale
​boolean

If this flag is set to true, the capture call after a customer returns from the terminal is not needed. The processing starts automatically. This is only compatible with payments done with payment cards.

Default: false
transactionType
​TransactionType · enum

Set the type of transaction. Only set this field to MIT_UCOF if you want to create a Merchant Initiated Transaction (MIT) which refers to a card payment started by a merchant without the customer being actively involved. If this value is not set, a payment terminal will be created as normal.

Enum values:
MIT_UCOF
Example: MIT_UCOF
singlePage
​boolean

If this flag is set to true, we will attempt to generate a single-page terminal. If false, multi-page terminal might be used.

Example: false
Default: false

TerminalResponse

Information about how to access the terminal.
terminalUri
​string · required

Location of the payment terminal.

Example: https://epayment.nets.eu/Terminal/default.aspx?merchantId=700000&transactionId=8841532204d4426da913a5abfbg322f0
paymentId
​integer · int64

ID of the payment the transaction belongs to. Used with the transactionId to later capture transaction.

Example: 1
recurringPaymentId
​integer · int64

ID of the recurring payment this terminal belongs to.

Example: 1
transactionId
​integer · int64

ID of the transaction this terminal belongs to. Used with the paymentId to later capture transaction.

Example: 1

InternalTerminalRequest

Information used to customize the payment terminal.
redirectUrl
​string · pattern: ^(https?://).{0,1024… · required

Location to be redirected to from the payment terminal.

Example: http://www.entur.org

InternalTerminalResponse

Information about how to access the terminal.
terminalUrl
​string · required

Location of the payment terminal.

Example: https://terminal.entur.no/?data=MTAzNTgzMzoxMDY1NTY4
paymentId
​integer · int64

ID of the payment the transaction belongs to.

Example: 1
transactionId
​integer · int64

ID of the transaction this terminal belongs to.

Example: 1

TransactionImportRequest

Request body for importing an already completed transaction.
transactionConfirmedAt
​string · date-time · required

Time when payment transaction was completed by the client.

Example: 2018-03-07T12:20:46Z
companyId
​string · pattern: [\d]{1,4}

Id of the issuing organisation. The id is equal to the internal id in Enturs Organisation Register. Required for ECARD.

Example: 1
envNetworkId
​string · pattern: [\d]{6}

County code for issuer

Example: 578000
mediaSerialNumberId
​string · pattern: [\d]{1,10}

Numerical e-Card identifier. Required for ECARD.

Example: 0067340023
paymentType
​string

Name of the specific payment type used. This further specifies the type of payment method used for this transaction. Often referred to as the name of the issuer for payment cards in the transaction data retrieved from payment terminals. Required for PAYMENTCARD.

Example: Coop Mastercard
rrn
​string · minLength: 1 · maxLength: 12

Reconciliation reference number used to track a transaction through different economy systems. Required for PAYMENTCARD.

Example: 000012345678
terminalId
​string

Unique identifier for a physical terminal. Makes a transaction unique together with rrn. Required for PAYMENTCARD.

Example: 123-133-44
externalTransactionId
​string

Transaction ID from 3rd party payment provider.

Example: 7381cc2886b147198tuf257440c614fd
​object

Any extra transaction data which could be relevant can be specified as a key value map of strings.

Example: {"someKey":"someValue"}

RegisterWalletTransactionResponse

Information about registered wallet-transaction.
paymentId
​integer · int64

ID of the payment the transaction belongs to. Used with the transactionId to later capture transaction.

Example: 1
transactionId
​integer · int64

ID of the transaction this terminal belongs to. Used with the paymentId to later capture transaction.

Example: 1
walletProvider
​string

Examples of providers are ApplePay and GooglePay. Both are supported.

Example: ApplePay
terminalUri
​string | null

Location of the payment terminal for handling 3DS. This will only be returned if the redirectUrl was provided in the request.

Example: https://epayment.nets.eu/epay/default.aspx?merchantId=700000&transactionId=8841532204d4426da913a5abfbg322f0

TransactionRequest

Information used to create a transaction.
amount
​string · required

Amount to pay, represented in the standard currency. Maximum (totalDigits: 18, fractionDigits: 5) according to ISO 20022. The integer and fractional digits are separated by a dot.

Example: 450.00
currency
​string · pattern: [A-Z]{3}

3-letter ISO 4217 currency code. Default is NOK.

Example: NOK
Default: NOK
isImport
​boolean

Import flag. Selects a special payment method for imports.

Example: false
Default: false
paymentType
​PaymentType · enum

The actual type of payment.

Enum values:
AMEX
BANKAXEPT
COLLECTOR
GIFTCARD
MASTERCARD
PAYPAL
VIPPS
VISA
Example: VISA
paymentTypeGroup
​PaymentTypeGroup · enum

A PaymentTypeGroup used to override which kind of method to use for reimbursement, instead of using same as used for the payment transaction.This will only take effect if the payment method on the payment transaction allows for overriding.

Enum values:
AGENT
CASH
ECARD
GIFTCARD
INVOICE
MOBILE
PAYMENTCARD
PAYPAL
Example: CASH
recurringPaymentId
​integer · int64

ID of the saved payment method to use for this transaction.

Example: 123
paymentAgreementId
​integer · int64

ID of the payment agreement to charge against. Used for Vipps recurring agreement payments. Mutually exclusive with recurringPaymentId.

Example: 456
with3DSecure
​boolean

Flag to choose payment methods with or without 3D Secure. This option is only accessible to privileged clients.

Example: true
Default: true
scaExemption
​ScaExemption

The type of SCA (secure customer authentication) Exemption for a transaction. Defaults to NO_EXEMPTION. Other available values are: LOW_VALUE.

Example: NO_EXEMPTION
createAgreement
​boolean

If true, a new FLEXIBLE Vipps agreement is created and the transaction amount becomes the initial charge. The user must approve the agreement before the charge is processed. Use with paymentType VIPPS / paymentTypeGroup MOBILE. Mutually exclusive with paymentAgreementId and recurringPaymentId.

Example: false
Default: false

RegisterWalletTransactionRequest

Request body used to register a wallet transaction with an external payment provider.
walletProvider
​WalletProvider · enum · required

Examples of providers are ApplePay and GooglePay. Both of these are supported.

Enum values:
APPLE_PAY
GOOGLE_PAY
Example: APPLE_PAY
paymentData
​string · minLength: 1 · required

Contains payment data that will be ECC encrypted. Client should send this as a JSON-string containing the data as described in https://developer.apple.com/documentation/passkit/payment-token-format-reference#Payment-token-format-reference .

Example: {data:{"version": "EC_v1","data": "CiAgQmFzZTY0IGVueWNyeXB0ZWQgY29udGVudCBvZiB0aGUgdG9rZW4gZGF0YS4uLg==","signature": "MEUCIQDfKf9Zl...FAKE_SIGNATURE...b7Q==","header": {"ephemeralPublicKey": "BCEFAKE_EPHEMERAL_PUBLIC_KEY_BASE64==","publicKeyHash": "FAKE_PUBLIC_KEY_HASH_BASE64==","transactionId": "6B1F2E3A-9C4D-4B1A-8F4C-1234567890AB"}}
redirectUrl
​string | null

Points to where users should be redirected to for 3DS handling after registering payment, according to client. This is optional, and should only be used for GooglePay and if the transaction is being initiated from a web client, and not an app client.

Example: https://your-redirect-url.org/123123

WalletProvider

string · enum
Enum values:
APPLE_PAY
GOOGLE_PAY

Examples of providers are ApplePay and GooglePay. Both of these are supported.

Example: APPLE_PAY

ScaExemption

string

The type of SCA (secure customer authentication) Exemption for a transaction. Defaults to NO_EXEMPTION. Other available values are: LOW_VALUE.

Example: NO_EXEMPTION

ValidationError

An error that is returned when the input from the client was not validated. It's an extension of the PaymentError
error
​string · required

The error that occurred.

Example: Internal Server Error
exception
​string · required

What exception caused the error.

Example: org.entur.payment.faulthandling.exceptions.psp.InternalPSPFailureException
message
​string · required

A message detailing the error.

Example: An internal error occurred in the PSP. message='Unable to sale', errorCode='99', errorSource='Netaxept', errorText='Internal failure'
path
​string · required

The url path that was accessed when the error happenened.

Example: /v1/payments/1/transactions/1/capture
status
​integer · int32 · required

The http status of the response.

Example: 500
timestamp
​string · date-time · required

When the error occurred

Example: 2025-01-12T16:13:13Z
errorReason
​string

In some cases, the client is required to act upon getting a PaymentError. When action is required from the client, this field will be populated. Valid values: SOFT_DECLINE, REFUSED_BY_ISSUER, ISSUER_UNAVAILABLE, RESOURCE_BUSY, USER_ERROR, COMPLIANCE_CHECK_FAILED.

Example: SOFT_DECLINE
errors
​string[]

PaymentWebhookRequest

The request object a client can expect to receive when we send them webhooks.
eventName
​string · required

The name of the event that is being sent with the webhook. Currently only support CREDIT-events

Example: CREDIT
enturPaymentTransactionId
​integer · int64 · required

The transaction id of the transaction in Entur's system.

Example: 1
​WebhookTransactionSummary · required

A summary of the different operations done on a transaction. The amounts describe the state of the transaction at the time the event was created, not the size of the event itself.

Example: {"capturedAmount":"100.00","creditedAmount":"100.00"}
id
​string

The identification of a sent webhook event.

Example: 1
timestamp
​string · minLength: 1 · maxLength: 10 · pattern: ^[0-9]+$

Unix timestamp (seconds since epoch) for when webhook was sent.

Example: 1736698393
externalTransactionId
​string

The transaction id of the transaction in the partners system. This is provided by the partner when importing the transaction.

Example: 1234
​object

Extra transaction data from external client. Only relevant for clients using the import flow.

Example: {"extraData":"any extra data you want to add"}

WebhookTransactionSummary

A summary of the different operations done on a transaction. The amounts describe the state of the transaction at the time the event was created, not the size of the event itself.
capturedAmount
​string · required

The amount that has been captured on this transaction

Example: 100.00
creditedAmount
​string · required

The accumulated amount that has been credited on this transaction, including the credit that triggered this event. On a partial credit this is the sum of every credit so far, so it is not the amount of this single credit. The value is fixed when the event is created, which means a redelivery of the same event carries the same amount as the first attempt.

Example: 100.00

WebhookConfigurationRequest

The request body a client will send when registering a webhook configuration.
baseUrl
​string · required

The client specified base url where they want to use for all event paths.

Example: https://entur-partner.no/webhooks
​WebhookConfigurationEventPaths[] · minItems: 1 · required

A collection of which webhooks events and the paths they should be sent to. The path is combined with the base url to form a complete url

Example: [{"event":"CREDIT","path":"/credit"},{"event":"CAPTURE","path":"/capture"}]

WebhookConfigurationResponse

The response returned when registering or updating a webhook configuration
baseUrl
​string · required

The client specified base url where they want to use for all event paths.

Example: https://entur-partner.no/webhooks
secret
​string · required

The secret that should be used to validate the signature of receive webhooks. This is generated by Entur.

Example: xgr*hyw8bru4DWZ1wqc
​WebhookConfigurationEventPaths[] · required

A collection of which webhooks events and the paths they should be sent to. The path is combined with the base url to form a complete url

Example: [{"event":"CREDIT","path":"/credit"},{"event":"CAPTURE","path":"/capture"}]
organisationId
​integer · int64 · required

The organisation that own this webhook configuration

Example: 1
id
​integer · int64

The id of the webhook configuration

Example: 1

WebhookConfigurationEventPaths

The response returned when registering or updating a webhook configuration
event
​string · required

A webhook event. Possible values are: CREDIT.

Example: CREDIT
path
​string · pattern: ^/.*$ · required

The path a webhook event should be sent to. Must start with '/'. The full callback url is the base url with this path appended verbatim.

Example: /credit

PageOfWebhookConfiguration

Page displays a subset of a list of entities
​WebhookConfigurationResponse[] · readOnly · required

Items on a specific page

Example: [{"baseUrl":"https://entur-partner.no/webhooks","secret":"xgr*hyw8bru4DWZ1wqc","eventPaths":[{"event":"CREDIT","path":"/credit"},{"event":"CAPTURE","path":"/capture"}],"organisationId":1}]
totalItems
​integer · int64 · readOnly · required

Total number of items

Example: 72
totalPages
​integer · int64 · readOnly · required

Total number of pages available to browse

Example: 9

AgreementInterval

Defines the billing interval for a payment agreement.
unit
​string · enum · required

The time unit for the interval.

Enum values:
WEEK
MONTH
YEAR
count
​integer · min: 1 · required

The number of time units per interval.

AgreementPricing

Base pricing model for a payment agreement.
agreementType
​string · enum · required

The pricing model type.

Enum values:
FIXED
VARIABLE
FLEXIBLE

FixedPricing

Fixed pricing charges a set amount each interval. **Not yet supported** — creating a FIXED agreement returns 501. Reserved for future use.
agreementType
​string · enum · required

The pricing model type.

Enum values:
FIXED
VARIABLE
FLEXIBLE
amount
​integer · required

The fixed amount to charge per interval, in minor units, e.g: øre.

currency
​string · minLength: 3 · maxLength: 3 · required

ISO 4217 currency code.

​AgreementInterval · required

Defines the billing interval for a payment agreement.

VariablePricing

Variable pricing charges a varying amount each interval and requires a suggested maximum amount. **Not yet supported** — creating a VARIABLE agreement returns 501. Reserved for future use.
agreementType
​string · enum · required

The pricing model type.

Enum values:
FIXED
VARIABLE
FLEXIBLE
amount
​integer · required

The amount to charge per interval, in minor units, e.g: øre.

currency
​string · minLength: 3 · maxLength: 3 · required

ISO 4217 currency code.

​AgreementInterval · required

Defines the billing interval for a payment agreement.

suggestedMaxAmount
​integer · required

A suggested maximum amount per charge, in minor units.

FlexiblePricing

Flexible pricing with no fixed interval or amount.
agreementType
​string · enum · required

The pricing model type.

Enum values:
FIXED
VARIABLE
FLEXIBLE
currency
​string · minLength: 3 · maxLength: 3 · required

ISO 4217 currency code.

AgreementRequestProviderData

Base provider-specific data for creating an agreement.
agreementProvider
​string · enum · required

The payment provider for the agreement.

Enum values:
VIPPS

VippsAgreementRequestProviderData

Vipps-specific data for creating a recurring agreement.
agreementProvider
​string · enum · required

The payment provider for the agreement.

Enum values:
VIPPS
merchantRedirectUrl
​string · uri · required

URL to redirect the customer to after they have accepted or rejected the agreement in Vipps.

merchantAgreementUrl
​string · uri · required

URL where the customer can manage the agreement on the merchant's site.

phoneNumber
​string

The customer's phone number for Vipps push notification.

AgreementResponseProviderData

Base provider-specific data in an agreement response.
agreementProvider
​string · enum · required

The payment provider for the agreement.

Enum values:
VIPPS

VippsAgreementResponseProviderData

Vipps-specific data returned when an agreement is created.
agreementProvider
​string · enum · required

The payment provider for the agreement.

Enum values:
VIPPS
confirmationUrl
​string · uri · required

URL to redirect the customer to for confirming the agreement in Vipps.

CreatePaymentAgreementRequest

Request to create a new payment agreement.
productName
​string · maxLength: 45 · required

Name of the product or subscription.

customerNumber
​string · required

The customer number for the agreement.

​AgreementPricing · required

Base pricing model for a payment agreement.

​AgreementRequestProviderData · required

Base provider-specific data for creating an agreement.

productDescription
​string · maxLength: 100

Optional description of the product or subscription, shown to the customer in the provider's app.

AgreementUpdateProviderData

Base provider-specific data for updating an agreement. Contains only the fields the provider allows changing after the agreement exists — which is why this is a separate schema from AgreementRequestProviderData.
agreementProvider
​string · enum · required

The payment provider for the agreement. Cannot be changed, and must match the agreement's existing provider.

Enum values:
VIPPS

VippsAgreementUpdateProviderData

Vipps-specific data that can be changed on an existing agreement. Note that merchantRedirectUrl and phoneNumber are absent: both only apply while the customer is confirming the agreement, and Vipps does not allow changing them afterwards.
agreementProvider
​string · enum · required

The payment provider for the agreement. Cannot be changed, and must match the agreement's existing provider.

Enum values:
VIPPS
merchantAgreementUrl
​string · uri

URL where the customer can manage the agreement on the merchant's site. Must use HTTPS.

AgreementUpdatePricing

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object · requires: amount, currency, interval
type = object · requires: amount, currency, interval +1 more
Properties for Variant 1:
Fixed pricing charges a set amount each interval. **Not yet supported** — creating a FIXED agreement returns 501. Reserved for future use.
agreementType
​string · enum · required

The pricing model type.

Enum values:
FIXED
VARIABLE
FLEXIBLE
amount
​integer · required

The fixed amount to charge per interval, in minor units, e.g: øre.

currency
​string · minLength: 3 · maxLength: 3 · required

ISO 4217 currency code.

​AgreementInterval · required

Defines the billing interval for a payment agreement.

UpdatePaymentAgreementRequest

Request to update a payment agreement. Every field is optional, but at least one must be supplied — omitting a field leaves it unchanged. `pricing` is not currently supported and returns 501; only `productName`, `productDescription`, and `providerData` can be updated on FLEXIBLE agreements.
productName
​string · maxLength: 45

Name of the product or subscription.

productDescription
​string · maxLength: 100

Description of the product or subscription, shown to the customer in the provider's app.

Pricing model for updating an agreement. Not yet supported — supplying this field returns 501. FLEXIBLE is absent because its amount is set per charge and has nothing to update; FIXED and VARIABLE are reserved for future use.

Base provider-specific data for updating an agreement. Contains only the fields the provider allows changing after the agreement exists — which is why this is a separate schema from AgreementRequestProviderData.

PaymentAgreementResponse

Response containing payment agreement details.
agreementId
​integer · int64

The unique identifier of the payment agreement.

status
​string · enum

The current status of the agreement.

Enum values:
CREATED
PENDING
ACTIVE
STOPPED
EXPIRED
productName
​string

Name of the product or subscription.

productDescription
​string

Description of the product or subscription, shown to the customer in the provider's app.

Base pricing model for a payment agreement.

Base provider-specific data in an agreement response.

CreditTransactionResponse

Represents a credit transaction referring to a payment transaction.
amount
​string · required

Amount to credit, represented in the standard currency. Maximum (totalDigits: 18, fractionDigits: 5) according to ISO 20022. The integer and fractional digits are separated by a dot.

Example: 450.00
paymentId
​integer · int64 · required

Reference to the payment the credited payment transaction belongs to.

Example: 1
paymentTransactionId
​integer · int64 · required

Reference to the transaction this credit transaction credits.

Example: 10
reimbursementTypeGroup
​string · required

General type of reimbursement method.

Example: PAYMENTCARD
createdAt
​string · date-time · readOnly

Timestamp for when transaction was first created.

creditedAt
​string · date-time

Time when credit was confirmed.

Example: 2025-01-12T16:13:13Z
currency
​string

3-letter ISO 4217 currency code. Default is NOK.

Example: NOK
newGiftCardId
​string · readOnly

Reference to the gift card id (contract uuid) the credited payment transaction belongs to. Note: This field will be set if the transaction was credited to a gift card.

Example: 0068a450-066f-442d-8117-1543fe2b1e0e
reimbursementMethod
​string

Specific type of reimbursement method.

Example: VISA
rrn
​string

Reconciliation reference number used to track a transaction through different economy systems.

Example: 000012345678
status
​string · enum

Status of this credit transaction.

Enum values:
CREATED
CREDITED
Example: CREATED
​object

Extra transaction data from external client. Only relevant for clients using the import flow.

Example: {"extraData":"any extra data you want to add"}
updatedAt
​string · date-time · readOnly

Timestamp for when transaction was last updated.

Example: 2025-01-12T16:13:13Z

CreditResponse

Information about credits performed on an order.
creditId
​integer · int64 · required

Identification of this credit resource.

Example: 1
​CreditTransactionResponse[] · required

List of individual transactions to credit.

Example: [{"amount":"450.00","createdAt":"2025-01-12T16:08:03Z","creditedAt":"2025-01-12T16:13:13Z","currency":"NOK","newGiftCardId":"0068a450-066f-442d-8117-1543fe2b1e0e","paymentId":1,"paymentTransactionId":10,"reimbursementMethod":"VISA","reimbursementTypeGroup":"PAYMENTCARD","rrn":"000123456123","status":"CREATED","transactionData":{"extraData":"any extra data you want to add"},"updatedAt":"2025-01-12T16:13:13Z"}]
orderId
​string · required

ID of the order this payment belongs to.

Example: HE8NDS7XY
orderVersion
​integer · int32 · required

Version of the order this credit belongs to.

Example: 1
totalCreditAmount
​string · required

Total amount to credit, represented in the standard currency. Maximum (totalDigits: 18, fractionDigits: 5) according to ISO 20022. The integer and fractional digits are separated by a dot.

Example: 450.00
active
​boolean

If active is false, credit is considered uneditable. The only way to change this property is through an internal Admin endpoint or the mergePatch endpoint. Editable: true

Example: false
currency
​string

The currency used for this credit.

Example: NOK
customerNumber
​string

ID of the customer who owns this credit.

Example: 123456789
organisationId
​integer · int64

ID of the organisation who created this credit.

Example: 1
settlementId
​integer · int64

Supplied to the client by an external system for handling settlements. For Internal Entur Clients this is Entur’s Electronic Journal.

PageOfCredit

Page displays a subset of a list of entities
​CreditResponse[] · readOnly · required

Items on a specific page

Example: [{"active":true,"creditId":1,"creditTransactions":[{"amount":"450.00","createdAt":"2025-01-12T16:08:03Z","creditedAt":"2025-01-12T16:13:13Z","currency":"NOK","newGiftCardId":"0068a450-066f-442d-8117-1543fe2b1e0e","paymentId":1,"paymentTransactionId":10,"reimbursementMethod":"VISA","reimbursementTypeGroup":"PAYMENTCARD","rrn":"000123456123","status":"CREATED","transactionData":{"extraData":"any extra data you want to add"},"updatedAt":"2025-01-12T16:13:13Z"}],"currency":"NOK","customerNumber":"123456789","orderId":"ABCD1234","orderVersion":1,"organisationId":1,"settlementId":1245,"totalCreditAmount":"450.00"}]
totalItems
​integer · int64 · readOnly · required

Total number of items

Example: 72
totalPages
​integer · int64 · readOnly · required

Total number of pages available to browse

Example: 9

PaymentError

error
​string · required

The error that occurred.

Example: Internal Server Error
exception
​string · required

What exception caused the error.

Example: org.entur.payment.faulthandling.exceptions.psp.InternalPSPFailureException
message
​string · required

A message detailing the error.

Example: An internal error occurred in the PSP. message='Unable to sale', errorCode='99', errorSource='Netaxept', errorText='Internal failure'
path
​string · required

The url path that was accessed when the error happenened.

Example: /v1/payments/1/transactions/1/capture
status
​integer · int32 · required

The http status of the response.

Example: 500
timestamp
​string · date-time · required

When the error occurred

Example: 2025-01-12T16:13:13Z
errorReason
​string

In some cases, the client is required to act upon getting a PaymentError. When action is required from the client, this field will be populated. Valid values: SOFT_DECLINE, REFUSED_BY_ISSUER, ISSUER_UNAVAILABLE, RESOURCE_BUSY, USER_ERROR, COMPLIANCE_CHECK_FAILED.

Example: SOFT_DECLINE

PaymentTypeGroup

string · enum
Enum values:
AGENT
CASH
ECARD
GIFTCARD
INVOICE
MOBILE
PAYMENTCARD
PAYPAL

A PaymentTypeGroup used to override which kind of method to use for reimbursement, instead of using same as used for the payment transaction.This will only take effect if the payment method on the payment transaction allows for overriding.

Example: CASH

Operation

string · enum
Enum values:
AUTHENTICATE
CANCEL
CAPTURE
CREATE
CREDIT
IMPORT
INITIATE
REJECT

A transaction has a list of operations performed on a transaction. These operations can have one of the values in this enum.

Example: CREATE

ErrorResponse

Information about an error that occurred.
code
​string

The error code. Used in combination with the error source to find more information about the error.

Example: 25
source
​string

Where the error originates from.

Example: Netaxept
message
​string

A description of the error that occurred.

Example: Transaction not found.

TransactionOperationResponse

Describes an operation performed on a transaction.
amount
​string · required

Amount for this operation, represented in the standard currency. Maximum (totalDigits: 18, fractionDigits: 5) according to ISO 20022. The integer and fractional digits are separated by a dot.

Example: 450.00
operation
​Operation · enum · required

A transaction has a list of operations performed on a transaction. These operations can have one of the values in this enum.

Enum values:
AUTHENTICATE
CANCEL
CAPTURE
CREATE
CREDIT
IMPORT
INITIATE
REJECT
Example: CREATE
pos
​string · required

Point-of-sale id which performed this operation.

Example: 18930345
timestamp
​string · date-time · required

Time when operation was completed. A date without a time zone in the ISO 8601 calendar system.

Example: 2025-01-12T16:13:13Z
distributionChannelId
​string

Distribution Channels controls which organisations can sell, refund or inform on available products or salepoints. The distribution channel id represents a specific distribution channel.

Example: ENT:DistributionChannel:Test

Information about an error that occurred.

Example: {"code":"25","source":"Netaxept","message":"Transaction not found."}

PaymentType

string · enum
Enum values:
AMEX
BANKAXEPT
COLLECTOR
GIFTCARD
MASTERCARD
PAYPAL
VIPPS
VISA

The actual type of payment.

Example: VISA

PaymentTypeFee

Fee related to a payment method.
amount
​string · maxLength: 19 · pattern: ^[1-9][0-9]{0,17}\.[… · required

Total amount including taxes

Example: 100.00
currency
​string · required

The currency in 3-letter ISO-4217 standard codes

Example: NOK
Default: NOK
name
​string · pattern: [A-Z]{3}:[^:]+:[^:]+ · required

Name of the fee in NeTEX format identifying a fee.

Example: ENT:PaymentTypeFee:Collector
taxAmount
​string · required

The total amount of taxes this fee consists of

Example: 25.00
reason
​string

The reason for the fee, if applicable.

Example: Walley Invoice
taxCode
​string

The tax code for the tax rate, if applicable

Example: 3
taxRate
​string

The tax rate of this fee, if applicable

Example: 25.00

TransactionStatus

string · enum
Enum values:
CANCELLED
CAPTURED
CREATED
CREDITED
INITIATED
REJECTED

Current state of the transaction.

Example: CREATED

TransactionSummary

Aggregated summary of amounts on a transaction.
capturedAmount
​string · required

Captured amount, represented in the standard currency. Maximum (totalDigits: 18, fractionDigits: 5) according to ISO 20022. The integer and fractional digits are separated by a dot.

Example: 450.00
creditedAmount
​string · required

Credited amount, represented in the standard currency. Maximum (totalDigits: 18, fractionDigits: 5) according to ISO 20022. The integer and fractional digits are separated by a dot.

Example: 450.00
remainingAmountToCapture
​string · required

Remaining amount to capture, represented in the standard currency. Maximum (totalDigits: 18, fractionDigits: 5) according to ISO 20022. The integer and fractional digits are separated by a dot.

Example: 450.00
remainingAmountToCredit
​string · required

Remaining amount to credit, represented in the standard currency. Maximum (totalDigits: 18, fractionDigits: 5) according to ISO 20022. The integer and fractional digits are separated by a dot.

Example: 450.00

TransactionResponse

Payment transaction information
amount
​string · required

Amount to pay, represented in the standard currency unit. Maximum (totalDigits: 18, fractionDigits: 5) according to ISO 20022. The integer and fractional digits are separated by a dot. Deprecated and will be removed in next version of API. Use summary instead.

Example: 450.00
createdAt
​string · date-time · readOnly · required

Timestamp for when transaction was first created.

Example: 2025-09-30T22:00:00Z
currency
​string · required

3-letter currency code. (ISO 4217)

Example: NOK
Default: NOK
status
​TransactionStatus · enum · required

Current state of the transaction.

Enum values:
CANCELLED
CAPTURED
CREATED
CREDITED
INITIATED
REJECTED
Example: CREATED
transactionId
​integer · int64 · required

ID of the specific transaction.

Example: 1
cardNumber
​string

Last 4 digits in card number (PAN - Personal Account Number)

Example: 0004

Log of each successful operation made on the transaction. Failing operations will not be included.

Example: [{"amount":"450.00","distributionChannelId":"ENT:DistributionChannel:Test","operation":"CREATE","pos":"18930345","timestamp":"2025-08-24T14:15:22Z","error":{"code":"25","source":"Netaxept","message":"Transaction not found."}}]
paymentType
​PaymentType · enum

The actual type of payment.

Enum values:
AMEX
BANKAXEPT
COLLECTOR
GIFTCARD
MASTERCARD
PAYPAL
VIPPS
VISA
Example: VISA
paymentTypeGroup
​PaymentTypeGroup · enum

A PaymentTypeGroup used to override which kind of method to use for reimbursement, instead of using same as used for the payment transaction.This will only take effect if the payment method on the payment transaction allows for overriding.

Enum values:
AGENT
CASH
ECARD
GIFTCARD
INVOICE
MOBILE
PAYMENTCARD
PAYPAL
Example: CASH
paymentId
​integer · int64

ID of the payment this transaction belongs to.

Example: 42
paymentAgreementId
​integer · int64

ID of the payment agreement associated with this transaction, if any.

Example: 456
recurringPaymentId
​integer · int64

Reference to the saved payment agreement this transaction will use, if any was specified.

Example: 123
rrn
​string

Reconciliation reference number used to track a transaction through different economy systems.

Example: 000012345678

Aggregated summary of amounts on a transaction.

Example: {"capturedAmount":"450.00","creditedAmount":"450.00","remainingAmountToCapture":"0.00","remainingAmountToCredit":"0.00"}
​object

Extra transaction data from external client. Only relevant for clients using the import flow.

Example: {"extraData":"any extra data you want to add"}
updatedAt
​string · date-time · readOnly

Timestamp for when transaction was last updated.

Example: 2025-09-30T22:00:00Z

PaymentResponse

Information about an order's payment.
createdAt
​string · date-time · required

Timestamp for when payment was created.

Example: 2025-01-12T16:13:13Z
currency
​string · required

3-letter ISO 4217 currency code. Default is NOK.

Example: NOK
Default: NOK
orderId
​string · required

Id of the order this payment belongs to.

Example: HE8NDS7XY
orderVersion
​integer · int32 · required

Version of the order this payment belongs to.

Example: 1
organisationId
​integer · int64 · required

Id of the organisation who created this payment.

Example: 1
paymentId
​integer · int64 · required

Id of payment

Example: 123
totalAmount
​string · required

Amount to pay, represented in the standard currency. Maximum (totalDigits: 18, fractionDigits: 5) according to ISO 20022. The integer and fractional digits are separated by a dot. Editable: true

Example: 450.00
active
​boolean

This is to block any transactions after the corresponding order version is reset. Clients importing transactions need to either cancel or credit each transaction externally, and the credit the transaction directly using the transaction's credit endpoint. To continue using the same order id, the payment has to be reactivated with the correct total amount before any new actions can be made to this payment. Editable: true

Example: false
customerNumber
​string

ID of the customer who owns this payment.

Example: 123456789
settlementId
​integer · int64

Supplied to the client by an external system for handling settlements. For Internal Entur Clients this is Entur’s Electronic Journal.

Example: 18234
​TransactionResponse[]

List of all transactions belonging to this payment.

Example: [{"amount":"450.00","cardNumber":"0004","createdAt":"2025-01-12T16:08:03Z","currency":"NOK","operationLog":[{"amount":"450.00","distributionChannelId":"ENT:DistributionChannel:Test","operation":"CREATE","pos":"18930345","timestamp":"2025-08-24T14:15:22Z","error":{"code":"25","source":"Netaxept","message":"Transaction not found."}}],"paymentType":"VISA","paymentTypeFee":{"amount":"450.00","currency":"NOK","name":"ENT:PaymentTypeFee:Collector","reason":"Walley Invoice","taxAmount":"25.00","taxCode":"3","taxRate":"25.00"},"paymentTypeGroup":"PAYMENTCARD","recurringPaymentId":1,"rrn":"000123456123","status":"CREATED","summary":{"capturedAmount":"450.00","creditedAmount":"450.00","remainingAmountToCapture":"0.00","remainingAmountToCredit":"0.00"},"transactionData":{"extraData":"any extra data you want to add"},"transactionId":10,"updatedAt":"2025-01-12T16:13:13Z"}]
updatedAt
​string · date-time

Timestamp for when payment was last updated.

Example: 2025-01-12T16:13:13Z

PageOfPayment

Page displays a subset of a list of entities
​PaymentResponse[] · readOnly · required

Items on a specific page

totalItems
​integer · int64 · readOnly · required

Total number of items

Example: 72
totalPages
​integer · int64 · readOnly · required

Total number of pages available to browse

Example: 9

PaymentConfigurationResponse

Current payment configuration set up for psp-client relationship.
accountName
​string · required

Name describing the owner of the configuration. Usually the name of the client.

Example: Entur Test
id
​integer · int64 · required

Unique identifier of this payment configuration.

Example: 1
paymentProvider
​string · required

The payment service provider this configuration is used for. This is not necessarily a 3rd party provider. This will control the way the API is used.

Example: NETAXEPT
​object

Key/value map of merchant configuration parameters needed for each merchant. See documentation for specific merchant on which parameters are required.

Example: {"someKey":{"configParam":"configValue"}}

PaymentMethodResponse

Result from creating a PaymentMethod.
distributionChannelId
​string · required

Distribution Channels controls which organisations can sell, refund or inform on available products or salepoints.

Example: ENT:DistributionChannel:Test
id
​integer · int64 · required

Unique identifier for a payment method.

Example: 1
paymentTypeGroup
​string · required

Group for the payment type. Payment types which are payment cards is in the PAYMENTCARD group.

Example: PAYMENTCARD
clientId
​string

ID of the client this payment method belongs to. This ID is the one found in the client's token.

Example: sS7grDF79fddBFd4=

Current payment configuration set up for psp-client relationship.

Example: {"accountName":"Entur Test","id":1,"merchantConfig":{"someKey":{"configParam":"configValue"}},"paymentProvider":"NETAXEPT"}
paymentType
​string

The actual type of payment.

Example: VISA
Did you find what you were looking for?