This interface is available only to registered users. If you wish to register and get access to this interface, please send information on your online project, your IP and URL of your web-site, and purpose for use of this interface to WMID 941977853154 (technical support) via WM Keeper messenger. The Keeper signing requests must have personal passport.
<w3s.request>
<reqn></reqn>
<wmid></wmid>
<sign></sign>
<trans>
<tranid></tranid>
<pursesrc></pursesrc>
<pursedest></pursedest>
<amount></amount>
<period></period>
<pcode></pcode>
<desc></desc>
<wminvid></wminvid>
</trans>
</w3s.request>
| Name | Purpose | Description |
| reqn | Request number | An integer, maximum 15 digits; Should always be greater than the number of previous request submitted!!! |
| wmid | Signer’s WMID | Is used only with WM Keeper Classic authorization method; |
| sign | Request signature | Contains the following parameters: reqn+tranid+pursesrc+pursedest+amount+period+pcode+desc+wminvid. Is used only with WM Keeper Classic authorization method; |
| trans | Transaction parameters | |
| trans\tranid | Transaction number | Transaction number in the senders accounting system; an integer; it should be unique for each transaction (the same tranid should not be used for two transactions); |
| trans\pursesrc | Sender’s WM purse number | |
| trans\pursedest | Recipient’s purse number | |
| trans\amount | Amount of the sum transferred | A floating-point number. Separator – .(point) and for ten and a half it can look like this: 10.5; Empty nulls in the end and the point, if the nuber is integer, must be present, for example: 10.50 – is not valid, 10.5 – is valid, 9. – is not valid, 9 – is valid) |
| trans\period | Maximum protection period allowed in days; An integer in the range 0 – 255; 0 – means that no protection will be used; | |
| trans\pcode | Protection code | Random string in the range of 0 – 255 characters. No spaces in the beginning and in the end; |
| trans\desc | Description of the purchased product or service | Random string in the range of 0 – 255 characters. No spaces in the beginning and in the end; |
| trans\wminvid | Invoice number (in the WebMoney system) | An integer > 0; 0 means that transfer is made without invoice. Maximum is 2^32^-1; |
| trans\onlyauth | Consider recipient’s permission | if 0 – the transfer will be made without considering recipient’s permission; 1 – the transfer will be made only if the recipient allows the transfer (otherwise refund code will be – 35) |
Important! trans\Amount (sum being transferred) value can’t be lower than values specified in the table below:
| Type | Minimal value allowed |
| WMZ | 0.01 |
| WME | 0.01 |
| WMR | 0.01 |
| WMU | 0.01 |
| WMY | 1000 |
| WMB | 2000 |
| WMG | 0.01 |
<w3s.response>
<reqn></reqn>
<retval></retval>
<retdesc></retdesc>
<operation id="n1" ts="n2">
<tranid></tranid>
<pursesrc></pursesrc>
<pursedest></pursedest>
<amount></amount>
<comiss></comiss>
<opertype></opertype>
<period></period>
<wminvid></wminvid>
<orderid></orderid>
<desc></desc>
<datecrt></dateupd>
<dateupd></dateupd>
</operation>
</w3s.response>
| Name | Purpose | Description |
| reqn | Request number | |
| retval | Execution code | 0 – means that the request was executed successfully; Check the execution code table for detailed information; |
| retdesc | Execution code description | |
| operation | Transaction parameters | id defines unique invoice number in the WebMoney system; ts attribute stands for a auxiliary number of the invoice in the WebMoney system; |
| operation\tranid | Transaction number | Transaction number set in the sender’s accounting system; an integer; it should be unique for each transaction (the same tranid should not be used for two transactions); |
| operation\pursesrc | Sender’s WM purse number | |
| operation\pursedest | Recipient’s WM purse number | |
| operation\amount | Amount transferred | A floating-point number. Separator – .(point). And for ten and a half it can look like this: 10.5; Empty nulls in the end and the point, if the nuber is integer, must be present, for example: 10.50 – is not valid, 10.5 – is valid, 9. – is not valid, 9 – is valid) |
| operation\comiss | Fee charged | A floating-point number. Separator – .(point). And for ten and a half it can look like this: 10.5; Empty nulls in the end and the point, if the nuber is integer, must be present, for example: 10.50 – is not valid, 10.5 – is valid, 9. – is not valid, 9 – is valid) |
| operation\opertype | Transfer type | 0 – simple; 4 – code protected; |
| operation\period | Protection period | Maximum protection period allowed in days; An integer in the range 0 – 255; zero means that protection is prohibited; |
| operation\wminvid | Invoice number (in the WebMoney system) | An integer > 0; 0 means that transfer is made without invoice; |
| operation\orderid | Invoice number set by merchant | An integer > 0; 0 means that transfer is made without invoice; |
| operation\desc | Description of the purchased product or service | |
| operation\datecrt | Date and time of the transaction | |
| operation\dateupd | Date and time of the latest transaction status change |
| Code | Description |
| -100 | General parsing error. Incorrect request format. |
| -110 | Requests are sent from a different IP address than the one specified during the registration of the interface in the Technical support |
| -1 | Invalid value in w3s.request/reqn |
| -2 | Invalid value in w3s.request/sign |
| -3 | Invalid value in w3s.request/trans/tranid |
| -4 | Invalid value in w3s.request/trans/pursesrc |
| -5 | Invalid value in w3s.request/trans/pursedest |
| -6 | Invalid value in w3s.request/trans/amount |
| -7 | Invalid value in w3s.request/trans/desc |
| -8 | Field in w3s.request/trans/pcode is too long |
| -9 | Field w3s.request/trans/pcode should not be empty if w3s.request/trans/period > 0 |
| -10 | Field w3s.request/trans/pcode should be empty if w3s.request/trans/period = 0 |
| -11 | Invalid value in w3s.request/trans/wminvid |
| -12 | Identifier sent in w3s.request/wmid is not registered |
| -14 | Signature verification failed |
| -15 | Invalid value in w3s.request/wmid |
| 102 | Requirement of constant increase of w3s.request/reqn parameter was not met |
| 103 | Transaction with the submitted field value w3s.request/trans/tranid was already executed |
| 110 | No access to interface |
| 111 | Attempt of transfer from WM purse which does not belong to WMID used to sign the request; Security trust is also not set. |
| 4, 15, 19, 23 | Internal error when creating transaction |
| 5 | Sender’s WMID was not found |
| 6 | Correspondent was not found |
| 7 | Recipient’s WM purse was not found |
| 11 | Sender’s WM purse was not found |
| 13 | Transaction amount should be >0 |
| 17 | Insufficient amount of funds at the purse |
| 21 | The invoice for this transaction was not found |
| 22 | Code-protected transfer for this invoice is not available |
| 25 | The invoice validity period expired |
| 26 | Different purses should be used for this operation |
| 29 | Types of purses are different |
| 30 | purse doesn’t support direct transfers |
| 35 | Payer is not authorized by correspondent for executing this operation |
| 58 | Limit of the funds on the recipient’s purses exceeded |
Category: XML-Interfaces
This article in other languages: Русский