mangopay4-nodejs-sdk 1.68.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/CHANGELOG.md +68 -0
  2. package/README.md +0 -6
  3. package/docs/templates/class.mustache +0 -0
  4. package/docs/templates/file.mustache +0 -0
  5. package/docs/templates/function.mustache +0 -0
  6. package/docs/templates/index.mustache +0 -0
  7. package/docs/templates/overview.mustache +0 -0
  8. package/lib/apiMethods.js +6 -1
  9. package/lib/models/CardPreAuthorization.js +2 -2
  10. package/lib/models/Hook.js +2 -1
  11. package/lib/models/PayInRecurringRegistration.js +2 -1
  12. package/lib/models/PayPalDepositPreauthorization.js +21 -0
  13. package/lib/models/ReportV2.js +2 -1
  14. package/lib/services/Deposits.js +13 -0
  15. package/lib/services/PayIns.js +94 -1
  16. package/package.json +16 -24
  17. package/typings/enums.d.ts +3 -1
  18. package/typings/models/cardPreauthorization.d.ts +7 -1
  19. package/typings/models/deposit.d.ts +165 -0
  20. package/typings/models/hook.d.ts +7 -2
  21. package/typings/models/payIn.d.ts +1302 -135
  22. package/typings/models/reportV2.d.ts +2 -0
  23. package/typings/models/virtualAccount.d.ts +48 -0
  24. package/typings/services/Deposits.d.ts +2 -0
  25. package/typings/services/PayIns.d.ts +63 -6
  26. package/.github/workflows/node.js.yml +0 -32
  27. package/.github/workflows/npm-publish.yml +0 -26
  28. package/.jshintrc +0 -16
  29. package/test/TestKycPageFile.png +0 -0
  30. package/test/helpers.js +0 -1537
  31. package/test/main.js +0 -10
  32. package/test/mocha.opts +0 -3
  33. package/test/services/Acquiring.js +0 -338
  34. package/test/services/BankAccounts.js +0 -46
  35. package/test/services/BankingAliases.js +0 -89
  36. package/test/services/CardPreAuthorizations.js +0 -70
  37. package/test/services/CardRegistrations.js +0 -239
  38. package/test/services/Cards.js +0 -56
  39. package/test/services/Clients.js +0 -235
  40. package/test/services/Conversions.js +0 -319
  41. package/test/services/Deposits.js +0 -148
  42. package/test/services/Disputes.js +0 -542
  43. package/test/services/EMoney.js +0 -54
  44. package/test/services/Events.js +0 -147
  45. package/test/services/Hooks.js +0 -109
  46. package/test/services/Idempotency.js +0 -41
  47. package/test/services/IdentityVerifications.js +0 -68
  48. package/test/services/KycDocuments.js +0 -73
  49. package/test/services/Mandates.js +0 -256
  50. package/test/services/PayIns.js +0 -2632
  51. package/test/services/PayOuts.js +0 -119
  52. package/test/services/RateLimit.js +0 -43
  53. package/test/services/Recipients.js +0 -234
  54. package/test/services/Refunds.js +0 -123
  55. package/test/services/Regulatory.js +0 -45
  56. package/test/services/Reports.js +0 -114
  57. package/test/services/ReportsV2.js +0 -306
  58. package/test/services/Repudiations.js +0 -22
  59. package/test/services/Settlements.js +0 -127
  60. package/test/services/Tokens.js +0 -55
  61. package/test/services/Transfers.js +0 -137
  62. package/test/services/UboDeclarations.js +0 -130
  63. package/test/services/Users.js +0 -1322
  64. package/test/services/VirtualAccounts.js +0 -105
  65. package/test/services/Wallets.js +0 -132
  66. package/test/settlement_sample.csv +0 -8
  67. package/test/settlement_sample_bad.csv +0 -8
@@ -149,6 +149,11 @@ export namespace payIn {
149
149
  * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
150
150
  */
151
151
  ProfilingAttemptReference?: string;
152
+
153
+ /**
154
+ * Information about the payment flow and its Beneficiaries.
155
+ */
156
+ FlowDescriptor?: FlowDescriptor;
152
157
  }
153
158
 
154
159
  interface CardWebPayInData extends BasePayInData {
@@ -330,6 +335,11 @@ export namespace payIn {
330
335
  * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
331
336
  */
332
337
  ProfilingAttemptReference?: string;
338
+
339
+ /**
340
+ * Information about the payment flow and its Beneficiaries.
341
+ */
342
+ FlowDescriptor?: FlowDescriptor;
333
343
  }
334
344
 
335
345
  interface CardDirectPayInData extends BasePayInData {
@@ -735,6 +745,11 @@ export namespace payIn {
735
745
  * Preferred Card Network
736
746
  */
737
747
  PreferredCardNetwork?: string;
748
+
749
+ /**
750
+ * Information about the payment flow and its Beneficiaries.
751
+ */
752
+ FlowDescriptor?: FlowDescriptor;
738
753
  }
739
754
 
740
755
  interface CreateMbwayWebPayIn {
@@ -784,6 +799,11 @@ export namespace payIn {
784
799
  * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
785
800
  */
786
801
  ProfilingAttemptReference?: string;
802
+
803
+ /**
804
+ * Information about the payment flow and its Beneficiaries.
805
+ */
806
+ FlowDescriptor?: FlowDescriptor;
787
807
  }
788
808
 
789
809
  interface CreateBancontactWebPayIn {
@@ -842,6 +862,11 @@ export namespace payIn {
842
862
  * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
843
863
  */
844
864
  ProfilingAttemptReference?: string;
865
+
866
+ /**
867
+ * Information about the payment flow and its Beneficiaries.
868
+ */
869
+ FlowDescriptor?: FlowDescriptor;
845
870
  }
846
871
 
847
872
  interface CreateBizumWebPayIn {
@@ -896,6 +921,11 @@ export namespace payIn {
896
921
  * Custom data that you can add to this item
897
922
  */
898
923
  Tag?: string;
924
+
925
+ /**
926
+ * Information about the payment flow and its Beneficiaries.
927
+ */
928
+ FlowDescriptor?: FlowDescriptor;
899
929
  }
900
930
 
901
931
  interface CreatePayPalWebPayIn {
@@ -961,6 +991,11 @@ export namespace payIn {
961
991
  CancelURL?: string;
962
992
 
963
993
  DataCollectionId?: string;
994
+
995
+ /**
996
+ * Information about the payment flow and its Beneficiaries.
997
+ */
998
+ FlowDescriptor?: FlowDescriptor;
964
999
  }
965
1000
 
966
1001
  interface CreateMultibancoWebPayIn {
@@ -1009,6 +1044,11 @@ export namespace payIn {
1009
1044
  * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
1010
1045
  */
1011
1046
  ProfilingAttemptReference?: string;
1047
+
1048
+ /**
1049
+ * Information about the payment flow and its Beneficiaries.
1050
+ */
1051
+ FlowDescriptor?: FlowDescriptor;
1012
1052
  }
1013
1053
 
1014
1054
  interface CreateSatispayWebPayIn {
@@ -1062,6 +1102,11 @@ export namespace payIn {
1062
1102
  * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
1063
1103
  */
1064
1104
  ProfilingAttemptReference?: string;
1105
+
1106
+ /**
1107
+ * Information about the payment flow and its Beneficiaries.
1108
+ */
1109
+ FlowDescriptor?: FlowDescriptor;
1065
1110
  }
1066
1111
 
1067
1112
  interface CreateBlikWebPayIn {
@@ -1128,6 +1173,11 @@ export namespace payIn {
1128
1173
  * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
1129
1174
  */
1130
1175
  ProfilingAttemptReference?: string;
1176
+
1177
+ /**
1178
+ * Information about the payment flow and its Beneficiaries.
1179
+ */
1180
+ FlowDescriptor?: FlowDescriptor;
1131
1181
  }
1132
1182
 
1133
1183
  interface LineItemData {
@@ -1261,6 +1311,11 @@ export namespace payIn {
1261
1311
  * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
1262
1312
  */
1263
1313
  ProfilingAttemptReference?: string;
1314
+
1315
+ /**
1316
+ * Information about the payment flow and its Beneficiaries.
1317
+ */
1318
+ FlowDescriptor?: FlowDescriptor;
1264
1319
  }
1265
1320
 
1266
1321
  interface DirectDebitWebPayInData extends BasePayInData {
@@ -1348,6 +1403,11 @@ export namespace payIn {
1348
1403
  * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
1349
1404
  */
1350
1405
  ProfilingAttemptReference?: string;
1406
+
1407
+ /**
1408
+ * Information about the payment flow and its Beneficiaries.
1409
+ */
1410
+ FlowDescriptor?: FlowDescriptor;
1351
1411
  }
1352
1412
 
1353
1413
  interface CardPreAuthorizedPayInData extends BasePayInData {
@@ -1492,6 +1552,11 @@ export namespace payIn {
1492
1552
  * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
1493
1553
  */
1494
1554
  ProfilingAttemptReference?: string;
1555
+
1556
+ /**
1557
+ * Information about the payment flow and its Beneficiaries.
1558
+ */
1559
+ FlowDescriptor?: FlowDescriptor;
1495
1560
  }
1496
1561
 
1497
1562
  interface PayInRecurringRegistrationState {
@@ -1549,270 +1614,1271 @@ export namespace payIn {
1549
1614
  Shipping: BillingOrShippingRecurringPayInData;
1550
1615
 
1551
1616
  /**
1552
- * Date on which the recurring payments will end
1617
+ * Date on which the recurring payments will end
1618
+ */
1619
+ EndDate: Timestamp;
1620
+
1621
+ /**
1622
+ * Frequency at which the recurring payments will be made
1623
+ */
1624
+ Frequency: FrequencyType;
1625
+
1626
+ /**
1627
+ * Indicates whether the payment amount is likely to change during the payment period
1628
+ */
1629
+ FixedNextAmount: boolean;
1630
+
1631
+ /**
1632
+ * Indicates whether this recurring payment is a payment in installments in N times
1633
+ */
1634
+ FractionedPayment: boolean;
1635
+
1636
+ FreeCycles?: number;
1637
+
1638
+ /**
1639
+ * Amount of the first payment. This amount may be different from the NextTransactionDebitedFunds.
1640
+ */
1641
+ FirstTransactionDebitedFunds: MoneyData;
1642
+
1643
+ /**
1644
+ * Amount of the first payment fees. This amount may be different from the NextTransactionFees.
1645
+ */
1646
+ FirstTransactionFees: MoneyData;
1647
+
1648
+ /**
1649
+ * Amount of subsequent payments. If this field is empty and either FixedNextAmount or FractionedPayment are TRUE,
1650
+ * we will take the amount of the FirstTransactionDebitedFunds as the subsequent payment amount.
1651
+ */
1652
+ NextTransactionDebitedFunds: MoneyData;
1653
+
1654
+ /**
1655
+ * Amount of subsequent fees. If this field is empty and either FixedNextAmount or FractionedPayment are TRUE,
1656
+ * we will take the amount of the FirstTransactionFees as the subsequent fees.
1657
+ */
1658
+ NextTransactionFees: MoneyData;
1659
+
1660
+ /**
1661
+ * Indicates whether the object is being used to attempt registration of an existing recurring payment
1662
+ */
1663
+ Migration: boolean;
1664
+
1665
+ PaymentType: RecurringPayInRegistrationPaymentType;
1666
+
1667
+ /**
1668
+ * Information about the payment flow and its Beneficiaries.
1669
+ */
1670
+ FlowDescriptor?: FlowDescriptor;
1671
+ }
1672
+
1673
+ interface RecurringPayInRegistrationData extends entityBase.EntityBaseData {
1674
+ /**
1675
+ * The status of the transaction
1676
+ */
1677
+ Status: RecurringPaymentStatus;
1678
+
1679
+ /**
1680
+ * The code indicating the result of the operation
1681
+ */
1682
+ ResultCode: string;
1683
+
1684
+ /**
1685
+ * The explanation of the result code
1686
+ */
1687
+ ResultMessage: string;
1688
+
1689
+ /**
1690
+ * Current state
1691
+ */
1692
+ CurrentState: PayInRecurringRegistrationState;
1693
+
1694
+ /**
1695
+ * Recurring type
1696
+ */
1697
+ RecurringType: RecurringType;
1698
+
1699
+ /**
1700
+ * Total amount
1701
+ */
1702
+ TotalAmount: MoneyData;
1703
+
1704
+ /**
1705
+ * Cycle number
1706
+ */
1707
+ CycleNumber: number;
1708
+
1709
+ /**
1710
+ * A user's ID
1711
+ */
1712
+ AuthorId: string;
1713
+
1714
+ /**
1715
+ * The ID of a card
1716
+ */
1717
+ CardId: string;
1718
+
1719
+ /**
1720
+ * The user ID who is credited (defaults to the owner of the wallet)
1721
+ */
1722
+ CreditedUserId: string;
1723
+
1724
+ /**
1725
+ * The ID of the wallet where money will be credited
1726
+ */
1727
+ CreditedWalletId: string;
1728
+
1729
+ /**
1730
+ * Contains every useful informations related to the user billing
1731
+ */
1732
+ Billing: BillingOrShippingRecurringPayInData;
1733
+
1734
+ /**
1735
+ * Contains every useful information's related to the user shipping
1736
+ */
1737
+ Shipping: BillingOrShippingRecurringPayInData;
1738
+
1739
+ /**
1740
+ * Date on which the recurring payments will end
1741
+ */
1742
+ EndDate: Timestamp;
1743
+
1744
+ /**
1745
+ * Frequency at which the recurring payments will be made
1746
+ */
1747
+ Frequency: FrequencyType;
1748
+
1749
+ /**
1750
+ * Indicates whether the payment amount is likely to change during the payment period
1751
+ */
1752
+ FixedNextAmount: boolean;
1753
+
1754
+ /**
1755
+ * Indicates whether this recurring payment is a payment in installments in N times
1756
+ */
1757
+ FractionedPayment: boolean;
1758
+
1759
+ /**
1760
+ * Free cycles
1761
+ */
1762
+ FreeCycles: number;
1763
+
1764
+ /**
1765
+ * Amount of the first payment. This amount may be different from the NextTransactionDebitedFunds.
1766
+ */
1767
+ FirstTransactionDebitedFunds: MoneyData;
1768
+
1769
+ /**
1770
+ * Amount of the first payment fees. This amount may be different from the NextTransactionFees.
1771
+ */
1772
+ FirstTransactionFees: MoneyData;
1773
+
1774
+ /**
1775
+ * Amount of subsequent payments. If this field is empty and either FixedNextAmount or FractionedPayment are TRUE,
1776
+ * we will take the amount of the FirstTransactionDebitedFunds as the subsequent payment amount.
1777
+ */
1778
+ NextTransactionDebitedFunds: MoneyData;
1779
+
1780
+ /**
1781
+ * Amount of subsequent fees. If this field is empty and either FixedNextAmount or FractionedPayment are TRUE,
1782
+ * we will take the amount of the FirstTransactionFees as the subsequent fees.
1783
+ */
1784
+ NextTransactionFees: MoneyData;
1785
+
1786
+ /**
1787
+ * Indicates whether the object is being used to attempt registration of an existing recurring payment
1788
+ * @deprecated
1789
+ */
1790
+ Migration: boolean;
1791
+
1792
+ /**
1793
+ * Payment type
1794
+ */
1795
+ PaymentType: RecurringPayInRegistrationPaymentType;
1796
+
1797
+ /**
1798
+ * Card info
1799
+ */
1800
+ CardInfo: CardInfoData;
1801
+
1802
+ /**
1803
+ * The unique reference generated for the profiling session, used by the fraud prevention solution to produce
1804
+ * recommendations for the transaction using the profiling data.
1805
+ */
1806
+ ProfilingAttemptReference: string;
1807
+
1808
+ /**
1809
+ * Information about the payment flow and its Beneficiaries.
1810
+ */
1811
+ FlowDescriptor: FlowDescriptor;
1812
+ }
1813
+
1814
+ interface CreatePayInRecurringRegistration {
1815
+ /**
1816
+ * A user's ID
1817
+ */
1818
+ AuthorId: string;
1819
+
1820
+ /**
1821
+ * The ID of a card
1822
+ */
1823
+ CardId: string;
1824
+
1825
+ /**
1826
+ * The user ID who is credited (defaults to the owner of the wallet)
1827
+ */
1828
+ CreditedUserId?: string;
1829
+
1830
+ /**
1831
+ * The ID of the wallet where money will be credited
1832
+ */
1833
+ CreditedWalletId: string;
1834
+
1835
+ /**
1836
+ * Amount of the first payment. This amount may be different from the NextTransactionDebitedFunds.
1837
+ */
1838
+ FirstTransactionDebitedFunds: MoneyData;
1839
+
1840
+ /**
1841
+ * Amount of the first payment fees. This amount may be different from the NextTransactionFees.
1842
+ */
1843
+ FirstTransactionFees: MoneyData;
1844
+
1845
+ /**
1846
+ * Contains every useful informations related to the user billing
1847
+ */
1848
+ Billing?: BillingOrShippingRecurringPayInData;
1849
+
1850
+ /**
1851
+ * Contains every useful information's related to the user shipping
1852
+ */
1853
+ Shipping?: BillingOrShippingRecurringPayInData;
1854
+
1855
+ /**
1856
+ * Date on which the recurring payments will end
1857
+ */
1858
+ EndDate?: Timestamp;
1859
+
1860
+ /**
1861
+ * Frequency at which the recurring payments will be made
1862
+ */
1863
+ Frequency?: FrequencyType;
1864
+
1865
+ /**
1866
+ * Indicates whether the payment amount is likely to change during the payment period
1867
+ */
1868
+ FixedNextAmount?: boolean;
1869
+
1870
+ /**
1871
+ * Indicates whether this recurring payment is a payment in installments in N times
1872
+ */
1873
+ FractionedPayment?: boolean;
1874
+
1875
+ /**
1876
+ * Indicates whether the object is being used to attempt registration of an existing recurring payment
1877
+ */
1878
+ Migration?: boolean;
1879
+
1880
+ /**
1881
+ * Amount of subsequent payments. If this field is empty and either FixedNextAmount or FractionedPayment are TRUE,
1882
+ * we will take the amount of the FirstTransactionDebitedFunds as the subsequent payment amount.
1883
+ */
1884
+ NextTransactionDebitedFunds?: MoneyData;
1885
+
1886
+ /**
1887
+ * Amount of subsequent fees. If this field is empty and either FixedNextAmount or FractionedPayment are TRUE,
1888
+ * we will take the amount of the FirstTransactionFees as the subsequent fees.
1889
+ */
1890
+ NextTransactionFees?: MoneyData;
1891
+
1892
+ FreeCycles?: number;
1893
+
1894
+ PaymentType?: RecurringPayInRegistrationPaymentType
1895
+
1896
+ /**
1897
+ * Information about the payment flow and its Beneficiaries.
1898
+ */
1899
+ FlowDescriptor?: FlowDescriptor;
1900
+ }
1901
+
1902
+ interface CreateRecurringCardPayInRegistration {
1903
+ /**
1904
+ * A user's ID
1905
+ */
1906
+ AuthorId: string;
1907
+
1908
+ /**
1909
+ * The ID of a card
1910
+ */
1911
+ CardId: string;
1912
+
1913
+ /**
1914
+ * The user ID who is credited (defaults to the owner of the wallet)
1915
+ */
1916
+ CreditedUserId?: string;
1917
+
1918
+ /**
1919
+ * The ID of the wallet where money will be credited
1920
+ */
1921
+ CreditedWalletId: string;
1922
+
1923
+ /**
1924
+ * Amount of the first payment. This amount may be different from the NextTransactionDebitedFunds.
1925
+ */
1926
+ FirstTransactionDebitedFunds: MoneyData;
1927
+
1928
+ /**
1929
+ * Amount of the first payment fees. This amount may be different from the NextTransactionFees.
1930
+ */
1931
+ FirstTransactionFees: MoneyData;
1932
+
1933
+ /**
1934
+ * Contains every useful informations related to the user billing
1935
+ */
1936
+ Billing?: CreateBilling;
1937
+
1938
+ /**
1939
+ * Contains every useful information's related to the user shipping
1940
+ */
1941
+ Shipping?: CreateShipping;
1942
+
1943
+ /**
1944
+ * Date on which the recurring payments will end
1945
+ */
1946
+ EndDate?: Timestamp;
1947
+
1948
+ /**
1949
+ * Frequency at which the recurring payments will be made
1950
+ */
1951
+ Frequency?: FrequencyType;
1952
+
1953
+ /**
1954
+ * Indicates whether the payment amount is likely to change during the payment period
1955
+ */
1956
+ FixedNextAmount?: boolean;
1957
+
1958
+ /**
1959
+ * Indicates whether this recurring payment is a payment in installments in N times
1960
+ */
1961
+ FractionedPayment?: boolean;
1962
+
1963
+ /**
1964
+ * Indicates whether the object is being used to attempt registration of an existing recurring payment
1965
+ * @deprecated
1966
+ */
1967
+ Migration?: boolean;
1968
+
1969
+ /**
1970
+ * Amount of subsequent payments. If this field is empty and either FixedNextAmount or FractionedPayment are TRUE,
1971
+ * we will take the amount of the FirstTransactionDebitedFunds as the subsequent payment amount.
1972
+ */
1973
+ NextTransactionDebitedFunds?: MoneyData;
1974
+
1975
+ /**
1976
+ * Amount of subsequent fees. If this field is empty and either FixedNextAmount or FractionedPayment are TRUE,
1977
+ * we will take the amount of the FirstTransactionFees as the subsequent fees.
1978
+ */
1979
+ NextTransactionFees?: MoneyData;
1980
+
1981
+ /**
1982
+ * The number of initial consecutive pay-ins where there will be no debited funds nor fees.
1983
+ */
1984
+ FreeCycles?: number;
1985
+
1986
+ /**
1987
+ * The unique reference generated for the profiling session, used by the fraud prevention solution to produce
1988
+ * recommendations for the transaction using the profiling data.
1989
+ */
1990
+ ProfilingAttemptReference?: string;
1991
+
1992
+ /**
1993
+ * Information about the payment flow and its Beneficiaries.
1994
+ */
1995
+ FlowDescriptor?: FlowDescriptor;
1996
+ }
1997
+
1998
+ interface CreateRecurringPayPalPayInRegistration {
1999
+ /**
2000
+ * A user's ID
2001
+ */
2002
+ AuthorId: string;
2003
+
2004
+ /**
2005
+ * The ID of the wallet where money will be credited
2006
+ */
2007
+ CreditedWalletId: string;
2008
+
2009
+ /**
2010
+ * Amount of the first payment. This amount may be different from the NextTransactionDebitedFunds.
2011
+ */
2012
+ FirstTransactionDebitedFunds: MoneyData;
2013
+
2014
+ /**
2015
+ * Amount of the first payment fees. This amount may be different from the NextTransactionFees.
2016
+ */
2017
+ FirstTransactionFees: MoneyData;
2018
+
2019
+ /**
2020
+ * Contains every useful informations related to the user billing
2021
+ */
2022
+ Billing?: CreateBilling;
2023
+
2024
+ /**
2025
+ * Contains every useful information's related to the user shipping
2026
+ */
2027
+ Shipping?: CreateShipping;
2028
+
2029
+ /**
2030
+ * Indicates whether the payment amount is likely to change during the payment period
2031
+ */
2032
+ FixedNextAmount?: boolean;
2033
+
2034
+ /**
2035
+ * Amount of subsequent payments. If this field is empty and either FixedNextAmount or FractionedPayment are TRUE,
2036
+ * we will take the amount of the FirstTransactionDebitedFunds as the subsequent payment amount.
2037
+ */
2038
+ NextTransactionDebitedFunds?: MoneyData;
2039
+
2040
+ /**
2041
+ * Amount of subsequent fees. If this field is empty and either FixedNextAmount or FractionedPayment are TRUE,
2042
+ * we will take the amount of the FirstTransactionFees as the subsequent fees.
2043
+ */
2044
+ NextTransactionFees?: MoneyData;
2045
+
2046
+ /**
2047
+ * Payment type
2048
+ */
2049
+ PaymentType?: RecurringPayInRegistrationPaymentType
2050
+
2051
+ /**
2052
+ * The unique reference generated for the profiling session, used by the fraud prevention solution to produce
2053
+ * recommendations for the transaction using the profiling data.
2054
+ */
2055
+ ProfilingAttemptReference?: string;
2056
+
2057
+ /**
2058
+ * Information about the payment flow and its Beneficiaries.
2059
+ */
2060
+ FlowDescriptor?: FlowDescriptor;
2061
+ }
2062
+
2063
+ interface CreateRecurringApplePayPayInRegistration {
2064
+ /**
2065
+ * A user's ID
2066
+ */
2067
+ AuthorId: string;
2068
+
2069
+ /**
2070
+ * The user ID who is credited (defaults to the owner of the wallet)
2071
+ */
2072
+ CreditedUserId?: string;
2073
+
2074
+ /**
2075
+ * The ID of the wallet where money will be credited
2076
+ */
2077
+ CreditedWalletId: string;
2078
+
2079
+ /**
2080
+ * Amount of the first payment. This amount may be different from the NextTransactionDebitedFunds.
2081
+ */
2082
+ FirstTransactionDebitedFunds: MoneyData;
2083
+
2084
+ /**
2085
+ * Amount of the first payment fees. This amount may be different from the NextTransactionFees.
2086
+ */
2087
+ FirstTransactionFees: MoneyData;
2088
+
2089
+ /**
2090
+ * The data returned by Apple Pay containing information about the payment.
2091
+ */
2092
+ PaymentData: ApplePayPaymentData;
2093
+
2094
+ /**
2095
+ * Contains every useful informations related to the user billing
2096
+ */
2097
+ Billing?: CreateBilling;
2098
+
2099
+ /**
2100
+ * Contains every useful information's related to the user shipping
2101
+ */
2102
+ Shipping?: CreateShipping;
2103
+
2104
+ /**
2105
+ * Payment type
2106
+ */
2107
+ PaymentType: RecurringPayInRegistrationPaymentType
2108
+
2109
+ /**
2110
+ * Date on which the recurring payments will end
2111
+ */
2112
+ EndDate?: Timestamp;
2113
+
2114
+ /**
2115
+ * Frequency at which the recurring payments will be made
2116
+ */
2117
+ Frequency?: FrequencyType;
2118
+
2119
+ /**
2120
+ * Indicates whether the payment amount is likely to change during the payment period
2121
+ */
2122
+ FixedNextAmount?: boolean;
2123
+
2124
+ /**
2125
+ * Indicates whether this recurring payment is a payment in installments in N times
2126
+ */
2127
+ FractionedPayment?: boolean;
2128
+
2129
+ /**
2130
+ * Amount of subsequent payments. If this field is empty and either FixedNextAmount or FractionedPayment are TRUE,
2131
+ * we will take the amount of the FirstTransactionDebitedFunds as the subsequent payment amount.
2132
+ */
2133
+ NextTransactionDebitedFunds?: MoneyData;
2134
+
2135
+ /**
2136
+ * Amount of subsequent fees. If this field is empty and either FixedNextAmount or FractionedPayment are TRUE,
2137
+ * we will take the amount of the FirstTransactionFees as the subsequent fees.
2138
+ */
2139
+ NextTransactionFees?: MoneyData;
2140
+
2141
+ /**
2142
+ * The number of initial consecutive pay-ins where there will be no debited funds nor fees.
2143
+ */
2144
+ FreeCycles?: number;
2145
+
2146
+ /**
2147
+ * The unique reference generated for the profiling session, used by the fraud prevention solution to produce
2148
+ * recommendations for the transaction using the profiling data.
2149
+ */
2150
+ ProfilingAttemptReference?: string;
2151
+
2152
+ /**
2153
+ * Information about the payment flow and its Beneficiaries.
2154
+ */
2155
+ FlowDescriptor?: FlowDescriptor;
2156
+ }
2157
+
2158
+ interface CreateRecurringGooglePayPayInRegistration {
2159
+ /**
2160
+ * A user's ID
2161
+ */
2162
+ AuthorId: string;
2163
+
2164
+ /**
2165
+ * The user ID who is credited (defaults to the owner of the wallet)
2166
+ */
2167
+ CreditedUserId?: string;
2168
+
2169
+ /**
2170
+ * The ID of the wallet where money will be credited
2171
+ */
2172
+ CreditedWalletId: string;
2173
+
2174
+ /**
2175
+ * Amount of the first payment. This amount may be different from the NextTransactionDebitedFunds.
2176
+ */
2177
+ FirstTransactionDebitedFunds: MoneyData;
2178
+
2179
+ /**
2180
+ * Amount of the first payment fees. This amount may be different from the NextTransactionFees.
2181
+ */
2182
+ FirstTransactionFees: MoneyData;
2183
+
2184
+ /**
2185
+ * The data returned by Google Pay containing information about the payment.
2186
+ */
2187
+ PaymentData: string;
2188
+
2189
+ /**
2190
+ * Contains every useful informations related to the user billing
2191
+ */
2192
+ Billing?: CreateBilling;
2193
+
2194
+ /**
2195
+ * Contains every useful information's related to the user shipping
2196
+ */
2197
+ Shipping?: CreateShipping;
2198
+
2199
+ /**
2200
+ * Payment type
2201
+ */
2202
+ PaymentType: RecurringPayInRegistrationPaymentType
2203
+
2204
+ /**
2205
+ * Date on which the recurring payments will end
2206
+ */
2207
+ EndDate?: Timestamp;
2208
+
2209
+ /**
2210
+ * Frequency at which the recurring payments will be made
2211
+ */
2212
+ Frequency?: FrequencyType;
2213
+
2214
+ /**
2215
+ * Indicates whether the payment amount is likely to change during the payment period
2216
+ */
2217
+ FixedNextAmount?: boolean;
2218
+
2219
+ /**
2220
+ * Indicates whether this recurring payment is a payment in installments in N times
2221
+ */
2222
+ FractionedPayment?: boolean;
2223
+
2224
+ /**
2225
+ * Amount of subsequent payments. If this field is empty and either FixedNextAmount or FractionedPayment are TRUE,
2226
+ * we will take the amount of the FirstTransactionDebitedFunds as the subsequent payment amount.
2227
+ */
2228
+ NextTransactionDebitedFunds?: MoneyData;
2229
+
2230
+ /**
2231
+ * Amount of subsequent fees. If this field is empty and either FixedNextAmount or FractionedPayment are TRUE,
2232
+ * we will take the amount of the FirstTransactionFees as the subsequent fees.
2233
+ */
2234
+ NextTransactionFees?: MoneyData;
2235
+
2236
+ /**
2237
+ * The number of initial consecutive pay-ins where there will be no debited funds nor fees.
2238
+ */
2239
+ FreeCycles?: number;
2240
+
2241
+ /**
2242
+ * The unique reference generated for the profiling session, used by the fraud prevention solution to produce
2243
+ * recommendations for the transaction using the profiling data.
2244
+ */
2245
+ ProfilingAttemptReference?: string;
2246
+
2247
+ /**
2248
+ * Information about the payment flow and its Beneficiaries.
2249
+ */
2250
+ FlowDescriptor?: FlowDescriptor;
2251
+ }
2252
+
2253
+ interface UpdatePayInRecurringRegistration {
2254
+ CardId?: string;
2255
+
2256
+ Billing?: BillingOrShippingRecurringPayInData;
2257
+
2258
+ Shipping?: BillingOrShippingRecurringPayInData;
2259
+
2260
+ Status?: UpdateRecurringPaymentStatus;
2261
+ }
2262
+
2263
+ interface UpdateRecurringCardPayInRegistration {
2264
+ Id: string;
2265
+
2266
+ CardId?: string;
2267
+
2268
+ Billing?: BillingOrShippingRecurringPayInData;
2269
+
2270
+ Shipping?: BillingOrShippingRecurringPayInData;
2271
+
2272
+ Status?: UpdateRecurringPaymentStatus;
2273
+ }
2274
+
2275
+ interface UpdateRecurringPayPalPayInRegistration {
2276
+ Id: string;
2277
+
2278
+ Billing?: BillingOrShippingRecurringPayInData;
2279
+
2280
+ Shipping?: BillingOrShippingRecurringPayInData;
2281
+
2282
+ Status?: UpdateRecurringPaymentStatus;
2283
+ }
2284
+
2285
+ interface UpdateRecurringApplePayPayInRegistration {
2286
+ Id: string;
2287
+
2288
+ PaymentData?: ApplePayPaymentData;
2289
+
2290
+ Billing?: BillingOrShippingRecurringPayInData;
2291
+
2292
+ Shipping?: BillingOrShippingRecurringPayInData;
2293
+
2294
+ Status?: UpdateRecurringPaymentStatus;
2295
+ }
2296
+
2297
+ interface UpdateRecurringGooglePayPayInRegistration {
2298
+ Id: string;
2299
+
2300
+ PaymentData?: string;
2301
+
2302
+ Billing?: BillingOrShippingRecurringPayInData;
2303
+
2304
+ Shipping?: BillingOrShippingRecurringPayInData;
2305
+
2306
+ Status?: UpdateRecurringPaymentStatus;
2307
+ }
2308
+
2309
+ interface RecurringPayInData extends BasePayInData {
2310
+ /**
2311
+ * The SecureMode corresponds to '3D secure' for CB Visa and MasterCard. This field lets you activate it manually.
2312
+ * The field lets you activate it automatically with "DEFAULT" (Secured Mode will be activated from €50 or when MANGOPAY detects there is a higher risk ),
2313
+ * "FORCE" (if you wish to specifically force the secured mode).
2314
+ */
2315
+ SecureMode: SecureMode;
2316
+
2317
+ /**
2318
+ * The ID of a card
2319
+ */
2320
+ CardId: string;
2321
+
2322
+ /**
2323
+ * The value is 'true' if the SecureMode was used
2324
+ */
2325
+ SecureModeNeeded: boolean;
2326
+
2327
+ /**
2328
+ * This is the URL where to redirect users to proceed to 3D secure validation
2329
+ */
2330
+ SecureModeRedirectURL: string;
2331
+
2332
+ /**
2333
+ * This is the URL where users are automatically redirected after 3D secure validation (if activated)
2334
+ */
2335
+ SecureModeReturnURL: string;
2336
+
2337
+ /**
2338
+ * The language to use for the payment page - needs to be the ISO code of the language
2339
+ */
2340
+ Culture: CountryISO;
2341
+
2342
+ /**
2343
+ * Contains useful information related to security and fraud
2344
+ */
2345
+ SecurityInfo: SecurityInfoData;
2346
+
2347
+ /**
2348
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and can only include alphanumeric characters or spaces.
2349
+ * See here for important info. Note that each bank handles this information differently, some show less or no information.
2350
+ */
2351
+ StatementDescriptor: string;
2352
+
2353
+ /**
2354
+ * This object describes the Browser being used by an end user
2355
+ */
2356
+ BrowserInfo: BrowserInfoData;
2357
+
2358
+ /**
2359
+ * IP Address of the end user (format IPV4 or IPV6)
2360
+ */
2361
+ IpAddress: string;
2362
+
2363
+ /**
2364
+ * Contains every useful information related to the user billing
2365
+ */
2366
+ Billing: BillingOrShippingRecurringPayInData;
2367
+
2368
+ /**
2369
+ * Contains every useful information's related to the user shipping
2370
+ */
2371
+ Shipping: BillingOrShippingRecurringPayInData;
2372
+
2373
+ /**
2374
+ * The 3DS protocol version requested
2375
+ */
2376
+ Requested3DSVersion: _3DSVersion;
2377
+
2378
+ /**
2379
+ * The 3DS protocol version applied
2380
+ */
2381
+ Applied3DSVersion: _3DSVersion;
2382
+
2383
+ /**
2384
+ * The unique identifier of the recurring pay-in registration
2385
+ */
2386
+ RecurringPayinRegistrationId: string;
2387
+
2388
+ /**
2389
+ * Information about the card
2390
+ */
2391
+ CardInfo: CardInfoData;
2392
+
2393
+ /**
2394
+ * Payment category
2395
+ */
2396
+ PaymentCategory?: string;
2397
+
2398
+ /**
2399
+ * Preferred Card Network
2400
+ */
2401
+ PreferredCardNetwork?: string;
2402
+
2403
+ /**
2404
+ * Authentication result
2405
+ */
2406
+ AuthenticationResult?: AuthenticationResult;
2407
+
2408
+ /**
2409
+ * Information about the items bought by the customer
2410
+ */
2411
+ LineItems?: LineItemData[];
2412
+
2413
+ /**
2414
+ * The URL where users are automatically redirected after the payment is validated
2415
+ */
2416
+ ReturnURL?: string;
2417
+
2418
+ /**
2419
+ * The URL to which the user is redirected to complete the payment
2420
+ */
2421
+ RedirectURL?: string;
2422
+
2423
+ /**
2424
+ * The URL to which the user is returned after canceling the payment
2425
+ */
2426
+ CancelURL?: string;
2427
+
2428
+ /**
2429
+ * Information about the shipping address behavior on the PayPal payment page
2430
+ */
2431
+ ShippingPreference?: ShippingPreference;
2432
+
2433
+ /**
2434
+ * The platform's order reference for the transaction
2435
+ */
2436
+ Reference?: string;
2437
+
2438
+ /**
2439
+ * Shipping information of the LineItems added to the pay-in object
2440
+ */
2441
+ Trackings?: PayPalWebTrackingData;
2442
+
2443
+ /**
2444
+ * The email address registered on the PayPal account used to make the payment
2445
+ */
2446
+ PaypalBuyerAccountEmail?: string;
2447
+
2448
+ /**
2449
+ * The unique identifier of the PayPal order
2450
+ */
2451
+ PaypalOrderID?: string;
2452
+
2453
+ /**
2454
+ * The unique identifier of the PayPal payer
2455
+ */
2456
+ PaypalPayerID?: string;
2457
+
2458
+ /**
2459
+ * The country of the buyer
2460
+ */
2461
+ BuyerCountry?: string;
2462
+
2463
+ /**
2464
+ * The first name of the buyer
2465
+ */
2466
+ BuyerFirstname?: string;
2467
+
2468
+ /**
2469
+ * The last name of the buyer
2470
+ */
2471
+ BuyerLastname?: string;
2472
+
2473
+ /**
2474
+ * The phone number of the buyer
2475
+ */
2476
+ BuyerPhone?: string;
2477
+ }
2478
+
2479
+ interface CreateRecurringPayInCIT {
2480
+ /**
2481
+ * The recurring's ID
2482
+ */
2483
+ RecurringPayinRegistrationId: string;
2484
+
2485
+ /**
2486
+ * This object describes the Browser being user by an end user
2487
+ */
2488
+ BrowserInfo: BrowserInfoData;
2489
+
2490
+ /**
2491
+ * IP Address of the end user (format IPV4 or IPV6)
2492
+ */
2493
+ IpAddress: string;
2494
+
2495
+ /**
2496
+ * This is the URL where users are automatically redirected after 3D secure validation (if activated)
2497
+ */
2498
+ SecureModeReturnURL: string;
2499
+
2500
+ /**
2501
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long,
2502
+ * and can only include alphanumeric characters or spaces. See here for important info.
2503
+ * Note that each bank handles this information differently, some show less or no information.
2504
+ */
2505
+ StatementDescriptor?: string;
2506
+
2507
+ /**
2508
+ * Custom data that you can add to this item
2509
+ */
2510
+ Tag?: string;
2511
+
2512
+ /**
2513
+ * Amount of the subsequent payment. If this field is empty we will take the amount entered in the NextTransactionDebitedFunds of the Recurring PayIn Registration.
2514
+ * An amount must be transmitted during either registration or pay-in (if it’s different from the registration one).
2515
+ */
2516
+ DebitedFunds?: MoneyData;
2517
+
2518
+ /**
2519
+ * Amount of the subsequent fees. If this field is empty we will take the amount entered in the NextTransactionFees
2520
+ * of the Recurring PayIn Registration. An amount must be transmitted during either registration or pay-in.
2521
+ */
2522
+ Fees?: MoneyData;
2523
+
2524
+ PaymentCategory?: string;
2525
+ }
2526
+
2527
+ interface CreateRecurringCardPayInCIT {
2528
+ ExecutionType: "DIRECT";
2529
+
2530
+ PaymentType: "CARD";
2531
+
2532
+ /**
2533
+ * The recurring's ID
2534
+ */
2535
+ RecurringPayinRegistrationId: string;
2536
+
2537
+ /**
2538
+ * This object describes the Browser being user by an end user
2539
+ */
2540
+ BrowserInfo: BrowserInfoData;
2541
+
2542
+ /**
2543
+ * IP Address of the end user (format IPV4 or IPV6)
2544
+ */
2545
+ IpAddress: string;
2546
+
2547
+ /**
2548
+ * This is the URL where users are automatically redirected after 3D secure validation (if activated)
2549
+ */
2550
+ SecureModeReturnURL: string;
2551
+
2552
+ /**
2553
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long,
2554
+ * and can only include alphanumeric characters or spaces. See here for important info.
2555
+ * Note that each bank handles this information differently, some show less or no information.
2556
+ */
2557
+ StatementDescriptor?: string;
2558
+
2559
+ /**
2560
+ * Custom data that you can add to this item
2561
+ */
2562
+ Tag?: string;
2563
+
2564
+ /**
2565
+ * Amount of the subsequent payment. If this field is empty we will take the amount entered in the NextTransactionDebitedFunds of the Recurring PayIn Registration.
2566
+ * An amount must be transmitted during either registration or pay-in (if it’s different from the registration one).
2567
+ */
2568
+ DebitedFunds?: MoneyData;
2569
+
2570
+ /**
2571
+ * Amount of the subsequent fees. If this field is empty we will take the amount entered in the NextTransactionFees
2572
+ * of the Recurring PayIn Registration. An amount must be transmitted during either registration or pay-in.
2573
+ */
2574
+ Fees?: MoneyData;
2575
+
2576
+ /**
2577
+ * Payment category
2578
+ */
2579
+ PaymentCategory?: string;
2580
+
2581
+ /**
2582
+ * Preferred Card Network
2583
+ */
2584
+ PreferredCardNetwork?: string;
2585
+ }
2586
+
2587
+ interface CreateRecurringCardPayInMIT {
2588
+ ExecutionType: "DIRECT";
2589
+
2590
+ PaymentType: "CARD";
2591
+
2592
+ /**
2593
+ * The recurring's ID
2594
+ */
2595
+ RecurringPayinRegistrationId: string;
2596
+
2597
+ /**
2598
+ * Amount of the subsequent payment. If this field is empty we will take the amount entered in the NextTransactionDebitedFunds
2599
+ * of the Recurring PayIn Registration. An amount must be transmitted during either registration or pay-in (if it’s different from the registration one).
2600
+ */
2601
+ DebitedFunds?: MoneyData;
2602
+
2603
+ /**
2604
+ * Amount of the subsequent fees. If this field is empty we will take the amount entered in the NextTransactionFees
2605
+ * of the Recurring PayIn Registration. An amount must be transmitted during either registration or pay-in.
2606
+ */
2607
+ Fees?: MoneyData;
2608
+
2609
+ /**
2610
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and can only include alphanumeric characters or spaces.
2611
+ * See here for important info. Note that each bank handles this information differently, some show less or no information.
2612
+ */
2613
+ StatementDescriptor?: string;
2614
+
2615
+ /**
2616
+ * Custom data that you can add to this item
2617
+ */
2618
+ Tag?: string;
2619
+
2620
+ /**
2621
+ * Payment category
2622
+ */
2623
+ PaymentCategory?: string;
2624
+ }
2625
+
2626
+ interface CreateRecurringApplePayPayInCIT {
2627
+ ExecutionType: "DIRECT";
2628
+
2629
+ PaymentType: "APPLEPAY";
2630
+
2631
+ /**
2632
+ * The recurring's ID
2633
+ */
2634
+ RecurringPayinRegistrationId: string;
2635
+
2636
+ /**
2637
+ * The amount of the subsequent recurring pay-in. If this field is empty, the amount entered in the
2638
+ * NextTransactionDebitedFunds of the Recurring PayIn Registration is taken into account.
2639
+ */
2640
+ DebitedFunds: MoneyData;
2641
+
2642
+ /**
2643
+ * The amount of the subsequent recurring pay-in. If this field is empty, the amount entered in the
2644
+ * NextTransactionDebitedFunds of the Recurring PayIn Registration is taken into account.
2645
+ */
2646
+ Fees: MoneyData;
2647
+
2648
+ /**
2649
+ * Custom data that you can add to this item
2650
+ */
2651
+ Tag?: string;
2652
+ }
2653
+
2654
+ interface CreateRecurringApplePayPayInMIT {
2655
+ ExecutionType: "DIRECT";
2656
+
2657
+ PaymentType: "APPLEPAY";
2658
+
2659
+ /**
2660
+ * The recurring's ID
1553
2661
  */
1554
- EndDate: Timestamp;
2662
+ RecurringPayinRegistrationId: string;
1555
2663
 
1556
2664
  /**
1557
- * Frequency at which the recurring payments will be made
2665
+ * The amount of the subsequent recurring pay-in. If this field is empty, the amount entered in the
2666
+ * NextTransactionDebitedFunds of the Recurring PayIn Registration is taken into account.
1558
2667
  */
1559
- Frequency: FrequencyType;
2668
+ DebitedFunds: MoneyData;
1560
2669
 
1561
2670
  /**
1562
- * Indicates whether the payment amount is likely to change during the payment period
2671
+ * The amount of the subsequent recurring pay-in. If this field is empty, the amount entered in the
2672
+ * NextTransactionDebitedFunds of the Recurring PayIn Registration is taken into account.
1563
2673
  */
1564
- FixedNextAmount: boolean;
2674
+ Fees: MoneyData;
1565
2675
 
1566
2676
  /**
1567
- * Indicates whether this recurring payment is a payment in installments in N times
2677
+ * The unique identifier of the user at the source of the transaction.
1568
2678
  */
1569
- FractionedPayment: boolean;
1570
-
1571
- FreeCycles?: number;
2679
+ AuthorId: string;
1572
2680
 
1573
2681
  /**
1574
- * Amount of the first payment. This amount may be different from the NextTransactionDebitedFunds.
2682
+ * Only necessary if the CreditedUserId is different from the AuthorId.
1575
2683
  */
1576
- FirstTransactionDebitedFunds: MoneyData;
2684
+ CreditedUserId?: string;
1577
2685
 
1578
2686
  /**
1579
- * Amount of the first payment fees. This amount may be different from the NextTransactionFees.
2687
+ * You can override the Billing address details of the Recurring Registration by providing data here.
2688
+ * If not provided, the Billing details from the Recurring Registration are used.
1580
2689
  */
1581
- FirstTransactionFees: MoneyData;
2690
+ Billing?: CreateBilling;
1582
2691
 
1583
2692
  /**
1584
- * Amount of subsequent payments. If this field is empty and either FixedNextAmount or FractionedPayment are TRUE,
1585
- * we will take the amount of the FirstTransactionDebitedFunds as the subsequent payment amount.
2693
+ * You can override the Shipping address details of the Recurring Registration by providing data here.
2694
+ * If not provided, the Shipping details from the Recurring Registration are used.
1586
2695
  */
1587
- NextTransactionDebitedFunds: MoneyData;
2696
+ Shipping?: CreateShipping;
1588
2697
 
1589
2698
  /**
1590
- * Amount of subsequent fees. If this field is empty and either FixedNextAmount or FractionedPayment are TRUE,
1591
- * we will take the amount of the FirstTransactionFees as the subsequent fees.
2699
+ * Custom description
1592
2700
  */
1593
- NextTransactionFees: MoneyData;
2701
+ StatementDescriptor?: string;
1594
2702
 
1595
2703
  /**
1596
- * Indicates whether the object is being used to attempt registration of an existing recurring payment
2704
+ * Custom data that you can add to this item
1597
2705
  */
1598
- Migration: boolean;
1599
-
1600
- PaymentType: RecurringPayInRegistrationPaymentType;
2706
+ Tag?: string;
1601
2707
  }
1602
2708
 
1603
- interface CreatePayInRecurringRegistration {
2709
+ interface CreateRecurringGooglePayPayInCIT {
2710
+ ExecutionType: "DIRECT";
2711
+
2712
+ PaymentType: "GOOGLE_PAY";
2713
+
1604
2714
  /**
1605
- * A user's ID
2715
+ * The unique identifier of the recurring pay-in registration.
1606
2716
  */
1607
- AuthorId: string;
2717
+ RecurringPayinRegistrationId: string;
1608
2718
 
1609
2719
  /**
1610
- * The ID of a card
2720
+ * Debited funds.
1611
2721
  */
1612
- CardId: string;
2722
+ DebitedFunds: MoneyData;
1613
2723
 
1614
2724
  /**
1615
- * The user ID who is credited (defaults to the owner of the wallet)
2725
+ * Fees.
1616
2726
  */
1617
- CreditedUserId?: string;
2727
+ Fees: MoneyData;
1618
2728
 
1619
2729
  /**
1620
- * The ID of the wallet where money will be credited
2730
+ * IP Address of the end user (format IPV4 or IPV6).
1621
2731
  */
1622
- CreditedWalletId: string;
2732
+ IpAddress: string;
1623
2733
 
1624
2734
  /**
1625
- * Amount of the first payment. This amount may be different from the NextTransactionDebitedFunds.
2735
+ * URL where users are automatically redirected after 3D secure validation (if activated).
1626
2736
  */
1627
- FirstTransactionDebitedFunds: MoneyData;
2737
+ SecureModeReturnURL: string;
1628
2738
 
1629
2739
  /**
1630
- * Amount of the first payment fees. This amount may be different from the NextTransactionFees.
2740
+ * A custom description to appear on the user's bank statement.
1631
2741
  */
1632
- FirstTransactionFees: MoneyData;
2742
+ StatementDescriptor?: string;
1633
2743
 
1634
2744
  /**
1635
- * Contains every useful informations related to the user billing
2745
+ * SecureMode { DEFAULT, FORCE }.
1636
2746
  */
1637
- Billing?: BillingOrShippingRecurringPayInData;
2747
+ SecureMode?: SecureMode;
1638
2748
 
1639
2749
  /**
1640
- * Contains every useful information's related to the user shipping
2750
+ * Describes the browser being used by the end user.
1641
2751
  */
1642
- Shipping?: BillingOrShippingRecurringPayInData;
2752
+ BrowserInfo: BrowserInfoData;
1643
2753
 
1644
2754
  /**
1645
- * Date on which the recurring payments will end
2755
+ * Author identifier.
1646
2756
  */
1647
- EndDate?: Timestamp;
2757
+ AuthorId?: string;
1648
2758
 
1649
2759
  /**
1650
- * Frequency at which the recurring payments will be made
2760
+ * Credited user identifier.
1651
2761
  */
1652
- Frequency?: FrequencyType;
2762
+ CreditedUserId?: string;
1653
2763
 
1654
2764
  /**
1655
- * Indicates whether the payment amount is likely to change during the payment period
2765
+ * Credited wallet identifier.
1656
2766
  */
1657
- FixedNextAmount?: boolean;
2767
+ CreditedWalletId?: string;
1658
2768
 
1659
2769
  /**
1660
- * Indicates whether this recurring payment is a payment in installments in N times
2770
+ * Billing information.
1661
2771
  */
1662
- FractionedPayment?: boolean;
2772
+ Billing?: CreateBilling;
1663
2773
 
1664
2774
  /**
1665
- * Indicates whether the object is being used to attempt registration of an existing recurring payment
2775
+ * Shipping information.
1666
2776
  */
1667
- Migration?: boolean;
2777
+ Shipping?: CreateShipping;
1668
2778
 
1669
2779
  /**
1670
- * Amount of subsequent payments. If this field is empty and either FixedNextAmount or FractionedPayment are TRUE,
1671
- * we will take the amount of the FirstTransactionDebitedFunds as the subsequent payment amount.
2780
+ * The URL to which the user is returned after the payment, whether the transaction is successful or not.
1672
2781
  */
1673
- NextTransactionDebitedFunds?: MoneyData;
2782
+ ReturnURL?: string;
1674
2783
 
1675
2784
  /**
1676
- * Amount of subsequent fees. If this field is empty and either FixedNextAmount or FractionedPayment are TRUE,
1677
- * we will take the amount of the FirstTransactionFees as the subsequent fees.
2785
+ * Custom data that you can add to this item
1678
2786
  */
1679
- NextTransactionFees?: MoneyData;
1680
-
1681
- FreeCycles?: number;
1682
-
1683
- PaymentType?: RecurringPayInRegistrationPaymentType
2787
+ Tag?: string;
1684
2788
  }
1685
2789
 
1686
- interface UpdatePayInRecurringRegistration {
1687
- CardId?: string;
1688
-
1689
- Billing?: BillingOrShippingRecurringPayInData;
1690
-
1691
- Shipping?: BillingOrShippingRecurringPayInData;
2790
+ interface CreateRecurringGooglePayPayInMIT {
2791
+ ExecutionType: "DIRECT";
1692
2792
 
1693
- Status?: UpdateRecurringPaymentStatus;
1694
- }
2793
+ PaymentType: "GOOGLE_PAY";
1695
2794
 
1696
- interface RecurringPayInData extends BasePayInData {
1697
2795
  /**
1698
- * The SecureMode corresponds to '3D secure' for CB Visa and MasterCard. This field lets you activate it manually.
1699
- * The field lets you activate it automatically with "DEFAULT" (Secured Mode will be activated from €50 or when MANGOPAY detects there is a higher risk ),
1700
- * "FORCE" (if you wish to specifically force the secured mode).
2796
+ * The unique identifier of the recurring pay-in registration.
1701
2797
  */
1702
- SecureMode: SecureMode;
2798
+ RecurringPayinRegistrationId: string;
1703
2799
 
1704
2800
  /**
1705
- * The ID of a card
2801
+ * Debited funds.
1706
2802
  */
1707
- CardId: string;
2803
+ DebitedFunds: MoneyData;
1708
2804
 
1709
2805
  /**
1710
- * The value is 'true' if the SecureMode was used
2806
+ * Fees.
1711
2807
  */
1712
- SecureModeNeeded: boolean;
2808
+ Fees: MoneyData;
1713
2809
 
1714
2810
  /**
1715
- * This is the URL where to redirect users to proceed to 3D secure validation
2811
+ * IP Address of the end user (format IPV4 or IPV6).
1716
2812
  */
1717
- SecureModeRedirectURL: string;
2813
+ IpAddress: string;
1718
2814
 
1719
2815
  /**
1720
- * This is the URL where users are automatically redirected after 3D secure validation (if activated)
2816
+ * URL where users are automatically redirected after 3D secure validation (if activated).
1721
2817
  */
1722
2818
  SecureModeReturnURL: string;
1723
2819
 
1724
2820
  /**
1725
- * The language to use for the payment page - needs to be the ISO code of the language
2821
+ * A custom description to appear on the user's bank statement.
1726
2822
  */
1727
- Culture: CountryISO;
2823
+ StatementDescriptor?: string;
1728
2824
 
1729
2825
  /**
1730
- * Contains useful information related to security and fraud
2826
+ * SecureMode { DEFAULT, FORCE }.
1731
2827
  */
1732
- SecurityInfo: SecurityInfoData;
2828
+ SecureMode?: SecureMode;
1733
2829
 
1734
2830
  /**
1735
- * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and can only include alphanumeric characters or spaces.
1736
- * See here for important info. Note that each bank handles this information differently, some show less or no information.
2831
+ * Describes the browser being used by the end user.
1737
2832
  */
1738
- StatementDescriptor: string;
1739
-
1740
2833
  BrowserInfo: BrowserInfoData;
1741
2834
 
1742
- IpAddress: string;
1743
-
1744
- Billing: BillingOrShippingRecurringPayInData;
1745
-
1746
- Shipping: BillingOrShippingRecurringPayInData;
1747
-
1748
- Requested3DSVersion: _3DSVersion;
1749
-
1750
- Applied3DSVersion: _3DSVersion;
1751
-
1752
- RecurringPayinRegistrationId: string;
1753
-
1754
2835
  /**
1755
- * Information about the card
1756
- */
1757
- CardInfo: CardInfoData;
1758
-
1759
- PaymentCategory?: string;
1760
-
1761
- /**
1762
- * Authentication result
2836
+ * Author identifier.
1763
2837
  */
1764
- AuthenticationResult?: AuthenticationResult;
1765
- }
2838
+ AuthorId: string;
1766
2839
 
1767
- interface CreateRecurringPayInCIT {
1768
2840
  /**
1769
- * The recurring's ID
2841
+ * Credited user identifier.
1770
2842
  */
1771
- RecurringPayinRegistrationId: string;
2843
+ CreditedUserId?: string;
1772
2844
 
1773
2845
  /**
1774
- * This object describes the Browser being user by an end user
2846
+ * Credited wallet identifier.
1775
2847
  */
1776
- BrowserInfo: BrowserInfoData;
2848
+ CreditedWalletId?: string;
1777
2849
 
1778
2850
  /**
1779
- * IP Address of the end user (format IPV4 or IPV6)
2851
+ * Billing information.
1780
2852
  */
1781
- IpAddress: string;
2853
+ Billing?: CreateBilling;
1782
2854
 
1783
2855
  /**
1784
- * This is the URL where users are automatically redirected after 3D secure validation (if activated)
2856
+ * Shipping information.
1785
2857
  */
1786
- SecureModeReturnURL: string;
2858
+ Shipping?: CreateShipping;
1787
2859
 
1788
2860
  /**
1789
- * A custom description to appear on the user's bank statement. It can be up to 10 characters long,
1790
- * and can only include alphanumeric characters or spaces. See here for important info.
1791
- * Note that each bank handles this information differently, some show less or no information.
2861
+ * The URL to which the user is returned after the payment, whether the transaction is successful or not.
1792
2862
  */
1793
- StatementDescriptor?: string;
2863
+ ReturnURL?: string;
1794
2864
 
1795
2865
  /**
1796
2866
  * Custom data that you can add to this item
1797
2867
  */
1798
2868
  Tag?: string;
2869
+ }
1799
2870
 
2871
+ interface CreateRecurringPayPalPayInCIT {
1800
2872
  /**
1801
- * Amount of the subsequent payment. If this field is empty we will take the amount entered in the NextTransactionDebitedFunds of the Recurring PayIn Registration.
1802
- * An amount must be transmitted during either registration or pay-in (if it’s different from the registration one).
2873
+ * ExecutionType. Marked as optional until the old method is removed and mandatory after.
1803
2874
  */
1804
- DebitedFunds?: MoneyData;
2875
+ ExecutionType?: "WEB";
1805
2876
 
1806
2877
  /**
1807
- * Amount of the subsequent fees. If this field is empty we will take the amount entered in the NextTransactionFees
1808
- * of the Recurring PayIn Registration. An amount must be transmitted during either registration or pay-in.
2878
+ * PaymentType. Marked as optional until the old method is removed and mandatory after.
1809
2879
  */
1810
- Fees?: MoneyData;
1811
-
1812
- PaymentCategory?: string;
1813
- }
2880
+ PaymentType?: "PAYPAL";
1814
2881
 
1815
- interface CreateRecurringPayPalPayInCIT {
1816
2882
  /**
1817
2883
  * The unique identifier of the recurring pay-in registration.
1818
2884
  */
@@ -1908,6 +2974,16 @@ export namespace payIn {
1908
2974
  }
1909
2975
 
1910
2976
  interface CreateRecurringPayPalPayInMIT {
2977
+ /**
2978
+ * ExecutionType. Marked as optional until the old method is removed and mandatory after.
2979
+ */
2980
+ ExecutionType?: "WEB";
2981
+
2982
+ /**
2983
+ * PaymentType. Marked as optional until the old method is removed and mandatory after.
2984
+ */
2985
+ PaymentType?: "PAYPAL";
2986
+
1911
2987
  /**
1912
2988
  * The unique identifier of the recurring pay-in registration.
1913
2989
  */
@@ -1986,6 +3062,9 @@ export namespace payIn {
1986
3062
  DataCollectionId?: string;
1987
3063
  }
1988
3064
 
3065
+ /**
3066
+ * @deprecated Use 'CreateDepositPreAuthorizedPayIn' instead
3067
+ */
1989
3068
  interface CreateCardPreAuthorizedDepositPayIn {
1990
3069
  AuthorId?: string;
1991
3070
 
@@ -2000,6 +3079,23 @@ export namespace payIn {
2000
3079
  Tag?: string;
2001
3080
  }
2002
3081
 
3082
+ interface CreateDepositPreAuthorizedPayIn {
3083
+ AuthorId: string;
3084
+
3085
+ CreditedWalletId: string;
3086
+
3087
+ DebitedFunds: MoneyData;
3088
+
3089
+ Fees: MoneyData;
3090
+
3091
+ DepositId: string;
3092
+
3093
+ Tag?: string;
3094
+ }
3095
+
3096
+ /**
3097
+ * @deprecated Use 'DepositPreAuthorizedPayInData' instead
3098
+ */
2003
3099
  interface CardPreAuthorizedDepositPayInData extends entityBase.EntityBaseData {
2004
3100
  AuthorId: string;
2005
3101
 
@@ -2030,6 +3126,38 @@ export namespace payIn {
2030
3126
  Fees: MoneyData;
2031
3127
  }
2032
3128
 
3129
+ interface DepositPreAuthorizedPayInData extends entityBase.EntityBaseData {
3130
+ AuthorId: string;
3131
+
3132
+ CreditedUserId: string;
3133
+
3134
+ DepositId: string;
3135
+
3136
+ ResultCode: string;
3137
+
3138
+ ResultMessage: string;
3139
+
3140
+ Status: transaction.TransactionStatus;
3141
+
3142
+ ExecutionDate: Timestamp;
3143
+
3144
+ Type: transaction.TransactionType;
3145
+
3146
+ Nature: transaction.TransactionNature;
3147
+
3148
+ PaymentType: PayInPaymentType;
3149
+
3150
+ ExecutionType: PayInExecutionType;
3151
+
3152
+ DebitedFunds: MoneyData;
3153
+
3154
+ CreditedFunds: MoneyData;
3155
+
3156
+ Fees: MoneyData;
3157
+
3158
+ AuthenticationResult: AuthenticationResult;
3159
+ }
3160
+
2033
3161
  interface CreateApplePayPayIn {
2034
3162
  ExecutionType: "DIRECT";
2035
3163
 
@@ -2072,6 +3200,11 @@ export namespace payIn {
2072
3200
  * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
2073
3201
  */
2074
3202
  ProfilingAttemptReference?: string;
3203
+
3204
+ /**
3205
+ * Information about the payment flow and its Beneficiaries.
3206
+ */
3207
+ FlowDescriptor?: FlowDescriptor;
2075
3208
  }
2076
3209
  interface ApplePayPayInData extends BasePayInData {
2077
3210
  ExecutionType: "DIRECT";
@@ -2211,6 +3344,11 @@ export namespace payIn {
2211
3344
  * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
2212
3345
  */
2213
3346
  ProfilingAttemptReference?: string;
3347
+
3348
+ /**
3349
+ * Information about the payment flow and its Beneficiaries.
3350
+ */
3351
+ FlowDescriptor?: FlowDescriptor;
2214
3352
  }
2215
3353
 
2216
3354
  interface GooglePayDirectPayInData extends BasePayInData {
@@ -2450,6 +3588,11 @@ export namespace payIn {
2450
3588
  * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
2451
3589
  */
2452
3590
  ProfilingAttemptReference?: string;
3591
+
3592
+ /**
3593
+ * Information about the payment flow and its Beneficiaries.
3594
+ */
3595
+ FlowDescriptor?: FlowDescriptor;
2453
3596
  }
2454
3597
 
2455
3598
  interface IdealWebPayInData extends BasePayInData {
@@ -2535,6 +3678,11 @@ export namespace payIn {
2535
3678
  * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
2536
3679
  */
2537
3680
  ProfilingAttemptReference?: string;
3681
+
3682
+ /**
3683
+ * Information about the payment flow and its Beneficiaries.
3684
+ */
3685
+ FlowDescriptor?: FlowDescriptor;
2538
3686
  }
2539
3687
 
2540
3688
  interface GiropayWebPayInData extends BasePayInData {
@@ -2728,6 +3876,11 @@ export namespace payIn {
2728
3876
  * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
2729
3877
  */
2730
3878
  ProfilingAttemptReference?: string;
3879
+
3880
+ /**
3881
+ * Information about the payment flow and its Beneficiaries.
3882
+ */
3883
+ FlowDescriptor?: FlowDescriptor;
2731
3884
  }
2732
3885
 
2733
3886
  interface CreateTwintWebPayIn {
@@ -2776,6 +3929,11 @@ export namespace payIn {
2776
3929
  * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
2777
3930
  */
2778
3931
  ProfilingAttemptReference?: string;
3932
+
3933
+ /**
3934
+ * Information about the payment flow and its Beneficiaries.
3935
+ */
3936
+ FlowDescriptor?: FlowDescriptor;
2779
3937
  }
2780
3938
 
2781
3939
  interface BinData {
@@ -3985,4 +5143,13 @@ export namespace payIn {
3985
5143
  interface AuthenticationResult {
3986
5144
  AuthenticationType?: string;
3987
5145
  }
3988
- }
5146
+
5147
+ interface FlowDescriptor {
5148
+ FlowId?: string;
5149
+ Beneficiaries?: FlowDescriptorBeneficiary[];
5150
+ }
5151
+
5152
+ interface FlowDescriptorBeneficiary {
5153
+ UserId: string;
5154
+ }
5155
+ }