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.
- package/.github/workflows/node.js.yml +32 -0
- package/.github/workflows/npm-publish.yml +26 -0
- package/.jshintrc +16 -0
- package/CHANGELOG.md +946 -0
- package/LICENSE +21 -0
- package/README.md +179 -0
- package/docs/BankAccounts.md +35 -0
- package/docs/BankingAliases.md +108 -0
- package/docs/CardPreAuthorizations.md +55 -0
- package/docs/CardRegistrations.md +55 -0
- package/docs/Cards.md +82 -0
- package/docs/Clients.md +142 -0
- package/docs/DisputeDocuments.md +53 -0
- package/docs/Disputes.md +292 -0
- package/docs/Events.md +23 -0
- package/docs/Hooks.md +68 -0
- package/docs/Idempotency.md +11 -0
- package/docs/KycDocuments.md +52 -0
- package/docs/Mandates.md +125 -0
- package/docs/OptionsHelper.md +32 -0
- package/docs/PayIns.md +72 -0
- package/docs/PayOuts.md +55 -0
- package/docs/README.md +131 -0
- package/docs/Refunds.md +25 -0
- package/docs/Reports.md +63 -0
- package/docs/Repudiations.md +25 -0
- package/docs/Responses.md +33 -0
- package/docs/Transfers.md +72 -0
- package/docs/UboDeclarations.md +70 -0
- package/docs/Users.md +322 -0
- package/docs/Wallets.md +70 -0
- package/docs/templates/class.mustache +11 -0
- package/docs/templates/file.mustache +53 -0
- package/docs/templates/function.mustache +33 -0
- package/docs/templates/index.mustache +26 -0
- package/docs/templates/overview.mustache +1 -0
- package/examples/createUsers.js +112 -0
- package/examples/createWallet.js +28 -0
- package/examples/failedRequest.js +20 -0
- package/examples/getBankAccounts.js +29 -0
- package/examples/getUserEmoney.js +16 -0
- package/examples/getUsers.js +32 -0
- package/examples/readResponseHeaders.js +42 -0
- package/index.js +1 -0
- package/lib/Model.js +58 -0
- package/lib/api.js +467 -0
- package/lib/apiMethods.js +270 -0
- package/lib/config.js +57 -0
- package/lib/log.js +9 -0
- package/lib/mangopay.js +8 -0
- package/lib/models/Address.js +32 -0
- package/lib/models/BankAccount.js +45 -0
- package/lib/models/BankAccountDetails.js +7 -0
- package/lib/models/BankAccountDetailsCA.js +12 -0
- package/lib/models/BankAccountDetailsGB.js +10 -0
- package/lib/models/BankAccountDetailsIBAN.js +10 -0
- package/lib/models/BankAccountDetailsOTHER.js +16 -0
- package/lib/models/BankAccountDetailsUS.js +14 -0
- package/lib/models/BankAccountType.js +8 -0
- package/lib/models/BankingAlias.js +37 -0
- package/lib/models/BankingAliasIBAN.js +27 -0
- package/lib/models/Billing.js +14 -0
- package/lib/models/BinData.js +16 -0
- package/lib/models/Birthplace.js +10 -0
- package/lib/models/BrowserInfo.js +15 -0
- package/lib/models/Card.js +19 -0
- package/lib/models/CardInfo.js +32 -0
- package/lib/models/CardPreAuthorization.js +144 -0
- package/lib/models/CardRegistration.js +29 -0
- package/lib/models/CardValidation.js +19 -0
- package/lib/models/CategorizeUserLegal.js +15 -0
- package/lib/models/CategorizeUserNatural.js +18 -0
- package/lib/models/Check.js +13 -0
- package/lib/models/CheckData.js +8 -0
- package/lib/models/Client.js +62 -0
- package/lib/models/ClientWallet.js +28 -0
- package/lib/models/Conversion.js +19 -0
- package/lib/models/ConversionRate.js +10 -0
- package/lib/models/CountryAuthorization.js +12 -0
- package/lib/models/DebitedBankAccount.js +15 -0
- package/lib/models/DeclaredUbo.js +29 -0
- package/lib/models/DeclaredUboStatus.js +17 -0
- package/lib/models/Deposit.js +29 -0
- package/lib/models/Dispute.js +46 -0
- package/lib/models/DisputeDocument.js +10 -0
- package/lib/models/DisputeDocumentPage.js +12 -0
- package/lib/models/DisputeReason.js +11 -0
- package/lib/models/Document.js +12 -0
- package/lib/models/DocumentPageConsult.js +17 -0
- package/lib/models/EMoney.js +30 -0
- package/lib/models/EntityBase.js +70 -0
- package/lib/models/Hook.js +19 -0
- package/lib/models/IdempotencyResponse.js +11 -0
- package/lib/models/IdentityVerification.js +12 -0
- package/lib/models/KycDocument.js +11 -0
- package/lib/models/KycDocumentStatus.js +7 -0
- package/lib/models/KycDocumentType.js +7 -0
- package/lib/models/KycPage.js +12 -0
- package/lib/models/LegalPersonType.js +7 -0
- package/lib/models/LegalRepresentative.js +16 -0
- package/lib/models/Mandate.js +69 -0
- package/lib/models/MandateStatus.js +7 -0
- package/lib/models/Money.js +16 -0
- package/lib/models/PayByBankSupportedBank.js +7 -0
- package/lib/models/PayIn.js +36 -0
- package/lib/models/PayInExecutionDetails.js +7 -0
- package/lib/models/PayInExecutionDetailsBankingAlias.js +19 -0
- package/lib/models/PayInExecutionDetailsDirect.js +29 -0
- package/lib/models/PayInExecutionDetailsWeb.js +40 -0
- package/lib/models/PayInExecutionType.js +5 -0
- package/lib/models/PayInIntent.js +20 -0
- package/lib/models/PayInIntentSplit.js +14 -0
- package/lib/models/PayInIntentSplits.js +7 -0
- package/lib/models/PayInPaymentDetails.js +7 -0
- package/lib/models/PayInPaymentDetailsApplePay.js +19 -0
- package/lib/models/PayInPaymentDetailsBancontact.js +13 -0
- package/lib/models/PayInPaymentDetailsBankWire.js +23 -0
- package/lib/models/PayInPaymentDetailsBankingAlias.js +18 -0
- package/lib/models/PayInPaymentDetailsBizum.js +23 -0
- package/lib/models/PayInPaymentDetailsBlik.js +17 -0
- package/lib/models/PayInPaymentDetailsCard.js +10 -0
- package/lib/models/PayInPaymentDetailsCardDirect.js +14 -0
- package/lib/models/PayInPaymentDetailsCardWeb.js +28 -0
- package/lib/models/PayInPaymentDetailsDirectDebitDirect.js +22 -0
- package/lib/models/PayInPaymentDetailsDirectDebitWeb.js +13 -0
- package/lib/models/PayInPaymentDetailsGiropay.js +15 -0
- package/lib/models/PayInPaymentDetailsGooglePay.js +35 -0
- package/lib/models/PayInPaymentDetailsIdeal.js +25 -0
- package/lib/models/PayInPaymentDetailsKlarna.js +36 -0
- package/lib/models/PayInPaymentDetailsMbway.js +20 -0
- package/lib/models/PayInPaymentDetailsMultibanco.js +14 -0
- package/lib/models/PayInPaymentDetailsPayByBank.js +71 -0
- package/lib/models/PayInPaymentDetailsPayPal.js +63 -0
- package/lib/models/PayInPaymentDetailsPayconiq.js +23 -0
- package/lib/models/PayInPaymentDetailsPreAuthorized.js +10 -0
- package/lib/models/PayInPaymentDetailsSatispay.js +19 -0
- package/lib/models/PayInPaymentDetailsSwish.js +35 -0
- package/lib/models/PayInPaymentDetailsTwint.js +15 -0
- package/lib/models/PayInPaymentType.js +21 -0
- package/lib/models/PayInRecurringRegistration.js +64 -0
- package/lib/models/PayInTemplateURLOptions.js +10 -0
- package/lib/models/PayOut.js +24 -0
- package/lib/models/PayOutPaymentDetails.js +7 -0
- package/lib/models/PayOutPaymentDetailsBankWire.js +32 -0
- package/lib/models/PayOutPaymentType.js +3 -0
- package/lib/models/PaymentData.js +20 -0
- package/lib/models/PaymentMethodMetadata.js +38 -0
- package/lib/models/PayoutMethods.js +7 -0
- package/lib/models/PendingUserAction.js +16 -0
- package/lib/models/PersonType.js +5 -0
- package/lib/models/PlatformCategorization.js +16 -0
- package/lib/models/PlatformType.js +10 -0
- package/lib/models/Quote.js +11 -0
- package/lib/models/Recipient.js +20 -0
- package/lib/models/RecipientSchema.js +17 -0
- package/lib/models/RecurringPayIn.js +10 -0
- package/lib/models/RecurringPayInCIT.js +32 -0
- package/lib/models/RecurringPayInCurrentState.js +24 -0
- package/lib/models/RecurringPayInMIT.js +27 -0
- package/lib/models/RecurringPayInPut.js +24 -0
- package/lib/models/Refund.js +26 -0
- package/lib/models/RefundReasonDetails.js +10 -0
- package/lib/models/Report.js +54 -0
- package/lib/models/ReportFilter.js +52 -0
- package/lib/models/ReportFilterV2.js +11 -0
- package/lib/models/ReportV2.js +28 -0
- package/lib/models/Repudiation.js +51 -0
- package/lib/models/SecurityInfo.js +12 -0
- package/lib/models/Settlement.js +16 -0
- package/lib/models/SettlementTransfer.js +37 -0
- package/lib/models/Shipping.js +14 -0
- package/lib/models/ShippingAddress.js +25 -0
- package/lib/models/ShippingPreference.js +5 -0
- package/lib/models/Transaction.js +50 -0
- package/lib/models/Transfer.js +13 -0
- package/lib/models/Ubo.js +19 -0
- package/lib/models/UboDeclaration.js +42 -0
- package/lib/models/UboDeclarationRefusedReasonType.js +23 -0
- package/lib/models/UboDeclarationStatus.js +26 -0
- package/lib/models/UboRefusedReasonType.js +14 -0
- package/lib/models/User.js +66 -0
- package/lib/models/UserCategory.js +5 -0
- package/lib/models/UserConsent.js +7 -0
- package/lib/models/UserDataFormatValidation.js +7 -0
- package/lib/models/UserEnrollmentResult.js +7 -0
- package/lib/models/UserLegal.js +65 -0
- package/lib/models/UserLegalOwner.js +66 -0
- package/lib/models/UserLegalPayer.js +66 -0
- package/lib/models/UserLegalSca.js +57 -0
- package/lib/models/UserNatural.js +51 -0
- package/lib/models/UserNaturalCapacity.js +13 -0
- package/lib/models/UserNaturalOwner.js +55 -0
- package/lib/models/UserNaturalPayer.js +55 -0
- package/lib/models/UserNaturalPut.js +49 -0
- package/lib/models/UserNaturalSca.js +56 -0
- package/lib/models/VirtualAccount.js +22 -0
- package/lib/models/Wallet.js +32 -0
- package/lib/models/index.js +102 -0
- package/lib/service.js +14 -0
- package/lib/services/BankAccounts.js +31 -0
- package/lib/services/BankingAliases.js +137 -0
- package/lib/services/CardPreAuthorizations.js +75 -0
- package/lib/services/CardRegistrations.js +64 -0
- package/lib/services/Cards.js +168 -0
- package/lib/services/Clients.js +196 -0
- package/lib/services/Conversions.js +155 -0
- package/lib/services/Deposits.js +109 -0
- package/lib/services/DisputeDocuments.js +65 -0
- package/lib/services/Disputes.js +409 -0
- package/lib/services/Events.js +24 -0
- package/lib/services/Hooks.js +81 -0
- package/lib/services/Idempotency.js +17 -0
- package/lib/services/IdentityVerifications.js +48 -0
- package/lib/services/KycDocuments.js +66 -0
- package/lib/services/Mandates.js +161 -0
- package/lib/services/OptionsHelper.js +20 -0
- package/lib/services/PayIns.js +690 -0
- package/lib/services/PayOuts.js +110 -0
- package/lib/services/Recipients.js +117 -0
- package/lib/services/Refunds.js +29 -0
- package/lib/services/Regulatory.js +29 -0
- package/lib/services/Reports.js +61 -0
- package/lib/services/ReportsV2.js +55 -0
- package/lib/services/Repudiations.js +33 -0
- package/lib/services/Responses.js +23 -0
- package/lib/services/Settlements.js +74 -0
- package/lib/services/Transfers.js +87 -0
- package/lib/services/UboDeclarations.js +135 -0
- package/lib/services/Users.js +831 -0
- package/lib/services/VirtualAccounts.js +99 -0
- package/lib/services/Wallets.js +85 -0
- package/lib/services/index.js +34 -0
- package/lib/utils.js +36 -0
- package/package.json +40 -0
- package/test/TestKycPageFile.png +0 -0
- package/test/helpers.js +1431 -0
- package/test/main.js +10 -0
- package/test/mocha.opts +3 -0
- package/test/services/BankAccounts.js +46 -0
- package/test/services/BankingAliases.js +89 -0
- package/test/services/CardPreAuthorizations.js +70 -0
- package/test/services/CardRegistrations.js +239 -0
- package/test/services/Cards.js +54 -0
- package/test/services/Clients.js +235 -0
- package/test/services/Conversions.js +308 -0
- package/test/services/Deposits.js +148 -0
- package/test/services/Disputes.js +542 -0
- package/test/services/EMoney.js +54 -0
- package/test/services/Events.js +143 -0
- package/test/services/Hooks.js +109 -0
- package/test/services/Idempotency.js +46 -0
- package/test/services/IdentityVerifications.js +68 -0
- package/test/services/KycDocuments.js +73 -0
- package/test/services/Mandates.js +256 -0
- package/test/services/PayIns.js +2553 -0
- package/test/services/PayOuts.js +106 -0
- package/test/services/RateLimit.js +48 -0
- package/test/services/Recipients.js +234 -0
- package/test/services/Refunds.js +123 -0
- package/test/services/Regulatory.js +45 -0
- package/test/services/Reports.js +114 -0
- package/test/services/ReportsV2.js +306 -0
- package/test/services/Repudiations.js +22 -0
- package/test/services/Settlements.js +58 -0
- package/test/services/Tokens.js +55 -0
- package/test/services/Transfers.js +137 -0
- package/test/services/UboDeclarations.js +135 -0
- package/test/services/Users.js +1303 -0
- package/test/services/VirtualAccounts.js +105 -0
- package/test/services/Wallets.js +132 -0
- package/test/settlement_sample.csv +8 -0
- package/typings/base.d.ts +308 -0
- package/typings/enums.d.ts +204 -0
- package/typings/index.d.ts +885 -0
- package/typings/index.test-d.ts +1535 -0
- package/typings/models/address.d.ts +70 -0
- package/typings/models/bankAccount.d.ts +235 -0
- package/typings/models/bankingAlias.d.ts +97 -0
- package/typings/models/billing.d.ts +42 -0
- package/typings/models/birthplace.d.ts +9 -0
- package/typings/models/card.d.ts +119 -0
- package/typings/models/cardPreauthorization.d.ts +157 -0
- package/typings/models/cardRegistration.d.ts +83 -0
- package/typings/models/cardValidation.d.ts +125 -0
- package/typings/models/client.d.ts +208 -0
- package/typings/models/conversion.d.ts +225 -0
- package/typings/models/conversionRate.d.ts +29 -0
- package/typings/models/countryAuthorization.d.ts +16 -0
- package/typings/models/deposit.d.ts +104 -0
- package/typings/models/dispute.d.ts +116 -0
- package/typings/models/disputeDocument.d.ts +119 -0
- package/typings/models/entityBase.d.ts +9 -0
- package/typings/models/event.d.ts +142 -0
- package/typings/models/hook.d.ts +39 -0
- package/typings/models/idempotency.d.ts +36 -0
- package/typings/models/identityVerification.d.ts +98 -0
- package/typings/models/kycDocument.d.ts +114 -0
- package/typings/models/mandate.d.ts +93 -0
- package/typings/models/money.d.ts +45 -0
- package/typings/models/payIn.d.ts +3742 -0
- package/typings/models/payOut.d.ts +144 -0
- package/typings/models/recipient.d.ts +242 -0
- package/typings/models/refund.d.ts +92 -0
- package/typings/models/report.d.ts +234 -0
- package/typings/models/reportV2.d.ts +145 -0
- package/typings/models/repudiation.d.ts +26 -0
- package/typings/models/securityInfo.d.ts +12 -0
- package/typings/models/settlement.d.ts +50 -0
- package/typings/models/settlementTransfer.d.ts +37 -0
- package/typings/models/shipping.d.ts +37 -0
- package/typings/models/shippingAddress.d.ts +15 -0
- package/typings/models/transaction.d.ts +85 -0
- package/typings/models/transfer.d.ts +119 -0
- package/typings/models/uboDeclaration.d.ts +100 -0
- package/typings/models/user.d.ts +1001 -0
- package/typings/models/virtualAccount.d.ts +182 -0
- package/typings/models/wallet.d.ts +46 -0
- package/typings/models.d.ts +74 -0
- package/typings/services/BankAccounts.d.ts +12 -0
- package/typings/services/BankingAliases.d.ts +51 -0
- package/typings/services/CardPreauthorizations.d.ts +44 -0
- package/typings/services/CardRegistrations.d.ts +43 -0
- package/typings/services/Cards.d.ts +80 -0
- package/typings/services/Clients.d.ts +77 -0
- package/typings/services/Conversions.d.ts +23 -0
- package/typings/services/Deposits.d.ts +20 -0
- package/typings/services/DisputeDocuments.d.ts +27 -0
- package/typings/services/Disputes.d.ts +169 -0
- package/typings/services/Events.d.ts +11 -0
- package/typings/services/Hooks.d.ts +33 -0
- package/typings/services/Idempotency.d.ts +7 -0
- package/typings/services/IdentityVerifications.d.ts +29 -0
- package/typings/services/KycDocuments.d.ts +38 -0
- package/typings/services/Mandates.d.ts +59 -0
- package/typings/services/OptionsHelper.d.ts +11 -0
- package/typings/services/PayIns.d.ts +319 -0
- package/typings/services/PayOuts.d.ts +34 -0
- package/typings/services/Recipients.d.ts +55 -0
- package/typings/services/Refunds.d.ts +12 -0
- package/typings/services/Regulatory.d.ts +17 -0
- package/typings/services/Reports.d.ts +26 -0
- package/typings/services/ReportsV2.d.ts +26 -0
- package/typings/services/Repudiations.d.ts +12 -0
- package/typings/services/Responses.d.ts +10 -0
- package/typings/services/Settlements.d.ts +28 -0
- package/typings/services/Transfers.d.ts +38 -0
- package/typings/services/UboDeclarations.d.ts +81 -0
- package/typings/services/Users.d.ts +308 -0
- package/typings/services/VirtualAccounts.d.ts +42 -0
- package/typings/services/Wallets.d.ts +36 -0
- package/typings/tsconfig.json +20 -0
- package/typings/tslint.json +11 -0
- package/typings/types.d.ts +652 -0
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module PayOuts
|
|
3
|
+
* @desc [MangoPay PayOuts API Reference](https://docs.mangopay.com/endpoints/v2.01/payouts)
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
var Service = require('../service');
|
|
7
|
+
|
|
8
|
+
var PayOut = require('../models/PayOut');
|
|
9
|
+
var PayOutPaymentDetailsBankWire = require('../models/PayOutPaymentDetailsBankWire');
|
|
10
|
+
var Refund = require('../models/Refund');
|
|
11
|
+
|
|
12
|
+
var PayOuts = Service.extend({
|
|
13
|
+
/**
|
|
14
|
+
* Create new pay-out
|
|
15
|
+
* @param {Object} payOut PayOut object
|
|
16
|
+
* @param {Function} callback Callback function
|
|
17
|
+
* @param {Object} options Request options
|
|
18
|
+
* @return {Object} Request promise
|
|
19
|
+
*/
|
|
20
|
+
create: function(payOut, callback, options) {
|
|
21
|
+
options = this._api._getOptions(callback, options, {
|
|
22
|
+
data: payOut,
|
|
23
|
+
dataClass: PayOut
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
var paymentKey = this.getPaymentKey(payOut);
|
|
27
|
+
|
|
28
|
+
return this._api.method('payouts_' + paymentKey + '_create', callback, options);
|
|
29
|
+
},
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Get payout
|
|
33
|
+
* @param {number} payOutId PayOut identifiers
|
|
34
|
+
* @param {Function} callback Callback function
|
|
35
|
+
* @param {Object} options Request options
|
|
36
|
+
* @return {Object} Request promise
|
|
37
|
+
*/
|
|
38
|
+
get: function(payOutId, callback, options) {
|
|
39
|
+
options = this._api._getOptions(callback, options, {
|
|
40
|
+
path: {
|
|
41
|
+
id: payOutId
|
|
42
|
+
},
|
|
43
|
+
dataClass: PayOut
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
return this._api.method('payouts_get', callback, options);
|
|
47
|
+
},
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Get payout
|
|
51
|
+
* @param {number} payOutId PayOut identifiers
|
|
52
|
+
* @param {Function} callback Callback function
|
|
53
|
+
* @param {Object} options Request options
|
|
54
|
+
* @return {Object} Request promise
|
|
55
|
+
*/
|
|
56
|
+
getBankwire: function(payOutId, callback, options) {
|
|
57
|
+
options = this._api._getOptions(callback, options, {
|
|
58
|
+
path: {
|
|
59
|
+
id: payOutId
|
|
60
|
+
},
|
|
61
|
+
dataClass: PayOut
|
|
62
|
+
});
|
|
63
|
+
|
|
64
|
+
return this._api.method('payouts_bankwire_get', callback, options);
|
|
65
|
+
},
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Gets list of Refunds of a PayOut
|
|
69
|
+
* @param {number} payOutId PayOut identifier
|
|
70
|
+
* @param {function} callback Callback function
|
|
71
|
+
* @param {Object} options Request options
|
|
72
|
+
* @return {Object} Request promise
|
|
73
|
+
*/
|
|
74
|
+
getRefunds: function(payOutId, callback, options) {
|
|
75
|
+
if (options && !options.hasOwnProperty('parameters'))
|
|
76
|
+
Object.assign(options, {parameters: {...options}});
|
|
77
|
+
options = this._api._getOptions(callback, options, {
|
|
78
|
+
path: {
|
|
79
|
+
id: payOutId
|
|
80
|
+
},
|
|
81
|
+
dataClass: Refund
|
|
82
|
+
});
|
|
83
|
+
|
|
84
|
+
return this._api.method("refunds_get_for_payout", callback, options);
|
|
85
|
+
},
|
|
86
|
+
|
|
87
|
+
getPaymentKey: function(payOut) {
|
|
88
|
+
if (!payOut.MeanOfPaymentDetails && !payOut.PaymentType) {
|
|
89
|
+
this._api.errorHandler('Create Payout needs MeanOfPaymentDetails or PaymentType');
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
// Payment Type can be BANK_WIRE, etc.
|
|
93
|
+
if (payOut.PaymentType) {
|
|
94
|
+
return payOut.PaymentType.toLowerCase().replace('_', '');
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
if (payOut.MeanOfPaymentDetails instanceof PayOutPaymentDetailsBankWire) return 'bankwire';
|
|
98
|
+
},
|
|
99
|
+
|
|
100
|
+
checkEligibility: function(payOut, callback, options) {
|
|
101
|
+
options = this._api._getOptions(callback, options, {
|
|
102
|
+
data: payOut,
|
|
103
|
+
dataClass: PayOut
|
|
104
|
+
});
|
|
105
|
+
|
|
106
|
+
return this._api.method('payouts_check_eligibility', callback, options);
|
|
107
|
+
},
|
|
108
|
+
});
|
|
109
|
+
|
|
110
|
+
module.exports = PayOuts;
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
var Service = require('../service');
|
|
2
|
+
var Recipient = require('../models/Recipient');
|
|
3
|
+
var RecipientSchema = require('../models/RecipientSchema');
|
|
4
|
+
var PayoutMethods = require('../models/PayoutMethods');
|
|
5
|
+
|
|
6
|
+
var Recipients = Service.extend({
|
|
7
|
+
/**
|
|
8
|
+
* Create a Recipient
|
|
9
|
+
*/
|
|
10
|
+
create: function(recipient, userId, callback, options) {
|
|
11
|
+
options = this._api._getOptions(callback, options, {
|
|
12
|
+
data: recipient,
|
|
13
|
+
dataClass: Recipient,
|
|
14
|
+
path: {
|
|
15
|
+
userId: userId
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
return this._api.method('recipients_create', callback, options);
|
|
20
|
+
},
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Get a Recipient
|
|
24
|
+
*/
|
|
25
|
+
get: function(recipientId, callback, options) {
|
|
26
|
+
options = this._api._getOptions(callback, options, {
|
|
27
|
+
path: {
|
|
28
|
+
recipientId: recipientId
|
|
29
|
+
},
|
|
30
|
+
dataClass: Recipient
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
return this._api.method('recipients_get', callback, options);
|
|
34
|
+
},
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Get all Recipients for a user
|
|
38
|
+
*/
|
|
39
|
+
getUserRecipients: function(userId, callback, options) {
|
|
40
|
+
if (options && !options.hasOwnProperty('parameters')) {
|
|
41
|
+
Object.assign(options, {parameters: {...options}});
|
|
42
|
+
}
|
|
43
|
+
options = this._api._getOptions(callback, options, {
|
|
44
|
+
path: {
|
|
45
|
+
userId: userId
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
return this._api.method('recipients_get_all', callback, options);
|
|
50
|
+
},
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Get a Recipient schema
|
|
54
|
+
*/
|
|
55
|
+
getSchema: function(payoutMethodType, recipientType, currency, country, callback, options) {
|
|
56
|
+
options = this._api._getOptions(callback, options, {
|
|
57
|
+
path: {
|
|
58
|
+
payoutMethodType: payoutMethodType,
|
|
59
|
+
recipientType: recipientType,
|
|
60
|
+
currency: currency,
|
|
61
|
+
country: country
|
|
62
|
+
},
|
|
63
|
+
dataClass: RecipientSchema
|
|
64
|
+
});
|
|
65
|
+
|
|
66
|
+
return this._api.method('recipients_get_schema', callback, options);
|
|
67
|
+
},
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Get a Payment Methods
|
|
71
|
+
*/
|
|
72
|
+
getPayoutMethods: function(country, currency, callback, options) {
|
|
73
|
+
options = this._api._getOptions(callback, options, {
|
|
74
|
+
path: {
|
|
75
|
+
country: country,
|
|
76
|
+
currency: currency
|
|
77
|
+
},
|
|
78
|
+
dataClass: PayoutMethods
|
|
79
|
+
});
|
|
80
|
+
|
|
81
|
+
return this._api.method('recipients_get_payout_methods', callback, options);
|
|
82
|
+
},
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* Validates a Recipient
|
|
86
|
+
*/
|
|
87
|
+
validate: function(recipient, userId, callback, options) {
|
|
88
|
+
options = this._api._getOptions(callback, options, {
|
|
89
|
+
data: recipient,
|
|
90
|
+
path: {
|
|
91
|
+
userId: userId
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
|
|
95
|
+
return this._api.method('recipients_validate', callback, options);
|
|
96
|
+
},
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* Deactivates a Recipient
|
|
100
|
+
*/
|
|
101
|
+
deactivate: function(recipientId, callback, options) {
|
|
102
|
+
options = this._api._getOptions(callback, options, {
|
|
103
|
+
data: {
|
|
104
|
+
"Status": "DEACTIVATED"
|
|
105
|
+
},
|
|
106
|
+
dataClass: Recipient,
|
|
107
|
+
path: {
|
|
108
|
+
recipientId: recipientId
|
|
109
|
+
}
|
|
110
|
+
});
|
|
111
|
+
|
|
112
|
+
return this._api.method('recipients_deactivate', callback, options);
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
});
|
|
116
|
+
|
|
117
|
+
module.exports = Recipients;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module Refunds
|
|
3
|
+
* @desc [MangoPay Refunds API Reference](https://docs.mangopay.com/endpoints/v2.01/refunds)
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
var Service = require('../service');
|
|
7
|
+
var Refund = require('../models/Refund');
|
|
8
|
+
|
|
9
|
+
var Refunds = Service.extend({
|
|
10
|
+
/**
|
|
11
|
+
* Get events
|
|
12
|
+
* @param {number} refundId Refund id
|
|
13
|
+
* @param {Function} callback Callback function
|
|
14
|
+
* @param {Object} options Request options
|
|
15
|
+
* @return {Object} Request promise
|
|
16
|
+
*/
|
|
17
|
+
get: function(refundId, callback, options) {
|
|
18
|
+
options = this._api._getOptions(callback, options, {
|
|
19
|
+
path: {
|
|
20
|
+
id: refundId
|
|
21
|
+
},
|
|
22
|
+
dataClass: Refund
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
return this._api.method('refunds_get', callback, options);
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
module.exports = Refunds;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
var Service = require('../service');
|
|
2
|
+
const CountryAuthorization = require("../models/CountryAuthorization");
|
|
3
|
+
|
|
4
|
+
var Regulatory = Service.extend({
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* View the restrictions for a specific country
|
|
8
|
+
* @param countryCode: the code of the Country
|
|
9
|
+
*/
|
|
10
|
+
getCountryAuthorizations: function(countryCode, callback, options) {
|
|
11
|
+
options = this._api._getOptions(callback, options, {
|
|
12
|
+
path: {
|
|
13
|
+
countryCode: countryCode
|
|
14
|
+
},
|
|
15
|
+
dataClass: CountryAuthorization
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
return this._api.method('countries_get_one', callback, options);
|
|
19
|
+
},
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* View the restrictions for al countries
|
|
23
|
+
*/
|
|
24
|
+
getAllCountriesAuthorizations: function(callback, options) {
|
|
25
|
+
return this._api.method('countries_get_all', callback, options);
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
module.exports = Regulatory;
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module Reports
|
|
3
|
+
* @desc [MangoPay Reports API Reference](https://docs.mangopay.com/endpoints/v2.01/reporting)
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
var Service = require('../service');
|
|
7
|
+
var Report = require('../models/Report');
|
|
8
|
+
|
|
9
|
+
var Reports = Service.extend({
|
|
10
|
+
/**
|
|
11
|
+
* Create a report
|
|
12
|
+
* @param {Object} report Report Data
|
|
13
|
+
* @param {Function} callback Callback function
|
|
14
|
+
* @param {Object} options Request options
|
|
15
|
+
* @return {Object} Request promise
|
|
16
|
+
*/
|
|
17
|
+
create: function(report, callback, options) {
|
|
18
|
+
options = this._api._getOptions(callback, options, {
|
|
19
|
+
data: report,
|
|
20
|
+
dataClass: Report
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
if (!report.ReportType) {
|
|
24
|
+
throw new Error('Please specify ReportType in the report data (ex: "TRANSACTIONS", "WALLETS")')
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
var reportType = report.ReportType.toLowerCase();
|
|
28
|
+
|
|
29
|
+
return this._api.method('reports_' + report.ReportType.toLowerCase() + '_create', callback, options);
|
|
30
|
+
},
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Get a report
|
|
34
|
+
* @param {number} reportId Report Id
|
|
35
|
+
* @param {Function} callback Callback function
|
|
36
|
+
* @param {Object} options Request options
|
|
37
|
+
* @return {Object} Request promise
|
|
38
|
+
*/
|
|
39
|
+
get: function(reportId, callback, options) {
|
|
40
|
+
options = this._api._getOptions(callback, options, {
|
|
41
|
+
path: {
|
|
42
|
+
id: reportId
|
|
43
|
+
},
|
|
44
|
+
dataClass: Report
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
return this._api.method('reports_get', callback, options);
|
|
48
|
+
},
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Get all reports
|
|
52
|
+
* @param {Function} callback Callback function
|
|
53
|
+
* @param {Object} options Request options
|
|
54
|
+
* @return {Object} Request promise
|
|
55
|
+
*/
|
|
56
|
+
getAll: function(callback, options) {
|
|
57
|
+
return this._api.method('reports_all', callback, options);
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
|
|
61
|
+
module.exports = Reports;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module Reports 2025
|
|
3
|
+
* @desc [MangoPay Reports API Reference](https://mangopay-reports.mintlify.app/api-reference/reporting/report-object)
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
var Service = require('../service');
|
|
7
|
+
var ReportV2 = require('../models/ReportV2');
|
|
8
|
+
|
|
9
|
+
var ReportsV2 = Service.extend({
|
|
10
|
+
/**
|
|
11
|
+
* Create a report
|
|
12
|
+
* @param {Object} report Report Data
|
|
13
|
+
* @param {Function} callback Callback function
|
|
14
|
+
* @param {Object} options Request options
|
|
15
|
+
* @return {Object} Request promise
|
|
16
|
+
*/
|
|
17
|
+
create: function (report, callback, options) {
|
|
18
|
+
options = this._api._getOptions(callback, options, {
|
|
19
|
+
data: report,
|
|
20
|
+
dataClass: ReportV2
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
return this._api.method('reports_create', callback, options);
|
|
24
|
+
},
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Get a report
|
|
28
|
+
* @param {number} reportId Report Id
|
|
29
|
+
* @param {Function} callback Callback function
|
|
30
|
+
* @param {Object} options Request options
|
|
31
|
+
* @return {Object} Request promise
|
|
32
|
+
*/
|
|
33
|
+
get: function (reportId, callback, options) {
|
|
34
|
+
options = this._api._getOptions(callback, options, {
|
|
35
|
+
path: {
|
|
36
|
+
id: reportId
|
|
37
|
+
},
|
|
38
|
+
dataClass: ReportV2
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
return this._api.method('reports_get_v2', callback, options);
|
|
42
|
+
},
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Get all reports
|
|
46
|
+
* @param {Function} callback Callback function
|
|
47
|
+
* @param {Object} options Request options
|
|
48
|
+
* @return {Object} Request promise
|
|
49
|
+
*/
|
|
50
|
+
getAll: function (callback, options) {
|
|
51
|
+
return this._api.method('reports_all_v2', callback, options);
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
module.exports = ReportsV2;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module Repudiations
|
|
3
|
+
* @desc [MangoPay Repudiations API Reference](https://docs.mangopay.com/endpoints/v2.01/repudiations)
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
var Service = require('../service');
|
|
7
|
+
|
|
8
|
+
var Refund = require('../models/Refund');
|
|
9
|
+
|
|
10
|
+
var Repudiations = Service.extend({
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Gets list of Refunds of a Repudiation
|
|
14
|
+
* @param {number} repudiationId Repudiation identifier
|
|
15
|
+
* @param {function} callback Callback function
|
|
16
|
+
* @param {Object} options Request options
|
|
17
|
+
* @return {Object} Request promise
|
|
18
|
+
*/
|
|
19
|
+
getRefunds: function(repudiationId, callback, options) {
|
|
20
|
+
if (options && !options.hasOwnProperty('parameters'))
|
|
21
|
+
Object.assign(options, {parameters: {...options}});
|
|
22
|
+
options = this._api._getOptions(callback, options, {
|
|
23
|
+
path: {
|
|
24
|
+
id: repudiationId
|
|
25
|
+
},
|
|
26
|
+
dataClass: Refund
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
return this._api.method("refunds_get_for_repudiation", callback, options);
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
module.exports = Repudiations;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module Responses
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
var _ = require('underscore');
|
|
6
|
+
|
|
7
|
+
var Service = require('../service');
|
|
8
|
+
|
|
9
|
+
var Responses = Service.extend({
|
|
10
|
+
/**
|
|
11
|
+
* Get response from previous call
|
|
12
|
+
* @param {Function} callback Callback function
|
|
13
|
+
* @param {Object} options Request options
|
|
14
|
+
* @return {Object} Request promise
|
|
15
|
+
*/
|
|
16
|
+
get: function(callback, options) {
|
|
17
|
+
options = this._api._getOptions(callback, options);
|
|
18
|
+
|
|
19
|
+
return this._api.method('responses_get', callback, options);
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
module.exports = Responses;
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module Settlements
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
var Service = require('../service');
|
|
6
|
+
var Settlement = require('../models/Settlement');
|
|
7
|
+
|
|
8
|
+
var Settlements = Service.extend({
|
|
9
|
+
/**
|
|
10
|
+
* Upload a settlement file
|
|
11
|
+
* @param {Buffer} file The settlement file to be uploaded
|
|
12
|
+
* @param {Function} callback Callback function
|
|
13
|
+
* @param {Object} options Request options
|
|
14
|
+
* @return {Object} Request promise
|
|
15
|
+
*/
|
|
16
|
+
upload: function (file, callback, options) {
|
|
17
|
+
if (file === undefined || !Buffer.isBuffer(file)) {
|
|
18
|
+
throw new Error('The file needs to be a Buffer');
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
options = this._api._getOptions(callback, options, {
|
|
22
|
+
dataClass: Settlement,
|
|
23
|
+
data: {
|
|
24
|
+
file: file,
|
|
25
|
+
fileName: 'settlement_file.csv'
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
return this._api.multipartFormMethod('settlement_create', callback, options);
|
|
30
|
+
},
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Get a settlement
|
|
34
|
+
* @param {string} settlementId Settlement Id
|
|
35
|
+
* @param {Function} callback Callback function
|
|
36
|
+
* @param {Object} options Request options
|
|
37
|
+
* @return {Object} Request promise
|
|
38
|
+
*/
|
|
39
|
+
get: function (settlementId, callback, options) {
|
|
40
|
+
options = this._api._getOptions(callback, options, {
|
|
41
|
+
path: {id: settlementId},
|
|
42
|
+
dataClass: Settlement
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
return this._api.method('settlement_get', callback, options);
|
|
46
|
+
},
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Update a settlement file
|
|
50
|
+
* @param {string} settlementId Settlement identifier
|
|
51
|
+
* @param {Buffer} file The settlement file to be updated
|
|
52
|
+
* @param {Function} callback Callback function
|
|
53
|
+
* @param {Object} options Request options
|
|
54
|
+
* @return {Object} Request promise
|
|
55
|
+
*/
|
|
56
|
+
update: function (settlementId, file, callback, options) {
|
|
57
|
+
if (file === undefined || !Buffer.isBuffer(file)) {
|
|
58
|
+
throw new Error('The file needs to be a Buffer');
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
options = this._api._getOptions(callback, options, {
|
|
62
|
+
dataClass: Settlement,
|
|
63
|
+
data: {
|
|
64
|
+
file: file,
|
|
65
|
+
fileName: 'settlement_file.csv'
|
|
66
|
+
},
|
|
67
|
+
path: {id: settlementId}
|
|
68
|
+
});
|
|
69
|
+
|
|
70
|
+
return this._api.multipartFormMethod('settlement_update', callback, options);
|
|
71
|
+
},
|
|
72
|
+
});
|
|
73
|
+
|
|
74
|
+
module.exports = Settlements;
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module Transfers
|
|
3
|
+
* @desc [MangoPay Transfers API Reference](https://docs.mangopay.com/endpoints/v2.01/transfers)
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
var Service = require('../service');
|
|
7
|
+
|
|
8
|
+
var Transfer = require('../models/Transfer');
|
|
9
|
+
var Refund = require('../models/Refund');
|
|
10
|
+
|
|
11
|
+
var Transfers = Service.extend({
|
|
12
|
+
/**
|
|
13
|
+
* Create new transfer
|
|
14
|
+
* @param {Object} transfer Transfer object
|
|
15
|
+
* @param {Function} callback Callback function
|
|
16
|
+
* @param {Object} options Request options
|
|
17
|
+
* @return {Object} Request promise
|
|
18
|
+
*/
|
|
19
|
+
create: function(transfer, callback, options) {
|
|
20
|
+
options = this._api._getOptions(callback, options, {
|
|
21
|
+
data: transfer,
|
|
22
|
+
dataClass: Transfer
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
return this._api.method('transfers_create', callback, options);
|
|
26
|
+
},
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Get transfer
|
|
30
|
+
* @param {number} transferId Transfer identifier
|
|
31
|
+
* @param {Function} callback Callback function
|
|
32
|
+
* @param {Object} options Request options
|
|
33
|
+
* @return {Object} Request promise
|
|
34
|
+
*/
|
|
35
|
+
get: function(transferId, callback, options) {
|
|
36
|
+
options = this._api._getOptions(callback, options, {
|
|
37
|
+
path: {
|
|
38
|
+
id: transferId
|
|
39
|
+
},
|
|
40
|
+
dataClass: Transfer
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
return this._api.method('transfers_get', callback, options);
|
|
44
|
+
},
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* Create refund for transfer object
|
|
48
|
+
* @param {number} transferId Transfer identifier
|
|
49
|
+
* @param {Object} refund Refund object
|
|
50
|
+
* @param {Function} callback Callback function
|
|
51
|
+
* @param {Object} options Request options
|
|
52
|
+
* @return {Object} Request promise
|
|
53
|
+
*/
|
|
54
|
+
createRefund: function(transferId, refund, callback, options) {
|
|
55
|
+
options = this._api._getOptions(callback, options, {
|
|
56
|
+
data: refund,
|
|
57
|
+
path: {
|
|
58
|
+
id: transferId
|
|
59
|
+
},
|
|
60
|
+
dataClass: Refund
|
|
61
|
+
});
|
|
62
|
+
|
|
63
|
+
return this._api.method('transfers_createrefunds', callback, options);
|
|
64
|
+
},
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* Gets list of Refunds of a Transfer
|
|
68
|
+
* @param {number} transferId Transfer identifier
|
|
69
|
+
* @param {function} callback Callback function
|
|
70
|
+
* @param {Object} options Request options
|
|
71
|
+
* @return {Object} Request promise
|
|
72
|
+
*/
|
|
73
|
+
getRefunds: function(transferId, callback, options) {
|
|
74
|
+
if (options && !options.hasOwnProperty('parameters'))
|
|
75
|
+
Object.assign(options, {parameters: {...options}});
|
|
76
|
+
options = this._api._getOptions(callback, options, {
|
|
77
|
+
path: {
|
|
78
|
+
id: transferId
|
|
79
|
+
},
|
|
80
|
+
dataClass: Refund
|
|
81
|
+
});
|
|
82
|
+
|
|
83
|
+
return this._api.method('refunds_get_for_transfer', callback, options);
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
|
|
87
|
+
module.exports = Transfers;
|