Compare commits

..

5 Commits

Author SHA1 Message Date
Ricardo Ambrogi
6f1d95432e rc3 2020-01-15 16:41:22 +01:00
Ricardo Ambrogi
a3ebb01aee change types ext 2020-01-15 16:23:45 +01:00
Ricardo Ambrogi
e5d4d72098 fix tests type 2020-01-15 15:31:37 +01:00
Ricardo Ambrogi
2654f5b20a change tsconfig 2020-01-15 15:20:18 +01:00
Ricardo Ambrogi
605e364082 Bundle type definitions with package 2020-01-15 12:51:57 +00:00
788 changed files with 15637 additions and 79869 deletions

View File

@@ -23,8 +23,7 @@ module.exports = {
],
rules: {
quotes: ["error", "double"],
semi: ["error", "always"],
"@typescript-eslint/no-non-null-assertion": 0
semi: ["error", "always"]
},
overrides: [
{

2
.github/CODEOWNERS vendored
View File

@@ -1 +1 @@
* @KadoBOT @msilvagarcia @cyattilakiss @zaiddreakh @Aleffio @rikterbeek
* @KadoBOT @msilvagarcia @cyattilakiss @rkewlani @Aleffio @rikterbeek

11
.github/stale.yml vendored
View File

@@ -1,11 +0,0 @@
# Number of days of inactivity before an issue becomes stale
daysUntilStale: 60
# Number of days of inactivity before a stale issue is closed
daysUntilClose: 7
# Label to use when marking an issue as stale
staleLabel: wontfix
# Comment to post when marking an issue as stale. Set to `false` to disable
markComment: >
This issue has been automatically marked as stale because it has not had
recent activity. It will be closed if no further activity occurs. Thank you
for your contributions.

View File

@@ -1,50 +0,0 @@
on: ["push", "pull_request"]
name: Coveralls
jobs:
build:
name: Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Use Node.js 12.x
uses: actions/setup-node@v1
with:
node-version: 12.x
- name: npm install, npm test:coverage
run: |
npm install
npm run test:coverage
env:
CI: true
ADYEN_API_KEY: ${{ secrets.ADYEN_API_KEY }}
ADYEN_MERCHANT: ${{ secrets.ADYEN_MERCHANT }}
ADYEN_PASSWORD: ${{ secrets.ADYEN_PASSWORD }}
ADYEN_REVIEWPAYOUT_APIKEY: ${{ secrets.ADYEN_REVIEWPAYOUT_APIKEY }}
ADYEN_REVIEWPAYOUT_PASSWORD: ${{ secrets.ADYENREVIEWPAYOUT_PASSWORD }}
ADYEN_REVIEWPAYOUT_USER: ${{ secrets.ADYENREVIEWPAYOUT_USER }}
ADYEN_STOREPAYOUT_APIKEY: ${{ secrets.ADYEN_STOREPAYOUT_APIKEY }}
ADYEN_STOREPAYOUT_PASSWORD: ${{ secrets.ADYEN_STOREPAYOUT_PASSWORD }}
ADYEN_STOREPAYOUT_USER: ${{ secrets.ADYEN_STOREPAYOUT_USER }}
ADYEN_USER: ${{ secrets.ADYEN_USER }}
ADYEN_MARKETPLACE_USER: ${{ secrets.ADYEN_MARKETPLACE_USER }}
ADYEN_MARKETPLACE_PASSWORD: ${{ secrets.ADYEN_MARKETPLACE_PASSWORD }}
ADYEN_TERMINAL_APIKEY: ${{ secrets.ADYEN_TERMINAL_APIKEY }}
ADYEN_TERMINAL_POIID: ${{ secrets.ADYEN_TERMINAL_POIID }}
ADYEN_TERMINAL_MERCHANT: ${{ secrets.ADYEN_TERMINAL_MERCHANT }}
- name: Coveralls Parallel
uses: coverallsapp/github-action@master
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
path-to-lcov: ./coverage/lcov.info # optional (default value)
- name: Coveralls Finished
uses: coverallsapp/github-action@master
with:
github-token: ${{ secrets.GITHUB_TOKEN }}

View File

@@ -1,42 +0,0 @@
name: Node.js CI
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [10.x, 12.x, 13.x]
steps:
- uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- name: npm install, lint and test
run: |
npm install
npm run lint:fix
npm run lint
npm test
env:
CI: true
ADYEN_API_KEY: ${{ secrets.ADYEN_API_KEY }}
ADYEN_MERCHANT: ${{ secrets.ADYEN_MERCHANT }}
ADYEN_PASSWORD: ${{ secrets.ADYEN_PASSWORD }}
ADYEN_REVIEWPAYOUT_APIKEY: ${{ secrets.ADYEN_REVIEWPAYOUT_APIKEY }}
ADYEN_REVIEWPAYOUT_PASSWORD: ${{ secrets.ADYENREVIEWPAYOUT_PASSWORD }}
ADYEN_REVIEWPAYOUT_USER: ${{ secrets.ADYENREVIEWPAYOUT_USER }}
ADYEN_STOREPAYOUT_APIKEY: ${{ secrets.ADYEN_STOREPAYOUT_APIKEY }}
ADYEN_STOREPAYOUT_PASSWORD: ${{ secrets.ADYEN_STOREPAYOUT_PASSWORD }}
ADYEN_STOREPAYOUT_USER: ${{ secrets.ADYEN_STOREPAYOUT_USER }}
ADYEN_USER: ${{ secrets.ADYEN_USER }}
ADYEN_MARKETPLACE_USER: ${{ secrets.ADYEN_MARKETPLACE_USER }}
ADYEN_MARKETPLACE_PASSWORD: ${{ secrets.ADYEN_MARKETPLACE_PASSWORD }}
ADYEN_TERMINAL_APIKEY: ${{ secrets.ADYEN_TERMINAL_APIKEY }}
ADYEN_TERMINAL_POIID: ${{ secrets.ADYEN_TERMINAL_POIID }}
ADYEN_TERMINAL_MERCHANT: ${{ secrets.ADYEN_TERMINAL_MERCHANT }}

View File

@@ -1,47 +0,0 @@
name: Node.js Package
on:
release:
types: [created]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: 12
- run: yarn install --frozen-lockfile
- run: yarn run test
env:
CI: true
ADYEN_API_KEY: ${{ secrets.ADYEN_API_KEY }}
ADYEN_MERCHANT: ${{ secrets.ADYEN_MERCHANT }}
ADYEN_PASSWORD: ${{ secrets.ADYEN_PASSWORD }}
ADYEN_REVIEWPAYOUT_APIKEY: ${{ secrets.ADYEN_REVIEWPAYOUT_APIKEY }}
ADYEN_REVIEWPAYOUT_PASSWORD: ${{ secrets.ADYENREVIEWPAYOUT_PASSWORD }}
ADYEN_REVIEWPAYOUT_USER: ${{ secrets.ADYENREVIEWPAYOUT_USER }}
ADYEN_STOREPAYOUT_APIKEY: ${{ secrets.ADYEN_STOREPAYOUT_APIKEY }}
ADYEN_STOREPAYOUT_PASSWORD: ${{ secrets.ADYEN_STOREPAYOUT_PASSWORD }}
ADYEN_STOREPAYOUT_USER: ${{ secrets.ADYEN_STOREPAYOUT_USER }}
ADYEN_USER: ${{ secrets.ADYEN_USER }}
ADYEN_MARKETPLACE_USER: ${{ secrets.ADYEN_MARKETPLACE_USER }}
ADYEN_MARKETPLACE_PASSWORD: ${{ secrets.ADYEN_MARKETPLACE_PASSWORD }}
ADYEN_TERMINAL_APIKEY: ${{ secrets.ADYEN_TERMINAL_APIKEY }}
ADYEN_TERMINAL_POIID: ${{ secrets.ADYEN_TERMINAL_POIID }}
ADYEN_TERMINAL_MERCHANT: ${{ secrets.ADYEN_TERMINAL_MERCHANT }}
- run: yarn run build
publish-npm:
needs: build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: 12
registry-url: https://registry.npmjs.org/
- run: npm publish
env:
NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}}

2
.gitignore vendored
View File

@@ -11,4 +11,4 @@ node_modules
.ssh/
.viminfo
coverage/
.env
dist/

25
.travis.yml Normal file
View File

@@ -0,0 +1,25 @@
language: node_js
node_js:
- "8"
- stable
cache: yarn
script:
- yarn run lint:fix
- yarn run lint
- yarn run test
jobs:
include:
- stage: npm release
if: tag IS present
node_js: stable
script: yarn run build
deploy:
provider: npm
email: "$NPM_EMAIL"
api_key: "$NPM_TOKEN"
skip_cleanup: true
on:
tags: true
- stage: Produce Coverage
node_js: stable
script: jest --coverage && cat ./coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js && rm -rf ./coverage

View File

@@ -1,12 +1,10 @@
# Adyen Node.js API Library
![Node.js CI](https://github.com/Adyen/adyen-node-api-library/workflows/Node.js%20CI/badge.svg)
[![Build Status](https://travis-ci.org/Adyen/adyen-node-api-library.svg?branch=master)](https://travis-ci.org/Adyen/adyen-node-api-library)
[![Coverage Status](https://coveralls.io/repos/github/Adyen/adyen-node-api-library/badge.svg?branch=master)](https://coveralls.io/github/Adyen/adyen-node-api-library?branch=master)
[![Downloads](https://img.shields.io/npm/dm/@adyen/api-library.svg)](https://www.npmjs.com/package/@adyen/api-library)
![npm bundle size (scoped)](https://img.shields.io/bundlephobia/minzip/@adyen/api-library.svg)
[![Version](https://img.shields.io/npm/v/@adyen/api-library.svg)](https://www.npmjs.com/package/@adyen/api-library)
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=Adyen_adyen-node-api-library&metric=alert_status)](https://sonarcloud.io/dashboard?id=Adyen_adyen-node-api-library)
[![Total alerts](https://img.shields.io/lgtm/alerts/g/Adyen/adyen-node-api-library.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/Adyen/adyen-node-api-library/alerts/)
[![Language grade: JavaScript](https://img.shields.io/lgtm/grade/javascript/g/Adyen/adyen-node-api-library.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/Adyen/adyen-node-api-library/context:javascript)
The Adyen API Library for NodeJS enables you to work with Adyen APIs.
@@ -24,7 +22,7 @@ The Library supports all APIs under the following services:
## Requirements
* Node 10 or higher
* Node 8.1.1 or higher
## Installation
@@ -38,7 +36,7 @@ npm install --save @adyen/api-library
## Documentation
* https://docs.adyen.com/developers/development-resources/libraries
* https://docs.adyen.com/developers/checkout
* https://docs.adyen.com/developers/checkout/api-integration
## HTTP Client Configuration

25
babel.config.js Executable file
View File

@@ -0,0 +1,25 @@
module.exports = {
presets: [
"@babel/env",
[
"@babel/preset-typescript",
{
targets: {
node: "current"
}
}
]
],
plugins: [
"@babel/proposal-class-properties",
"@babel/proposal-object-rest-spread"
],
env: {
test: {
plugins: [
"@babel/plugin-transform-runtime",
"@babel/plugin-transform-typescript"
]
}
}
}

View File

@@ -1 +0,0 @@
import "jest-ts-auto-mock"

2
dist/es5/main.js vendored

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,68 +0,0 @@
{
"name": "@adyen/api-library",
"version": "3.2.3",
"description": "The Adyen API Library for NodeJS enables you to work with Adyen APIs.",
"main": "dist/lib/src/index.js",
"types": "dist/lib/src/index.d.ts",
"module": "dist/lib-esm/src/index.js",
"engines": {
"node": ">=10"
},
"repository": {
"type": "git",
"url": "git+https://github.com/Adyen/adyen-node-api-library.git"
},
"keywords": [
"adyen",
"api",
"nodejs"
],
"bugs": {
"url": "https://github.com/Adyen/adyen-node-api-library/issues"
},
"publishConfig": {
"access": "public"
},
"homepage": "https://github.com/Adyen/adyen-node-api-library#readme",
"scripts": {
"clean": "rm -rf ./dist",
"build": "npm run clean && tsc && tsc -m es6 --outDir dist/lib-esm && webpack",
"lint": "eslint 'src/**/*.ts'",
"lint:fix": "eslint --fix 'src/**/*.ts'",
"test": "jest",
"test:coverage": "jest --coverage",
"preversion": "npm test",
"version": "npm run build && git add -A dist",
"postversion": "git push && git push --tags && rm -rf build/temp",
"release": "release-it --no-npm.publish"
},
"author": "Ricardo Ambrogi",
"license": "MIT",
"devDependencies": {
"@types/jest": "25.2.1",
"@types/nock": "11.1.0",
"@typescript-eslint/eslint-plugin": "2.31.0",
"@typescript-eslint/parser": "2.31.0",
"acorn": "^7.1.1",
"coveralls": "3.1.0",
"dotenv": "^8.2.0",
"eslint": "6.8.0",
"jest": "25.5.4",
"jest-ts-auto-mock": "^1.0.11",
"kind-of": "^6.0.3",
"minimist": ">=1.2.3",
"nock": "12.0.3",
"release-it": "13.5.8",
"ts-auto-mock": "^1.6.0",
"ts-jest": "25.5.0",
"ts-loader": "7.0.2",
"ttypescript": "^1.5.10",
"typescript": "3.8.3",
"webpack": "4.43.0",
"webpack-cli": "3.3.11"
},
"dependencies": {
"@types/node": "13.13.5",
"https-proxy-agent": "5.0.0"
}
}

View File

@@ -1,6 +0,0 @@
import Client from "../client";
import { TerminalApiRequest, TransactionIdentification } from "../typings/terminal";
export declare const createClient: (apiKey?: string | undefined) => Client;
export declare const createBasicAuthClient: () => Client;
export declare const createTerminalAPIPaymentRequest: () => TerminalApiRequest;
export declare const createTerminalAPIRefundRequest: (transactionIdentification: TransactionIdentification) => TerminalApiRequest;

View File

@@ -1,110 +0,0 @@
/*
* ######
* ######
* ############ ####( ###### #####. ###### ############ ############
* ############# #####( ###### #####. ###### ############# #############
* ###### #####( ###### #####. ###### ##### ###### ##### ######
* ###### ###### #####( ###### #####. ###### ##### ##### ##### ######
* ###### ###### #####( ###### #####. ###### ##### ##### ######
* ############# ############# ############# ############# ##### ######
* ############ ############ ############# ############ ##### ######
* ######
* #############
* ############
*
* Adyen NodeJS API Library
*
* Copyright (c) 2019 Adyen B.V.
* This file is open source and available under the MIT license.
* See the LICENSE file for more info.
*/
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
import Client from "../client";
import Config from "../config";
import { MessageCategoryType, MessageClassType, MessageType, ReversalReasonType, } from "../typings/terminal";
export var createClient = function (apiKey) {
if (apiKey === void 0) { apiKey = process.env.ADYEN_API_KEY; }
var config = new Config();
config.terminalApiCloudEndpoint = Client.TERMINAL_API_ENDPOINT_TEST;
config.terminalApiLocalEndpoint = "https://mocked_local_endpoint.com";
config.hmacKey = "DFB1EB5485895CFA84146406857104ABB4CBCABDC8AAF103A624C8F6A3EAAB00";
config.endpoint = Client.ENDPOINT_TEST;
config.checkoutEndpoint = Client.CHECKOUT_ENDPOINT_TEST;
config.marketPayEndpoint = Client.MARKETPAY_ENDPOINT_TEST;
config.apiKey = apiKey;
config.marketPayEndpoint = Client.MARKETPAY_ENDPOINT_TEST;
var client = new Client({ config: config });
return client;
};
export var createBasicAuthClient = function () {
var client = new Client({
username: process.env.ADYEN_USER,
password: process.env.ADYEN_PASSWORD,
environment: "TEST",
applicationName: "adyen-node-api-library"
});
return client;
};
var id = Math.floor(Math.random() * Math.floor(10000000)).toString();
var getMessageHeader = function (_a) {
var _b = (_a === void 0 ? {} : _a).messageCategory, messageCategory = _b === void 0 ? MessageCategoryType.Payment : _b;
return ({
messageCategory: messageCategory,
messageClass: MessageClassType.Service,
messageType: MessageType.Request,
poiid: process.env.ADYEN_TERMINAL_POIID,
protocolVersion: "3.0",
saleId: id,
serviceId: id,
});
};
var timestamp = function () { return new Date().toISOString(); };
var transactionIdentification = {
timeStamp: timestamp(),
transactionId: id,
};
var saleData = {
saleTransactionId: transactionIdentification,
};
var amountsReq = {
currency: "EUR",
requestedAmount: 1,
};
var paymentTransaction = {
amountsReq: amountsReq,
};
var paymentRequest = {
paymentTransaction: paymentTransaction,
saleData: saleData,
};
var getReversalRequest = function (poiTransaction) { return ({
originalPoiTransaction: {
poiTransactionId: {
transactionId: poiTransaction.transactionId,
timeStamp: poiTransaction.timeStamp
},
},
reversalReason: ReversalReasonType.MerchantCancel
}); };
var getSaleToPOIRequest = function (messageHeader, request) { return (__assign({ messageHeader: messageHeader }, request)); };
export var createTerminalAPIPaymentRequest = function () {
var messageHeader = getMessageHeader();
var saleToPOIRequest = getSaleToPOIRequest(messageHeader, { paymentRequest: paymentRequest });
return { saleToPoiRequest: saleToPOIRequest };
};
export var createTerminalAPIRefundRequest = function (transactionIdentification) {
var messageHeader = getMessageHeader({ messageCategory: MessageCategoryType.Reversal });
var saleToPOIRequest = getSaleToPOIRequest(messageHeader, { reversalRequest: getReversalRequest(transactionIdentification) });
return { saleToPoiRequest: saleToPOIRequest };
};
//# sourceMappingURL=base.js.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/__mocks__/base.ts"],"names":[],"mappings":"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"}

View File

@@ -1 +0,0 @@
export declare const paymentMethodsSuccess: string;

View File

@@ -1,987 +0,0 @@
/* tslint:disable */
export var paymentMethodsSuccess = JSON.stringify({
paymentMethods: [
{
name: "AliPay",
type: "alipay",
},
{
name: "AliPay",
type: "alipay_wap",
},
{
details: [
{
key: "additionalData.card.encrypted.json",
type: "cardToken",
},
],
name: "Credit Card",
type: "scheme",
},
{
name: "Credit Card via AsiaPay",
type: "asiapay",
},
{
name: "BancNet",
type: "bancnet",
},
{
name: "Bank Transfer (BE)",
type: "bankTransfer_BE",
},
{
name: "Bank Transfer (DE)",
type: "bankTransfer_DE",
},
{
name: "Bank Transfer (DK)",
type: "bankTransfer_DK",
},
{
name: "Bank Transfer (GB)",
type: "bankTransfer_GB",
},
{
name: "SEPA Bank Transfer",
type: "bankTransfer_IBAN",
},
{
name: "Bank Transfer (NL)",
type: "bankTransfer_NL",
},
{
name: "Bank Transfer (NO)",
type: "bankTransfer_NO",
},
{
name: "Bank Transfer (PL)",
type: "bankTransfer_PL",
},
{
name: "Bank Transfer (SE)",
type: "bankTransfer_SE",
},
{
name: "Russian Bank Transfer",
type: "bank_ru",
},
{
details: [
{
key: "additionalData.card.encrypted.json",
type: "cardToken",
},
],
name: "Bancontact card",
type: "bcmc",
},
{
name: "Boleto Bancario via HSBC",
type: "boletobancario_hsbc",
},
{
name: "Boleto Bancario via Itau",
type: "boletobancario_itau",
},
{
name: "Boleto Bancario via Santander",
type: "boletobancario_santander",
},
{
name: "c_cash",
type: "c_cash",
},
{
name: "CashU",
type: "cashu",
},
{
name: "Paiement en 3 fois par Cartes Bancaires",
type: "cofinoga_3xcb",
},
{
name: "DineroMail",
type: "dineromail",
},
{
name: "Online bank transfer.",
type: "directEbanking",
},
{
name: "Direct Debit Brazil - Banco do Brazil",
type: "directdebit_BR_bancodobrasil",
},
{
name: "Direct Debit Brazil - Bradesco",
type: "directdebit_BR_bradesco",
},
{
name: "Direct Debit Brazil - Caixa Economica Federal",
type: "directdebit_BR_caixa",
},
{
name: "Direct Debit Brazil - HSBC",
type: "directdebit_BR_hsbc",
},
{
name: "Direct Debit Brazil - Itau",
type: "directdebit_BR_itau",
},
{
name: "Direct Debit Brazil - Santander",
type: "directdebit_BR_santander",
},
{
name: "Eenmalige machtiging",
type: "directdebit_NL",
},
{
details: [
{
items: [
{
id: "11",
name: "Bank transfer / postal",
},
{
id: "74",
name: "Banki Spółdzielcze",
},
{
id: "73",
name: "BLIK",
},
{
id: "32",
name: "BNP Paribas",
},
{
id: "16",
name: "Credit Agricole",
},
{
id: "83",
name: "EnveloBank",
},
{
id: "55",
name: "erata - dotpay installment",
},
{
id: "93",
name: "eSKOK",
},
{
id: "56",
name: "eurobank płatności online",
},
{
id: "76",
name: "Getin Bank PBL",
},
{
id: "81",
name: "Idea Cloud",
},
{
id: "7",
name: "ING Corporate customers",
},
{
id: "35",
name: "Kantor Polski",
},
{
id: "44",
name: "Millennium - Płatności Internetowe",
},
{
id: "10",
name: "Millennium Corporate customers",
},
{
id: "68",
name: "mRaty",
},
{
id: "1",
name: "mTransfer",
},
{
id: "80",
name: "Noble Pay",
},
{
id: "50",
name: "Pay Way Toyota Bank",
},
{
id: "45",
name: "Pay with Alior Bank",
},
{
id: "65",
name: "Paylink Idea Bank",
},
{
id: "36",
name: "Pekao24Przelew",
},
{
id: "70",
name: "Pocztowy24",
},
{
id: "6",
name: "Przelew24",
},
{
id: "46",
name: "Płacę z Citi Handlowy",
},
{
id: "38",
name: "Płacę z ING",
},
{
id: "2",
name: "Płacę z Inteligo",
},
{
id: "4",
name: "Płacę z iPKO",
},
{
id: "72",
name: "Płacę z Orange",
},
{
id: "66",
name: "Płacę z PBS",
},
{
id: "75",
name: "Płacę z Plus Bank",
},
{
id: "51",
name: "Płać z BOŚ",
},
{
id: "48",
name: "R-Przelew",
},
{
id: "88",
name: "Raiffeisen",
},
{
id: "52",
name: "SkyCash",
},
{
id: "58",
name: "Szybkie Platnosci Internetowe z Deutsche Bank PBC",
},
{
id: "60",
name: "T-Mobile usługi bankowe",
},
{
id: "21",
name: "VIA - Moje Rachunki",
},
{
id: "84",
name: "Volkswagen Bank direct",
},
{
id: "31",
name: "Zaplac w Zabce i we Freshmarket",
},
{
id: "24",
name: "mPay",
},
],
key: "issuer",
type: "select",
},
],
name: "Local Polish Payment Methods",
type: "dotpay",
},
{
name: "Finnish E-Banking",
type: "ebanking_FI",
},
{
name: "Lastschrift (ELV)",
type: "elv",
},
{
details: [
{
items: [
{
id: "550",
name: "?eská spo?itelna",
},
{
id: "231",
name: "POP Pankki",
},
{
id: "551",
name: "Kb",
},
{
id: "232",
name: "Aktia",
},
{
id: "552",
name: "Raiffeisen",
},
{
id: "750",
name: "Swedbank",
},
{
id: "211",
name: "Nordea",
},
{
id: "233",
name: "Säästöpankki",
},
{
id: "553",
name: "Csob",
},
{
id: "751",
name: "SEB",
},
{
id: "234",
name: "S-Pankki",
},
{
id: "554",
name: "Moneta",
},
{
id: "752",
name: "Nordea",
},
{
id: "235",
name: "OmaSP",
},
{
id: "213",
name: "Op-Pohjola",
},
{
id: "555",
name: "UniCredit",
},
{
id: "753",
name: "LHV",
},
{
id: "556",
name: "Fio",
},
{
id: "557",
name: "mBank",
},
{
id: "216",
name: "Handelsbanken",
},
{
id: "260",
name: "Länsförsäkringar",
},
{
id: "240",
name: "BankDeposit",
},
{
id: "265",
name: "Sparbanken",
},
{
id: "640",
name: "BankDeposit",
},
{
id: "200",
name: "Ålandsbanken",
},
{
id: "720",
name: "Swedbank",
},
{
id: "940",
name: "Swedbank",
},
{
id: "204",
name: "Danske Bank",
},
{
id: "721",
name: "SEB",
},
{
id: "941",
name: "SEB",
},
{
id: "722",
name: "DNB",
},
{
id: "942",
name: "Citadele",
},
{
id: "205",
name: "Handelsbanken",
},
{
id: "723",
name: "Šiaulių Bankas",
},
{
id: "943",
name: "DNB",
},
{
id: "206",
name: "Nordea",
},
{
id: "724",
name: "Nordea",
},
{
id: "207",
name: "SEB",
},
{
id: "208",
name: "Skandiabanken",
},
{
id: "209",
name: "Swedbank",
},
],
key: "issuer",
type: "select",
},
],
name: "Bank Payment",
type: "entercash",
},
{
name: "Nationale Entertainment Card",
type: "entertainmentcard",
},
{
name: "Gall & Gall",
type: "gallgall",
},
{
name: "Generic GiftCard",
type: "genericgiftcard",
},
{
details: [
{
key: "bic",
type: "text",
},
],
name: "GiroPay",
type: "giropay",
},
{
name: "Globe GCash",
type: "globegcash",
},
{
name: "Hunkemoller Lingerie Card",
type: "hmlingerie",
},
{
details: [
{
items: [
{
id: "1121",
name: "Test Issuer",
},
{
id: "1154",
name: "Test Issuer 5",
},
{
id: "1153",
name: "Test Issuer 4",
},
{
id: "1152",
name: "Test Issuer 3",
},
{
id: "1151",
name: "Test Issuer 2",
},
{
id: "1162",
name: "Test Issuer Cancelled",
},
{
id: "1161",
name: "Test Issuer Pending",
},
{
id: "1160",
name: "Test Issuer Refused",
},
{
id: "1159",
name: "Test Issuer 10",
},
{
id: "1158",
name: "Test Issuer 9",
},
{
id: "1157",
name: "Test Issuer 8",
},
{
id: "1156",
name: "Test Issuer 7",
},
{
id: "1155",
name: "Test Issuer 6",
},
],
key: "idealIssuer",
type: "select",
},
],
name: "iDEAL",
type: "ideal",
},
{
name: "Phone Payment",
type: "ivr",
},
{
name: "Landline phone",
type: "ivrLandline",
},
{
name: "Mobile phone",
type: "ivrMobile",
},
{
details: [
{
details: [
{
key: "firstName",
type: "text",
},
{
key: "infix",
optional: "true",
type: "text",
},
{
key: "lastName",
type: "text",
},
{
items: [
{
id: "M",
name: "MALE",
},
{
id: "F",
name: "FEMALE",
},
],
key: "gender",
type: "radio",
},
{
key: "dateOfBirth",
type: "date",
},
{
key: "telephoneNumber",
type: "tel",
},
{
key: "socialSecurityNumber",
optional: "true",
type: "text",
},
{
key: "shopperEmail",
type: "emailAddress",
},
],
key: "personalDetails",
type: "fieldSet",
},
{
details: [
{
key: "street",
type: "text",
},
{
key: "houseNumberOrName",
type: "text",
},
{
key: "city",
type: "text",
},
{
key: "postalCode",
type: "text",
},
{
key: "stateOrProvince",
optional: "true",
type: "text",
},
{
items: [
{
id: "SE",
name: "SWEDEN",
},
{
id: "NO",
name: "NORWAY",
},
{
id: "FI",
name: "FINLAND",
},
{
id: "DK",
name: "DENMARK",
},
{
id: "AT",
name: "AUSTRIA",
},
{
id: "DE",
name: "GERMANY",
},
{
id: "NL",
name: "NETHERLANDS",
},
],
key: "country",
type: "select",
},
],
key: "billingAddress",
type: "address",
},
{
key: "separateDeliveryAddress",
optional: "true",
type: "boolean",
value: "false",
},
{
details: [
{
key: "street",
type: "text",
},
{
key: "houseNumberOrName",
type: "text",
},
{
key: "city",
type: "text",
},
{
key: "postalCode",
type: "text",
},
{
key: "stateOrProvince",
optional: "true",
type: "text",
},
{
items: [
{
id: "SE",
name: "SWEDEN",
},
{
id: "NO",
name: "NORWAY",
},
{
id: "FI",
name: "FINLAND",
},
{
id: "DK",
name: "DENMARK",
},
{
id: "AT",
name: "AUSTRIA",
},
{
id: "DE",
name: "GERMANY",
},
{
id: "NL",
name: "NETHERLANDS",
},
],
key: "country",
type: "select",
},
],
key: "deliveryAddress",
optional: "true",
type: "address",
},
],
name: "Pay later with Klarna.",
type: "klarna",
},
{
name: "Multibanco",
type: "multibanco",
},
{
name: "Russian Online Payments",
type: "online_RU",
},
{
name: "Invoice",
type: "openinvoice",
},
{
name: "PayPal",
type: "paypal",
},
{
name: "Paysafecard",
type: "paysafecard",
},
{
name: "POLi",
type: "poli",
},
{
details: [
{
items: [
{
id: "+7",
name: "RU",
},
{
id: "+9955",
name: "GE",
},
{
id: "+507",
name: "PA",
},
{
id: "+44",
name: "GB",
},
{
id: "+992",
name: "TJ",
},
{
id: "+370",
name: "LT",
},
{
id: "+972",
name: "IL",
},
{
id: "+996",
name: "KG",
},
{
id: "+380",
name: "UA",
},
{
id: "+84",
name: "VN",
},
{
id: "+90",
name: "TR",
},
{
id: "+994",
name: "AZ",
},
{
id: "+374",
name: "AM",
},
{
id: "+371",
name: "LV",
},
{
id: "+91",
name: "IN",
},
{
id: "+66",
name: "TH",
},
{
id: "+373",
name: "MD",
},
{
id: "+1",
name: "US",
},
{
id: "+81",
name: "JP",
},
{
id: "+998",
name: "UZ",
},
{
id: "+77",
name: "KZ",
},
{
id: "+375",
name: "BY",
},
{
id: "+372",
name: "EE",
},
{
id: "+40",
name: "RO",
},
{
id: "+82",
name: "KR",
},
],
key: "qiwiwallet.telephoneNumberPrefix",
type: "select",
},
{
key: "qiwiwallet.telephoneNumber",
type: "text",
},
],
name: "Qiwi Wallet",
type: "qiwiwallet",
},
{
name: "RatePay Invoice",
type: "ratepay",
},
{
name: "SafetyPay",
type: "safetypay",
},
{
details: [
{
key: "sepa.ownerName",
type: "text",
},
{
key: "sepa.ibanNumber",
type: "text",
},
],
name: "SEPA Direct Debit",
type: "sepadirectdebit",
},
{
name: "Premium SMS",
type: "sms",
},
{
name: "TenPay",
type: "tenpay",
},
{
name: "Russian Cash Terminal Payments",
type: "terminal_RU",
},
{
name: "Trustly Direct bank e-Payments",
type: "trustly",
},
{
name: "Online Banking by Trustpay",
type: "trustpay",
},
{
name: "UnionPay",
type: "unionpay",
},
{
name: "Russian Wallet Payments",
type: "wallet_RU",
},
{
name: "Webshop Giftcard",
type: "webshopgiftcard",
},
{
name: "Your Gift",
type: "yourgift",
},
],
});
//# sourceMappingURL=paymentMethodsSuccess.js.map

File diff suppressed because one or more lines are too long

View File

@@ -1,6 +0,0 @@
export declare const paymentSessionError: {
statusCode: number;
errorCode: string;
message: string;
errorType: string;
};

View File

@@ -1,8 +0,0 @@
/* tslint:disable */
export var paymentSessionError = {
statusCode: 422,
errorCode: "14_012",
message: "The provided SDK token could not be parsed.",
errorType: "validation",
};
//# sourceMappingURL=paymentSessionErrorInvalidData422.js.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"paymentSessionErrorInvalidData422.js","sourceRoot":"","sources":["../../../../../src/__mocks__/checkout/paymentSessionErrorInvalidData422.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,MAAM,CAAC,IAAM,mBAAmB,GAAG;IAC/B,UAAU,EAAE,GAAG;IACf,SAAS,EAAE,QAAQ;IACnB,OAAO,EAAE,6CAA6C;IACtD,SAAS,EAAE,YAAY;CAC1B,CAAC"}

View File

@@ -1,3 +0,0 @@
export declare const paymentSessionSuccess: {
paymentSession: string;
};

File diff suppressed because one or more lines are too long

View File

@@ -1 +0,0 @@
{"version":3,"file":"paymentSessionSucess.js","sourceRoot":"","sources":["../../../../../src/__mocks__/checkout/paymentSessionSucess.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,MAAM,CAAC,IAAM,qBAAqB,GAAG;IACjC,cAAc,EAAE,k+YAAk+Y;CACr/Y,CAAC"}

View File

@@ -1,6 +0,0 @@
export declare const paymentMethodsError: {
errorCode: string;
errorType: string;
statusMessage: string;
statusCode: number;
};

View File

@@ -1,7 +0,0 @@
export var paymentMethodsError = {
errorCode: "901",
errorType: "security",
statusMessage: "Invalid Merchant Account",
statusCode: 403,
};
//# sourceMappingURL=paymentmethodsErrorForbidden403.js.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"paymentmethodsErrorForbidden403.js","sourceRoot":"","sources":["../../../../../src/__mocks__/checkout/paymentmethodsErrorForbidden403.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,IAAM,mBAAmB,GAAG;IAC/B,SAAS,EAAE,KAAK;IAChB,SAAS,EAAE,UAAU;IACrB,aAAa,EAAE,0BAA0B;IACzC,UAAU,EAAE,GAAG;CAClB,CAAC"}

View File

@@ -1,6 +0,0 @@
export declare const paymentDetailsError: {
statusCode: number;
errorCode: string;
message: string;
errorType: string;
};

View File

@@ -1,8 +0,0 @@
/* tslint:disable */
export var paymentDetailsError = {
statusCode: 422,
errorCode: "101",
message: "Invalid card number",
errorType: "validation",
};
//# sourceMappingURL=paymentsDetailsErrorInvalidData422.js.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"paymentsDetailsErrorInvalidData422.js","sourceRoot":"","sources":["../../../../../src/__mocks__/checkout/paymentsDetailsErrorInvalidData422.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,MAAM,CAAC,IAAM,mBAAmB,GAAG;IAC/B,UAAU,EAAE,GAAG;IACf,SAAS,EAAE,KAAK;IAChB,OAAO,EAAE,qBAAqB;IAC9B,SAAS,EAAE,YAAY;CAC1B,CAAC"}

View File

@@ -1 +0,0 @@
export declare const paymentDetailsSuccess: string;

View File

@@ -1,10 +0,0 @@
/* tslint:disable */
export var paymentDetailsSuccess = JSON.stringify({
pspReference: "8515232733321252",
resultCode: "Authorised",
additionalData: {
liabilityShift: "true",
refusalReasonRaw: "AUTHORISED",
},
});
//# sourceMappingURL=paymentsDetailsSuccess.js.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"paymentsDetailsSuccess.js","sourceRoot":"","sources":["../../../../../src/__mocks__/checkout/paymentsDetailsSuccess.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,MAAM,CAAC,IAAM,qBAAqB,GAAG,IAAI,CAAC,SAAS,CAAC;IAChD,YAAY,EAAE,kBAAkB;IAChC,UAAU,EAAE,YAAY;IACxB,cAAc,EAAE;QACZ,cAAc,EAAE,MAAM;QACtB,gBAAgB,EAAE,YAAY;KACjC;CACJ,CAAC,CAAC"}

View File

@@ -1 +0,0 @@
export declare const paymentsError: string;

View File

@@ -1,8 +0,0 @@
/* tslint:disable */
export var paymentsError = JSON.stringify({
statusCode: 422,
errorCode: "130",
statusMessage: "Reference Missing",
errorType: "validation",
});
//# sourceMappingURL=paymentsErrorInvalidData422.js.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"paymentsErrorInvalidData422.js","sourceRoot":"","sources":["../../../../../src/__mocks__/checkout/paymentsErrorInvalidData422.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,MAAM,CAAC,IAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC;IACxC,UAAU,EAAE,GAAG;IACf,SAAS,EAAE,KAAK;IAChB,aAAa,EAAE,mBAAmB;IAClC,SAAS,EAAE,YAAY;CAC1B,CAAC,CAAC"}

View File

@@ -1 +0,0 @@
export declare const paymentsResultError: string;

View File

@@ -1,8 +0,0 @@
/* tslint:disable */
export var paymentsResultError = JSON.stringify({
statusCode: 422,
errorCode: "14_018",
message: "Invalid payload provided",
errorType: "validation",
});
//# sourceMappingURL=paymentsResultErrorInvalidDataPayload422.js.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"paymentsResultErrorInvalidDataPayload422.js","sourceRoot":"","sources":["../../../../../src/__mocks__/checkout/paymentsResultErrorInvalidDataPayload422.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,MAAM,CAAC,IAAM,mBAAmB,GAAG,IAAI,CAAC,SAAS,CAAC;IAC9C,UAAU,EAAE,GAAG;IACf,SAAS,EAAE,QAAQ;IACnB,OAAO,EAAE,0BAA0B;IACnC,SAAS,EAAE,YAAY;CAC1B,CAAC,CAAC"}

View File

@@ -1,14 +0,0 @@
export declare const paymentsResultMultibancoSuccess: {
additionalData: {
cvcResult: string;
avsResult: string;
"comprafacil.deadline": string;
"comprafacil.reference": string;
paymentMethod: string;
paymentMethodVariant: string;
"comprafacil.entity": string;
"comprafacil.amount": string;
};
pspReference: string;
resultCode: string;
};

View File

@@ -1,16 +0,0 @@
/* tslint:disable */
export var paymentsResultMultibancoSuccess = {
additionalData: {
"cvcResult": "0",
"avsResult": "0",
"comprafacil.deadline": "3",
"comprafacil.reference": "123 123 123",
"paymentMethod": "multibanco",
"paymentMethodVariant": "multibanco",
"comprafacil.entity": "12345",
"comprafacil.amount": "101.01",
},
pspReference: "8111111111111111",
resultCode: "Received",
};
//# sourceMappingURL=paymentsResultMultibancoSuccess.js.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"paymentsResultMultibancoSuccess.js","sourceRoot":"","sources":["../../../../../src/__mocks__/checkout/paymentsResultMultibancoSuccess.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,MAAM,CAAC,IAAM,+BAA+B,GAAG;IAC3C,cAAc,EAAE;QACZ,WAAW,EAAE,GAAG;QAChB,WAAW,EAAE,GAAG;QAChB,sBAAsB,EAAE,GAAG;QAC3B,uBAAuB,EAAE,aAAa;QACtC,eAAe,EAAE,YAAY;QAC7B,sBAAsB,EAAE,YAAY;QACpC,oBAAoB,EAAE,OAAO;QAC7B,oBAAoB,EAAE,QAAQ;KACjC;IACD,YAAY,EAAE,kBAAkB;IAChC,UAAU,EAAE,UAAU;CACzB,CAAC"}

View File

@@ -1 +0,0 @@
export declare const paymentsResultSuccess: string;

View File

@@ -1,6 +0,0 @@
/* tslint:disable */
export var paymentsResultSuccess = JSON.stringify({
pspReference: "8535253563623704",
resultCode: "Authorised",
});
//# sourceMappingURL=paymentsResultSucess.js.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"paymentsResultSucess.js","sourceRoot":"","sources":["../../../../../src/__mocks__/checkout/paymentsResultSucess.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,MAAM,CAAC,IAAM,qBAAqB,GAAG,IAAI,CAAC,SAAS,CAAC;IAChD,YAAY,EAAE,kBAAkB;IAChC,UAAU,EAAE,YAAY;CAC3B,CAAC,CAAC"}

View File

@@ -1 +0,0 @@
export declare const paymentsSuccess: string;

View File

@@ -1,100 +0,0 @@
/* tslint:disable */
export var paymentsSuccess = JSON.stringify({
additionalData: {
expiryDate: "8/2018",
fraudResultType: "GREEN",
cardBin: "411111",
cardSummary: "1111",
fraudManualReview: "false",
aliasType: "Default",
alias: "H167852639363479",
cardPaymentMethod: "visa",
cardIssuingCountry: "NL",
"recurring.recurringDetailReference": "8415883203388055",
},
fraudResult: {
accountScore: 0,
results: [
{
FraudCheckResult: {
accountScore: 0,
checkId: 2,
name: "CardChunkUsage",
},
},
{
FraudCheckResult: {
accountScore: 0,
checkId: 3,
name: "PaymentDetailUsage",
},
},
{
FraudCheckResult: {
accountScore: 0,
checkId: 4,
name: "HolderNameUsage",
},
},
{
FraudCheckResult: {
accountScore: 0,
checkId: 1,
name: "PaymentDetailRefCheck",
},
},
{
FraudCheckResult: {
accountScore: 0,
checkId: 13,
name: "IssuerRefCheck",
},
},
{
FraudCheckResult: {
accountScore: 0,
checkId: 15,
name: "IssuingCountryReferral",
},
},
{
FraudCheckResult: {
accountScore: 0,
checkId: 27,
name: "PmOwnerRefCheck",
},
},
{
FraudCheckResult: {
accountScore: 0,
checkId: 10,
name: "HolderNameContainsNumber",
},
},
{
FraudCheckResult: {
accountScore: 0,
checkId: 11,
name: "HolderNameIsOneWord",
},
},
{
FraudCheckResult: {
accountScore: 0,
checkId: 82,
name: "CustomFieldCheck",
},
},
{
FraudCheckResult: {
accountScore: 0,
checkId: 25,
name: "CVCAuthResultCheck",
},
},
],
},
pspReference: "8535296650153317",
resultCode: "Authorised",
});
//# sourceMappingURL=paymentsSuccess.js.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"paymentsSuccess.js","sourceRoot":"","sources":["../../../../../src/__mocks__/checkout/paymentsSuccess.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,MAAM,CAAC,IAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC;IAC1C,cAAc,EAAE;QACZ,UAAU,EAAE,QAAQ;QACpB,eAAe,EAAE,OAAO;QACxB,OAAO,EAAE,QAAQ;QACjB,WAAW,EAAE,MAAM;QACnB,iBAAiB,EAAE,OAAO;QAC1B,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,kBAAkB;QACzB,iBAAiB,EAAE,MAAM;QACzB,kBAAkB,EAAE,IAAI;QACxB,oCAAoC,EAAE,kBAAkB;KAC3D;IACD,WAAW,EAAE;QACT,YAAY,EAAE,CAAC;QACf,OAAO,EAAE;YACL;gBACI,gBAAgB,EAAE;oBACd,YAAY,EAAE,CAAC;oBACf,OAAO,EAAE,CAAC;oBACV,IAAI,EAAE,gBAAgB;iBACzB;aACJ;YACD;gBACI,gBAAgB,EAAE;oBACd,YAAY,EAAE,CAAC;oBACf,OAAO,EAAE,CAAC;oBACV,IAAI,EAAE,oBAAoB;iBAC7B;aACJ;YACD;gBACI,gBAAgB,EAAE;oBACd,YAAY,EAAE,CAAC;oBACf,OAAO,EAAE,CAAC;oBACV,IAAI,EAAE,iBAAiB;iBAC1B;aACJ;YACD;gBACI,gBAAgB,EAAE;oBACd,YAAY,EAAE,CAAC;oBACf,OAAO,EAAE,CAAC;oBACV,IAAI,EAAE,uBAAuB;iBAChC;aACJ;YACD;gBACI,gBAAgB,EAAE;oBACd,YAAY,EAAE,CAAC;oBACf,OAAO,EAAE,EAAE;oBACX,IAAI,EAAE,gBAAgB;iBACzB;aACJ;YACD;gBACI,gBAAgB,EAAE;oBACd,YAAY,EAAE,CAAC;oBACf,OAAO,EAAE,EAAE;oBACX,IAAI,EAAE,wBAAwB;iBACjC;aACJ;YACD;gBACI,gBAAgB,EAAE;oBACd,YAAY,EAAE,CAAC;oBACf,OAAO,EAAE,EAAE;oBACX,IAAI,EAAE,iBAAiB;iBAC1B;aACJ;YACD;gBACI,gBAAgB,EAAE;oBACd,YAAY,EAAE,CAAC;oBACf,OAAO,EAAE,EAAE;oBACX,IAAI,EAAE,0BAA0B;iBACnC;aACJ;YACD;gBACI,gBAAgB,EAAE;oBACd,YAAY,EAAE,CAAC;oBACf,OAAO,EAAE,EAAE;oBACX,IAAI,EAAE,qBAAqB;iBAC9B;aACJ;YACD;gBACI,gBAAgB,EAAE;oBACd,YAAY,EAAE,CAAC;oBACf,OAAO,EAAE,EAAE;oBACX,IAAI,EAAE,kBAAkB;iBAC3B;aACJ;YACD;gBACI,gBAAgB,EAAE;oBACd,YAAY,EAAE,CAAC;oBACf,OAAO,EAAE,EAAE;oBACX,IAAI,EAAE,oBAAoB;iBAC7B;aACJ;SACJ;KACJ;IACD,YAAY,EAAE,kBAAkB;IAChC,UAAU,EAAE,YAAY;CAC3B,CAAC,CAAC"}

View File

@@ -1 +0,0 @@
export declare const originKeysSuccess: string;

View File

@@ -1,8 +0,0 @@
export var originKeysSuccess = JSON.stringify({
originKeys: {
"https://www.your-domain1.com": "pub.v2.7814286629520534.aHR0cHM6Ly93d3cueW91ci1kb21haW4xLmNvbQ.UEwIBmW9-c_uXo5wSEr2w8Hz8hVIpujXPHjpcEse3xI",
"https://www.your-domain2.com": "pub.v2.7814286629520534.aHR0cHM6Ly93d3cueW91ci1kb21haW4yLmNvbQ.EP6eXBJKk0t7-QIUl6e_b1qMuMHGepxG_SlUqxAYrfY",
"https://www.your-domain3.com": "pub.v2.7814286629520534.aHR0cHM6Ly93d3cueW91ci1kb21haW4zLmNvbQ.fUvflu-YIdZSsLEH8Qqmr7ksE4ag_NYiiMXK0s6aq_4",
},
});
//# sourceMappingURL=originkeysSuccess.js.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"originkeysSuccess.js","sourceRoot":"","sources":["../../../../../src/__mocks__/checkoutUtility/originkeysSuccess.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,IAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC;IAC5C,UAAU,EAAE;QACR,8BAA8B,EAAE,4GAA4G;QAC5I,8BAA8B,EAAE,4GAA4G;QAC5I,8BAA8B,EAAE,4GAA4G;KAC/I;CACJ,CAAC,CAAC"}

View File

@@ -1,36 +0,0 @@
{
"live": "false",
"notificationItems": [
{
"NotificationRequestItem": {
"additionalData": {
"expiryDate": "12\/2012",
" NAME1 ": "VALUE1",
"authCode": "1234",
"cardSummary": "7777",
"totalFraudScore": "10",
"hmacSignature": "OzDjCMZIsdtDqrZ+cl\/FWC+WdESrorctXTzAzW33dXI=",
"NAME2": " VALUE2 ",
"fraudCheck-6-ShopperIpUsage": "10"
},
"amount": {
"currency": "EUR",
"value": 10100
},
"eventCode": "AUTHORISATION",
"eventDate": "2017-01-19T16:42:03+01:00",
"merchantAccountCode": "MagentoMerchantTest2",
"merchantReference": "8313842560770001",
"operations": [
"CANCEL",
"CAPTURE",
"REFUND"
],
"paymentMethod": "visa",
"pspReference": "123456789",
"reason": "1234:7777:12\/2012",
"success": "true"
}
}
]
}

View File

@@ -1,25 +0,0 @@
{
"live": "false",
"notificationItems": [
{
"NotificationRequestItem": {
"additionalData": {
"hmacSignature": "KujHNqpyCAMdGefj7lfQ8AeD0Jke9Zs2bVAqScQDWi4="
},
"amount": {
"currency": "USD",
"value": 23623
},
"eventCode": "CAPTURE",
"eventDate": "2017-01-25T18:08:19+01:00",
"merchantAccountCode": "MagentoMerchantTest2",
"merchantReference": "00000001",
"originalReference": "ORIGINAL_PSP",
"paymentMethod": "visa",
"pspReference": "PSP_REFERENCE",
"reason": "Insufficient balance on payment",
"success": "false"
}
}
]
}

View File

@@ -1,25 +0,0 @@
{
"live": "false",
"notificationItems": [
{
"NotificationRequestItem": {
"additionalData": {
"hmacSignature": "qvS6I3Gdi1jx+jSh7IopAgcHtMoxvXlNL7DYQ+j1hd0="
},
"amount": {
"currency": "USD",
"value": 23623
},
"eventCode": "CAPTURE",
"eventDate": "2017-01-25T18:08:19+01:00",
"merchantAccountCode": "MagentoMerchantTest2",
"merchantReference": "00000001",
"originalReference": "ORIGINAL_PSP",
"paymentMethod": "visa",
"pspReference": "PSP_REFERENCE",
"reason": "",
"success": "true"
}
}
]
}

View File

@@ -1,25 +0,0 @@
{
"live": "false",
"notificationItems": [
{
"NotificationRequestItem": {
"additionalData": {
"hmacSignature": "HZXziBYopfDIzDhk49iC\/\/yCfxmy\/z0xWuvvTxFNUSA="
},
"amount": {
"currency": "EUR",
"value": 1500
},
"eventCode": "REFUND",
"eventDate": "2017-02-17T11:04:07+01:00",
"merchantAccountCode": "MagentoMerchantTest2",
"merchantReference": "payment-2017-1-17-11-refund",
"originalReference": "ORIGINAL_PSP",
"paymentMethod": "visa",
"pspReference": "PSP_REFERENCE",
"reason": "Insufficient balance on payment",
"success": "false"
}
}
]
}

View File

@@ -1,25 +0,0 @@
{
"live": "false",
"notificationItems": [
{
"NotificationRequestItem": {
"additionalData": {
"hmacSignature": "KJFhURWP8Pv9m8k+7NGHNJAupBj6X6J\/VWAikFxeWhA="
},
"amount": {
"currency": "EUR",
"value": 1500
},
"eventCode": "REFUND",
"eventDate": "2017-02-17T11:11:44+01:00",
"merchantAccountCode": "MagentoMerchantTest2",
"merchantReference": "payment-2017-1-17-11-refund",
"originalReference": "ORIGINAL_PSP",
"paymentMethod": "visa",
"pspReference": "PSP_REFERENCE",
"reason": "",
"success": "true"
}
}
]
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1 +0,0 @@
{"version":3,"file":"documentContent.js","sourceRoot":"","sources":["../../../../../src/__mocks__/platforms/documentContent.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,IAAM,eAAe,GAAG,636LAA636L,CAAA"}

View File

@@ -1,3 +0,0 @@
export declare const disableSuccess: {
response: string;
};

View File

@@ -1,4 +0,0 @@
export var disableSuccess = {
response: "[detail-successfully-disabled]",
};
//# sourceMappingURL=disableSuccess.js.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"disableSuccess.js","sourceRoot":"","sources":["../../../../../src/__mocks__/recurring/disableSuccess.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,IAAM,cAAc,GAAG;IAC1B,QAAQ,EAAE,gCAAgC;CAC7C,CAAC"}

View File

@@ -1,51 +0,0 @@
export declare const listRecurringDetailsSuccess: {
creationDate: string;
details: ({
additionalData: {
cardBin: string;
};
alias: string;
aliasType: string;
card: {
expiryMonth: string;
expiryYear: string;
holderName: string;
number: string;
};
contractTypes: string[];
creationDate: string;
firstPspReference: string;
paymentMethodVariant: string;
recurringDetailReference: string;
variant: string;
billingAddress?: undefined;
tokenDetails?: undefined;
} | {
billingAddress: {
city: string;
country: string;
houseNumberOrName: string;
postalCode: string;
stateOrProvince: string;
street: string;
};
contractTypes: string[];
creationDate: string;
firstPspReference: string;
paymentMethodVariant: string;
recurringDetailReference: string;
tokenDetails: {
tokenData: {
BillingAgreementId: string;
EmailId: string;
"PayPal.PayerId": string;
};
tokenDataType: string;
};
variant: string;
additionalData?: undefined;
alias?: undefined;
aliasType?: undefined;
card?: undefined;
})[];
};

View File

@@ -1,53 +0,0 @@
export var listRecurringDetailsSuccess = {
creationDate: "2017-03-01T10:53:11.000",
details: [
{
additionalData: {
cardBin: "411111",
},
alias: "cardAlias",
aliasType: "Default",
card: {
expiryMonth: "8",
expiryYear: "2018",
holderName: "Holder",
number: "1111",
},
contractTypes: [
"ONECLICK",
],
creationDate: "2017-03-01T10:53:11.000",
firstPspReference: "8524888762135795",
paymentMethodVariant: "visa",
recurringDetailReference: "recurringReference",
variant: "visa",
},
{
billingAddress: {
city: "City",
country: "NL",
houseNumberOrName: "1",
postalCode: "2312aa",
stateOrProvince: "NA",
street: "Street",
},
contractTypes: [
"RECURRING",
],
creationDate: "2017-03-01T10:53:11.000",
firstPspReference: "8515076181707110",
paymentMethodVariant: "paypal",
recurringDetailReference: "8315076181982020",
tokenDetails: {
tokenData: {
"BillingAgreementId": "B-7MA42752FE774625C",
"EmailId": "tedtest@test.nl",
"PayPal.PayerId": "H95EPL8B2KFE6",
},
tokenDataType: "PayPal",
},
variant: "paypal",
},
],
};
//# sourceMappingURL=listRecurringDetailsSuccess.js.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"listRecurringDetailsSuccess.js","sourceRoot":"","sources":["../../../../../src/__mocks__/recurring/listRecurringDetailsSuccess.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,IAAM,2BAA2B,GAAG;IACvC,YAAY,EAAE,yBAAyB;IACvC,OAAO,EAAE;QACL;YACI,cAAc,EAAE;gBACZ,OAAO,EAAE,QAAQ;aACpB;YACD,KAAK,EAAE,WAAW;YAClB,SAAS,EAAE,SAAS;YACpB,IAAI,EAAE;gBACF,WAAW,EAAE,GAAG;gBAChB,UAAU,EAAE,MAAM;gBAClB,UAAU,EAAE,QAAQ;gBACpB,MAAM,EAAE,MAAM;aACjB;YACD,aAAa,EAAE;gBACX,UAAU;aACb;YACD,YAAY,EAAE,yBAAyB;YACvC,iBAAiB,EAAE,kBAAkB;YACrC,oBAAoB,EAAE,MAAM;YAC5B,wBAAwB,EAAE,oBAAoB;YAC9C,OAAO,EAAE,MAAM;SAClB;QACD;YACI,cAAc,EAAE;gBACZ,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,IAAI;gBACb,iBAAiB,EAAE,GAAG;gBACtB,UAAU,EAAE,QAAQ;gBACpB,eAAe,EAAE,IAAI;gBACrB,MAAM,EAAE,QAAQ;aACnB;YACD,aAAa,EAAE;gBACX,WAAW;aACd;YACD,YAAY,EAAE,yBAAyB;YACvC,iBAAiB,EAAE,kBAAkB;YACrC,oBAAoB,EAAE,QAAQ;YAC9B,wBAAwB,EAAE,kBAAkB;YAC5C,YAAY,EAAE;gBACV,SAAS,EAAE;oBACP,oBAAoB,EAAE,qBAAqB;oBAC3C,SAAS,EAAE,iBAAiB;oBAC5B,gBAAgB,EAAE,eAAe;iBACpC;gBACD,aAAa,EAAE,QAAQ;aAC1B;YACD,OAAO,EAAE,QAAQ;SACpB;KACJ;CACJ,CAAC"}

View File

@@ -1 +0,0 @@
export declare const asyncRes = "ok";

View File

@@ -1,2 +0,0 @@
export var asyncRes = "ok";
//# sourceMappingURL=async.js.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"async.js","sourceRoot":"","sources":["../../../../../src/__mocks__/terminalApi/async.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,IAAM,QAAQ,GAAG,IAAI,CAAC"}

View File

@@ -1,3 +0,0 @@
export declare const localSecuredRes: string;
export declare const localEncRes: string;
export declare const wrongEncRes: string;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,2 +0,0 @@
export declare const syncRes: string;
export declare const syncRefund: string;

View File

@@ -1,338 +0,0 @@
export var syncRes = JSON.stringify({
SaleToPOIResponse: {
MessageHeader: {
MessageCategory: "Payment",
MessageClass: "Service",
MessageType: "Response",
POIID: process.env.ADYEN_TERMINAL_POIID,
ProtocolVersion: "3.0",
SaleID: "001",
ServiceID: "001",
},
PaymentResponse: {
POIData: {
POIReconciliationID: "1000",
POITransactionID: {
TimeStamp: "2019-04-29T00:00:00.000Z",
TransactionID: "4r7i001556529591000.8515565295894301",
},
},
PaymentReceipt: [
{
DocumentQualifier: "CashierReceipt",
OutputContent: {
OutputFormat: "Text",
OutputText: [
{
CharacterStyle: "Bold",
EndOfLineFlag: true,
Text: "key=header1",
},
{
CharacterStyle: "Bold",
EndOfLineFlag: true,
Text: "key=header2",
},
{
CharacterStyle: "Bold",
EndOfLineFlag: true,
Text: "name=MERCHANT%20COPY&key=merchantTitle",
},
{
EndOfLineFlag: true,
Text: "key=filler",
},
{
EndOfLineFlag: true,
Text: "name=Date&value=29%2f04%2f19&key=txdate",
},
{
EndOfLineFlag: true,
Text: "name=Time&value=10%3a19%3a51&key=txtime",
},
{
EndOfLineFlag: true,
Text: "key=filler",
},
{
EndOfLineFlag: true,
Text: "name=Card&value=%2a%2a%2a%2a%2a%2a%2a%2a%2a%2a%2a%2a3511&key=pan",
},
{
EndOfLineFlag: true,
Text: "name=Pref.%20name&value=MCC%20351%20v1%202&key=preferredName",
},
{
EndOfLineFlag: true,
Text: "name=Card%20type&value=mc&key=cardType",
},
{
EndOfLineFlag: true,
Text: "name=Payment%20method&value=mc&key=paymentMethod",
},
{
EndOfLineFlag: true,
Text: "name=Payment%20variant&value=mc&key=paymentMethodVariant",
},
{
EndOfLineFlag: true,
Text: "name=Entry%20mode&value=Contactless%20swipe&key=posEntryMode",
},
{
EndOfLineFlag: true,
Text: "key=filler",
},
{
EndOfLineFlag: true,
Text: "name=AID&value=A0000000041010&key=aid",
},
{
EndOfLineFlag: true,
Text: "name=MID&value=1000&key=mid",
},
{
EndOfLineFlag: true,
Text: "name=TID&value=P400Plus-275039202&key=tid",
},
{
EndOfLineFlag: true,
Text: "name=PTID&value=75039202&key=ptid",
},
{
EndOfLineFlag: true,
Text: "key=filler",
},
{
EndOfLineFlag: true,
Text: "name=Auth.%20code&value=123456&key=authCode",
},
{
EndOfLineFlag: true,
Text: "name=Tender&value=4r7i001556529591000&key=txRef",
},
{
EndOfLineFlag: true,
Text: "name=Reference&value=003&key=mref",
},
{
EndOfLineFlag: true,
Text: "key=filler",
},
{
EndOfLineFlag: true,
Text: "name=Type&value=GOODS_SERVICES&key=txtype",
},
{
CharacterStyle: "Bold",
EndOfLineFlag: true,
Text: "name=TOTAL&value=%e2%82%ac%c2%a01.00&key=totalAmount",
},
{
EndOfLineFlag: true,
Text: "key=filler",
},
{
CharacterStyle: "Bold",
EndOfLineFlag: true,
Text: "name=APPROVED&key=approved",
},
],
},
RequiredSignatureFlag: false,
},
{
DocumentQualifier: "CustomerReceipt",
OutputContent: {
OutputFormat: "Text",
OutputText: [
{
CharacterStyle: "Bold",
EndOfLineFlag: true,
Text: "key=header1",
},
{
CharacterStyle: "Bold",
EndOfLineFlag: true,
Text: "key=header2",
},
{
CharacterStyle: "Bold",
EndOfLineFlag: true,
Text: "name=CARDHOLDER%20COPY&key=cardholderHeader",
},
{
EndOfLineFlag: true,
Text: "key=filler",
},
{
EndOfLineFlag: true,
Text: "name=Date&value=29%2f04%2f19&key=txdate",
},
{
EndOfLineFlag: true,
Text: "name=Time&value=10%3a19%3a51&key=txtime",
},
{
EndOfLineFlag: true,
Text: "key=filler",
},
{
EndOfLineFlag: true,
Text: "name=Card&value=%2a%2a%2a%2a%2a%2a%2a%2a%2a%2a%2a%2a3511&key=pan",
},
{
EndOfLineFlag: true,
Text: "name=Pref.%20name&value=MCC%20351%20v1%202&key=preferredName",
},
{
EndOfLineFlag: true,
Text: "name=Card%20type&value=mc&key=cardType",
},
{
EndOfLineFlag: true,
Text: "name=Payment%20method&value=mc&key=paymentMethod",
},
{
EndOfLineFlag: true,
Text: "name=Payment%20variant&value=mc&key=paymentMethodVariant",
},
{
EndOfLineFlag: true,
Text: "name=Entry%20mode&value=Contactless%20swipe&key=posEntryMode",
},
{
EndOfLineFlag: true,
Text: "key=filler",
},
{
EndOfLineFlag: true,
Text: "name=AID&value=A0000000041010&key=aid",
},
{
EndOfLineFlag: true,
Text: "name=MID&value=1000&key=mid",
},
{
EndOfLineFlag: true,
Text: "name=TID&value=P400Plus-275039202&key=tid",
},
{
EndOfLineFlag: true,
Text: "name=PTID&value=75039202&key=ptid",
},
{
EndOfLineFlag: true,
Text: "key=filler",
},
{
EndOfLineFlag: true,
Text: "name=Auth.%20code&value=123456&key=authCode",
},
{
EndOfLineFlag: true,
Text: "name=Tender&value=4r7i001556529591000&key=txRef",
},
{
EndOfLineFlag: true,
Text: "name=Reference&value=003&key=mref",
},
{
EndOfLineFlag: true,
Text: "key=filler",
},
{
EndOfLineFlag: true,
Text: "name=Type&value=GOODS_SERVICES&key=txtype",
},
{
CharacterStyle: "Bold",
EndOfLineFlag: true,
Text: "name=TOTAL&value=%e2%82%ac%c2%a01.00&key=totalAmount",
},
{
EndOfLineFlag: true,
Text: "key=filler",
},
{
CharacterStyle: "Bold",
EndOfLineFlag: true,
Text: "name=APPROVED&key=approved",
},
{
EndOfLineFlag: true,
Text: "key=filler",
},
{
EndOfLineFlag: true,
Text: "name=Please%20retain%20for%20your%20records&key=retain",
},
{
EndOfLineFlag: true,
Text: "name=Thank%20you&key=thanks",
},
],
},
RequiredSignatureFlag: false,
},
],
PaymentResult: {
AmountsResp: {
AuthorizedAmount: 1,
Currency: "EUR",
},
OnlineFlag: true,
PaymentAcquirerData: {
AcquirerPOIID: "P400Plus-123456789",
AcquirerTransactionID: {
TimeStamp: "2019-04-29T09:19:51.000Z",
TransactionID: "8515565295894301",
},
ApprovalCode: "123456",
MerchantID: "TestMerchant",
},
PaymentInstrumentData: {
CardData: {
EntryMode: [
"Tapped",
],
MaskedPan: "411111 **** 1111",
PaymentBrand: "mc",
SensitiveCardData: {
ExpiryDate: "1225",
},
},
PaymentInstrumentType: "Card",
},
},
Response: {
AdditionalResponse: "tid=75039202&AID=A0000000041010&transactionType=GOODS_SERVICES&backendGiftcardIndi\n cator=false&expiryYear=2025&acquirerAccountCode=TestPmmAcquirerAccount&alias=M900978995070104&posOrigin\n alAmountCurrency=EUR&giftcardIndicator=false&authorisedAmountValue=100&pspReference=8515565295894301&pa\n ymentMethodVariant=mc&cardHolderName=N%2fA&refusalReasonRaw=APPROVED&authorisationMid=1000&expiryDate=1\n 2%2f2025&applicationPreferredName=MCC%20351%20v1%202&acquirerCode=TestPmmAcquirer&txtime=10%3a19%3a51&i\n so8601TxDate=2019-04-29T09%3a19%3a51.0000000%2b0000&cardType=mc&posOriginalAmountValue=100&offline=fals\n e&aliasType=Default&txdate=29-04-2019&paymentMethod=mc&cvcResult=0%20Unknown&avsResult=0%20Unknown&mid=\n 1000&merchantReference=003&transactionReferenceNumber=8515565295894301&expiryMonth=12&cardSummary=3511&\n posTotalAmountValue=100&posAuthAmountCurrency=EUR&cardHolderVerificationMethodResults=3F0300&authCode=1\n 23456&shopperCountry=NL&posEntryMode=CLESS_SWIPE&cardScheme=mc&cardBin=541333&posAuthAmountValue=100",
Result: "Success",
},
SaleData: {
SaleTransactionID: {
TimeStamp: "2019-04-29T00:00:00.000Z",
TransactionID: "001",
},
},
},
},
});
export var syncRefund = JSON.stringify({
SaleToPOIResponse: {
MessageHeader: {
MessageCategory: "Payment",
MessageClass: "Service",
MessageType: "Response",
POIID: process.env.ADYEN_TERMINAL_POIID,
ProtocolVersion: "3.0",
SaleID: "001",
ServiceID: "001",
},
ReversalResponse: {
Response: {
Result: "Success"
}
}
}
});
//# sourceMappingURL=sync.js.map

File diff suppressed because one or more lines are too long

View File

@@ -1 +0,0 @@
export {};

View File

@@ -1,181 +0,0 @@
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __generator = (this && this.__generator) || function (thisArg, body) {
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (_) try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
if (y = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0: case 1: t = op; break;
case 4: _.label++; return { value: op[1], done: false };
case 5: _.label++; y = op[1]; op = [0]; continue;
case 7: op = _.ops.pop(); _.trys.pop(); continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
if (t[2]) _.ops.pop();
_.trys.pop(); continue;
}
op = body.call(thisArg, _);
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
}
};
/*
* ######
* ######
* ############ ####( ###### #####. ###### ############ ############
* ############# #####( ###### #####. ###### ############# #############
* ###### #####( ###### #####. ###### ##### ###### ##### ######
* ###### ###### #####( ###### #####. ###### ##### ##### ##### ######
* ###### ###### #####( ###### #####. ###### ##### ##### ######
* ############# ############# ############# ############# ##### ######
* ############ ############ ############# ############ ##### ######
* ######
* #############
* ############
*
* Adyen NodeJS API Library
*
* Copyright (c) 2019 Adyen B.V.
* This file is open source and available under the MIT license.
* See the LICENSE file for more info.
*/
import nock from "nock";
import { createClient } from "../__mocks__/base";
import BinLookup from "../services/binLookup";
import Client from "../client";
import HttpClientException from "../httpClient/httpClientException";
var threeDSAvailabilitySuccess = {
binDetails: {
issuerCountry: "NL"
},
threeDS1Supported: true,
threeDS2CardRangeDetails: [],
threeDS2supported: false
};
var client;
var binLookup;
var scope;
beforeEach(function () {
if (!nock.isActive()) {
nock.activate();
}
client = createClient();
binLookup = new BinLookup(client);
scope = nock("" + client.config.endpoint + Client.BIN_LOOKUP_PAL_SUFFIX + Client.BIN_LOOKUP_API_VERSION);
});
afterEach(function () {
nock.cleanAll();
});
describe("Bin Lookup", function () {
test.each([false, true])("should succeed on get 3ds availability. isMock: %p", function (isMock) {
return __awaiter(this, void 0, void 0, function () {
var threeDSAvailabilityRequest, response;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
!isMock && nock.restore();
threeDSAvailabilityRequest = {
merchantAccount: process.env.ADYEN_MERCHANT,
brands: ["randomBrand"],
cardNumber: "4111111111111111"
};
scope.post("/get3dsAvailability")
.reply(200, threeDSAvailabilitySuccess);
return [4 /*yield*/, binLookup.get3dsAvailability(threeDSAvailabilityRequest)];
case 1:
response = _a.sent();
expect(response).toEqual(threeDSAvailabilitySuccess);
return [2 /*return*/];
}
});
});
});
test.each([false, true])("should fail with invalid merchant. isMock: %p", function (isMock) {
return __awaiter(this, void 0, void 0, function () {
var threeDSAvailabilityRequest, e_1;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
!isMock && nock.restore();
threeDSAvailabilityRequest = {
merchantAccount: undefined,
cardNumber: "4111111111111",
brands: []
};
scope.post("/get3dsAvailability")
.reply(403, JSON.stringify({ status: 403, message: "fail", errorCode: "171" }));
_a.label = 1;
case 1:
_a.trys.push([1, 3, , 4]);
return [4 /*yield*/, binLookup.get3dsAvailability(threeDSAvailabilityRequest)];
case 2:
_a.sent();
fail("Expected request to fail");
return [3 /*break*/, 4];
case 3:
e_1 = _a.sent();
expect(e_1 instanceof HttpClientException).toBeTruthy();
return [3 /*break*/, 4];
case 4: return [2 /*return*/];
}
});
});
});
test.each([false, true])("should succeed on get cost estimate. isMock: %p", function (isMock) {
return __awaiter(this, void 0, void 0, function () {
var expected, costEstimateRequest, response;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
!isMock && nock.restore();
expected = {
costEstimateAmount: {
currency: "EUR",
value: 10
},
resultCode: "Unsupported",
surchargeType: "ZERO"
};
costEstimateRequest = {
amount: { currency: "EUR", value: 1000 },
assumptions: {
assumeLevel3Data: true,
assume3DSecureAuthenticated: true
},
cardNumber: "411111111111",
merchantAccount: process.env.ADYEN_MERCHANT,
merchantDetails: {
countryCode: "NL",
mcc: "7411",
enrolledIn3DSecure: true
},
shopperInteraction: "Ecommerce"
};
scope.post("/getCostEstimate")
.reply(200, expected);
return [4 /*yield*/, binLookup.getCostEstimate(costEstimateRequest)];
case 1:
response = _a.sent();
expect(response).toEqual(expected);
return [2 /*return*/];
}
});
});
});
});
//# sourceMappingURL=binLookup.spec.js.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"binLookup.spec.js","sourceRoot":"","sources":["../../../../src/__tests__/binLookup.spec.ts"],"names":[],"mappings":"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"}

View File

@@ -1 +0,0 @@
export {};

View File

@@ -1,78 +0,0 @@
/* eslint-disable @typescript-eslint/camelcase */
import checkServerIdentity from "../helpers/checkServerIdentity";
var createMockedCertificate = function (CN) { return ({
subjectaltname: "Adyen B.V",
infoAccess: { mock: ["any"] },
subject: {
C: "AB",
ST: "AB",
L: "City",
O: "Company Name",
OU: "Mocked Value",
CN: CN,
},
issuer: {
C: "AB",
ST: "AB",
L: "City",
O: "Issuer Name",
OU: "Issuer",
CN: "Issuer CN",
},
modulus: "ABC123",
exponent: "01010101",
valid_from: "Nov 19 15:03:32 2018 GMT",
valid_to: "Nov 11 15:03:32 2048 GMT",
fingerprint: "MOCKED_FINGERPRINT",
fingerprint256: "MOCKED_FINGERPRINT_256",
ext_key_usage: ["1.2.3.4.5.6.7.8"],
serialNumber: "1000",
raw: Buffer.from("test")
}); };
describe("Certificate Server Identiy", function () {
test.each([
["legacy-terminal-certificate", "live"],
["legacy-terminal-certificate", "test"],
["P400-3123123", "live"],
["P400-3123123", "test"],
["MODEL-SN", "live"],
["MODEL-SN", "test"],
])("it should be valid: %s.%s", function (prefix, environment) {
var cn = prefix + "." + environment + ".terminal.adyen.com";
var mockedCertificate = createMockedCertificate(cn);
expect(checkServerIdentity("any", mockedCertificate)).toBeUndefined();
});
test.each([
"INVALID.adyen.com",
"terminal.INVALID.com",
"terminal.adyen.org",
"google.com",
"",
])("it should fail because invalid domain: %s", function (domain) {
var cn = "P400-123123.live." + domain;
var mockedCertificate = createMockedCertificate(cn);
expect(checkServerIdentity("any", mockedCertificate) instanceof Error).toBeTruthy();
});
test.each([
"liive", "teest", "lve", "tst", "ANY", "invalid",
])("it should fail because invalid environment: %s", function (environment) {
var cn = "P400-123123." + environment + ".terminal.adyen.com";
var mockedCertificate = createMockedCertificate(cn);
expect(checkServerIdentity("any", mockedCertificate) instanceof Error).toBeTruthy();
});
test.each([
"legacyy-terminal-certificate", "legacy-terminaal-certificate",
"legacy-terminal-certificatee", "P400-", "-123123", "P400--123123", "P400123123",
"ANY-ANY-ANY", "ANY", ""
])("it should fail because invalid prefix: %s", function (prefix) {
var cn = prefix + ".test.terminal.adyen.com";
var mockedCertificate = createMockedCertificate(cn);
expect(checkServerIdentity("any", mockedCertificate) instanceof Error).toBeTruthy();
});
it("should fail if no first part on CN", function () {
var cn = "live.terminal.adyen.com";
var mockedCertificate = createMockedCertificate(cn);
expect(checkServerIdentity("any", mockedCertificate) instanceof Error).toBeTruthy();
});
});
//# sourceMappingURL=checkServerIdentity.spec.js.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"checkServerIdentity.spec.js","sourceRoot":"","sources":["../../../../src/__tests__/checkServerIdentity.spec.ts"],"names":[],"mappings":"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"}

View File

@@ -1 +0,0 @@
export declare function createPaymentsCheckoutRequest(): ICheckout.PaymentRequest;

View File

@@ -1,335 +0,0 @@
/*
* ######
* ######
* ############ ####( ###### #####. ###### ############ ############
* ############# #####( ###### #####. ###### ############# #############
* ###### #####( ###### #####. ###### ##### ###### ##### ######
* ###### ###### #####( ###### #####. ###### ##### ##### ##### ######
* ###### ###### #####( ###### #####. ###### ##### ##### ######
* ############# ############# ############# ############# ##### ######
* ############ ############ ############# ############ ##### ######
* ######
* #############
* ############
*
* Adyen NodeJS API Library
*
* Copyright (c) 2019 Adyen B.V.
* This file is open source and available under the MIT license.
* See the LICENSE file for more info.
*/
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __generator = (this && this.__generator) || function (thisArg, body) {
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (_) try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
if (y = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0: case 1: t = op; break;
case 4: _.label++; return { value: op[1], done: false };
case 5: _.label++; y = op[1]; op = [0]; continue;
case 7: op = _.ops.pop(); _.trys.pop(); continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
if (t[2]) _.ops.pop();
_.trys.pop(); continue;
}
op = body.call(thisArg, _);
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
}
};
import nock from "nock";
import { createClient } from "../__mocks__/base";
import { paymentMethodsSuccess } from "../__mocks__/checkout/paymentMethodsSuccess";
import { paymentsSuccess } from "../__mocks__/checkout/paymentsSuccess";
import { paymentDetailsSuccess } from "../__mocks__/checkout/paymentsDetailsSuccess";
import { paymentSessionSuccess } from "../__mocks__/checkout/paymentSessionSucess";
import { paymentsResultMultibancoSuccess } from "../__mocks__/checkout/paymentsResultMultibancoSuccess";
import { paymentsResultSuccess } from "../__mocks__/checkout/paymentsResultSucess";
import Client from "../client";
import Checkout from "../services/checkout";
import HttpClientException from "../httpClient/httpClientException";
var merchantAccount = process.env.ADYEN_MERCHANT;
var reference = "Your order number";
function createAmountObject(currency, value) {
return {
currency: currency,
value: value,
};
}
function createPaymentsDetailsRequest() {
return {
details: {
MD: "mdValue",
PaRes: "paResValue",
},
paymentData: "Ab02b4c0!BQABAgCJN1wRZuGJmq8dMncmypvknj9s7l5Tj...",
};
}
export function createPaymentsCheckoutRequest() {
var paymentMethodDetails = {
cvc: "737",
expiryMonth: "03",
expiryYear: "2030",
holderName: "John Smith",
number: "4111111111111111",
type: "scheme",
};
return {
amount: createAmountObject("USD", 1000),
merchantAccount: merchantAccount,
paymentMethod: paymentMethodDetails,
reference: reference,
returnUrl: "https://your-company.com/...",
enableRecurring: true,
enableOneClick: true,
shopperReference: "shopperReference",
storePaymentMethod: true
};
}
function createPaymentSessionRequest() {
return {
amount: createAmountObject("USD", 1000),
countryCode: "NL",
merchantAccount: merchantAccount,
reference: reference,
returnUrl: "https://your-company.com/...",
channel: "Web",
sdkVersion: "3.7.0"
};
}
var client;
var checkout;
var scope;
beforeEach(function () {
if (!nock.isActive()) {
nock.activate();
}
client = createClient();
scope = nock(client.config.checkoutEndpoint + "/" + Client.CHECKOUT_API_VERSION);
checkout = new Checkout(client);
});
afterEach(function () {
nock.cleanAll();
});
describe("Checkout", function () {
test.each([false, true])("should make a payment. isMock: %p", function (isMock) { return __awaiter(void 0, void 0, void 0, function () {
var paymentsRequest, paymentsResponse;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
!isMock && nock.restore();
scope.post("/payments")
.reply(200, paymentsSuccess);
paymentsRequest = createPaymentsCheckoutRequest();
return [4 /*yield*/, checkout.payments(paymentsRequest)];
case 1:
paymentsResponse = _a.sent();
expect(paymentsResponse.pspReference).toBeTruthy();
return [2 /*return*/];
}
});
}); });
test.each([false, true])("should return correct Exception, isMock: %p", function (isMock) { return __awaiter(void 0, void 0, void 0, function () {
var paymentsRequest, e_1;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
!isMock && nock.restore();
_a.label = 1;
case 1:
_a.trys.push([1, 3, , 4]);
scope.post("/payments")
.reply(401);
paymentsRequest = createPaymentsCheckoutRequest();
return [4 /*yield*/, checkout.payments(paymentsRequest)];
case 2:
_a.sent();
return [3 /*break*/, 4];
case 3:
e_1 = _a.sent();
expect(e_1 instanceof HttpClientException).toBeTruthy();
return [3 /*break*/, 4];
case 4: return [2 /*return*/];
}
});
}); });
test.each([false, true])("should have valid payment methods, isMock: %p", function (isMock) { return __awaiter(void 0, void 0, void 0, function () {
var paymentMethodsRequest, paymentMethodsResponse;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
!isMock && nock.restore();
paymentMethodsRequest = { merchantAccount: "MagentoMerchantTest" };
scope.post("/paymentMethods")
.reply(200, paymentMethodsSuccess);
return [4 /*yield*/, checkout.paymentMethods(paymentMethodsRequest)];
case 1:
paymentMethodsResponse = _a.sent();
if (paymentMethodsResponse && paymentMethodsResponse.paymentMethods) {
expect(paymentMethodsResponse.paymentMethods.length).toBeGreaterThan(0);
}
else {
fail();
}
return [2 /*return*/];
}
});
}); });
test.each([false, true])("should have valid payment link, isMock: %p", function (isMock) { return __awaiter(void 0, void 0, void 0, function () {
var amount, expiresAt, paymentLinkRequest, paymentLinkSuccess, paymentSuccessLinkResponse;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
!isMock && nock.restore();
amount = createAmountObject("BRL", 1000);
expiresAt = "2019-12-17T10:05:29Z";
paymentLinkRequest = {
allowedPaymentMethods: ["scheme", "boletobancario"],
amount: amount,
countryCode: "BR",
merchantAccount: merchantAccount,
shopperReference: "shopperReference",
shopperEmail: "test@email.com",
shopperLocale: "pt_BR",
billingAddress: {
street: "Roque Petroni Jr",
postalCode: "59000060",
city: "São Paulo",
houseNumberOrName: "999",
country: "BR",
stateOrProvince: "SP"
},
deliveryAddress: {
street: "Roque Petroni Jr",
postalCode: "59000060",
city: "São Paulo",
houseNumberOrName: "999",
country: "BR",
stateOrProvince: "SP"
},
reference: reference
};
paymentLinkSuccess = {
amount: amount,
expiresAt: expiresAt,
reference: reference,
url: "paymentLinkResponse.url"
};
scope.post("/paymentLinks").reply(200, paymentLinkSuccess);
return [4 /*yield*/, checkout.paymentLinks(paymentLinkRequest)];
case 1:
paymentSuccessLinkResponse = _a.sent();
expect(paymentSuccessLinkResponse).toBeTruthy();
return [2 /*return*/];
}
});
}); });
test.each([false, true])("should have payment details, isMock: %p", function (isMock) { return __awaiter(void 0, void 0, void 0, function () {
var paymentsResponse;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
if (!isMock) {
console.warn("Cannot perform /payments/details without manual user validation. Skipping test.");
return [2 /*return*/];
}
scope.post("/payments/details")
.reply(200, paymentDetailsSuccess);
return [4 /*yield*/, checkout.paymentsDetails(createPaymentsDetailsRequest())];
case 1:
paymentsResponse = _a.sent();
expect(paymentsResponse.resultCode).toEqual("Authorised");
return [2 /*return*/];
}
});
}); });
test.each([false, true])("should have payment session success, isMock: %p", function (isMock) { return __awaiter(void 0, void 0, void 0, function () {
var paymentSessionRequest, paymentSessionResponse;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
!isMock && nock.restore();
scope.post("/paymentSession")
.reply(200, paymentSessionSuccess);
paymentSessionRequest = createPaymentSessionRequest();
return [4 /*yield*/, checkout.paymentSession(paymentSessionRequest)];
case 1:
paymentSessionResponse = _a.sent();
expect(paymentSessionResponse.paymentSession).not.toBeUndefined();
return [2 /*return*/];
}
});
}); });
test.each([false, true])("should have payments result, isMock: %p", function (isMock) { return __awaiter(void 0, void 0, void 0, function () {
var paymentResultRequest, paymentResultResponse;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
if (!isMock) {
console.warn("Cannot perform /payments/result without payload. Skipping test.");
return [2 /*return*/];
}
scope.post("/payments/result")
.reply(200, paymentsResultSuccess);
paymentResultRequest = {
payload: "This is a test payload",
};
return [4 /*yield*/, checkout.paymentResult(paymentResultRequest)];
case 1:
paymentResultResponse = _a.sent();
expect(paymentResultResponse.resultCode).toEqual("Authorised");
return [2 /*return*/];
}
});
}); });
test.each([false, true])("should have missing identifier on live, isMock: %p", function (isMock) { return __awaiter(void 0, void 0, void 0, function () {
return __generator(this, function (_a) {
!isMock && nock.restore();
client.setEnvironment("LIVE");
try {
new Checkout(client);
fail();
}
catch (e) {
expect(e.message).toEqual("Please provide your unique live url prefix on the setEnvironment() call on the Client or provide checkoutEndpoint in your config object.");
}
return [2 /*return*/];
});
}); });
test.each([false, true])("should succeed on multibanco payment, isMock: %p", function (isMock) { return __awaiter(void 0, void 0, void 0, function () {
var paymentsRequest, paymentsResponse;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
!isMock && nock.restore();
scope.post("/payments")
.reply(200, paymentsResultMultibancoSuccess);
paymentsRequest = createPaymentsCheckoutRequest();
return [4 /*yield*/, checkout.payments(paymentsRequest)];
case 1:
paymentsResponse = _a.sent();
expect(paymentsResponse.pspReference).toBeTruthy();
expect(paymentsResponse.additionalData).toBeTruthy();
return [2 /*return*/];
}
});
}); });
});
//# sourceMappingURL=checkout.spec.js.map

File diff suppressed because one or more lines are too long

View File

@@ -1 +0,0 @@
export {};

View File

@@ -1,89 +0,0 @@
/*
* ######
* ######
* ############ ####( ###### #####. ###### ############ ############
* ############# #####( ###### #####. ###### ############# #############
* ###### #####( ###### #####. ###### ##### ###### ##### ######
* ###### ###### #####( ###### #####. ###### ##### ##### ##### ######
* ###### ###### #####( ###### #####. ###### ##### ##### ######
* ############# ############# ############# ############# ##### ######
* ############ ############ ############# ############ ##### ######
* ######
* #############
* ############
*
* Adyen NodeJS API Library
*
* Copyright (c) 2019 Adyen B.V.
* This file is open source and available under the MIT license.
* See the LICENSE file for more info.
*/
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __generator = (this && this.__generator) || function (thisArg, body) {
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (_) try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
if (y = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0: case 1: t = op; break;
case 4: _.label++; return { value: op[1], done: false };
case 5: _.label++; y = op[1]; op = [0]; continue;
case 7: op = _.ops.pop(); _.trys.pop(); continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
if (t[2]) _.ops.pop();
_.trys.pop(); continue;
}
op = body.call(thisArg, _);
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
}
};
import nock from "nock";
import { createClient } from "../__mocks__/base";
import { originKeysSuccess } from "../__mocks__/checkoutUtility/originkeysSuccess";
import CheckoutUtility from "../services/checkoutUtility";
import Client from "../client";
describe("Checkout Utility", function () {
test.each([false, true])("should get origin keys. isMock: %p", function (isMock) { return __awaiter(void 0, void 0, void 0, function () {
var client, checkoutUtility, originKeysRequest, originKeysResponse;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
!isMock && nock.restore();
client = createClient();
checkoutUtility = new CheckoutUtility(client);
originKeysRequest = {
originDomains: ["https://www.your-domain.com"],
};
nock("" + client.config.checkoutEndpoint)
.post("/" + Client.CHECKOUT_UTILITY_API_VERSION + "/originKeys")
.reply(200, originKeysSuccess);
return [4 /*yield*/, checkoutUtility.originKeys(originKeysRequest)];
case 1:
originKeysResponse = _a.sent();
if (originKeysResponse.originKeys) {
return [2 /*return*/, expect(originKeysResponse.originKeys["https://www.your-domain.com"].startsWith("pub.v2")).toBeTruthy()];
}
fail("Error: originKeysResponse.originKeys is empty");
return [2 /*return*/];
}
});
}); });
});
//# sourceMappingURL=checkoutUtility.spec.js.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"checkoutUtility.spec.js","sourceRoot":"","sources":["../../../../src/__tests__/checkoutUtility.spec.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAC,iBAAiB,EAAC,MAAM,gDAAgD,CAAC;AACjF,OAAO,eAAe,MAAM,6BAA6B,CAAC;AAC1D,OAAO,MAAM,MAAM,WAAW,CAAC;AAE/B,QAAQ,CAAC,kBAAkB,EAAE;IACzB,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,EAAC,IAAI,CAAC,CAAC,CAAC,oCAAoC,EAAE,UAAO,MAAM;;;;;oBACvE,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBACpB,MAAM,GAAG,YAAY,EAAE,CAAC;oBACxB,eAAe,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC;oBAC9C,iBAAiB,GAA4C;wBAC/D,aAAa,EAAE,CAAC,6BAA6B,CAAC;qBACjD,CAAC;oBAEF,IAAI,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,gBAAkB,CAAC;yBACpC,IAAI,CAAC,MAAI,MAAM,CAAC,4BAA4B,gBAAa,CAAC;yBAC1D,KAAK,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;oBAER,qBAAM,eAAe,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAA;;oBAAxE,kBAAkB,GAAG,SAAmD;oBAC9E,IAAI,kBAAkB,CAAC,UAAU,EAAE;wBAC/B,sBAAO,MAAM,CAAC,kBAAkB,CAAC,UAAU,CAAC,6BAA6B,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,EAAE,EAAC;qBACjH;oBACD,IAAI,CAAC,+CAA+C,CAAC,CAAC;;;;SACzD,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}

View File

@@ -1 +0,0 @@
export {};

View File

@@ -1,64 +0,0 @@
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
var _a;
import HmacValidator from "../utils/hmacValidator";
import { ApiConstants } from "../constants/apiConstants";
var key = "DFB1EB5485895CFA84146406857104ABB4CBCABDC8AAF103A624C8F6A3EAAB00";
var expectedSign = "ipnxGCaUZ4l8TUW75a71/ghd2Fe5ffvX0pV4TLTntIc=";
var notificationRequestItem = {
pspReference: "pspReference",
originalReference: "originalReference",
merchantAccountCode: "merchantAccount",
merchantReference: "reference",
amount: { currency: "EUR", value: 1000 },
eventCode: "EVENT",
eventDate: new Date("01-01-1970"),
paymentMethod: "VISA",
reason: "reason",
success: "true",
additionalData: (_a = {}, _a[ApiConstants.HMAC_SIGNATURE] = expectedSign, _a),
};
describe("HMAC Validator", function () {
var hmacValidator;
beforeEach(function () {
hmacValidator = new HmacValidator();
});
it("should get correct data", function () {
var dataToSign = hmacValidator.getDataToSign({ merchantAccount: "ACC", currencyCode: "EUR" });
expect(dataToSign).toEqual("currencyCode:merchantAccount:EUR:ACC");
});
it("should get correct data with escaped characters", function () {
var dataToSign = hmacValidator.getDataToSign({ currencyCode: "EUR", merchantAccount: "ACC:\\", sessionValidity: "2019-09-21T11:45:24.637Z" });
expect(dataToSign).toEqual("currencyCode:merchantAccount:sessionValidity:EUR:ACC\\:\\\\:2019-09-21T11\\:45\\:24.637Z");
});
it("should encrypt correctly", function () {
var data = "countryCode:currencyCode:merchantAccount:merchantReference:paymentAmount:sessionValidity:skinCode:NL:EUR:MagentoMerchantTest2:TEST-PAYMENT-2017-02-01-14\\:02\\:05:199:2017-02-02T14\\:02\\:05+01\\:00:PKz2KML1";
var encrypted = hmacValidator.calculateHmac(data, "DFB1EB5485895CFA84146406857104ABB4CBCABDC8AAF103A624C8F6A3EAAB00");
expect(encrypted).toEqual("34oR8T1whkQWTv9P+SzKyp8zhusf9n0dpqrm9nsqSJs=");
});
it("should get correct data to sign", function () {
var data = hmacValidator.getDataToSign(notificationRequestItem);
expect(data).toEqual("pspReference:originalReference:merchantAccount:reference:1000:EUR:EVENT:true");
});
it("should have valid hmac", function () {
var encrypted = hmacValidator.calculateHmac(notificationRequestItem, key);
expect(expectedSign).toEqual(encrypted);
expect(hmacValidator.validateHMAC(notificationRequestItem, key)).toBeTruthy();
});
it("should have invalid hmac", function () {
var _a;
var invalidNotification = __assign(__assign({}, notificationRequestItem), { additionalData: (_a = {}, _a[ApiConstants.HMAC_SIGNATURE] = "notValidSign", _a) });
var result = hmacValidator.validateHMAC(invalidNotification, key);
expect(result).toBeFalsy();
});
});
//# sourceMappingURL=hmacValidator.spec.js.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"hmacValidator.spec.js","sourceRoot":"","sources":["../../../../src/__tests__/hmacValidator.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,aAAa,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAC,YAAY,EAAC,MAAM,2BAA2B,CAAC;AAEvD,IAAM,GAAG,GAAG,kEAAkE,CAAC;AAC/E,IAAM,YAAY,GAAG,8CAA8C,CAAC;AACpE,IAAM,uBAAuB,GAA4B;IACrD,YAAY,EAAE,cAAc;IAC5B,iBAAiB,EAAE,mBAAmB;IACtC,mBAAmB,EAAE,iBAAiB;IACtC,iBAAiB,EAAE,WAAW;IAC9B,MAAM,EAAE,EAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAC;IACtC,SAAS,EAAE,OAAO;IAClB,SAAS,EAAE,IAAI,IAAI,CAAC,YAAY,CAAC;IACjC,aAAa,EAAE,MAAM;IACrB,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,MAAM;IACf,cAAc,YAAI,GAAC,YAAY,CAAC,cAAc,IAAG,YAAY,KAAE;CAClE,CAAC;AAEF,QAAQ,CAAC,gBAAgB,EAAE;IACvB,IAAI,aAA4B,CAAC;IACjC,UAAU,CAAC;QACP,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yBAAyB,EAAE;QAC1B,IAAM,UAAU,GAAG,aAAa,CAAC,aAAa,CAAC,EAAC,eAAe,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAC,CAAC,CAAC;QAC9F,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,sCAAsC,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,iDAAiD,EAAE;QAClD,IAAM,UAAU,GAAG,aAAa,CAAC,aAAa,CAAC,EAAC,YAAY,EAAE,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,eAAe,EAAE,0BAA0B,EAAC,CAAC,CAAC;QAC9I,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,0FAA0F,CAAC,CAAC;IAC3H,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,0BAA0B,EAAE;QAC3B,IAAM,IAAI,GAAG,iNAAiN,CAAC;QAC/N,IAAM,SAAS,GAAG,aAAa,CAAC,aAAa,CAAC,IAAI,EAAE,kEAAkE,CAAC,CAAC;QACxH,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,8CAA8C,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,iCAAiC,EAAE;QAClC,IAAM,IAAI,GAAG,aAAa,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC;QAClE,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,8EAA8E,CAAC,CAAC;IACzG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wBAAwB,EAAE;QACzB,IAAM,SAAS,GAAG,aAAa,CAAC,aAAa,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC;QAC5E,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACxC,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;IAClF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0BAA0B,EAAE;;QAC3B,IAAM,mBAAmB,yBAClB,uBAAuB,KAC1B,cAAc,YAAI,GAAC,YAAY,CAAC,cAAc,IAAG,cAAc,QAClE,CAAC;QACF,IAAM,MAAM,GAAG,aAAa,CAAC,YAAY,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC;QACpE,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,CAAC;IAC/B,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}

View File

@@ -1 +0,0 @@
export {};

View File

@@ -1,107 +0,0 @@
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
return cooked;
};
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __generator = (this && this.__generator) || function (thisArg, body) {
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (_) try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
if (y = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0: case 1: t = op; break;
case 4: _.label++; return { value: op[1], done: false };
case 5: _.label++; y = op[1]; op = [0]; continue;
case 7: op = _.ops.pop(); _.trys.pop(); continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
if (t[2]) _.ops.pop();
_.trys.pop(); continue;
}
op = body.call(thisArg, _);
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
}
};
import nock from "nock";
import Client from "../client";
import Checkout from "../services/checkout";
import ApiException from "../services/exception/apiException";
import { createPaymentsCheckoutRequest } from "./checkout.spec";
import HttpClientException from "../httpClient/httpClientException";
beforeEach(function () {
nock.cleanAll();
});
var getResponse = function (_a, cb) {
var apiKey = _a.apiKey, environment = _a.environment;
return __awaiter(void 0, void 0, void 0, function () {
var client, checkout, scope, _b, errorMessageContains, errorMessageEquals, errorType, ErrorException, e_1;
return __generator(this, function (_c) {
switch (_c.label) {
case 0:
client = new Client({ apiKey: apiKey, environment: environment });
checkout = new Checkout(client);
scope = nock(client.config.checkoutEndpoint + "/" + Client.CHECKOUT_API_VERSION)
.post("/payments");
_b = cb(scope), errorMessageContains = _b.errorMessageContains, errorMessageEquals = _b.errorMessageEquals, errorType = _b.errorType;
ErrorException = errorType === "ApiException" ? ApiException : HttpClientException;
_c.label = 1;
case 1:
_c.trys.push([1, 3, , 4]);
return [4 /*yield*/, checkout.payments(createPaymentsCheckoutRequest())];
case 2:
_c.sent();
fail("request should fail");
return [3 /*break*/, 4];
case 3:
e_1 = _c.sent();
expect(e_1 instanceof ErrorException).toBeTruthy();
if (errorMessageEquals)
expect(e_1.message).toEqual(errorMessageEquals);
if (errorMessageContains)
expect(e_1.message.toLowerCase()).toContain(errorMessageContains);
return [3 /*break*/, 4];
case 4: return [2 /*return*/];
}
});
});
};
describe("HTTP Client", function () {
var _this = this;
it.each(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n apiKey | environment | withError | args | errorType | contains | equals \n ", " | ", " | ", " | ", " | ", " | ", " | ", "\n ", " | ", " | ", " | ", " | ", " | ", " | ", "\n ", " | ", " | ", " | ", " | ", " | ", " | ", "\n ", " | ", " | ", " | ", " | ", " | ", " | ", "\n ", " | ", " | ", " | ", " | ", " | ", " | ", "\n "], ["\n apiKey | environment | withError | args | errorType | contains | equals \n ", " | ", " | ", " | ", " | ", " | ", " | ", "\n ", " | ", " | ", " | ", " | ", " | ", " | ", "\n ", " | ", " | ", " | ", " | ", " | ", " | ", "\n ", " | ", " | ", " | ", " | ", " | ", " | ", "\n ", " | ", " | ", " | ", " | ", " | ", " | ", "\n "])), "", "TEST", true, ["mocked_error_response"], "ApiException", "x-api-key", "", "MOCKED_API_KEY", "TEST", true, ["some_error"], "ApiException", "", "some_error", "API_KEY", "TEST", false, [401, { status: 401, message: "Invalid Request", errorCode: "171", errorType: "validationError" }], "HttpClientException", "", "HTTP Exception: 401. null: Invalid Request", "API_KEY", "TEST", false, [401, {}], "HttpClientException", "", "HTTP Exception: 401. null", "API_KEY", "TEST", false, [401, "fail"], "HttpClientException", "", "HTTP Exception: 401. null")("Should return $errorType, $contains, $equals", function (_a) {
var apiKey = _a.apiKey, environment = _a.environment, withError = _a.withError, args = _a.args, errorType = _a.errorType, contains = _a.contains, equals = _a.equals;
return __awaiter(_this, void 0, void 0, function () {
return __generator(this, function (_b) {
switch (_b.label) {
case 0: return [4 /*yield*/, getResponse({ apiKey: apiKey, environment: environment }, function (scope) {
if (withError)
scope.replyWithError(args[0]);
else
scope.reply(args[0], args[1]);
return { errorType: errorType, errorMessageContains: contains, errorMessageEquals: equals };
})];
case 1:
_b.sent();
return [2 /*return*/];
}
});
});
});
});
var templateObject_1;
//# sourceMappingURL=httpClient.spec.js.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"httpClient.spec.js","sourceRoot":"","sources":["../../../../src/__tests__/httpClient.spec.ts"],"names":[],"mappings":"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"}

View File

@@ -1 +0,0 @@
export {};

View File

@@ -1,81 +0,0 @@
import authorisationTrue from "../__mocks__/notification/authorisationTrue.json";
import captureTrue from "../__mocks__/notification/captureTrue.json";
import captureFalse from "../__mocks__/notification/captureFalse.json";
import refundTrue from "../__mocks__/notification/refundTrue.json";
import refundFalse from "../__mocks__/notification/refundFalse.json";
import NotificationRequest from "../notification/notificationRequest";
import { NotificationEnum } from "../typings/notification";
describe("Notification Test", function () {
it("should return authorisation success", function () {
var notificationRequest = new NotificationRequest(authorisationTrue);
expect(notificationRequest.notificationItems).toHaveLength(1);
if (notificationRequest.notificationItems) {
var notificationRequestItem = notificationRequest.notificationItems[0];
expect(NotificationEnum.EVENT_CODE_AUTHORISATION).toEqual(notificationRequestItem.eventCode);
expect(notificationRequestItem.success === "true").toBeTruthy();
expect(notificationRequestItem.pspReference).toEqual("123456789");
}
else {
fail();
}
});
it("should return capture success", function () {
var notificationRequest = new NotificationRequest(captureTrue);
expect(notificationRequest.notificationItems).toHaveLength(1);
if (notificationRequest.notificationItems) {
var notificationRequestItem = notificationRequest.notificationItems[0];
expect(NotificationEnum.EVENT_CODE_CAPTURE).toEqual(notificationRequestItem.eventCode);
expect(notificationRequestItem.success === "true").toBeTruthy();
expect(notificationRequestItem.pspReference).toEqual("PSP_REFERENCE");
expect(notificationRequestItem.originalReference).toEqual("ORIGINAL_PSP");
}
else {
fail();
}
});
it("should return capture fail", function () {
var notificationRequest = new NotificationRequest(captureFalse);
expect(notificationRequest.notificationItems).toHaveLength(1);
if (notificationRequest.notificationItems) {
var notificationRequestItem = notificationRequest.notificationItems[0];
expect(NotificationEnum.EVENT_CODE_CAPTURE).toEqual(notificationRequestItem.eventCode);
expect(notificationRequestItem.success === "true").toBeFalsy();
expect(notificationRequestItem.pspReference).toEqual("PSP_REFERENCE");
expect(notificationRequestItem.originalReference).toEqual("ORIGINAL_PSP");
}
else {
fail();
}
});
it("should return refund success", function () {
var notificationRequest = new NotificationRequest(refundTrue);
expect(notificationRequest.notificationItems).toHaveLength(1);
if (notificationRequest.notificationItems) {
var notificationRequestItem = notificationRequest.notificationItems[0];
expect(NotificationEnum.EVENT_CODE_REFUND).toEqual(notificationRequestItem.eventCode);
expect(notificationRequestItem.success === "true").toBeTruthy();
expect(notificationRequestItem.pspReference).toEqual("PSP_REFERENCE");
expect(notificationRequestItem.originalReference).toEqual("ORIGINAL_PSP");
expect(notificationRequestItem.eventDate).toBeDefined();
}
else {
fail();
}
});
it("should return refund fail", function () {
var notificationRequest = new NotificationRequest(refundFalse);
expect(notificationRequest.notificationItems).toHaveLength(1);
if (notificationRequest.notificationItems) {
var notificationRequestItem = notificationRequest.notificationItems[0];
expect(NotificationEnum.EVENT_CODE_REFUND).toEqual(notificationRequestItem.eventCode);
expect(notificationRequestItem.success === "true").toBeFalsy();
expect(notificationRequestItem.pspReference).toEqual("PSP_REFERENCE");
expect(notificationRequestItem.originalReference).toEqual("ORIGINAL_PSP");
expect(notificationRequestItem.eventDate).toBeDefined();
}
else {
fail();
}
});
});
//# sourceMappingURL=notification.spec.js.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"notification.spec.js","sourceRoot":"","sources":["../../../../src/__tests__/notification.spec.ts"],"names":[],"mappings":"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"}

View File

@@ -1 +0,0 @@
export {};

View File

@@ -1,280 +0,0 @@
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __generator = (this && this.__generator) || function (thisArg, body) {
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (_) try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
if (y = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0: case 1: t = op; break;
case 4: _.label++; return { value: op[1], done: false };
case 5: _.label++; y = op[1]; op = [0]; continue;
case 7: op = _.ops.pop(); _.trys.pop(); continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
if (t[2]) _.ops.pop();
_.trys.pop(); continue;
}
op = body.call(thisArg, _);
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
}
};
import nock from "nock";
import { createClient } from "../__mocks__/base";
import Payout from "../services/payout";
import Client from "../client";
import { ApiConstants } from "../constants/apiConstants";
var storeDetailAndSubmitThirdParty = JSON.stringify({
additionalData: {
fraudResultType: "GREEN",
fraudManualReview: "false",
},
pspReference: "8515131751004933",
resultCode: "[payout-submit-received]"
});
var storeDetail = JSON.stringify({
pspReference: "8515136787207087",
recurringDetailReference: "8415088571022720",
resultCode: "Success"
});
var amountAndReference = {
amount: {
value: 1,
currency: "USD"
},
reference: "randomReference",
};
var defaultData = {
dateOfBirth: (new Date()).toISOString(),
nationality: "NL",
shopperEmail: "johndoe@email.com",
shopperReference: "shopperReference",
};
var mockStoreDetailRequest = function (merchantAccount) {
if (merchantAccount === void 0) { merchantAccount = process.env.ADYEN_MERCHANT; }
return (__assign(__assign({}, defaultData), { card: {
cvc: "737",
expiryMonth: "03",
expiryYear: "2020",
number: "4111111111111111",
holderName: "John Smith"
}, entityType: "NaturalPerson", recurring: {
contract: "RECURRING"
}, merchantAccount: merchantAccount }));
};
var mockSubmitRequest = function (merchantAccount) {
if (merchantAccount === void 0) { merchantAccount = process.env.ADYEN_MERCHANT; }
return (__assign(__assign(__assign({ selectedRecurringDetailReference: "LATEST", recurring: {
contract: "RECURRING"
} }, defaultData), amountAndReference), { merchantAccount: merchantAccount }));
};
var mockStoreDetailAndSubmitRequest = function (merchantAccount) { return (__assign(__assign({}, amountAndReference), (mockStoreDetailRequest(merchantAccount)))); };
var mockPayoutRequest = function (merchantAccount) {
if (merchantAccount === void 0) { merchantAccount = process.env.ADYEN_MERCHANT; }
return (__assign(__assign(__assign({}, amountAndReference), defaultData), { card: {
expiryMonth: "10",
expiryYear: "2020",
holderName: "John Smith",
number: "4111111111111111",
}, merchantAccount: merchantAccount }));
};
var client;
var clientStore;
var clientReview;
var payout;
var scope;
beforeEach(function () {
if (!nock.isActive()) {
nock.activate();
}
client = createClient();
clientStore = createClient(process.env.ADYEN_STOREPAYOUT_APIKEY);
clientReview = createClient(process.env.ADYEN_REVIEWPAYOUT_APIKEY);
scope = nock(client.config.endpoint + "/pal/servlet/Payout/" + Client.API_VERSION);
payout = new Payout(client);
});
afterEach(function () {
nock.cleanAll();
});
describe("PayoutTest", function () {
test.each([false, true])("should succeed on store detail and submit third party, isMock: %p", function (isMock) {
return __awaiter(this, void 0, void 0, function () {
var request, result;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
!isMock && nock.restore();
payout = new Payout(clientStore);
request = mockStoreDetailAndSubmitRequest();
scope.post("/storeDetailAndSubmitThirdParty").reply(200, storeDetailAndSubmitThirdParty);
return [4 /*yield*/, payout.storeDetailAndSubmitThirdParty(request)];
case 1:
result = _a.sent();
expect(result.resultCode).toEqual("[payout-submit-received]");
expect(result.pspReference).toBeTruthy();
return [2 /*return*/];
}
});
});
});
test.each([false, true])("should succeed on store detail, isMock: %p", function (isMock) {
return __awaiter(this, void 0, void 0, function () {
var request, result;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
!isMock && nock.restore();
payout = new Payout(clientStore);
scope.post("/storeDetail").reply(200, storeDetail);
request = mockStoreDetailRequest();
return [4 /*yield*/, payout.storeDetail(request)];
case 1:
result = _a.sent();
expect("Success").toEqual(result.resultCode);
expect(result.pspReference).toBeTruthy();
expect(result.recurringDetailReference).toBeTruthy();
return [2 /*return*/];
}
});
});
});
test.each([false, true])("should succeed on confirm third party, isMock: %p", function (isMock) {
return __awaiter(this, void 0, void 0, function () {
var storeRequest, storeResult, request, result;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
!isMock && nock.restore();
payout = new Payout(clientStore);
scope.post("/storeDetail").reply(200, storeDetail);
storeRequest = mockStoreDetailRequest();
return [4 /*yield*/, payout.storeDetail(storeRequest)];
case 1:
storeResult = _a.sent();
payout = new Payout(clientReview);
scope.post("/confirmThirdParty")
.reply(200, {
pspReference: "8815131762537886",
response: "[payout-confirm-received]"
});
request = {
merchantAccount: process.env.ADYEN_MERCHANT,
originalReference: storeResult.pspReference
};
return [4 /*yield*/, payout.confirmThirdParty(request)];
case 2:
result = _a.sent();
expect(result.response).toEqual("[payout-confirm-received]");
expect(result.pspReference).toBeTruthy();
return [2 /*return*/];
}
});
});
});
test.each([false, true])("should succeed on submit third party, isMock: %p", function (isMock) {
return __awaiter(this, void 0, void 0, function () {
var request, result;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
!isMock && nock.restore();
payout = new Payout(clientStore);
scope.post("/submitThirdParty").reply(200, storeDetailAndSubmitThirdParty);
request = mockSubmitRequest();
return [4 /*yield*/, payout.submitThirdparty(request)];
case 1:
result = _a.sent();
expect(result.resultCode).toEqual("[payout-submit-received]");
expect(result.pspReference).toBeTruthy();
if (result.additionalData) {
expect(result.additionalData[ApiConstants.FRAUD_RESULT_TYPE]).toEqual("GREEN");
expect(result.additionalData[ApiConstants.FRAUD_MANUAL_REVIEW]).toEqual("false");
}
return [2 /*return*/];
}
});
});
});
test.each([false, true])("should succeed on decline third party, isMock: %p", function (isMock) {
return __awaiter(this, void 0, void 0, function () {
var storeRequest, storeResult, request, result;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
!isMock && nock.restore();
payout = new Payout(clientStore);
scope.post("/storeDetail").reply(200, storeDetail);
storeRequest = mockStoreDetailRequest();
return [4 /*yield*/, payout.storeDetail(storeRequest)];
case 1:
storeResult = _a.sent();
payout = new Payout(clientReview);
request = {
merchantAccount: process.env.ADYEN_MERCHANT,
originalReference: storeResult.pspReference
};
scope.post("/declineThirdParty")
.reply(200, {
pspReference: "8815131762537886",
response: "[payout-decline-received]"
});
return [4 /*yield*/, payout.declineThirdParty(request)];
case 2:
result = _a.sent();
expect(result.response).toEqual("[payout-decline-received]");
expect(result.pspReference).toBeTruthy();
return [2 /*return*/];
}
});
});
});
test.each([false, true])("should succeed on payout, isMock: %p", function (isMock) {
return __awaiter(this, void 0, void 0, function () {
var request, result;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
!isMock && nock.restore();
scope.post("/payout").reply(200, {
pspReference: "8815131762537886",
resultCode: "Received",
});
request = mockPayoutRequest();
return [4 /*yield*/, payout.payout(request)];
case 1:
result = _a.sent();
expect(result.resultCode).toEqual("Received");
expect(result.pspReference).toBeTruthy();
return [2 /*return*/];
}
});
});
});
});
//# sourceMappingURL=payout.spec.js.map

File diff suppressed because one or more lines are too long

Some files were not shown because too many files have changed in this diff Show More