> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.mangopay.com/release-notes/sdk/net/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.mangopay.com/_mcp/server. # .NET SDK **Package:** [mangopay4-net-sdk](https://www.nuget.org/packages/mangopay4-net-sdk) --- ## 4.1.0 - Oct 1, 2026 #### [4.1.0 - Oct 1, 2026](/release-notes/sdk/net/4-1-0) Added * Extended Preauthorization feature to rename Deposit Preauthorization * Extended Preauthorization event types * `ProfilingAttemptReference` on users * Settlement event types Deprecated * Deposit Preauthorization feature deprecated Changed * Regex timeouts Fixed * Event type deserialization breaking pagination ## 4.0.0 - Sep 2, 2026 #### [4.0.0 - Sep 2, 2026](/release-notes/sdk/net/4-0-0) Breaking change * Target frameworks updated to .NET 6.0 and .NET 8.0 Changed * Dependency updates ## 3.46.0 - Sep 1, 2026 #### [3.46.0 - Sep 1, 2026](/release-notes/sdk/net/3-46-0) Added * `KycInformation` containing `KycRenewalDeadline` on user block status * Account funding on card direct pay-ins * Get PayPal data collection ## 3.45.0 - Aug 18, 2026 #### [3.45.0 - Aug 18, 2026](/release-notes/sdk/net/3-45-0) Added * Support for multi-session PSC flow on hosted KYB for Business * Identity verification event types * GET List Intent external providers * `Tag` on intents and splits * Idempotency error details for failed calls ## 3.44.0 - Jul 14, 2026 #### [3.44.0 - Jul 14, 2026](/release-notes/sdk/net/3-44-0) Fixed * Echo Settlement validation errors response mapping Deprecated * Non-SCA user methods and models * Deposit preauthorized pay-in complement methods ## 3.43.0 - Jun 24, 2026 #### [3.43.0 - Jun 24, 2026](/release-notes/sdk/net/3-43-0) Added * `FlowDescriptor` for declaring pay-in `Beneficiaries` * Support for `Email` on webhooks Changed * Support for `ReportPostDTO.DateRangeBy` on reports ## 3.42.0 - May 21, 2026 #### [3.42.0 - May 21, 2026](/release-notes/sdk/net/3-42-0) Added * Apple Pay and Google Pay recurring pay-ins * Newly named recurring pay-in registration methods for cards * PayPal deposit preauthorizations * Deposit preauthorization types and methods with cleaner names * `DateFilterBy` on `ReportPostDTO` * Local Virtual Account properties for DK, AU, LI Deprecated * Card-prefixed recurring registration methods * Card-prefixed deposit preauthorization methods Changed * `CurrentState` moved to `RecurringPayInRegistrationDTO` * `MethodKey` renamed ## 3.41.0 - Mar 30, 2026 #### [3.41.0 - Mar 30, 2026](/release-notes/sdk/net/3-41-0) Breaking change * Idempotency resource mapping overhaul * Payconiq PayIn removed following discontinuation Added * Klarna discount property on line items --- ## 3.40.0 - Mar 23, 2026 ### Added #### Support for mTLS authentication To support mTLS authentication for [SCA on platforms](/guides/sca/platform), which is required for platforms taking [SCA-triggering action under proxy](/guides/sca/proxy-management): * Added `ClientCertificate`, `ClientCertificateString`, `ClientCertificatePassword` to `Configuration.cs` * Added `GetEffectiveCertificate()` method to `Configuration.cs` which returns an instance of `X509Certificate2` based on the provided configuration * Updated the `RestSharpDto()` method in `RestTool.cs` to take account for the certificate * Moved global `private readonly RestClientOptions _options;` to a local variable inside the `RestSharpDto()` method * Updated the `GetInstance()` to include the certificate param (optional) * Updated `README.md` file with details on [how to configure mTLS for the SDK](/guides/sca/platform#4-integrate-mtls-in-the-sdk) **Note:** The SDK requires **TLS 1.2+** for TLS compliance, even for non-mTLS connections, in line with [Mangopay's security guidelines](/security#2-a-tls-and-https). ## 3.39.1 - Feb 23, 2026 ### Added #### ChargeBearer body parameter on payouts On [POST Create a Payout](/api-reference/payouts/create-payout), platforms can now request to pay all SWIFT fees using the `OUR` value of the new `ChargeBearer` property ([API release note](/release-notes/api/2026-02-16)): * Added `ChargeBearer` param (String) to `PayOutDTO` and `PayOutBankWirePostDTO` classes * 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](/release-notes/api/2026-02-23)): * Added the `AuthenticationResult` class * Added `AuthenticationResult` param (Object containing AuthenticationType) to `CardPreAuthorizationDTO`, `CardValidationDTO`, `DepositDTO`, `ApplePayDirectPayInDTO`, `GooglePayDirectPayInDTO`, `PayInCardDirectDTO`, `PayInCardWebDTO`, `PayInGooglePayDirectDTO`, `RecurringPayInDTO` 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](/api-reference/recurring-card-payins/create-recurring-card-payin) (both CIT and MIT payloads): * Added `PaymentCategory` (String) to `RecurringPayInCITPostDTO`, `RecurringPayInMITPostDTO`, `RecurringPayInDTO` classes * Updated tests ## 3.39.0 - Feb 12, 2026 ### FX ### Breaking change #### Custom fees To support percentage-based FX fees ([API release note](/release-notes/api/2026-02-11)): > **Warning** > > **Caution - Breaking change** > > * The `InstantConversionPostDTO.Fees` type is now `CustomFees` instead of `Money` * Added `Fees` to `ConversionQuotePostDTO` * Added `Fees, RequestedFees` to `ConversionQuoteDTO` * Added `RequestedFees` to `ConversionDTO` ### Added #### User margin To support the FX user margin ([API release note](/release-notes/api/2026-02-11)): * Added `UserMargin` to `ConversionQuotePostDTO`, `InstantConversionPostDTO` * Added `MarginsResponse` to `ConversionDTO`, `ConversionQuoteDTO` ### Echo ### Breaking change #### Settlement upload endpoints To support the new behavior of the [POST Create a Settlement](/api-reference/settlements/create-settlement) endpoint to obtain an `UploadUrl`: * Updated `settlement_sample.csv` and tests > **Warning** > > **Caution - Breaking change** > > * Replaced `upload` method in `ApiSettlements` with `GenerateUploadUrl`: > > ```c# .NET > var dto = new GenerateSettlementUploadUrlPostDTO { FileName = "settlement_sample.csv" }; > await Api.ApiSettlements.GenerateUploadUrl(dto); > ``` > **Warning** > > **Caution - Breaking change** > > * Replaced `update` method in `ApiSettlements` with: `GenerateNewUploadUrl` > > ```c# .NET > var dto = new GenerateSettlementUploadUrlPutDTO { FileName = "settlement_sample_new.csv" }; > await Api.ApiSettlements.GenerateNewUploadUrl(dto, settlement.SettlementId); > ``` * Added `FileName` and `UploadUrl` to `IntentSettlementDTO` * Added `GenerateSettlementUploadUrlPostDTO` class * Added `GenerateSettlementUploadUrlPutDTO` class ### Added #### GET validations for a Settlement endpoint To support the [GET View validation errors for a Settlement](/api-reference/settlements/view-settlement-validations) endpoint: * Added `SettlementValidationDTO, SettlementValidationFooterDTO`, `SettlementValidationLineDTO` classes * Added `GetValidations` method to `ApiSettlements` **`.NET`** ```c# .NET await Api.ApiSettlements.GetValidations(settlement.SettlementId); ``` #### PUT Cancel a Settlement endpoint To support the [PUT Cancel a Settlement](/api-reference/settlements/cancel-settlement) endpoint: * Added `Cancel` method to `ApiSettlements` **`.NET`** ```c# .NET await Api.ApiSettlements.Cancel(settlement.SettlementId); ``` #### Intent unfunded amounts and source wallet * Added `SplitOriginWalletId` to `PayInIntentLineItem` and `PayInIntentSplitPostDTO` * Added `UnfundedSellerAmount` to `PayInIntentLineItem` * Added `UnfundedAmount` to `PayInIntentDTO`, `PayInIntentAuthorizationPostDTO` #### POST Create an Intent Refund To support [POST Create an Intent Refund](/api-reference/intents/create-intent-refund): * Added `PayInIntentRefund` and `PayInIntentCapture` to `PayInIntentDTO` * Added `CreatePayInIntentPartialRefundAsync`, `CreatePayInIntentFullRefundAsync` methods to `ApiPayIns` * Added `PayInIntentPartialRefundPostDTO`, `PayInIntentFullRefundPostDTO` classes **`.NET`** ```c# .NET await Api.PayIns.CreatePayInIntentPartialRefundAsync(dto, intent.Id); await Api.PayIns.CreatePayInIntentFullRefundAsync(dto, intent.Id); ``` #### POST Reverse an Intent Refund To support [POST Reverse an Intent Refund](/api-reference/intents/create-intent-refund): * Added `FullReversePayInIntentRefundPostDTO`, `PartialReversePayInIntentRefundPostDTO` classes * Added `FullReversePayInIntentRefundAsync`, `PartialReversePayInIntentRefundAsync` methods to `ApiPayIns` **`.NET`** ```c# .NET await Api.PayIns.PartialReversePayInIntentRefundAsync(dto, intent.Id, intent.Refund.Id); await Api.PayIns.FullReversePayInIntentRefundAsync(dto, intent.Id, intent.Refund.Id); ``` #### POST Create an Intent Dispute To support [POST Create an Intent Dispute](/api-reference/intents/create-intent-refund): * Added `PayInIntentDispute` to `PayInIntentDTO` * Added `PayInIntentPartialDisputePostDTO`, `PayInIntentFullDisputePostDTO` classes * Added `CreateFullPayInIntentDisputeAsync`, `CreatePartialPayInIntentDisputeAsync` methods to `ApiPayIns` **`.NET`** ```c# .NET await Api.PayIns.CreateFullPayInIntentDisputeAsync(dto, intent.Id, intent.Capture.Id); await Api.PayIns.CreatePartialPayInIntentDisputeAsync(dto, intent.Id, intent.Capture.Id); ``` #### PUT Update an Intent Dispute To support [PUT Update an Intent Dispute](/api-reference/intents/create-intent-dispute): * Added `Decision` to `PayInIntentDTO` * Added `DisputeOutcomePutDTO` class * Added `UpdatePayInIntentDisputeOutcomeAsync` method to `ApiPayIns` **`.NET`** ```c# .NET await Api.PayIns.UpdatePayInIntentDisputeOutcomeAsync(putDto, intent.Id, intent.Capture.Id, intent.Dispute.Id); ``` ## 3.38.0 - Jan 30, 2026 ### Added #### Support for new SCA status endpoint The SDK now supports the new [GET View the SCA status of a User](/api-reference/users/view-user-sca-status) endpoint. Added MangoPay.SDK/Entities/GET/ConsentScopeDTO.cs: ```csharp public class ConsentScopeDTO { public string ContactInformationUpdate { get; set; } public string RecipientRegistration { get; set; } public string Transfer { get; set; } public string ViewAccountInformation { get; set; } } ``` Added MangoPay.SDK/Entities/GET/ScaStatusDTO.cs: ```csharp public class ScaStatusDTO : EntityBase { public string UserStatus { get; set; } public bool IsEnrolled { get; set; } [JsonConverter(typeof(UnixDateTimeConverter))] public DateTime? LastEnrollmentDate { get; set; } [JsonConverter(typeof(UnixDateTimeConverter))] public DateTime? LastConsentCollectionDate { get; set; } public ConsentScopeDTO ConsentScope { get; set; } } ``` Added new method in MangoPay.SDK/Core/APIs/ApiUsers.cs: ```csharp /// /// Get SCA status /// /// User identifier /// ScaStatusDTO instance public async Task GetScaStatusAsync(string userId) { return await this.GetObjectAsync(MethodKey.UsersScaStatusGet, entitiesId: userId); } ``` #### New event types Added new values to MangoPay.SDK/Core/Enumerations/EventType.cs: ```csharp namespace MangoPay.SDK.Core.Enumerations { /// Event types enumeration. public enum 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, } } ``` #### RecipientId property on payouts The SDK now supports the `RecipientId` property on payouts: * Updated MangoPay.SDK/Entities/GET/PayOutBankWireDTO.cs (marked `BankAccountId` nullable and added `RecipientId`) * Updated MangoPay.SDK/Entities/POST/PayOutBankWirePostDTO.cs (marked `BankAccountId` nullable and added `RecipientId`) * Updated corresponding tests ## 3.37.0 - Nov 28, 2025 ### Changed * Migrated to V4 naming convention ## 3.36.1 - Nov 25, 2025 ### Added * Support for `ScaContext` on [POST Create a Recipient](/api-reference/recipients/create-recipient) for platforms taking action by [proxy with consent](/guides/sca/proxy-management) from the user ([API release note](/release-notes/api/2025-11-17)) ## 3.36.0 - Oct 28, 2025 ### Added * New [POST Manage proxy consent for a User](/api-reference/users/manage-proxy-consent) 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](/release-notes/api/2025-10-23)) * `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](/release-notes/api/2025-10-23#sca%3A-scacontext-request-parameter-on-user-endpoints)) * Support for the `Licensor` property on [GET View a Client](/api-reference/client/view-client) ### Changed * `x-tenant-id` deprecated as no longer necessary for UK platforms; the parameter is ignored by Mangopay ## 3.35.0 - Oct 1, 2025 ### Added * [Verification of Payee (VOP)](/guides/vop/recipients-payouts) API response fields (`RecipientVerificationOfPayee` and sub-properties) on the endpoints [GET View a Recipient](/api-reference/recipients/view-recipient), [POST Create a Recipient](/api-reference/recipients/create-recipient), [POST Create a Payout](/api-reference/payouts/create-payout) ([API release note](/release-notes/api/2025-09-30)) * Support for the [POST Cancel an Intent](/api-reference/intents/cancel-intent) endpoint for [Echo](/guides/echo), Mangopay's solution for platforms working with another third-party PSP for funds acquisition * Support for [POST Submit data for a PayPal PayIn](/api-reference/paypal/submit-data-paypal-payin) endpoint ## 3.34.3 - Sep 23, 2025 ### Added * Support for `ProfilingAttemptReference` on all payment methods for Mangopay's Fraud Prevention solution * Webhook event types for [Echo](/guides/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.34.2 - Sep 3, 2025 ### Added * Support for missing properties on `UserDTO` base class: `UserCategory`, `TermsAndConditionsAccepted`, `TermsAndConditionsAcceptedDate` (the properties have been moved to `UserDTO`) * Support for missing `DisputeReasonType` enum value ### Changed * OAuth token refresh buffer before expiry updated to 30s * Removed unused `ApiPermissionGroups` and `ApiSingleSignOn`, API endpoints no longer available ### Fixed * Error parsing to avoid `ArgumentNullException` * Tests ## 3.34.1 - Aug 14, 2025 ### Added * Support for [POST Create a Quoted Conversion between Client Wallets](/api-reference/conversions/create-quoted-conversion-client-wallets) and [POST Create an Instant Conversion between Client Wallets](/api-reference/conversions/create-instant-conversion-client-wallets) ## 3.34.0 - Aug 7, 2025 ### Added Support for new Splits endpoints for Echo ([API release note](/release-notes/api/2025-07-16)): * [PUT Update an Intent Split](/api-reference/intents/update-intent-split) * [POST Execute an Intent Split](/api-reference/intents/execute-intent-split) * [POST Reverse an Intent Split](/api-reference/intents/reverse-intent-split) * [GET View an Intent Split](/api-reference/intents/view-intent-split) New `ReportTypes` for Echo ([API release note](/release-notes/api/2025-08-06)): * `ECHO_INTENT` * `ECHO_INTENT_ACTION` * `ECHO_SETTLEMENT` * `ECHO_SPLIT` ## 3.33.1 - Jul 28, 2025 ### Added * `Sku` parameter on LineItem, for [Klarna PayIns](/api-reference/klarna/create-klarna-payin) * handle new endpoint [View supported banks for Pay by Bank](/api-reference/pay-by-bank/view-supported-banks-pay-by-bank), to enable presentation of banks to user before Pay by Bank payment request ## 3.33.0 - Jul 18, 2025 ### Added Endpoints for [Mangopay Echo](/guides/echo), a solution for platforms working with another third-party PSP for funds acquisition (including via the Mirakl Connector): * [POST Create an Intent](/api-reference/intents/create-intent) * [GET View an Intent](/api-reference/intents/view-intent) * [POST Create a Capture for an Intent](/api-reference/intents/create-intent-capture) * [POST Create a Settlement](/api-reference/settlements/create-settlement) * [PUT Update a Settlement](/api-reference/settlements/update-settlement) * [GET View a Settlement](/api-reference/settlements/view-settlement) * [POST Create an Intent Split](/api-reference/intents/create-intent-split) ## 3.32.0 - Jun 16, 2025 ### Added * New endpoint [POST Create a Bizum PayIn](/api-reference/bizum/create-bizum-payin) * New webhook event types for SCA enrollment ([API release note](/release-notes/api/2025-06-23)), 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](/release-notes/api/2025-06-23)): * `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](/api-reference/transactions/list-transactions-card-fingerprint) ## 3.31.1 - Jun 16, 2025 ### Added * [US and CA virtual accounts](/release-notes/api/2025-06-12) for local pay-in collection ## 3.31.0 - Jun 10, 2025 ### Added Endpoints for [new Reporting Service](/release-notes/api/2025-06-05) feature: * [POST Create a Report](/api-reference/reporting/create-report) * [GET View a Report](/api-reference/reporting/view-report) * [GET List all Reports](/api-reference/reporting/list-reports) Webhook [event types](/webhooks/event-types) for new Reporting Service: * `REPORT_GENERATED` * `REPORT_FAILED` Support for [GET List Disputes for a PayIn](/api-reference/disputes/list-disputes-payin) endpoint. ## 3.30.1 - Jun 6, 2025 ### Added * Support for `RecipientScope` query parameter on [GET List Recipients for a User](/api-reference/recipients/list-recipients-user) * [POST Validate the format of User data](/api-reference/user-data-format/validate-user-data-format) ### Fixed * `Status` enum value on Identity Verification object changed from `OUTDATED` to `OUT_OF_DATE`