Skip to main content

[3.50.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 PayOutPaymentDetailsBankWire class
  • 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 class
  • Added AuthenticationResult param (Object containing AuthenticationType) to CardPreAuthorization, CardValidation, Deposit, PayIn classes
  • 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 RecurringPayInCIT and RecurringPayInMIT classes
  • Updated tests

[3.50.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 CustomFees instead of Money
  • The ConversionQuote.Fees type is now CustomFees instead of Money
  • Added RequestedFees to ConversionQuote
  • Added RequestedFees to Conversion

Added – User margin

To support the FX user margin (API release note):
  • Added UserMargin to CreateInstantConversion, ConversionQuote
  • Added MarginsResponse to Conversion, ConversionQuote

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 Settlement
Caution - Breaking change
  • Replaced upload method in ApiSettlements with GenerateUploadUrl:
PHP
 $settlement = new Settlement();
 $settlement->FileName = 'settlement_sample.csv';
 result = $this->_api->Settlements->GenerateUploadUrl($settlement);
Caution - Breaking change
  • Replaced update method in ApiSettlements with: GenerateNewUploadUrl
PHP
$dto = new Settlement();
$dto->FileName = 'updated_settlement_sample.csv';
$dto->Id = $settlement->SettlementId;
$result = $this->_api->Settlements->GenerateNewUploadUrl($dto);

Added - GET validations for a Settlement endpoint

To support the GET View validations for a Settlement endpoint:
  • Added SettlementValidation, SettlementValidationFooter, SettlementValidationLine classes
  • Added GetValidations method to ApiSettlements
PHP
_api->Settlements->GetValidations($settlement->SettlementId, $pagination);

Added - PUT Cancel a Settlement endpoint

To support the PUT Cancel a Settlement endpoint:
  • Added Cancel method to ApiSettlements
PHP
_api->Settlements->Cancel($settlement->SettlementId);

Added – Intent unfunded amounts and source wallet

  • Added SplitOriginWalletId to PayInIntentLineItem and PayInIntentSplit
  • Added UnfundedSellerAmount to PayInIntentLineItem
  • Added UnfundedAmount to PayInIntent

Added – POST Create an Intent Refund

To support POST Create an Intent Refund:
  • Added Refund and Capture to PayInIntent
  • Added CreatePayInIntentRefund method to ApiPayIns
PHP
_api->PayIns->CreatePayInIntentRefund($intent->Id, $refundDto);

Added – POST Reverse an Intent Refund

To support POST Reverse an Intent Refund:
  • Added ReversePayInIntentRefund method to ApiPayIns
PHP
_api->PayIns->ReversePayInIntentRefund($intent->Id, $intent->Refund->Id, $reverseRefundDto);

Added – POST Create an Intent Dispute

To support POST Create an Intent Dispute:
  • Added Dispute to PayInIntent
  • Added CreatePayInIntentDispute method to ApiPayIns
PHP
_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 method to ApiPayIns
PHP
$outcomeDto = new PayInIntent();
$outcomeDto->Decision = "DEFENDED";
_api->PayIns->UpdatePayInIntentDisputeOutcome($intent->Id, $intent->Capture->Id, $intent->Dispute->Id, $outcomeDto);

Fixed - VirtualAccountCapabilities

  • Fixed LocalPayInAvailable and InternationalPayInAvailable in VirtualAccountCapabilities class

[3.49.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: GitHub PR #766.

RecipientId property on payouts

The SDK now supports the RecipientId property on payouts: GitHub PR #759.

New event types

New event type values added: GitHub PR #765.

[3.48.0] - 2025-11-28

Changed

  • Migrated to V4 naming convention

[3.47.1] - 2025-11-25

Added

[3.47.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

[3.46.0] - 2025-10-01

Added

[3.45.2] - 2025-09-23

Added

  • Support for ProfilingAttemptReference on all payment methods for Mangopay’s Fraud Prevention solution #743
  • 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

[3.45.1] - 2025-09-03

Added

  • Support for Fees on ConversionQuote

Improved

  • OAuth token refresh buffer before expiry updated to 30s
  • Curl verification of SSL certificate
  • PHP 8.2 compatibility

Fixed

  • Tests

[3.45.0] - 2025-08-14

Changed

  • Type casting to deserialize arrays in GetSchema
⚠️Caution – Potentially breaking The new GetSchema typings may result in a breaking change if your integration relies on the stdClass returned previously.
  • Made PendingUserAction nullable

Added

[3.44.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

[3.43.1] - 2025-07-28

Added

[3.43.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):

[3.42.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
  • Support for GET List Transactions for a Card Fingerprint

[3.41.1] - 2025-06-12

Added

Fixed

  • On POST Enroll a User, PendingUserAction cast to MangoPayPendingUserAction instead of stdClass

[3.41.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.

[3.40.1] - 2025-06-06

Added

  • Support for RecipientScope query parameter on GET List Recipients for a User
  • Support for missing webhook event types (recurring registration, deposit preauth, etc)

Fixed

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