⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 extrctst.h

📁 ISO 8583 implementation.
💻 H
📖 第 1 页 / 共 2 页
字号:
447-458	06		OSEQ-NUM	Numero de secuencia que identifica	AN	X(12)
					la transaccion original.
 
459-462	06		OTRAN-DAT	Fecha de transaccion original.	AN	X(04)

463-470	06		OTRAN-TIM	Hora de la transaccion original.	AN	X(08)

471-474	06		B24-POST-DAY	Fecha de negocios.	AN	X(04)
 

475-477	04		ORIG-CRNCY-CDE	Codigo de moneda origen.	N	9(03)
					Los valores posibles son:
					
					'032' (Pesos).
					'076' (Reales).

					'840' (Dolares).
					'858' (Pesos Uruguayos).

478-499	04		DATOS	Informacion para distintos codigos.	AN	X(22)
	
		04		DATOS1	Redefines DATOS. 
					(Solo para codigos de transacciones 
					  '80', '81', '83', '85' y '86').

478-480	06		FILLER	Campo no utilizado.	AN	X(03)


481-499	06		NRO-CLIENTE	Numero de cliente.	AN	X(19)

		04		DATOS2	Redefines DATOS. 
					(Resto de codigos de transacciones).

478-479	06		TIPO-CLEARING	Para depositos en cheque, cuando	AN	X(02)
					el campo TERM-TYP sea '60' se
					informa el valor del clearing.
					Los valores posibles son:
					'24' - '48' - '72' - 'OT'

	480-483	06		FILLER	Campo no utilizado.	AN	X(04)

484-491	06		TIP-EXCHA-COMP	Tipo de cambio comprador para la	N	9(05)v(03)
					venta de dolares.

492-499	06		ARBITRAJE	Arbitraje de pesos contra la	N	9(05)v(03)
					moneda indicada en el campo
					ORIG-CRNCY-CDE.

500-507	04		TIP-EXCHA-VEND	Tipo de cambio vendedor para la	N	9(05)v(03)
					compra de dolares.
 
508-518	04		FILLER	Campo no utilizado.	AN	X(11)
 

519-520	04		RVSL-RSN	Indicativo de reversa.	N	9(02)
					Los valores posibles son los indicados
		                                    en el Capitulo V.7 Codigos del Sistema
					Codigos Indicativos de Reversos
	
521-536	04		PIN-OFST	PIN offset.	AN	X(16)

537-537	04		SHRG-GRP	Agrupador	AN	X(01)
POSIC.

538-608	04		FILLER	Campo no utilizado.	AN	X(71)

609-902	04		USER-FLD2X		AN	X(294)

		04		CAMPOS-NUEVOS2	Redefines USER-FLD2X

609-609	06		TIPO-DEP	Tipo de deposito.	AN	X(01)
					
					Los valores posibles son los indicados
		                                    en el Capitulo V.10 Codigos del Sistema
					Codigos de Tipos de Depositos
					
					Si no es un deposito, se informa CERO.

610-613	06		ISSUER-FIID	Numero de Institucion del Banco	AN	X(04)
					emisor de la tarjeta.

614-619	06		INTEREST-RATE	Tasa de interes para cuenta de	N	9(04)v(02)
					de credito.

620-627	06		CASH-FEE	Arancel de CASH ADVANCE para	N	9(06)v(02)
					cuenta de credito.

	628-629	06		CARD-TYPE	Tipo de tarjeta.	AN	X(02)

	630-630	06		SITUACION IVA	Situacion del titular de la cuenta ante 	N	9(1)
					el IVA,
					Los valores posibles son:

					"1" Consumidor Final
					"0" No consumidor Final

	631-902	06		FILLER	Campo no utilizado.	AN	X(272)
*/

/*************************************************/
/*** CREDIT CARD TRX (FILLER6 = ISO-FIELD-126) ***/
#include <qusrinc/isoredef.h>
/*************************************************/


/* Header EXTRACT BASE24  R4.0 RED LINK */
typedef struct stHeaderExtractB24_t
{
	char PREFIX1[6];
	char PREFIX2[2];
	char DAT_TIM[19]; 
	char REC_TYP[2]; 
	char AUTH_PPD[04];
	char TERM_LN[04];
	char TERM_FIID[4];
	char TERM_ID[16];
	char CARD_LN[4];
	char CARD_FIID[4];
	char CARD_PAN[28];
	char CARD_MBR_NUM[3];
	char BRCH_ID[4];
	char REGN_ID[4];
	char USER_FLD1X[2];
} stHeaderExtractB24;

/* Datos de AUTH del  EXTRACT BASE24 R4.0 RED LINK */
typedef struct	stAuthExtractB24_t 
{ 
	char TYP_CDE[2];
	char TYP[4];
	char RTE_STAT[02];
	char ORIGINATOR;
	char RESPONDER;
	char ENTRY_TIM[19];
	char EXIT_TIM[19];
	char RE_ENTRY_TIM[19];
	char TRAN_DAT[6];
	char TRAN_TIM[8];
	char POST_DAT[6];
	char ACQ_ICHG_SETL_DAT[6];
	char ISS_ICHG_SETL_DAT[6];
	char SEQ_NUM[12];
	char TERM_TYP[2];
	char TIM_OFST[5];
	char ACQ_INST_ID_NUM[11];
	char RCV_INST_ID_NUM[11];
	struct TRAN_CDE_tag {
		char T_CDE[2];
		char T_FROM[2];
		char T_TO[2];
	} stTRAN_CDE;
	char FROM_ACCT[28];
	char TIPO_DEP;
	char TO_ACCT[28];
	char MULT_ACCT;
	char AMT_1[19];
	char AMT_2[19];
	char AMT_3[19];
	char FILLER1[10];
	char DEP_TYP;
	char RESP_CDE[3];
	union  TERM_NAME_LOC_tag {
		char TERM_NAME_LOC [25];
		char NOMBRE_ENTE[25];
		struct INTER_CONTRA_tag {
			char FIID[4];
			char ACCT_TYP[2];
			char ACCT_NUM[19];
		} stINTER_CONTRA;
	} uTERM_NAME_LOC;
	union TERM_OWNER_NAME_tag {
		char TERM_OWNER_NAME[22];
		char NRO_ENTE_CUOTA[3+5];
		char CREDITO_CUOTAS[2+1];
		char NUM_CBU[22];
		char PAYKEY_EMPRESA_PRODUCTO_FACTURA[3+3+16];
		char MBANKING_EMPRESA_FRECUENCIA_DIA[20+1+1];
		char DONACIONES[3];
	} uTERM_OWNER_NAME;
	char TERM_CITY[13];
	char TERM_ST_X[3];
	char TERM_CNTRY_X[2];
	char OSEQ_NUM[12];
	char OTRAN_DAT[4];
	char OTRAN_TIM[8];
	char B24_POST_DAY[4];
	char ORIG_CRNCY_CDE[3];
	union DATOS_tag {
		char DATA[22];
		struct DATOS1_tag {
			char ENTE[3];
			char CLIENTE[19];
		} stDATOS1;
		struct DATOS2_tag {
			char TIPO_CLEARING[2];
			char FILLER2[4];
			char TIP_EXCHA_COMP[8];
			char ARBITRAJE[8];
		} stDATOS2;
	} uDATOS;		
	char TIP_EXCHA_VEND[8];
	char FILLER3[11];
	char RVSL_RSN[2];
	char PIN_OFST[16];
	char SHRG_GRP;
	char FILLER4[71];
	union USER_FLD2X_tag {
		char FILLER5[294];
		struct CAMPOS_NUEVOS_2_tag {
			char TIPO_DEP;
			char ISSUER_FIID[4];
			char INTEREST_RATE[4];
			char CASH_FEE[6];
			char CARD_TYPE[2];
			char SITUACION_IVA;
			/*************************************************/
			/*** CREDIT CARD TRX (FILLER6 = ISO-FIELD-126) ***/
			union uFILLER6_tag { 				
				char                    FILLER6[272];
				struct CreditCardAcct_t stCreditCardAcct;
			} uFILLER6;
			/*************************************************/
		} tCAMPOS_NUEVOS_2;
	} uUSER_FLD2X;	
} stAuthExtractB24 ;

/* mensaje SIOP completo para AS/400, identico al EXTRACT */
/* header mas cuerpo de mensaje */
typedef struct msgEXTRACT_t
{
	stHeaderExtractB24 header;
	stAuthExtractB24   cuerpo;
	char		 chETX;
	char		 chEOF;
	char		 chNUL;
} msgEXTRACT;


/* B24-EXTRACT'S REVERSAL REASONS, RELEASE 4.0 and 6.0 */
#if ( _BASE24_CURRENT_VERSION_ == _BASE24_RELEASE4_ || \
	  _BASE24_CURRENT_VERSION_ == _BASE24_RELEASE6_ )
#ifndef CEXTR_REV_TIMEOUT
#define CEXTR_REV_TIMEOUT 				"01"
#define CEXTR_REV_COMMAND_REJECTED 		"02"
#define CEXTR_REV_DEST_NOT_AVAIL 		"03"
#define CEXTR_REV_CANCELLED_TRX 		"08"
#define CEXTR_REV_HARDWARE_ERROR 		"10"
#define CEXTR_REV_SUSPICIUS_TRX 		"20"
#endif // CEXTR_REV_TIMEOUT
#endif // _BASE24_CURRENT_VERSION_

/* B24-EXTRACT'S BINARY VALUES for the REVERSAL REASONS, RELEASE 4.0 */
#ifndef CEXTR_REV_TIMEOUT_I
#define CEXTR_REV_TIMEOUT_I 			(1)
#define CEXTR_REV_COMMAND_REJECTED_I	(2)
#define CEXTR_REV_DEST_NOT_AVAIL_I 		(3)
#define CEXTR_REV_CANCELLED_TRX_I 		(8)
#define CEXTR_REV_HARDWARE_ERROR_I 		(10)
#define CEXTR_REV_SUSPICIUS_TRX_I 		(20)
#endif // CEXTR_REV_TIMEOUT_I

/* B24-EXTRACT'S ACCOUNT TYPES, RELEASE 4.0 */
#if ( _BASE24_CURRENT_VERSION_ == _BASE24_RELEASE4_ )

#define _CEXTR_CHECKINGS_ACCOUNT_USD_   (7) //  7   - CUENTA CORRIENTE EN DOLARES
#define _CEXTR_SAVINGS_ACCOUNT_        (11) // 10   - CAJA DE AHORROS EN PESOS
#define _CEXTR_SPECIAL_ACCOUNT_AFJP_   (13) // 13   - CUENTA AFJP
#define _CEXTR_SAVINGS_ACCOUNT_BOND_   (14) // 14   - CUENTA BONOS
#define _CEXTR_SAVINGS_ACCOUNT_USD_    (15) // 15	- CAJA DE AHORROS EN DOLARES
#define _CEXTR_CHECKINGS_ACCOUNT_       (1) // 20	- CUENTA CORRIENTE EN PESOS
#define _CEXTR_CREDIT_CARD_ACCOUNT_    (31) // 30	- CUENTA TARJETA DE CREDITO EN PESOS
#define _CEXTR_CREDIT_LINE_ACCOUNT_    (30) // 32	- CUENTA CREDITO VISTA EN PESOS

#define CEXTR_CHECKINGS_ACCOUNT_USD    "07" //  7   - CUENTA CORRIENTE EN DOLARES
#define CEXTR_SAVINGS_ACCOUNT          "11" // 10   - CAJA DE AHORROS EN PESOS
#define CEXTR_SPECIAL_ACCOUNT_AFJP     "13" // 13   - CUENTA AFJP
#define CEXTR_SAVINGS_ACCOUNT_BOND     "14" // 14   - CUENTA BONOS
#define CEXTR_SAVINGS_ACCOUNT_USD      "15" // 15	- CAJA DE AHORROS EN DOLARES
#define CEXTR_CHECKINGS_ACCOUNT        "01" // 20	- CUENTA CORRIENTE EN PESOS
#define CEXTR_CREDIT_CARD_ACCOUNT      "31" // 30	- CUENTA TARJETA DE CREDITO EN PESOS
#define CEXTR_CREDIT_LINE_ACCOUNT      "30" // 32	- CUENTA CREDITO VISTA EN PESOS

#define  _CEXTR_OPCODE_WITHDRAWAL_				   "10" // Extraccion
#define  _CEXTR_OPCODE_DEPOSIT_                    "20" // Deposito
#define  _CEXTR_OPCODE_BALANCE_INQUIRY_			   "30" // Consulta de Saldo
#define  _CEXTR_OPCODE_BALANCE_INQUIRY_POS_		   "73" // Consulta de Saldo POS
#define  _CEXTR_OPCODE_TRANSFER_				   "40" // Transferencia
#define  _CEXTR_OPCODE_PAYMENT_W_DEBIT_ 		   "50" // Pago con debito en cuenta
#define  _CEXTR_OPCODE_PAYMENT_W_CASH_ 			   "51" // Pago con sobre y dinero efevo.
#define  _CEXTR_OPCODE_BUYING_W_ACCT_DEBIT_        "71" // Compra con Debito
#define  _CEXTR_OPCODE_BUYING_W_ACCT_DEBIT_CANCEL_ "72" // Anulacion compra "credito"
#define  _CEXTR_OPCODE_BUYING_DEVOLUTION_          "74" // Devolucion compra "credito NO se procesa"
#define  _CEXTR_OPCODE_BUYING_DEVOLUTION_CANCEL_   "75" // Anul. Devolucion compra "debito NO se procesa"
#define  _CEXTR_OPCODE_BUYING_CASH_BACK_           "76" // Compra cash-back
#define  _CEXTR_OPCODE_BUYING_CASH_BACK_CANCEL_    "77" // Anulacion Compra cash-back
#define  _CEXTR_OPCODE_BUYING_PREAUTH_             "78" // Preautorizacion NO se procesa
#define  _CEXTR_OPCODE_BUYING_PREAUTH_CANCEL_      "79" // Anul. Preautorizacion NO se procesa
#define  _CEXTR_OPCODE_DEBIT_ORDER_XFER_           "19" // Orden de Debito x transferencia

#define  CEXTR_OPCODE_WITHDRAWAL				 10 // Extraccion
#define  CEXTR_OPCODE_DEPOSIT                    20 // Deposito
#define  CEXTR_OPCODE_BALANCE_INQUIRY			 30 // Consulta de Saldo
#define  CEXTR_OPCODE_PIN_CHANGE     			 31 // Cambio de PIN
#define  CEXTR_OPCODE_BALANCE_INQUIRY_POS		 73 // Consulta de Saldo POS
#define  CEXTR_OPCODE_TRANSFER				     40 // Transferencia
#define  CEXTR_OPCODE_PAYMENT_W_DEBIT 		     50 // Pago con debito en cuenta
#define  CEXTR_OPCODE_PAYMENT_W_CASH 		     51 // Pago con sobre y dinero efevo.
#define  CEXTR_OPCODE_BUYING_W_ACCT_DEBIT        71 // Compra con Debito
#define  CEXTR_OPCODE_BUYING_W_ACCT_DEBIT_CANCEL 72 // Anulacion compra credito
#define  CEXTR_OPCODE_BUYING_DEVOLUTION          74 // Devolucion compra credito NO se procesa
#define  CEXTR_OPCODE_BUYING_DEVOLUTION_CANCEL   75 // Anul. Devolucion compra debito NO se procesa
#define  CEXTR_OPCODE_BUYING_CASH_BACK           76 // Compra cash-back
#define  CEXTR_OPCODE_BUYING_CASH_BACK_CANCEL    77 // Anulacion Compra cash-back
#define  CEXTR_OPCODE_BUYING_PREAUTH             78 // Preautorizacion NO se procesa
#define  CEXTR_OPCODE_BUYING_PREAUTH_CANCEL      79 // Anul. Preautorizacion NO se procesa
#define  CEXTR_OPCODE_DEBIT_ORDER_XFER           19 // Orden de Debito x transferencia

#elif ( _BASE24_CURRENT_VERSION_ == _BASE24_RELEASE6_ )

#define _CEXTR_SAVINGS_ACCOUNT_			(11)   // CAJA DE AHORROS PESOS
#define _CEXTR_SAVINGS_ACCOUNT_USD_		(12)   // CAJA DE AHORROS DOLARES
#define _CEXTR_CHECKINGS_ACCOUNT_		(1)    // CUENTA CORRIENTE PESOS
#define _CEXTR_CHECKINGS_ACCOUNT_USD_	(2)    // CUENTA CORRIENTE DOLARES
#define _CEXTR_CREDIT_CARD_ACCOUNT_		(31)   // CUENTA TARJETA DE CREDITO EN PESOS
#define _CEXTR_CREDIT_ACCOUNT_			(30)   // CUENTA CREDITO EN PESOS

#define CEXTR_SAVINGS_ACCOUNT			"11"   // CAJA DE AHORROS PESOS
#define CEXTR_SAVINGS_ACCOUNT_USD		"12"   // CAJA DE AHORROS DOLARES
#define CEXTR_CHECKINGS_ACCOUNT		    "01"   // CUENTA CORRIENTE PESOS
#define CEXTR_CHECKINGS_ACCOUNT_USD	    "02"   // CUENTA CORRIENTE DOLARES
#define CEXTR_CREDIT_CARD_ACCOUNT		"31"   // CUENTA TARJETA DE CREDITO EN PESOS
#define CEXTR_CREDIT_ACCOUNT			"30"   // CUENTA CREDITO EN PESOS

#define  _CEXTR_OPCODE_WITHDRAWAL_				    "10" // Extraccion
#define  _CEXTR_OPCODE_WITHDRAWAL_FRGN_CURRENCY_	"16" // Extraccion Moneda Extranjera
#define  _CEXTR_OPCODE_DEPOSIT_                 	"20" // Deposito
#define  _CEXTR_OPCODE_BALANCE_INQUIRY_			    "30" // Consulta de Saldo
#define  _CEXTR_OPCODE_BALANCE_INQUIRY_POS_		    _CEXTR_OPCODE_BALANCE_INQUIRY_ // Consulta de Saldo
#define  _CEXTR_OPCODE_PAYMENT_W_DEBIT_ 			"57" // Pago con debito en cuenta, s/deuda
#define  _CEXTR_OPCODE_PAYMENT_W_STATEMENT_		    "58" // Pago con debito, con deuda informada
#define  _CEXTR_OPCODE_PAYMENT_W_CASH_			    "51"
#define  _CEXTR_OPCODE_TRANSFER_				    "40" // Transferencia
#define  _CEXTR_OPCODE_TRANSFER_FRGN_CURRENCY_     "41" // Transferencia moneda extranjera
#define  _CEXTR_OPCODE_TRANSFER_CBU_               "47" // Transferencia CBU
#define  _CEXTR_OPCODE_TRANSFER_CBU_ACH_           "48" // Transferencia hacia ACH
#define  _CEXTR_OPCODE_BUYING_W_ACCT_DEBIT_        "15" // Compra con Debito
#define  _CEXTR_OPCODE_BUYING_W_ACCT_DEBIT_CANCEL_ "23" // Anulacion compra "credito"
#define  _CEXTR_OPCODE_BUYING_DEVOLUTION_          "18" // Devolucion compra "credito NO se procesa"
#define  _CEXTR_OPCODE_BUYING_DEVOLUTION_CANCEL_   "22" // Anul. Devolucion compra "debito NO se procesa"
#define  _CEXTR_OPCODE_BUYING_CASH_BACK_           "26" // Compra cash-back
#define  _CEXTR_OPCODE_BUYING_CASH_BACK_CANCEL_    "24" // Anulacion Compra cash-back
#define  _CEXTR_OPCODE_DEBIT_ORDER_XFER_           _CEXTR_OPCODE_TRANSFER_CBU_ // Orden de Debito x transferencia

#define  CEXTR_OPCODE_WITHDRAWAL				 10 // Extraccion
#define  CEXTR_OPCODE_WITHDRAWAL_FRGN_CURRENCY	 16 // Extraccion Moneda Extranjera
#define  CEXTR_OPCODE_DEPOSIT                 	 20 // Deposito
#define  CEXTR_OPCODE_BALANCE_INQUIRY			 30 // Consulta de Saldo
#define  CEXTR_OPCODE_BALANCE_INQUIRY_POS		 CEXTR_OPCODE_BALANCE_INQUIRY // Consulta de Saldo
#define  CEXTR_OPCODE_PIN_CHANGE     			 81 // Cambio de PIN - codigo
#define  CEXTR_OPCODE_PAYMENT_W_DEBIT 		     57 // Pago con debito en cuenta, s/deuda
#define  CEXTR_OPCODE_PAYMENT_W_STATEMENT	     58 // Pago con debito, con deuda informada
#define  CEXTR_OPCODE_PAYMENT_W_CASH		     51 // Pago con sobre y dinero efevo.
#define  CEXTR_OPCODE_TRANSFER				     40 // Transferencia
#define  CEXTR_OPCODE_TRANSFER_FRGN_CURRENCY     41 // Transferencia moneda extranjera
#define  CEXTR_OPCODE_TRANSFER_CBU               47 // Transferencia CBU
#define  CEXTR_OPCODE_TRANSFER_CBU_ACH           48 // Transferencia hacia ACH
#define  CEXTR_OPCODE_BUYING_W_ACCT_DEBIT        15 // Compra con Debito
#define  CEXTR_OPCODE_BUYING_W_ACCT_DEBIT_CANCEL 23 // Anulacion compra credito
#define  CEXTR_OPCODE_BUYING_DEVOLUTION          18 // Devolucion compra credito NO se procesa
#define  CEXTR_OPCODE_BUYING_DEVOLUTION_CANCEL   22 // Anul. Devolucion compra debito NO se procesa
#define  CEXTR_OPCODE_BUYING_CASH_BACK           26 // Compra cash-back
#define  CEXTR_OPCODE_BUYING_CASH_BACK_CANCEL    24 // Anulacion Compra cash-back
#define  CEXTR_OPCODE_DEBIT_ORDER_XFER           CEXTR_OPCODE_TRANSFER_CBU // Orden de Debito x transferencia
#endif


#endif /*_EXTRACT_STRUCT_*/


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -