/* tslint:disable */ /* eslint-disable */ /** * Lemonway DirectKit API 2.0 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * The version of the OpenAPI document: v2 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import * as runtime from '../runtime'; import type { RefundMoneyInInput, RefundMoneyInOutput, } from '../models'; import { RefundMoneyInInputFromJSON, RefundMoneyInInputToJSON, RefundMoneyInOutputFromJSON, RefundMoneyInOutputToJSON, } from '../models'; export interface RefundsRefundPutRequest { transactionid: number; authorization: string; pSUIPAddress: string; parameters: RefundMoneyInInput; pSUAcceptLanguage?: string; pSUUserAgent?: string; } /** * */ export class RefundsApi extends runtime.BaseAPI { /** * The general rules are: Regarding Card Payments: Regarding Sofort: refund is only available for 3 months after the initial payment
Regarding iDEAL: refund is only available for 99 days after the initial payment
* Refund a Money-In */ async refundsRefundPutRaw(requestParameters: RefundsRefundPutRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.transactionid === null || requestParameters.transactionid === undefined) { throw new runtime.RequiredError('transactionid','Required parameter requestParameters.transactionid was null or undefined when calling refundsRefundPut.'); } if (requestParameters.authorization === null || requestParameters.authorization === undefined) { throw new runtime.RequiredError('authorization','Required parameter requestParameters.authorization was null or undefined when calling refundsRefundPut.'); } if (requestParameters.pSUIPAddress === null || requestParameters.pSUIPAddress === undefined) { throw new runtime.RequiredError('pSUIPAddress','Required parameter requestParameters.pSUIPAddress was null or undefined when calling refundsRefundPut.'); } if (requestParameters.parameters === null || requestParameters.parameters === undefined) { throw new runtime.RequiredError('parameters','Required parameter requestParameters.parameters was null or undefined when calling refundsRefundPut.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (requestParameters.authorization !== undefined && requestParameters.authorization !== null) { headerParameters['Authorization'] = String(requestParameters.authorization); } if (requestParameters.pSUAcceptLanguage !== undefined && requestParameters.pSUAcceptLanguage !== null) { headerParameters['PSU-Accept-Language'] = String(requestParameters.pSUAcceptLanguage); } if (requestParameters.pSUIPAddress !== undefined && requestParameters.pSUIPAddress !== null) { headerParameters['PSU-IP-Address'] = String(requestParameters.pSUIPAddress); } if (requestParameters.pSUUserAgent !== undefined && requestParameters.pSUUserAgent !== null) { headerParameters['PSU-User-Agent'] = String(requestParameters.pSUUserAgent); } const response = await this.request({ path: `/v2/refund/{transactionid}`.replace(`{${"transactionid"}}`, encodeURIComponent(String(requestParameters.transactionid))), method: 'PUT', headers: headerParameters, query: queryParameters, body: RefundMoneyInInputToJSON(requestParameters.parameters), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => RefundMoneyInOutputFromJSON(jsonValue)); } /** * The general rules are: Regarding Card Payments: Regarding Sofort: refund is only available for 3 months after the initial payment
Regarding iDEAL: refund is only available for 99 days after the initial payment
* Refund a Money-In */ async refundsRefundPut(requestParameters: RefundsRefundPutRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.refundsRefundPutRaw(requestParameters, initOverrides); return await response.value(); } }