/* 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 { exists, mapValues } from '../runtime'; /** * * @export * @interface MoneyInIDealInitInput */ export interface MoneyInIDealInitInput { /** * Your sites return URL, called to terminate the operation and on which the callback will be sent, with data in POST parameters. * This URL must contain a unique ID so you know which operation is related to the return. * @type {string} * @memberof MoneyInIDealInitInput */ returnUrl: string; /** * ID of iDEAL Issuer Resource: * 1. 21 for Rabobank * 2. 31 for ABN Amro * 3. 721 for ING * 4. 751 for SNS Bank * 5. 161 for Van Lanschot Bankiers * 6. 511 for Triodos Bank * 7. 761 for ASN Bank * 8. 771 for RegioBank * 9. 801 for Knab Bank * 10. BUNQNL2A pour Bunk Bank * @type {string} * @memberof MoneyInIDealInitInput */ issuerId: string; /** * Unique ID of the call, generated by your server. This ID can be used as a search field when looking for operation details * @type {string} * @memberof MoneyInIDealInitInput */ reference?: string; /** * Payment Account ID to Credit * @type {string} * @memberof MoneyInIDealInitInput */ accountId: string; /** * Amount to Debit * Amounts are given as integer numbers in cents * @type {number} * @memberof MoneyInIDealInitInput */ totalAmount?: number; /** * Your Fee * Amounts are given as integer numbers in cents * @type {number} * @memberof MoneyInIDealInitInput */ commissionAmount?: number; /** * Comment Regarding the Transaction * @type {string} * @memberof MoneyInIDealInitInput */ comment?: string; /** * If true: * 1. [amountCom] will be ignored and will be replaced with Lemonway's fee * 2. You will not receive any fee * @type {boolean} * @memberof MoneyInIDealInitInput */ autoCommission?: boolean; } /** * Check if a given object implements the MoneyInIDealInitInput interface. */ export function instanceOfMoneyInIDealInitInput(value: object): boolean { let isInstance = true; isInstance = isInstance && "returnUrl" in value; isInstance = isInstance && "issuerId" in value; isInstance = isInstance && "accountId" in value; return isInstance; } export function MoneyInIDealInitInputFromJSON(json: any): MoneyInIDealInitInput { return MoneyInIDealInitInputFromJSONTyped(json, false); } export function MoneyInIDealInitInputFromJSONTyped(json: any, ignoreDiscriminator: boolean): MoneyInIDealInitInput { if ((json === undefined) || (json === null)) { return json; } return { 'returnUrl': json['returnUrl'], 'issuerId': json['issuerId'], 'reference': !exists(json, 'reference') ? undefined : json['reference'], 'accountId': json['accountId'], 'totalAmount': !exists(json, 'totalAmount') ? undefined : json['totalAmount'], 'commissionAmount': !exists(json, 'commissionAmount') ? undefined : json['commissionAmount'], 'comment': !exists(json, 'comment') ? undefined : json['comment'], 'autoCommission': !exists(json, 'autoCommission') ? undefined : json['autoCommission'], }; } export function MoneyInIDealInitInputToJSON(value?: MoneyInIDealInitInput | null): any { if (value === undefined) { return undefined; } if (value === null) { return null; } return { 'returnUrl': value.returnUrl, 'issuerId': value.issuerId, 'reference': value.reference, 'accountId': value.accountId, 'totalAmount': value.totalAmount, 'commissionAmount': value.commissionAmount, 'comment': value.comment, 'autoCommission': value.autoCommission, }; }