Le code XML ci-dessous correspond au profil de caissier standard fourni dans WebSphere Commerce pour la cassette pour SET. Ce profil de caissier utilise l'extension SET MIA (accréditations émises par un commerçant) et indique certaines des données de la carte d'achat facultatives prises en charge par la cassette. La méthode de paiement par carte d'achat permet d'envoyer des données supplémentaires à l'acquéreur. Pour plus d'informations sur les cartes d'achat, consultez le manuel IBM WebSphere Payment Manager for Multiplatforms, Cassette for SET Supplement, Version 3.1.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Profile SYSTEM "../../../../xml/PaymentManager/profile.dtd">
<!--
//*==================================================================
//* Licensed Materials - Property of IBM
//*
//* 5724-A18
//*
//* (c) Copyright IBM Corp. 2001
//*
//* US Government Users Restricted Rights - Use, duplication or
//* disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
//*
//*================================================================== -->
<!-- ==================================================================
Profil de caissier WebSphere Commerce standard pour la cassette
pour SET (pour les accréditations émises par un commerçant) Payment Manager.
Ce profil définit les données facultatives de la carte d'achat prise en charge par la cassette.
Remarque : si vous modifiez le paramètre DEPOSITFLAG du profil pour qu'il ait la valeur "1", vous devez déplacer
les paramètres $PCARD.* dans l'élément <CollectPayment> du profil.
================================================================== -->
<Profile useWallet="false" enableTrace="true" >
<!-- Veuillez noter les restrictions suivantes :
1) La cassette prend en charge la colonne QUANTITY avec des valeurs entières uniquement. Les valeurs décimales sont supprimées.
2) OrderItems.CatEntry_id ne doit pas être vide et les entrées CatEntShip et CatEntDesc pour CatEntry_id doivent exister avec un CatEntDesc.SHORTDESCRIPTION non vide pour le language_id spécifié.
3) Les colonnes TAXAMOUNT, SHIPCHARGE et SHIPTAXAMOUNT d'OrderItems ne doivent pas être vides.
-->
<!-- Remarque relative aux deux instructions SelectStatement suivantes.
* ACTION REQUISE POUR LES UTILISATEURS D'ORACLE *
La première SelectStatement présentée ci-après s'applique à DB2,
la seconde à Oracle.
Si vous utilisez ORACLE, désactivez la mise en commentaire de la deuxième instruction SelectStatement et mettez la première en commentaire.
-->
<SelectStatement id="1" allowMultiples="true" >
SELECT PARTNUMBER, SHORTDESCRIPTION, integer(QUANTITY) as INT_QUANTITY, RTRIM(QUANTITYMEASURE) as QTYMEASURE, integer(PRICE*{currency_factor}) as UNITCOST,
integer( (TOTALPRODUCT+TAXAMOUNT+SHIPCHARGE+SHIPTAXAMOUNT+TOTALADJUSTMENT) * {currency_factor}) as TOTALCOST
FROM orderitems, catentry, catentship, catentdesc
WHERE orders_id = {orderId}
AND orderitems.catentry_id = catentry.catentry_id
AND orderitems.catentry_id = catentship.catentry_id
AND orderitems.catentry_id = catentdesc.catentry_id
AND catentdesc.language_id = {buyer_language_id}
</SelectStatement>
<!--
<SelectStatement id="1" allowMultiples="true" >
SELECT PARTNUMBER, SHORTDESCRIPTION, round(QUANTITY) as INT_QUANTITY, RTRIM(QUANTITYMEASURE) as QTYMEASURE, round(PRICE*{currency_factor}) as UNITCOST,
round( (TOTALPRODUCT+TAXAMOUNT+SHIPCHARGE+SHIPTAXAMOUNT+TOTALADJUSTMENT) * {currency_factor}) as TOTALCOST
FROM orderitems, catentry, catentship, catentdesc
WHERE orders_id = {orderId}
AND orderitems.catentry_id = catentry.catentry_id
AND orderitems.catentry_id = catentship.catentry_id
AND orderitems.catentry_id = catentdesc.catentry_id
AND catentdesc.language_id = {buyer_language_id}
</SelectStatement>
-->
<CollectPayment>
<!-- ==================================================================
Paramètres requis par Payment Manager pour la création d'une commande
================================================================== -->
<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>
<!-- Indique le mode d'approbation automatique de la commande
Les valeurs admises sont les suivantes :
0 - pas d'approbation automatique ;
1 - approbation automatique synchrone - Payment Manager tente l'approbation dans
le cadre de l'opération de création de commande ;
2 - approbation automatique asynchrone - Payment Manager planifie les opérations
d'approbation après la création de la commande.
WCS fonctionne mieux lorsque la valeur d'APPROVEFLAG est 2. Lorsque la valeur d'APPROVEFLAG est 1, l'instruction WCS DoPayment est bloquée jusqu'à ce que Payment Manager termine l'approbation de la commande. Tant que l'approbation n'est pas terminée, toutes les instructions qui veulent lire ou mettre à jour les enregistrements de stock modifiés par l'instruction DoPayment sont bloquées. Cela se répercute sur le débit des autres instructions.
-->
<Parameter name="APPROVEFLAG"><CharacterText>2</CharacterText></Parameter>
<!-- Montant qui doit être utilisé lors de l'approbation d'une commande. Généralement il est identique au montant de la commande. Cette zone est obligatoire si APPROVEFLAG est défini sur 1 ou 2. -->
<Parameter name="PAYMENTAMOUNT"><CharacterText>{approval_amount}</CharacterText></Parameter>
<!-- Numéro de paiement à utiliser lors de l'approbation d'une commande.
Généralement, ce numéro est 1. Cette zone est obligatoire si APPROVEFLAG
est défini sur 1 ou 2. -->
<Parameter name="PAYMENTNUMBER"><CharacterText>1</CharacterText></Parameter>
<!-- Indique si le versement de l'acompte doit être automatiquement tenté.
Cet indicateur n'est valide que si APPROVEFLAG a la valeur 1 ou 2.
Les valeurs admises sont les suivantes :
0 - Les fonds ne doivent pas être automatiquement versés ;
1 - Les fonds doivent être automatiquement versés.
La valeur par défaut est 0.
Remarque : si vous modifiez le paramètre DEPOSITFLAG pour qu'il ait la valeur "1", vous devez déplacer tous les paramètres facultatifs des données de la carte d'achat de l'élément <Command name="DEPOSIT">
vers l'élément <CollectPayment> pour qu'ils puissent être envoyés.
-->
<Parameter name="DEPOSITFLAG"><CharacterText></CharacterText></Parameter>
<!-- Les deux paramètres suivants sont facultatifs. L'un ou l'autre peut être utilisé pour transmettre le numéro de bon de commande au gestionnaire de paiements. Le premier paramètre prend en charge le texte au format ASCII uniquement. Si les numéros de bon de commande sur votre système contiennent des chaînes de caractères qui ne sont pas au format ASCII, utilisez le paramètre ORDERDATA2.
-->
<Parameter name="TRANSACTIONID" maxBytes="128" encoding="ASCII"><CharacterText>{PONumber}</CharacterText></Parameter>
<Parameter name="ORDERDATA2"><CharacterText></CharacterText></Parameter>
<!-- ==================================================================
Paramètres requis par la cassette
================================================================== -->
<Parameter name="$PAN" sensitive="true"><CharacterText>{card_number}</CharacterText></Parameter>
<Parameter name="$BRAND"><CharacterText>{cardBrand}</CharacterText></Parameter>
<!-- Date d'expiration au format AAAAMM -->
<Parameter name="$EXPIRY"><CharacterText>{card_expiry}</CharacterText></Parameter>
<!-- Utilisé pour spécifier la valeur de la zone TransMethod transmise dans l'extension MIA (Accréditations émises par un commerçant). L'extension WCS
spécifie l'une des deux valeurs selon le protocole utilisé.
0 (MIA_channelEncryption - si HTTPS a été utilisé)
1 (MIA_unencryptedWWW - si HTTP a été utilisé)
-->
<Parameter name="$TRANSMETHOD">
<ExtensionValue name="com.ibm.commerce.payment.extensions.GenericExtension" />
</Parameter>
<!-- L'attribut de codage indique au caissier que les octets de la valeur
OrderDescription peuvent être obtenus à partir de la chaîne de caractères
renvoyée à l'aide du codage de caractères 8859_1 car il s'agit du codage utilisé par la classe GenericExtension pour coder les octets. Les octets obtenus sont dans la langue du demandeur. -->
<Parameter name="$ORDERDESCRIPTION" encoding="8859_1" >
<ExtensionValue name="com.ibm.commerce.payment.extensions.GenericExtension" />
</Parameter>
<!-- ==================================================================
Paramètres facultatifs pour la cassette
================================================================== -->
<!-- Adresse du porteur de carte. Entre 1 et 128 caractères ASCII. -->
<Parameter name="$AVS.STREETADDRESS" maxBytes="128" encoding="ASCII"><CharacterText>{billto_address1}</CharacterText></Parameter>
<!-- Ville du porteur de carte. Entre 1 et 50 caractères ASCII. -->
<Parameter name="$AVS.CITY" maxBytes="50" encoding="ASCII"><CharacterText>{billto_city}</CharacterText></Parameter>
<!-- Etat ou province du porteur de carte. Entre 1 et 50 caractères ASCII. -->
<Parameter name="$AVS.STATEPROVINCE" maxBytes="50" encoding="ASCII"><CharacterText>{billto_state}</CharacterText></Parameter>
<!-- Code postal du porteur de carte. Entre 1 et 14 caractères ASCII. -->
<Parameter name="$AVS.POSTALCODE" maxBytes="14" encoding="ASCII"><CharacterText>{billto_zipcode}</CharacterText></Parameter>
<!-- Code pays ISO 3166 (3 chiffres) du porteur de carte. Cette zone est
obligatoire si d'autres données AVS sont transmises. -->
<Parameter name="$AVS.COUNTRYCODE"><CharacterText>{billto_country_code}</CharacterText></Parameter>
<!-- Identificateur que le commerçant utilise pour spécifier l'un de ses sites.
Cette valeur est spécifiée sous la forme d'une chaîne. Entre 1 et 10 caractères ASCII. -->
<Parameter name="$AVS.LOCATIONID" maxBytes="10" encoding="ASCII"><CharacterText></CharacterText></Parameter>
<!-- Certaines cartes de paiement sont émises avec un code de vérification. Ce code
de vérification est généré par la banque émettrice et peut être vérifié par cette banque.
Le numéro de compte suivi du code de vérification de trois ou quatre chiffres
est imprimé sur le volet de signature de la carte. Cette valeur doit être une
chaîne numérique de 3 ou 4 chiffres. Exemples de valeurs : 1234 ou 321. -->
<Parameter name="$CARDVERIFYCODE"><CharacterText>{cardVerificationCode}</CharacterText></Parameter>
<!-- Indique le type de contenu et le jeu de caractères du paramètre $ORDERDESCRIPTION.
-->
<Parameter name="$CHARSET"><CharacterText></CharacterText></Parameter>
<!-- Une des deux zones de la structure merchData. Lorsqu'elle est spécifiée,
la cassette l'utilise. Cette valeur doit être une chaîne numérique de 4 caractères.
Remarque : l'obligation d'utiliser cette zone viendra de l'acquéreur. -->
<Parameter name="$MERCHCATCODE"><CharacterText></CharacterText></Parameter>
<!-- Une des deux zones de la structure merchData. Lorsqu'elle est spécifiée,
la cassette l'utilise. La valeur doit être une chaîne numérique comprise entre
"1" et "8". La sémantique des valeurs possibles est décrite dans les spécifications
de SET. Remarque : l'obligation d'utiliser cette zone viendra de l'acquéreur. -->
<Parameter name="$MERCHGROUP"><CharacterText></CharacterText></Parameter>
<!-- La zone MerOrderNum fait partie de la structure SaleDetail des messages CapReq
et AuthReq (avec enregistrement). La valeur doit être une chaîne de caractères
d'une longueur maximale de 24 caractères. -->
<Parameter name="$MERORDERNUM"><CharacterText></CharacterText></Parameter>
<!-- Indique si un commerçant peut ou non approuver des expéditions supplémentaires.
Les valeurs admises sont les suivantes :
0-Indique qu'il s'agit du paiement final de la commande ;
1-Indique que le commerçant peut accepter des paiements fractionnés
supplémentaires pour la commande. -->
<Parameter name="$SPLITALLOWED"><CharacterText>0</CharacterText></Parameter>
</CollectPayment>
<Command name="DEPOSIT">
<!-- ==================================================================
Paramètres requis par Payment Manager pour l'instruction 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>
<!-- ==================================================================
Paramètres facultatifs pour les données de la carte d'achat
================================================================== -->
<Parameter name="$PCARD.TOTALTAXAMOUNT"><CharacterText>{total_tax_amount}</CharacterText></Parameter>
<Parameter name="$PCARD.SHIPPINGAMOUNT"><CharacterText>{total_shipping_amount}</CharacterText></Parameter>
<Parameter name="$PCARD.MERCHANTORDERNUMBER"><CharacterText>{orderId}</CharacterText></Parameter>
<Parameter name="$PCARD.CUSTOMERREFERENCENUMBER"><CharacterText></CharacterText></Parameter>
<!-- Veuillez noter les restrictions associées au paramètre SelectStatement -->
<Parameter name="$ITEM.PRODUCTCODE" maxBytes="12" encoding="UTF8">
<DatabaseValue statementID="1" columnName="PARTNUMBER" />
</Parameter>
<Parameter name="$ITEM.DESCRIPTOR" maxBytes="35" encoding="UTF8">
<DatabaseValue statementID="1" columnName="SHORTDESCRIPTION" />
</Parameter>
<Parameter name="$ITEM.QUANTITY" encoding="ASCII">
<DatabaseValue statementID="1" columnName="INT_QUANTITY" />
</Parameter>
<Parameter name="$ITEM.UNITOFMEASURE" maxBytes="12" encoding="UTF8">
<DatabaseValue statementID="1" columnName="QTYMEASURE" />
</Parameter>
<Parameter name="$ITEM.UNITCOST" encoding="ASCII">
<DatabaseValue statementID="1" columnName="UNITCOST" />
</Parameter>
<Parameter name="$ITEM.TOTALCOST" encoding="ASCII">
<DatabaseValue statementID="1" columnName="TOTALCOST" />
</Parameter>
</Command>
</Profile>
Le profil WC51_SET_MIA_PCard.profile se trouve dans les emplacements suivants :
unité:\WebSphere\CommerceServer\instances\nom_instance\xml\payment\
unité:\Program
Files\WebSphere\CommerceServer\instances\nom_instance\xml\payment\
/usr/WebSphere/CommerceServer/instances/nom_instance/xml/payment/
/opt/WebSphere/CommerceServer/instances/nom_instance/xml/payment/
chemin_root_
instance/xml/payment/
où chemin_root_instance représente le chemin que vous avez indiqué dans la zone
Chemin root de l'instance de l'écran Instance du gestionnaire de configuration,
lors de la création de l'instance. Le chemin par défaut est
/QIBM/UserData/WebCommerce/instances/nom_instance/.
Le paramètre PAYMENTTYPE indique le nom de la cassette du profil.
Les valeurs des données facultatives de la carte d'achat sont regroupées à partir des tables de base de données de WebSphere Commerce à l'aide du paramètre SelectStatement indiqué dans le profil. Il existe quelques restrictions :
WebSphere Commerce n'utilise pas l'élément <BuyPageInformation> du profil de caissier. Une fonction comparable est fournie avec la propriété attrPageName de la stratégie de paiement.
Avant d'utiliser le profil de caissier, vous devez effectuer une petite modification si vous voulez utiliser la stratégie de paiement qui définit ce profil pour vos magasins (par exemple, avec une valeur policy_idégale à 301). Pour plus de détails, reportez-vous à la rubrique Mise à jour du profil de caissier pour la cassette pour SET avec MIA pour les données de la carte d'achat (Oracle).
Pour plus d'informations sur les paramètres requis par la cassette SET, consultez le manuel IBM WebSphere Payment Manager for Multiplatforms, Cassette for SET Supplement, Version 3.1.
![]() |