/* tslint:disable */ /* eslint-disable */ /** * Geins Management API * Geins Management API is a RESTful api that powers your applications and helps you manage your Geins services. Geins provides an easy-to-use and scalable solution for managing all aspects of an online store, from product listings and customer information to order processing and payment transactions. :::tip Tip With this API, you can build custom applications and integrate with third-party systems, feeds, dashboards and other bussiness logic apps. ::: ## Getting started Once you have created an account, you can start using the Management API by creating an `API User`. You can create as many API users as you need. Each `API user` is connected to a specific account so you can keep track of operations and manage keys. You can find all your API credentials in `Geins Merchant Center`. ### Fast track Use one of our [SDKs](https://docs.geins.io/docs/sdk/introduction) to get started quickly. The SDKs are available for the most popular programming languages and frameworks. Or, if you prefer to just take it for a test run: [![Run in Postman](https://run.pstmn.io/button.svg)](https://god.gw.postman.com/run-collection/25895885-aaf6598f-1a7c-4949-85d7-ba846c42d553?action=collection%2Ffork&collection-url=entityId%3D25895885-aaf6598f-1a7c-4949-85d7-ba846c42d553%26entityType%3Dcollection%26workspaceId%3Da2a179ce-158e-46b0-8d06-e9640f45112c) ### Authentication Two authentication methods are required: - `Basic Auth` - `API Key` All API credentials can be found in `Geins Merchant Center`. #### Basic Auth A Basic auth `Authorization` header needs to be included in every request. The value should be `Basic ` where `` is the Base64 encoding of your `API username` and `API password` joined by a single colon `:`. See [Wikipedia](https://en.wikipedia.org/wiki/Basic_access_authentication) for more information on Basic auth. #### API Key An `X-ApiKey` header needs to be included in every request. This header should contain the value of your `API key`. #### Example ```bash curl -X GET \"https://mgmtapi.geins.io/API/Market/List\" \\ -H \"Authorization: Basic [USER-CREDENTIALS-BASE64-ENCODED]\" \\ -H \"X-ApiKey: [API-KEY]\" ``` * * The version of the OpenAPI document: v1.10.1 * * * 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'; import type { RefundCoreModelsOrderOrderRow } from './RefundCoreModelsOrderOrderRow'; import { RefundCoreModelsOrderOrderRowFromJSON, RefundCoreModelsOrderOrderRowFromJSONTyped, RefundCoreModelsOrderOrderRowToJSON, } from './RefundCoreModelsOrderOrderRow'; import type { RefundRow } from './RefundRow'; import { RefundRowFromJSON, RefundRowFromJSONTyped, RefundRowToJSON, } from './RefundRow'; /** * A refund. * @export * @interface Refund */ export interface Refund { /** * The id of the refund. * @type {string} * @memberof Refund */ refundId?: string; /** * The internal id of the refund. * @type {number} * @memberof Refund */ refundInstanceId?: number; /** * The order id of the order that the refund belongs to. * @type {number} * @memberof Refund */ orderId?: number; /** * A custom refund reference. * @type {string} * @memberof Refund */ reference?: string; /** * A custom refund description. * @type {string} * @memberof Refund */ description?: string; /** * The name of the author of the refund. * @type {string} * @memberof Refund */ author?: string; /** * The external order id of the order. * @type {string} * @memberof Refund */ externalOrderId?: string; /** * A transaction id of the order. * @type {string} * @memberof Refund */ orderTransactionId?: string; /** * An secondary transaction id of the order. * @type {string} * @memberof Refund */ secondaryOrderTransactionId?: string; /** * An external transaction id of the order. * @type {string} * @memberof Refund */ externalId?: string; /** * The name of the payment used in the order. * @type {string} * @memberof Refund */ paymentName?: string; /** * The locale of the order. * @type {string} * @memberof Refund */ locale?: string; /** * The market the order was placed on. * @type {string} * @memberof Refund */ siteName?: string; /** * The customer name. * @type {string} * @memberof Refund */ customer?: string; /** * The sum of the order. * @type {number} * @memberof Refund */ orderSum?: number; /** * The total vat of the order. * @type {number} * @memberof Refund */ orderVat?: number; /** * The total value of the order rows. * @type {number} * @memberof Refund */ orderValue?: number; /** * THe total discount on the order. * @type {number} * @memberof Refund */ orderDiscount?: number; /** * The order shipping fee. * @type {number} * @memberof Refund */ shippingFee?: number; /** * The order payment fee. * @type {number} * @memberof Refund */ paymentFee?: number; /** * The code of the currency used for the refund. * @type {string} * @memberof Refund */ currency?: string; /** * The date the refund was created. * @type {Date} * @memberof Refund */ createdOn?: Date; /** * The date the refund was marked as sent. * @type {Date} * @memberof Refund */ sentOn?: Date; /** * The date the refund was marked as processed. * @type {Date} * @memberof Refund */ processedOn?: Date; /** * If true, the refund has been marked as sent. * @type {boolean} * @memberof Refund */ readonly sent?: boolean; /** * If true, the refund has been marked as processed. * @type {boolean} * @memberof Refund */ readonly processed?: boolean; /** * True if this refund requires approval before being sent, processed or settled. * @type {boolean} * @memberof Refund */ requiresApproval?: boolean; /** * Null if undecided, true if approved and false if denied. Only applicable if RequiresApproval is true. * @type {boolean} * @memberof Refund */ approved?: boolean; /** * The name of the one that approved or denied the refund. * @type {string} * @memberof Refund */ approvalDecidedBy?: string; /** * The date that the refund was approved or denied. * @type {Date} * @memberof Refund */ approvalDecidedOn?: Date; /** * Vat rate. E.g. 0.25 for 25%, 0.12 for 12%. * @type {number} * @memberof Refund */ readonly vatRate?: number; /** * Whether or not refund events will be sent for this refund. * @type {boolean} * @memberof Refund */ skipRefundEvents?: boolean; /** * The total amount refunded from order rows. * @type {number} * @memberof Refund */ refundedItemTotal?: number; /** * The amount refunded from the shipping fee. * @type {number} * @memberof Refund */ refundedShippingFee?: number; /** * The amount refunded from the payment fee. * @type {number} * @memberof Refund */ refundedPaymentFee?: number; /** * The amount refunded from the discount (can be split over several refunds). * @type {number} * @memberof Refund */ refundedDiscount?: number; /** * The amount refunded from the balance (can be split over several refunds). * @type {number} * @memberof Refund */ refundedBalance?: number; /** * Total amount refunded. * @type {number} * @memberof Refund */ readonly refundedTotal?: number; /** * List of refund rows belonging to this refund. * @type {Array} * @memberof Refund */ refundRows?: Array; /** * List of order rows belonging to this refund. * @type {Array} * @memberof Refund */ rows?: Array; } /** * Check if a given object implements the Refund interface. */ export function instanceOfRefund(value: object): boolean { let isInstance = true; return isInstance; } export function RefundFromJSON(json: any): Refund { return RefundFromJSONTyped(json, false); } export function RefundFromJSONTyped(json: any, ignoreDiscriminator: boolean): Refund { if ((json === undefined) || (json === null)) { return json; } return { 'refundId': !exists(json, 'RefundId') ? undefined : json['RefundId'], 'refundInstanceId': !exists(json, 'RefundInstanceId') ? undefined : json['RefundInstanceId'], 'orderId': !exists(json, 'OrderId') ? undefined : json['OrderId'], 'reference': !exists(json, 'Reference') ? undefined : json['Reference'], 'description': !exists(json, 'Description') ? undefined : json['Description'], 'author': !exists(json, 'Author') ? undefined : json['Author'], 'externalOrderId': !exists(json, 'ExternalOrderId') ? undefined : json['ExternalOrderId'], 'orderTransactionId': !exists(json, 'OrderTransactionId') ? undefined : json['OrderTransactionId'], 'secondaryOrderTransactionId': !exists(json, 'SecondaryOrderTransactionId') ? undefined : json['SecondaryOrderTransactionId'], 'externalId': !exists(json, 'ExternalId') ? undefined : json['ExternalId'], 'paymentName': !exists(json, 'PaymentName') ? undefined : json['PaymentName'], 'locale': !exists(json, 'Locale') ? undefined : json['Locale'], 'siteName': !exists(json, 'SiteName') ? undefined : json['SiteName'], 'customer': !exists(json, 'Customer') ? undefined : json['Customer'], 'orderSum': !exists(json, 'OrderSum') ? undefined : json['OrderSum'], 'orderVat': !exists(json, 'OrderVat') ? undefined : json['OrderVat'], 'orderValue': !exists(json, 'OrderValue') ? undefined : json['OrderValue'], 'orderDiscount': !exists(json, 'OrderDiscount') ? undefined : json['OrderDiscount'], 'shippingFee': !exists(json, 'ShippingFee') ? undefined : json['ShippingFee'], 'paymentFee': !exists(json, 'PaymentFee') ? undefined : json['PaymentFee'], 'currency': !exists(json, 'Currency') ? undefined : json['Currency'], 'createdOn': !exists(json, 'CreatedOn') ? undefined : (new Date(json['CreatedOn'])), 'sentOn': !exists(json, 'SentOn') ? undefined : (new Date(json['SentOn'])), 'processedOn': !exists(json, 'ProcessedOn') ? undefined : (new Date(json['ProcessedOn'])), 'sent': !exists(json, 'Sent') ? undefined : json['Sent'], 'processed': !exists(json, 'Processed') ? undefined : json['Processed'], 'requiresApproval': !exists(json, 'RequiresApproval') ? undefined : json['RequiresApproval'], 'approved': !exists(json, 'Approved') ? undefined : json['Approved'], 'approvalDecidedBy': !exists(json, 'ApprovalDecidedBy') ? undefined : json['ApprovalDecidedBy'], 'approvalDecidedOn': !exists(json, 'ApprovalDecidedOn') ? undefined : (new Date(json['ApprovalDecidedOn'])), 'vatRate': !exists(json, 'VatRate') ? undefined : json['VatRate'], 'skipRefundEvents': !exists(json, 'SkipRefundEvents') ? undefined : json['SkipRefundEvents'], 'refundedItemTotal': !exists(json, 'RefundedItemTotal') ? undefined : json['RefundedItemTotal'], 'refundedShippingFee': !exists(json, 'RefundedShippingFee') ? undefined : json['RefundedShippingFee'], 'refundedPaymentFee': !exists(json, 'RefundedPaymentFee') ? undefined : json['RefundedPaymentFee'], 'refundedDiscount': !exists(json, 'RefundedDiscount') ? undefined : json['RefundedDiscount'], 'refundedBalance': !exists(json, 'RefundedBalance') ? undefined : json['RefundedBalance'], 'refundedTotal': !exists(json, 'RefundedTotal') ? undefined : json['RefundedTotal'], 'refundRows': !exists(json, 'RefundRows') ? undefined : ((json['RefundRows'] as Array).map(RefundRowFromJSON)), 'rows': !exists(json, 'Rows') ? undefined : ((json['Rows'] as Array).map(RefundCoreModelsOrderOrderRowFromJSON)), }; } export function RefundToJSON(value?: Refund | null): any { if (value === undefined) { return undefined; } if (value === null) { return null; } return { 'RefundId': value.refundId, 'RefundInstanceId': value.refundInstanceId, 'OrderId': value.orderId, 'Reference': value.reference, 'Description': value.description, 'Author': value.author, 'ExternalOrderId': value.externalOrderId, 'OrderTransactionId': value.orderTransactionId, 'SecondaryOrderTransactionId': value.secondaryOrderTransactionId, 'ExternalId': value.externalId, 'PaymentName': value.paymentName, 'Locale': value.locale, 'SiteName': value.siteName, 'Customer': value.customer, 'OrderSum': value.orderSum, 'OrderVat': value.orderVat, 'OrderValue': value.orderValue, 'OrderDiscount': value.orderDiscount, 'ShippingFee': value.shippingFee, 'PaymentFee': value.paymentFee, 'Currency': value.currency, 'CreatedOn': value.createdOn === undefined ? undefined : (value.createdOn.toISOString()), 'SentOn': value.sentOn === undefined ? undefined : (value.sentOn.toISOString()), 'ProcessedOn': value.processedOn === undefined ? undefined : (value.processedOn.toISOString()), 'RequiresApproval': value.requiresApproval, 'Approved': value.approved, 'ApprovalDecidedBy': value.approvalDecidedBy, 'ApprovalDecidedOn': value.approvalDecidedOn === undefined ? undefined : (value.approvalDecidedOn.toISOString()), 'SkipRefundEvents': value.skipRefundEvents, 'RefundedItemTotal': value.refundedItemTotal, 'RefundedShippingFee': value.refundedShippingFee, 'RefundedPaymentFee': value.refundedPaymentFee, 'RefundedDiscount': value.refundedDiscount, 'RefundedBalance': value.refundedBalance, 'RefundRows': value.refundRows === undefined ? undefined : ((value.refundRows as Array).map(RefundRowToJSON)), 'Rows': value.rows === undefined ? undefined : ((value.rows as Array).map(RefundCoreModelsOrderOrderRowToJSON)), }; }