UNPKG

@adyen/api-library

Version:

The Adyen API Library for NodeJS enables you to work with Adyen APIs.

147 lines 11 kB
"use strict"; /* * The version of the OpenAPI document: v4 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit this class manually. */ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.TransfersApi = void 0; const getJsonResponse_1 = __importDefault(require("../../helpers/getJsonResponse")); const service_1 = __importDefault(require("../../service")); const resource_1 = __importDefault(require("../resource")); const objectSerializer_1 = require("../../typings/transfers/objectSerializer"); /** * API handler for TransfersApi */ class TransfersApi extends service_1.default { constructor(client) { super(client); this.API_BASEPATH = "https://balanceplatform-api-test.adyen.com/btl/v4"; this.baseUrl = this.createBaseUrl(this.API_BASEPATH); } /** * @summary Approve initiated transfers * @param approveTransfersRequest {@link ApproveTransfersRequest } * @param requestOptions {@link IRequest.Options } * @return {@link void } */ async approveInitiatedTransfers(approveTransfersRequest, requestOptions) { const endpoint = `${this.baseUrl}/transfers/approve`; const resource = new resource_1.default(this, endpoint); const request = objectSerializer_1.ObjectSerializer.serialize(approveTransfersRequest, "ApproveTransfersRequest"); await (0, getJsonResponse_1.default)(resource, request, { ...requestOptions, method: "POST" }); } /** * @summary Cancel initiated transfers * @param cancelTransfersRequest {@link CancelTransfersRequest } * @param requestOptions {@link IRequest.Options } * @return {@link void } */ async cancelInitiatedTransfers(cancelTransfersRequest, requestOptions) { const endpoint = `${this.baseUrl}/transfers/cancel`; const resource = new resource_1.default(this, endpoint); const request = objectSerializer_1.ObjectSerializer.serialize(cancelTransfersRequest, "CancelTransfersRequest"); await (0, getJsonResponse_1.default)(resource, request, { ...requestOptions, method: "POST" }); } /** * @summary Get all transfers * @param requestOptions {@link IRequest.Options } * @param createdSince {@link Date } (Required) Only include transfers that have been created on or after this point in time. The value must be in ISO 8601 format and not earlier than 6 months before the `createdUntil` date. For example, **2021-05-30T15:07:40Z**. * @param createdUntil {@link Date } (Required) Only include transfers that have been created on or before this point in time. The value must be in ISO 8601 format and not later than 6 months after the `createdSince` date. For example, **2021-05-30T15:07:40Z**. * @param balancePlatform {@link string } The unique identifier of the [balance platform](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/balancePlatforms/{id}__queryParam_id). Required if you don\'t provide a `balanceAccountId` or `accountHolderId`. * @param accountHolderId {@link string } The unique identifier of the [account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/accountHolders/{id}__queryParam_id). Required if you don\'t provide a `balanceAccountId` or `balancePlatform`. If you provide a `balanceAccountId`, the `accountHolderId` must be related to the `balanceAccountId`. * @param balanceAccountId {@link string } The unique identifier of the [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/balanceAccounts/{id}__queryParam_id). Required if you don\'t provide an `accountHolderId` or `balancePlatform`. If you provide an `accountHolderId`, the `balanceAccountId` must be related to the `accountHolderId`. * @param paymentInstrumentId {@link string } The unique identifier of the [payment instrument](https://docs.adyen.com/api-explorer/balanceplatform/latest/get/paymentInstruments/_id_). To use this parameter, you must also provide a `balanceAccountId`, `accountHolderId`, or `balancePlatform`. The `paymentInstrumentId` must be related to the `balanceAccountId` or `accountHolderId` that you provide. * @param reference {@link string } The reference you provided in the POST [/transfers](https://docs.adyen.com/api-explorer/transfers/latest/post/transfers) request * @param category {@link 'bank' | 'card' | 'grants' | 'interest' | 'internal' | 'issuedCard' | 'migration' | 'platformPayment' | 'topUp' | 'upgrade' } The type of transfer. Possible values: - **bank**: Transfer to a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account. - **internal**: Transfer to another [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform. - **issuedCard**: Transfer initiated by a Adyen-issued card. - **platformPayment**: Fund movements related to payments that are acquired for your users. * @param sortOrder {@link 'asc' | 'desc' } Determines the sort order of the returned transfers. The sort order is based on the creation date of the transfers. Possible values: - **asc**: Ascending order, from oldest to most recent. - **desc**: Descending order, from most recent to oldest. Default value: **asc**. * @param cursor {@link string } The `cursor` returned in the links of the previous response. * @param limit {@link number } The number of items returned per page, maximum of 100 items. By default, the response returns 10 items per page. * @return {@link FindTransfersResponse } */ async getAllTransfers(createdSince, createdUntil, balancePlatform, accountHolderId, balanceAccountId, paymentInstrumentId, reference, category, sortOrder, cursor, limit, requestOptions) { var _a, _b, _c, _d, _e, _f, _g, _h, _j; const endpoint = `${this.baseUrl}/transfers`; const resource = new resource_1.default(this, endpoint); const hasDefinedQueryParams = (_j = (_h = (_g = (_f = (_e = (_d = (_c = (_b = (_a = balancePlatform !== null && balancePlatform !== void 0 ? balancePlatform : accountHolderId) !== null && _a !== void 0 ? _a : balanceAccountId) !== null && _b !== void 0 ? _b : paymentInstrumentId) !== null && _c !== void 0 ? _c : reference) !== null && _d !== void 0 ? _d : category) !== null && _e !== void 0 ? _e : createdSince) !== null && _f !== void 0 ? _f : createdUntil) !== null && _g !== void 0 ? _g : sortOrder) !== null && _h !== void 0 ? _h : cursor) !== null && _j !== void 0 ? _j : limit; if (hasDefinedQueryParams) { if (!requestOptions) requestOptions = {}; if (!requestOptions.params) requestOptions.params = {}; if (balancePlatform) requestOptions.params["balancePlatform"] = balancePlatform; if (accountHolderId) requestOptions.params["accountHolderId"] = accountHolderId; if (balanceAccountId) requestOptions.params["balanceAccountId"] = balanceAccountId; if (paymentInstrumentId) requestOptions.params["paymentInstrumentId"] = paymentInstrumentId; if (reference) requestOptions.params["reference"] = reference; if (category) requestOptions.params["category"] = category; if (createdSince) requestOptions.params["createdSince"] = createdSince.toISOString(); if (createdUntil) requestOptions.params["createdUntil"] = createdUntil.toISOString(); if (sortOrder) requestOptions.params["sortOrder"] = sortOrder; if (cursor) requestOptions.params["cursor"] = cursor; if (limit) requestOptions.params["limit"] = limit; } const response = await (0, getJsonResponse_1.default)(resource, "", { ...requestOptions, method: "GET" }); return objectSerializer_1.ObjectSerializer.deserialize(response, "FindTransfersResponse"); } /** * @summary Get a transfer * @param id {@link string } Unique identifier of the transfer. * @param requestOptions {@link IRequest.Options } * @return {@link TransferData } */ async getTransfer(id, requestOptions) { const endpoint = `${this.baseUrl}/transfers/{id}` .replace("{" + "id" + "}", encodeURIComponent(String(id))); const resource = new resource_1.default(this, endpoint); const response = await (0, getJsonResponse_1.default)(resource, "", { ...requestOptions, method: "GET" }); return objectSerializer_1.ObjectSerializer.deserialize(response, "TransferData"); } /** * @summary Return a transfer * @param transferId {@link string } The unique identifier of the transfer to be returned. * @param returnTransferRequest {@link ReturnTransferRequest } * @param requestOptions {@link IRequest.Options } * @return {@link ReturnTransferResponse } */ async returnTransfer(transferId, returnTransferRequest, requestOptions) { const endpoint = `${this.baseUrl}/transfers/{transferId}/returns` .replace("{" + "transferId" + "}", encodeURIComponent(String(transferId))); const resource = new resource_1.default(this, endpoint); const request = objectSerializer_1.ObjectSerializer.serialize(returnTransferRequest, "ReturnTransferRequest"); const response = await (0, getJsonResponse_1.default)(resource, request, { ...requestOptions, method: "POST" }); return objectSerializer_1.ObjectSerializer.deserialize(response, "ReturnTransferResponse"); } /** * @summary Transfer funds * @param transferInfo {@link TransferInfo } * @param requestOptions {@link IRequest.Options } * @return {@link Transfer } */ async transferFunds(transferInfo, requestOptions) { const endpoint = `${this.baseUrl}/transfers`; const resource = new resource_1.default(this, endpoint); const request = objectSerializer_1.ObjectSerializer.serialize(transferInfo, "TransferInfo"); const response = await (0, getJsonResponse_1.default)(resource, request, { ...requestOptions, method: "POST" }); return objectSerializer_1.ObjectSerializer.deserialize(response, "Transfer"); } } exports.TransfersApi = TransfersApi; //# sourceMappingURL=transfersApi.js.map