LXVIII. Fonctions de paiement MCVE

Introduction

Ces fonctions font l'interface avec l'API MCVE (libmcve), et permettent l'accès direct aux fonctions MCVE depuis les scripts PHP. MCVE est la solution de paiement en ligne de Main Street Softworks pour Linux/Unix (http://www.mainstreetsoftworks.com/) qui permet de traiter des cartes de crédits. Il vous permet d'utiliser directement le numéro de carte de crédit, et de l'envoyer à la maison de paiement via votre serveur Unix, avec connexion modem ou internet : il permet de vous passer de services comme Authorize.Net ou Pay Flow Pro). En utilisant le module MCVE de PHP, vous pouvez traiter des cartes de crédit directement depuis vos scripts PHP. La référence suivante va vous décrire le processus.

Note : MCVE est la solution de remplacement pour le module de RedHat CCVS. Ils ont conclu un accord avec RedHat à la fin de l'année 2001 pour migrer tous leurs clients vers la plate-forme MCVE.

Note : Cette extension n'est pas disponible sur les plates-formes Windows.

Installation

Pour activer le support MCVE de PHP commencez par vérifier si la bibliothèque LibMCVE est installée. Vous avez alors à configurer PHP avec l'option --with-mcve. Si vous utilisez cette option sans autres détails, PHP essaiera de trouver la bibliothèque LibMCVE dans son dossier standard (/usr/local). Si MCVE est dans un dossier non standard, utilisez la forme suivante : --with-mcve=$mcve_path, où $mcve_path est le chemin menant à votre installation MCVE. Notez que MCVE requiert que $mcve_path/lib et $mcve_path/include existent, et qu'ils incluent mcve.h dans le dossier include, et libmcve.so et/ou libmcve.a dans le dossier lib.

Comme MCVE vient avec une véritable séparation client/serveur, il n'y a pas de pré-requis supplémentaires pour compiler PHP avec le support MCVE. Pour tester votre extension MCVE avec PHP, connectez-vous au site testbox.mcve.com sur le port 8333 pour le mode IP, ou le port 8444 pour le mode SSL. Utilisez 'vitale' comme nom d'utilisateur et 'test' comme mot de passe. Plus de détails sur ce système de test sont disponibles sur http://www.mainstreetsoftworks.com/.

Voir aussi

Plus de documentation sur l'API PHP de MCVE est disponible à http://www.mainstreetsoftworks.com/docs/phpapi.pdf. La documentation éditée par Main Street est complète et est la source primaire d'informations.

Constantes pré-définies

Ces constantes sont définies par cette extension, et ne sont disponibles que si cette extension a été compilée avec PHP, ou bien chargée au moment de l'exécution.

MC_TRANTYPE (entier)

MC_USERNAME (entier)

MC_PASSWORD (entier)

MC_ACCOUNT (entier)

MC_TRACKDATA (entier)

MC_EXPDATE (entier)

MC_STREET (entier)

MC_ZIP (entier)

MC_CV (entier)

MC_COMMENTS (entier)

MC_CLERKID (entier)

MC_STATIONID (entier)

MC_APPRCODE (entier)

MC_AMOUNT (entier)

MC_PTRANNUM (entier)

MC_TTID (entier)

MC_USER (entier)

MC_PWD (entier)

MC_ACCT (entier)

MC_BDATE (entier)

MC_EDATE (entier)

MC_BATCH (entier)

MC_FILE (entier)

MC_ADMIN (entier)

MC_AUDITTYPE (entier)

MC_CUSTOM (entier)

MC_EXAMOUNT (entier)

MC_EXCHARGES (entier)

MC_RATE (entier)

MC_RENTERNAME (entier)

MC_RETURNCITY (entier)

MC_RETURNSTATE (entier)

MC_RETURNLOCATION (entier)

MC_PRIORITY (entier)

MC_INQUIRY (entier)

MC_CARDTYPES (entier)

MC_SUB (entier)

MC_MARKER (entier)

MC_DEVICETYPE (entier)

MC_ERRORCODE (entier)

MC_NEWBATCH (entier)

MC_CURR (entier)

MC_DESCMERCH (entier)

MC_DESCLOC (entier)

MC_ORIGTYPE (entier)

MC_PIN (entier)

MC_VOIDORIGTYPE (entier)

MC_TIMESTAMP (entier)

MC_PRIO_HIGH (entier)

MC_PRIO_NORMAL (entier)

MC_PRIO_LOW (entier)

MC_USER_PROC (entier)

MC_USER_USER (entier)

MC_USER_PWD (entier)

MC_USER_INDCODE (entier)

MC_USER_MERCHID (entier)

MC_USER_BANKID (entier)

MC_USER_TERMID (entier)

MC_USER_CLIENTNUM (entier)

MC_USER_STOREID (entier)

MC_USER_AGENTID (entier)

MC_USER_CHAINID (entier)

MC_USER_ZIPCODE (entier)

MC_USER_TIMEZONE (entier)

MC_USER_MERCHCAT (entier)

MC_USER_MERNAME (entier)

MC_USER_MERCHLOC (entier)

MC_USER_STATECODE (entier)

MC_USER_PHONE (entier)

MC_USER_SUB (entier)

MC_USER_CARDTYPES (entier)

MC_USER_MODE (entier)

MC_USER_VNUMBER (entier)

MC_USER_ROUTINGID (entier)

MC_USER_PPROPERTY (entier)

MC_USER_PID (entier)

MC_USER_PIDPWD (entier)

MC_USER_SMID (entier)

MC_USER_SMIDPWD (entier)

MC_USER_USDDIV (entier)

MC_USER_AUDDIV (entier)

MC_USER_DKKDIV (entier)

MC_USER_GBPDIV (entier)

MC_USER_HKDDIV (entier)

MC_USER_JPYDIV (entier)

MC_USER_NZDDIV (entier)

MC_USER_NOKDIV (entier)

MC_USER_SGDDIV (entier)

MC_USER_ZARDIV (entier)

MC_USER_SEKDIV (entier)

MC_USER_CHFDIV (entier)

MC_USER_CADDIV (entier)

MC_USER_DIVNUM (entier)

MC_CARD_VISA (entier)

MC_CARD_MC (entier)

MC_CARD_AMEX (entier)

MC_CARD_DISC (entier)

MC_CARD_JCB (entier)

MC_CARD_CB (entier)

MC_CARD_DC (entier)

MC_CARD_GIFT (entier)

MC_CARD_OTHER (entier)

MC_CARD_ALL (entier)

MC_MODE_AUTH (entier)

MC_MODE_SETTLE (entier)

MC_MODE_BOTH (entier)

MC_MODE_ALL (entier)

MC_EXCHARGES_REST (entier)

MC_EXCHARGES_GIFT (entier)

MC_EXCHARGES_MINI (entier)

MC_EXCHARGES_TELE (entier)

MC_EXCHARGES_OTHER (entier)

MC_EXCHARGES_LAUND (entier)

MC_EXCHARGES_NONE (entier)

MC_EXCHARGES_GAS (entier)

MC_EXCHARGES_MILE (entier)

MC_EXCHARGES_LATE (entier)

MC_EXCHARGES_1WAY (entier)

MC_EXCHARGES_VIOL (entier)

MC_TRAN_SALE (entier)

MC_TRAN_REDEMPTION (entier)

MC_TRAN_PREAUTH (entier)

MC_TRAN_VOID (entier)

MC_TRAN_PREAUTHCOMPLETE (entier)

MC_TRAN_FORCE (entier)

MC_TRAN_OVERRIDE (entier)

MC_TRAN_RETURN (entier)

MC_TRAN_RELOAD (entier)

MC_TRAN_CREDIT (entier)

MC_TRAN_SETTLE (entier)

MC_TRAN_INCREMENTAL (entier)

MC_TRAN_REVERSAL (entier)

MC_TRAN_ACTIVATE (entier)

MC_TRAN_BALANCEINQ (entier)

MC_TRAN_CASHOUT (entier)

MC_TRAN_TOREVERSAL (entier)

MC_TRAN_SETTLERFR (entier)

MC_TRAN_ISSUE (entier)

MC_TRAN_TIP (entier)

MC_TRAN_MERCHRETURN (entier)

MC_TRAN_IVRREQ (entier)

MC_TRAN_IVRRESP (entier)

MC_TRAN_ADMIN (entier)

MC_TRAN_PING (entier)

MC_TRAN_CHKPWD (entier)

MC_TRAN_CHNGPWD (entier)

MC_TRAN_LISTSTATS (entier)

MC_TRAN_LISTUSERS (entier)

MC_TRAN_GETUSERINFO (entier)

MC_TRAN_ADDUSER (entier)

MC_TRAN_EDITUSER (entier)

MC_TRAN_DELUSER (entier)

MC_TRAN_ENABLEUSER (entier)

MC_TRAN_DISABLEUSER (entier)

MC_TRAN_IMPORT (entier)

MC_TRAN_EXPORT (entier)

MC_TRAN_ERRORLOG (entier)

MC_TRAN_CLEARERRORLOG (entier)

MC_TRAN_GETSUBACCTS (entier)

MC_ADMIN_GUT (entier)

MC_ADMIN_GL (entier)

MC_ADMIN_GFT (entier)

MC_ADMIN_BT (entier)

MC_ADMIN_UB (entier)

MC_ADMIN_QC (entier)

MC_ADMIN_RS (entier)

MC_ADMIN_CTH (entier)

MC_ADMIN_CFH (entier)

MC_ADMIN_FORCESETTLE (entier)

MC_ADMIN_SETBATCHNUM (entier)

MC_ADMIN_RENUMBERBATCH (entier)

MC_ADMIN_FIELDEDIT (entier)

MC_ADMIN_CLOSEBATCH (entier)

MCVE_UNUSED (entier)

MCVE_NEW (entier)

MCVE_PENDING (entier)

MCVE_DONE (entier)

MCVE_GOOD (entier)

MCVE_BAD (entier)

MCVE_STREET (entier)

MCVE_ZIP (entier)

MCVE_UNKNOWN (entier)

MCVE_ERROR (entier)

MCVE_FAIL (entier)

MCVE_SUCCESS (entier)

MCVE_AUTH (entier)

MCVE_DENY (entier)

MCVE_CALL (entier)

MCVE_DUPL (entier)

MCVE_PKUP (entier)

MCVE_RETRY (entier)

MCVE_SETUP (entier)

MCVE_TIMEOUT (entier)

MCVE_SALE (entier)

MCVE_PREAUTH (entier)

MCVE_FORCE (entier)

MCVE_OVERRIDE (entier)

MCVE_RETURN (entier)

MCVE_SETTLE (entier)

MCVE_PROC (entier)

MCVE_USER (entier)

MCVE_PWD (entier)

MCVE_INDCODE (entier)

MCVE_MERCHID (entier)

MCVE_BANKID (entier)

MCVE_TERMID (entier)

MCVE_CLIENTNUM (entier)

MCVE_STOREID (entier)

MCVE_AGENTID (entier)

MCVE_CHAINID (entier)

MCVE_ZIPCODE (entier)

MCVE_TIMEZONE (entier)

MCVE_MERCHCAT (entier)

MCVE_MERNAME (entier)

MCVE_MERCHLOC (entier)

MCVE_STATECODE (entier)

MCVE_SERVICEPHONE (entier)

Table des matières
mcve_adduser -- Ajoute un utilisateur MCVE avec une structure usersetup
mcve_adduserarg -- Ajoute une valeur dans une structure de configuration d'utilisateur
mcve_bt -- Lit le total des paiements non finalisés en mode batch
mcve_checkstatus -- Vérifie si une transaction a été complétée
mcve_chkpwd -- Verifie un mot de passe
mcve_chngpwd -- Modifie le mot de passe de l'administrateur
mcve_completeauthorizations --  Retourne le nombre de transactions dans la queue d'autorisation, ainsi que la liste des identifiants
mcve_connect -- Etablit la connexion avec le système MCVE
mcve_connectionerror -- Retourne un message représentant la raison de l'échec de la connexion
mcve_deleteresponse -- Efface une transaction spécifiée dans une structure MCVE_CONN
mcve_deletetrans -- Efface une transaction spécifiée dans une structure MCVE_CONN
mcve_deleteusersetup -- Supprime une structure usersetup
mcve_deluser -- Efface un compte d'utilisateur MCVE
mcve_destroyconn -- Termine une connexion MCVE_CONN
mcve_destroyengine -- Libère la mémoire associée à la connectivité IP/SSL
mcve_disableuser -- Désactive un utilisateur MCVE actif
mcve_edituser -- Modifie la structure usersetup d'un utilisateur
mcve_enableuser -- Active un utilisateur MCVE inactif
mcve_force -- Envoie une commande FORCE à MCVE (généralement une autorisation par téléphone)
mcve_getcell -- Lit une cellule spécifique dans une réponse au format CSV, en utilisant le nom de colonne
mcve_getcellbynum -- Lit une cellule spécifique dans une réponse au format CSV, en utilisant le numéro de colonne
mcve_getcommadelimited -- Lit une ligne brute, au format CSV retournée par MCVE
mcve_getheader -- Lit le nom d'une colonne dans une réponse au format CSV
mcve_getuserarg -- Lit une valeur dans une structure usersetup
mcve_getuserparam -- Lit un paramètre de réponse utilisateur
mcve_gft -- Audite MCVE pour les transactions échouées
mcve_gl -- Audite MCVE pour les transactions finalisées
mcve_gut -- Audite MCVE pour les transactions non conclues
mcve_initconn -- Crée et initialise une structure MCVE_CONN
mcve_initengine -- Prépare le client pour la connexion IP/SSL
mcve_initusersetup -- Initialise une structure pour stocker des données utilisateurs
mcve_iscommadelimited -- Vérifie qu'une réponse est au format MVCE
mcve_liststats -- Liste les statistiques de tous les utilisateurs MCVE
mcve_listusers -- Liste de tous les utilisateurs du système MCVE
mcve_maxconntimeout -- La durée maximum de tentative de connexion à MCVE
mcve_monitor -- Communique avec MCVE (envoie et reçoit des données) sans blocage
mcve_numcolumns -- Nombre de colonnes retournées dans une ligne au format CSV
mcve_numrows -- Nombre de lignes retournées dans une réponse au format CSV
mcve_override -- Envoie une commande OVERRIDE à MCVE
mcve_parsecommadelimited -- Analyse une au format CSV pour que mcve_getcell et consorts fonctionnent
mcve_ping -- Envoie une requête de ping à MCVE
mcve_preauth -- Envoie une commande PREAUTHORIZATION à MCVE
mcve_preauthcompletion -- Complète une PREAUTHORIZATION et la prépare pour la finalisation
mcve_qc -- Audite MCVE pour une liste de transactions dans la queue de sortie
mcve_responseparam -- Lit un paramètre de réponse personnalisé
mcve_return -- Emet une commande RETURN ou CREDIT vers MCVE
mcve_returncode -- Lit le code retourné exact de la transaction
mcve_returnstatus -- Vérifie si la transaction a réussi
mcve_sale -- Envoie une commande de vente (SALE) à MCVE
mcve_setblocking -- Configure la connexion en mode bloquant/non bloquant
mcve_setdropfile -- Configure la connexion en mode Drop-File
mcve_setip -- Configure la connexion en mode IP
mcve_setssl_files --  Spécifie le fichier de clés de certificats si le serveur requiert la vérification des certificats du client
mcve_setssl -- Configure la connexion en mode SSL
mcve_settimeout -- Configure le temps maximum d'une transaction (par transaction)
mcve_settle -- Emet une résolution pour faire un dépôt batch
mcve_text_avs -- Lit une représentation textuelle de return_avs
mcve_text_code -- Lit une représentation textuelle de return_code
mcve_text_cv -- Lit une représentation textuelle de return_cv
mcve_transactionauth -- Lit le numéro d'autorisation de la transaction (alpha-numérique)
mcve_transactionavs -- Lit l'adresse de vérification (Address Verification) dans le statut retourné
mcve_transactionbatch -- Lit le numéro de batch associé à la transaction
mcve_transactioncv -- Lit le statut de CVC2/CVV2/CID
mcve_transactionid -- Lit l'identifiant système unique d'une transaction
mcve_transactionitem -- Lit le numéro d'ITEM d'une transaction dans un batch
mcve_transactionssent -- Vérifie si le tampon de sortie est vide ou pas
mcve_transactiontext -- Lit le message retourné par MCVE ou par l'institution de traitement
mcve_transinqueue -- Nombre de transactions dans la queue client
mcve_transnew -- Démarre une nouvelle transaction
mcve_transparam -- Ajoute un paramètre à une transaction
mcve_transsend -- Finalise et envoie une transaction
mcve_ub -- Lit une liste des paiements en attente en mode batch
mcve_uwait -- Attend x microsecondes
mcve_verifyconnection -- Configure MCVE pour qu'il ping ou pas la connexion, afin d'en vérifier l'existence
mcve_verifysslcert -- Configure MCVE pour qu'il vérifie ou pas le certificat SSL
mcve_void -- Annule (rend VOID) une transaction dans la queue d'attente