Skip to main content

[1.66.1] - 2026-02-23

Added - ChargeBearer body parameter on payouts

On POST Create a Payout, platforms can now request to pay all SWIFT fees using the OUR value of the new ChargeBearer property (API release note):
  • Added ChargeBearer param (String) to PayOutData and CreatePayOut interfaces
  • Updated tests

Added - AuthenticationType response property on card pay-ins

The AuthenticationResult.AuthenticationType response property is now returned on card pay-ins (API release note):
  • Added the AuthenticationResult interface
  • Added AuthenticationResult param (Object containing AuthenticationType) to CardPreauthorizationData, CardValidationData, DepositData, CardWebPayInData, CardDirectPayInData, RecurringPayInData, ApplePayPayInData, GooglePayDirectPayInData interfaces
  • Updated tests

Added - TelephoneOrder body parameter on recurring card pay-ins (CIT and MIT)

To support the TelephoneOrder property on POST Create a Recurring PayIn (MIT) and POST Create a Recurring PayIn (CIT):
  • Added PaymentCategory (String) to RecurringPayInData, CreateRecurringPayInCIT, CreateRecurringPayInMIT interfaces
  • Updated tests

[1.66.0] - 2026-02-12

FX

Breaking change – Custom fees

To support percentage-based FX fees (API release note):
Caution - Breaking change
  • The CreateInstantConversion.Fees type is now CustomMoneyData instead of MoneyData, to support the new FX fees structure of Type (PERCENTAGE | FIXED) and Value
  • The CreateInstantConversion.CreditedFunds type is now MoneyDataOptionalAmount instead of MoneyData
  • Added Fees to CreateQuote
  • Added Fees, RequestedFees to QuoteData
  • Added RequestedFees to ConversionData

Added – User margin

To support the FX user margin (API release note):
  • Added UserMargin to CreateInstantConversion and CreateQuote
  • Added MarginsResponse to ConversionData and QuoteData

Echo

Breaking change - Settlement upload endpoints

To support the new behavior of the POST Create a Settlement endpoint to obtain an UploadUrl:
  • Updated settlement_sample.csv and tests
  • Added FileName and UploadUrl to SettlementData
  • Added GenerateSettlementUploadUrl interface
Caution - Breaking change
  • Replaced upload method in Settlements with generateUploadUrl:
NodeJS
 api.Settlements.generateUploadUrl({FileName: "settlement_sample.csv"})
Caution - Breaking change
  • Replaced update method in Settlements with: generateNewUploadUrl
NodeJS
  api.Settlements.generateNewUploadUrl(settlement.SettlementId, {FileName: "settlement_sample_updated.csv"})

Added - GET validations for a Settlement endpoint

To support the GET View validations for a Settlement endpoint:
  • Added SettlementValidation, SettlementValidationFooter, SettlementValidationLine interfaces
  • Added getValidations method to Settlements
NodeJS
 api.Settlements.getValidations(settlement.SettlementId)

Added - PUT Cancel a Settlement endpoint

To support the PUT Cancel a Settlement endpoint:
  • Added cancel method to Settlements
NodeJS
api.Settlements.cancel(settlement.SettlementId)

Added – Intent unfunded amounts and source wallet

  • Added SplitOriginWalletId to PayInIntentLineItem, PayInIntentSplitData, CreatePayIntentSplit
  • Added UnfundedSellerAmount to PayInIntentLineItem
  • Added UnfundedAmount to PayInIntentData, CreatePayInIntentAuthorization

Added – POST Create an Intent Refund

To support POST Create an Intent Refund:
  • Added Refund and Capture to PayInIntentData
  • Added createPayInIntentRefund method to Payins
NodeJS
 api.PayIns.createPayInIntentRefund(intent.Id, refundDto)

Added – POST Reverse an Intent Refund

To support POST Reverse an Intent Refund:
  • Added reversePayInIntentRefund method to Payins
NodeJS
api.PayIns.reversePayInIntentRefund(intent.Id, intent.Refund.Id, reverseDto)

Added – POST Create an Intent Dispute

To support POST Create an Intent Dispute:
  • Added Dispute to PayInIntent
  • Added createPayInIntentDispute method to PayInApi
NodeJS
api.PayIns.createPayInIntentDispute(intent.Id, intent.Capture.Id, disputeDto)

Added - PUT Update an Intent Dispute

To support PUT Update an Intent Dispute:
  • Added Decision to PayInIntent
  • Added UpdatePayInIntentDisputeOutcome interface
  • Added updatePayInIntentDisputeOutcome method to PayIns
NodeJS
api.PayIns.updatePayInIntentDisputeOutcome(intent.Id, intent.Capture.Id, intent.Dispute.Id, dto)

[1.65.0] - 2026-01-30

Added

Support for new SCA status endpoint

The SDK now supports the new GET View the SCA status of a User endpoint. Added new method in lib/services/Users.js:
    /**
    * Get SCA status
    * @param {number}  userId  User identifier
    * @param {Function} callback    Callback function
    * @param {Object} options    Request options
    * @return {Object}        Request promise
    */
   getScaStatus: function(userId, callback, options) {
       options = this._api._getOptions(callback,
           options,
           {
               path: {
                   id: userId
               }
           });


       return this._api.method('users_get_sca_status', callback, options);
   }
Added lib/models/ScaStatus.js:
module.exports = EntityBase.extend({
   defaults: {
       UserStatus: null,
       IsEnrolled: null,
       LastEnrollmentDate: null,
       LastConsentCollectionDate: null,
       ConsentScope: null
   }
});
Updated test/services/Users.js:
    describe('Get Sca status', function() {
        const activeUserId = "user_m_01JKZW095BFB2TRQMCZ8GE7M8D";
        var scaStatus;

        before(function(done){
            api.Users.getScaStatus(activeUserId, function (data, response) {
                scaStatus = data;
                done();
            });
        });

        it('John should be the same', function(){
            expect(scaStatus).to.not.be.undefined;
            expect(scaStatus.IsEnrolled).to.be.true;
            expect(scaStatus.LastEnrollmentDate).to.not.be.undefined;
            expect(scaStatus.ConsentScope.ContactInformationUpdate).to.not.be.undefined;
        });
    });
Added corresponding typings in typings/models/user.d.ts:
interface ScaStatus {
       UserStatus: string;
       IsEnrolled: boolean;
       LastEnrollmentDate?: Timestamp;
       LastConsentCollectionDate?: Timestamp;
       ConsentScope?: ConsentScope;
   }


   interface ConsentScope {
       ContactInformationUpdate?: string;
       RecipientRegistration?: string;
       Transfer?: string;
       ViewAccountInformation?: string;
   }
Added corresponding typing in typings/services/Users.d.ts:
   /**
    * Get SCA status
    * @param {string} userId User identifier
    * @param {Function} callback Callback function
    * @param {Object} options Request options
    * @return {Object} Request promise
    */
   getScaStatus: MethodOverload<string, user.ScaStatus>

RecipientId property on payouts

New RecipientId property added to payOut.d.ts.

New event types

Added new event types to typings/models/event.d.ts:
    type EventType =
        | "SCA_CONTACT_INFORMATION_UPDATE_CONSENT_GIVEN"
        | "SCA_CONTACT_INFORMATION_UPDATE_CONSENT_REVOKED"
        | "SCA_TRANSFER_CONSENT_GIVEN"
        | "SCA_TRANSFER_CONSENT_REVOKED"
        | "SCA_RECIPIENT_REGISTRATION_CONSENT_GIVEN"
        | "SCA_RECIPIENT_REGISTRATION_CONSENT_REVOKED"
        | "SCA_VIEW_ACCOUNT_INFORMATION_CONSENT_GIVEN"
        | "SCA_VIEW_ACCOUNT_INFORMATION_CONSENT_REVOKED"
        | "SCA_EMAIL_VERIFIED"
        | "SCA_PHONE_NUMBER_VERIFIED"

[1.64.0] - 2025-11-26

Changed

  • changed naming convention to mangopay4

[1.62.2] - 2025-11-25

Added

[1.62.1] - 2025-10-31

Fixed

  • Upgraded form-data library version
  • Upgraded axios library version

[1.62.0] - 2025-10-27

Added

  • New POST Manage proxy consent for a User endpoint to obtain and manage user consent via the hosted SCA experience (if proxy is activated). A proxy and user consent are now required to use the USER_NOT_PRESENT value for ScaContext (API release note)
  • ScaContext request parameter newly added on all user POST and PUT endpoints, enabling the platform to request these actions with USER_NOT_PRESENT – provided the proxy is in place, activated, and the user has given consent (API release note)
  • Support for the Licensor property on GET View a Client

Changed

  • x-tenant-id deprecated as no longer necessary for UK platforms; the parameter is ignored by Mangopay

[1.61.0] - 2025-10-01

Added

[1.60.4] - 2025-09-26

Improved

  • Method for building the OAuth token URL, fixing a potential issue introduced in 1.42.1

[1.60.3] - 2025-09-23

Added

  • Support for ProfilingAttemptReference on all payment methods for Mangopay’s Fraud Prevention solution
  • Webhook event types for Echo, Mangopay’s solution for third-party PSP integrations: INTENT_AUTHORIZED,INTENT_CAPTURED,INTENT_REFUNDED,INTENT_REFUND_REVERSED,INTENT_DISPUTE_CREATED,INTENT_DISPUTE_DEFENDED,INTENT_DISPUTE_WON,INTENT_DISPUTE_LOST,INTENT_SETTLED_NOT_PAID,INTENT_PAID,SPLIT_CREATED,SPLIT_PENDING_FUNDS_RECEPTION,SPLIT_AVAILABLE,SPLIT_REJECTED,SPLIT_REVERSED
  • Support for VirtualAccountPurpose on Banking Alias object

Improved

  • Added missing OptionsHelper in TypeScript
  • Add new library for unit tests

[1.60.2] - 2025-09-02

Added

  • XK to country ISO values

Fixed

  • Typescript function definition
  • Typings for BankingAliases.getAll
  • Missing CreationDate with toJSON()
  • Missing fields in CreateTransferRefund
  • Missing getBlockStatus definition
  • Tests

[1.60.1] - 2025-08-14

Added

[1.60.0] - 2025-08-07

Added

Support for new Splits endpoints for Echo (API release note): New ReportTypes for Echo (API release note):
  • ECHO_INTENT
  • ECHO_INTENT_ACTION
  • ECHO_SETTLEMENT
  • ECHO_SPLIT

[1.59.1] - 2025-07-28

Added

[1.59.0] - 2025-07-18

Added

Endpoints for Mangopay Echo, a solution for platforms working with another third-party PSP for funds acquisition (including via the Mirakl Connector):

[1.58.0] - 2025-07-03

Added

  • New endpoint POST Create a Bizum PayIn
  • New webhook event types for SCA enrollment (API release note), note that these are triggered on enrollment not authentication:
    • SCA_ENROLLMENT_SUCCEEDED
    • SCA_ENROLLMENT_FAILED
    • SCA_ENROLLMENT_EXPIRED
  • New webhook event types for UserCategory change (API release note):
    • USER_CATEGORY_UPDATED_TO_OWNER
    • USER_CATEGORY_UPDATED_TO_PAYER
    • USER_CATEGORY_UPDATED_TO_PLATFORM
  • Support for PLATFORM value to UserCategory enum

[1.57.1] - 2025-06-17

Added

[1.57.0] - 2025-06-10

Added

Endpoints for new Reporting Service feature: Webhook event types for new Reporting Service:
  • REPORT_GENERATED
  • REPORT_FAILED
Support for GET List Disputes for a PayIn endpoint.

[1.56.1] - 2025-06-06

Added

Fixed

  • Status enum value on Identity Verification object changed from OUTDATED to OUT_OF_DATE