WebMoney
Overview
WebMoney is a payment method that allows you to process payments by using WM e-wallets. Purchases can be processed by using Payment Page and Gate, payouts and refunds are processed by using Gate and Dashboard. Download the logo in vector format here. |
Payment method type | E-wallet payments |
---|---|
Countries and regions | Global |
Payment currencies | WMZ (USD), WME (EUR), WMK (KZT) |
Currency conversion | On the Monetix side (For more information about currency conversion, see Currency conversion) |
Purchases | |
Payouts | |
COF payments | |
Full refunds | |
Partial refunds | |
Chargebacks | |
Notes |
|
Onboarding and access fee | Refer to your key account manager at Monetix. |
Interaction diagram
Payment processing by using the WebMoney payment method requires the merchant web service, one of the Monetix interfaces, and the Monetix payment platform, as well as the WebMoney service.
Operations support
Interfaces | Amounts | Times | |||||
---|---|---|---|---|---|---|---|
Payment Page | Gate | Dashboard | minimum | maximum | basic | threshold | |
Purchases | 0,01 in any title units |
Depending on a WM passport* |
Under 1 minute | 35 days | |||
Payouts | 0,01 in any title units |
Depending on a WM passport* |
Under 1 minute | 35 days | |||
Full refunds | 0,01 in any title units |
Depending on a WM passport* |
Under 1 minute | 35 days | |||
Partial refunds | 0,01 in any title units |
Depending on a WM passport* |
Under 1 minute | 35 days |
* Each of the WebMoney service member has a WM passport, which is a digital certificate issued based on the personal data provided by the member. Maximum amount limits may vary depending on the type of WM passport.
You can check the payment amount limits in your project by using Dashboard. To check your payment amount limits, go to Dashboard, select the Projects section and click the Payment methods tab.
Processing scenarios
- The WebMoneyLight purchase—customer redirection to the WebMoney form.
- The WebMoneyClassic purchase—customer invoicing in the merchant web service.
Payout and refund processing involves sending notification to customers from the merchant web service.
The sections that follow provide detailed information about what you need to perform payments and how you can analyze the information on payments and operations.
Purchase by using Payment Page
General information
- The WebMoneyLight purchase—customer redirection to the WebMoney form.
- The WebMoneyClassic purchase—customer invoicing in the merchant web service.
You can enable different scenarios for the projects. For more information about enabling different purchase scenarios, contact your key account manager at Monetix. When processing any of the purchase scenarios by using Payment Page, the merchant's web service is required to send a request with all the required parameters and signature to the Monetix URL and accept a callback with the payment result from the payment platform. When opening Payment Page, you can either allow your customer to select the WebMoneyLight or WebMoneyClassic purchase from the list of other payment methods on Payment Page or have Payment Page opened with one of them pre-selected. For more information about preselecting payment methods, see Preselecting payment methods.
The following diagrams provide the detailed picture of the payment processing procedure.
- The customer initiates a purchase by using the web service.
- The merchant's web service sends to the specified Monetix URL the purchase request for processing the purchase by using Payment Page.
- The payment platform receives the request for processing the purchase by using Payment Page.
- The payment platform performs the initial request processing that involves validation of the required parameters and signature.
- Requested Payment Page is generated in the Monetix payment platform as specified in the project settings and the request parameters.
- Payment Page is displayed to the customer.
- The customer selects the WebMoneyLight purchase from the list of other payment methods and agrees to use the method (or accepts the method already selected on Payment Page and agrees).
- The payment platform receives the purchase request for payment processing in the WebMoney service.
- The payment platform performs the internal purchase request processing and sends it to the WebMoney service.
- The purchase request is processed in the WebMoney service.
- The WebMoney service generates the data for redirecting the customer to the WebMoney form and sends it to the payment platform.
- The payment platform sends to Payment Page the data for redirecting the customer to the WebMoney form.
- The customer is redirected to the WebMoney form.
- The customer completes all the payment steps required by the WebMoneyLight purchase method.
- The payment is processed in the WebMoney service.
- The payment result information is displayed to the customer on the WebMoney form. The customer initiates redirection to the result waiting page on Payment Page.
- The WebMoney service sends the payment result notification to the payment platform.
- The payment platform sends the callback to the web service.
- The payment platform sends payment results to Payment Page.
- A page with the payment result information is displayed to the customer.
- The customer initiates a purchase by using the web service.
- The merchant's web service sends to the specified Monetix URL the purchase request for processing the purchase by using Payment Page.
- The payment platform receives the request for processing the purchase by using Payment Page.
- The payment platform performs the initial request processing that involves validation of the required parameters and signature.
- Requested Payment Page is generated in the Monetix payment platform as specified in the project settings and the request parameters.
- Payment Page is displayed to the customer.
- The customer selects the WebMoneyClassic purchase from the list of other payment methods and agrees to use the method (or accepts the method already selected on Payment Page and agrees).
- The payment platform receives the purchase request for payment processing in the WebMoney service.
- The notification saying that the customer is required to visit the WebMoney Keeper service and pay the invoice is displayed to the customer.
- The payment platform performs the internal purchase request processing and sends it to the WebMoney service.
- The WebMoney service performs the purchase request processing and issues the invoice.
- The WebMoney service sends to the payment platform a response containing invoice issuing confirmation.
- The customer uses the WebMoney Keeper service to pay the invoice.
- The payment is processed in the WebMoney service.
- The WebMoney service sends the payment result notification to the payment platform.
- The payment platform sends the callback to the web service.
- The payment platform sends payment results to Payment Page.
- A page with the payment result information is displayed to the customer.
The sections that follow discuss in more details the request format and the Payment Page parameters to use in the WebMoney method and provide the information on the format of callbacks with payment results. For the general information on how to use the API, see Payment Page API Description.
Request format
There are several things you need to consider when using the WebMoney method:
- You must provide values for the basic minimum of parameters. Listed below are the parameters that are mandatory for any payment method:
- project_id—the project ID obtained from Monetix
- payment_id—payment ID unique within the project
- payment_currency—payment currency in ISO-4217 alpha-3 format
- payment_amount—payment amount in minor currency units without any decimal point or comma except for cases where the currency does not have any minor currency units. If the currency has no minor units (that is, the number of digits for minor currency units is zero), then you must set this parameter to the amount in the major currency units. For the information on whether the currency has any minor units, see Currency codes.
- customer_id—customer ID unique within the project
- customer_first_name—customer first name
- customer_last_name—customer last name
- customer_email—customer email
- Additionally, you need to use the following parameters:
- payment_description—payment description.
Payment description should be specified in the request as follows:
Top-up of personal account №<customer's bank account number> on the website <URL of the merchant web service>
. Example:Top-up of personal account №01234567890 on the website https://merchant.example.com
- payment_description—payment description.
- If you need to have Payment Page displayed with the WebMoneyLight or WebMoneyClassic purchase method selected, set the force_payment_method parameter to either of the following:
webmoney-light
—the WebMoneyLight purchase methodwebmoney
—the WebMoneyClassic purchase method
- If required, you can also add any other additional parameters Payment Page supports.
- After you specify all the parameters you need, you must create the signature for the request. For instructions on how to sign a payment request, see Signature generation and verification.
Here is an example of the data from a purchase request.
EPayWidget.run( { payment_id: 'ECT_TEST_1534835032773, payment_amount: 100, payment_currency: 'USD', project_id: 238, customer_id: 'customer1', customer_first_name: 'John', customer_last_name: 'Doe', customer_email: 'johndoe@example.com', payment_description: 'Top-up of personal account №01234567890 on the website https://merchant.example.com/', signature: "2tlMuYxLW9Yu6RETr8pdCfmi0UPE8euD+2QgJ...==" } )
For information about all parameters available in the WebMoney method, see Payment Page invocation parameters.
Callback format
In the WebMoney method, the callbacks that deliver purchase results use the standard format described in Callbacks in Payment Page.
Note that unlike other payment methods, in the WebMoney method, the callbacks include the payment ID that is generated by the WebMoney service and is passed in the payment_id
parameter of the provider
object. The successful purchase callbacks always contain the payment_id
parameter value, but the declined purchase callbacks may not contain the parameter value.
The following example of callback contains information about a successful 1.00 USD
WebMoneyClassic purchase made in the 238
project by using the R123456890000
customer WM wallet. Payment ID generated by the WebMoney service is 1592901328.
{ "project_id": 238, "payment": { "id": "ECT_TEST_1534835032773", "type": "purchase", "status": "success", "date": "2018-08-21T07:05:53+0000", "method": "webmoney", "sum": { "amount": 100, "currency": "USD" }, "description": "ECT_TEST_1534835032773" }, "account": { "number": "R703276019842" }, "operation": { "id": 167000001094, "type": "sale", "status": "success", "date": "2018-08-21T07:05:53+0000", "created_date": "2018-08-21T07:05:12+0000", "request_id": "765fc31fbb98a4ac937bbdadb3303f1d13eead ec - 917 f825e85cce20981b0686599cb14b7f383d0e6 ", "sum_initial": { "amount": 100, "currency": "USD" }, "sum_converted": { "amount": 100, "currency": "USD" }, "provider": { "id": 1082, "payment_id": "1592901328", "date": "2018-08-21T10:05:51+0000", "auth_code": "" }, "code": "0", "message": "Success" }, "signature": "nEIk8lTBATPQXhZAqkiEzraA88Tgjx45cPP18thE/9iEkS lE9TS20z01H7 / 8 nvHU2Dz + Dp1goRozWpQRXmL6jA == " }
The following example of callback is for a payment rejected due to amount or frequency limitation and does not contain the payment ID generated by the WebMoney service.
{ "project_id": 238, "payment": { "id": "ECT_TEST_154477095843411111", "type": "purchase", "status": "decline", "date": "2018-12-14T09:41:30+0000", "method": "webmoney-light", "sum": { "amount": 1000000000, "currency": "USD" }, "description": "ECT_TEST_154477095843411111" }, "operation": { "id": 13290000002280, "type": "sale", "status": "decline", "date": "2018-12-14T09:41:30+0000", "created_date": "2018-12-14T08:41:29+0000", "request_id": "a52dc11e9d57fa3a8649671e5599544fcfc50d 0 f - ebbce425f52073d89f96c67686feefe5ab01c1fd ", "sum_initial": { "amount": 100, "currency": "USD" }, "sum_converted": { "amount": 100, "currency": "USD" }, "provider": { "id": 1083, "payment_id": "", "auth_code": "" }, "code": "20101", "message": "Decline due to amount or frequency limit" }, "signature": "ukUg6gJ6RtUc2qeXTNE+iDyEh4HdikHuMaCZ4Hju sN + uJA8Ze7RVztvlyWhtiXUjrL14pplG7ustFhJIJdDkvw == " }
Related topics
The following topics might be useful when implementing payments by using Payment Page:
Purchase by using Gate
General information
In the WebMoney method, there are two purchase scenarios. The WebMoneyLight purchase involves customer redirection to the WebMoney form. The WebMoneyClassic purchase involves customer invoicing in the merchant's web service. You can enable different scenarios for the projects. For more information about enabling different purchase scenarios, contact your key account manager at Monetix.
When processing any of the purchase scenarios by using Gate, the merchant's web service is required to do the following:
- Send a request with all the required parameters and signature to the Monetix URL.
- Interact with customer:
- When performing a purchase with the WebMoneyLight, perform redirecting customer to the WebMoney form.
- When performing a purchase with the WebMoneyClassic, send the invoice payment notification to the customer.
- Get the callback with the payment result from the payment platform.
The following diagrams provide the detailed picture of the payment processing procedure.
- The customer initiates a purchase on the merchant's web service by using the WebMoneyLight purchase method.
- The web service sends the request for processing the purchase by using Gate to the specified Monetix URL.
- The payment platform receives the request for processing the purchase by using Gate.
- The payment platform performs the initial request processing that includes validation of the required parameters and signature.
- The payment platform sends to the web service a response with request receipt confirmation and correctness check result.
- The payment platform performs the internal payment request processing and sends it to the WebMoney service.
- The purchase request is processed in the WebMoney service.
- The WebMoney service generates the data for redirecting the customer to the WebMoney form and sends it to the payment platform.
- The payment platform sends to the web service the callback that delivers the data for redirecting the customer to the WebMoney form.
- The customer is redirected to the WebMoney form.
- The customer completes all the payment steps required by the WebMoneyLight purchase method.
- The payment is processed in the WebMoney service.
- The payment result information is displayed to the customer on the WebMoney form. The customer initiates redirection to the result waiting page on Payment Page.
- The WebMoney service sends the payment result notification to the payment platform.
- The payment platform sends the callback to the web service.
- The customer receives the payment result from the web service.
- The customer initiates a purchase on the merchant's web service by using the WebMoneyClassic method.
- The web service sends the request for processing the purchase by using Gate to the specified Monetix URL.
- The payment platform receives the request for processing the purchase by using Gate.
- The payment platform performs the initial request processing that includes validation of the required parameters and signature.
- The payment platform sends to the web service response with request receipt confirmation and correctness check result.
- The notification is displayed to customer and contains information that it is required to visit the WebMoney Keeper service and pay the invoice.
- The payment platform performs the internal payment request processing and sends it to the WebMoney service.
- The WebMoney service performs the purchase request processing and issues the invoice.
- The WebMoney service sends to the payment platform response contained invoice issuing confirmation.
- The customer uses the WebMoney Keeper service to pay the invoice.
- The payment is processed in the WebMoney service.
- The WebMoney service sends the payment result notification to the payment platform.
- The payment platform sends the callback to the web service.
- The customer receives the payment result from the web service.
The sections that follow discuss in more details the request format and the Gate parameters to use in the WebMoney method and provide the information about formats of the data for redirecting customers and the information about the format of callbacks with payment results. For the general information on how to use the API, see API Description. For the general information on how to use the response with request receipt confirmation, see Integration procedure.
Request format
There are several things you must consider when using purchase requests in the WebMoney method:
- You perform purchase by sending following requests by using POST (HTTP) method:
- /v2/payment/webmoney-light/sale—the WebMoneyLight purchase
- /v2/payment/webmoney/sale—the WebMoneyClassic purchase
- You must provide values for the basic minimum of the following objects and parameters:
- general—object with general request information:
- project_id—the project ID obtained from Monetix
- payment_id—payment ID unique within the project
- signature—signature created after you specify all the required parameters. For more information about signature generation, see Signature generation and verification.
- payment—object with payment information:
- amount—purchase amount in minor currency units without any decimal point or comma except for cases where the currency does not have any minor currency units. If the currency have no minor units (that is, the number of digits for minor currency units is zero), then you must set this parameter to the amount in the major currency units. For the information on whether the currency has any minor units, see Currency codes.
- currency—payment currency in ISO-4217 alpha-3 format
- customer—object with customer information:
- id—customer ID unique within the project
- ip_address—customer device IP
- first_name—customer first name
- last_name—customer last name
- email—customer email
- account—object with customer account information:
- number—customer WMID that is the customer's ID in the WebMoney service. Only for the WebMoneyClassic purchase
- general—object with general request information:
- Additionally, you need to use the following parameters:
- payment—object with payment information:
- description—payment description.
Payment description should be specified in the request as follows:
Top-up of personal account №<customer's bank account number> on the website <URL of the merchant web service>
. Example:Top-up of personal account №01234567890 on the website https://merchant.example.com
- description—payment description.
- payment—object with payment information:
- The following parameters with the return URLs are optional, but we strongly advise you to specify them in the request to provide your customer a better user experience. If you don't specify any parameters of the return_url object in the request, by default Gate will redirect the customer to the URL specified in your project in Monetix.
- return_url—object with the information where to redirect the customer to when the payment is completed or prematurely terminated by the customer:
- success—the URL to redirect the customer to after the payment is successfully completed.
- decline—the URL to redirect the customer to after the payment is declined.
- return—the URL to redirect the customer to when they prematurely terminate the payment. This URL is also used if the success and decline parameters are not specified in the request.
- return_url—object with the information where to redirect the customer to when the payment is completed or prematurely terminated by the customer:
- If required, you can also add any other additional parameters Gate supports.
Here is an example of the data from a purchase request for WebMoneyLight.
{ "general": { "project_id": 238, "payment_id": "ECT_TEST_1534835032773", "signature": "2tlMuYxLW9Yu6RETr8pdCfmi0UPE8euD+2QgJ...==" }, "customer": { "id": "customer1", "ip_address": "198.51.100.47", "first_name": "John", "last_name": "Doe", "email": "johndoe@email.com" }, "payment": { "amount": 100, "currency": "USD", "description": "Top-up of personal account №01234567890 on the website https://merchant.example.com/" }, "return_url": { "success": "https://example.com/success/", "decline": "https://example.com/decline/", "return": "https://example.com/return/" } }
Here is an example of the data from a purchase request for WebMoneyClassic.
{ "general": { "project_id": 238, "payment_id": "ECT_TEST_1534835032773", "signature": "2tlMuYxLW9Yu6RETr8pdCfmi0UPE8euD+2QgJ...==" }, "payment": { "amount": 100, "currency": "USD", "description": "Top-up of personal account №01234567890 on the website https://merchant.example.com/" }, "customer": { "id": "customer1", "ip_address": "198.51.100.47", "first_name": "John", "last_name": "Doe", "email": "johndoe@email.com" }, "account": { "number": "377094062589" }, "return_url": { "success": "https://example.com/success/", "decline": "https://example.com/decline/", "return": "https://example.com/return/" } }
Format of customer redirection data
After receiving and processing your purchase request, the payment platform sends a callback to your web service containing the data to redirect the customer to the WebMoney service.
To redirect the customer, use the values of the following parameters in the redirect_data object:
- url—the URL to redirect the customer to
- body—the data to be sent in the request body
- method—the HTTP method to get an HTML page of the website (for example, POST or GET). The value of the Content-Type header must be
x-www-form-urlencoded
- encrypted—this is the service parameter. Ignore the data it contains.
Here is an example of a piece of callback containing the data to redirect the customer.
"redirect_data": { "method": "POST", "body": { "example_parameter_1": "value_1", "example_parameter_2": "value_2" }, "encrypted": [], "url": "https://example.com/redirect" }
Format of callback with purchase results
In the WebMoney method, the callbacks that deliver purchase results use the standard format described in Callbacks in Gate.
Note that unlike other payment methods, in the WebMoney method, the callbacks include the payment ID that is generated by the WebMoney service and is passed in the payment_id
parameter of the provider
object. The successful purchase callbacks always contain the payment_id
parameter value, but the declined purchase callbacks may not contain the parameter value.
The following example of callback contains information about a successful 1.00 USD
WebMoneyClassic purchase made in the 238
project by using the R123456890000
customer WM wallet. Payment ID generated by the WebMoney service is 1592901328.
{ "project_id": 238, "payment": { "id": "ECT_TEST_1534835032773", "type": "purchase", "status": "success", "date": "2018-08-21T07:05:53+0000", "method": "webmoney", "sum": { "amount": 100, "currency": "USD" }, "description": "ECT_TEST_1534835032773" }, "account": { "number": "R703276019842" }, "operation": { "id": 167000001094, "type": "sale", "status": "success", "date": "2018-08-21T07:05:53+0000", "created_date": "2018-08-21T07:05:12+0000", "request_id": "765fc31fbb98a4ac937bbdadb3303f1d13eead ec - 917 f825e85cce20981b0686599cb14b7f383d0e6 ", "sum_initial": { "amount": 100, "currency": "USD" }, "sum_converted": { "amount": 100, "currency": "USD" }, "provider": { "id": 1082, "payment_id": "1592901328", "date": "2018-08-21T10:05:51+0000", "auth_code": "" }, "code": "0", "message": "Success" }, "signature": "nEIk8lTBATPQXhZAqkiEzraA88Tgjx45cPP18thE/9iEkS lE9TS20z01H7 / 8 nvHU2Dz + Dp1goRozWpQRXmL6jA == " }
The following example of callback is for a payment rejected due to amount or frequency limitation and does not contain the payment ID generated by the WebMoney service.
{ "project_id": 238, "payment": { "id": "ECT_TEST_154477095843411111", "type": "purchase", "status": "decline", "date": "2018-12-14T09:41:30+0000", "method": "webmoney-light", "sum": { "amount": 1000000000, "currency": "USD" }, "description": "ECT_TEST_154477095843411111" }, "operation": { "id": 13290000002280, "type": "sale", "status": "decline", "date": "2018-12-14T09:41:30+0000", "created_date": "2018-12-14T08:41:29+0000", "request_id": "a52dc11e9d57fa3a8649671e5599544fcfc50d 0 f - ebbce425f52073d89f96c67686feefe5ab01c1fd ", "sum_initial": { "amount": 100, "currency": "USD" }, "sum_converted": { "amount": 100, "currency": "USD" }, "provider": { "id": 1083, "payment_id": "", "auth_code": "" }, "code": "20101", "message": "Decline due to amount or frequency limit" }, "signature": "ukUg6gJ6RtUc2qeXTNE+iDyEh4HdikHuMaCZ4Hju sN + uJA8Ze7RVztvlyWhtiXUjrL14pplG7ustFhJIJdDkvw == " }
Related topics
The following topics might be useful when implementing payments by using Gate:
Refund by using Gate
General information
The WebMoney method supports full and partial refunds processing. When processing a refund by using Gate, the merchant's web service is required to send a request with all the required parameters and signature to the Monetix URL and get the callback with the payment result from the payment platform.
The following diagrams provide the detailed picture of the payment processing procedure.
- The customer initiates a refund in the web service.
- The web service sends the request for processing the refund by using Gate to the specified Monetix URL.
- The payment platform receives the request for processing the refund by using Gate.
- The payment platform performs the initial request processing that includes validation of the required parameters and signature.
- The payment platform sends to the web service a response with the request receipt confirmation and correctness check result.
- The payment platform performs the internal payment request processing and sends it to the WebMoney service.
- The payment is processed in the WebMoney service.
- The WebMoney service sends the payment result notification to the payment platform.
- The payment platform sends the callback to the web service.
- The customer receives the payment result from the web service.
The sections that follow discuss in more details the request format and the Gate parameters to use in the WebMoney method and provide the information about the format of callbacks with payment results. For the general information on how to use the API, see API Description. For the general information on how to use the response with request receipt confirmation, see Integration procedure.
Request format
There are several things you must consider when using refund requests in the WebMoney method:- You perform refund by sending the request to the /v2/payment/webmoney/refund ednpoint by using the POST HTTP method.
- You must provide values for the basic minimum of the following objects and parameters:
- general—object that contains general request identification information:
- project_id—the project ID obtained from Monetix
- payment_id—ID of the payment that the refund is made for.
- signature—signature created after you specify all the required parameters. For more information about signature generation, see Signature generation and verification.
- payment—object that contains refund information:
- description—comment or description
- amount—refund amount in minor currency units without any decimal point or comma except for cases where the currency does not have any minor currency units. If the currency has no minor units (that is, the number of digits for minor currency units is zero), then you must set this parameter to the amount in the major currency units. For the information on whether the currency has any minor units, see Currency codes.
The parameter is required only for partial refund.
- currency—refund currency in ISO-4217 alpha-3 format.
The parameter is required only for partial refund.
- general—object that contains general request identification information:
- If required, you can also add any other additional parameters Gate supports.
Here is an example of the data from a refund request.
{ "general": { "project_id": 35, "payment_id": "Payment 12", "signature": "2tlMuYxLW9Yu6RETr8pdCfmi0UPE8euD+2QgJ...==" }, "payment": { "amount": 100, "currency": "USD", "description": "refund" } }
Callback format
In the WebMoney method, the callbacks that deliver refund results use the standard format described in Callbacks in Gate.
Note that unlike other payment methods, in the WebMoney method, the callbacks include the payment ID that is generated by the WebMoney service and is passed in the payment_id
parameter of the provider
object. The successful refund callbacks always contain the payment_id
parameter value, but the declined refund callbacks may not contain the parameter value.
The following example of callback contains information about a successful 1.00 USD
partial refund made in the 238
project. Payment ID generated by the WebMoney service is 1592975261
.
{ "project_id": 238, "payment": { "id": "ECT_TEST_1534835032773", "type": "purchase", "status": "partially refunded", "date": "2018-08-21T12:23:59+0000", "method": "webmoney", "sum": { "amount": 90, "currency": "USD" }, "description": "ECT_TEST_1534835032773" }, "account": { "number": "R703276019842" }, "operation": { "id": 167000001097, "type": "refund", "status": "success", "date": "2018-08-21T12:23:59+0000", "created_date": "2018-08-21T12:23:58+0000", "request_id": "ba1d13a9346e271b0c38e73be0a93b71bb91c383-4 514983dd65d182656477cb8d37f91ab94fd43f9", "sum_initial": { "amount": 10, "currency": "USD" }, "sum_converted": { "amount": 10, "currency": "USD" }, "provider": { "id": 1082, "payment_id": "1592975261", "auth_code": "" }, "code": "0", "message": "Success" }, "signature": "n/KY3iKZpYObSsUj76BsSElFHi8DRlc1I3SwV 5zwuI5kGh/xy4UktZwdhtUWTZPJUnVyYAuURR2d9JWiQ9QJjQ==" }
The following example of callback is for a declined payment and does not contain the payment ID generated by the WebMoney service.
{ "project_id": 238, "payment": { "id": "ECT_TEST_1534835032773", "type": "purchase", "status": "success", "date": "2018-08-21T07:05:53+0000", "method": "webmoney", "sum": { "amount": 100, "currency": "USD" }, "description": "ECT_TEST_1534835032773" }, "account": { "number": "R703276019842" }, "errors": [{ "code": "100", "message": "General decline", "description": "Gate. Operation was declined. General Gate error" }], "operation": { "id": 167000001095, "type": "refund", "status": "decline", "date": "2018-08-21T07:52:00+0000", "created_date": "2018-08-21T07:51:59+0000", "request_id": "c1bf7b7f8a73e7564142335cb4abf36a962414 fe - 6 b28fc600d4eaae0da576cc0629fc12881023ac9 ", "sum_initial": { "amount": 100, "currency": "USD" }, "sum_converted": { "amount": 100, "currency": "USD" }, "provider": { "id": 1082, "payment_id": "" }, "code": "100", "message": "General decline" }, "signature": "GWffIaYEV93mpHO3KtP9mn4HDITfGFx4Fcu/4sr7H 5 jxGGvJSnG6Y9hmZlaVpdZBAl9AeRHkIkF / RlSZ3R71Vw == " }
Related topics
The following topics might be useful when implementing payments through Gate:
Payout by using Gate
General information
In the WebMoney method, when processing a payout by using Gate, the merchant's web service is required to send a request with all the required parameters and signature to the Monetix URL and get the callback with the payment result from the payment platform.
The following diagrams provide the detailed picture of the payment processing procedure.
- The customer initiates a payout in the web service.
- The web service sends the request for processing the payout by using Gate to the specified Monetix URL.
- The payment platform receives the request for processing the payout by using Gate.
- The payment platform performs the initial request processing that includes validation of the required parameters and signature.
- The payment platform sends to the web service response with request receipt confirmation and correctness check result.
- The payment platform performs the internal payment request processing and sends it to the WebMoney service.
- The payment is processed in the WebMoney service.
- The WebMoney service sends the payment result notification to the payment platform.
- The payment platform sends the callback to the web service.
- The customer receives the payment result from the web service.
The sections that follow discuss in more details the request format and the Gate parameters to use in the WebMoney method and provide the information about the format of callbacks with payment results. For the general information on how to use the API, see API Description. For the general information on how to use the response with request receipt confirmation, see Integration procedure.
Request format
In WebMoney method, when processing a payout, it is available to secure the transfer with a protection code required for receiving the transfer. There are several things you must consider when using payout requests in the WebMoney method:
- You initiate a payout by sending an HTTP POST request to the /v2/payment/webmoney/payout endpoint.
- You must provide values for the basic minimum of the following objects and parameters:
- general—object with general request information:
- project_id—the project ID obtained from Monetix
- payment_id—payment ID unique within the project
- signature—signature created after you specify all the required parameters. For more information about signature generation, see Signature generation and verification.
- customer—object with customer information:
- id—customer ID unique within the project
- ip_address—customer device IP
- first_name—customer first name
- last_name—customer last name
- email—customer email
- Object account—the customer WM e-wallet information:
- number—the number of customer WM e-wallet
- payment—object with payout information:
- amount—payout amount in minor currency units without any decimal point or comma except for cases where the currency does not have any minor currency units. If the currency has no minor units (that is, the number of digits for minor currency units is zero), then you must set this parameter to the amount in the major currency units. For the information on whether the currency has any minor units, see Currency codes.
- currency—payout currency in ISO-4217 alpha-3 format. The payout currency should be the same as the customer wallet currency
- general—object with general request information:
- Additionally, you need to use the following parameters:
- payment—object with payment information:
- description—payment description.
Payment description should be specified in the request as follows:
Withdrawal from personal account №<customer's bank account number> on the website <URL of the merchant web service>
. Example:Withdrawal from personal account №01234567890 on the website https://merchant.example.com
- description—payment description.
- payment—object with payment information:
- For payments with protection, you must provide values for parameters of protection code and period.
The customer receives the funds and sees them, but is not able to use them until entering the protection code. If the customer does not enter the code within the time period specified on the web service side (the protection time), then the funds will be returned to the merchant's e-wallet. In this case, the payment status changes to
The protection code and time period (the period can vary from 1 to 35 days) must be specified on the web service side in the protection_code and protection_period parameters of the payment object, as well as let the customer know the protection code.decline
. - If required, you can also add any other additional parameters Gate supports.
Here is an example of data from a non-protected payout request.
{ "general": { "project_id": 238, "payment_id": "WM-payout-002", "signature": "2tlMuYxLW9Yu6RETr8pdCfmi0UPE8euD+2QgJ...==" }, "customer": { "id": "customer_123", "ip_address": "198.51.100.47", "first_name": "John", "last_name": "Doe", "email": "johndoe@example.com" }, "account": { "number": "R703276019842" }, "payment": { "amount": 100, "currency": "RUB", "description": "Withdrawal from personal account №01234567890 on the website https://merchant.example.com/" } }
Here is an example of data from a protected payout request.
{ "general": { "project_id": 238, "payment_id": "WM-payout-001", "signature": "PJkV8ej\/UG0Di8hTng6JvC7vQsaC6tajQVVfBaNIipTv+AWoXW\/9MTO8yJA==" }, "customer": { "id": "customer_123", "ip_address": "198.51.100.47", "ip_address": "198.51.100.47", "first_name": "John", "last_name": "Doe", "email": "johndoe@example.com" }, "account": { "number": "R703276019842" }, "payment": { "amount": 100, "currency": "RUB", "protection_code": "code1", "protection_period": 1, "description": "Withdrawal from personal account №01234567890 on the website https://merchant.example.com/" } }
Callback format
In the WebMoney method, the callbacks that deliver payout results use the standard format described in Callbacks in Gate.
Note that unlike other payment methods, in the WebMoney method, the callbacks include the payment ID that is generated by the WebMoney service and is passed in the payment_id
parameter of the provider
object. The successful payout callbacks always contain the payment_id
parameter value, but the declined payout callbacks may not contain the parameter value.
The following example of callback contains information about a successful 1.00 USD
payout made in the 238
project by using the ABC1234
customer WMID—377094062589
. Payment ID generated by the WebMoney service is 1593230877
.
{ "project_id": 238, "payment": { "id": "WM-payout-121", "type": "payout", "status": "success", "date": "2018-08-22T13:35:41+0000", "method": "webmoney", "sum": { "amount": 100, "currency": "USD" }, "description": "test payout without protection" }, "account": { "number": "377094062589" }, "customer": { "id": "ABC1234" }, "operation": { "id": 16442000001089, "type": "payout", "status": "success", "date": "2018-08-22T13:35:41+0000", "created_date": "2018-08-22T13:35:39+0000", "request_id": "511bba243a2ef3dcc7865dedc43ea8ff2c6352 e4 - 0369 a4524fef9b41a71e7c97d23077dec8198cae ", "sum_initial": { "amount": 100, "currency": "USD" }, "sum_converted": { "amount": 100, "currency": "USD" }, "provider": { "id": 1082, "payment_id": "1593230877", "date": "2018-08-22T16:35:39+0000", "auth_code": "" }, "code": "0", "message": "Success" }, "signature": "uoFrPY6tVRwG9CrOivMaVtOPgLW67cZF/PhGifg1QP GYh0Nc3QI / SdCW4fOfAH2uJt + BymQVkYQBkkwZ / aVFfg == " }
The following example of callback is for a declined payout but contains the 1594601738
payment ID generated by the WebMoney service.
{ "project_id": 238, "payment": { "id": "WM-payout-001=35", "type": "payout", "status": "decline", "date": "2018-08-29T21:33:22+0000", "method": "webmoney", "sum": { "amount": 10, "currency": "USD" }, "description": "test payout with protection" }, "account": { "number": "377094062589" }, "customer": { "id": "cust0007" }, "operation": { "id": 9744000001160, "type": "payout", "status": "decline", "date": "2018-08-29T21:33:22+0000", "created_date": "2018-08-28T14:33:20+0000", "request_id": "3fc02ef403a21531775fa44440a5f6f3372c5 8db-508e54208ae977d3bebf875ac3cd2afbf87764bd", "sum_initial": { "amount": 10, "currency": "USD" }, "sum_converted": { "amount": 10, "currency": "USD" }, "provider": { "id": 1082, "payment_id": "1594601738", "date": "2018-08-28T17:33:20+0000", "auth_code": "" }, "code": "20000", "message": "General decline" }, "signature": "/hv7zLOiJapRXiDfdDMW6Vlilv13SALr/Zp nIEQiQltHxl09271AQI89IfVG5z/y9+WAHwsBHuPxzjf2CvAx+w==" }
Related topics
The following topics might be useful when implementing payments by using Gate:
Payout by using Dashboard
- single payout—you specify the currency and amount for a payout available for this method and fill in all the fields required for the selected payment method on the Dashboard pages.
- as a part of a mass payment—all the parameters are specified in a CSV file. Refer to the Payouts by using Gate section for the parameters required by your payment method.
Information about completed payouts is available for viewing in the Payments and Manual Payments sections of Dashboard.
For more information about payout processing by using Dashboard, see Performing payouts.
Testing
General information
In the WebMoney payment method, the following operations are available for testing: purchase through WebMoneyLight and WebMoneyClassic by using Payment Page and Gate, payouts through WebMoneyClassic by using Gate, refunds through WebMoneyLight by using Gate..
Testing can be performed within a test project, to enable and disable the testing availability, contact Monetix technical support via support@monetix.pro.
When performing a test payment, take into account that you must specify the ID of the test project in the requests, the currency can be any of supported ones: WMZ (USD), WME (EUR), WMK (KZT) (the availability of each currency is configured separately on request), and the interfaces of the payment forms emulator of Payment Page and WebMoney may differ from the work ones.

Test payments statuses
When testing purchases or payouts the final payment status is determined by the amount specified in the request:
decline
status with40000
or40400
amountsuccess
status with any other amount
When testing refunds, the final payment status is determined by the amount specified in the request:
decline
status with50000
or50500
amountsuccess
status with any other amount
Testing purchase by using Payment Page
To perform a test purchase trough WebMoneyLight by using Payment Page, do the following:
- Send a correct test request for Payment Page opening to the payment platform.
- If the
webmoney-light
method was not specified in the request—select the method on the emulator page. - Click Success or Decline depending on the specified amount.
- Accept a callback with information about the payment result.
To perform a test purchase trough WebMoneyClassic by using Payment Page, do the following:
- Send a correct test request for Payment Page opening to the payment platform.
- If the
webmoney
method was not specified in the request—select the method on the emulator page. - Specify a random WMID in the data entry field and the wallet currency.
- Accept a callback with information about the payment result.
The full information about purchase process by using WebMoney through Payment Page is provided in the section Purchase by using Payment Page.
Testing purchase by using Gate
To perform a test purchase trough WebMoneyLight by using Gate, do the following:
- Send a correct test request for purchase to the payment platform.
- Accept a callback with redirection data.
- Go to the received URL and click Success or Decline depending on the specified payment amount.
- Accept a callback with information about the payment result.
To perform a test purchase trough WebMoneyClassicby using Gate, do the following:
- Send a correct test request for purchase to the payment platform.
- Accept a callback with information about the payment result.
The full information about purchase process by using WebMoney through Gate is provided in the section Purchase by using Gate.
Testing payout by using Gate
To perform a test payout by using Gate, send a correct test request to the payment platform and accept a callback with information about the payment result. The full information about payout process by using WebMoney through Gate is provided in the section Payout by using Gate.
Testing refund by using Gate
To perform a test refund by using Gate, send a correct test request for refund of previously performed test purchase to the payment platform and accept a callback with information about the payment result.
The test refund performing is possible only within a day after the initial purchase. The full information about the refund process by using WebMoney through Gate is provided in the section Refund by using Gate.
Analysis of payments results
As with other payment methods Monetix offers, when using this method, you have several options to analyze the information about payments and operations.
You can load and analyze all the necessary information in Dashboard (dash-light.trxhost.com
), for instance you can use the analytic panels in the Analytics section for this purpose.
Also, you can export the information for further analysis by using third party analytical tools. The following options are available:
- Dashboard allows you to download reports in CSV format by using the tools in the Reports section. You can perform export as a one-time or regular download of data to your local computer.
- Data API allows you to have payment information exported in JSON format and delivered to a URL you specify. The payment information is exported by means of sending requests to the /operations/get endpoint.
If you have any further questions regarding payment data analysis, contact Monetix technical support.