WorldPay支付网关设计说明.docx
《WorldPay支付网关设计说明.docx》由会员分享,可在线阅读,更多相关《WorldPay支付网关设计说明.docx(11页珍藏版)》请在冰豆网上搜索。
WorldPay支付网关设计说明
WorldPay支付网关设计说明
需求概要说明
1、新增加WorldPay支付网关
2、运营商在选择该支付网关时填写该支付网关的相关信息。
3、用户在进行信用卡支付时,会根据用户所在的业务组所设定的支付网关进行支付。
数据库结构
1.WorldPay(VSPWorldPay支付信息)
说明:
该表用于记录VSP所使用WorldPay支付网关的信息。
Name
Fotmat
Request
Comments
ID
Int
Yes
Primarykey
VMID
Int
Yes
VSPID
InstallationID
Int(11)
Yes
LoginintotheWorldPayAdministrationServer.YoucanfindtheInstallationIDinthelowerrighthandcornerofthescreen.
CallBackPW
Varchar
Yes
Thecallbackpassword,ifyouhavesetitintheWorldPaydatabasevia
CMS.Thisisonlyavailableintheparameterssentinthecallback.Itis
notavailableforsubstitutionintothepagesenttotheshopper.
Status
Int(11)
Yes
PaymentGatewaystatus1normal0pause
参数说明
1.传递的参数列表
Name
Format
Values
Comments
instId
Int
InstallationID
LoginintotheWorldPayAdministrationServer.YoucanfindtheInstallationIDinthelowerrighthandcornerofthescreen.
cartId
Varchar
Aparameterforyourownreferencewhichallowyoutotracktheorder.Itisreturnedtothemerchant byemailand/orservercallbackdependingonhowyouhavechosenbeinformedofthepurchase.
testmode
Numeric.
0,100,101
ForlivetransactionstestModeisset"0".
Fornormaltestingwhichalwaysresultsinasuccessfulauthorisationfortheorder,thisissetto100.
Fortestnonsuccessfultransactionsthevalueissetto101.
Canbeusedbythemerchanttoputtheaccountintotestmode. Thisallowstestpurchasestobemadewithoutusingacreditcart.
Fornormaltestingwhichalwaysresultsinasuccessfulauthorisationfortheorder,thisissetto100.
Fortestnonsuccessfultransactionsthevalueissetto101.
ForlivetransactionstestModeisset"0".
currency
Alphanumeric
3characters
A3letterISOcoderepresentingcurrencyusedforpayment.ForexampleUSDrepresentsUnitedStatesdollars,GBPBritishpoundsandEUREuros.
A3letterISOcoderepresentingcurrencyusedforpayment.ForexampleUSDrepresentsUnitedStatesdollars,GBPBritishpoundsandEUREuros.
desc
Alphanumeric
Max100characters
Freetextdescriptionofgoodsor
servicesbeingpurchased
Abriefdescriptionoftheitemsordered(upto255characters).Thisisusedintheorderpage,statementsandemailsformerchantandcustomer.Ifthedescriptionismorethan255charactersthenthefulldetailsaresentviaemail.
amount
Numeric
4characters
Adecimalnumberusedbytheshoppingcartgivingthetotalcostofthepurchaseintermsofthecurrencyunitchosenbythemerchant.
2.返回的参数列表
Name
Format
Values
Comments
testMode
int
ForlivetransactionstestModeisset"0".
Fornormaltestingwhichalwaysresultsinasuccessfulauthorisationfortheorder,thisissetto100.
Fortestnonsuccessfultransactionsthevalueissetto101.
Canbeusedbythemerchanttoputtheaccountintotestmode. Thisallowstestpurchasestobemadewithoutusingacreditcart.
Fornormaltestingwhichalwaysresultsinasuccessfulauthorisationfortheorder,thisissetto100.
Fortestnonsuccessfultransactionsthevalueissetto101.
ForlivetransactionstestModeisset"0".
authCost
varchar
Adecimalnumberusedbytheshoppingcartgivingthetotalcostofthepurchaseintermsofthecurrencyunitchosenbythemerchant.
currency
varchar
A3letterISOcoderepresentingcurrencyusedforpayment.ForexampleUSDrepresentsUnitedStatesdollars,GBPBritishpoundsandEUREuros.
address
varchar
Thepostaladdressof
theshopper,as
enteredonthe
paymentform.
countryString
varchar
Thefullnameofthecountry,derivedfromthecountrycodesubmitted
toinitiatethispurchaseorsuppliedbytheshopper
callbackPW
Varchar
Thecallbackpassword,ifyouhavesetitintheWorldPaydatabasevia
CMS.Thisisonlyavailableintheparameterssentinthecallback.Itis
notavailableforsubstitutionintothepagesenttotheshopper.
installation
varchar
TheinstallationID
fax
varchar
Thefaxnumberofthe
shopper,asentered
onthepaymentform.
countryMatch
varchar
Y:
match
N:
nomatch(ie.mismatch)
B:
comparisonnotavailable
I:
contactcountrynotsupplied
S:
cardissuecountrynotavailable
Asinglecharacterdescribingtheresultofthecomparisonofthe
shopper'scontactcountry(wheresupplied)andtheissuecountryofthe
cardusedbytheshopper(whereavailable).Notethatthisparameteris
retainedforbackwardcompatibilty-equivalentinformationisnow
providedaspartoftheAVSresults(seeAVSbelow).
transId
Varchar
TheWorldPayIDforthistransaction
AVS
varchar
A4-characterstringgivingtheresultsof4internalfraud-relatedchecks.
Thecharactersrespectivelygivetheresultsofthefollowingchecks:
amountString
varchar
AnHTMLstringproducedfromtheamountandcurrencythatwere
submittedtoinitiatethispurchase
postcode
varchar
Thepostalcodeofthe
shopper'saddress,as
enteredonthe
paymentform.
msgType
varchar
authResult
name
varchar
Thenameofthe
shopper,asentered
onthepaymentform.
tel
varchar
Thetelephonenumber
oftheshopper,as
enteredonthe
paymentform.
transStatus
Varchar
Resultofthistransaction-"Y"forasuccessfulpaymentauthorisation,
"C"foracancelledpayment(notethatasacustomeryouwillneversee
adeclinedpaymentastheshopperisalwaysgiventheoptionof
retryingwithanothermeansofpayment,orelsecancellingthe
payment).
desc
Int
CustomerID
cardType
Varchar
Thetypeofcardusedbytheshopper.
lang
varchar
Shopper'slanguagechoiceas2characterISO639code,with
optionalregionalisationusing2charactercountrycodeseparatedby
hyphen.Forexample"en-GB"specifiesUKEnglish.Theshoppercan
alwayschoosealanguageontheWorldPaypagesorviabrowser
preferencesbutifyoursitehasalreadymadethischoicethenyou
canmakethingsmoreconvenientbysubmittingittous.
transTime
Longint
Timeofthistransactioninmillisecondssincethestartof1970GMT.This
isthestandardsystemdateinJava,andisalso1000xthestandardC
time_ttime.
authAmountString
Varchar
HTMLstringproducedfromauthorisationamountandcurrency
authAmount
decimal
Amountthatthistransactionwasauthorisedfor,inthecurrencygiven
asauthCurrency.
ipAddress
varchar
Theipaddressofshopper
cost
varchar
Adecimalnumbergivingthecostofthepurchaseintermsofthe
majorcurrencyunite.g.12.56wouldmean12poundsand56pence
ifthecurrencywereGBP(PoundsSterling).Notethatthedecimal
separatormustbeadot(.),regardlessofthetypicallanguage
conventionforthechosencurrency.Thedecimalseparatordoesnot
needtobeincludediftheamountisanintegralmultipleofthemajor
currencyunit.Donotincludeotherseparators,forexamplebetween
thousands.
instId
Varchar
TheWorldPayIDforthisinstallation
amount
varchar
Adecimalnumbergivingthecostofthepurchaseintermsofthe
majorcurrencyunite.g.12.56wouldmean12poundsand56pence
ifthecurrencywereGBP(PoundsSterling).Notethatthedecimal
separatormustbeadot(.),regardlessofthetypicallanguage
conventionforthechosencurrency.Thedecimalseparatordoesnot
needtobeincludediftheamountisanintegralmultipleofthemajor
currencyunit.Donotincludeotherseparators,forexamplebetween
thousands.
compName
varchar
Nameofthecompanyassociatedwiththisinstallation
country
varchar
The2-letterISOcode
forthecountryofthe
shopper,asselected
onthepaymentform.
rawAuthMessage
Varchar
Textreceivedfromthebank(typicallyincludinganauthorisationcode,
orareasonforfailure).
email
varchar
Theemailaddress
theshopper,as
enteredonthe
paymentform.
authCurrency
Varchar
Thecurrencyusedforauthorisation.
rawAuthCode
Varchar
Asingle-characterbank(orinternalWorldPay)authorisationcode.This
isretainedforbackwardcompatibility.'A'means'authorised'andis
directlyequivalenttotransStatus='Y'.Failedtransactionsmayhavea
varietyofauthcodeswhichareusuallyexplainedmorefullyinthe
rawAuthMessageparameter.
cartId
varchar
Theuniquereference
suppliedbythe
merchantatthetime
ofthetransaction.
authMode
varchar
Specifiestheauthorisationmodetouse.Thisisonlyneededifyou
haveaccountswithdifferentauthorisationmodes,inordertospecify
whichtypeofaccounttouse.Ifthereisnoaccountwithamatching
authModethenthetransactionisrejected.Thevaluesare"A"fora
fullauth,or"E"forapre-auth.Intheresponse,thisparametercan
alsotakethevalue"O"whenperformingapost-auth(ontheadmin
serverorotherwise).
详细设计
1、系统在添加一个支付网关时,在数据库中添加相应的支付网关与相应的程序。
VSP选择一个系统支持的且VSP已注册的支付网关,然后填写相关的支付网关信息。
VSP为业务组选择一个已申请的支付网关。
用户在进行支付时,所根据用户所在的业务组设置的支付网关进行支付。
2、在业务组参数设置里选择一个支付网关,该参数为必选项。
说明:
VSP支付网关里的状态表示,如果VSP将某一个支付的状态设置暂停使用,使用的该支付网关的业务组下的用户,在使用信用卡支付时提示用户暂时无法使用信用卡进行支付。
返回参数
Array([testMode]=>100[authCost]=>5.0[currency]=>NZD[address]=>guangdongshenzhen[countryString]=>China[callbackPW]=>123456[installation]=>97777[fax]=>[countryMatch]=>B[transId]=>149339616[AVS]=>0000[amountString]=>NZ$5.00[postcode]=>[msgType]=>authResult[name]=>leo[tel]=>[transStatus]=>Y[desc]=>47[cardType]=>Visa[lang]=>en[transTime]=>1135158210338[authAmountString]=>NZ$5.00[authAmount]=>5.0[ipAddress]=>210.22.7.147[cost]=>5.0[instId]=>97777[amount]=>5.0[compName]=>COMBINEDTECHNOLOGYNZLTD[country]=>CN[rawAuthMessage]=>cardbe.msg.testSuccess[email]=>***************[authCurrency]=>NZD[rawAuthCode]=>A[cartId]=>123456aaaa[authMode]=>A)
支付流程