Changes to the Paytrim API, newest first. Additive changes — a new endpoint or a new
field in a response — are made without notice, so build your integration to ignore
fields it does not recognise. Anything that would break an existing integration is
communicated to you in advance.
2026-10-23
Consistent company id validation across all endpoints.
Every endpoint that takes a company id in the path, including
company-registry-information, signatory-combinations,
merchant-information, the store endpoints and contact-info,
validates the id against your country (SE, FI, NO or DK) and answers 400 with a
problem-details body if it is not valid. Separators are optional, so
556057-2850 and 5560572850 are both accepted.
Sandbox Transactions answer 404 for unknown companies.account-transaction and card-transaction answer 404
"Company does not exist" for a valid id that is not a sandbox company.
2026-10-21
The authentication examples now use the correct scope. The
examples previously showed https://graph.microsoft.com/.default, which
issues a token for Microsoft Graph that the Paytrim API does not accept. Use the
scope Paytrim provides together with your client credentials. The Java, Kotlin and
C# examples now also URL-encode the request, so client secrets containing characters
such as + or = work.
The authentication page now covers token reuse and troubleshooting.
It explains how long to reuse a token and lists the most common token errors with
what to do about each.
2026-10-15
Service fees can now be a percentage of each business day's turnover.
The service fees returned for a legal entity have two new fields.
feeCalculationType is Fixed or Percentage.
For a Percentage fee, percentage holds the rate in percent
with two decimals (2.5 means 2.5 %), amount is
0 and feePeriod is Daily. For a
Fixed fee, percentage is null and
amount is the fee as before. If your client deserializes
feeCalculationType into a strict enum, accept both values.
Service fees can now have four new fee types.feeType on
the service fees returned for a legal entity can now also be Insurance,
TerminalAccessories, Franchise or OtherHardware,
in addition to MinimumFeeWithdrawn, TerminalFee,
CashRegisterFee and Other. Nothing else about the response
has changed. If your client deserializes feeType into a strict enum, add
the new values so that fees of these types do not fail to parse.
2026-09-08
Card transactions now return paymentAccountReference.
The PAR identifies the underlying account behind a card, so transactions made with
different tokens of the same card can be tied together. It is nullable — not
every transaction carries one.
Merchant onboarding is documented end to end, and the sandbox now mirrors
it. The reference walks the full sequence from company lookup to an
active merchant. The sandbox answers from a fixed set of companies per market that
behave like the real thing — including the failure cases — so you can
build the whole flow before touching production. The new
GET Sandbox/Merchant/sandbox-cases lists every company available to
you and what each endpoint answers for it.
The mTouch endpoints have been removed. They were never taken
into use, so no live integration is affected.
Looking for the endpoints?
The full reference lists every endpoint, its parameters and its responses.