- Parameter
StatementDescriptor
for the endpoint Create refund payin - Parameter PaymentCategory for the endpoints : Create a card validation, Create a direct card payin, Create a preauthorization
- New endpoint Bancontact payin
- New parameter for update card :
CardHolderName
- New endpoint Add tracking to Paypal payin
- New parameters for Paypal mean of payment :
CancelURL
&Category
(sub-parameter ofLineItems
). And management ofPaypalPayerID
,BuyerCountry
,BuyerFirstname
,BuyerLastname
,BuyerPhone
,PaypalOrderID
in the response. - New parameter
SecureMode
for Create card validation - New parameter
CardHolderName
for Update Card registration
- Updated the implementation for Look up metadata for a payment method. The
CommercialIndicator
andCardType
fields have been moved to theBinData
object in the API response.
- Fixed incorrect spelling of the
Subtype
key in theBinData
parameter. - Conversions endpoint spelling
- The optional Fees parameter is now available on instant conversions, allowing platforms to charge users for FX services. More information here.
- Platforms can now use a quote to secure the rate for a conversion between two currencies for a set amount of time. More information here.
- Introduced the
UKHeaderFlag
boolean configuration key. Platforms partnered with Mangopay's UK entity should set this key to true for proper configuration.
- New endpoint to look up metadata from BIN or Google Pay token. More information here
- Get a card validation endpoint
New CardInfo
parameter returned on card transactions. More information here.
The IDEAL legacy implementation has been enhanced. You can now pass the Bic
., and if provided, the API response will include the BankName
parameter. More information here.
It's now possible to specify an amount for DebitedFunds and Fees when you create a refund.
- Missing parameter for Klarna
- Giropay and Ideal integrations with Mangopay have been improved. Some methods have been deprecated.
- New Reference parameter for the new Paypal implementation. Some methods have been deprecated.
- New hooks event : DEPOSIT_PREAUTHORIZATION_PAYMENT_NO_SHOW_REQUESTED DEPOSIT_PREAUTHORIZATION_PAYMENT_NO_SHOW DEPOSIT_PREAUTHORIZATION_PAYMENT_TO_BE_COMPLETED DEPOSIT_PREAUTHORIZATION_PAYMENT_FAILED
- fixed previous release (3.12.1)
Two events types added to reflect changes in the API :
- LEGAL_COMPANY_NUMBER_VALIDATION_SUCCEEDED
- LEGAL_COMPANY_NUMBER_VALIDATION_FAILED
- Instantly convert funds between 2 wallets of different currencies owned by the same user with the new SPOT FX endpoints
- Multibanco, Satispay, Blik, Klarna are now available as a payment method with Mangopay. This payment method is in private beta. Please contact support if you have any questions.
- Card validation endpoint is now available (Private beta)
- A new parameter for Paypal : ShippingPreference
- Google Pay integration with Mangopay has been improved. This payment method is in private beta. Please contact support if you have any questions.
- MBWay & PayPal are now using Web Execution Type.
Implementation of PayPal and MBWay to reflect the API behavior
Paypal integration with Mangopay has been improved. This payment method is in private beta. Please contact support if you have any questions.
Phone
parameter instead ofPhoneNumber
for MBWay
- MB WAY is now available as a payment method with Mangopay. This payment method is in private beta. Please contact support if you have any questions.
Knowing when a dispute was closed is now possible thanks to the new ClosedDate parameter for the Dispute object.
The following endpoints have been updated accordingly:
Vew a Dispute
List Disputes that need settling
Please note that the new ClosedDate field will only display values for the Disputes closed after this release. Otherwise, a null value will be returned.
- User category enum adapted for some Mangopay users
Preauthorizations can now hold funds for up to 30 days, therefore ensuring the solvency of a registered card for the same amount of time.
- The ApiDeposits service has been added with methods for creating, fetching and canceling a deposit
- The Deposit DTOs have been created
- The CreateCardPreAuthorizedDepositPayIn method has been added to the ApiPayins service
Thanks to 30-day preauthorizations, MANGOPAY can provide a simpler and more flexible payment experience for a wide range of use cases, especially for rentals.
Verifying some specific legal structures is now more efficient thanks to a new legal entity type: PARTNERSHIP.
The Legal User LegalPersonType parameter now includes the “PARTNERSHIP” value. The following endpoints have been updated accordingly:
Please note that changing the LegalPersonType to “PARTNERSHIP” for an existing user will automatically result in:
A KYC downgrade to Light (default) verification The REGISTRATION_PROOF document being flagged as OUT_OF_DATE. With this new LegalPersonType, the MANGOPAY team can better handle specific legal structures and speed up the validation process.
- Compatibility issue fixed (Restsharp, Unit tests) : Mangopay#174
New country authorizations endpoints
Country authorizations can now be viewed by using one of the following endpoints:
View a country's authorizations View all countries' authorizations
With these calls, it is possible to check which countries have:
- Blocked user creation
- Blocked bank account creation
- Blocked payout creation
Please refer to the Restrictions by country article for more information.
New country authorization hook
Country authorization updates can now be received by setting up a hook for the following EventType: COUNTRY_AUTHORIZATION_UPDATED
With this hook, it is possible to be notified when a country’s restrictions are updated.
##Added
- It's now possible to fetch a Payconiq by ID
##Fixed
- Bug with idempotency parameters with some GET requests (Disputes, Repudiations...)
##Fixed Missing EventType have been added (RECURRING_REGISTRATION).
##Added Recurring: €0 deadlines for CIT
Setting free recurring payment deadlines is now possible for CIT (customer-initiated transactions) with the FreeCycles parameter.
The FreeCycles parameter allows platforms to define the number of consecutive deadlines that will be free. The following endpoints have been updated to take into account this new parameter:
Create a Recurring PayIn Registration
View a Recurring PayIn Registration
This feature provides new automation capabilities for platforms with offers such as “Get the first month free” or “free trial” subscriptions.
Please refer to the Recurring payments overview documentation for more information.
The SDK handles existing User without an UserCategory
Users can now be differentiated depending on their MANGOPAY usage.
This is possible with the new UserCategory parameter, whose value can be set to:
- Payer – For users who are only using MANGOPAY to give money to other users (i.e., only pay).
- Owner – For users who are using MANGOPAY to receive funds (and who are therefore required to accept MANGOPAY’s terms and conditions).
Please note that the following parameters become required as soon as the UserCategory is set to “Owner”:
- HeadquartersAddress
- CompanyNumber (if the LegalPersonType is “Business”)
- TermsAndConditionsAccepted.
The documentation of user-related endpoints has been updated and reorganised to take into account the new parameter:
Create a Natural User (Payer) Create a Natural User (Owner) Update a Natural User Create a Legal User (Payer) Create a Legal User (Owner) Update a Legal User View a User List all Users
Differentiating the platform users results in a smoother user experience for “Payers” as they will have less declarative data to provide.
The acceptance of the MANGOPAY terms and conditions by the end user can now be registered via the SDK.
This information can be managed by using the new TermsAndConditionsAccepted
parameter added to the User
object.
The following API endpoints have been updated to take into account the new TermsAndConditionsAccepted parameter:
Create a Natural User Update a Natural User Create a Legal User Update a Legal User View a User
Please note that:
- Existing users have to be updated to include the terms and conditions acceptance information.
- Once accepted, the terms and conditions cannot be revoked.
###Changed
####Updated libraries
The SDK relies on .Net 6.0. You should update your project and librairies accordingly. If you use a lower/older version, we will not be able to provide any support.
The .Net SDK has been revamped in order to increase performances and improve the developer experience.
The SDK relies on .Net 5.0. You should update your project and librairies accordingly. If you use a lower/older version, we will not be able to provide any support.
Previously, if you wish to use idempotency, you had to use a dedicated function for idempotency. These functions have been removed. Now, each regular function can use idempotency, thanks to a new parameter.
For example :
await this.Api.PayIns.CreateRefundAsync(payIn.Id, refund, idempotentKey: idempotencyKey);
We have improved our request management. This version uses a singleton RestClient and changes only the RestRequest at each request. Therefore, requests are faster and have less impact on your server.
The destination bank reachability can now be verified prior to making an instant payout. This results in a better user experience, as this preliminary check will allow the platform to propose the instant payout option only to end users whose bank is eligible.
Instant Payment requests can now be automatically cancelled when an issue is encountered (rather than falling back to the standard payout mode).
This is possible by using the new INSTANT_PAYMENT_ONLY
option that has been added to the PayoutModeRequested
parameter.
RefundReasonType
is now a string
We are now providing new hooks for our new feature Instant payouts :
- INSTANT_PAYOUT_SUCCEEDED
- INSTANT_PAYOUT_FALLBACKED
It will allow you to trigger an action depends on the Instant Payout treatment.
You can now change the status to "ENDED" for a recurring payment.
- "Status" is now available in the response when you request a recurring payment registration.
As requested by numerous clients, we are now providing Payconiq as a new mean-of-payment. To request access, please contact MANGOPAY.
We provide more information regarding refused KYC documents. Therefore it will be easier for you to adapt your app behavior and help your end user.
You are now able to see the exact explanation thanks to a new parameter called “Flags”.
It has been added to
this.Api.Kyc.GetAsync(kycDocument.Id);
It will display one or several error codes that provide the reason(s) why your document validation has failed. These error codes description are available here.
- Change
FallbackReason
parameter's type to object in PayOutBankWireDTO
- You can now update and view a Recurring PayIn Registration object. To know more about this feature, please consult the documentation here.
- To improve recurring payments, we have added new parameters for CIT : DebitedFunds & Fees. To know more about this feature, please consult the documentation here
We have added a new feature recurring payments dedicated to clients needing to charge a card repeatedly, such as subscriptions or payments installments.
You can start testing in sandbox, to help you define your workflow. This release provides the first elements of the full feature.
- Create a Recurring PayIn Registration object, containing all the information to define the recurring payment
- Initiate your recurring payment flow with an authenticated transaction (CIT) using the Card Recurring PayIn endpoint
- Continue your recurring payment flow with an non-authenticated transaction (MIT) using the Card Recurring PayIn endpoint
This feature is not yet available in production and you need to contact the Support team to request access.
Mangopay introduces the instant payment mode. It allows payouts (transfer from wallet to user bank account) to be processed within 25 seconds, rather than the 48 hours for a standard payout.
You can now use this new type of payout with the .Net SDK.
Example :
var getJohnBankwire = awaitApi.PayOuts.GetBankwirePayoutAsync(payOut.Id);
// where payOut.Id is the id of an existing payout
Please note that this feature must be authorized and activated by MANGOPAY. More information here.
- Fix
BankAccount
IBAN reference for tests
More information about how to test payments, click here.
Some of you use a lot the PreAuthorization feature of our API. To make your life easier, we have added three new events :
- PREAUTHORIZATION_CREATED
- PREAUTHORIZATION_SUCCEEDED
- PREAUTHORIZATION_FAILED
The goal is to help you monitor a PreAuthorization with a webhook.
Example: If a PreAuthorization is desynchronized, when the status is updated, you will be able to know it.
This on-demand feature is for testing purposes only and will not be available in production
We've added a new parameter Requested3DSVersion
(not mandatory) that allows you to choose between versions of 3DS protocols (managed by the parameter SecureMode
). Two values are available:
V1
V2_1
If nothing is sent, the flow will be 3DS V1.
The Requested3DSVersion
may be included on all calls to the following endpoints:
/preauthorizations/card/direct
/payins/card/direct
In the API response, the Requested3DSVersion
will show the value you requested:
V1
V2_1
null
– indicates that nothing was requested
The parameter Applied3DSVersion
shows you the version of the 3DS protocol used. Two values are possible:
V1
V2_1
- 3DS2 integration with Shipping and Billing objects, including FirstName and LastName fields
The objects Billing and Shipping may be included on all calls to the following endpoints:
- /preauthorizations/card/direct
- /payins/card/direct
- /payins/card/web
- Enable Instant Payment for payouts by adding a new parameter PayoutModeRequested on the following endpoint /payouts/bankwire
- The new parameter PayoutModeRequested can take two differents values : "INSTANT_PAYMENT" or "STANDARD" (STANDARD = the way we procede normaly a payout request)
- This new parameter is not mandatory and if empty or not present, the payout will be "STANDARD" by default
- Instant Payment is in beta all over Europe - SEPA region
- Fix deserialize issue with api.Users.GetBankAccountsAsync
- New endpoint to support changes to Card Validation process (please listen out for product announcements)
- Changes to TotalItems and TotalPages #115
- NullReferenceException: On dictionary in DefaultStorageStrategy #103
- Async improvements to Card Validation and a few other little fixes
- Added new
KYC_OUTDATED
value forEventType
- Added new
USER_KYC_LIGHT
value forEventType
- Add new
USER_KYC_REGULAR
value forEventType
- Add missing
UserID
parameter in UBODeclarationDTO. - Fix typo for version number in CHANGELOG.md (3.x vs. 2.x)
PAYLINEV2
parameter is now supported for Payin Web Card (only!) and replacePAYLINE
deprecated parameter. You must now useTemplateURLOptionsCard
instead ofTemplateURLOptions
for Payin Web Cards only. For Payin Web Direct Debit,TemplateURLOptions
and itsPAYLINE
parameter should be always used.
- ApplePay Payin type is now supported and will be activated very soon. Stay tuned and feel free to share you interest on it !
- Quite the same for GooglePay Payin.
MANDATE_EXPIRED
new EventType andEXPIRED
Mandate status have been added.XK
country code for Kosovo has been added.AccountNumber
property has been added for Payin EXTERNAL_INSTRUCTION (Banking Aliases Payins) to help identify payments coming from non-IBAN bankaccounts
- .NET Core support has been added