mangopay4-nodejs-sdk 1.64.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 (353) hide show
  1. package/.github/workflows/node.js.yml +32 -0
  2. package/.github/workflows/npm-publish.yml +26 -0
  3. package/.jshintrc +16 -0
  4. package/CHANGELOG.md +946 -0
  5. package/LICENSE +21 -0
  6. package/README.md +179 -0
  7. package/docs/BankAccounts.md +35 -0
  8. package/docs/BankingAliases.md +108 -0
  9. package/docs/CardPreAuthorizations.md +55 -0
  10. package/docs/CardRegistrations.md +55 -0
  11. package/docs/Cards.md +82 -0
  12. package/docs/Clients.md +142 -0
  13. package/docs/DisputeDocuments.md +53 -0
  14. package/docs/Disputes.md +292 -0
  15. package/docs/Events.md +23 -0
  16. package/docs/Hooks.md +68 -0
  17. package/docs/Idempotency.md +11 -0
  18. package/docs/KycDocuments.md +52 -0
  19. package/docs/Mandates.md +125 -0
  20. package/docs/OptionsHelper.md +32 -0
  21. package/docs/PayIns.md +72 -0
  22. package/docs/PayOuts.md +55 -0
  23. package/docs/README.md +131 -0
  24. package/docs/Refunds.md +25 -0
  25. package/docs/Reports.md +63 -0
  26. package/docs/Repudiations.md +25 -0
  27. package/docs/Responses.md +33 -0
  28. package/docs/Transfers.md +72 -0
  29. package/docs/UboDeclarations.md +70 -0
  30. package/docs/Users.md +322 -0
  31. package/docs/Wallets.md +70 -0
  32. package/docs/templates/class.mustache +11 -0
  33. package/docs/templates/file.mustache +53 -0
  34. package/docs/templates/function.mustache +33 -0
  35. package/docs/templates/index.mustache +26 -0
  36. package/docs/templates/overview.mustache +1 -0
  37. package/examples/createUsers.js +112 -0
  38. package/examples/createWallet.js +28 -0
  39. package/examples/failedRequest.js +20 -0
  40. package/examples/getBankAccounts.js +29 -0
  41. package/examples/getUserEmoney.js +16 -0
  42. package/examples/getUsers.js +32 -0
  43. package/examples/readResponseHeaders.js +42 -0
  44. package/index.js +1 -0
  45. package/lib/Model.js +58 -0
  46. package/lib/api.js +467 -0
  47. package/lib/apiMethods.js +270 -0
  48. package/lib/config.js +57 -0
  49. package/lib/log.js +9 -0
  50. package/lib/mangopay.js +8 -0
  51. package/lib/models/Address.js +32 -0
  52. package/lib/models/BankAccount.js +45 -0
  53. package/lib/models/BankAccountDetails.js +7 -0
  54. package/lib/models/BankAccountDetailsCA.js +12 -0
  55. package/lib/models/BankAccountDetailsGB.js +10 -0
  56. package/lib/models/BankAccountDetailsIBAN.js +10 -0
  57. package/lib/models/BankAccountDetailsOTHER.js +16 -0
  58. package/lib/models/BankAccountDetailsUS.js +14 -0
  59. package/lib/models/BankAccountType.js +8 -0
  60. package/lib/models/BankingAlias.js +37 -0
  61. package/lib/models/BankingAliasIBAN.js +27 -0
  62. package/lib/models/Billing.js +14 -0
  63. package/lib/models/BinData.js +16 -0
  64. package/lib/models/Birthplace.js +10 -0
  65. package/lib/models/BrowserInfo.js +15 -0
  66. package/lib/models/Card.js +19 -0
  67. package/lib/models/CardInfo.js +32 -0
  68. package/lib/models/CardPreAuthorization.js +144 -0
  69. package/lib/models/CardRegistration.js +29 -0
  70. package/lib/models/CardValidation.js +19 -0
  71. package/lib/models/CategorizeUserLegal.js +15 -0
  72. package/lib/models/CategorizeUserNatural.js +18 -0
  73. package/lib/models/Check.js +13 -0
  74. package/lib/models/CheckData.js +8 -0
  75. package/lib/models/Client.js +62 -0
  76. package/lib/models/ClientWallet.js +28 -0
  77. package/lib/models/Conversion.js +19 -0
  78. package/lib/models/ConversionRate.js +10 -0
  79. package/lib/models/CountryAuthorization.js +12 -0
  80. package/lib/models/DebitedBankAccount.js +15 -0
  81. package/lib/models/DeclaredUbo.js +29 -0
  82. package/lib/models/DeclaredUboStatus.js +17 -0
  83. package/lib/models/Deposit.js +29 -0
  84. package/lib/models/Dispute.js +46 -0
  85. package/lib/models/DisputeDocument.js +10 -0
  86. package/lib/models/DisputeDocumentPage.js +12 -0
  87. package/lib/models/DisputeReason.js +11 -0
  88. package/lib/models/Document.js +12 -0
  89. package/lib/models/DocumentPageConsult.js +17 -0
  90. package/lib/models/EMoney.js +30 -0
  91. package/lib/models/EntityBase.js +70 -0
  92. package/lib/models/Hook.js +19 -0
  93. package/lib/models/IdempotencyResponse.js +11 -0
  94. package/lib/models/IdentityVerification.js +12 -0
  95. package/lib/models/KycDocument.js +11 -0
  96. package/lib/models/KycDocumentStatus.js +7 -0
  97. package/lib/models/KycDocumentType.js +7 -0
  98. package/lib/models/KycPage.js +12 -0
  99. package/lib/models/LegalPersonType.js +7 -0
  100. package/lib/models/LegalRepresentative.js +16 -0
  101. package/lib/models/Mandate.js +69 -0
  102. package/lib/models/MandateStatus.js +7 -0
  103. package/lib/models/Money.js +16 -0
  104. package/lib/models/PayByBankSupportedBank.js +7 -0
  105. package/lib/models/PayIn.js +36 -0
  106. package/lib/models/PayInExecutionDetails.js +7 -0
  107. package/lib/models/PayInExecutionDetailsBankingAlias.js +19 -0
  108. package/lib/models/PayInExecutionDetailsDirect.js +29 -0
  109. package/lib/models/PayInExecutionDetailsWeb.js +40 -0
  110. package/lib/models/PayInExecutionType.js +5 -0
  111. package/lib/models/PayInIntent.js +20 -0
  112. package/lib/models/PayInIntentSplit.js +14 -0
  113. package/lib/models/PayInIntentSplits.js +7 -0
  114. package/lib/models/PayInPaymentDetails.js +7 -0
  115. package/lib/models/PayInPaymentDetailsApplePay.js +19 -0
  116. package/lib/models/PayInPaymentDetailsBancontact.js +13 -0
  117. package/lib/models/PayInPaymentDetailsBankWire.js +23 -0
  118. package/lib/models/PayInPaymentDetailsBankingAlias.js +18 -0
  119. package/lib/models/PayInPaymentDetailsBizum.js +23 -0
  120. package/lib/models/PayInPaymentDetailsBlik.js +17 -0
  121. package/lib/models/PayInPaymentDetailsCard.js +10 -0
  122. package/lib/models/PayInPaymentDetailsCardDirect.js +14 -0
  123. package/lib/models/PayInPaymentDetailsCardWeb.js +28 -0
  124. package/lib/models/PayInPaymentDetailsDirectDebitDirect.js +22 -0
  125. package/lib/models/PayInPaymentDetailsDirectDebitWeb.js +13 -0
  126. package/lib/models/PayInPaymentDetailsGiropay.js +15 -0
  127. package/lib/models/PayInPaymentDetailsGooglePay.js +35 -0
  128. package/lib/models/PayInPaymentDetailsIdeal.js +25 -0
  129. package/lib/models/PayInPaymentDetailsKlarna.js +36 -0
  130. package/lib/models/PayInPaymentDetailsMbway.js +20 -0
  131. package/lib/models/PayInPaymentDetailsMultibanco.js +14 -0
  132. package/lib/models/PayInPaymentDetailsPayByBank.js +71 -0
  133. package/lib/models/PayInPaymentDetailsPayPal.js +63 -0
  134. package/lib/models/PayInPaymentDetailsPayconiq.js +23 -0
  135. package/lib/models/PayInPaymentDetailsPreAuthorized.js +10 -0
  136. package/lib/models/PayInPaymentDetailsSatispay.js +19 -0
  137. package/lib/models/PayInPaymentDetailsSwish.js +35 -0
  138. package/lib/models/PayInPaymentDetailsTwint.js +15 -0
  139. package/lib/models/PayInPaymentType.js +21 -0
  140. package/lib/models/PayInRecurringRegistration.js +64 -0
  141. package/lib/models/PayInTemplateURLOptions.js +10 -0
  142. package/lib/models/PayOut.js +24 -0
  143. package/lib/models/PayOutPaymentDetails.js +7 -0
  144. package/lib/models/PayOutPaymentDetailsBankWire.js +32 -0
  145. package/lib/models/PayOutPaymentType.js +3 -0
  146. package/lib/models/PaymentData.js +20 -0
  147. package/lib/models/PaymentMethodMetadata.js +38 -0
  148. package/lib/models/PayoutMethods.js +7 -0
  149. package/lib/models/PendingUserAction.js +16 -0
  150. package/lib/models/PersonType.js +5 -0
  151. package/lib/models/PlatformCategorization.js +16 -0
  152. package/lib/models/PlatformType.js +10 -0
  153. package/lib/models/Quote.js +11 -0
  154. package/lib/models/Recipient.js +20 -0
  155. package/lib/models/RecipientSchema.js +17 -0
  156. package/lib/models/RecurringPayIn.js +10 -0
  157. package/lib/models/RecurringPayInCIT.js +32 -0
  158. package/lib/models/RecurringPayInCurrentState.js +24 -0
  159. package/lib/models/RecurringPayInMIT.js +27 -0
  160. package/lib/models/RecurringPayInPut.js +24 -0
  161. package/lib/models/Refund.js +26 -0
  162. package/lib/models/RefundReasonDetails.js +10 -0
  163. package/lib/models/Report.js +54 -0
  164. package/lib/models/ReportFilter.js +52 -0
  165. package/lib/models/ReportFilterV2.js +11 -0
  166. package/lib/models/ReportV2.js +28 -0
  167. package/lib/models/Repudiation.js +51 -0
  168. package/lib/models/SecurityInfo.js +12 -0
  169. package/lib/models/Settlement.js +16 -0
  170. package/lib/models/SettlementTransfer.js +37 -0
  171. package/lib/models/Shipping.js +14 -0
  172. package/lib/models/ShippingAddress.js +25 -0
  173. package/lib/models/ShippingPreference.js +5 -0
  174. package/lib/models/Transaction.js +50 -0
  175. package/lib/models/Transfer.js +13 -0
  176. package/lib/models/Ubo.js +19 -0
  177. package/lib/models/UboDeclaration.js +42 -0
  178. package/lib/models/UboDeclarationRefusedReasonType.js +23 -0
  179. package/lib/models/UboDeclarationStatus.js +26 -0
  180. package/lib/models/UboRefusedReasonType.js +14 -0
  181. package/lib/models/User.js +66 -0
  182. package/lib/models/UserCategory.js +5 -0
  183. package/lib/models/UserConsent.js +7 -0
  184. package/lib/models/UserDataFormatValidation.js +7 -0
  185. package/lib/models/UserEnrollmentResult.js +7 -0
  186. package/lib/models/UserLegal.js +65 -0
  187. package/lib/models/UserLegalOwner.js +66 -0
  188. package/lib/models/UserLegalPayer.js +66 -0
  189. package/lib/models/UserLegalSca.js +57 -0
  190. package/lib/models/UserNatural.js +51 -0
  191. package/lib/models/UserNaturalCapacity.js +13 -0
  192. package/lib/models/UserNaturalOwner.js +55 -0
  193. package/lib/models/UserNaturalPayer.js +55 -0
  194. package/lib/models/UserNaturalPut.js +49 -0
  195. package/lib/models/UserNaturalSca.js +56 -0
  196. package/lib/models/VirtualAccount.js +22 -0
  197. package/lib/models/Wallet.js +32 -0
  198. package/lib/models/index.js +102 -0
  199. package/lib/service.js +14 -0
  200. package/lib/services/BankAccounts.js +31 -0
  201. package/lib/services/BankingAliases.js +137 -0
  202. package/lib/services/CardPreAuthorizations.js +75 -0
  203. package/lib/services/CardRegistrations.js +64 -0
  204. package/lib/services/Cards.js +168 -0
  205. package/lib/services/Clients.js +196 -0
  206. package/lib/services/Conversions.js +155 -0
  207. package/lib/services/Deposits.js +109 -0
  208. package/lib/services/DisputeDocuments.js +65 -0
  209. package/lib/services/Disputes.js +409 -0
  210. package/lib/services/Events.js +24 -0
  211. package/lib/services/Hooks.js +81 -0
  212. package/lib/services/Idempotency.js +17 -0
  213. package/lib/services/IdentityVerifications.js +48 -0
  214. package/lib/services/KycDocuments.js +66 -0
  215. package/lib/services/Mandates.js +161 -0
  216. package/lib/services/OptionsHelper.js +20 -0
  217. package/lib/services/PayIns.js +690 -0
  218. package/lib/services/PayOuts.js +110 -0
  219. package/lib/services/Recipients.js +117 -0
  220. package/lib/services/Refunds.js +29 -0
  221. package/lib/services/Regulatory.js +29 -0
  222. package/lib/services/Reports.js +61 -0
  223. package/lib/services/ReportsV2.js +55 -0
  224. package/lib/services/Repudiations.js +33 -0
  225. package/lib/services/Responses.js +23 -0
  226. package/lib/services/Settlements.js +74 -0
  227. package/lib/services/Transfers.js +87 -0
  228. package/lib/services/UboDeclarations.js +135 -0
  229. package/lib/services/Users.js +831 -0
  230. package/lib/services/VirtualAccounts.js +99 -0
  231. package/lib/services/Wallets.js +85 -0
  232. package/lib/services/index.js +34 -0
  233. package/lib/utils.js +36 -0
  234. package/package.json +40 -0
  235. package/test/TestKycPageFile.png +0 -0
  236. package/test/helpers.js +1431 -0
  237. package/test/main.js +10 -0
  238. package/test/mocha.opts +3 -0
  239. package/test/services/BankAccounts.js +46 -0
  240. package/test/services/BankingAliases.js +89 -0
  241. package/test/services/CardPreAuthorizations.js +70 -0
  242. package/test/services/CardRegistrations.js +239 -0
  243. package/test/services/Cards.js +54 -0
  244. package/test/services/Clients.js +235 -0
  245. package/test/services/Conversions.js +308 -0
  246. package/test/services/Deposits.js +148 -0
  247. package/test/services/Disputes.js +542 -0
  248. package/test/services/EMoney.js +54 -0
  249. package/test/services/Events.js +143 -0
  250. package/test/services/Hooks.js +109 -0
  251. package/test/services/Idempotency.js +46 -0
  252. package/test/services/IdentityVerifications.js +68 -0
  253. package/test/services/KycDocuments.js +73 -0
  254. package/test/services/Mandates.js +256 -0
  255. package/test/services/PayIns.js +2553 -0
  256. package/test/services/PayOuts.js +106 -0
  257. package/test/services/RateLimit.js +48 -0
  258. package/test/services/Recipients.js +234 -0
  259. package/test/services/Refunds.js +123 -0
  260. package/test/services/Regulatory.js +45 -0
  261. package/test/services/Reports.js +114 -0
  262. package/test/services/ReportsV2.js +306 -0
  263. package/test/services/Repudiations.js +22 -0
  264. package/test/services/Settlements.js +58 -0
  265. package/test/services/Tokens.js +55 -0
  266. package/test/services/Transfers.js +137 -0
  267. package/test/services/UboDeclarations.js +135 -0
  268. package/test/services/Users.js +1303 -0
  269. package/test/services/VirtualAccounts.js +105 -0
  270. package/test/services/Wallets.js +132 -0
  271. package/test/settlement_sample.csv +8 -0
  272. package/typings/base.d.ts +308 -0
  273. package/typings/enums.d.ts +204 -0
  274. package/typings/index.d.ts +885 -0
  275. package/typings/index.test-d.ts +1535 -0
  276. package/typings/models/address.d.ts +70 -0
  277. package/typings/models/bankAccount.d.ts +235 -0
  278. package/typings/models/bankingAlias.d.ts +97 -0
  279. package/typings/models/billing.d.ts +42 -0
  280. package/typings/models/birthplace.d.ts +9 -0
  281. package/typings/models/card.d.ts +119 -0
  282. package/typings/models/cardPreauthorization.d.ts +157 -0
  283. package/typings/models/cardRegistration.d.ts +83 -0
  284. package/typings/models/cardValidation.d.ts +125 -0
  285. package/typings/models/client.d.ts +208 -0
  286. package/typings/models/conversion.d.ts +225 -0
  287. package/typings/models/conversionRate.d.ts +29 -0
  288. package/typings/models/countryAuthorization.d.ts +16 -0
  289. package/typings/models/deposit.d.ts +104 -0
  290. package/typings/models/dispute.d.ts +116 -0
  291. package/typings/models/disputeDocument.d.ts +119 -0
  292. package/typings/models/entityBase.d.ts +9 -0
  293. package/typings/models/event.d.ts +142 -0
  294. package/typings/models/hook.d.ts +39 -0
  295. package/typings/models/idempotency.d.ts +36 -0
  296. package/typings/models/identityVerification.d.ts +98 -0
  297. package/typings/models/kycDocument.d.ts +114 -0
  298. package/typings/models/mandate.d.ts +93 -0
  299. package/typings/models/money.d.ts +45 -0
  300. package/typings/models/payIn.d.ts +3742 -0
  301. package/typings/models/payOut.d.ts +144 -0
  302. package/typings/models/recipient.d.ts +242 -0
  303. package/typings/models/refund.d.ts +92 -0
  304. package/typings/models/report.d.ts +234 -0
  305. package/typings/models/reportV2.d.ts +145 -0
  306. package/typings/models/repudiation.d.ts +26 -0
  307. package/typings/models/securityInfo.d.ts +12 -0
  308. package/typings/models/settlement.d.ts +50 -0
  309. package/typings/models/settlementTransfer.d.ts +37 -0
  310. package/typings/models/shipping.d.ts +37 -0
  311. package/typings/models/shippingAddress.d.ts +15 -0
  312. package/typings/models/transaction.d.ts +85 -0
  313. package/typings/models/transfer.d.ts +119 -0
  314. package/typings/models/uboDeclaration.d.ts +100 -0
  315. package/typings/models/user.d.ts +1001 -0
  316. package/typings/models/virtualAccount.d.ts +182 -0
  317. package/typings/models/wallet.d.ts +46 -0
  318. package/typings/models.d.ts +74 -0
  319. package/typings/services/BankAccounts.d.ts +12 -0
  320. package/typings/services/BankingAliases.d.ts +51 -0
  321. package/typings/services/CardPreauthorizations.d.ts +44 -0
  322. package/typings/services/CardRegistrations.d.ts +43 -0
  323. package/typings/services/Cards.d.ts +80 -0
  324. package/typings/services/Clients.d.ts +77 -0
  325. package/typings/services/Conversions.d.ts +23 -0
  326. package/typings/services/Deposits.d.ts +20 -0
  327. package/typings/services/DisputeDocuments.d.ts +27 -0
  328. package/typings/services/Disputes.d.ts +169 -0
  329. package/typings/services/Events.d.ts +11 -0
  330. package/typings/services/Hooks.d.ts +33 -0
  331. package/typings/services/Idempotency.d.ts +7 -0
  332. package/typings/services/IdentityVerifications.d.ts +29 -0
  333. package/typings/services/KycDocuments.d.ts +38 -0
  334. package/typings/services/Mandates.d.ts +59 -0
  335. package/typings/services/OptionsHelper.d.ts +11 -0
  336. package/typings/services/PayIns.d.ts +319 -0
  337. package/typings/services/PayOuts.d.ts +34 -0
  338. package/typings/services/Recipients.d.ts +55 -0
  339. package/typings/services/Refunds.d.ts +12 -0
  340. package/typings/services/Regulatory.d.ts +17 -0
  341. package/typings/services/Reports.d.ts +26 -0
  342. package/typings/services/ReportsV2.d.ts +26 -0
  343. package/typings/services/Repudiations.d.ts +12 -0
  344. package/typings/services/Responses.d.ts +10 -0
  345. package/typings/services/Settlements.d.ts +28 -0
  346. package/typings/services/Transfers.d.ts +38 -0
  347. package/typings/services/UboDeclarations.d.ts +81 -0
  348. package/typings/services/Users.d.ts +308 -0
  349. package/typings/services/VirtualAccounts.d.ts +42 -0
  350. package/typings/services/Wallets.d.ts +36 -0
  351. package/typings/tsconfig.json +20 -0
  352. package/typings/tslint.json +11 -0
  353. package/typings/types.d.ts +652 -0
@@ -0,0 +1,3742 @@
1
+ import { CountryISO, CultureISO, CurrencyISO, PickPartialRequired, SecureMode, Timestamp, ValueOf } from "../types";
2
+ import { enums } from "../enums";
3
+ import { transaction } from "./transaction";
4
+ import { card } from "./card";
5
+ import { entityBase } from "./entityBase";
6
+ import { billing } from "./billing";
7
+ import { base } from "../base";
8
+ import { money } from "./money";
9
+ import { securityInfo } from "./securityInfo";
10
+ import { shipping } from "./shipping";
11
+ import { address } from "./address";
12
+
13
+ export namespace payIn {
14
+ import BillingData = billing.BillingData;
15
+ import BillingOrShippingRecurringPayInData = billing.BillingOrShippingRecurringPayInData;
16
+ import BrowserInfoData = base.BrowserInfoData;
17
+ import MoneyData = money.MoneyData;
18
+ import SecurityInfoData = securityInfo.SecurityInfoData;
19
+ import ShippingData = shipping.ShippingData;
20
+ import CreateShipping = shipping.CreateShipping;
21
+ import CreateBilling = billing.CreateBilling;
22
+ import CardInfoData = card.CardInfoData;
23
+
24
+ type _3DSVersion = "V1" | "V2_1";
25
+
26
+ type PayInData =
27
+ | CardDirectPayInData
28
+ | CardPreAuthorizedPayInData
29
+ | CardWebPayInData
30
+ | BankWireDirectPayInData
31
+ | BankWireExternalInstructionPayInData
32
+ | PayconiqWebPayInData
33
+ | DirectDebitDirectPayInData
34
+ | MbwayWebPayInData
35
+ | BancontactWebPayInData
36
+ | BizumWebPayInData
37
+ | MultibancoWebPayInData
38
+ | SatispayWebPayInData
39
+ | BlikWebPayInData
40
+ | ApplePayPayInData
41
+ | GooglePayDirectPayInData
42
+ | KlarnaWebPayInData
43
+ | IdealWebPayInData
44
+ | GiropayWebPayInData
45
+ | SwishWebPayInData
46
+ | PayByBankWebPayInData;
47
+
48
+ type PayInPaymentType = ValueOf<enums.IPayInPaymentType>;
49
+
50
+ type RecurringPayInRegistrationPaymentType = ValueOf<enums.IRecurringPayInRegistrationPaymentType>;
51
+
52
+ type PayInExecutionType = ValueOf<enums.IPayInExecutionType> | "EXTERNAL_INSTRUCTION";
53
+
54
+ type RecurringType = "CLASSIC_SUBSCRIPTION" | "FRACTIONED_PAYMENT" | "CUSTOM";
55
+
56
+ type DirectDebitType = "SOFORT" | "GIROPAY";
57
+
58
+ type FrequencyType = "Daily" | "Weekly" | "TwiceAMonth" | "Monthly" | "Bimonthly" | "Quarterly" | "Semiannual" | "Annual" | "Biannual";
59
+
60
+ type RecurringPaymentStatus = "CREATED" | "AUTHENTICATION_NEEDED" | "IN_PROGRESS" | "ENDED";
61
+
62
+ type UpdateRecurringPaymentStatus = "ENDED";
63
+
64
+ type ShippingPreference = ValueOf<enums.IShippingPreference>;
65
+
66
+ interface TemplateURLOptions {
67
+ Payline: string;
68
+
69
+ PAYLINEV2: string;
70
+ }
71
+
72
+ interface BasePayInData extends entityBase.EntityBaseData {
73
+ /**
74
+ * Information about the funds that are being debited
75
+ */
76
+ DebitedFunds: MoneyData;
77
+
78
+ /**
79
+ * Details about the funds that are being credited (DebitedFunds – Fees = CreditedFunds)
80
+ */
81
+ CreditedFunds: MoneyData;
82
+
83
+ /**
84
+ * Information about the fees that were taken by the client for this transaction (and were hence transferred to the Client's platform wallet)
85
+ */
86
+ Fees: MoneyData;
87
+
88
+ /**
89
+ * The ID of the wallet that was debited
90
+ */
91
+ DebitedWalletId: string;
92
+
93
+ /**
94
+ * The ID of the wallet where money will be credited
95
+ */
96
+ CreditedWalletId: string;
97
+
98
+ /**
99
+ * A user's ID
100
+ */
101
+ AuthorId: string;
102
+
103
+ /**
104
+ * The user ID who is credited (defaults to the owner of the wallet)
105
+ */
106
+ CreditedUserId: string;
107
+
108
+ /**
109
+ * The nature of the transaction
110
+ */
111
+ Nature: transaction.TransactionNature;
112
+
113
+ /**
114
+ * The status of the transaction
115
+ */
116
+ Status: transaction.TransactionStatus;
117
+
118
+ /**
119
+ * When the transaction happened
120
+ */
121
+ ExecutionDate: Timestamp;
122
+
123
+ /**
124
+ * The result code
125
+ */
126
+ ResultCode: string;
127
+
128
+ /**
129
+ * A verbal explanation of the ResultCode
130
+ */
131
+ ResultMessage: string;
132
+
133
+ /**
134
+ * The type of the transaction
135
+ */
136
+ Type: transaction.TransactionType;
137
+
138
+ /**
139
+ * The type of payin
140
+ */
141
+ PaymentType: PayInPaymentType;
142
+
143
+ /**
144
+ * The type of execution for the payin
145
+ */
146
+ ExecutionType: PayInExecutionType;
147
+
148
+ /**
149
+ * The unique reference generated for the profiling session,
150
+ * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
151
+ */
152
+ ProfilingAttemptReference?: string;
153
+ }
154
+
155
+ interface CardWebPayInData extends BasePayInData {
156
+ ExecutionType: "WEB";
157
+
158
+ PaymentType: "CARD";
159
+
160
+ /**
161
+ * The URL to redirect to after payment (whether successful or not)
162
+ */
163
+ ReturnURL: string;
164
+
165
+ /**
166
+ * The type of card
167
+ */
168
+ CardType: card.CardType;
169
+
170
+ /**
171
+ * The SecureMode corresponds to '3D secure' for CB Visa and MasterCard. This field lets you activate it manually. The field lets you activate it
172
+ * automatically with "DEFAULT" (Secured Mode will be activated from €50 or when MANGOPAY detects there is a higher risk ), "FORCE" (if you wish to specifically force the secured mode).
173
+ */
174
+ SecureMode: SecureMode;
175
+
176
+ /**
177
+ * The language to use for the payment page - needs to be the ISO code of the language
178
+ */
179
+ Culture: CountryISO;
180
+
181
+ /**
182
+ * The URL to use for the payment page template
183
+ */
184
+ TemplateURL: string;
185
+
186
+ /**
187
+ * 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.
188
+ * See here for important info. Note that each bank handles this information differently, some show less or no information.
189
+ */
190
+ StatementDescriptor: string;
191
+
192
+ /**
193
+ * The URL to redirect to user to for them to proceed with the payment
194
+ */
195
+ RedirectURL: string;
196
+
197
+ /**
198
+ * Name of the end-user’s bank
199
+ */
200
+ BankName: string;
201
+ }
202
+
203
+ interface CardWebExtendedPayInData {
204
+ /**
205
+ * The unique identifier of the object.
206
+ */
207
+ Id: string;
208
+
209
+ /**
210
+ * The type of payin
211
+ */
212
+ PaymentType: PayInPaymentType;
213
+
214
+ /**
215
+ * The type of execution for the payin
216
+ */
217
+ ExecutionType: PayInExecutionType;
218
+
219
+ /**
220
+ * Time in millis when the page consult will expire.
221
+ */
222
+ ExpirationDate: Timestamp;
223
+
224
+ /**
225
+ * A partially obfuscated version of the credit card number
226
+ */
227
+ Alias: string;
228
+
229
+ /**
230
+ * The type of card
231
+ */
232
+ CardType: card.CardType;
233
+
234
+ /**
235
+ * The Country of the Card
236
+ */
237
+ Country: CountryISO;
238
+
239
+ /**
240
+ * A unique representation of a 16-digits card number
241
+ */
242
+ Fingerprint: string;
243
+ }
244
+
245
+ interface CreateCardWebPayIn {
246
+ ExecutionType: "WEB";
247
+
248
+ PaymentType: "CARD";
249
+
250
+ /**
251
+ * A user's ID
252
+ */
253
+ AuthorId: string;
254
+
255
+ /**
256
+ * The user ID who is credited (defaults to the owner of the wallet)
257
+ */
258
+ CreditedUserId?: string;
259
+
260
+ /**
261
+ * Information about the funds that are being debited
262
+ */
263
+ DebitedFunds: MoneyData;
264
+
265
+ /**
266
+ * Information about the fees that were taken by the client for this transaction (and were hence transferred to the Client's platform wallet)
267
+ */
268
+ Fees: MoneyData;
269
+
270
+ /**
271
+ * The URL to redirect to after payment (whether successful or not)
272
+ */
273
+ ReturnURL: string;
274
+
275
+ /**
276
+ * The ID of the wallet where money will be credited
277
+ */
278
+ CreditedWalletId: string;
279
+
280
+ /**
281
+ * The type of card
282
+ */
283
+ CardType: card.CardType;
284
+
285
+ /**
286
+ * The SecureMode corresponds to '3D secure' for CB Visa and MasterCard. This field lets you activate it manually.
287
+ * The field lets you activate it automatically with "DEFAULT" (Secured Mode will be activated from €50 or when MANGOPAY detects
288
+ * there is a higher risk ), "FORCE" (if you wish to specifically force the secured mode).
289
+ */
290
+ SecureMode?: SecureMode;
291
+
292
+ /**
293
+ * The language to use for the payment page - needs to be the ISO code of the language
294
+ */
295
+ Culture: CountryISO;
296
+
297
+ /**
298
+ * A URL to an SSL page to allow you to customise the payment page. Must be in the format: array("PAYLINE"=>"https://...") and meet all the
299
+ * specifications listed here. Note that only a template for Payline is currently available
300
+ */
301
+ TemplateURLOptions?: TemplateURLOptions;
302
+
303
+ /**
304
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and
305
+ * can only include alphanumeric characters or spaces. See here for important info. Note that each bank handles this information differently, some show less or no information.
306
+ */
307
+ StatementDescriptor?: string;
308
+
309
+ /**
310
+ * Contains useful information related to the user billing
311
+ */
312
+ Billing?: BillingData;
313
+
314
+ /**
315
+ * Contains every useful information's related to the user shipping
316
+ */
317
+ Shipping?: ShippingData;
318
+
319
+ /**
320
+ * The BIC identifier of the end-user’s bank
321
+ */
322
+ Bic?: string;
323
+
324
+ /**
325
+ * The unique reference generated for the profiling session,
326
+ * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
327
+ */
328
+ ProfilingAttemptReference?: string;
329
+ }
330
+
331
+ interface CardDirectPayInData extends BasePayInData {
332
+ ExecutionType: "DIRECT";
333
+
334
+ PaymentType: "CARD";
335
+
336
+ /**
337
+ * This is the URL where users are automatically redirected after 3D secure validation (if activated)
338
+ */
339
+ SecureModeReturnURL: string;
340
+
341
+ /**
342
+ * The ID of a card
343
+ */
344
+ CardId: string;
345
+
346
+ /**
347
+ * The SecureMode corresponds to '3D secure' for CB Visa and MasterCard. This field lets you activate it manually. The field lets you activate it
348
+ * automatically with "DEFAULT" (Secured Mode will be activated from €50 or when MANGOPAY detects there is a higher risk ), "FORCE" (if you wish to specifically force the secured mode).
349
+ */
350
+ SecureMode: SecureMode;
351
+
352
+ /**
353
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and can only include alphanumeric
354
+ * characters or spaces. See here for important info. Note that each bank handles this information differently, some show less or no information.
355
+ */
356
+ StatementDescriptor: string;
357
+
358
+ /**
359
+ * Contains useful information related to the user billing
360
+ */
361
+ Billing: BillingData;
362
+
363
+ /**
364
+ * Contains information related to security and fraud
365
+ */
366
+ SecurityInfo: SecurityInfoData;
367
+
368
+ /**
369
+ * The value is 'true' if the SecureMode was used
370
+ */
371
+ SecureModeNeeded: boolean;
372
+
373
+ /**
374
+ * This is the URL where to redirect users to proceed to 3D secure validation
375
+ */
376
+ SecureModeRedirectURL: string;
377
+
378
+ /**
379
+ * Information about the card
380
+ */
381
+ CardInfo: CardInfoData;
382
+
383
+ /**
384
+ * The channel through which the user provided their card details, used to indicate mail-order and telephone-order (MOTO) payments:
385
+ *
386
+ * ECommerce – Payment received online.
387
+ *
388
+ * TelephoneOrder – Payment received via mail order or telephone order (MOTO).
389
+ */
390
+ PaymentCategory: string;
391
+ }
392
+
393
+ interface MbwayWebPayInData extends BasePayInData {
394
+ ExecutionType: "WEB";
395
+
396
+ PaymentType: "MBWAY";
397
+
398
+ /**
399
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and can only include alphanumeric
400
+ * characters or spaces. See here for important info. Note that each bank handles this information differently, some show less or no information.
401
+ */
402
+ StatementDescriptor: string;
403
+
404
+ /**
405
+ * The mobile phone number of the user initiating the pay-in
406
+ * Country code followed by hash symbol (#) followed by the rest of the number. Only digits and hash allowed
407
+ */
408
+ Phone: string;
409
+ }
410
+
411
+ interface BancontactWebPayInData extends BasePayInData {
412
+ ExecutionType: "WEB";
413
+
414
+ PaymentType: "BCMC";
415
+
416
+ /**
417
+ * The URL to which the user is redirected to complete the payment
418
+ */
419
+ RedirectURL: string;
420
+
421
+ /**
422
+ * The URL where users are automatically redirected after the payment is validated
423
+ */
424
+ ReturnURL: string;
425
+
426
+ /**
427
+ * The URL where you should redirect your client in a mobile app experience
428
+ */
429
+ DeepLinkURL: string;
430
+
431
+ /**
432
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and can only include alphanumeric
433
+ * characters or spaces. See here for important info. Note that each bank handles this information differently, some show less or no information.
434
+ */
435
+ StatementDescriptor: string;
436
+
437
+ /**
438
+ * The language to use for the payment page - needs to be the ISO code of the language
439
+ */
440
+ Culture: CountryISO;
441
+
442
+ /**
443
+ * Whether the Bancontact pay-ins are being made to be re-used in a recurring payment flow
444
+ */
445
+ Recurring: boolean;
446
+ }
447
+
448
+ interface BizumWebPayInData extends BasePayInData {
449
+ ExecutionType: "WEB";
450
+
451
+ PaymentType: "BIZUM";
452
+
453
+ /**
454
+ * The URL to which the user is redirected to complete the payment
455
+ */
456
+ RedirectURL?: string;
457
+
458
+ /**
459
+ * The URL where users are automatically redirected after the payment is validated
460
+ */
461
+ ReturnURL?: string;
462
+
463
+ /**
464
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and can only include alphanumeric
465
+ * characters or spaces. See here for important info. Note that each bank handles this information differently, some show less or no information.
466
+ */
467
+ StatementDescriptor?: string;
468
+
469
+ /**
470
+ * Format: International E.164 standard (preceded by plus sign and country code, +34 in Spain); pattern: ^\+[1-9][\d]{4,14}$
471
+ * If the Phone parameter is sent, then RedirectURL is not returned and ReturnURL is ignored.
472
+ */
473
+ Phone?: string;
474
+ }
475
+
476
+ interface PayPalWebPayInData extends BasePayInData {
477
+ ExecutionType: "WEB";
478
+
479
+ PaymentType: "PAYPAL";
480
+
481
+ /**
482
+ * The URL where users are automatically redirected after the payment is validated
483
+ */
484
+ ReturnURL: string;
485
+
486
+ /**
487
+ * The URL to which the user is redirected to complete the payment
488
+ */
489
+ RedirectURL: string;
490
+
491
+ /**
492
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and can only include alphanumeric
493
+ * characters or spaces. See here for important info. Note that each bank handles this information differently, some show less or no information.
494
+ */
495
+ StatementDescriptor: string;
496
+
497
+ /**
498
+ * Information about the shipping address
499
+ */
500
+ Shipping: ShippingData;
501
+
502
+ /**
503
+ * List of items and quantity bought by the buyer
504
+ */
505
+ LineItems: LineItemData[];
506
+
507
+ /**
508
+ * The language in which the PayPal payment page is to be displayed.
509
+ */
510
+ Culture: CountryISO;
511
+
512
+ ShippingPreference: ShippingPreference;
513
+
514
+ Reference: string;
515
+
516
+ PaypalPayerID: string;
517
+
518
+ BuyerCountry: string;
519
+
520
+ BuyerFirstname: string;
521
+
522
+ BuyerLastname: string;
523
+
524
+ BuyerPhone: string;
525
+
526
+ PaypalOrderID: string;
527
+
528
+ CancelURL: string;
529
+
530
+ /**
531
+ * The email address registered on the PayPal account used to make the payment.
532
+ */
533
+ PaypalBuyerAccountEmail: string;
534
+
535
+ /**
536
+ * Shipping information of the LineItems added to the pay-in object.
537
+ */
538
+ Trackings: PayPalWebTrackingData;
539
+ }
540
+
541
+ interface PayPalWebTrackingData {
542
+ /**
543
+ * The shipment’s tracking number provided by the carrier.
544
+ */
545
+ TrackingNumber: string;
546
+
547
+ /**
548
+ * The carrier for the shipment. Use the country-specific version of the carrier if it exists,
549
+ * otherwise use its global version.
550
+ *
551
+ * Returned values: One of the carriers supported by PayPal.
552
+ */
553
+ Carrier: string;
554
+
555
+ /**
556
+ * If true, sends an email notification to the PaypalBuyerAccountEmail containing the TrackingNumber and Carrier,
557
+ * which allows the end user to track their shipment with the carrier.
558
+ *
559
+ * Default value: false
560
+ */
561
+ NotifyBuyer: boolean;
562
+ }
563
+
564
+ interface MultibancoWebPayInData extends BasePayInData {
565
+ ExecutionType: "WEB";
566
+
567
+ PaymentType: "MULTIBANCO";
568
+
569
+ /**
570
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and can only include alphanumeric
571
+ * characters or spaces. See here for important info. Note that each bank handles this information differently, some show less or no information.
572
+ */
573
+ StatementDescriptor: string;
574
+ }
575
+
576
+ interface SatispayWebPayInData extends BasePayInData {
577
+ ExecutionType: "WEB";
578
+
579
+ PaymentType: "SATISPAY";
580
+
581
+ /**
582
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and can only include alphanumeric
583
+ * characters or spaces. See here for important info. Note that each bank handles this information differently, some show less or no information.
584
+ */
585
+ StatementDescriptor: string;
586
+
587
+ /**
588
+ * The end-user country of residence
589
+ */
590
+ Country: CountryISO;
591
+ }
592
+
593
+ interface BlikWebPayInData extends BasePayInData {
594
+ ExecutionType: "WEB";
595
+
596
+ PaymentType: "BLIK";
597
+
598
+ /**
599
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and can only include alphanumeric
600
+ * characters or spaces. See here for important info. Note that each bank handles this information differently, some show less or no information.
601
+ */
602
+ StatementDescriptor: string;
603
+
604
+ /**
605
+ * The 6-digit code from the user’s banking application.
606
+ * Required when creating a Blik PayIn with code.
607
+ */
608
+ Code: string;
609
+
610
+ /**
611
+ * The IP address of the end user initiating the transaction, in IPV4 or IPV6 format.
612
+ * Required when creating a Blik PayIn with code.
613
+ */
614
+ IpAddress: string;
615
+
616
+ /**
617
+ * Information about the browser used by the end user (author) to perform the payment.
618
+ * Required when creating a Blik PayIn with code.
619
+ */
620
+ BrowserInfo: BrowserInfoData;
621
+ }
622
+
623
+ interface CreateCardDirectPayIn {
624
+ ExecutionType: "DIRECT";
625
+
626
+ PaymentType: "CARD";
627
+
628
+ /**
629
+ * A user's ID
630
+ */
631
+ AuthorId: string;
632
+
633
+ /**
634
+ * The user ID who is credited (defaults to the owner of the wallet)
635
+ */
636
+ CreditedUserId?: string;
637
+
638
+ /**
639
+ * The ID of the wallet where money will be credited
640
+ */
641
+ CreditedWalletId: string;
642
+
643
+ /**
644
+ * Information about the funds that are being debited
645
+ */
646
+ DebitedFunds: MoneyData;
647
+
648
+ /**
649
+ * Information about the fees that were taken by the client for this transaction (and were hence transferred to the Client's platform wallet)
650
+ */
651
+ Fees: MoneyData;
652
+
653
+ /**
654
+ * This is the URL where users are automatically redirected after 3D secure validation (if activated)
655
+ */
656
+ SecureModeReturnURL: string;
657
+
658
+ /**
659
+ * The ID of a card
660
+ */
661
+ CardId: string;
662
+
663
+ /**
664
+ * The SecureMode corresponds to '3D secure' for CB Visa and MasterCard. This field lets you activate it manually. The field lets you activate it automatically
665
+ * with "DEFAULT" (Secured Mode will be activated from €50 or when MANGOPAY detects there is a higher risk ), "FORCE" (if you wish to specifically force the secured mode).
666
+ */
667
+ SecureMode?: SecureMode;
668
+
669
+ /**
670
+ * Contains useful information related to the user billing
671
+ */
672
+ Billing?: BillingData;
673
+
674
+ /**
675
+ * The language to use for the payment page - needs to be the ISO code of the language
676
+ */
677
+ Culture?: CountryISO;
678
+
679
+ /**
680
+ * 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.
681
+ * See here for important info. Note that each bank handles this information differently, some show less or no information.
682
+ */
683
+ StatementDescriptor?: string;
684
+
685
+ /**
686
+ * IP Address of the end user (format IPV4 or IPV6)
687
+ */
688
+ IpAddress?: string;
689
+
690
+ /**
691
+ * This object describes the Browser being user by an end user
692
+ */
693
+ BrowserInfo?: BrowserInfoData;
694
+
695
+ /**
696
+ * Contains every useful information's related to the user shipping
697
+ */
698
+ Shipping?: ShippingData;
699
+
700
+ /**
701
+ * Custom data that you can add to this item
702
+ */
703
+ Tag?: string;
704
+
705
+ /**
706
+ * The channel through which the user provided their card details, used to indicate mail-order and telephone-order (MOTO) payments:
707
+ *
708
+ * ECommerce – Payment received online.
709
+ *
710
+ * TelephoneOrder – Payment received via mail order or telephone order (MOTO).
711
+ */
712
+ PaymentCategory?: string;
713
+
714
+ /**
715
+ * The unique reference generated for the profiling session,
716
+ * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
717
+ */
718
+ ProfilingAttemptReference?: string;
719
+ }
720
+
721
+ interface CreateMbwayWebPayIn {
722
+ ExecutionType: "WEB";
723
+
724
+ PaymentType: "MBWAY";
725
+
726
+ /**
727
+ * A user's ID
728
+ */
729
+ AuthorId: string;
730
+
731
+ /**
732
+ * Information about the funds that are being debited
733
+ */
734
+ DebitedFunds: MoneyData;
735
+
736
+ /**
737
+ * Information about the fees that were taken by the client for this transaction (and were hence transferred to the Client's platform wallet)
738
+ */
739
+ Fees: MoneyData;
740
+
741
+ /**
742
+ * The mobile phone number of the user initiating the pay-in
743
+ * Country code followed by hash symbol (#) followed by the rest of the number. Only digits and hash allowed
744
+ */
745
+ Phone: string;
746
+
747
+ /**
748
+ * The ID of the wallet where money will be credited
749
+ */
750
+ CreditedWalletId: string;
751
+
752
+ /**
753
+ * 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.
754
+ * See here for important info. Note that each bank handles this information differently, some show less or no information.
755
+ */
756
+ StatementDescriptor?: string;
757
+
758
+ /**
759
+ * Custom data that you can add to this item
760
+ */
761
+ Tag?: string;
762
+
763
+ /**
764
+ * The unique reference generated for the profiling session,
765
+ * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
766
+ */
767
+ ProfilingAttemptReference?: string;
768
+ }
769
+
770
+ interface CreateBancontactWebPayIn {
771
+ ExecutionType: "WEB";
772
+
773
+ PaymentType: "BCMC";
774
+
775
+ /**
776
+ * A user's ID
777
+ */
778
+ AuthorId: string;
779
+
780
+ /**
781
+ * The ID of the wallet where money will be credited
782
+ */
783
+ CreditedWalletId: string;
784
+
785
+ /**
786
+ * Information about the funds that are being debited
787
+ */
788
+ DebitedFunds: MoneyData;
789
+
790
+ /**
791
+ * Information about the fees that were taken by the client for this transaction (and were hence transferred to the Client's platform wallet)
792
+ */
793
+ Fees: MoneyData;
794
+
795
+ /**
796
+ * The URL where users are automatically redirected after the payment is validated
797
+ */
798
+ ReturnURL: string;
799
+
800
+ /**
801
+ * The language to use for the payment page - needs to be the ISO code of the language
802
+ */
803
+ Culture?: CountryISO;
804
+
805
+ /**
806
+ * Whether the Bancontact pay-ins are being made to be re-used in a recurring payment flow
807
+ */
808
+ Recurring?: boolean;
809
+
810
+ /**
811
+ * 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.
812
+ * See here for important info. Note that each bank handles this information differently, some show less or no information.
813
+ */
814
+ StatementDescriptor?: string;
815
+
816
+ /**
817
+ * Custom data that you can add to this item
818
+ */
819
+ Tag?: string;
820
+
821
+ /**
822
+ * The unique reference generated for the profiling session,
823
+ * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
824
+ */
825
+ ProfilingAttemptReference?: string;
826
+ }
827
+
828
+ interface CreateBizumWebPayIn {
829
+ ExecutionType: "WEB";
830
+
831
+ PaymentType: "BIZUM";
832
+
833
+ /**
834
+ * A user's ID
835
+ */
836
+ AuthorId: string;
837
+
838
+ /**
839
+ * The ID of the wallet where money will be credited
840
+ */
841
+ CreditedWalletId: string;
842
+
843
+ /**
844
+ * Information about the funds that are being debited
845
+ */
846
+ DebitedFunds: MoneyData;
847
+
848
+ /**
849
+ * Information about the fees that were taken by the client for this transaction (and were hence transferred to the Client's platform wallet)
850
+ */
851
+ Fees: MoneyData;
852
+
853
+ /**
854
+ * Format: International E.164 standard (preceded by plus sign and country code, +34 in Spain); pattern: ^\+[1-9][\d]{4,14}$
855
+ * If the Phone parameter is sent, then RedirectURL is not returned and ReturnURL is ignored.
856
+ */
857
+ Phone?: string;
858
+
859
+ /**
860
+ * The URL where users are automatically redirected after the payment is validated
861
+ */
862
+ ReturnURL?: string;
863
+
864
+ /**
865
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and can only include alphanumeric
866
+ * characters or spaces. See here for important info. Note that each bank handles this information differently, some show less or no information.
867
+ */
868
+ StatementDescriptor?: string;
869
+
870
+ /**
871
+ * The unique reference generated for the profiling session,
872
+ * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
873
+ */
874
+ ProfilingAttemptReference?: string;
875
+
876
+ /**
877
+ * Custom data that you can add to this item
878
+ */
879
+ Tag?: string;
880
+ }
881
+
882
+ interface CreatePayPalWebPayIn {
883
+ ExecutionType: "WEB";
884
+
885
+ PaymentType: "PAYPAL";
886
+
887
+ /**
888
+ * A user's ID
889
+ */
890
+ AuthorId: string;
891
+
892
+ /**
893
+ * Information about the funds that are being debited
894
+ */
895
+ DebitedFunds: MoneyData;
896
+
897
+ /**
898
+ * Information about the fees that were taken by the client for this transaction (and were hence transferred to the Client's platform wallet)
899
+ */
900
+ Fees: MoneyData;
901
+
902
+ /**
903
+ * The ID of the wallet where money will be credited
904
+ */
905
+ CreditedWalletId: string;
906
+
907
+ /**
908
+ * Information about the items bought by the customer
909
+ */
910
+ LineItems: CreateLineItem[];
911
+
912
+ /**
913
+ * This is the URL where users are automatically redirected after the payment is validated
914
+ */
915
+ ReturnURL: string;
916
+
917
+ /**
918
+ * Contains every useful information's related to the user shipping
919
+ */
920
+ Shipping?: CreateShipping;
921
+
922
+ /**
923
+ * 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.
924
+ * See here for important info. Note that each bank handles this information differently, some show less or no information.
925
+ */
926
+ StatementDescriptor?: string;
927
+
928
+ /**
929
+ * Custom data that you can add to this item
930
+ */
931
+ Tag?: string;
932
+
933
+ /**
934
+ * The language in which the PayPal payment page is to be displayed.
935
+ */
936
+ Culture?: CountryISO;
937
+
938
+ ShippingPreference?: ShippingPreference;
939
+
940
+ Reference?: string;
941
+
942
+ CancelURL?: string;
943
+
944
+ DataCollectionId?: string;
945
+ }
946
+
947
+ interface CreateMultibancoWebPayIn {
948
+ ExecutionType: "WEB";
949
+
950
+ PaymentType: "MULTIBANCO";
951
+
952
+ /**
953
+ * A user's ID
954
+ */
955
+ AuthorId: string;
956
+
957
+ /**
958
+ * Information about the funds that are being debited
959
+ */
960
+ DebitedFunds: MoneyData;
961
+
962
+ /**
963
+ * Information about the fees that were taken by the client for this transaction (and were hence transferred to the Client's platform wallet)
964
+ */
965
+ Fees: MoneyData;
966
+
967
+ /**
968
+ * The URL to redirect to after the payment, whether the transaction
969
+ */
970
+ ReturnURL: string;
971
+
972
+ /**
973
+ * The ID of the wallet where money will be credited
974
+ */
975
+ CreditedWalletId: string;
976
+
977
+ /**
978
+ * 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.
979
+ * See here for important info. Note that each bank handles this information differently, some show less or no information.
980
+ */
981
+ StatementDescriptor?: string;
982
+
983
+ /**
984
+ * Custom data that you can add to this item
985
+ */
986
+ Tag?: string;
987
+
988
+ /**
989
+ * The unique reference generated for the profiling session,
990
+ * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
991
+ */
992
+ ProfilingAttemptReference?: string;
993
+ }
994
+
995
+ interface CreateSatispayWebPayIn {
996
+ ExecutionType: "WEB";
997
+
998
+ PaymentType: "SATISPAY";
999
+
1000
+ /**
1001
+ * A user's ID
1002
+ */
1003
+ AuthorId: string;
1004
+
1005
+ /**
1006
+ * Information about the funds that are being debited
1007
+ */
1008
+ DebitedFunds: MoneyData;
1009
+
1010
+ /**
1011
+ * Information about the fees that were taken by the client for this transaction (and were hence transferred to the Client's platform wallet)
1012
+ */
1013
+ Fees: MoneyData;
1014
+
1015
+ /**
1016
+ * The ID of the wallet where money will be credited
1017
+ */
1018
+ CreditedWalletId: string;
1019
+
1020
+ /**
1021
+ * The URL to redirect to after the payment, whether the transaction
1022
+ */
1023
+ ReturnURL: string;
1024
+
1025
+ /**
1026
+ * The end-user country of residence
1027
+ */
1028
+ Country: CountryISO;
1029
+
1030
+ /**
1031
+ * 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.
1032
+ * See here for important info. Note that each bank handles this information differently, some show less or no information.
1033
+ */
1034
+ StatementDescriptor?: string;
1035
+
1036
+ /**
1037
+ * Custom data that you can add to this item
1038
+ */
1039
+ Tag?: string;
1040
+
1041
+ /**
1042
+ * The unique reference generated for the profiling session,
1043
+ * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
1044
+ */
1045
+ ProfilingAttemptReference?: string;
1046
+ }
1047
+
1048
+ interface CreateBlikWebPayIn {
1049
+ ExecutionType: "WEB";
1050
+
1051
+ PaymentType: "BLIK";
1052
+
1053
+ /**
1054
+ * A user's ID
1055
+ */
1056
+ AuthorId: string;
1057
+
1058
+ /**
1059
+ * Information about the funds that are being debited
1060
+ */
1061
+ DebitedFunds: MoneyData;
1062
+
1063
+ /**
1064
+ * Information about the fees that were taken by the client for this transaction (and were hence transferred to the Client's platform wallet)
1065
+ */
1066
+ Fees: MoneyData;
1067
+
1068
+ /**
1069
+ * The ID of the wallet where money will be credited
1070
+ */
1071
+ CreditedWalletId: string;
1072
+
1073
+ /**
1074
+ * The URL to redirect to after the payment, whether the transaction
1075
+ */
1076
+ ReturnURL: string;
1077
+
1078
+ /**
1079
+ * 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.
1080
+ * See here for important info. Note that each bank handles this information differently, some show less or no information.
1081
+ */
1082
+ StatementDescriptor?: string;
1083
+
1084
+ /**
1085
+ * Custom data that you can add to this item
1086
+ */
1087
+ Tag?: string;
1088
+
1089
+ /**
1090
+ * The 6-digit code from the user’s banking application.
1091
+ * Required when creating a Blik PayIn with code.
1092
+ */
1093
+ Code?: string;
1094
+
1095
+ /**
1096
+ * The IP address of the end user initiating the transaction, in IPV4 or IPV6 format.
1097
+ * Required when creating a Blik PayIn with code.
1098
+ */
1099
+ IpAddress?: string;
1100
+
1101
+ /**
1102
+ * Information about the browser used by the end user (author) to perform the payment.
1103
+ * Required when creating a Blik PayIn with code.
1104
+ */
1105
+ BrowserInfo?: BrowserInfoData;
1106
+
1107
+ /**
1108
+ * The unique reference generated for the profiling session,
1109
+ * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
1110
+ */
1111
+ ProfilingAttemptReference?: string;
1112
+ }
1113
+
1114
+ interface LineItemData {
1115
+ /**
1116
+ * Item name
1117
+ */
1118
+ Name: string;
1119
+
1120
+ /**
1121
+ * Quantity of item bought
1122
+ */
1123
+ Quantity: number;
1124
+
1125
+ /**
1126
+ * The item cost
1127
+ */
1128
+ UnitAmount: number;
1129
+
1130
+ /**
1131
+ * The item tax
1132
+ */
1133
+ TaxAmount: number;
1134
+
1135
+ /**
1136
+ * A consistent and unique reference for the seller. It can be:
1137
+ * - The user ID created on MANGOPAY for the seller
1138
+ * - Or the firstname and lastname of the seller
1139
+ */
1140
+ Description: string;
1141
+
1142
+ /**
1143
+ * The category of the item, allowing line items of different types to be distinguished
1144
+ */
1145
+ Category: string;
1146
+
1147
+ /**
1148
+ * The unique identifier of the line item.
1149
+ */
1150
+ Sku: string;
1151
+ }
1152
+
1153
+ interface CreateLineItem {
1154
+ /**
1155
+ * Item name
1156
+ */
1157
+ Name: string;
1158
+
1159
+ /**
1160
+ * Quantity of item bought
1161
+ */
1162
+ Quantity: number;
1163
+
1164
+ /**
1165
+ * The item cost
1166
+ */
1167
+ UnitAmount: number;
1168
+
1169
+ /**
1170
+ * The item tax
1171
+ */
1172
+ TaxAmount?: number;
1173
+
1174
+ /**
1175
+ * A consistent and unique reference for the seller. It can be:
1176
+ * - The user ID created on MANGOPAY for the seller
1177
+ * - Or the firstname and lastname of the seller
1178
+ */
1179
+ Description: string;
1180
+
1181
+ /**
1182
+ * The category of the item, allowing line items of different types to be distinguished
1183
+ */
1184
+ Category?: string;
1185
+
1186
+ /**
1187
+ * The unique identifier of the line item.
1188
+ */
1189
+ Sku?: string;
1190
+ }
1191
+
1192
+ interface DirectDebitDirectPayInData extends BasePayInData {
1193
+ /**
1194
+ * The date the user will be charged. Note that for direct debit payments, it will take one more day more the payment becomes successful
1195
+ */
1196
+ ChargeDate: Timestamp;
1197
+
1198
+ /**
1199
+ * The ID of a Mandate
1200
+ */
1201
+ MandateId: string;
1202
+
1203
+ /**
1204
+ * A custom description to appear on the user's bank statement.
1205
+ * It can be up to 100 characters long, and can only include alphanumeric characters or spaces.
1206
+ * See here for important info and note that this functionality is only available for SEPA payments.
1207
+ */
1208
+ StatementDescriptor: string;
1209
+ }
1210
+
1211
+ interface CreateDirectDebitDirectPayIn {
1212
+ ExecutionType: "DIRECT";
1213
+
1214
+ PaymentType: "DIRECT_DEBIT";
1215
+
1216
+ AuthorId: string;
1217
+
1218
+ CreditedUserId?: string;
1219
+
1220
+ CreditedWalletId: string;
1221
+
1222
+ DebitedFunds: MoneyData;
1223
+
1224
+ Fees: MoneyData;
1225
+
1226
+ MandateId: string;
1227
+
1228
+ StatementDescriptor?: string;
1229
+
1230
+ /**
1231
+ * The unique reference generated for the profiling session,
1232
+ * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
1233
+ */
1234
+ ProfilingAttemptReference?: string;
1235
+ }
1236
+
1237
+ interface DirectDebitWebPayInData extends BasePayInData {
1238
+ /**
1239
+ * The language to use for the payment page - needs to be the ISO code of the language
1240
+ */
1241
+ Culture: CountryISO;
1242
+
1243
+ /**
1244
+ * The type of web direct debit
1245
+ */
1246
+ DirectDebitType: DirectDebitType;
1247
+
1248
+ /**
1249
+ * The URL to redirect to after payment (whether successful or not)
1250
+ */
1251
+ ReturnUrl: string;
1252
+
1253
+ /**
1254
+ * The SecureMode is used to select a 3DS1 and 3DS2 protocol for CB Visa and MasterCard.
1255
+ * The field lets you ask for an Frictionless payment with the value "DEFAULT".
1256
+ * The value "NO_CHOICE" will allow you to make the transaction eligible for Frictionless, but the exemption will be applied by the other payment actors.
1257
+ * The value force "FORCE" will force customer authentification.
1258
+ */
1259
+ SecureMode: SecureMode;
1260
+
1261
+ /**
1262
+ * The URL to use for the payment page template
1263
+ */
1264
+ TemplateURL: string;
1265
+
1266
+ /**
1267
+ * The URL to redirect to user to for them to proceed with the payment
1268
+ */
1269
+ ReturnURL: string;
1270
+ }
1271
+
1272
+ interface CreateDirectDebitWebPayIn {
1273
+ ExecutionType: "WEB";
1274
+
1275
+ PaymentType: "DIRECT_DEBIT";
1276
+
1277
+ /**
1278
+ * A user's ID
1279
+ */
1280
+ AuthorId: string;
1281
+
1282
+ /**
1283
+ * The user ID who is credited (defaults to the owner of the wallet)
1284
+ */
1285
+ CreditedUserId?: string;
1286
+
1287
+ /**
1288
+ * The ID of the wallet where money will be credited
1289
+ */
1290
+ CreditedWalletId: string;
1291
+
1292
+ /**
1293
+ * Information about the funds that are being debited
1294
+ */
1295
+ DebitedFunds: MoneyData;
1296
+
1297
+ /**
1298
+ * Information about the fees that were taken by the client for this transaction (and were hence transferred to the Client's platform wallet)
1299
+ */
1300
+ Fees: MoneyData;
1301
+
1302
+ /**
1303
+ * The URL to redirect to after payment (whether successful or not)
1304
+ */
1305
+ ReturnURL: string;
1306
+
1307
+ /**
1308
+ * The language to use for the payment page - needs to be the ISO code of the language
1309
+ */
1310
+ Culture: CountryISO;
1311
+
1312
+ /**
1313
+ * The type of web direct debit
1314
+ */
1315
+ DirectDebitType: DirectDebitType;
1316
+
1317
+ /**
1318
+ * The unique reference generated for the profiling session,
1319
+ * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
1320
+ */
1321
+ ProfilingAttemptReference?: string;
1322
+ }
1323
+
1324
+ interface CardPreAuthorizedPayInData extends BasePayInData {
1325
+ PreauthorizationId: string;
1326
+
1327
+ ExecutionType: "DIRECT";
1328
+
1329
+ PaymentType: "PREAUTHORIZED";
1330
+
1331
+ DepositId: string;
1332
+ }
1333
+
1334
+ interface CreateCardPreAuthorizedPayIn {
1335
+ ExecutionType: "DIRECT";
1336
+
1337
+ PaymentType: "PREAUTHORIZED";
1338
+
1339
+ /**
1340
+ * Custom data that you can add to this item
1341
+ */
1342
+ Tag?: string;
1343
+
1344
+ /**
1345
+ * A user's ID
1346
+ */
1347
+ AuthorId?: string;
1348
+
1349
+ /**
1350
+ * The user ID who is credited (defaults to the owner of the wallet)
1351
+ */
1352
+ CreditedUserId?: string;
1353
+
1354
+ /**
1355
+ * The ID of the wallet where money will be credited
1356
+ */
1357
+ CreditedWalletId: string;
1358
+
1359
+ /**
1360
+ * Information about the funds that are being debited
1361
+ */
1362
+ DebitedFunds: MoneyData;
1363
+
1364
+ /**
1365
+ * Information about the fees that were taken by the client for this transaction (and were hence transferred to the Client's platform wallet)
1366
+ */
1367
+ Fees: MoneyData;
1368
+
1369
+ /**
1370
+ * The ID of the Preauthorization object
1371
+ */
1372
+ PreauthorizationId: string;
1373
+
1374
+ /**
1375
+ * The unique reference generated for the profiling session,
1376
+ * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
1377
+ */
1378
+ ProfilingAttemptReference?: string;
1379
+ }
1380
+
1381
+ interface BankAccountData {
1382
+ /**
1383
+ * The BIC of the bank account
1384
+ */
1385
+ BIC: string;
1386
+
1387
+ /**
1388
+ * The IBAN of the bank account
1389
+ */
1390
+ IBAN: string;
1391
+
1392
+ /**
1393
+ * The name of the owner of the bank account
1394
+ */
1395
+ OwnerName: string;
1396
+
1397
+ /**
1398
+ * The address of the owner of the bank account
1399
+ */
1400
+ OwnerAddress: string;
1401
+
1402
+ /**
1403
+ * The type of bank account
1404
+ */
1405
+ Type: ValueOf<enums.IBankAccountType>;
1406
+ }
1407
+
1408
+ interface BankWireDirectPayInData extends BasePayInData {
1409
+ ExecutionType: "DIRECT";
1410
+
1411
+ PaymentType: "BANK_WIRE";
1412
+
1413
+ /**
1414
+ * The declared debited funds
1415
+ */
1416
+ DeclaredDebitedFunds: MoneyData;
1417
+
1418
+ /**
1419
+ * The declared fees
1420
+ */
1421
+ DeclaredFees: MoneyData;
1422
+
1423
+ /**
1424
+ * Wire reference
1425
+ */
1426
+ WireReference: string;
1427
+
1428
+ /**
1429
+ * Bank account details
1430
+ */
1431
+ BankAccount: BankAccountData;
1432
+ }
1433
+
1434
+ interface BankWireExternalInstructionPayInData extends BasePayInData {
1435
+ ExecutionType: "EXTERNAL_INSTRUCTION";
1436
+
1437
+ PaymentType: "BANK_WIRE";
1438
+
1439
+ /**
1440
+ * The reference of the wire made to a banking alias
1441
+ */
1442
+ WireReference: string;
1443
+
1444
+ /**
1445
+ * The unique identifier of the banking alias
1446
+ */
1447
+ BankingAliasId: string;
1448
+
1449
+ /**
1450
+ * Debited bank account details
1451
+ */
1452
+ DebitedBankAccount: BankAccountData;
1453
+ }
1454
+
1455
+ interface CreateBankWireDirectPayIn extends PickPartialRequired<BankWireDirectPayInData,
1456
+ "Tag" | "CreditedUserId",
1457
+ "AuthorId" | "CreditedWalletId" | "DeclaredDebitedFunds" | "DeclaredFees"> {
1458
+ ExecutionType: "DIRECT";
1459
+ PaymentType: "BANK_WIRE";
1460
+
1461
+ /**
1462
+ * The unique reference generated for the profiling session,
1463
+ * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
1464
+ */
1465
+ ProfilingAttemptReference?: string;
1466
+ }
1467
+
1468
+ interface PayInRecurringRegistrationState {
1469
+ PayinsLinked: number;
1470
+
1471
+ CumulatedDebitedAmount: MoneyData;
1472
+
1473
+ CumulatedFeesAmount: MoneyData;
1474
+
1475
+ LastPayinId: number;
1476
+ }
1477
+
1478
+ interface PayInRecurringRegistrationData extends entityBase.EntityBaseData {
1479
+ /**
1480
+ * The status of the transaction
1481
+ */
1482
+ Status: RecurringPaymentStatus;
1483
+
1484
+ CurrentState: PayInRecurringRegistrationState;
1485
+
1486
+ RecurringType: RecurringType;
1487
+
1488
+ TotalAmount: number;
1489
+
1490
+ CycleNumber: number;
1491
+
1492
+ /**
1493
+ * A user's ID
1494
+ */
1495
+ AuthorId: string;
1496
+
1497
+ /**
1498
+ * The ID of a card
1499
+ */
1500
+ CardId: string;
1501
+
1502
+ /**
1503
+ * The user ID who is credited (defaults to the owner of the wallet)
1504
+ */
1505
+ CreditedUserId: string;
1506
+
1507
+ /**
1508
+ * The ID of the wallet where money will be credited
1509
+ */
1510
+ CreditedWalletId: string;
1511
+
1512
+ /**
1513
+ * Contains every useful informations related to the user billing
1514
+ */
1515
+ Billing: BillingOrShippingRecurringPayInData;
1516
+
1517
+ /**
1518
+ * Contains every useful information's related to the user shipping
1519
+ */
1520
+ Shipping: BillingOrShippingRecurringPayInData;
1521
+
1522
+ /**
1523
+ * Date on which the recurring payments will end
1524
+ */
1525
+ EndDate: Timestamp;
1526
+
1527
+ /**
1528
+ * Frequency at which the recurring payments will be made
1529
+ */
1530
+ Frequency: FrequencyType;
1531
+
1532
+ /**
1533
+ * Indicates whether the payment amount is likely to change during the payment period
1534
+ */
1535
+ FixedNextAmount: boolean;
1536
+
1537
+ /**
1538
+ * Indicates whether this recurring payment is a payment in installments in N times
1539
+ */
1540
+ FractionedPayment: boolean;
1541
+
1542
+ FreeCycles?: number;
1543
+
1544
+ /**
1545
+ * Amount of the first payment. This amount may be different from the NextTransactionDebitedFunds.
1546
+ */
1547
+ FirstTransactionDebitedFunds: MoneyData;
1548
+
1549
+ /**
1550
+ * Amount of the first payment fees. This amount may be different from the NextTransactionFees.
1551
+ */
1552
+ FirstTransactionFees: MoneyData;
1553
+
1554
+ /**
1555
+ * Amount of subsequent payments. If this field is empty and either FixedNextAmount or FractionedPayment are TRUE,
1556
+ * we will take the amount of the FirstTransactionDebitedFunds as the subsequent payment amount.
1557
+ */
1558
+ NextTransactionDebitedFunds: MoneyData;
1559
+
1560
+ /**
1561
+ * Amount of subsequent fees. If this field is empty and either FixedNextAmount or FractionedPayment are TRUE,
1562
+ * we will take the amount of the FirstTransactionFees as the subsequent fees.
1563
+ */
1564
+ NextTransactionFees: MoneyData;
1565
+
1566
+ /**
1567
+ * Indicates whether the object is being used to attempt registration of an existing recurring payment
1568
+ */
1569
+ Migration: boolean;
1570
+
1571
+ PaymentType: RecurringPayInRegistrationPaymentType;
1572
+ }
1573
+
1574
+ interface CreatePayInRecurringRegistration {
1575
+ /**
1576
+ * A user's ID
1577
+ */
1578
+ AuthorId: string;
1579
+
1580
+ /**
1581
+ * The ID of a card
1582
+ */
1583
+ CardId: string;
1584
+
1585
+ /**
1586
+ * The user ID who is credited (defaults to the owner of the wallet)
1587
+ */
1588
+ CreditedUserId?: string;
1589
+
1590
+ /**
1591
+ * The ID of the wallet where money will be credited
1592
+ */
1593
+ CreditedWalletId: string;
1594
+
1595
+ /**
1596
+ * Amount of the first payment. This amount may be different from the NextTransactionDebitedFunds.
1597
+ */
1598
+ FirstTransactionDebitedFunds: MoneyData;
1599
+
1600
+ /**
1601
+ * Amount of the first payment fees. This amount may be different from the NextTransactionFees.
1602
+ */
1603
+ FirstTransactionFees: MoneyData;
1604
+
1605
+ /**
1606
+ * Contains every useful informations related to the user billing
1607
+ */
1608
+ Billing?: BillingOrShippingRecurringPayInData;
1609
+
1610
+ /**
1611
+ * Contains every useful information's related to the user shipping
1612
+ */
1613
+ Shipping?: BillingOrShippingRecurringPayInData;
1614
+
1615
+ /**
1616
+ * Date on which the recurring payments will end
1617
+ */
1618
+ EndDate?: Timestamp;
1619
+
1620
+ /**
1621
+ * Frequency at which the recurring payments will be made
1622
+ */
1623
+ Frequency?: FrequencyType;
1624
+
1625
+ /**
1626
+ * Indicates whether the payment amount is likely to change during the payment period
1627
+ */
1628
+ FixedNextAmount?: boolean;
1629
+
1630
+ /**
1631
+ * Indicates whether this recurring payment is a payment in installments in N times
1632
+ */
1633
+ FractionedPayment?: boolean;
1634
+
1635
+ /**
1636
+ * Indicates whether the object is being used to attempt registration of an existing recurring payment
1637
+ */
1638
+ Migration?: boolean;
1639
+
1640
+ /**
1641
+ * Amount of subsequent payments. If this field is empty and either FixedNextAmount or FractionedPayment are TRUE,
1642
+ * we will take the amount of the FirstTransactionDebitedFunds as the subsequent payment amount.
1643
+ */
1644
+ NextTransactionDebitedFunds?: MoneyData;
1645
+
1646
+ /**
1647
+ * Amount of subsequent fees. If this field is empty and either FixedNextAmount or FractionedPayment are TRUE,
1648
+ * we will take the amount of the FirstTransactionFees as the subsequent fees.
1649
+ */
1650
+ NextTransactionFees?: MoneyData;
1651
+
1652
+ FreeCycles?: number;
1653
+
1654
+ PaymentType?: RecurringPayInRegistrationPaymentType
1655
+ }
1656
+
1657
+ interface UpdatePayInRecurringRegistration {
1658
+ CardId?: string;
1659
+
1660
+ Billing?: BillingOrShippingRecurringPayInData;
1661
+
1662
+ Shipping?: BillingOrShippingRecurringPayInData;
1663
+
1664
+ Status?: UpdateRecurringPaymentStatus;
1665
+ }
1666
+
1667
+ interface RecurringPayInData extends BasePayInData {
1668
+ /**
1669
+ * The SecureMode corresponds to '3D secure' for CB Visa and MasterCard. This field lets you activate it manually.
1670
+ * 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 ),
1671
+ * "FORCE" (if you wish to specifically force the secured mode).
1672
+ */
1673
+ SecureMode: SecureMode;
1674
+
1675
+ /**
1676
+ * The ID of a card
1677
+ */
1678
+ CardId: string;
1679
+
1680
+ /**
1681
+ * The value is 'true' if the SecureMode was used
1682
+ */
1683
+ SecureModeNeeded: boolean;
1684
+
1685
+ /**
1686
+ * This is the URL where to redirect users to proceed to 3D secure validation
1687
+ */
1688
+ SecureModeRedirectURL: string;
1689
+
1690
+ /**
1691
+ * This is the URL where users are automatically redirected after 3D secure validation (if activated)
1692
+ */
1693
+ SecureModeReturnURL: string;
1694
+
1695
+ /**
1696
+ * The language to use for the payment page - needs to be the ISO code of the language
1697
+ */
1698
+ Culture: CountryISO;
1699
+
1700
+ /**
1701
+ * Contains useful information related to security and fraud
1702
+ */
1703
+ SecurityInfo: SecurityInfoData;
1704
+
1705
+ /**
1706
+ * 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.
1707
+ * See here for important info. Note that each bank handles this information differently, some show less or no information.
1708
+ */
1709
+ StatementDescriptor: string;
1710
+
1711
+ BrowserInfo: BrowserInfoData;
1712
+
1713
+ IpAddress: string;
1714
+
1715
+ Billing: BillingOrShippingRecurringPayInData;
1716
+
1717
+ Shipping: BillingOrShippingRecurringPayInData;
1718
+
1719
+ Requested3DSVersion: _3DSVersion;
1720
+
1721
+ Applied3DSVersion: _3DSVersion;
1722
+
1723
+ RecurringPayinRegistrationId: string;
1724
+
1725
+ /**
1726
+ * Information about the card
1727
+ */
1728
+ CardInfo: CardInfoData;
1729
+ }
1730
+
1731
+ interface CreateRecurringPayInCIT {
1732
+ /**
1733
+ * The recurring's ID
1734
+ */
1735
+ RecurringPayinRegistrationId: string;
1736
+
1737
+ /**
1738
+ * This object describes the Browser being user by an end user
1739
+ */
1740
+ BrowserInfo: BrowserInfoData;
1741
+
1742
+ /**
1743
+ * IP Address of the end user (format IPV4 or IPV6)
1744
+ */
1745
+ IpAddress: string;
1746
+
1747
+ /**
1748
+ * This is the URL where users are automatically redirected after 3D secure validation (if activated)
1749
+ */
1750
+ SecureModeReturnURL: string;
1751
+
1752
+ /**
1753
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long,
1754
+ * and can only include alphanumeric characters or spaces. See here for important info.
1755
+ * Note that each bank handles this information differently, some show less or no information.
1756
+ */
1757
+ StatementDescriptor?: string;
1758
+
1759
+ /**
1760
+ * Custom data that you can add to this item
1761
+ */
1762
+ Tag?: string;
1763
+
1764
+ /**
1765
+ * Amount of the subsequent payment. If this field is empty we will take the amount entered in the NextTransactionDebitedFunds of the Recurring PayIn Registration.
1766
+ * An amount must be transmitted during either registration or pay-in (if it’s different from the registration one).
1767
+ */
1768
+ DebitedFunds?: MoneyData;
1769
+
1770
+ /**
1771
+ * Amount of the subsequent fees. If this field is empty we will take the amount entered in the NextTransactionFees
1772
+ * of the Recurring PayIn Registration. An amount must be transmitted during either registration or pay-in.
1773
+ */
1774
+ Fees?: MoneyData;
1775
+ }
1776
+
1777
+ interface CreateRecurringPayPalPayInCIT {
1778
+ /**
1779
+ * The unique identifier of the recurring pay-in registration.
1780
+ */
1781
+ RecurringPayinRegistrationId: string;
1782
+
1783
+ /**
1784
+ * The URL to which the user is returned after the payment, whether the transaction is successful or not.
1785
+ */
1786
+ ReturnURL: string;
1787
+
1788
+ /**
1789
+ * The URL to which the user is returned after canceling the payment.
1790
+ * If not provided, the Cancel button returns the user to the RedirectURL.
1791
+ */
1792
+ CancelURL?: string;
1793
+
1794
+ /**
1795
+ * Custom description to appear on the user’s bank statement along with the platform name
1796
+ */
1797
+ StatementDescriptor?: string;
1798
+
1799
+ /**
1800
+ * Custom data that you can add to this item
1801
+ */
1802
+ Tag?: string;
1803
+
1804
+ /**
1805
+ * Information about the end user’s shipping address, managed by ShippingPreference.
1806
+ * Required if ShippingPreference is SET_PROVIDED_ADDRESS and the shipping information is not present in the
1807
+ * recurring registration object.
1808
+ */
1809
+ Shipping?: CreateShipping;
1810
+
1811
+ /**
1812
+ * Information about the items purchased in the transaction
1813
+ */
1814
+ LineItems: CreateLineItem[];
1815
+
1816
+ /**
1817
+ * The language in which the PayPal payment page is to be displayed.
1818
+ */
1819
+ Culture?: CultureISO;
1820
+
1821
+ /**
1822
+ * Information about the shipping address behavior on the PayPal payment page:
1823
+ * <p>
1824
+ * SET_PROVIDED_ADDRESS - The Shipping parameter becomes required and its values are displayed to the end user, who is not able to modify them.
1825
+ * <p>
1826
+ * GET_FROM_FILE – The Shipping parameter is ignored and the end user can choose from registered addresses.
1827
+ * <p>
1828
+ * NO_SHIPPING – No shipping address section is displayed.
1829
+ */
1830
+ ShippingPreference?: ShippingPreference;
1831
+
1832
+ /**
1833
+ * The platform’s order reference for the transaction.
1834
+ */
1835
+ Reference?: string;
1836
+
1837
+ DataCollectionId?: string;
1838
+ }
1839
+
1840
+ interface CreateRecurringPayInMIT {
1841
+ /**
1842
+ * The recurring's ID
1843
+ */
1844
+ RecurringPayinRegistrationId: string;
1845
+
1846
+ /**
1847
+ * Amount of the subsequent payment. If this field is empty we will take the amount entered in the NextTransactionDebitedFunds
1848
+ * of the Recurring PayIn Registration. An amount must be transmitted during either registration or pay-in (if it’s different from the registration one).
1849
+ */
1850
+ DebitedFunds?: MoneyData;
1851
+
1852
+ /**
1853
+ * Amount of the subsequent fees. If this field is empty we will take the amount entered in the NextTransactionFees
1854
+ * of the Recurring PayIn Registration. An amount must be transmitted during either registration or pay-in.
1855
+ */
1856
+ Fees?: MoneyData;
1857
+
1858
+ /**
1859
+ * 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.
1860
+ * See here for important info. Note that each bank handles this information differently, some show less or no information.
1861
+ */
1862
+ StatementDescriptor?: string;
1863
+
1864
+ /**
1865
+ * Custom data that you can add to this item
1866
+ */
1867
+ Tag?: string;
1868
+ }
1869
+
1870
+ interface CreateRecurringPayPalPayInMIT {
1871
+ /**
1872
+ * The unique identifier of the recurring pay-in registration.
1873
+ */
1874
+ RecurringPayinRegistrationId: string;
1875
+
1876
+ /**
1877
+ * The amount of the subsequent recurring pay-in. If this field is empty, the amount entered in
1878
+ * the NextTransactionDebitedFunds of the Recurring PayIn Registration is taken into account.
1879
+ * <p></p>
1880
+ * Required if the registration’s NextTransactionDebitedFunds is empty.
1881
+ */
1882
+ DebitedFunds?: MoneyData;
1883
+
1884
+ /**
1885
+ * The amount of the subsequent fees. If this field is empty, the amount entered in
1886
+ * the NextTransactionFees of the Recurring PayIn Registration is taken into account.
1887
+ * <p></p>
1888
+ * Required if the registration’s NextTransactionFees is empty.
1889
+ */
1890
+ Fees?: MoneyData;
1891
+
1892
+ /**
1893
+ * The URL to which the user is returned after the payment, whether the transaction is successful or not.
1894
+ */
1895
+ ReturnURL: string;
1896
+
1897
+ /**
1898
+ * The URL to which the user is returned after canceling the payment.
1899
+ * If not provided, the Cancel button returns the user to the RedirectURL.
1900
+ */
1901
+ CancelURL?: string;
1902
+
1903
+ /**
1904
+ * Custom description to appear on the user’s bank statement along with the platform name
1905
+ */
1906
+ StatementDescriptor?: string;
1907
+
1908
+ /**
1909
+ * Custom data that you can add to this item
1910
+ */
1911
+ Tag?: string;
1912
+
1913
+ /**
1914
+ * Information about the end user’s shipping address, managed by ShippingPreference.
1915
+ * Required if ShippingPreference is SET_PROVIDED_ADDRESS and the shipping information is not present in the
1916
+ * recurring registration object.
1917
+ */
1918
+ Shipping?: CreateShipping;
1919
+
1920
+ /**
1921
+ * Information about the items purchased in the transaction
1922
+ */
1923
+ LineItems: CreateLineItem[];
1924
+
1925
+ /**
1926
+ * The language in which the PayPal payment page is to be displayed.
1927
+ */
1928
+ Culture?: CultureISO;
1929
+
1930
+ /**
1931
+ * Information about the shipping address behavior on the PayPal payment page:
1932
+ * <p>
1933
+ * SET_PROVIDED_ADDRESS - The Shipping parameter becomes required and its values are displayed to the end user, who is not able to modify them.
1934
+ * <p>
1935
+ * GET_FROM_FILE – The Shipping parameter is ignored and the end user can choose from registered addresses.
1936
+ * <p>
1937
+ * NO_SHIPPING – No shipping address section is displayed.
1938
+ */
1939
+ ShippingPreference?: ShippingPreference;
1940
+
1941
+ /**
1942
+ * The platform’s order reference for the transaction.
1943
+ */
1944
+ Reference?: string;
1945
+
1946
+ DataCollectionId?: string;
1947
+ }
1948
+
1949
+ interface PayconiqWebPayInData extends BasePayInData {
1950
+ ExecutionType: "WEB";
1951
+ PaymentType: "PAYCONIQ";
1952
+
1953
+ /**
1954
+ * Time in millis when the page consult will expire.
1955
+ */
1956
+ ExpirationDate: Timestamp;
1957
+
1958
+ /**
1959
+ * The URL to redirect to after payment (whether successful or not)
1960
+ */
1961
+ ReturnURL: string;
1962
+
1963
+ /**
1964
+ * The URL to redirect to user to for them to proceed with the payment
1965
+ */
1966
+ RedirectURL: string;
1967
+
1968
+ /**
1969
+ * The URL to be used in App2App workflow
1970
+ */
1971
+ DeepLinkURL: string;
1972
+
1973
+ Country: CountryISO;
1974
+
1975
+ QRCodeURL: string;
1976
+
1977
+ StatementDescriptor: string;
1978
+ }
1979
+
1980
+ interface CreatePayconiqWebPayInData {
1981
+ ExecutionType: "WEB";
1982
+ PaymentType: "PAYCONIQ";
1983
+
1984
+ /**
1985
+ * Custom data that you can add to this item
1986
+ */
1987
+ Tag?: string;
1988
+
1989
+ /**
1990
+ * A user's ID
1991
+ */
1992
+ AuthorId: string;
1993
+
1994
+ /**
1995
+ * The ID of the wallet where money will be credited
1996
+ */
1997
+ CreditedWalletId: string;
1998
+
1999
+ /**
2000
+ * Information about the funds that are being debited
2001
+ */
2002
+ DebitedFunds: MoneyData;
2003
+
2004
+ /**
2005
+ * Information about the fees that were taken by the client for this transaction (and were hence transferred to the Client's platform wallet)
2006
+ */
2007
+ Fees: MoneyData;
2008
+
2009
+ /**
2010
+ * The URL to redirect to after payment (whether successful or not)
2011
+ */
2012
+ ReturnURL: string;
2013
+
2014
+ /**
2015
+ * The Country of the Address
2016
+ */
2017
+ Country: CountryISO;
2018
+
2019
+ StatementDescriptor?: string;
2020
+
2021
+ /**
2022
+ * The unique reference generated for the profiling session,
2023
+ * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
2024
+ */
2025
+ ProfilingAttemptReference?: string;
2026
+ }
2027
+
2028
+ interface CreateCardPreAuthorizedDepositPayIn {
2029
+ AuthorId?: string;
2030
+
2031
+ CreditedWalletId: string;
2032
+
2033
+ DebitedFunds: MoneyData;
2034
+
2035
+ Fees: MoneyData;
2036
+
2037
+ DepositId: string;
2038
+
2039
+ Tag?: string;
2040
+ }
2041
+
2042
+ interface CardPreAuthorizedDepositPayInData extends entityBase.EntityBaseData {
2043
+ AuthorId: string;
2044
+
2045
+ CreditedUserId: string;
2046
+
2047
+ DepositId: string;
2048
+
2049
+ ResultCode: string;
2050
+
2051
+ ResultMessage: string;
2052
+
2053
+ Status: transaction.TransactionStatus;
2054
+
2055
+ ExecutionDate: Timestamp;
2056
+
2057
+ Type: transaction.TransactionType;
2058
+
2059
+ Nature: transaction.TransactionNature;
2060
+
2061
+ PaymentType: PayInPaymentType;
2062
+
2063
+ ExecutionType: PayInExecutionType;
2064
+
2065
+ DebitedFunds: MoneyData;
2066
+
2067
+ CreditedFunds: MoneyData;
2068
+
2069
+ Fees: MoneyData;
2070
+ }
2071
+
2072
+ interface CreateApplePayPayIn {
2073
+ ExecutionType: "DIRECT";
2074
+
2075
+ PaymentType: "APPLE";
2076
+ /**
2077
+ * A user's ID
2078
+ */
2079
+ AuthorId: string;
2080
+
2081
+ /**
2082
+ * The ID of the wallet where money will be credited
2083
+ */
2084
+ CreditedWalletId: string;
2085
+
2086
+ /**
2087
+ * Information about the funds that are being debited
2088
+ */
2089
+ DebitedFunds: MoneyData;
2090
+
2091
+ /**
2092
+ * Information about the fees that were taken by the client for this transaction (and were hence transferred to the Client's platform wallet)
2093
+ */
2094
+ Fees: MoneyData;
2095
+
2096
+ PaymentData: ApplePayPaymentData;
2097
+
2098
+ /**
2099
+ * 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.
2100
+ * See here for important info. Note that each bank handles this information differently, some show less or no information.
2101
+ */
2102
+ StatementDescriptor?: string;
2103
+
2104
+ /**
2105
+ * Custom data that you can add to this item
2106
+ */
2107
+ Tag?: string;
2108
+
2109
+ /**
2110
+ * The unique reference generated for the profiling session,
2111
+ * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
2112
+ */
2113
+ ProfilingAttemptReference?: string;
2114
+ }
2115
+ interface ApplePayPayInData extends BasePayInData {
2116
+ ExecutionType: "DIRECT";
2117
+
2118
+ PaymentType: "APPLEPAY";
2119
+ /**
2120
+ * A user's ID
2121
+ */
2122
+ AuthorId: string;
2123
+
2124
+ /**
2125
+ * The ID of the wallet where money will be credited
2126
+ */
2127
+ CreditedWalletId: string;
2128
+
2129
+ /**
2130
+ * Information about the funds that are being debited
2131
+ */
2132
+ DebitedFunds: MoneyData;
2133
+
2134
+ /**
2135
+ * Information about the fees that were taken by the client for this transaction (and were hence transferred to the Client's platform wallet)
2136
+ */
2137
+ Fees: MoneyData;
2138
+
2139
+ PaymentData: ApplePayPaymentData;
2140
+
2141
+ /**
2142
+ * 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.
2143
+ * See here for important info. Note that each bank handles this information differently, some show less or no information.
2144
+ */
2145
+ StatementDescriptor: string;
2146
+
2147
+ /**
2148
+ * Custom data that you can add to this item
2149
+ */
2150
+ Tag: string;
2151
+ }
2152
+
2153
+ interface ApplePayPaymentData {
2154
+ TransactionId: string,
2155
+
2156
+ Network: string,
2157
+
2158
+ TokenData: string
2159
+ }
2160
+
2161
+
2162
+ interface CreateGooglePayDirectPayIn {
2163
+ ExecutionType: "DIRECT";
2164
+
2165
+ PaymentType: "GOOGLE_PAY";
2166
+
2167
+ /**
2168
+ * A user's ID
2169
+ */
2170
+ AuthorId: string;
2171
+
2172
+ /**
2173
+ * Information about the funds that are being debited
2174
+ */
2175
+ DebitedFunds: MoneyData;
2176
+
2177
+ /**
2178
+ * Information about the fees that were taken by the client for this transaction (and were hence transferred to the Client's platform wallet)
2179
+ */
2180
+ Fees: MoneyData;
2181
+
2182
+ /**
2183
+ * The ID of the wallet where money will be credited
2184
+ */
2185
+ CreditedWalletId: string;
2186
+
2187
+ /**
2188
+ * The URL to which the user is redirected to complete the payment.
2189
+ */
2190
+ SecureModeReturnURL: string;
2191
+
2192
+ /**
2193
+ * The mode applied for the 3DS2 protocol for CB, Visa, and Mastercard. The options are:
2194
+ * DEFAULT – Requests an exemption to strong customer authentication (SCA), and thus a frictionless payment
2195
+ * experience, if allowed by your Mangopay contract and accepted by the issuer.
2196
+ * FORCE – Requests SCA.
2197
+ * NO_CHOICE – Leaves the choice to the issuer whether to allow for a frictionless payment experience
2198
+ * or to enforce SCA.
2199
+ */
2200
+ SecureMode?: SecureMode;
2201
+
2202
+ /**
2203
+ * IP Address of the end user (format IPV4 or IPV6)
2204
+ */
2205
+ IpAddress: string;
2206
+
2207
+ /**
2208
+ * This object describes the Browser being user by an end user
2209
+ */
2210
+ BrowserInfo: BrowserInfoData;
2211
+
2212
+ /**
2213
+ * Data received from the Google Pay API
2214
+ */
2215
+ PaymentData: string;
2216
+
2217
+ /**
2218
+ * This is the URL where users are automatically redirected after the payment is validated
2219
+ */
2220
+ ReturnURL?: string;
2221
+
2222
+ /**
2223
+ * Contains every useful information's related to the user shipping
2224
+ */
2225
+ Shipping?: CreateShipping;
2226
+
2227
+ /**
2228
+ * Information about the end user billing address.
2229
+ */
2230
+ Billing?: CreateBilling;
2231
+
2232
+ /**
2233
+ * 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.
2234
+ * See here for important info. Note that each bank handles this information differently, some show less or no information.
2235
+ */
2236
+ StatementDescriptor?: string;
2237
+
2238
+ /**
2239
+ * Custom data that you can add to this item
2240
+ */
2241
+ Tag?: string;
2242
+
2243
+ /**
2244
+ * The unique reference generated for the profiling session,
2245
+ * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
2246
+ */
2247
+ ProfilingAttemptReference?: string;
2248
+ }
2249
+
2250
+ interface GooglePayDirectPayInData extends BasePayInData {
2251
+ ExecutionType: "DIRECT";
2252
+
2253
+ PaymentType: "GOOGLE_PAY";
2254
+
2255
+ /**
2256
+ * 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.
2257
+ * See here for important info. Note that each bank handles this information differently, some show less or no information.
2258
+ */
2259
+ StatementDescriptor: string;
2260
+
2261
+ /**
2262
+ * The value is 'true' if the SecureMode was used
2263
+ */
2264
+ SecureModeNeeded: boolean;
2265
+
2266
+ /**
2267
+ * Contains every useful information's related to the user shipping
2268
+ */
2269
+ Shipping: CreateShipping;
2270
+
2271
+ /**
2272
+ * Information about the end user billing address.
2273
+ */
2274
+ Billing: CreateBilling;
2275
+
2276
+ /**
2277
+ * This object describes the Browser being user by an end user
2278
+ */
2279
+ BrowserInfo: BrowserInfoData;
2280
+
2281
+ /**
2282
+ * IP Address of the end user (format IPV4 or IPV6)
2283
+ */
2284
+ IpAddress: string;
2285
+
2286
+ /**
2287
+ * The ID of the card
2288
+ */
2289
+ CardId: string;
2290
+
2291
+ /**
2292
+ * The URL to which the user is redirected to complete the payment.
2293
+ */
2294
+ SecureModeReturnURL: string;
2295
+
2296
+ /**
2297
+ * This is the URL where to redirect users to proceed to 3D secure validation
2298
+ */
2299
+ SecureModeRedirectURL: string;
2300
+
2301
+ /**
2302
+ * The mode applied for the 3DS2 protocol for CB, Visa, and Mastercard. The options are:
2303
+ * DEFAULT – Requests an exemption to strong customer authentication (SCA), and thus a frictionless payment
2304
+ * experience, if allowed by your Mangopay contract and accepted by the issuer.
2305
+ * FORCE – Requests SCA.
2306
+ * NO_CHOICE – Leaves the choice to the issuer whether to allow for a frictionless payment experience
2307
+ * or to enforce SCA.
2308
+ */
2309
+ SecureMode: SecureMode;
2310
+
2311
+ /**
2312
+ * This is the URL where users are automatically redirected after the payment is validated
2313
+ */
2314
+ ReturnURL: string;
2315
+ }
2316
+
2317
+ interface KlarnaWebPayInData extends BasePayInData {
2318
+ ExecutionType: "WEB";
2319
+
2320
+ PaymentType: "KLARNA";
2321
+
2322
+ /**
2323
+ * The URL to redirect to user to for them to proceed with the payment
2324
+ */
2325
+ RedirectURL: string;
2326
+
2327
+ /**
2328
+ * This is the URL where users are automatically redirected after the payment is validated
2329
+ */
2330
+ ReturnURL: string;
2331
+
2332
+ /**
2333
+ * List of items and quantity bought by the buyer
2334
+ */
2335
+ LineItems: LineItemData[];
2336
+
2337
+ /**
2338
+ * Contains every useful information's related to the user shipping
2339
+ */
2340
+ Shipping: ShippingData;
2341
+
2342
+ /**
2343
+ * Contains every useful information's related to the user billing
2344
+ */
2345
+ Billing: BillingData;
2346
+
2347
+ /**
2348
+ * The Klarna option that the end-user has chosen at checkout
2349
+ */
2350
+ PaymentMethod: string;
2351
+
2352
+ /**
2353
+ * The end-user residency country
2354
+ */
2355
+ Country: CountryISO;
2356
+
2357
+ /**
2358
+ * The language in which the Klarna payment page is to be displayed - Alpha-2 format (default US)
2359
+ */
2360
+ Culture: CountryISO;
2361
+
2362
+ /**
2363
+ * Klarna custom data that you can add to this item
2364
+ */
2365
+ AdditionalData: string;
2366
+
2367
+ /**
2368
+ * The mobile phone number of the user initiating the pay-in
2369
+ * Country code followed by hash symbol (#) followed by the rest of the number. Only digits and hash allowed
2370
+ */
2371
+ Phone: string;
2372
+
2373
+ /**
2374
+ * The end-user email address
2375
+ */
2376
+ Email: string;
2377
+
2378
+ /**
2379
+ * The merchant order reference
2380
+ */
2381
+ Reference: string;
2382
+
2383
+ /**
2384
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and can only include alphanumeric
2385
+ * characters or spaces. See here for important info. Note that each bank handles this information differently, some show less or no information.
2386
+ */
2387
+ StatementDescriptor: string;
2388
+ }
2389
+
2390
+ interface CreateKlarnaWebPayIn {
2391
+ ExecutionType: "WEB";
2392
+
2393
+ PaymentType: "KLARNA";
2394
+
2395
+ /**
2396
+ * A user's ID
2397
+ */
2398
+ AuthorId: string;
2399
+
2400
+ /**
2401
+ * The ID of the wallet where money will be credited
2402
+ */
2403
+ CreditedWalletId: string;
2404
+
2405
+ /**
2406
+ * Information about the debited funds
2407
+ */
2408
+ DebitedFunds: MoneyData;
2409
+
2410
+ /**
2411
+ * Information about the fees taken by the platform for this transaction (and hence transferred to the Fees Wallet)
2412
+ */
2413
+ Fees: MoneyData;
2414
+
2415
+ /**
2416
+ * This is the URL where users are automatically redirected after the payment is validated
2417
+ */
2418
+ ReturnURL: string;
2419
+
2420
+ /**
2421
+ * List of items and quantity bought by the buyer
2422
+ */
2423
+ LineItems: CreateLineItem[];
2424
+
2425
+ /**
2426
+ * The end-user residency country
2427
+ */
2428
+ Country: CountryISO;
2429
+
2430
+ /**
2431
+ * The mobile phone number of the user initiating the pay-in
2432
+ * Country code followed by hash symbol (#) followed by the rest of the number. Only digits and hash allowed
2433
+ */
2434
+ Phone: string;
2435
+
2436
+ /**
2437
+ * The end-user email address
2438
+ */
2439
+ Email: string;
2440
+
2441
+ /**
2442
+ * Klarna custom data that you can add to this item
2443
+ */
2444
+ AdditionalData: string;
2445
+
2446
+ /**
2447
+ * Contains every useful information's related to the user billing
2448
+ */
2449
+ Billing: CreateBilling;
2450
+
2451
+ /**
2452
+ * The merchant order reference
2453
+ */
2454
+ Reference: string;
2455
+
2456
+ /**
2457
+ * Custom data that you can add to this item
2458
+ */
2459
+ Tag?: string;
2460
+
2461
+ /**
2462
+ * The language in which the Klarna payment page is to be displayed - Alpha-2 format (default US)
2463
+ */
2464
+ Culture?: CountryISO;
2465
+
2466
+ /**
2467
+ * Contains every useful information's related to the user shipping
2468
+ */
2469
+ Shipping?: CreateShipping;
2470
+
2471
+ /**
2472
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and can only include alphanumeric
2473
+ * characters or spaces. See here for important info. Note that each bank handles this information differently, some show less or no information.
2474
+ */
2475
+ StatementDescriptor?: string;
2476
+
2477
+ /**
2478
+ * The unique reference generated for the profiling session,
2479
+ * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
2480
+ */
2481
+ ProfilingAttemptReference?: string;
2482
+ }
2483
+
2484
+ interface IdealWebPayInData extends BasePayInData {
2485
+ ExecutionType: "WEB";
2486
+
2487
+ PaymentType: "IDEAL";
2488
+
2489
+ /**
2490
+ * The URL to redirect to user to for them to proceed with the payment
2491
+ */
2492
+ RedirectURL: string;
2493
+
2494
+ /**
2495
+ * This is the URL where users are automatically redirected after the payment is validated
2496
+ */
2497
+ ReturnURL: string;
2498
+
2499
+ /**
2500
+ * Name of the end-user’s bank
2501
+ */
2502
+ BankName: string;
2503
+
2504
+ /**
2505
+ * The BIC identifier of the end-user’s bank
2506
+ */
2507
+ Bic: string;
2508
+
2509
+ /**
2510
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and can only include alphanumeric
2511
+ * characters or spaces. See here for important info. Note that each bank handles this information differently, some show less or no information.
2512
+ */
2513
+ StatementDescriptor: string;
2514
+ }
2515
+
2516
+ interface CreateIdealWebPayIn {
2517
+ ExecutionType: "WEB";
2518
+
2519
+ PaymentType: "IDEAL";
2520
+
2521
+ /**
2522
+ * A user's ID
2523
+ */
2524
+ AuthorId: string;
2525
+
2526
+ /**
2527
+ * The ID of the wallet where money will be credited
2528
+ */
2529
+ CreditedWalletId: string;
2530
+
2531
+ /**
2532
+ * Information about the debited funds
2533
+ */
2534
+ DebitedFunds: MoneyData;
2535
+
2536
+ /**
2537
+ * Information about the fees taken by the platform for this transaction (and hence transferred to the Fees Wallet)
2538
+ */
2539
+ Fees: MoneyData;
2540
+
2541
+ /**
2542
+ * This is the URL where users are automatically redirected after the payment is validated
2543
+ */
2544
+ ReturnURL: string;
2545
+
2546
+ /**
2547
+ * The BIC identifier of the end-user’s bank
2548
+ */
2549
+ Bic: string;
2550
+
2551
+ /**
2552
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and can only include alphanumeric
2553
+ * characters or spaces. See here for important info. Note that each bank handles this information differently, some show less or no information.
2554
+ */
2555
+ StatementDescriptor?: string;
2556
+
2557
+ /**
2558
+ * Custom data that you can add to this object
2559
+ */
2560
+ Tag?: string;
2561
+
2562
+ /**
2563
+ * The unique reference generated for the profiling session,
2564
+ * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
2565
+ */
2566
+ ProfilingAttemptReference?: string;
2567
+ }
2568
+
2569
+ interface GiropayWebPayInData extends BasePayInData {
2570
+ ExecutionType: "WEB";
2571
+
2572
+ PaymentType: "GIROPAY";
2573
+
2574
+ /**
2575
+ * The URL to redirect to user to for them to proceed with the payment
2576
+ */
2577
+ RedirectURL: string;
2578
+
2579
+ /**
2580
+ * This is the URL where users are automatically redirected after the payment is validated
2581
+ */
2582
+ ReturnURL: string;
2583
+
2584
+ /**
2585
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and can only include alphanumeric
2586
+ * characters or spaces. See here for important info. Note that each bank handles this information differently, some show less or no information.
2587
+ */
2588
+ StatementDescriptor: string;
2589
+ }
2590
+
2591
+ interface SwishWebPayInData extends BasePayInData {
2592
+ ExecutionType: "WEB";
2593
+
2594
+ PaymentType: "SWISH";
2595
+
2596
+ /**
2597
+ * The URL to redirect to user to for them to proceed with the payment
2598
+ */
2599
+ RedirectURL: string;
2600
+
2601
+ /**
2602
+ * This is the URL where users are automatically redirected after the payment is validated
2603
+ */
2604
+ ReturnURL: string;
2605
+
2606
+ /**
2607
+ * The mobile URL to which to redirect the user to complete the payment in an app-to-app flow.
2608
+ */
2609
+ DeepLinkURL: string;
2610
+
2611
+ /**
2612
+ * The PNG file of the Swish QR code as a Base64-encoded string.
2613
+ */
2614
+ QRCodeURL: string;
2615
+
2616
+ /**
2617
+ * <p>Allowed values: WEB, APP</p>
2618
+ * <p>Default value: WEB</p>
2619
+ * <p>The platform environment of the post-payment flow. The PaymentFlow value combines with the ReturnURL to manage the redirection behavior after payment:</p>
2620
+ * <p>Set the value to APP to send the user to your platform’s mobile app</p>
2621
+ * <p>Set the value to WEB to send the user to a web browser</p>
2622
+ * <p>In both cases you need to provide the relevant ReturnURL, whether to your app or website.</p>
2623
+ */
2624
+ PaymentFlow: string;
2625
+
2626
+ /**
2627
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and can only include alphanumeric
2628
+ * characters or spaces. See here for important info. Note that each bank handles this information differently, some show less or no information.
2629
+ */
2630
+ StatementDescriptor: string;
2631
+ }
2632
+
2633
+ interface TwintWebPayInData extends BasePayInData {
2634
+ ExecutionType: "WEB";
2635
+
2636
+ PaymentType: "TWINT";
2637
+
2638
+ /**
2639
+ * The URL to redirect to user to for them to proceed with the payment
2640
+ */
2641
+ RedirectURL: string;
2642
+
2643
+ /**
2644
+ * This is the URL where users are automatically redirected after the payment is validated
2645
+ */
2646
+ ReturnURL: string;
2647
+
2648
+ /**
2649
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and can only include alphanumeric
2650
+ * characters or spaces. See here for important info. Note that each bank handles this information differently, some show less or no information.
2651
+ */
2652
+ StatementDescriptor: string;
2653
+ }
2654
+
2655
+
2656
+ interface CreateGiropayWebPayIn {
2657
+ ExecutionType: "WEB";
2658
+
2659
+ PaymentType: "GIROPAY";
2660
+
2661
+ /**
2662
+ * A user's ID
2663
+ */
2664
+ AuthorId: string;
2665
+
2666
+ /**
2667
+ * The ID of the wallet where money will be credited
2668
+ */
2669
+ CreditedWalletId: string;
2670
+
2671
+ /**
2672
+ * Information about the debited funds
2673
+ */
2674
+ DebitedFunds: MoneyData;
2675
+
2676
+ /**
2677
+ * Information about the fees taken by the platform for this transaction (and hence transferred to the Fees Wallet)
2678
+ */
2679
+ Fees: MoneyData;
2680
+
2681
+ /**
2682
+ * This is the URL where users are automatically redirected after the payment is validated
2683
+ */
2684
+ ReturnURL: string;
2685
+
2686
+ /**
2687
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and can only include alphanumeric
2688
+ * characters or spaces. See here for important info. Note that each bank handles this information differently, some show less or no information.
2689
+ */
2690
+ StatementDescriptor?: string;
2691
+
2692
+ /**
2693
+ * Custom data that you can add to this object
2694
+ */
2695
+ Tag?: string;
2696
+
2697
+ /**
2698
+ * The unique reference generated for the profiling session,
2699
+ * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
2700
+ */
2701
+ ProfilingAttemptReference?: string;
2702
+ }
2703
+
2704
+ interface CreateSwishWebPayIn {
2705
+ ExecutionType: "WEB";
2706
+
2707
+ PaymentType: "SWISH";
2708
+
2709
+ /**
2710
+ * A user's ID
2711
+ */
2712
+ AuthorId: string;
2713
+
2714
+ /**
2715
+ * The ID of the wallet where money will be credited
2716
+ */
2717
+ CreditedWalletId: string;
2718
+
2719
+ /**
2720
+ * Information about the debited funds
2721
+ */
2722
+ DebitedFunds: MoneyData;
2723
+
2724
+ /**
2725
+ * Information about the fees taken by the platform for this transaction (and hence transferred to the Fees Wallet)
2726
+ */
2727
+ Fees: MoneyData;
2728
+
2729
+ /**
2730
+ * This is the URL where users are automatically redirected after the payment is validated
2731
+ */
2732
+ ReturnURL: string;
2733
+
2734
+ /**
2735
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and can only include alphanumeric
2736
+ * characters or spaces. See here for important info. Note that each bank handles this information differently, some show less or no information.
2737
+ */
2738
+ StatementDescriptor?: string;
2739
+
2740
+ /**
2741
+ * Custom data that you can add to this object
2742
+ */
2743
+ Tag?: string;
2744
+
2745
+ /**
2746
+ * <p>Allowed values: WEB, APP</p>
2747
+ * <p>Default value: WEB</p>
2748
+ * <p>The platform environment of the post-payment flow. The PaymentFlow value combines with the ReturnURL to manage the redirection behavior after payment:</p>
2749
+ * <p>Set the value to APP to send the user to your platform’s mobile app</p>
2750
+ * <p>Set the value to WEB to send the user to a web browser</p>
2751
+ * <p>In both cases you need to provide the relevant ReturnURL, whether to your app or website.</p>
2752
+ */
2753
+ PaymentFlow?: string;
2754
+
2755
+ /**
2756
+ * The unique reference generated for the profiling session,
2757
+ * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
2758
+ */
2759
+ ProfilingAttemptReference?: string;
2760
+ }
2761
+
2762
+ interface CreateTwintWebPayIn {
2763
+ ExecutionType: "WEB";
2764
+
2765
+ PaymentType: "TWINT";
2766
+
2767
+ /**
2768
+ * A user's ID
2769
+ */
2770
+ AuthorId: string;
2771
+
2772
+ /**
2773
+ * The ID of the wallet where money will be credited
2774
+ */
2775
+ CreditedWalletId: string;
2776
+
2777
+ /**
2778
+ * Information about the debited funds
2779
+ */
2780
+ DebitedFunds: MoneyData;
2781
+
2782
+ /**
2783
+ * Information about the fees taken by the platform for this transaction (and hence transferred to the Fees Wallet)
2784
+ */
2785
+ Fees: MoneyData;
2786
+
2787
+ /**
2788
+ * This is the URL where users are automatically redirected after the payment is validated
2789
+ */
2790
+ ReturnURL: string;
2791
+
2792
+ /**
2793
+ * A custom description to appear on the user's bank statement. It can be up to 10 characters long, and can only include alphanumeric
2794
+ * characters or spaces. See here for important info. Note that each bank handles this information differently, some show less or no information.
2795
+ */
2796
+ StatementDescriptor?: string;
2797
+
2798
+ /**
2799
+ * Custom data that you can add to this object
2800
+ */
2801
+ Tag?: string;
2802
+
2803
+ /**
2804
+ * The unique reference generated for the profiling session,
2805
+ * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
2806
+ */
2807
+ ProfilingAttemptReference?: string;
2808
+ }
2809
+
2810
+ interface BinData {
2811
+ /**
2812
+ * The subtype of the card product. Examples include: CLASSIC, GOLD, PLATINUM, PREPAID, etc.
2813
+ */
2814
+ Subtype: string;
2815
+ /**
2816
+ * The card brand. Examples include: AMERICAN EXPRESS, DISCOVER, JCB, MASTERCARD, VISA, etc.
2817
+ */
2818
+ Brand: string;
2819
+
2820
+ /**
2821
+ * Whether the card is held in a personal or commercial capacity.
2822
+ */
2823
+ CommercialIndicator: string;
2824
+
2825
+ /**
2826
+ * The type of the card. Allowed / Returned / Default values: CREDIT, DEBIT, CHARGE CARD
2827
+ */
2828
+ CardType: string;
2829
+ }
2830
+
2831
+ interface PaymentMethodMetadata {
2832
+ /**
2833
+ * The type of metadata. Allowed values: BIN, GOOGLE_PAY
2834
+ */
2835
+ Type: string;
2836
+
2837
+ /**
2838
+ * The bank identification number (BIN). (Format: 6 or 8 digits)
2839
+ */
2840
+ Bin: string;
2841
+
2842
+ /**
2843
+ * The tokenized payment data provided by the third-party payment method.
2844
+ */
2845
+ Token: string;
2846
+
2847
+ /**
2848
+ * In the case of Google Pay, the format of the Token.
2849
+ * PAN_ONLY – The card is registered in the Google account and requires 3DS authentication.
2850
+ * CRYPTOGRAM_3DS – The card is enrolled in the customer’s Google Wallet and authentication is handled by the Android device.
2851
+ */
2852
+ TokenFormat: string;
2853
+
2854
+ /**
2855
+ * The country where the card was issued. Format: ISO-3166 alpha-2 two-letter country code
2856
+ */
2857
+ IssuerCountryCode: string;
2858
+
2859
+ /**
2860
+ * The name of the card issuer.
2861
+ */
2862
+ IssuingBank: string;
2863
+
2864
+ /**
2865
+ * Additional data about the card based on the BIN. In the case of co-branded card products, two objects are returned.
2866
+ */
2867
+ BinData: BinData[];
2868
+ }
2869
+
2870
+ interface PaymentMethodMetadataRequest {
2871
+ /**
2872
+ * The type of metadata. Allowed values: BIN, GOOGLE_PAY
2873
+ */
2874
+ Type: string;
2875
+
2876
+ /**
2877
+ * The bank identification number (BIN). (Format: 6 or 8 digits)
2878
+ */
2879
+ Bin?: string;
2880
+
2881
+ /**
2882
+ * The tokenized payment data provided by the third-party payment method.
2883
+ */
2884
+ Token?: string;
2885
+ }
2886
+
2887
+ interface PayByBankWebPayInData extends BasePayInData {
2888
+ ExecutionType: "WEB";
2889
+
2890
+ PaymentType: "PAY_BY_BANK";
2891
+
2892
+ /**
2893
+ * The URL to redirect to user to for them to proceed with the payment
2894
+ */
2895
+ RedirectURL: string;
2896
+
2897
+ /**
2898
+ * This is the URL where users are automatically redirected after the payment is validated
2899
+ */
2900
+ ReturnURL: string;
2901
+
2902
+ /**
2903
+ * Custom description to appear on the user’s bank statement along with the platform name
2904
+ */
2905
+ StatementDescriptor: string;
2906
+
2907
+ /**
2908
+ * The end-user residency country
2909
+ */
2910
+ Country: CountryISO;
2911
+
2912
+ /**
2913
+ * The BIC identifier of the end-user’s bank
2914
+ */
2915
+ BIC: string;
2916
+
2917
+ /**
2918
+ * The IBAN identifier of the end-user’s bank
2919
+ */
2920
+ IBAN: string;
2921
+
2922
+ /**
2923
+ * This is the platform environment in which the application is running.Accepted values are:
2924
+ *
2925
+ * - WEB: For web browser usage(default setting)
2926
+ *
2927
+ * - APP: For mobile application usage
2928
+ *
2929
+ * If PaymentFlow is set to APP,the user is redirected to the platform's app after payment
2930
+ */
2931
+ PaymentFlow: string;
2932
+
2933
+ /**
2934
+ * Name of the end-user’s bank
2935
+ */
2936
+ BankName: string;
2937
+
2938
+ /**
2939
+ * The language in which the Pay by Bank payment page isto be displayed - Alpha-2 format (default US)
2940
+ */
2941
+ Culture: string;
2942
+
2943
+ /**
2944
+ * This is the payment scheme the end user selects for processing the transaction,which varies by market
2945
+ * (see details below). Default values are always instant schemes.
2946
+ *
2947
+ * Please note that some banks may charge additional fees for instant payment schemes
2948
+ *
2949
+ * Please note that the scheme is mandatory for the Danish market (”Country” : “DK”)
2950
+ */
2951
+ Scheme: string;
2952
+
2953
+ /**
2954
+ * This is a temporary status indicating that the payment initiation was successful,
2955
+ * but the funds have not yet been received in Mangopay's bank account
2956
+ *
2957
+ * This parameter is only relevant once the transaction has been processed by the end user.
2958
+ * It is not returned when the payment is initiated or successfully completed
2959
+ *
2960
+ * Possible value: PENDING_SUCCEEDED
2961
+ */
2962
+ ProcessingStatus: string;
2963
+ }
2964
+
2965
+ interface CreatePayByBankWebPayIn {
2966
+ ExecutionType: "WEB";
2967
+
2968
+ PaymentType: "PAY_BY_BANK";
2969
+
2970
+ /**
2971
+ * A user's ID
2972
+ */
2973
+ AuthorId: string;
2974
+
2975
+ /**
2976
+ * The ID of the wallet where money will be credited
2977
+ */
2978
+ CreditedWalletId: string;
2979
+
2980
+ /**
2981
+ * Information about the debited funds
2982
+ */
2983
+ DebitedFunds: MoneyData;
2984
+
2985
+ /**
2986
+ * Information about the fees taken by the platform for this transaction (and hence transferred to the Fees Wallet)
2987
+ */
2988
+ Fees: MoneyData;
2989
+
2990
+ /**
2991
+ * The end-user residency country
2992
+ */
2993
+ Country: CountryISO;
2994
+
2995
+ /**
2996
+ * This is the URL where users are automatically redirected after the payment is validated
2997
+ */
2998
+ ReturnURL: string;
2999
+
3000
+ /**
3001
+ * The BIC identifier of the end-user’s bank
3002
+ */
3003
+ BIC?: string;
3004
+
3005
+ /**
3006
+ * The IBAN identifier of the end-user’s bank
3007
+ */
3008
+ IBAN?: string;
3009
+
3010
+ /**
3011
+ * This is the platform environment in which the application is running.Accepted values are:
3012
+ *
3013
+ * - WEB: For web browser usage(default setting)
3014
+ *
3015
+ * - APP: For mobile application usage
3016
+ *
3017
+ * If PaymentFlow is set to APP,the user is redirected to the platform's app after payment
3018
+ */
3019
+ PaymentFlow?: string;
3020
+
3021
+ /**
3022
+ * Name of the end-user’s bank
3023
+ */
3024
+ BankName?: string;
3025
+
3026
+ /**
3027
+ * The language in which the Pay by Bank payment page isto be displayed - Alpha-2 format (default US)
3028
+ */
3029
+ Culture?: string;
3030
+
3031
+ /**
3032
+ * This is the payment scheme the end user selects for processing the transaction,which varies by market
3033
+ * (see details below). Default values are always instant schemes.
3034
+ *
3035
+ * Please note that some banks may charge additional fees for instant payment schemes
3036
+ *
3037
+ * Please note that the scheme is mandatory for the Danish market (”Country” : “DK”)
3038
+ */
3039
+ Scheme?: string;
3040
+
3041
+ /**
3042
+ * This is a temporary status indicating that the payment initiation was successful,
3043
+ * but the funds have not yet been received in Mangopay's bank account
3044
+ *
3045
+ * This parameter is only relevant once the transaction has been processed by the end user.
3046
+ * It is not returned when the payment is initiated or successfully completed
3047
+ *
3048
+ * Possible value: PENDING_SUCCEEDED
3049
+ */
3050
+ ProcessingStatus?: string;
3051
+
3052
+ /**
3053
+ * Custom description to appear on the user’s bank statement along with the platform name
3054
+ */
3055
+ StatementDescriptor?: string;
3056
+
3057
+ /**
3058
+ * Custom data that you can add to this item
3059
+ */
3060
+ Tag?: string;
3061
+
3062
+ /**
3063
+ * The unique reference generated for the profiling session,
3064
+ * used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
3065
+ */
3066
+ ProfilingAttemptReference?: string;
3067
+ }
3068
+
3069
+ interface PayInIntentData extends entityBase.EntityBaseData {
3070
+ /**
3071
+ * An amount of money in the smallest subdivision of the currency
3072
+ */
3073
+ Amount: number;
3074
+
3075
+ /**
3076
+ * The remaining amount on the intent available for transfers
3077
+ */
3078
+ AvailableAmountToSplit: number;
3079
+
3080
+ /**
3081
+ * The currency of the funds
3082
+ */
3083
+ Currency: CurrencyISO;
3084
+
3085
+ /**
3086
+ * Information about the fees
3087
+ */
3088
+ PlatformFeesAmount: number;
3089
+
3090
+ /**
3091
+ * The status of the intent
3092
+ */
3093
+ Status: string;
3094
+
3095
+ /**
3096
+ * The possible next statuses for the intent
3097
+ */
3098
+ NextActions: string;
3099
+
3100
+ /**
3101
+ * Information about the external processed transaction
3102
+ */
3103
+ ExternalData: PayInIntentExternalData;
3104
+
3105
+ /**
3106
+ * Information about the buyer
3107
+ */
3108
+ Buyer: PayInIntentBuyer;
3109
+
3110
+ /**
3111
+ * Information about the items purchased in the transaction.
3112
+ * <p></p>
3113
+ * The total of all LineItems UnitAmount, TaxAmount, DiscountAmount, TotalLineItemAmount must equal the Amount
3114
+ * <p></p>
3115
+ * The total of all LineItems FeesAmount mus equal the PlatformFees amount
3116
+ */
3117
+ LineItems: PayInIntentLineItem[];
3118
+
3119
+ /**
3120
+ * Information about the amounts captured against the intent
3121
+ */
3122
+ Captures: PayInIntentCapture[];
3123
+
3124
+ /**
3125
+ * Information about the amounts refunded against the intent
3126
+ */
3127
+ Refunds: PayInIntentRefund[];
3128
+
3129
+ /**
3130
+ * Information about the amounts refunded against the intent
3131
+ */
3132
+ Disputes: PayInIntentDispute[];
3133
+
3134
+ /**
3135
+ * Information about the amounts split against the intent
3136
+ */
3137
+ Splits: PayInIntentSplitInfo[];
3138
+
3139
+ /**
3140
+ * The unique identifier of the settlement linked to this intent in Mangopay ecosystem
3141
+ */
3142
+ SettlementId: string;
3143
+ }
3144
+
3145
+ interface PayInIntentExternalData {
3146
+ /**
3147
+ * The date at which the transaction was created
3148
+ */
3149
+ ExternalProcessingDate: Timestamp;
3150
+
3151
+ /**
3152
+ * The unique identifier of the transaction at the provider level
3153
+ */
3154
+ ExternalProviderReference: string;
3155
+
3156
+ /**
3157
+ * The unique identifier of the transaction at the merchant level
3158
+ */
3159
+ ExternalMerchantReference: string;
3160
+
3161
+ /**
3162
+ * The name of the external provider processing the transaction
3163
+ */
3164
+ ExternalProviderName: string;
3165
+
3166
+ /**
3167
+ * The name of the payment method used to process the transaction
3168
+ */
3169
+ ExternalProviderPaymentMethod: string;
3170
+ }
3171
+
3172
+ interface CreatePayInIntentAuthorizationExternalData {
3173
+ /**
3174
+ * The date at which the transaction was created
3175
+ */
3176
+ ExternalProcessingDate: Timestamp;
3177
+
3178
+ /**
3179
+ * The unique identifier of the transaction at the provider level
3180
+ */
3181
+ ExternalProviderReference: string;
3182
+
3183
+ /**
3184
+ * The unique identifier of the transaction at the merchant level
3185
+ */
3186
+ ExternalMerchantReference?: string;
3187
+
3188
+ /**
3189
+ * The name of the external provider processing the transaction
3190
+ */
3191
+ ExternalProviderName: string;
3192
+
3193
+ /**
3194
+ * The name of the payment method used to process the transaction
3195
+ */
3196
+ ExternalProviderPaymentMethod?: string;
3197
+ }
3198
+
3199
+ interface CreatePayInIntentFullCaptureExternalData {
3200
+ /**
3201
+ * The date at which the transaction was created
3202
+ */
3203
+ ExternalProcessingDate?: Timestamp;
3204
+
3205
+ /**
3206
+ * The unique identifier of the transaction at the provider level
3207
+ */
3208
+ ExternalProviderReference?: string;
3209
+
3210
+ /**
3211
+ * The unique identifier of the transaction at the merchant level
3212
+ */
3213
+ ExternalMerchantReference?: string;
3214
+
3215
+ /**
3216
+ * The name of the external provider processing the transaction
3217
+ */
3218
+ ExternalProviderName?: string;
3219
+
3220
+ /**
3221
+ * The name of the payment method used to process the transaction
3222
+ */
3223
+ ExternalProviderPaymentMethod?: string;
3224
+ }
3225
+
3226
+ interface CreatePayInIntentPartialCaptureExternalData {
3227
+ /**
3228
+ * The date at which the transaction was created
3229
+ */
3230
+ ExternalProcessingDate: Timestamp;
3231
+
3232
+ /**
3233
+ * The unique identifier of the transaction at the provider level
3234
+ */
3235
+ ExternalProviderReference: string;
3236
+
3237
+ /**
3238
+ * The unique identifier of the transaction at the merchant level
3239
+ */
3240
+ ExternalMerchantReference?: string;
3241
+
3242
+ /**
3243
+ * The name of the external provider processing the transaction
3244
+ */
3245
+ ExternalProviderName?: string;
3246
+
3247
+ /**
3248
+ * The name of the payment method used to process the transaction
3249
+ */
3250
+ ExternalProviderPaymentMethod?: string;
3251
+ }
3252
+
3253
+ interface PayInIntentBuyer {
3254
+ /**
3255
+ * The unique identifier of the user at the source of the transaction
3256
+ */
3257
+ Id?: string;
3258
+ }
3259
+
3260
+ interface PayInIntentSeller {
3261
+ /**
3262
+ * The unique identifier of the seller providing the item
3263
+ * <p></p>
3264
+ * One valid value must be sent between AuthorId & WalletId
3265
+ */
3266
+ AuthorId?: string;
3267
+
3268
+ /**
3269
+ * The unique identifier of the wallet to credit the seller funds
3270
+ * <p>
3271
+ * One valid value must be sent between AuthorId & WalletId
3272
+ */
3273
+ WalletId?: string;
3274
+
3275
+ /**
3276
+ * Information about the fees
3277
+ */
3278
+ FeesAmount?: number;
3279
+
3280
+ /**
3281
+ * Information about the date when the funds are to be transferred to the seller’s wallet
3282
+ * <p></p>
3283
+ * Must be a date in the future
3284
+ */
3285
+ TransferDate?: Timestamp;
3286
+ }
3287
+
3288
+ interface PayInIntentLineItem {
3289
+ /**
3290
+ * The unique identifier of the user at the source of the transaction
3291
+ */
3292
+ Id?: string;
3293
+
3294
+ /**
3295
+ * Information about the seller involved in the transaction
3296
+ */
3297
+ Seller: PayInIntentSeller;
3298
+
3299
+ /**
3300
+ * The unique identifier of the item
3301
+ */
3302
+ Sku: string;
3303
+
3304
+ /**
3305
+ * The name of the item
3306
+ */
3307
+ Name?: string;
3308
+
3309
+ /**
3310
+ * The description of the item
3311
+ */
3312
+ Description?: string;
3313
+
3314
+ /**
3315
+ * The quantity of the item
3316
+ */
3317
+ Quantity: number;
3318
+
3319
+ /**
3320
+ * The cost of the item, excluding tax and discount
3321
+ */
3322
+ UnitAmount: number;
3323
+
3324
+ /**
3325
+ * The item total amount to be captured
3326
+ */
3327
+ Amount?: number;
3328
+
3329
+ /**
3330
+ * The tax amount applied to the item
3331
+ */
3332
+ TaxAmount?: number;
3333
+
3334
+ /**
3335
+ * The discount amount applied to the item
3336
+ */
3337
+ DiscountAmount?: number;
3338
+
3339
+ /**
3340
+ * The item category
3341
+ */
3342
+ Category?: string;
3343
+
3344
+ /**
3345
+ * Information about the end user’s shipping address
3346
+ */
3347
+ ShippingAddress?: address.AddressData;
3348
+
3349
+ /**
3350
+ * The item total amount including tax and discount
3351
+ */
3352
+ TotalLineItemAmount?: number;
3353
+
3354
+ /**
3355
+ * The item total canceled amount
3356
+ */
3357
+ CanceledAmount?: number;
3358
+
3359
+ /**
3360
+ * The item total captured amount
3361
+ */
3362
+ CapturedAmount?: number;
3363
+
3364
+ /**
3365
+ * The item total refunded amount
3366
+ */
3367
+ RefundedAmount?: number;
3368
+
3369
+ /**
3370
+ * The item total disputed amount
3371
+ */
3372
+ DisputedAmount?: number;
3373
+
3374
+ /**
3375
+ * The item total split amount
3376
+ */
3377
+ SplitAmount?: number;
3378
+ }
3379
+
3380
+ interface CreatePayInIntentPartialCaptureLineItem {
3381
+ /**
3382
+ * The unique identifier of the user at the source of the transaction
3383
+ */
3384
+ Id: string;
3385
+
3386
+ /**
3387
+ * The item total amount to be captured
3388
+ */
3389
+ Amount: number;
3390
+ }
3391
+
3392
+ interface PayInIntentCapture {
3393
+ /**
3394
+ * The unique identifier of the user at the source of the transaction
3395
+ */
3396
+ Id: string;
3397
+
3398
+ /**
3399
+ * The date at which the object was created
3400
+ */
3401
+ CreationDate: Timestamp;
3402
+
3403
+ /**
3404
+ * The date at which the object was successfully moved to CAPTURED
3405
+ */
3406
+ ExecutionDate: Timestamp;
3407
+
3408
+ /**
3409
+ * The captured amount
3410
+ */
3411
+ Amount: number;
3412
+
3413
+ /**
3414
+ * The status of the capture
3415
+ */
3416
+ Status: string;
3417
+
3418
+ /**
3419
+ * Information about the items captured in the transaction.
3420
+ */
3421
+ LineItems: PayInIntentLineItem[];
3422
+ }
3423
+
3424
+ interface PayInIntentRefund {
3425
+ /**
3426
+ * The unique identifier of the user at the source of the transaction
3427
+ */
3428
+ Id: string;
3429
+
3430
+ /**
3431
+ * The date at which the object was created
3432
+ */
3433
+ CreationDate: Timestamp;
3434
+
3435
+ /**
3436
+ * The date at which the object was successfully moved to REFUNDED
3437
+ */
3438
+ ExecutionDate: Timestamp;
3439
+
3440
+ /**
3441
+ * The refunded amount
3442
+ */
3443
+ Amount: number;
3444
+
3445
+ /**
3446
+ * The status of the refund
3447
+ */
3448
+ Status: string;
3449
+
3450
+ /**
3451
+ * Information about the items captured in the transaction.
3452
+ */
3453
+ LineItems: PayInIntentLineItem[];
3454
+ }
3455
+
3456
+ interface PayInIntentDispute {
3457
+ /**
3458
+ * The unique identifier of the user at the source of the transaction
3459
+ */
3460
+ Id: string;
3461
+
3462
+ /**
3463
+ * The date at which the object was created
3464
+ */
3465
+ CreationDate: Timestamp;
3466
+
3467
+ /**
3468
+ * The date at which the object was successfully moved to DISPUTED
3469
+ */
3470
+ ExecutionDate: Timestamp;
3471
+
3472
+ /**
3473
+ * The disputed amount
3474
+ */
3475
+ Amount: number;
3476
+
3477
+ /**
3478
+ * The status of the dispute
3479
+ */
3480
+ Status: string;
3481
+
3482
+ /**
3483
+ * Information about the items captured in the transaction.
3484
+ */
3485
+ LineItems: PayInIntentLineItem[];
3486
+ }
3487
+
3488
+ interface PayInIntentSplitInfo {
3489
+ /**
3490
+ * The unique identifier of the user at the source of the transaction
3491
+ */
3492
+ Id: string;
3493
+
3494
+ /**
3495
+ * The date at which the object was created
3496
+ */
3497
+ CreationDate: Timestamp;
3498
+
3499
+ /**
3500
+ * The date at which the object was successfully moved to CREATED
3501
+ */
3502
+ ExecutionDate: Timestamp;
3503
+
3504
+ /**
3505
+ * The split amount
3506
+ */
3507
+ Amount: number;
3508
+
3509
+ /**
3510
+ * The status of the split
3511
+ */
3512
+ Status: string;
3513
+
3514
+ /**
3515
+ * Information about the items captured in the transaction.
3516
+ */
3517
+ LineItems: PayInIntentLineItem[];
3518
+ }
3519
+
3520
+ interface CreatePayInIntentAuthorization {
3521
+ /**
3522
+ * An amount of money in the smallest subdivision of the currency
3523
+ */
3524
+ Amount: number;
3525
+
3526
+ /**
3527
+ * The currency of the funds
3528
+ */
3529
+ Currency: CurrencyISO;
3530
+
3531
+ /**
3532
+ * Information about the fees
3533
+ */
3534
+ PlatformFeesAmount?: number;
3535
+
3536
+ /**
3537
+ * Information about the external processed transaction
3538
+ */
3539
+ ExternalData: CreatePayInIntentAuthorizationExternalData;
3540
+
3541
+ /**
3542
+ * Information about the buyer
3543
+ */
3544
+ Buyer?: PayInIntentBuyer;
3545
+
3546
+ /**
3547
+ * Information about the items purchased in the transaction.
3548
+ * <p></p>
3549
+ * The total of all LineItems UnitAmount, TaxAmount, DiscountAmount, TotalLineItemAmount must equal the Amount
3550
+ * <p></p>
3551
+ * The total of all LineItems FeesAmount mus equal the PlatformFees amount
3552
+ */
3553
+ LineItems: PayInIntentLineItem[];
3554
+ }
3555
+
3556
+ interface CreatePayInIntentFullCapture {
3557
+ /**
3558
+ * Information about the external processed transaction
3559
+ */
3560
+ ExternalData?: CreatePayInIntentFullCaptureExternalData;
3561
+ }
3562
+
3563
+ interface CreatePayInIntentPartialCapture {
3564
+ /**
3565
+ * An amount of money in the smallest subdivision of the currency
3566
+ */
3567
+ Amount: number;
3568
+
3569
+ /**
3570
+ * The currency of the funds
3571
+ */
3572
+ Currency?: CurrencyISO;
3573
+
3574
+ /**
3575
+ * Information about the fees
3576
+ */
3577
+ PlatformFeesAmount?: number;
3578
+
3579
+ /**
3580
+ * Information about the external processed transaction
3581
+ */
3582
+ ExternalData: CreatePayInIntentPartialCaptureExternalData;
3583
+
3584
+ /**
3585
+ * Information about the items purchased in the transaction.
3586
+ * <p></p>
3587
+ * The total of all LineItems UnitAmount, TaxAmount, DiscountAmount, TotalLineItemAmount must equal the Amount
3588
+ * <p></p>
3589
+ * The total of all LineItems FeesAmount mus equal the PlatformFees amount
3590
+ */
3591
+ LineItems: CreatePayInIntentPartialCaptureLineItem[];
3592
+ }
3593
+
3594
+ interface FullCancelPayInIntent {
3595
+ ExternalData?: CancelPayInIntentExternalData;
3596
+ }
3597
+
3598
+ interface PartialCancelPayInIntent {
3599
+ Amount: number;
3600
+ Currency?: CurrencyISO;
3601
+ PlatformFees?: number;
3602
+ ExternalData?: CancelPayInIntentExternalData;
3603
+ LineItems: CancelPayInIntentLineItem[];
3604
+ }
3605
+
3606
+ interface CancelPayInIntentExternalData {
3607
+ /**
3608
+ * The date at which the transaction was created
3609
+ */
3610
+ ExternalProcessingDate?: Timestamp;
3611
+
3612
+ /**
3613
+ * The unique identifier of the transaction at the provider level
3614
+ */
3615
+ ExternalProviderReference?: string;
3616
+
3617
+ /**
3618
+ * The unique identifier of the transaction at the merchant level
3619
+ */
3620
+ ExternalMerchantReference?: string;
3621
+
3622
+ /**
3623
+ * The name of the external provider processing the transaction
3624
+ */
3625
+ ExternalProviderName?: string;
3626
+
3627
+ /**
3628
+ * The name of the payment method used to process the transaction
3629
+ */
3630
+ ExternalProviderPaymentMethod?: string;
3631
+ }
3632
+
3633
+ interface CancelPayInIntentLineItem {
3634
+ Id: string;
3635
+ Amount: number;
3636
+ }
3637
+
3638
+ interface PayInIntentSplitData {
3639
+ /**
3640
+ * The unique identifier of an item in Mangopay ecosystem
3641
+ */
3642
+ LineItemId: string;
3643
+
3644
+ /**
3645
+ * The unique identifier of the seller providing the item (userId)
3646
+ */
3647
+ SellerId?: string;
3648
+
3649
+ /**
3650
+ * The unique identifier of the wallet to credit the seller funds
3651
+ */
3652
+ WalletId?: string;
3653
+
3654
+ /**
3655
+ * Information about the amount to be credited to the seller wallet
3656
+ */
3657
+ SplitAmount: number;
3658
+
3659
+ /**
3660
+ * Information about the fees
3661
+ */
3662
+ FeesAmount?: number;
3663
+
3664
+ /**
3665
+ * Information about the date when the funds are to be transferred to the seller’s wallet
3666
+ * Must be a date in the future
3667
+ */
3668
+ TransferDate?: number;
3669
+
3670
+ /**
3671
+ * The description of the split object
3672
+ */
3673
+ Description?: string;
3674
+
3675
+ /**
3676
+ * The status of the split
3677
+ */
3678
+ Status?: string;
3679
+ }
3680
+
3681
+ interface CreatePayInIntentSplit {
3682
+ /**
3683
+ * The unique identifier of an item in Mangopay ecosystem
3684
+ */
3685
+ LineItemId: string;
3686
+ /**
3687
+ * Information about the amount to be credited to the seller wallet
3688
+ */
3689
+ SplitAmount: number;
3690
+
3691
+ /**
3692
+ * Information about the fees
3693
+ */
3694
+ FeesAmount?: number;
3695
+
3696
+ /**
3697
+ * Information about the date when the funds are to be transferred to the seller’s wallet
3698
+ * Must be a date in the future
3699
+ */
3700
+ TransferDate?: number;
3701
+
3702
+ /**
3703
+ * The description of the split object
3704
+ */
3705
+ Description?: string;
3706
+ }
3707
+
3708
+ interface CreatePayInIntentSplits {
3709
+ Splits: CreatePayInIntentSplit[];
3710
+ }
3711
+
3712
+ interface PayInIntentSplitsData {
3713
+ Splits: PayInIntentSplitData[];
3714
+ }
3715
+
3716
+ interface UpdatePayInIntentSplit {
3717
+ LineItemId: string;
3718
+ SplitAmount?: string;
3719
+ FeesAmount?: string;
3720
+ TransferDate?: number;
3721
+ Description?: string;
3722
+ }
3723
+
3724
+ interface Bank {
3725
+ BankName: string;
3726
+ Scheme: string[];
3727
+ Name: string;
3728
+ }
3729
+
3730
+ interface BanksByCountry {
3731
+ Banks: Bank[];
3732
+ Country: CountryISO;
3733
+ }
3734
+
3735
+ interface SupportedBank {
3736
+ Countries: BanksByCountry[];
3737
+ }
3738
+
3739
+ interface PayByBankSupportedBank {
3740
+ SupportedBanks: SupportedBank;
3741
+ }
3742
+ }