Changelog
April 2025
April 22, 2025 - Added more customer data to /cit and /payout
Merchants can now provide more customer data to improve 3DS approval rates. Visa now requires all payouts to include the cardholder birthdate, so this property is highly recommended going forward.
February 2025
February 24, 2025 - Added Optional retryUrl
Session Option
Merchants can now provide an optional retryUrl
during session initialization. If a transaction attempt fails, the cardholder will be redirected to the retryUrl
if specified.
This allows merchants to distinguish between transaction failures with and without remaining retry attempts on the payment session.
When redirected, the ePayCode
query parameter will be added to the URL. Currently, the only supported code is RETRY
, which should trigger a "Transaction failed, please try again." message for the cardholder.
February 24, 2025 - Added Support for Voiding the Full Remaining Amount
Merchants can now send -1
as the amount to the void endpoint to void the entire remaining balance.
February 24, 2025 - Added Support for Surcharge (Transaction Fees)
Merchants can now enable transaction fees in the ePay backoffice. Once enabled, ePay automatically calculates and applies the configured fees. The transaction.amount
field will reflect the total amount, including the fee.
The fee
field has been added to the transaction
resource.
February 11, 2025 - Removed Requirement to Send Capture Operation ID for Refunds
Merchants no longer need to provide the capture operation ID when processing refunds. ePay will now automatically locate the relevant captures to refund.
February 3, 2025 - Added Support for Attributes on MIT Transactions
Merchants can now send and receive transaction-specific attributes on MIT transactions.
February 2, 2025 - Added Support for Different Initial and Recurring Amounts in Subscriptions
Merchants can now specify a subscription.amount
field when initializing a subscription or updating the payment method of an existing subscription.
This enhancement improves in-app communication for payment methods like Vipps MobilePay and allows merchants to switch an existing subscription’s payment method to Vipps MobilePay, which requires subscription.amount
when transaction.amount
is 0
.
Additionally, merchants can now update all parameters of an existing subscription.
Breaking Change: The subscriptionId
field has been moved to subscription.id
.
January 2025
January 31, 2025 - Added ePay Payment Window v1
Merchants who prefer not to integrate ePay hosted fields directly can now use the ePay Payment Window.
The Payment Window is a highly customizable solution designed for a simple and fast integration. Merchants using it will automatically receive new features and payment methods without needing to update their integration.
To use the Payment Window, redirect customers to the paymentWindowUrl
returned during payment session initialization.
January 31, 2025 - Added Nets / Swedbank / Evry Acquirer Support
Merchants can now process payments using acquirer agreements from Nets, Swedbank, and Evry through our new Nets integration. To route payments to these acquirers, merchants can specify nets
as the processor.
January 31, 2025 - Added Apple Pay Support
Merchants can now accept payments with Apple Pay.
To integrate Apple Pay, make the following changes to your implementation:
// Add Apple JS SDK
<script src="https://applepay.cdn-apple.com/jsapi/1.latest/apple-pay-sdk.js"></script>
// Added ApplePay button
<apple-pay-button
buttonstyle="black"
type="buy"
onclick="epay.createApplePayTransaction()"
></apple-pay-button>
January 27, 2025 - Added Acquirer Info to Success/Failure Webhooks
Merchants now receive information about the acquirer agreement used for transactions in success and failure webhooks.
January 21, 2025 - Hosted Field Styling Redesign
Merchants now have access to enhanced styling options for hosted fields, along with a redesigned interface featuring helpful icons within input fields.
See the new styling options here.
January 9, 2025 - Added Additional SCA Data to Webhooks
Merchants now receive additional data about the SCA status of payments. Webhooks include details on rejection, SCA type (3DS or Delegated), and the level of verification (Challenged vs. Frictionless).
See the webhook definition for more info here.
January 8, 2025 - Added Support for URL Templating
Merchants can now use template variables in URLs to define dynamic webhook and redirect URLs across all APIs. For more details, see docs.
This feature simplifies workflows for merchants, particularly for success and failure URLs, by making it easier to retrieve order information upon transaction completion.
December 2024
December 16, 2024 - Added Support for Updating Payment Methods on Existing Subscriptions
Merchants can now enable customers to update their payment method or card details for active subscriptions while retaining the same subscription ID. This ensures the entire subscription payment history remains under a single subscription.
To enable this functionality, merchants must include the new subscriptionId
property during session initialization. Note that subscriptionId
is mutually exclusive with the existing subscription
property; both cannot be used simultaneously.
December 23, 2024 - Added Support for Dynamic Payment Amounts
Dynamic payment amounts can now be enabled by setting dynamicAmount: true
during payment session initialization. This feature allows merchants offering top-up payments to let customers adjust the payment amount dynamically.
Note: Most merchants are advised against using dynamic amounts due to increased integration complexity. This requires server-side verification of the selected amount during the pre-authorization webhook. For simplicity, most merchants should have customers select the payment amount before initializing the payment session at ePay.
December 10, 2024 - Removed paymentMethod
Object from Transaction Webhooks
The paymentMethod
object has been removed from transaction webhooks, as this data is now directly available in the transaction
resource.
December 10, 2024 - Added errorCode
Field to the transaction
Resource
The transaction
resource now includes an errorCode
field, allowing merchants to identify the specific error code responsible for a transaction declining and transitioning to the FAILED
state.
Note: Errors from operations like capture, refund, or void are stored in the operation resource and are not reflected in the transaction resource unless they caused the transaction to fail.
December 9, 2024 - Added Payment Method Data to the transaction
Resource
The fields paymentMethodType
, paymentMethodSubType
, paymentMethodExpiry
, and paymentMethodDisplayText
have been added to the transaction
resource.
These fields provide the same information as the paymentMethod
resource but remain static to the transaction. They will not be updated if a lifecycle event occurs on a payment token.
Merchant integrations should prefer using these fields going forward.
December 5, 2024 - Added Expiry Date to Subscriptions
An optional subscription.expiryDate
field has been added to the API, allowing merchants to specify when a subscription will expire.
Note: ePay does not enforce this date or reject transactions created after it.
This field is utilized during 3DS and may impact conversion rates.
December 2, 2024 - Documentation Update: Extended info about point of sales and Vipps-MobilePay
- Improved the documentation about Vipps-MobilePay to include a section about test transactions.
- Added an info box explaining the usage of advanced point-of-sale settings for initialization of CIT payment sessions.
November 2024
November 28, 2024 - Documentation Update: Field Removal
The processingAction
field has been removed from the transaction resource documentation, as it is not part of the API protocol.
Deprecation Notice: hostedConfigurationId
The hostedConfigurationId
field has been deprecated from the CIT session initialization endpoint and response.
This field was unused by merchants and has been replaced by advanced point-of-sale settings configurable in the back office.
November 27, 2024 - Typo Fix for VippsMobilePay
Corrected a typo in the documentation, updating "MobilePay Vipps" to "Vipps Mobilepay".
See: Add a payment button
November 27, 2024 - Card Data Enhancement
We've added card funding type (credit, debit, prepaid) and segment (consumer, business) to the card data. This helps merchants conduct more advanced risk analysis before fulfilling orders.
November 26, 2024 - JavaScript Events Update
We've expanded our list of JavaScript events, giving merchants more options to customize and enhance the checkout experience.
See the updated list at: JavaScript events
November 25, 2024 - Hosted fields changed from 3 frames to a single unified frame.
We've redesigned our hosted fields to replace the three separate input frames with a single, unified frame. This change enhances customization to better match your brand and improves compatibility across a wider range of devices.