Interface ATM2

Interface ATM2. Request to perform a payment

It is recommended this is perform ed after the successful preliminary query (Interface ATM1). If a negative reply was received, it is necessary, upon eliminating the reasons behind it, to repeat this query with the same unique ID (to avoid double funding) until a positive response is received. Payment is considered accepted, if a positive response was received when sending a query <retval>0</retval>.

<w3s.request>
 <wmid> </wmid>
 <sign type=""></sign>
 <payment id="" currency="" test="">
  <purse></purse>
  <price></price>
  <date></date>
  <point></point>
 </payment> 
</w3s.request>
  • query parameters:
name reference comment
wmid WMID that signed a query used for authorization with the keys WM Keeper WinPro or by X.509 certificate WM Keeper WebPro
sign query signature formed out of: wmid + id + currency + test + purse + price + date + point
sign/@type query signature type 1 - signature formed using a special authentication module for keys WM Keeper WinPro, 2 - Signature formed using a X.509 certificate WM Keeper WebPro base64 encoded
payment/@id unique transaction ID unique transaction ID in the Client's system, created by a Client. Set in decimal numbers, in double-quotes, cannot contain more than 18 digits. The unique «id» allows you to query the payment performance when using the same digital signature repeatedly, with the same transaction ID parameters if the response to a query was not received (e.g due to loss of connection, etc.) or unsuccessful query. When repeating a query with the same ID for a payment, received earlier, status of this payment will be restored.
payment/@currency payment currency determines payment currency, "USD"- payment accepted in USD, "EUR" - in Euros.
payment/@test query mode determines query mode and has 2 values, "1"- payment in test mode, "0" - payment in real mode.
payment/purse payment details of the RECIPIENT - is not an obligatory parameter line – 13 symbols, first symbol latin letter Z or E and 12 digits; no space between symbols allowed
payment/price amount, received from the Payer in Eur or USD. Set up in @currency figure with a floating point (point - .(dot) ) for ten and half can look as follows: 10.5; nonsignificant zeroes at the end and a point, if the figure is a counting number it should be omitted, e.g, 10.50 - wrong, 10.5 - correct, 9. - wrong, 9 - correct)
payment/date payment date determines time and date when payment was accepted in local time. Corresponds to the «payment date» field in the document confirming the use of a digital signature. Has a format of YYYYMMDD HH:mm:ss, where YYYY – year, MM – month, DD – date, HH – hours, mm – minutes, ss – seconds
payment/point unique ID of the Digital Signature point of use determines a unique identifier of the location, where digital signature was used. Set up as an integer, decimal number and contains not more than 16 digits. Corresponds to the «unique ID of the Digital Signature point of use» field in the document, confirming digital signature use
  • response format:
<w3s.response>
 <retval></retval>
 <retdesc></retdesc>
 <payment id="" currency="" test="">
  <purse></purse> <price></price>
  <amount></amount>
  <comiss></comiss>
  <rest></rest>
  <date></date>
  <point></point>
  <wmtranid></wmtranid>
  <dateupd></dateupd>
 </payment> 
</w3s.response>
  • response parameters:
name reference comment
retval Status or error code 0 - query successful. other codes show unsuccessful queries processing.
retdesc error text description/empty "error text description. random line from 0 to 255 symbols; encoding: win-1251"
payment/@id unique transaction ID unique transaction ID in the Client's system, created by the Client. Set in decimal numbers, in double-quotes, cannot contain more than 18 digits. The unique «id» allows you to query the payment performance when using the same digital signature repeatedly, with the same transaction ID parameters if the response to a query was not received (e.g due to loss of connection, etc.) or unsuccessful query. When repeating a query with the same ID for a payment, received earlier, the status of this payment will be restored
payment/@currency payment currency determines payment currency, "USD"- payment accepted in USD, "EUR" - in Euros.
payment/@test query mode determines query mode and has 2 values, "1"- payment in test mode, "0" - payment in real mode.
payment/purse payment details of the RECIPIENT line – 13 symbols, first symbol latin letter Z or E and 12 digits; no space between symbols allowed
payment/price amount, received from the Payer in Eur or USD. Set up in @currency figure with a floating point (point - .(dot)) for ten and half can look as follows: 10.5; nonsignificant zeros at the end and a point, if the figure is a counting number should be omitted, e.g, 10.50 - wrong, 10.5 - correct, 9. - wrong, 9 - correct)
payment/date payment date determines time and date when payment was accepted local time. Corresponds to the «payment date» field in the document , confirming digital signature use. Has a format of YYYYMMDD HH:mm:ss, where YYYY – year, MM – month, DD – date, HH – hours, mm – minutes, ss – seconds
payment/point unique ID of the Digital Signature point of use determines the unique identifier of the location where digital signature was used. Set up as an integer, decimal number and contains no more than 16 digits. Corresponds to the «unique ID of the Digital Signature point of use» field in the document confirming the use of digital signature
payment/amount Purse top-up amount figure with a floating point (point - .(dot) ) for ten and half can look as follows: 10.5; nonsignificant zeroes at the end and a point, if the figure is a counting number it should be omitted, e.g, 10.50 - wrong, 10.5 - correct, 9. - wrong, 9 - correct)
payment/comiss Top-up commission figure with a floating point (point - .(dot) ) for ten and half can look as follows: 10.5; nonsignificant zeroes at the end and a point, if the figure is a counting number it should be omitted, e.g, 10.50 - wrong, 10.5 - correct, 9. - wrong, 9 - correct)
payment/rest Remaining balance returns remaining balance available for use. Set up as a decimal number with up to 2 decimal points (point - .(dot)). Next payment can be performed for an amount no bigger than the returned remaining balance
payment/wmtranid WebMoney Transfer Transaction ID unique operation ID
payment/dateupd detailed payment "WebMoney time" detailed payment "WebMoney time". Has a format of YYYYMMDD HH:mm:ss, where YYYY – year, MM – month, DD – date, HH – hours, mm – minutes, ss – seconds

See also:
XML-interfaces to top-up WMZ and WME
XML-interfaces