/** * NOTE: This file is auto generated by Xendit. * Do not edit the class manually. * Improvements? Share your ideas at https://github.com/xendit/xendit-node */ import type { ChannelsCategories } from './ChannelsCategories'; import type { Currency } from './Currency'; import type { FeeResponse } from './FeeResponse'; import type { TransactionResponseType } from './TransactionResponseType'; import type { TransactionStatuses } from './TransactionStatuses'; /** * * @export * @interface TransactionResponse */ export interface TransactionResponse { /** * The unique id of a transaction. It will have `txn_` as prefix * @type {string} * @memberof TransactionResponse */ id: string; /** * The product_id of the transaction. Product id will have a different prefix for each product. You can use this id to match the transaction from this API to each product API. * @type {string} * @memberof TransactionResponse */ productId: string; /** * * @type {TransactionResponseType} * @memberof TransactionResponse */ type: TransactionResponseType; /** * * @type {TransactionStatuses} * @memberof TransactionResponse */ status: TransactionStatuses; /** * * @type {ChannelsCategories} * @memberof TransactionResponse */ channelCategory: ChannelsCategories; /** * The channel of the transaction that is used. See [channel codes](https://docs.xendit.co/xendisburse/channel-codes) for the list of available per channel categories. * @type {string} * @memberof TransactionResponse */ channelCode: string | null; /** * Account identifier of transaction. The format will be different from each channel. * @type {string} * @memberof TransactionResponse */ accountIdentifier: string | null; /** * customer supplied reference/external_id * @type {string} * @memberof TransactionResponse */ referenceId: string; /** * * @type {Currency} * @memberof TransactionResponse */ currency: Currency; /** * The transaction amount. The number of decimal places will be different for each currency according to ISO 4217. * @type {number} * @memberof TransactionResponse */ amount: number; /** * Representing whether the transaction is money in or money out For transfer, the transfer out side it will shows up as money out and on transfer in side in will shows up as money-in. Available values are `MONEY_IN` for money in and `MONEY_OUT` for money out. * @type {string} * @memberof TransactionResponse */ cashflow: TransactionResponseCashflowEnum; /** * The settlement status of the transaction. `PENDING` - Transaction amount has not been settled to merchant's balance. `SETTLED` - Transaction has been settled to merchant's balance * @type {string} * @memberof TransactionResponse */ settlementStatus?: TransactionResponseSettlementStatusEnum; /** * Estimated settlement time will only apply to money-in transactions. For money-out transaction, the value will be `NULL`. Estimated settlement time in which transaction amount will be settled to merchant's balance. * @type {Date} * @memberof TransactionResponse */ estimatedSettlementTime?: Date | null; /** * The id of business where this transaction belong to * @type {string} * @memberof TransactionResponse */ businessId: string; /** * * @type {FeeResponse} * @memberof TransactionResponse */ fee: FeeResponse; /** * Transaction created timestamp (UTC+0) * @type {Date} * @memberof TransactionResponse */ created: Date; /** * Transaction updated timestamp (UTC+0) * @type {Date} * @memberof TransactionResponse */ updated: Date; } /** * @export */ export declare const TransactionResponseCashflowEnum: { readonly In: "MONEY_IN"; readonly Out: "MONEY_OUT"; }; export type TransactionResponseCashflowEnum = typeof TransactionResponseCashflowEnum[keyof typeof TransactionResponseCashflowEnum]; /** * @export */ export declare const TransactionResponseSettlementStatusEnum: { readonly Pending: "PENDING"; readonly Settled: "SETTLED"; }; export type TransactionResponseSettlementStatusEnum = typeof TransactionResponseSettlementStatusEnum[keyof typeof TransactionResponseSettlementStatusEnum]; /** * Check if a given object implements the TransactionResponse interface. */ export declare function instanceOfTransactionResponse(value: object): boolean; export declare function TransactionResponseFromJSON(json: any): TransactionResponse; export declare function TransactionResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): TransactionResponse; export declare function TransactionResponseToJSON(value?: TransactionResponse | null): any;