/**
* NOTE: This class is auto generated by DANA Indonesia.
* Do not edit the class manually.
*/
import type { ValidationErrorContext } from '../../../runtime';
import type { QueryPaymentResponseAdditionalInfo } from './QueryPaymentResponseAdditionalInfo';
import type { Money } from './Money';
/**
*
* @export
* @interface QueryPaymentResponse
*/
export interface QueryPaymentResponse {
/**
* Response code. Refer to https://dashboard.dana.id/api-docs/read/126#HTML-API-QueryPayment-ResponseCodeandMessage
* @type {string}
* @memberof QueryPaymentResponse
*/
responseCode: string;
/**
* Response message. Refer to https://dashboard.dana.id/api-docs/read/126#HTML-API-QueryPayment-ResponseCodeandMessage
* @type {string}
* @memberof QueryPaymentResponse
*/
responseMessage: string;
/**
* Original transaction identifier on partner system. Present if transaction found
* @type {string}
* @memberof QueryPaymentResponse
*/
originalPartnerReferenceNo?: string;
/**
* Original transaction identifier on DANA system. Present if transaction found
* @type {string}
* @memberof QueryPaymentResponse
*/
originalReferenceNo?: string;
/**
* Original external identifier on header message
* @type {string}
* @memberof QueryPaymentResponse
*/
originalExternalId?: string;
/**
* Transaction type indicator is based on the service code of the original transaction request:
* - IPG Cashier Pay - SNAP: 54
* - QRIS CPM (Acquirer) - SNAP: 60
* - QRIS MPM (Acquirer) - SNAP: 47
* - Payment Gateway: 54
*
* @type {string}
* @memberof QueryPaymentResponse
*/
serviceCode: string;
/**
* Category code for the status of the transaction. The values include:
* - 00 = Success, the order has been successfully in final state and paid
* - 01 = Initiated, the order has been created, but has not been paid
* - 02 = Paying, the order is in process, not in final state, payment is success
* - 05 = Cancelled, the order has been closed
* - 07 = Not found, the order is not found
*
* @type {string}
* @memberof QueryPaymentResponse
*/
latestTransactionStatus: string;
/**
* Description of transaction status
* @type {string}
* @memberof QueryPaymentResponse
*/
transactionStatusDesc?: string;
/**
* Original response code
* @type {string}
* @memberof QueryPaymentResponse
*/
originalResponseCode?: string;
/**
* Original response message
* @type {string}
* @memberof QueryPaymentResponse
*/
originalResponseMessage?: string;
/**
* Session identifier
* @type {string}
* @memberof QueryPaymentResponse
*/
sessionId?: string;
/**
* Transaction request identifier
* @type {string}
* @memberof QueryPaymentResponse
*/
requestID?: string;
/**
* Trans amount. Present if transaction found. Contains two sub-fields:
* 1. Value: Transaction amount, including the cents
* 2. Currency: Currency code based on ISO
*
* @type {Money}
* @memberof QueryPaymentResponse
*/
transAmount?: Money;
/**
* Amount. Present if transaction found. Contains two sub-fields:
* 1. Value: Transaction amount, including the cents
* 2. Currency: Currency code based on ISO
*
* @type {Money}
* @memberof QueryPaymentResponse
*/
amount?: Money;
/**
* Fee amount. Present if transaction found. Contains two sub-fields:
* 1. Value: Transaction amount, including the cents
* 2. Currency: Currency code based on ISO
*
* @type {Money}
* @memberof QueryPaymentResponse
*/
feeAmount?: Money;
/**
* Transaction paid time, in format YYYY-MM-DDTHH:mm:ss+07:00. Time must be in GMT+7 (Jakarta time). Present if transaction is paid
* @type {string}
* @memberof QueryPaymentResponse
*/
paidTime?: string;
/**
* Brief description. Present if transaction found
* @type {string}
* @memberof QueryPaymentResponse
*/
title?: string;
/**
* Additional information
* @type {QueryPaymentResponseAdditionalInfo}
* @memberof QueryPaymentResponse
*/
additionalInfo?: QueryPaymentResponseAdditionalInfo;
}
/**
* Check if a given object implements the QueryPaymentResponse interface.
*/
export declare function instanceOfQueryPaymentResponse(value: object): value is QueryPaymentResponse;
export declare function QueryPaymentResponseFromJSON(json: any): QueryPaymentResponse;
export declare function QueryPaymentResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): QueryPaymentResponse;
export declare function QueryPaymentResponseToJSON(json: any): QueryPaymentResponse;
export declare function QueryPaymentResponseToJSONTyped(value?: QueryPaymentResponse | null, ignoreDiscriminator?: boolean): any;
export declare function validateQueryPaymentResponse(value: QueryPaymentResponse): ValidationErrorContext[];