mangopay4-nodejs-sdk 1.66.0 → 1.67.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/CHANGELOG.md +22 -0
- package/README.md +78 -1
- package/lib/api.js +31 -2
- package/lib/config.js +14 -1
- package/lib/models/AuthenticationResult.js +7 -0
- package/lib/models/CardPreAuthorization.js +3 -1
- package/lib/models/CardValidation.js +2 -1
- package/lib/models/Deposit.js +2 -1
- package/lib/models/PayIn.js +5 -1
- package/lib/models/PayOutPaymentDetailsBankWire.js +3 -1
- package/package.json +1 -1
- package/test/services/Idempotency.js +1 -6
- package/test/services/PayIns.js +12 -15
- package/test/services/PayOuts.js +1 -0
- package/test/services/RateLimit.js +1 -6
- package/test/services/UboDeclarations.js +1 -6
- package/typings/base.d.ts +41 -0
- package/typings/index.test-d.ts +19 -0
- package/typings/models/cardPreauthorization.d.ts +7 -0
- package/typings/models/cardValidation.d.ts +7 -0
- package/typings/models/deposit.d.ts +6 -0
- package/typings/models/payIn.d.ts +35 -0
- package/typings/models/payOut.d.ts +10 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,25 @@
|
|
|
1
|
+
## [1.67.0] - 2026-03-19
|
|
2
|
+
### Added - mTLS certificates support
|
|
3
|
+
- mTLS certificates are now configurable in the SDK via file paths or encoded strings
|
|
4
|
+
|
|
5
|
+
## [1.66.1] - 2026-02-23
|
|
6
|
+
### Added - ChargeBearer body parameter on payouts
|
|
7
|
+
|
|
8
|
+
https://github.com/Mangopay/mangopay2-nodejs-sdk/pull/535/changes/ca0d85f6d6f35aa9ebe1ee5e77aa1e8a7b342b20
|
|
9
|
+
On [POST Create a Payout](/api-reference/payouts/create-payout), platforms can now request to pay all SWIFT fees using the `OUR` value of the new `ChargeBearer` property ([API release note](/release-notes/api/2026-02-16)):
|
|
10
|
+
- Handle `ChargeBearer` param
|
|
11
|
+
|
|
12
|
+
### Added - AuthenticationType response property on card pay-ins
|
|
13
|
+
|
|
14
|
+
https://github.com/Mangopay/mangopay2-nodejs-sdk/pull/535/changes/ac2813ac69d495ede90328d859e5749feb1a266b
|
|
15
|
+
- The `AuthenticationResult.AuthenticationType` response property is now returned on card pay-ins
|
|
16
|
+
|
|
17
|
+
### Added - TelephoneOrder body parameter on recurring card pay-ins (CIT and MIT)
|
|
18
|
+
|
|
19
|
+
https://github.com/Mangopay/mangopay2-nodejs-sdk/pull/535/changes/32178e20810720a44c20a75556cdd961e1505cd3
|
|
20
|
+
To support the `TelephoneOrder` property on [POST Create a Recurring PayIn (MIT)](/api-reference/recurring-card-payins/create-recurring-payin-cit) and [POST Create a Recurring PayIn (CIT)](/api-reference/recurring-card-payins/create-recurring-payin-mit):
|
|
21
|
+
- handle `PaymentCategory` param
|
|
22
|
+
|
|
1
23
|
## [1.66.0] - 2026-02-12
|
|
2
24
|
### FX
|
|
3
25
|
|
package/README.md
CHANGED
|
@@ -34,7 +34,84 @@ Supported options
|
|
|
34
34
|
|connectionTimeout|30000|Set the connection timeout limit (in milliseconds)|
|
|
35
35
|
|responseTimeout|80000|Set the response timeout limit (in milliseconds)|
|
|
36
36
|
|apiVersion|'v2.01'|API Version|
|
|
37
|
-
|errorHandler|```function(options, err) {console.error(options, err)}```|Set a custom error handler
|
|
37
|
+
|errorHandler|```function(options, err) {console.error(options, err)}```|Set a custom error handler|
|
|
38
|
+
|cert|null|Base64-encoded string of the mTLS certificate `.pem` file content|
|
|
39
|
+
|key|null|Base64-encoded string of the mTLS private `.key` file content|
|
|
40
|
+
|ca|null|Base64-encoded string of the private or custom certificate authority (optional)|
|
|
41
|
+
|passphrase|null|Passphrase for an encrypted mTLS private key (optional)|
|
|
42
|
+
|certFilePath|null|Path to the mTLS certificate `.pem` file (takes precedence over `cert` if set)|
|
|
43
|
+
|keyFilePath|null|Path to the mTLS private `.key` file (takes precedence over `key` if set)|
|
|
44
|
+
|caFilePath|null|Path to the private or custom certificate authority file (takes precedence over `ca` if set)|
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
mTLS
|
|
48
|
+
-------------------------------------------------
|
|
49
|
+
### Set the base URL for mTLS
|
|
50
|
+
|
|
51
|
+
Using mTLS authentication requires your integration to call a base URL with a different hostname from the standard API:
|
|
52
|
+
|
|
53
|
+
* Sandbox: `https://api-mtls.sandbox.mangopay.com`
|
|
54
|
+
* Production: `https://api-mtls.mangopay.com`
|
|
55
|
+
|
|
56
|
+
If using mTLS, your integration should use the `api-mtls` URLs for all API calls, including OAuth token generation.
|
|
57
|
+
|
|
58
|
+
**Caution:** Ensure you set the mTLS base URL, as shown in the configuration examples below. If you don’t, the mTLS certificate will not be transferred to Mangopay. When mTLS is enforced, your integration will result in an error.
|
|
59
|
+
|
|
60
|
+
### Configure the SDK’s mTLS properties
|
|
61
|
+
|
|
62
|
+
The Node.js SDK allows you to load Base64-encoded strings from your environment variables. You can also load locally stored file paths, which may be useful during testing.
|
|
63
|
+
|
|
64
|
+
**Caution:** The file path properties take precedence if both are set.
|
|
65
|
+
|
|
66
|
+
#### Base64-encoded strings
|
|
67
|
+
|
|
68
|
+
When your `.pem` certificate and private `.key` are stored as encoded strings in a secrets manager, you can load them using the following configuration properties.
|
|
69
|
+
|
|
70
|
+
**Best practice:** Use this option in Production.
|
|
71
|
+
|
|
72
|
+
| Property | Type | Description |
|
|
73
|
+
| ------------ | ----------------- |-------------------------------------------------------------------------------|
|
|
74
|
+
| `cert` | string | Base64-encoded string of the certificate `.pem` file content. |
|
|
75
|
+
| `key` | string | Base64-encoded string of the private `.key` file content. |
|
|
76
|
+
| `ca` | string (optional) | Base64-encoded string of the private or custom certificate authority, if used. |
|
|
77
|
+
| `passphrase` | string (optional) | String of the passphrase for an encrypted private key. |
|
|
78
|
+
|
|
79
|
+
```jsx theme={null}
|
|
80
|
+
const mangopay = new Mangopay({
|
|
81
|
+
clientId: 'your-mangopay-client-id',
|
|
82
|
+
clientApiKey: 'your-api-key',
|
|
83
|
+
baseUrl: 'https://api-mtls.sandbox.mangopay.com', // mTLS base URL
|
|
84
|
+
cert: process.env.CERTIFICATE_PEM_B64, // Base64-encoded
|
|
85
|
+
key: process.env.PRIVATE_KEY_B64, // Base64-encoded
|
|
86
|
+
ca: process.env.YOUR_CUSTOM_CA, // Base64-encoded (optional)
|
|
87
|
+
passphrase: process.env.YOUR_CERT_PASSPHRASE, // (optional)
|
|
88
|
+
});
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
#### File paths
|
|
92
|
+
|
|
93
|
+
If your `.pem` certificate and private `.key` are stored locally, for example during testing, you can load them using the following properties.
|
|
94
|
+
|
|
95
|
+
**Caution:** If the file path properties are set, they take precedence and the Base64-encoded equivalents are ignored.
|
|
96
|
+
|
|
97
|
+
| Property | Type | Description |
|
|
98
|
+
| -------------- | ----------------- | ------------------------------------------------------------- |
|
|
99
|
+
| `certFilePath` | string | Path to the certificate `.pem` file. |
|
|
100
|
+
| `keyFilePath` | string | Path to the private `.key` file. |
|
|
101
|
+
| `caFilePath` | string (optional) | Path to the private or custom certificate authority, if used. |
|
|
102
|
+
| `passphrase` | string (optional) | String of the passphrase for an encrypted private key. |
|
|
103
|
+
|
|
104
|
+
```jsx theme={null}
|
|
105
|
+
const mangopay = new Mangopay({
|
|
106
|
+
clientId: 'your-mangopay-client-id',
|
|
107
|
+
clientApiKey: 'your-api-key',
|
|
108
|
+
baseUrl: 'https://api-mtls.sandbox.mangopay.com', // mTLS base URL
|
|
109
|
+
certFilePath: '/path/to/certificate.pem',
|
|
110
|
+
keyFilePath: '/path/to/private.key',
|
|
111
|
+
caFilePath: '/path/to/custom-ca.crt', // optional
|
|
112
|
+
passphrase: 'your-cert-passphrase', // optional
|
|
113
|
+
});
|
|
114
|
+
```
|
|
38
115
|
|
|
39
116
|
Documentation
|
|
40
117
|
-------------------------------------------------
|
package/lib/api.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
var _ = require('underscore');
|
|
2
2
|
var Promise = require('promise');
|
|
3
3
|
var querystring = require('querystring');
|
|
4
|
+
var https = require('https');
|
|
5
|
+
var fs = require('fs');
|
|
4
6
|
|
|
5
7
|
var apiMethods = require('./apiMethods');
|
|
6
8
|
var apiModels = require('./models');
|
|
@@ -20,6 +22,29 @@ function _getBasicAuthHash(username, apiKey) {
|
|
|
20
22
|
return 'Basic ' + Buffer.from(username + ':' + apiKey).toString('base64');
|
|
21
23
|
}
|
|
22
24
|
|
|
25
|
+
function _buildHttpsAgent(config) {
|
|
26
|
+
var agentOptions = {
|
|
27
|
+
minVersion: 'TLSv1.2'
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
var cert = (config.cert && Buffer.from(config.cert, 'base64').toString('utf8')) || (config.certFilePath && fs.readFileSync(config.certFilePath));
|
|
31
|
+
var key = (config.key && Buffer.from(config.key, 'base64').toString('utf8')) || (config.keyFilePath && fs.readFileSync(config.keyFilePath));
|
|
32
|
+
var ca = (config.ca && Buffer.from(config.ca, 'base64').toString('utf8')) || (config.caFilePath && fs.readFileSync(config.caFilePath));
|
|
33
|
+
|
|
34
|
+
if (cert && key) {
|
|
35
|
+
agentOptions.cert = cert;
|
|
36
|
+
agentOptions.key = key;
|
|
37
|
+
if (ca) {
|
|
38
|
+
agentOptions.ca = ca;
|
|
39
|
+
}
|
|
40
|
+
if (config.passphrase) {
|
|
41
|
+
agentOptions.passphrase = config.passphrase;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
return new https.Agent(agentOptions);
|
|
46
|
+
}
|
|
47
|
+
|
|
23
48
|
var Api = function (config) {
|
|
24
49
|
var defaultConfig = require('./config');
|
|
25
50
|
config = this.config = _.extend({}, defaultConfig, config);
|
|
@@ -30,6 +55,8 @@ var Api = function (config) {
|
|
|
30
55
|
|
|
31
56
|
this.errorHandler = config.errorHandler;
|
|
32
57
|
|
|
58
|
+
this.httpsAgent = _buildHttpsAgent(config);
|
|
59
|
+
|
|
33
60
|
this.rateLimits = [];
|
|
34
61
|
|
|
35
62
|
// Add default request configuration options
|
|
@@ -244,7 +271,8 @@ Api.prototype = {
|
|
|
244
271
|
data: requestOptions.data,
|
|
245
272
|
headers: requestOptions.headers,
|
|
246
273
|
params: requestOptions.parameters,
|
|
247
|
-
signal: abortSignal
|
|
274
|
+
signal: abortSignal,
|
|
275
|
+
httpsAgent: self.httpsAgent
|
|
248
276
|
})
|
|
249
277
|
.then(function (response) {
|
|
250
278
|
var resolveArgument = (resolveWithFullResponse) ?
|
|
@@ -357,7 +385,8 @@ Api.prototype = {
|
|
|
357
385
|
headers: _.extend({}, self.requestOptions.headers, {
|
|
358
386
|
'Authorization': _getBasicAuthHash(self.config.clientId, self.config.clientApiKey),
|
|
359
387
|
'Content-Type': 'application/x-www-form-urlencoded',
|
|
360
|
-
})
|
|
388
|
+
}),
|
|
389
|
+
httpsAgent: self.httpsAgent
|
|
361
390
|
})
|
|
362
391
|
.then(function (response) {
|
|
363
392
|
// Authorization succeeded
|
package/lib/config.js
CHANGED
|
@@ -53,5 +53,18 @@ module.exports = {
|
|
|
53
53
|
*/
|
|
54
54
|
errorHandler: function(options, err) {
|
|
55
55
|
console.error(options, err);
|
|
56
|
-
}
|
|
56
|
+
},
|
|
57
|
+
|
|
58
|
+
// mTLS – base64-encoded PEM content
|
|
59
|
+
cert: null,
|
|
60
|
+
key: null,
|
|
61
|
+
ca: null,
|
|
62
|
+
|
|
63
|
+
// mTLS – file paths (SDK reads them at init)
|
|
64
|
+
certFilePath: null,
|
|
65
|
+
keyFilePath: null,
|
|
66
|
+
caFilePath: null,
|
|
67
|
+
|
|
68
|
+
// optional passphrase for encrypted private key
|
|
69
|
+
passphrase: null
|
|
57
70
|
};
|
package/lib/models/Deposit.js
CHANGED
package/lib/models/PayIn.js
CHANGED
|
@@ -23,7 +23,11 @@ var PayIn = Transaction.extend({
|
|
|
23
23
|
/**
|
|
24
24
|
* The unique reference generated for the profiling session, used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.
|
|
25
25
|
*/
|
|
26
|
-
ProfilingAttemptReference: null
|
|
26
|
+
ProfilingAttemptReference: null,
|
|
27
|
+
/**
|
|
28
|
+
* AuthenticationResult
|
|
29
|
+
*/
|
|
30
|
+
AuthenticationResult: null
|
|
27
31
|
}),
|
|
28
32
|
|
|
29
33
|
getReadOnlyProperties: function() {
|
package/package.json
CHANGED
|
@@ -2,12 +2,7 @@ var expect = require('chai').expect;
|
|
|
2
2
|
var api = require('../main');
|
|
3
3
|
|
|
4
4
|
var helpers = require('../helpers');
|
|
5
|
-
var
|
|
6
|
-
|
|
7
|
-
var api = global.api = new mangopay({
|
|
8
|
-
clientId: 'sdk-unit-tests',
|
|
9
|
-
clientApiKey: 'cqFfFrWfCcb7UadHNxx2C9Lo6Djw8ZduLi7J9USTmu8bhxxpju'
|
|
10
|
-
});
|
|
5
|
+
var api = require('../main');
|
|
11
6
|
|
|
12
7
|
describe('Idempotency', function () {
|
|
13
8
|
var idempotencyKey = helpers.generateRandomString();
|
package/test/services/PayIns.js
CHANGED
|
@@ -1,12 +1,7 @@
|
|
|
1
1
|
var expect = require('chai').expect;
|
|
2
2
|
|
|
3
3
|
var helpers = require('../helpers');
|
|
4
|
-
var
|
|
5
|
-
|
|
6
|
-
var api = global.api = new mangopay({
|
|
7
|
-
clientId: 'sdk-unit-tests',
|
|
8
|
-
clientApiKey: 'cqFfFrWfCcb7UadHNxx2C9Lo6Djw8ZduLi7J9USTmu8bhxxpju'
|
|
9
|
-
});
|
|
4
|
+
var api = require('../main');
|
|
10
5
|
|
|
11
6
|
describe('PayIns', function () {
|
|
12
7
|
var payIn;
|
|
@@ -680,8 +675,9 @@ describe('PayIns', function () {
|
|
|
680
675
|
|
|
681
676
|
describe('Create a Recurring Payment', function() {
|
|
682
677
|
var recurring;
|
|
678
|
+
var createdCit;
|
|
683
679
|
before(function(done){
|
|
684
|
-
recurringPayin = {
|
|
680
|
+
const recurringPayin = {
|
|
685
681
|
AuthorId: john.Id,
|
|
686
682
|
CardId: cardId,
|
|
687
683
|
CreditedUserId: john.Id,
|
|
@@ -724,7 +720,7 @@ describe('PayIns', function () {
|
|
|
724
720
|
api.PayIns.createRecurringPayment(recurringPayin, function(data, response){
|
|
725
721
|
recurring = data;
|
|
726
722
|
}).then(function(){
|
|
727
|
-
cit = {
|
|
723
|
+
const cit = {
|
|
728
724
|
RecurringPayinRegistrationId: recurring.Id,
|
|
729
725
|
BrowserInfo: {
|
|
730
726
|
AcceptHeader: "text/html, application/xhtml+xml, application/xml;q=0.9, /;q=0.8",
|
|
@@ -752,18 +748,19 @@ describe('PayIns', function () {
|
|
|
752
748
|
};
|
|
753
749
|
|
|
754
750
|
api.PayIns.createRecurringPayInRegistrationCIT(cit, function(data, response){
|
|
755
|
-
|
|
751
|
+
createdCit = data;
|
|
756
752
|
done();
|
|
757
|
-
})
|
|
758
|
-
})
|
|
759
|
-
})
|
|
753
|
+
});
|
|
754
|
+
});
|
|
755
|
+
});
|
|
760
756
|
|
|
761
757
|
it('should be created', function() {
|
|
762
758
|
expect(recurring).to.not.be.null;
|
|
763
759
|
expect(recurring.FreeCycles).to.not.be.null;
|
|
764
|
-
expect(
|
|
765
|
-
|
|
766
|
-
|
|
760
|
+
expect(createdCit).to.not.be.null;
|
|
761
|
+
expect(createdCit.PaymentCategory).to.not.be.null;
|
|
762
|
+
});
|
|
763
|
+
});
|
|
767
764
|
|
|
768
765
|
describe('Create a PayPal Recurring Payment CIT', function() {
|
|
769
766
|
var recurring;
|
package/test/services/PayOuts.js
CHANGED
|
@@ -1,11 +1,6 @@
|
|
|
1
1
|
var expect = require('chai').expect;
|
|
2
2
|
var helpers = require('../helpers');
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var api = global.api = new mangopay({
|
|
6
|
-
clientId: 'sdk-unit-tests',
|
|
7
|
-
clientApiKey: 'cqFfFrWfCcb7UadHNxx2C9Lo6Djw8ZduLi7J9USTmu8bhxxpju'
|
|
8
|
-
});
|
|
3
|
+
var api = require('../main');
|
|
9
4
|
|
|
10
5
|
describe('Rate Limits', function () {
|
|
11
6
|
expect(api.rateLimits).to.be.empty;
|
|
@@ -6,12 +6,7 @@ var Ubo = require('../../lib/models/Ubo');
|
|
|
6
6
|
var UboDeclarationStatus = require('../../lib/models/UboDeclarationStatus');
|
|
7
7
|
var UserNatural = require('../../lib/models/UserNatural');
|
|
8
8
|
var UserLegal = require('../../lib/models/UserLegal');
|
|
9
|
-
var
|
|
10
|
-
|
|
11
|
-
var api = global.api = new mangopay({
|
|
12
|
-
clientId: 'sdk-unit-tests',
|
|
13
|
-
clientApiKey: 'cqFfFrWfCcb7UadHNxx2C9Lo6Djw8ZduLi7J9USTmu8bhxxpju'
|
|
14
|
-
});
|
|
9
|
+
var api = require('../main');
|
|
15
10
|
|
|
16
11
|
describe('UBO Declarations', function () {
|
|
17
12
|
var user = new UserLegal(helpers.data.getUserLegal());
|
package/typings/base.d.ts
CHANGED
|
@@ -64,6 +64,47 @@ export namespace base {
|
|
|
64
64
|
* @default `console.error`
|
|
65
65
|
*/
|
|
66
66
|
errorHandler?(options: any, err: any): void;
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Client certificate for mTLS (PEM string or Buffer).
|
|
70
|
+
* Use either this or `certFilePath`.
|
|
71
|
+
*/
|
|
72
|
+
cert?: string | Buffer;
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Client private key for mTLS (PEM string or Buffer).
|
|
76
|
+
* Use either this or `keyFilePath`.
|
|
77
|
+
*/
|
|
78
|
+
key?: string | Buffer;
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* CA certificate for mTLS (PEM string or Buffer).
|
|
82
|
+
* Use either this or `caFilePath`.
|
|
83
|
+
*/
|
|
84
|
+
ca?: string | Buffer;
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* Path to client certificate file for mTLS.
|
|
88
|
+
* Read at initialization time. Ignored if `cert` is set.
|
|
89
|
+
*/
|
|
90
|
+
certFilePath?: string;
|
|
91
|
+
|
|
92
|
+
/**
|
|
93
|
+
* Path to client private key file for mTLS.
|
|
94
|
+
* Read at initialization time. Ignored if `key` is set.
|
|
95
|
+
*/
|
|
96
|
+
keyFilePath?: string;
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* Path to CA certificate file for mTLS.
|
|
100
|
+
* Read at initialization time. Ignored if `ca` is set.
|
|
101
|
+
*/
|
|
102
|
+
caFilePath?: string;
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* Passphrase for an encrypted private key (`key` or `keyFilePath`).
|
|
106
|
+
*/
|
|
107
|
+
passphrase?: string;
|
|
67
108
|
}
|
|
68
109
|
|
|
69
110
|
interface RequestOptions {
|
package/typings/index.test-d.ts
CHANGED
|
@@ -12,6 +12,25 @@ const validConfig: Mangopay.base.Config = {
|
|
|
12
12
|
baseUrl: "https://api.mangopay.com"
|
|
13
13
|
};
|
|
14
14
|
|
|
15
|
+
// mTLS config — file paths
|
|
16
|
+
const mtlsConfigPaths: Mangopay.base.Config = {
|
|
17
|
+
clientId: "your_client_id",
|
|
18
|
+
clientApiKey: "your_client_api_key",
|
|
19
|
+
certFilePath: "/path/to/cert.pem",
|
|
20
|
+
keyFilePath: "/path/to/key.pem",
|
|
21
|
+
caFilePath: "/path/to/ca.pem",
|
|
22
|
+
passphrase: "secret"
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
// mTLS config — raw content
|
|
26
|
+
const mtlsConfigRaw: Mangopay.base.Config = {
|
|
27
|
+
clientId: "your_client_id",
|
|
28
|
+
clientApiKey: "your_client_api_key",
|
|
29
|
+
cert: "base64_string",
|
|
30
|
+
key: "base64_string",
|
|
31
|
+
passphrase: "secret"
|
|
32
|
+
};
|
|
33
|
+
|
|
15
34
|
// API instance tests
|
|
16
35
|
const api = new Mangopay(validConfig);
|
|
17
36
|
expectType<Mangopay>(api);
|
|
@@ -6,6 +6,7 @@ import { money } from "./money";
|
|
|
6
6
|
import { securityInfo } from "./securityInfo";
|
|
7
7
|
import { shipping } from "./shipping";
|
|
8
8
|
import { card } from "./card";
|
|
9
|
+
import { payIn } from "./payIn";
|
|
9
10
|
|
|
10
11
|
export namespace cardPreAuthorization {
|
|
11
12
|
import BillingData = billing.BillingData;
|
|
@@ -14,6 +15,7 @@ export namespace cardPreAuthorization {
|
|
|
14
15
|
import SecurityInfoData = securityInfo.SecurityInfoData;
|
|
15
16
|
import ShippingData = shipping.ShippingData;
|
|
16
17
|
import CardInfoData = card.CardInfoData;
|
|
18
|
+
import AuthenticationResult = payIn.AuthenticationResult;
|
|
17
19
|
|
|
18
20
|
type PreAuthorizationExecutionType = "DIRECT";
|
|
19
21
|
|
|
@@ -153,5 +155,10 @@ export namespace cardPreAuthorization {
|
|
|
153
155
|
* TelephoneOrder – Payment received via mail order or telephone order (MOTO).
|
|
154
156
|
*/
|
|
155
157
|
PaymentCategory: string;
|
|
158
|
+
|
|
159
|
+
/**
|
|
160
|
+
* Authentication result
|
|
161
|
+
*/
|
|
162
|
+
AuthenticationResult?: AuthenticationResult;
|
|
156
163
|
}
|
|
157
164
|
}
|
|
@@ -6,6 +6,8 @@ import { payIn } from "./payIn";
|
|
|
6
6
|
import { SecureMode } from "../types";
|
|
7
7
|
|
|
8
8
|
export namespace cardValidation {
|
|
9
|
+
import AuthenticationResult = payIn.AuthenticationResult;
|
|
10
|
+
|
|
9
11
|
interface CardValidationData extends entityBase.EntityBaseData {
|
|
10
12
|
/**
|
|
11
13
|
* The unique identifier of the user at the source of the transaction.
|
|
@@ -80,6 +82,11 @@ export namespace cardValidation {
|
|
|
80
82
|
* TelephoneOrder – Payment received via mail order or telephone order (MOTO).
|
|
81
83
|
*/
|
|
82
84
|
PaymentCategory: string;
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* Authentication result
|
|
88
|
+
*/
|
|
89
|
+
AuthenticationResult?: AuthenticationResult;
|
|
83
90
|
}
|
|
84
91
|
|
|
85
92
|
interface CreateCardValidation {
|
|
@@ -17,6 +17,7 @@ export namespace deposit {
|
|
|
17
17
|
import CompleteBillingData = billing.CompleteBillingData;
|
|
18
18
|
import _3DSVersion = payIn._3DSVersion;
|
|
19
19
|
import CardInfoData = card.CardInfoData;
|
|
20
|
+
import AuthenticationResult = payIn.AuthenticationResult;
|
|
20
21
|
|
|
21
22
|
type DepositStatus = ValueOf<enums.IDepositStatus>;
|
|
22
23
|
|
|
@@ -68,6 +69,11 @@ export namespace deposit {
|
|
|
68
69
|
Applied3DSVersion: _3DSVersion;
|
|
69
70
|
|
|
70
71
|
CardInfo: CardInfoData;
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* Authentication result
|
|
75
|
+
*/
|
|
76
|
+
AuthenticationResult?: AuthenticationResult;
|
|
71
77
|
}
|
|
72
78
|
|
|
73
79
|
interface CreateDeposit {
|
|
@@ -198,6 +198,11 @@ export namespace payIn {
|
|
|
198
198
|
* Name of the end-user’s bank
|
|
199
199
|
*/
|
|
200
200
|
BankName: string;
|
|
201
|
+
|
|
202
|
+
/**
|
|
203
|
+
* Authentication result
|
|
204
|
+
*/
|
|
205
|
+
AuthenticationResult?: AuthenticationResult;
|
|
201
206
|
}
|
|
202
207
|
|
|
203
208
|
interface CardWebExtendedPayInData {
|
|
@@ -388,6 +393,11 @@ export namespace payIn {
|
|
|
388
393
|
* TelephoneOrder – Payment received via mail order or telephone order (MOTO).
|
|
389
394
|
*/
|
|
390
395
|
PaymentCategory: string;
|
|
396
|
+
|
|
397
|
+
/**
|
|
398
|
+
* Authentication result
|
|
399
|
+
*/
|
|
400
|
+
AuthenticationResult?: AuthenticationResult;
|
|
391
401
|
}
|
|
392
402
|
|
|
393
403
|
interface MbwayWebPayInData extends BasePayInData {
|
|
@@ -1726,6 +1736,13 @@ export namespace payIn {
|
|
|
1726
1736
|
* Information about the card
|
|
1727
1737
|
*/
|
|
1728
1738
|
CardInfo: CardInfoData;
|
|
1739
|
+
|
|
1740
|
+
PaymentCategory?: string;
|
|
1741
|
+
|
|
1742
|
+
/**
|
|
1743
|
+
* Authentication result
|
|
1744
|
+
*/
|
|
1745
|
+
AuthenticationResult?: AuthenticationResult;
|
|
1729
1746
|
}
|
|
1730
1747
|
|
|
1731
1748
|
interface CreateRecurringPayInCIT {
|
|
@@ -1772,6 +1789,8 @@ export namespace payIn {
|
|
|
1772
1789
|
* of the Recurring PayIn Registration. An amount must be transmitted during either registration or pay-in.
|
|
1773
1790
|
*/
|
|
1774
1791
|
Fees?: MoneyData;
|
|
1792
|
+
|
|
1793
|
+
PaymentCategory?: string;
|
|
1775
1794
|
}
|
|
1776
1795
|
|
|
1777
1796
|
interface CreateRecurringPayPalPayInCIT {
|
|
@@ -1865,6 +1884,8 @@ export namespace payIn {
|
|
|
1865
1884
|
* Custom data that you can add to this item
|
|
1866
1885
|
*/
|
|
1867
1886
|
Tag?: string;
|
|
1887
|
+
|
|
1888
|
+
PaymentCategory?: string;
|
|
1868
1889
|
}
|
|
1869
1890
|
|
|
1870
1891
|
interface CreateRecurringPayPalPayInMIT {
|
|
@@ -2148,6 +2169,11 @@ export namespace payIn {
|
|
|
2148
2169
|
* Custom data that you can add to this item
|
|
2149
2170
|
*/
|
|
2150
2171
|
Tag: string;
|
|
2172
|
+
|
|
2173
|
+
/**
|
|
2174
|
+
* Authentication result
|
|
2175
|
+
*/
|
|
2176
|
+
AuthenticationResult?: AuthenticationResult;
|
|
2151
2177
|
}
|
|
2152
2178
|
|
|
2153
2179
|
interface ApplePayPaymentData {
|
|
@@ -2312,6 +2338,11 @@ export namespace payIn {
|
|
|
2312
2338
|
* This is the URL where users are automatically redirected after the payment is validated
|
|
2313
2339
|
*/
|
|
2314
2340
|
ReturnURL: string;
|
|
2341
|
+
|
|
2342
|
+
/**
|
|
2343
|
+
* Authentication result
|
|
2344
|
+
*/
|
|
2345
|
+
AuthenticationResult?: AuthenticationResult;
|
|
2315
2346
|
}
|
|
2316
2347
|
|
|
2317
2348
|
interface KlarnaWebPayInData extends BasePayInData {
|
|
@@ -4010,4 +4041,8 @@ export namespace payIn {
|
|
|
4010
4041
|
interface UpdatePayInIntentDisputeOutcome {
|
|
4011
4042
|
Decision: string;
|
|
4012
4043
|
}
|
|
4044
|
+
|
|
4045
|
+
interface AuthenticationResult {
|
|
4046
|
+
AuthenticationType?: string;
|
|
4047
|
+
}
|
|
4013
4048
|
}
|
|
@@ -49,6 +49,11 @@ export namespace payOut {
|
|
|
49
49
|
* Null if BankAccountId is provided.
|
|
50
50
|
*/
|
|
51
51
|
RecipientId?: string;
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Possible values: OUR / SHA
|
|
55
|
+
*/
|
|
56
|
+
ChargeBearer?: string;
|
|
52
57
|
}
|
|
53
58
|
|
|
54
59
|
interface CreatePayOut {
|
|
@@ -101,6 +106,11 @@ export namespace payOut {
|
|
|
101
106
|
* but if any prerequisite is not met or another problem occurs, there is no fallback: the wallet is automatically refunded and the payout is not completed.
|
|
102
107
|
*/
|
|
103
108
|
PayoutModeRequested?: PayoutModeRequestedType;
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* Possible values: OUR / SHA
|
|
112
|
+
*/
|
|
113
|
+
ChargeBearer?: string;
|
|
104
114
|
}
|
|
105
115
|
|
|
106
116
|
interface CheckPayOutEligibility {
|