Upgrading from V1


Below are key changes and things to keep in mind when upgrading from v1 to v2 of our API. These changes include modifications to request and response headers, data formats, and message structures, as well as the removal of certain endpoints and fields. Familiarizing yourself with the points below will ensure a smooth transition/upgrade.

Already on v2? Refer to changelog for individual changes between each version.

Changelog v1 => v2 link

  • Plain HTTP instead of HTTPS
  • New (mandatory) header added to all requests: Authorization
  • New (mandatory) header added to all responses: Server-Authorization
  • Amounts must now be specified as integers in the lowest unit of the currency (using exponent 0). For example, 100,50 SEK must be specified as 10050.
  • VAT amount is no longer supported
  • customData may now only contain alpha numeric characters. Max length of keys is 16 characters, max length of values is 32 characters, and max number of key-value-pairs is 5
  • currencyCode and currencySymbol is now string instead of string enum.
  • All timestamps are now using ISO 8601 format, e.g. 2024-03-15T13:45:30.123+02:00
    • Authentication hash uses Coordinated Universal Time (UTC) with a zero hour offset. e.g. 2024-03-15T13:45:30.123Z
  • Changed authorizationMethod from object to string enum
  • Changed authorizationResponder from object to string enum
  • Changed entryMode from object to string enum
  • Changed verificationMethod from object to string enum
  • Removed acquirerId from Merchant object
    Removed Messages/endpoints:
    • CashAdvance (synchronous and asynchronous)
  • Changed Messages:
    • Payment request:
      • Removed amounts.vat
    • Payment response:
      • Removed amounts.surcharge
      • Removed amounts.vat
      • Removed encryptedInformation
      • Removed internalKernelStatus
      • Removed terminalResponse
      • Removed unmaskedPan
      • Renamed spdhResponseCode to actionCode
    • Refund response:
      • Removed encryptedInformation
      • Removed internalKernelStatus
      • Removed terminalResponse
      • Renamed spdhResponseCode to actionCode
    • Capture response:
      • Removed cardTotals.payments.amounts.surcharge
      • Removed cardTotals.payments.amounts.vat
      • Removed internalKernelStatus
      • Removed terminalResponse
      • Renamed spdhResponseCode to actionCode
    • Reversal response:
      • Removed receiptNumber
      • Removed spdhResponseCode
      • Removed transactionId
    • Print response
      • Removed terminalResponse
      • Added printResult