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
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2016 Mangopay
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,179 @@
1
+ Mangopay Node.js SDK
2
+ =================================================
3
+ MangopaySDK is a Node.js client library to work with [Mangopay REST API](http://docs.mangopay.com/api-references/).
4
+
5
+
6
+ Installation
7
+ -------------------------------------------------
8
+ Install the module via npm
9
+
10
+ npm install mangopay4-nodejs-sdk --save
11
+
12
+ Usage inside your app
13
+
14
+ var mangopay = require('mangopay4-nodejs-sdk');
15
+
16
+ var api = new mangopay({
17
+ clientId: 'your_client_id',
18
+ clientApiKey: 'your_client_api_key',
19
+ // Set the right production API url. If testing, omit the property since it defaults to sandbox URL
20
+ baseUrl: 'https://api.mangopay.com'
21
+ });
22
+
23
+ api.Users.create(...)
24
+
25
+ Supported options
26
+ -------------------------------------------------
27
+ | Option | Default value | Description |
28
+ | -------- | ----------- | ----------- |
29
+ |clientId |null | API Client Id|
30
+ |clientApiKey|null| API Client Api Key|
31
+ |baseUrl|"https://api.sandbox.mangopay.com"| API Base URL. The default value points to sandbox. Production is 'https://api.mangopay.com'|
32
+ |debugMode|false| Active debugging|
33
+ |logClass|```function() {console.log(arguments)}```|Log function to be used for debug|
34
+ |connectionTimeout|30000|Set the connection timeout limit (in milliseconds)|
35
+ |responseTimeout|80000|Set the response timeout limit (in milliseconds)|
36
+ |apiVersion|'v2.01'|API Version|
37
+ |errorHandler|```function(options, err) {console.error(options, err)}```|Set a custom error handler
38
+
39
+ Documentation
40
+ -------------------------------------------------
41
+ [Github Full Node.js SDK Documentation](docs/README.md) is located in ``/docs`` folder.
42
+ You can also access [API References on our website](https://docs.mangopay.com/endpoints/).
43
+
44
+ License
45
+ -------------------------------------------------
46
+ MangopaySDK is distributed under MIT license, see the [LICENSE file](LICENSE).
47
+
48
+ Contacts
49
+ -------------------------------------------------
50
+ Report bugs or suggest features using
51
+ [issue tracker on GitHub](https://github.com/Mangopay/mangopay2-nodejs-sdk/issues).
52
+
53
+ Account creation
54
+ -------------------------------------------------
55
+ You can get yourself a free sandbox account or sign up for a production account by [registering on the Mangopay site](https://www.mangopay.com/start/) (note that validation of your production account involves several steps, so think about doing it in advance of when you actually want to go live).
56
+
57
+
58
+ ### Creating a user
59
+
60
+ #### Using a hash of properties:
61
+ ```ts
62
+ mangopay.Users.create({
63
+ "FirstName": "Victor",
64
+ "LastName": "Hugo",
65
+ "Address": "1 rue des Misérables, Paris",
66
+ "Birthday": 1300186358,
67
+ "Nationality": "FR",
68
+ "CountryOfResidence": "FR",
69
+ "Occupation": "Writer",
70
+ "IncomeRange": "6",
71
+ "ProofOfIdentity": null,
72
+ "ProofOfAddress": null,
73
+ "PersonType": "NATURAL",
74
+ "Email": "victor@hugo.com",
75
+ "Tag": "custom tag",
76
+ }, function(model) {
77
+ // User created - using callback
78
+ }).then(function(model){
79
+ // User created - using promise
80
+ });
81
+ ```
82
+
83
+ #### Using Mangopay SDK pre-defined models:
84
+ ```ts
85
+ var myUser = new api.models.UserLegal({
86
+ Name: 'MangoPay',
87
+ Email: 'info@mangopay.com',
88
+ LegalPersonType: 'BUSINESS',
89
+ LegalRepresentativeFirstName: 'Mango',
90
+ LegalRepresentativeLastName: 'Pay',
91
+ LegalRepresentativeEmail: 'mango@mangopay.com',
92
+ HeadquartersAddress: new api.models.Address({
93
+ AddressLine1: "4101 Reservoir Rd NW",
94
+ AddressLine2: "",
95
+ City: "Washington",
96
+ Region: "District of Columbia",
97
+ PostalCode: "20007",
98
+ Country: "US"
99
+ }),
100
+ LegalRepresentativeBirthday: 1300186358,
101
+ LegalRepresentativeNationality: 'FR',
102
+ LegalRepresentativeCountryOfResidence: 'FR',
103
+ CompanyNumber: 123456789,
104
+ Tag: 'custom tag'
105
+ });
106
+
107
+ api.Users.create(myUser).then(function(){
108
+ // Output the created user data to console
109
+ console.log(myUser.Name + ' user created at ' + myUser.CreationDate);
110
+ });
111
+ ```
112
+
113
+ #### Promise vs Callback
114
+ Mangopay Node.js SDK supports both callback and promise approach.
115
+ Here is how they can be implemented :
116
+
117
+ ```ts
118
+ api.Service.method(... , function(data, response, err){
119
+ // Callback method
120
+ })
121
+
122
+ api.Service.method(...).then(function(data) {
123
+ // Promise function called
124
+ }, function(error) {
125
+ //exception
126
+ })
127
+ ```
128
+
129
+ ### Pagination / Filtering
130
+ In order to [paginate or filter](https://docs.mangopay.com/guide/lists-pagination-management) results,
131
+ we can use ``options.parameters`` to specify these options:
132
+ ```ts
133
+ api.Transactions.getAll({
134
+ parameters: {
135
+ // Pagination
136
+ per_page: 2,
137
+ page: 2,
138
+
139
+ // Filters
140
+ BeforeDate: 1414000367,
141
+ AfterDate: 1414000367,
142
+ Nature: REGULAR,
143
+ Status: FAILED,
144
+ Type: TRANSFER
145
+ }
146
+ }
147
+ ```
148
+
149
+ ### Reading server response headers
150
+ For [reading the server response headers](examples/readResponseHeaders.js) we can use ``options.resolveWithFullResponse: true``
151
+ ```ts
152
+ api.Users.getAll(null, {
153
+ parameters: {
154
+ per_page: 1
155
+ },
156
+ resolveWithFullResponse: true
157
+ }).then(function(response){
158
+ // Read pages count
159
+ console.log(response.headers['x-number-of-pages']);
160
+
161
+ // Read response body
162
+ console.log(response.body);
163
+ });
164
+ ```
165
+
166
+ Sample usage of Mangopay SDK installed with npm in a Node.js project
167
+ -------------------------------------------------
168
+ Don't forget to check examples folder !
169
+
170
+ Contributing
171
+ -------------------------------------------------
172
+ npm start // installs dependencies and global mocha for testing and jsdox for documentation
173
+ npm test // runs the mocha tests
174
+ npm run-script documentation // update documentation using jsdox, make sure to have it installed globally
175
+
176
+ Unit Tests
177
+ -------------------------------------------------
178
+ Mocha tests are placed under ``/test/`` folder. To run the tests, make sure you have all dependencies installed.
179
+ Check Contributing section for details.
@@ -0,0 +1,35 @@
1
+ # BankAccounts
2
+
3
+
4
+
5
+
6
+
7
+ * * *
8
+
9
+ ### BankAccounts.getTransactions(bankAccountId, callback, options)
10
+
11
+ Retrieve list of transactions for a bank account
12
+
13
+ **Parameters**
14
+
15
+ **bankAccountId**: `number`, Bank Account Id
16
+
17
+ **callback**: `function`, Callback function
18
+
19
+ **options**: `Object`, Request options
20
+
21
+ **Returns**: `Object`, Request promise
22
+
23
+
24
+
25
+ * * *
26
+
27
+
28
+
29
+
30
+
31
+
32
+
33
+
34
+
35
+
@@ -0,0 +1,108 @@
1
+ # BankingAliases
2
+
3
+
4
+
5
+
6
+
7
+ * * *
8
+
9
+ ### BankingAliases.create(bankingAlias, callback, options)
10
+
11
+ Create a banking alias
12
+
13
+ **Parameters**
14
+
15
+ **bankingAlias**: `Object`, Banking Alias Data
16
+
17
+ **callback**: `function`, Callback function
18
+
19
+ **options**: `Object`, Request options
20
+
21
+ **Returns**: `Object`, Request promise
22
+
23
+
24
+ ### BankingAliases.get(bankingAliasId, callback, options)
25
+
26
+ Get a banking alias
27
+
28
+ **Parameters**
29
+
30
+ **bankingAliasId**: `number`, Banking Alias Id
31
+
32
+ **callback**: `function`, Callback function
33
+
34
+ **options**: `Object`, Request options
35
+
36
+ **Returns**: `Object`, Request promise
37
+
38
+
39
+ ### BankingAliases.getAll(callback, options)
40
+
41
+ Get all banking aliases
42
+
43
+ **Parameters**
44
+
45
+ **callback**: `function`, Callback function
46
+
47
+ **options**: `Object`, Request options
48
+
49
+ **Returns**: `Object`, Request promise
50
+
51
+
52
+ ### BankingAliases.update(bankingAliasId, callback, options)
53
+
54
+ Update banking alias
55
+
56
+ **Parameters**
57
+
58
+ **bankingAliasId**: `number`, Banking Alias Id
59
+
60
+ **callback**: `function`, Callback function
61
+
62
+ **options**: `Object`, Request options
63
+
64
+ **Returns**: `Object`, Request promise
65
+
66
+
67
+ ### BankingAliases.deactivate(bankingAliasId, callback, options)
68
+
69
+ Deactivate banking alias
70
+
71
+ **Parameters**
72
+
73
+ **bankingAliasId**: `number`, Banking Alias Id
74
+
75
+ **callback**: `function`, Callback function
76
+
77
+ **options**: `Object`, Request options
78
+
79
+ **Returns**: `Object`, Request promise
80
+
81
+
82
+ ### BankingAliases.activate(bankingAliasId, callback, options)
83
+
84
+ Activate banking alias
85
+
86
+ **Parameters**
87
+
88
+ **bankingAliasId**: `number`, Banking Alias Id
89
+
90
+ **callback**: `function`, Callback function
91
+
92
+ **options**: `Object`, Request options
93
+
94
+ **Returns**: `Object`, Request promise
95
+
96
+
97
+
98
+ * * *
99
+
100
+
101
+
102
+
103
+
104
+
105
+
106
+
107
+
108
+
@@ -0,0 +1,55 @@
1
+ # CardPreAuthorizations
2
+
3
+ [MangoPay Card Pre-Authorizations API Reference](https://docs.mangopay.com/endpoints/v2.01/preauthorizations)
4
+
5
+
6
+
7
+ * * *
8
+
9
+ ### CardPreAuthorizations.create(cardPreAuthorization, callback, options)
10
+
11
+ Create new pre-authorization
12
+
13
+ **Parameters**
14
+
15
+ **cardPreAuthorization**: `Object`, CardPreAuthorization object or properties hash
16
+
17
+ **callback**: `function`, Callback function
18
+
19
+ **options**: `Object`, Request options
20
+
21
+ **Returns**: `Object`, Promise of the request
22
+
23
+
24
+ ### CardPreAuthorizations.get(cardPreAuthorizationId, callback, options)
25
+
26
+ Get pre-authorization object
27
+
28
+ **Parameters**
29
+
30
+ **cardPreAuthorizationId**: `number`, PreAuthorization identifier
31
+
32
+ **callback**: `function`, Callback function
33
+
34
+ **options**: `Object`, Request options
35
+
36
+ **Returns**: `Object`, Request promise
37
+
38
+
39
+ ### CardPreAuthorizations.update(cardPreAuthorization, callback, options)
40
+
41
+ Update pre-authorization object
42
+
43
+ **Parameters**
44
+
45
+ **cardPreAuthorization**: `Object`, CardPreAuthorization object of properties hash
46
+
47
+ **callback**: `function`, Update pre-authorization object
48
+
49
+ **options**: `Object`, Update pre-authorization object
50
+
51
+ **Returns**: `Object`, Request promise
52
+
53
+
54
+
55
+ * * *
@@ -0,0 +1,55 @@
1
+ # CardRegistrations
2
+
3
+ [MangoPay Card Registration API Reference](https://docs.mangopay.com/endpoints/v2.01/cards)
4
+
5
+
6
+
7
+ * * *
8
+
9
+ ### CardRegistrations.create(cardRegistration, callback, options)
10
+
11
+ Create new card registration
12
+
13
+ **Parameters**
14
+
15
+ **cardRegistration**: `Object`, CardRegistration object or properties hash
16
+
17
+ **callback**: `function`, Callback function
18
+
19
+ **options**: `Object`, Request options
20
+
21
+ **Returns**: `Object`, Promise of the request
22
+
23
+
24
+ ### CardRegistrations.get(cardRegistrationId, callback, options)
25
+
26
+ Get registration
27
+
28
+ **Parameters**
29
+
30
+ **cardRegistrationId**: `number`, Registration identifier
31
+
32
+ **callback**: `function`, Callback function
33
+
34
+ **options**: `Object`, Request options
35
+
36
+ **Returns**: `Object`, Request promise
37
+
38
+
39
+ ### CardRegistrations.update(cardRegistration, callback, options)
40
+
41
+ Update card registration
42
+
43
+ **Parameters**
44
+
45
+ **cardRegistration**: `Object`, CardPreAuthorization object of properties hash
46
+
47
+ **callback**: `function`, Callback function
48
+
49
+ **options**: `Object`, Request options
50
+
51
+ **Returns**: `Object`, Request promise
52
+
53
+
54
+
55
+ * * *
package/docs/Cards.md ADDED
@@ -0,0 +1,82 @@
1
+ # Cards
2
+
3
+ [MangoPay Cards API Reference](https://docs.mangopay.com/endpoints/v2.01/cards#e177_the-card-registration-object)
4
+
5
+
6
+
7
+ * * *
8
+
9
+ ### Cards.get(cardId, callback, options)
10
+
11
+ Get card
12
+
13
+ **Parameters**
14
+
15
+ **cardId**: `number`, Card identifier
16
+
17
+ **callback**: `function`, Callback function
18
+
19
+ **options**: `Object`, Request options
20
+
21
+ **Returns**: `Object`, Request promise
22
+
23
+
24
+ ### Cards.getByFingerprint(fingerprint)
25
+
26
+ Gets a list of cards having the same fingerprint.
27
+ The fingerprint is a hash uniquely generated per 16-digit card number.
28
+
29
+ **Parameters**
30
+
31
+ **fingerprint**: , The fingerprint hash
32
+
33
+ **Returns**: , List of Cards corresponding to provided fingerprint
34
+
35
+
36
+ ### Cards.update(card, callback, options)
37
+
38
+ Update card
39
+
40
+ **Parameters**
41
+
42
+ **card**: `Object`, Card object of properties hash
43
+
44
+ **callback**: `function`, Callback function
45
+
46
+ **options**: `Object`, Request options
47
+
48
+ **Returns**: `Object`, Request promise
49
+
50
+
51
+ ### Cards.getTransactions(cardId, callback, options)
52
+
53
+ Get list of Transactions of a Card
54
+
55
+ **Parameters**
56
+
57
+ **cardId**: `number`, Card identifier
58
+
59
+ **callback**: `function`, Callback function
60
+
61
+ **options**: `object`, Request options
62
+
63
+ **Returns**: `object`, Request promise
64
+
65
+
66
+ ### Cards.getPreAuthorizations(cardId, callback, options)
67
+
68
+ Gets list of PreAuthorizations of a Card.
69
+
70
+ **Parameters**
71
+
72
+ **cardId**: `number`, Card identifier
73
+
74
+ **callback**: `function`, Callback function
75
+
76
+ **options**: `Object`, Request options
77
+
78
+ **Returns**: `Object`, Request promise
79
+
80
+
81
+
82
+ * * *
@@ -0,0 +1,142 @@
1
+ # Clients
2
+
3
+ [MangoPay Users API Reference](https://docs.mangopay.com/endpoints/v2.01/clients)
4
+
5
+
6
+
7
+ * * *
8
+
9
+ ### Clients.get(clientId, callback, options)
10
+
11
+ Get client by ID
12
+
13
+ **Parameters**
14
+
15
+ **clientId**: `string`, Client identifier
16
+
17
+ **callback**: `function`, Callback function
18
+
19
+ **options**: `Object`, Request options
20
+
21
+ **Returns**: `Object`, Request promise
22
+
23
+
24
+ ### Clients.update(client, callback, options)
25
+
26
+ Update client
27
+
28
+ **Parameters**
29
+
30
+ **client**: , Client to be updated
31
+
32
+ **callback**: , Callback function
33
+
34
+ **options**: , Request options
35
+
36
+ **Returns**: `*`, Promise of the request
37
+
38
+
39
+ ### Clients.uploadLogo(logo, callback, options)
40
+
41
+ Upload client logo
42
+
43
+ **Parameters**
44
+
45
+ **logo**: `string`, Logo
46
+
47
+ **callback**: `function`, Callback function
48
+
49
+ **options**: `Object`, Request options
50
+
51
+ **Returns**: `Object`, Promise of the request
52
+
53
+
54
+ ### Clients.uploadLogoFromFile(file, callback, options)
55
+
56
+ Upload client logo from file
57
+
58
+ **Parameters**
59
+
60
+ **file**: `string`, File path
61
+
62
+ **callback**: `function`, Callback function
63
+
64
+ **options**: `Object`, Request options
65
+
66
+ **Returns**: `Object`, Promise of the request
67
+
68
+
69
+ ### Clients.getClientWallets(callback, options)
70
+
71
+ Get all client wallets
72
+
73
+ **Parameters**
74
+
75
+ **callback**: `function`, Callback function
76
+
77
+ **options**: `Object`, Request options
78
+
79
+ **Returns**: `Object`, Promise of the request
80
+
81
+
82
+ ### Clients.getClientWallet(fundsType, currency, callback, options)
83
+
84
+ Get a client wallet
85
+
86
+ **Parameters**
87
+
88
+ **fundsType**: , Wallet's funds type
89
+
90
+ **currency**: , Currency of the wallet
91
+
92
+ **callback**: `function`, Callback function
93
+
94
+ **options**: `Object`, Request options
95
+
96
+ **Returns**: `Object`, Promise of the request
97
+
98
+
99
+ ### Clients.getClientWalletsByFundsType(fundsType, callback, options)
100
+
101
+ Get client wallets by the type of funds
102
+
103
+ **Parameters**
104
+
105
+ **fundsType**: , Wallets funds type
106
+
107
+ **callback**: `function`, Callback function
108
+
109
+ **options**: `Object`, Request options
110
+
111
+ **Returns**: `Object`, Promise of the request
112
+
113
+
114
+ ### Clients.getClientWalletTransactions(fundsType, currency, callback, options)
115
+
116
+ Get a client wallet's transactions
117
+
118
+ **Parameters**
119
+
120
+ **fundsType**: , Wallet's funds type
121
+
122
+ **currency**: , Currency of the wallet
123
+
124
+ **callback**: `function`, Callback function
125
+
126
+ **options**: `Object`, Request options
127
+
128
+ **Returns**: `Object`, Promise of the request
129
+
130
+
131
+
132
+ * * *
133
+
134
+
135
+
136
+
137
+
138
+
139
+
140
+
141
+
142
+