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 Checkout v1β
Merchants who prefer not to integrate ePay Blocks directly can now use the ePay Checkout.
The Checkout 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 Checkout, 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 Blocks, 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 - Blocks changed from 3 frames to a single unified frame.β
We've redesigned our Blocks 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.