El código XML siguiente es el perfil de cajero estándar que se proporciona en WebSphere Commerce para el casete para SET. Este perfil de cajero utiliza la extensión SET Merchant Initiated Authorization (MIA).
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Profile SYSTEM "../../../../xml/PaymentManager/profile.dtd">
<!--
//*==================================================================
//* Material bajo licencia - Propiedad de IBM
//*
//* 5724-A18
//*
//* (c) Copyright IBM Corp. 2001
//*
//* Derechos restringidos de los usuarios del Gobierno de EE.UU. - Utilización,
//* duplicación o divulgación restringida por el GSA ADP Schedule Contract con IBM Corp.
//*
//*================================================================== -->
<!-- ==================================================================
Este es el perfil de cajero WC 5.1 estándar para el casete para SET
de Payment Manager (para Merchant Initiated Authorization)
================================================================== -->
<Profile useWallet="false" enableTrace="true" >
<CollectPayment>
<!-- ==================================================================
Los parámetros que necesita Payment Manager para la creación de pedidos
================================================================== -->
<Parameter name="PAYMENTTYPE"><CharacterText>SET</CharacterText></Parameter>
<Parameter name="MERCHANTNUMBER"><CharacterText>{storeId}</CharacterText></Parameter>
<Parameter name="ORDERNUMBER"><CharacterText>{orderId}</CharacterText></Parameter>
<Parameter name="CURRENCY"><CharacterText>{CURRENCY}</CharacterText></Parameter>
<Parameter name="AMOUNT"><CharacterText>{AMOUNT}</CharacterText></Parameter>
<Parameter name="AMOUNTEXP10"><CharacterText>{AMOUNTEXP10}</CharacterText></Parameter>
<!-- Indica cómo se debe intentar la aprobación automática del pedido
Los valores soportados son:
0 - sin aprobación automática
1 - aprobación automática síncrona - Payment Manager intenta la aprobación
como parte de la operación de creación de pedidos
2 - aprobación automática asíncrona - Payment Manager planifica una operación
de aprobación una vez creado el pedido
WC funciona mejor si APPROVEFLAG se establece en 2. Cuando APPROVEFLAG se establece en 1, el
mandato DoPayment de WC se bloquea hasta que Payment Manager finaliza la aprobación del pedido.
Hasta que no finaliza la aprobación, los mandatos que deseen leer/actualizar los mismos
registros de inventario modificados por el mandato DoPayment permanecerán bloqueados. Esto
afectará el rendimiento del resto de los mandatos.
-->
<Parameter name="APPROVEFLAG"><CharacterText>2</CharacterText></Parameter>
<!-- El importe que debe utilizarse cuando se aprueba un pedido. Generalmente,
será igual al importe del pedido. Este campo es necesario
si APPROVEFLAG se establece en 1 ó 2. -->
<Parameter name="PAYMENTAMOUNT"><CharacterText>{approval_amount}</CharacterText></Parameter>
<!-- El número de pago que debe utilizarse cuando se aprueba un pedido.
Generalmente será 1. Este campo es obligatorio si APPROVEFLAG
se establece en 1 ó 2. -->
<Parameter name="PAYMENTNUMBER"><CharacterText>1</CharacterText></Parameter>
<!-- Indica si el depósito debe intentarse automáticamente.
Este distintivo sólo es válido si APPROVEFLAG se establece en 1 ó 2.
Los valores soportados son:
0 - Los fondos no deben depositarse automáticamente.
1 - Los fondos deben depositarse automáticamente.
El valor por omisión es 0.
-->
<Parameter name="DEPOSITFLAG"><CharacterText></CharacterText></Parameter>
<!-- Los dos parámetros siguientes son opcionales. Puede utilizarse cualquiera de
los dos para pasar el número de orden de compra del comprador a Payment Manager. El
primer parámetro sólo acepta texto ASCII. Si los números de orden de compra de su
sistema pueden contener series no ASCII, utilice entonces el parámetro ORDERDATA2.
-->
<Parameter name="TRANSACTIONID" maxBytes="128" encoding="ASCII"><CharacterText>{PONumber}</CharacterText></Parameter>
<Parameter name="ORDERDATA2"><CharacterText></CharacterText></Parameter>
<!-- ==================================================================
Los parámetros que necesita el casete
================================================================== -->
<Parameter name="$PAN" sensitive="true"><CharacterText>{card_number}</CharacterText></Parameter>
<Parameter name="$BRAND"><CharacterText>{cardBrand}</CharacterText></Parameter>
<!-- La fecha de caducidad con el formato MMAAAA -->
<Parameter name="$EXPIRY"><CharacterText>{card_expiry}</CharacterText></Parameter>
<!-- Se utiliza para especificar el valor del campo TransMethod que se ha pasado
en la extensión MIA (Merchant Initiated Authorization). La extensión WC
especifica uno de los dos valores siguientes según el protocolo utilizado.
0 (MIA_channelEncryption - si se ha utilizado HTTPS)
1 (MIA_unencryptedWWW - si se ha utilizado HTTP)
-->
<Parameter name="$TRANSMETHOD">
<ExtensionValue name="com.ibm.commerce.payment.extensions.GenericExtension" />
</Parameter>
<!-- El atributo de codificación indica al cajero que los bytes para
OrderDescription pueden obtenerse de la Serie devuelta utilizando la
codificación de caracteres 8859_1 ya que así es cómo la clase GenericExtension
ha codificado los bytes. Los bytes resultantes están en el idioma del peticionario. -->
<Parameter name="$ORDERDESCRIPTION" encoding="8859_1" >
<ExtensionValue name="com.ibm.commerce.payment.extensions.GenericExtension" />
</Parameter>
<!-- ==================================================================
Parámetros opcionales para el casete
================================================================== -->
<!-- La dirección del titular de la tarjeta. De 1 a 128 caracteres ASCII.-->
<Parameter name="$AVS.STREETADDRESS" maxBytes="128" encoding="ASCII"><CharacterText>{billto_address1}</CharacterText></Parameter>
<!-- La ciudad del titular de la tarjeta. De 1 a 50 caracteres ASCII.-->
<Parameter name="$AVS.CITY" maxBytes="50" encoding="ASCII"><CharacterText>{billto_city}</CharacterText></Parameter>
<!-- El estado o provincia del titular de la tarjeta. De 1 a 50 caracteres ASCII.-->
<Parameter name="$AVS.STATEPROVINCE" maxBytes="50" encoding="ASCII"><CharacterText>{billto_state}</CharacterText></Parameter>
<!-- El código postal del titular de la tarjeta. De 1 a 14 caracteres ASCII. -->
<Parameter name="$AVS.POSTALCODE" maxBytes="14" encoding="ASCII"><CharacterText>{billto_zipcode}</CharacterText></Parameter>
<!-- El código de país ISO 3166 (3 dígitos) del titular de la tarjeta. Este campo es
necesario si se pasan otros datos AVS. -->
<Parameter name="$AVS.COUNTRYCODE"><CharacterText>{billto_country_code}</CharacterText></Parameter>
<!-- Un identificador que utiliza el comerciante para especificar una de sus ubicaciones.
El valor se especifica como una serie. De 1 a 10 caracteres ASCII. -->
<Parameter name="$AVS.LOCATIONID" maxBytes="10" encoding="ASCII"><CharacterText></CharacterText></Parameter>
<!-- Algunas tarjetas de pago se emiten con un código de verificación. El código
de verificación lo genera el banco emisor y éste puede comprobarlo.
El número de cuenta seguido por el código de verificación de tres o cuatro dígitos
se imprime en el panel de firma de la tarjeta. El valor debe ser una serie numérica
de tres o cuatro caracteres. Por ejemplo, los valores: 1234 ó 321. -->
<Parameter name="$CARDVERIFYCODE"><CharacterText>{cardVerificationCode}</CharacterText></Parameter>
<!-- Indica el tipo de contenido y el juego de caracteres del parámetro
$ORDERDESCRIPTION. -->
<Parameter name="$CHARSET"><CharacterText></CharacterText></Parameter>
<!-- Uno de los dos campos de la estructura merchData; cuando se especifica,
el casete lo utilizará. El valor debe ser una serie numérica de cuatro caracteres.
Nota: El requisito de utilizar este campo provendrá del adquirente. -->
<Parameter name="$MERCHCATCODE"><CharacterText></CharacterText></Parameter>
<!-- Uno de los dos campos de la estructura merchData; cuando se especifica,
el casete lo utilizará. El valor debe ser una serie numérica entre
"1" y "8". La semántica de los valores posibles se describe en la especificación
SET. Nota: El requisito de utilizar este campo provendrá
del adquirente. -->
<Parameter name="$MERCHGROUP"><CharacterText></CharacterText></Parameter>
<!-- El campo MerOrderNum está en la estructura SaleDetail de los mensajes
CapReq y AuthReq (ahora con capturas). El valor debe ser una serie de
caracteres con una longitud máxima de 24 caracteres. -->
<Parameter name="$MERORDERNUM"><CharacterText></CharacterText></Parameter>
<!-- Indica si un comerciante puede aprobar o no envíos adicionales.
Los valores soportados son:
0-Indica que este es el pago final del pedido.
1-Indica que el comerciante puede aprobar pagos aplazados
adicionales para el pedido. -->
<Parameter name="$SPLITALLOWED"><CharacterText>1</CharacterText></Parameter>
</CollectPayment>
<Command name="DEPOSIT">
<!-- ==================================================================
Los parámetros que necesita Payment Manager para el mandato DEPOSIT
================================================================== -->
<Parameter name="MERCHANTNUMBER"><CharacterText>{storeId}</CharacterText></Parameter>
<Parameter name="ORDERNUMBER"><CharacterText>{orderId}</CharacterText></Parameter>
<Parameter name="PAYMENTNUMBER"><CharacterText>{payment_number}</CharacterText></Parameter>
<Parameter name="AMOUNT"><CharacterText>{AMOUNT}</CharacterText></Parameter>
</Command>
</Profile>
Este perfil, WC51_SET_MIA.profile, puede encontrarlo en:
unidad:\WebSphere\CommerceServer\instances\nombre_instancia\xml\payment\
unidad:\Archivos
de programa\WebSphere\CommerceServer\instances\nombre_instancia\xml\payment\
/usr/WebSphere/CommerceServer/instances/nombre_instancia/xml/payment/
/opt/WebSphere/CommerceServer/instances/nombre_instancia/xml/payment/
vía de acceso raíz de instancia/xml/payment/
donde vía de acceso raíz de instancia es la vía de acceso que ha especificado
en el campo Vía de acceso raíz de la instancia del panel Instancia del Gestor de
configuración durante la creación de la instancia. La vía de acceso por omisión
es /QIBM/UserData/WebCommerce/instances/nombre_instancia/.
El parámetro PAYMENTTYPE especifica el nombre del casete del perfil.
WebSphere Commerce no utiliza el elemento <BuyPageInformation> del perfil de cajero. Se proporciona una función equiparable con la propiedad attrPageName de la política de pago.
Tenga en cuenta que este perfil de cajero utiliza la clase GenericExtension para obtener el valor de los parámetros $TRANSMETHOD y $ORDERDESCRIPTION que requiere el casete.
Para obtener más información sobre los parámetros que necesita el Casete para SET, consulte la publicación IBM WebSphere Payment Manager for Multiplatforms, Cassette for SET Supplement, Version 3.1.
![]() |