WooCommerce MercadoPago - Version 3.0.5

Version Description

Download this release

Release Info

Developer mercadopago
Plugin Icon 128x128 WooCommerce MercadoPago
Version 3.0.5
Comparing to
See all releases

Code changes from version old.2.0.4 to 3.0.5

Files changed (121) hide show
  1. README.txt +0 -187
  2. assets/css/custom_checkout_mercadopago.css +161 -13
  3. {images → assets/images}/MCO/CUPOM_MCO.jpg +0 -0
  4. {images → assets/images}/MCO/MCO.png +0 -0
  5. {images → assets/images}/MCO/banner_all_methods.png +0 -0
  6. {images → assets/images}/MCO/credit_card.png +0 -0
  7. {images → assets/images}/MCO/standard_mco.jpg +0 -0
  8. {images → assets/images}/MLA/CUPOM_MLA.jpg +0 -0
  9. {images → assets/images}/MLA/MLA.png +0 -0
  10. {images → assets/images}/MLA/banner_all_methods.png +0 -0
  11. {images → assets/images}/MLA/credit_card.png +0 -0
  12. {images → assets/images}/MLA/standard_mla.jpg +0 -0
  13. {images → assets/images}/MLB/CUPOM_MLB.jpg +0 -0
  14. {images → assets/images}/MLB/MLB.png +0 -0
  15. {images → assets/images}/MLB/banner_all_methods.png +0 -0
  16. {images → assets/images}/MLB/credit_card.png +0 -0
  17. {images → assets/images}/MLB/cupom1.jpg +0 -0
  18. {images → assets/images}/MLB/cupom2.jpg +0 -0
  19. {images → assets/images}/MLB/cupom3.jpg +0 -0
  20. {images → assets/images}/MLB/desconto_MLB.jpg +0 -0
  21. {images → assets/images}/MLB/standard_mlb.jpg +0 -0
  22. {images → assets/images}/MLC/CUPOM_MLC.jpg +0 -0
  23. {images → assets/images}/MLC/MLC.png +0 -0
  24. {images → assets/images}/MLC/banner_all_methods.png +0 -0
  25. {images → assets/images}/MLC/credit_card.png +0 -0
  26. {images → assets/images}/MLC/standard_mlc.gif +0 -0
  27. {images → assets/images}/MLM/CUPOM_MLM.jpg +0 -0
  28. {images → assets/images}/MLM/MLM.png +0 -0
  29. {images → assets/images}/MLM/banner_all_methods.png +0 -0
  30. {images → assets/images}/MLM/credit_card.png +0 -0
  31. {images → assets/images}/MLM/standard_mlm.jpg +0 -0
  32. images/MPE/CUPOM_MPE.png → assets/images/MLU/CUPOM_MLU.png +0 -0
  33. assets/images/MLU/MLU.png +0 -0
  34. {images/MPE → assets/images/MLU}/banner_all_methods.png +0 -0
  35. {images/MPE → assets/images/MLU}/credit_card.png +0 -0
  36. images/MPE/standard_mpe.png → assets/images/MLU/standard_mlu.png +0 -0
  37. {images → assets/images}/MLV/CUPOM_MLV.jpg +0 -0
  38. {images → assets/images}/MLV/MLV.png +0 -0
  39. {images → assets/images}/MLV/banner_all_methods.png +0 -0
  40. {images → assets/images}/MLV/credit_card.png +0 -0
  41. {images → assets/images}/MLV/standard_mlv.jpg +0 -0
  42. assets/images/MPE/CUPOM_MPE.png +0 -0
  43. {images → assets/images}/MPE/MPE.png +0 -0
  44. assets/images/MPE/banner_all_methods.png +0 -0
  45. assets/images/MPE/credit_card.png +0 -0
  46. assets/images/MPE/standard_mpe.png +0 -0
  47. {images → assets/images}/bandeiras/amex.png +0 -0
  48. {images → assets/images}/bandeiras/boleto.png +0 -0
  49. {images → assets/images}/bandeiras/cash.png +0 -0
  50. {images → assets/images}/bandeiras/diners.png +0 -0
  51. {images → assets/images}/bandeiras/elo.png +0 -0
  52. {images → assets/images}/bandeiras/hipercard.png +0 -0
  53. {images → assets/images}/bandeiras/master.png +0 -0
  54. {images → assets/images}/bandeiras/melicard.png +0 -0
  55. {images → assets/images}/bandeiras/visa.png +0 -0
  56. {images → assets/images}/banner.png +0 -0
  57. {images → assets/images}/bar_code.png +0 -0
  58. {images → assets/images}/boleto.png +0 -0
  59. assets/images/cart.png +0 -0
  60. {images → assets/images}/check.png +0 -0
  61. {images → assets/images}/credit_card.png +0 -0
  62. {images → assets/images}/cvv.png +0 -0
  63. {images → assets/images}/error.png +0 -0
  64. {images → assets/images}/loading.gif +0 -0
  65. {images → assets/images}/mercadopago.png +0 -0
  66. {images → assets/images}/mplogo.png +0 -0
  67. {images → assets/images}/warning.png +0 -0
  68. assets/js/credit-card.js +1085 -0
  69. assets/js/ticket.js +591 -0
  70. i18n/languages/woocommerce-mercadopago-es_AR.mo +0 -0
  71. i18n/languages/woocommerce-mercadopago-es_AR.po +1010 -0
  72. i18n/languages/woocommerce-mercadopago-es_CL.mo +0 -0
  73. i18n/languages/woocommerce-mercadopago-es_CL.po +1010 -0
  74. i18n/languages/woocommerce-mercadopago-es_CO.mo +0 -0
  75. i18n/languages/woocommerce-mercadopago-es_CO.po +1010 -0
  76. i18n/languages/woocommerce-mercadopago-es_ES.mo +0 -0
  77. i18n/languages/woocommerce-mercadopago-es_ES.po +1010 -0
  78. i18n/languages/woocommerce-mercadopago-es_MX.mo +0 -0
  79. i18n/languages/woocommerce-mercadopago-es_MX.po +1010 -0
  80. i18n/languages/woocommerce-mercadopago-es_PE.mo +0 -0
  81. i18n/languages/woocommerce-mercadopago-es_PE.po +1010 -0
  82. i18n/languages/woocommerce-mercadopago-es_UY.mo +0 -0
  83. i18n/languages/woocommerce-mercadopago-es_UY.po +1010 -0
  84. i18n/languages/woocommerce-mercadopago-es_VE.mo +0 -0
  85. i18n/languages/woocommerce-mercadopago-es_VE.po +1010 -0
  86. i18n/languages/woocommerce-mercadopago-pt_BR.mo +0 -0
  87. i18n/languages/woocommerce-mercadopago-pt_BR.po +1010 -0
  88. i18n/languages/woocommerce-mercadopago.pot +1010 -0
  89. includes/WC_WooMercadoPago_BasicGateway.php +1477 -0
  90. includes/WC_WooMercadoPago_CustomGateway.php +1337 -0
  91. includes/WC_WooMercadoPago_SubscriptionGateway.php +1133 -0
  92. includes/WC_WooMercadoPago_TicketGateway.php +1297 -0
  93. includes/admin/class-wc-mercadoenvios-admin-orders.php +94 -0
  94. includes/class-wc-product-mp_recurrent.php +210 -0
  95. {mercadopago → includes}/sdk/lib/cacert.pem +0 -0
  96. includes/sdk/lib/mercadopago.php +1245 -0
  97. includes/shipment/abstract-wc-mercadoenvios-shipping.php +355 -0
  98. includes/shipment/class-wc-mercadoenvios-package.php +257 -0
  99. includes/shipment/class-wc-mercadoenvios-shipping-express.php +35 -0
  100. includes/shipment/class-wc-mercadoenvios-shipping-normal.php +35 -0
  101. languages/woocommerce-mercadopago-module-es_AR.mo +0 -0
  102. languages/woocommerce-mercadopago-module-es_AR.po +0 -703
  103. languages/woocommerce-mercadopago-module-es_CL.mo +0 -0
  104. languages/woocommerce-mercadopago-module-es_CL.po +0 -703
  105. languages/woocommerce-mercadopago-module-es_CO.mo +0 -0
  106. languages/woocommerce-mercadopago-module-es_CO.po +0 -703
  107. languages/woocommerce-mercadopago-module-es_ES.mo +0 -0
  108. languages/woocommerce-mercadopago-module-es_ES.po +0 -703
  109. languages/woocommerce-mercadopago-module-es_MX.mo +0 -0
  110. languages/woocommerce-mercadopago-module-es_MX.po +0 -703
  111. languages/woocommerce-mercadopago-module-es_PE.mo +0 -0
  112. languages/woocommerce-mercadopago-module-es_PE.po +0 -703
  113. languages/woocommerce-mercadopago-module-es_VE.mo +0 -0
  114. languages/woocommerce-mercadopago-module-es_VE.po +0 -703
  115. languages/woocommerce-mercadopago-module-pt_BR.mo +0 -0
  116. languages/woocommerce-mercadopago-module-pt_BR.po +0 -695
  117. languages/woocommerce-mercadopago-module.pot +0 -701
  118. mercadopago-module.php +0 -128
  119. mercadopago/css/woo-mercadopago-module.css +0 -14
  120. mercadopago/mercadopago-custom-gateway.php +0 -1089
  121. mercadopago/mercadopago-gateway.php +0 -927
README.txt DELETED
@@ -1,187 +0,0 @@
1
- === Woo Mercado Pago Module Oficial ===
2
- Contributors: mercadopago, mercadolivre
3
- Donate link: https://www.mercadopago.com.br/developers/
4
- Tags: ecommerce, mercadopago, woocommerce
5
- Requires at least: WooCommerce 2.1.x
6
- Tested up to: WooCommerce 2.5.x
7
- Stable tag: 2.0.4
8
- License: GPLv2 or later
9
- License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
-
11
- This is the oficial module of Mercado Pago for WooCommerce plugin.
12
-
13
- == Description ==
14
-
15
- This module enables WooCommerce to use Mercado Pago as a payment Gateway for purchases made in your e-commerce store.
16
-
17
- = Why chose Mercado Pago =
18
- Mercado Pago owns the highest security standards with PCI certification level 1 and a specialized internal team working on fraud analysis. With Mercado Pago, you will be able to accept payments from the most common brands of credit card, offer purchase installments options and receive your payment with antecipation. You can also enable your customers to pay in the web or in their mobile devices.
19
-
20
- = Mercado Pago Main Features =
21
- * Online and real-time processment through IPN mechanism;
22
- * High approval rate with a robust fraud analysis;
23
- * Potential new customers with a base of more than 120 millions of users in Latin America;
24
- * PCI Level 1 Certification;
25
- * Support to major credit card brands;
26
- * Payment installments;
27
- * Anticipation of receivables in D+2 or D+14 (According to Mercado Pago terms and conditions);
28
- * Payment in one click with Mercado Pago standard and custom checkouts;
29
- * Payment via tickets;
30
- * Seller's Protection Program.
31
-
32
- == Installation ==
33
-
34
- You have two way to install this module: from your WordPress Store, or by downloading and manually copying the module directory.
35
-
36
- = Install from WordPress =
37
- 1. On your store administration, go to **Plugins** option in sidebar;
38
- 2. Click in **Add New** button and type "Woo Mercado Pago Module" in the **Search Plugins** text field. Press Enter;
39
- 3. You should find the module read to be installed. Click install.
40
-
41
- = Manual Download =
42
- 1. Get the module sources from a repository (<a href="https://github.com/mercadopago/cart-woocommerce/archive/master.zip">Github</a> or <a href="https://downloads.wordpress.org/plugin/woo-mercado-pago-module.2.0.4.zip">WordPress Plugin Directory</a>);
43
- 2. Unzip the folder and find "woo-mercado-pago-module" directory;
44
- 3. Copy "woo-mercado-pago-module" directory to **[WordPressRootDirectory]/wp-content/plugins/** directory.
45
-
46
- To confirm that your module is really installed, you can click in **Plugins** item in the store administration menu, and check your just installed module. Just click **enable** to activate it and you should receive the message "Plugin enabled." as a notice in your WordPress.
47
-
48
- = Configuration =
49
- 1. On your store administration, go to **WooCommerce > Settings > Checkout** tab. In **Checkout Options**, you can find configurations for **Mercado Pago - Standard Checkout**, **Mercado Pago - Custom Checkout**, and **Mercado Pago - Ticket**.
50
- * To get your **Client_id** and **Client_secret** for your country, you can go to:
51
- * Argentina: https://www.mercadopago.com/mla/account/credentials?type=basic
52
- * Brazil: https://www.mercadopago.com/mlb/account/credentials?type=basic
53
- * Chile: https://www.mercadopago.com/mlc/account/credentials?type=basic
54
- * Colombia: https://www.mercadopago.com/mco/account/credentials?type=basic
55
- * Mexico: https://www.mercadopago.com/mlm/account/credentials?type=basic
56
- * Peru: https://www.mercadopago.com/mpe/account/credentials?type=basic
57
- * Venezuela: https://www.mercadopago.com/mlv/account/credentials?type=basic
58
- * And to get your **Public Key**/**Access Token** you can go to:
59
- * Argentina: https://www.mercadopago.com/mla/account/credentials?type=custom
60
- * Brazil: https://www.mercadopago.com/mlb/account/credentials?type=custom
61
- * Chile: https://www.mercadopago.com/mlc/account/credentials?type=custom
62
- * Colombia: https://www.mercadopago.com/mco/account/credentials?type=custom
63
- * Mexico: https://www.mercadopago.com/mlm/account/credentials?type=custom
64
- * Peru: https://www.mercadopago.com/mpe/account/credentials?type=custom
65
- * Venezuela: https://www.mercadopago.com/mlv/account/credentials?type=custom
66
- 2. For the solutions **Mercado Pago - Standard Checkout**, **Mercado Pago - Custom Checkout**, and **Mercado Pago - Ticket**, you can:
67
- * Enable/Disable you plugin (for all solutions);
68
- * Set up your credentials (Client_id/Client_secret for Standard, Public Key/Access Token for Custom and Ticket);
69
- * Check your IPN URL, where you will get notified about payment updates (for all solutions);
70
- * Set the title of the payment option that will be shown to your customers (for all solutions);
71
- * Set the description of the payment option that will be shown to your customers (for all solutions);
72
- * Set the description that will be shown in your customer's invoice (for Custom and Ticket);
73
- * Set binary mode that when charging a credit card, only [approved] or [reject] status will be taken (only for Custom);
74
- * Set the category of your store (for all solutions);
75
- * Set a prefix to identify your store, when you have multiple stores for only one Mercado Pago account (for all solutions);
76
- * Define how your customers will interact with Mercado Pago to pay their orders (only for Standard);
77
- * Configure the after-pay return behavior (only for Standard);
78
- * Configure the maximum installments allowed for your customers (only for Standard);
79
- * Configure the payment methods that you want to not work with Mercado Pago (only for Standard);
80
- * Enable/disable sandbox mode, where you can test your payments in Mercado Pago sandbox environment (for all solutions);
81
- * Enables/disable system logs (for all solutions).
82
-
83
- = In this video, we show how you can install and configure from your WordPress store =
84
-
85
- [youtube https://www.youtube.com/watch?v=CgV9aVlx5SE]
86
-
87
- == Frequently Asked Questions ==
88
-
89
- = What is Mercado Pago? =
90
- Please, take a look: https://vimeo.com/125253122
91
-
92
- = Any questions? =
93
- Please, check our FAQ at: https://www.mercadopago.com.br/ajuda/
94
-
95
- == Screenshots ==
96
-
97
- 1. `Custom Checkout`
98
-
99
- 2. `One Click Payment`
100
-
101
- 3. `Tickets`
102
-
103
- 4. `Configuration of Standard Checkout`
104
-
105
- == Changelog ==
106
-
107
- = v2.0.4 (29/06/2016) =
108
- * Bug fixes
109
- - We have wrote a snippet to handle the absent shipment cost problem;
110
- - Fixed some URLs of the credentials link for Standard Checkout.
111
- * Improvements
112
- - Added a message in admin view when currency is different from used locally (used in credential's country).
113
-
114
- = v2.0.3 (21/06/2016) =
115
- * Bug fix in Standard Checkout for WooCommerce v2.6.x
116
- - In WooCommerce v2.6.x, there was a bug related with the ampersand char that was wrongly converted to #38; on URLs and breaking the checkout flow. This update should place a fix to this problem.
117
-
118
- = v2.0.2 (13/06/2016) =
119
- * Rollout to Peru
120
- - This plugin is now supporting Peru, which includes Standard Checkout, Custom Checkout, Tickets, and local language translations.
121
- * Fix a PHP version issue
122
- - It was reported to us an issue in a function that uses an assign made directly from an array field. This feature is available in PHP 5.4.x or above and we've made an update to support older versions;
123
- * Fix a tax issue
124
- - It wasn't been correctly added to the total value in Mercado Pago gateway.
125
-
126
- = v2.0.1 (09/06/2016) =
127
- * Customer Cards (One Click Payment)
128
- - This feature allows customers to proceed to checkout with only one click. As Mercado Pago owns PCI standards, it can securely store credit card sensitive data and so register the customer card in the first time he uses it. Next time the customer comes back, he can use his card again, only by inserting its CVV code.
129
- - Want to see how it works on-the-fly? Please check this video: <a href="https://www.youtube.com/watch?v=_KB8CtDei_4">Custom Checkout + Customer Cards</a>.
130
- * SSL verifications for custom checkout and ticket
131
- - Custom Checkout and Ticket solutions can only be used with SSL certification. As the module behaves inconsistently if there is no SSL, we've put a watchdog to lock the solution if it is active without SSL.
132
- * Enabling any type of currency without disabling module (now, error message from API)
133
- - Now, merchants have the option to use currencies of their choices in WooCommerce. Pay attention that Woo Mercado Pago will always set the currency related to the country of the Mercado Pago credentials.
134
-
135
- = v2.0.0 (01/06/2016) =
136
- * Custom Checkout for LatAm
137
- - Offer a checkout fully customized to your brand experience with our simple-to-use payments API.
138
- - Want to see how it works on-the-fly? Please check this video: <a href="https://www.youtube.com/watch?v=_KB8CtDei_4">Custom Checkout + Customer Cards</a>.
139
- * Ticket for LatAm
140
- - Now, customer can pay orders with bank tickets.
141
- - Want to see how it works on-the-fly? Please check this video: <a href="https://www.youtube.com/watch?v=97VSVx5Uaj0">Tickets</a>.
142
- * Removed possibility to setting supportable but invalid currency
143
- - We've made a fix to prevent users to select a valid currency (such as ARS), but for a different country set by credentials origin (such as MLB - Mercado Pago Brazil).
144
-
145
- = v1.0.5 (29/04/2016) =
146
- * Removal of extra shipment setup in checkout view
147
- - We have made a workaround to prevent an extra shipment screen to appear.
148
- * Translation to es_ES
149
- - Users can select Spain as module country, and translation should be ok.
150
- * Some bug fixes and code improvements
151
-
152
- = v1.0.4 (15/04/2016) =
153
- * Added a link to module settings page in plugin page
154
- - We've increased the module description informations. Also we've put a link to make a vote on us. Please, VOTE US 5 STARS. Any feedback will be welcome!
155
- * Fixed status change when processing with two cards
156
- - When using payments with two cards in Standard Checkout, the flow of order status wasn't correct in some cases when async IPN events occurs. We've made some adjustments to fix it.
157
-
158
- = v1.0.3 (23/03/2016) =
159
- * Improving algorithm when processing IPN
160
- - Async calls and processment were refined.
161
-
162
- = v1.0.2 (23/03/2016) =
163
- * IPN URL wasn’t triggered when topic=payment
164
- - Fixed a bug for some specific IPN messages of Mercado Pago.
165
-
166
- = v1.0.1 (23/03/2016) =
167
- * Added payment ID in order custom fields information
168
- - Added some good informations about the payment in the order view.
169
- * Removed some unused files/code
170
- - We've made some code cleaning.
171
- * Redesign of the logic of preferences when creating cart, separating items
172
- - Itens are now separated in cart description. This increases the readability and consistency of informations in API level.
173
- * Proper information of shipment cost
174
- - Previously, the shipment cost was passed together with the cart total order amount.
175
-
176
- = v1.0.0 (16/03/2016) =
177
- * LatAm Standard Checkout support
178
- - Great for merchants who want to get going quickly and easily. This is the standard payment integration with Mercado Pago.
179
- - Want to see how it works on-the-fly? Please check this video: <a href="https://www.youtube.com/watch?v=DgOsX1eXjBU">Standard Checkout</a>.
180
- * Set of configurable fields and customizations
181
- - Title, description, category, and external reference customizations, integrations via iframe, modal, and redirection, with configurable auto-returning, max installments and payment method exclusion setup.
182
- * Sandbox and debug options
183
- - Customer can test orders by enabling debug mode or using sandbox environment.
184
-
185
- == Upgrade Notice ==
186
-
187
- If you're migrating from version 1.x.x to 2.x.x, please be sure to make a backup of your site and database, as there are many additional features and modifications between these versions.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/css/custom_checkout_mercadopago.css CHANGED
@@ -7,7 +7,7 @@ body{
7
  #mp-box-form{
8
  padding: 15px 10px;
9
  margin: 30px auto;
10
- width: 320px;
11
  background-color: #fff;
12
  overflow: auto;
13
  border-radius: 5px;
@@ -69,7 +69,7 @@ body{
69
 
70
  .mp-box-inputs label{
71
  text-transform: uppercase;
72
- font-size: 14px;
73
  font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
74
  margin: 0 0 5px 0;
75
  display: block;
@@ -87,7 +87,6 @@ body{
87
  border-radius: 3px;
88
  color: #666;
89
  height: 40px;
90
- font-size: 20px;
91
  }
92
 
93
  .mp-box-inputs input:focus, .mp-box-inputs select:focus{
@@ -120,6 +119,21 @@ body{
120
  display: none;
121
  }
122
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
123
  #submit{
124
  color: #fff;
125
  background-color: #337ab7;
@@ -138,6 +152,109 @@ body{
138
  border-color: #204d74;
139
  }
140
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
141
 
142
  /*
143
  *
@@ -147,13 +264,44 @@ body{
147
  *
148
  */
149
 
150
- .mp-error{
151
- text-transform: uppercase;
152
- font-size: 10px;
153
- color: red;
154
- font-weight: bold;
155
- display: none;
156
- font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
157
- clear: both;
158
- float: left;
159
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7
  #mp-box-form{
8
  padding: 15px 10px;
9
  margin: 30px auto;
10
+ width: 400px;
11
  background-color: #fff;
12
  overflow: auto;
13
  border-radius: 5px;
69
 
70
  .mp-box-inputs label{
71
  text-transform: uppercase;
72
+ font-size: 12px;
73
  font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
74
  margin: 0 0 5px 0;
75
  display: block;
87
  border-radius: 3px;
88
  color: #666;
89
  height: 40px;
 
90
  }
91
 
92
  .mp-box-inputs input:focus, .mp-box-inputs select:focus{
119
  display: none;
120
  }
121
 
122
+ .mp-btn, .ch-btn {
123
+ background-color: #009ee3;
124
+ border: 1px solid #009ee3;
125
+ border-radius: 4px;
126
+ color: #fff;
127
+ display: inline-block;
128
+ font-family: Arial,sans-serif;
129
+ font-size: 18px;
130
+ font-weight: normal;
131
+ margin: 0;
132
+ padding: 10px;
133
+ text-align: center;
134
+ width: 100%;
135
+ }
136
+
137
  #submit{
138
  color: #fff;
139
  background-color: #337ab7;
152
  border-color: #204d74;
153
  }
154
 
155
+ .mp-discount{
156
+ text-transform: uppercase;
157
+ font-size: 12px;
158
+ /*color: #009EE3;*/
159
+ color: #333333;
160
+ display: none;
161
+ font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
162
+ clear: both;
163
+ float: left;
164
+ }
165
+
166
+ #mpCouponApplyed{
167
+ display: none;
168
+ border-style: solid;
169
+ border-width: thin;
170
+ border-color: #009EE3;
171
+ padding: 8px 8px 8px 8px;
172
+ }
173
+
174
+ #mpCouponApplyedTicket{
175
+ display: none;
176
+ border-style: solid;
177
+ border-width: thin;
178
+ border-color: #009EE3;
179
+ padding: 8px 8px 8px 8px;
180
+ }
181
+
182
+ #mercadopago-form-coupon .mp-box-message{
183
+ margin: -5px 0 5px;
184
+ }
185
+
186
+ [class^=form-col-]{
187
+ position: relative;
188
+ min-height: 1px;
189
+ padding-right: 5px;
190
+ padding-left: 5px;
191
+ float: left;
192
+ -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
193
+ -moz-box-sizing: border-box; /* Firefox, other Gecko */
194
+ box-sizing: border-box;
195
+ }
196
+
197
+ .form-col-1{
198
+ width: 8.33333333%;
199
+ }
200
+ .form-col-2{
201
+ width: 16.66666667%;
202
+ }
203
+ .form-col-3{
204
+ width: 25%;
205
+ }
206
+ .form-col-4{
207
+ width: 33.33333333%;
208
+ }
209
+ .form-col-5{
210
+ width: 41.66666667%;
211
+ }
212
+ .form-col-6{
213
+ width: 50%;
214
+ }
215
+ .form-col-7{
216
+ width: 58.33333333%;
217
+ }
218
+ .form-col-8{
219
+ width: 66.66666667%;
220
+ }
221
+ .form-col-9{
222
+ width: 75%;
223
+ }
224
+ .form-col-10{
225
+ width: 83.33333333%;
226
+ }
227
+ .form-col-11{
228
+ width: 91.66666667%;
229
+ }
230
+ .form-col-12{
231
+ width: 100%;
232
+ }
233
+
234
+ .form-control-mine {
235
+ width: 100%;
236
+ padding: 5px;
237
+ font-size: 16px;
238
+ color: #555;
239
+ background-color: #fff;
240
+ background-image: none;
241
+ border: 1px solid #ccc;
242
+ border-radius: 4px;
243
+ margin-bottom: 12px;
244
+ }
245
+
246
+ select#fixed {
247
+ -webkit-appearance: none;
248
+ }
249
+
250
+ .mensagem-febraban{
251
+ text-transform: uppercase;
252
+ font-size: 12px;
253
+ display: block;
254
+ margin-top: 8px;
255
+ margin-bottom: 16px;
256
+ font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
257
+ }
258
 
259
  /*
260
  *
264
  *
265
  */
266
 
267
+ .mp-error{
268
+ text-transform: uppercase;
269
+ font-size: 10px;
270
+ margin-bottom: 12px;
271
+ color: red;
272
+ font-weight: bold;
273
+ display: none;
274
+ font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
275
+ clear: both;
276
+ float: left;
277
+ }
278
+
279
+ .erro_febraban{
280
+ text-transform: uppercase;
281
+ font-size: 10px;
282
+ margin-left: -10px;
283
+ margin-right: -10px;
284
+ margin-bottom: 12px;
285
+ color: red;
286
+ font-weight: bold;
287
+ display: none;
288
+ font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
289
+ clear: both;
290
+ }
291
+
292
+ #mp-box-input-tax-tea{
293
+ font-weight: 300;
294
+ text-align: center;
295
+ color: #333;
296
+ font-size: 12px;
297
+ display: none;
298
+ }
299
+
300
+ #mp-box-input-tax-cft{
301
+ font-weight: 300;
302
+ text-align: center;
303
+ color: #333;
304
+ font-size: 20px;
305
+ margin-top: 16px;
306
+ display: none;
307
+ }
{images → assets/images}/MCO/CUPOM_MCO.jpg RENAMED
File without changes
{images → assets/images}/MCO/MCO.png RENAMED
File without changes
{images → assets/images}/MCO/banner_all_methods.png RENAMED
File without changes
{images → assets/images}/MCO/credit_card.png RENAMED
File without changes
{images → assets/images}/MCO/standard_mco.jpg RENAMED
File without changes
{images → assets/images}/MLA/CUPOM_MLA.jpg RENAMED
File without changes
{images → assets/images}/MLA/MLA.png RENAMED
File without changes
{images → assets/images}/MLA/banner_all_methods.png RENAMED
File without changes
{images → assets/images}/MLA/credit_card.png RENAMED
File without changes
{images → assets/images}/MLA/standard_mla.jpg RENAMED
File without changes
{images → assets/images}/MLB/CUPOM_MLB.jpg RENAMED
File without changes
{images → assets/images}/MLB/MLB.png RENAMED
File without changes
{images → assets/images}/MLB/banner_all_methods.png RENAMED
File without changes
{images → assets/images}/MLB/credit_card.png RENAMED
File without changes
{images → assets/images}/MLB/cupom1.jpg RENAMED
File without changes
{images → assets/images}/MLB/cupom2.jpg RENAMED
File without changes
{images → assets/images}/MLB/cupom3.jpg RENAMED
File without changes
{images → assets/images}/MLB/desconto_MLB.jpg RENAMED
File without changes
{images → assets/images}/MLB/standard_mlb.jpg RENAMED
File without changes
{images → assets/images}/MLC/CUPOM_MLC.jpg RENAMED
File without changes
{images → assets/images}/MLC/MLC.png RENAMED
File without changes
{images → assets/images}/MLC/banner_all_methods.png RENAMED
File without changes
{images → assets/images}/MLC/credit_card.png RENAMED
File without changes
{images → assets/images}/MLC/standard_mlc.gif RENAMED
File without changes
{images → assets/images}/MLM/CUPOM_MLM.jpg RENAMED
File without changes
{images → assets/images}/MLM/MLM.png RENAMED
File without changes
{images → assets/images}/MLM/banner_all_methods.png RENAMED
File without changes
{images → assets/images}/MLM/credit_card.png RENAMED
File without changes
{images → assets/images}/MLM/standard_mlm.jpg RENAMED
File without changes
images/MPE/CUPOM_MPE.png → assets/images/MLU/CUPOM_MLU.png RENAMED
File without changes
assets/images/MLU/MLU.png ADDED
Binary file
{images/MPE → assets/images/MLU}/banner_all_methods.png RENAMED
File without changes
{images/MPE → assets/images/MLU}/credit_card.png RENAMED
File without changes
images/MPE/standard_mpe.png → assets/images/MLU/standard_mlu.png RENAMED
File without changes
{images → assets/images}/MLV/CUPOM_MLV.jpg RENAMED
File without changes
{images → assets/images}/MLV/MLV.png RENAMED
File without changes
{images → assets/images}/MLV/banner_all_methods.png RENAMED
File without changes
{images → assets/images}/MLV/credit_card.png RENAMED
File without changes
{images → assets/images}/MLV/standard_mlv.jpg RENAMED
File without changes
assets/images/MPE/CUPOM_MPE.png ADDED
Binary file
{images → assets/images}/MPE/MPE.png RENAMED
File without changes
assets/images/MPE/banner_all_methods.png ADDED
Binary file
assets/images/MPE/credit_card.png ADDED
Binary file
assets/images/MPE/standard_mpe.png ADDED
Binary file
{images → assets/images}/bandeiras/amex.png RENAMED
File without changes
{images → assets/images}/bandeiras/boleto.png RENAMED
File without changes
{images → assets/images}/bandeiras/cash.png RENAMED
File without changes
{images → assets/images}/bandeiras/diners.png RENAMED
File without changes
{images → assets/images}/bandeiras/elo.png RENAMED
File without changes
{images → assets/images}/bandeiras/hipercard.png RENAMED
File without changes
{images → assets/images}/bandeiras/master.png RENAMED
File without changes
{images → assets/images}/bandeiras/melicard.png RENAMED
File without changes
{images → assets/images}/bandeiras/visa.png RENAMED
File without changes
{images → assets/images}/banner.png RENAMED
File without changes
{images → assets/images}/bar_code.png RENAMED
File without changes
{images → assets/images}/boleto.png RENAMED
File without changes
assets/images/cart.png ADDED
Binary file
{images → assets/images}/check.png RENAMED
File without changes
{images → assets/images}/credit_card.png RENAMED
File without changes
{images → assets/images}/cvv.png RENAMED
File without changes
{images → assets/images}/error.png RENAMED
File without changes
{images → assets/images}/loading.gif RENAMED
File without changes
{images → assets/images}/mercadopago.png RENAMED
File without changes
{images → assets/images}/mplogo.png RENAMED
File without changes
{images → assets/images}/warning.png RENAMED
File without changes
assets/js/credit-card.js ADDED
@@ -0,0 +1,1085 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ( function() {
2
+
3
+ var MPv1 = {
4
+ debug: true,
5
+ add_truncated_card: true,
6
+ site_id: "",
7
+ public_key: "",
8
+ coupon_of_discounts: {
9
+ discount_action_url: "",
10
+ payer_email: "",
11
+ default: true,
12
+ status: false
13
+ },
14
+ customer_and_card: {
15
+ default: true,
16
+ status: true
17
+ },
18
+ create_token_on: {
19
+ event: true, //if true create token on event, if false create on click and ignore others
20
+ keyup: false,
21
+ paste: true
22
+ },
23
+ inputs_to_create_discount: [
24
+ "couponCode",
25
+ "applyCoupon"
26
+ ],
27
+ inputs_to_create_token: [
28
+ "cardNumber",
29
+ "cardExpirationMonth",
30
+ "cardExpirationYear",
31
+ "cardholderName",
32
+ "securityCode",
33
+ "docType",
34
+ "docNumber"
35
+ ],
36
+ inputs_to_create_token_customer_and_card: [
37
+ "paymentMethodSelector",
38
+ "securityCode"
39
+ ],
40
+ selectors: {
41
+ // currency
42
+ currency_ratio: "#currency_ratio",
43
+ // coupom
44
+ couponCode: "#couponCode",
45
+ applyCoupon: "#applyCoupon",
46
+ mpCouponApplyed: "#mpCouponApplyed",
47
+ mpCouponError: "#mpCouponError",
48
+ campaign_id: "#campaign_id",
49
+ campaign: "#campaign",
50
+ discount: "#discount",
51
+ // customer cards
52
+ paymentMethodSelector: "#paymentMethodSelector",
53
+ pmCustomerAndCards: "#payment-methods-for-customer-and-cards",
54
+ pmListOtherCards: "#payment-methods-list-other-cards",
55
+ // card data
56
+ mpSecurityCodeCustomerAndCard: "#mp-securityCode-customer-and-card",
57
+ cardNumber: "#cardNumber",
58
+ cardExpirationMonth: "#cardExpirationMonth",
59
+ cardExpirationYear: "#cardExpirationYear",
60
+ cardholderName: "#cardholderName",
61
+ securityCode: "#securityCode",
62
+ docType: "#docType",
63
+ docNumber: "#docNumber",
64
+ issuer: "#issuer",
65
+ installments: "#installments",
66
+ // document
67
+ mpDoc: ".mp-doc",
68
+ mpIssuer: ".mp-issuer",
69
+ mpDocType: ".mp-docType",
70
+ mpDocNumber: ".mp-docNumber",
71
+ // payment method and checkout
72
+ paymentMethodId: "#paymentMethodId",
73
+ amount: "#amount",
74
+ token: "#token",
75
+ cardTruncated: "#cardTruncated",
76
+ site_id: "#site_id",
77
+ CustomerAndCard: "#CustomerAndCard",
78
+ box_loading: "#mp-box-loading",
79
+ submit: "#submit",
80
+ // tax resolution AG 51/2017
81
+ boxInstallments: "#mp-box-installments",
82
+ boxInstallmentsSelector: "#mp-box-installments-selector",
83
+ taxCFT: "#mp-box-input-tax-cft",
84
+ taxTEA: "#mp-box-input-tax-tea",
85
+ taxTextCFT: "#mp-tax-cft-text",
86
+ taxTextTEA: "#mp-tax-tea-text",
87
+ // form
88
+ form: "#mercadopago-form",
89
+ formCoupon: "#mercadopago-form-coupon",
90
+ formCustomerAndCard: "#mercadopago-form-customer-and-card",
91
+ utilities_fields: "#mercadopago-utilities"
92
+ },
93
+ text: {
94
+ choose: "Choose",
95
+ other_bank: "Other Bank",
96
+ discount_info1: "You will save",
97
+ discount_info2: "with discount from",
98
+ discount_info3: "Total of your purchase:",
99
+ discount_info4: "Total of your purchase with discount:",
100
+ discount_info5: "*Uppon payment approval",
101
+ discount_info6: "Terms and Conditions of Use",
102
+ coupon_empty: "Please, inform your coupon code",
103
+ apply: "Apply",
104
+ remove: "Remove"
105
+ },
106
+ paths: {
107
+ loading: "images/loading.gif",
108
+ check: "images/check.png",
109
+ error: "images/error.png"
110
+ }
111
+ }
112
+
113
+ // === Coupon of Discounts
114
+
115
+ MPv1.currencyIdToCurrency = function ( currency_id ) {
116
+ if ( currency_id == "ARS" ) {
117
+ return "$";
118
+ } else if ( currency_id == "BRL" ) {
119
+ return "R$";
120
+ } else if ( currency_id == "COP" ) {
121
+ return "$";
122
+ } else if ( currency_id == "CLP" ) {
123
+ return "$";
124
+ } else if ( currency_id == "MXN" ) {
125
+ return "$";
126
+ } else if ( currency_id == "VEF" ) {
127
+ return "Bs";
128
+ } else if ( currency_id == "PEN" ) {
129
+ return "S/";
130
+ } else if ( currency_id == "UYU" ) {
131
+ return "$U";
132
+ } else {
133
+ return "$";
134
+ }
135
+ }
136
+
137
+ MPv1.checkCouponEligibility = function () {
138
+ if ( document.querySelector( MPv1.selectors.couponCode).value == "" ) {
139
+ // Coupon code is empty.
140
+ document.querySelector( MPv1.selectors.mpCouponApplyed ).style.display = "none";
141
+ document.querySelector( MPv1.selectors.mpCouponError ).style.display = "block";
142
+ document.querySelector( MPv1.selectors.mpCouponError ).innerHTML = MPv1.text.coupon_empty;
143
+ MPv1.coupon_of_discounts.status = false;
144
+ document.querySelector( MPv1.selectors.couponCode ).style.background = null;
145
+ document.querySelector( MPv1.selectors.applyCoupon ).value = MPv1.text.apply;
146
+ document.querySelector( MPv1.selectors.discount ).value = 0;
147
+ MPv1.cardsHandler();
148
+ } else if ( MPv1.coupon_of_discounts.status ) {
149
+ // We already have a coupon set, so we remove it.
150
+ document.querySelector( MPv1.selectors.mpCouponApplyed ).style.display = "none";
151
+ document.querySelector( MPv1.selectors.mpCouponError ).style.display = "none";
152
+ MPv1.coupon_of_discounts.status = false;
153
+ document.querySelector( MPv1.selectors.applyCoupon ).style.background = null;
154
+ document.querySelector( MPv1.selectors.applyCoupon ).value = MPv1.text.apply;
155
+ document.querySelector( MPv1.selectors.couponCode ).value = "";
156
+ document.querySelector( MPv1.selectors.couponCode ).style.background = null;
157
+ document.querySelector( MPv1.selectors.discount ).value = 0;
158
+ MPv1.cardsHandler();
159
+ } else {
160
+ // Set loading.
161
+ document.querySelector( MPv1.selectors.mpCouponApplyed ).style.display = "none";
162
+ document.querySelector( MPv1.selectors.mpCouponError ).style.display = "none";
163
+ document.querySelector( MPv1.selectors.couponCode ).style.background = "url(" + MPv1.paths.loading + ") 98% 50% no-repeat #fff";
164
+ document.querySelector( MPv1.selectors.applyCoupon ).disabled = true;
165
+
166
+ // Check if there are params in the url.
167
+ var url = MPv1.coupon_of_discounts.discount_action_url;
168
+ var sp = "?";
169
+ if ( url.indexOf( "?" ) >= 0 ) {
170
+ sp = "&";
171
+ }
172
+ url += sp + "site_id=" + MPv1.site_id;
173
+ url += "&coupon_id=" + document.querySelector( MPv1.selectors.couponCode ).value;
174
+ url += "&amount=" + document.querySelector( MPv1.selectors.amount ).value;
175
+ url += "&payer=" + MPv1.coupon_of_discounts.payer_email;
176
+ //url += "&payer=" + document.getElementById( "billing_email" ).value;
177
+
178
+ MPv1.AJAX({
179
+ url: url,
180
+ method : "GET",
181
+ timeout : 5000,
182
+ error: function() {
183
+ // Request failed.
184
+ document.querySelector( MPv1.selectors.mpCouponApplyed ).style.display = "none";
185
+ document.querySelector( MPv1.selectors.mpCouponError ).style.display = "none";
186
+ MPv1.coupon_of_discounts.status = false;
187
+ document.querySelector( MPv1.selectors.applyCoupon ).style.background = null;
188
+ document.querySelector( MPv1.selectors.applyCoupon ).value = MPv1.text.apply;
189
+ document.querySelector( MPv1.selectors.couponCode ).value = "";
190
+ document.querySelector( MPv1.selectors.couponCode ).style.background = null;
191
+ document.querySelector( MPv1.selectors.discount ).value = 0;
192
+ MPv1.cardsHandler();
193
+ },
194
+ success : function ( status, response ) {
195
+ if ( response.status == 200 ) {
196
+ document.querySelector( MPv1.selectors.mpCouponApplyed ).style.display =
197
+ "block";
198
+ document.querySelector( MPv1.selectors.discount ).value =
199
+ response.response.coupon_amount;
200
+ document.querySelector( MPv1.selectors.mpCouponApplyed ).innerHTML =
201
+ //"<div style='border-style: solid; border-width:thin; " +
202
+ //"border-color: #009EE3; padding: 8px 8px 8px 8px; margin-top: 4px;'>" +
203
+ MPv1.text.discount_info1 + " <strong>" +
204
+ MPv1.currencyIdToCurrency( response.response.currency_id ) + " " +
205
+ Math.round( response.response.coupon_amount * 100 ) / 100 +
206
+ "</strong> " + MPv1.text.discount_info2 + " " +
207
+ response.response.name + ".<br>" + MPv1.text.discount_info3 + " <strong>" +
208
+ MPv1.currencyIdToCurrency( response.response.currency_id ) + " " +
209
+ Math.round( MPv1.getAmountWithoutDiscount() * 100 ) / 100 +
210
+ "</strong><br>" + MPv1.text.discount_info4 + " <strong>" +
211
+ MPv1.currencyIdToCurrency( response.response.currency_id ) + " " +
212
+ Math.round( MPv1.getAmount() * 100 ) / 100 + "*</strong><br>" +
213
+ "<i>" + MPv1.text.discount_info5 + "</i><br>" +
214
+ "<a href='https://api.mercadolibre.com/campaigns/" +
215
+ response.response.id +
216
+ "/terms_and_conditions?format_type=html' target='_blank'>" +
217
+ MPv1.text.discount_info6 + "</a>";
218
+ document.querySelector( MPv1.selectors.mpCouponError ).style.display =
219
+ "none";
220
+ MPv1.coupon_of_discounts.status = true;
221
+ document.querySelector( MPv1.selectors.couponCode ).style.background =
222
+ null;
223
+ document.querySelector( MPv1.selectors.couponCode ).style.background =
224
+ "url(" + MPv1.paths.check + ") 98% 50% no-repeat #fff";
225
+ document.querySelector( MPv1.selectors.applyCoupon ).value =
226
+ MPv1.text.remove;
227
+ MPv1.cardsHandler();
228
+ document.querySelector( MPv1.selectors.campaign_id ).value =
229
+ response.response.id;
230
+ document.querySelector( MPv1.selectors.campaign ).value =
231
+ response.response.name;
232
+ } else {
233
+ document.querySelector( MPv1.selectors.mpCouponApplyed ).style.display = "none";
234
+ document.querySelector( MPv1.selectors.mpCouponError ).style.display = "block";
235
+ document.querySelector( MPv1.selectors.mpCouponError ).innerHTML = response.response.message;
236
+ MPv1.coupon_of_discounts.status = false;
237
+ document.querySelector( MPv1.selectors.couponCode ).style.background = null;
238
+ document.querySelector( MPv1.selectors.couponCode ).style.background = "url(" + MPv1.paths.error + ") 98% 50% no-repeat #fff";
239
+ document.querySelector( MPv1.selectors.applyCoupon ).value = MPv1.text.apply;
240
+ document.querySelector( MPv1.selectors.discount ).value = 0;
241
+ MPv1.cardsHandler();
242
+ }
243
+ document.querySelector( MPv1.selectors.applyCoupon ).disabled = false;
244
+ }
245
+ });
246
+ }
247
+ }
248
+
249
+ MPv1.getBin = function() {
250
+
251
+ var cardSelector = document.querySelector( MPv1.selectors.paymentMethodSelector );
252
+
253
+ if (cardSelector && cardSelector[cardSelector.options.selectedIndex].value != "-1") {
254
+ return cardSelector[cardSelector.options.selectedIndex]
255
+ .getAttribute( "first_six_digits" );
256
+ }
257
+
258
+ var ccNumber = document.querySelector( MPv1.selectors.cardNumber );
259
+ return ccNumber.value.replace( /[ .-]/g, "" ).slice( 0, 6 );
260
+
261
+ }
262
+
263
+ MPv1.clearOptions = function() {
264
+
265
+ var bin = MPv1.getBin();
266
+
267
+ if ( bin.length == 0 ) {
268
+
269
+ MPv1.hideIssuer();
270
+
271
+ var selectorInstallments = document.querySelector( MPv1.selectors.installments ),
272
+ fragment = document.createDocumentFragment(),
273
+ option = new Option( MPv1.text.choose + "...", "-1" );
274
+
275
+ selectorInstallments.options.length = 0;
276
+ fragment.appendChild( option );
277
+ selectorInstallments.appendChild( fragment );
278
+ selectorInstallments.setAttribute( "disabled", "disabled" );
279
+
280
+ }
281
+
282
+ }
283
+
284
+ MPv1.guessingPaymentMethod = function( event ) {
285
+
286
+ var bin = MPv1.getBin();
287
+ var amount = MPv1.getAmount();
288
+
289
+ if ( event.type == "keyup" ) {
290
+ if ( bin != null && bin.length == 6 ) {
291
+ Mercadopago.getPaymentMethod( {
292
+ "bin": bin
293
+ }, MPv1.setPaymentMethodInfo );
294
+ }
295
+ } else {
296
+ setTimeout( function() {
297
+ if ( bin.length >= 6 ) {
298
+ Mercadopago.getPaymentMethod( {
299
+ "bin": bin
300
+ }, MPv1.setPaymentMethodInfo );
301
+ }
302
+ }, 100 );
303
+ }
304
+
305
+ };
306
+
307
+ MPv1.setPaymentMethodInfo = function( status, response ) {
308
+
309
+ if ( status == 200 ) {
310
+
311
+ if ( MPv1.site_id != "MLM" ) {
312
+ // Guessing...
313
+ document.querySelector( MPv1.selectors.paymentMethodId ).value = response[0].id;
314
+ if ( MPv1.customer_and_card.status ) {
315
+ document.querySelector( MPv1.selectors.paymentMethodSelector )
316
+ .style.background = "url(" + response[0].secure_thumbnail + ") 90% 50% no-repeat #fff";
317
+ } else {
318
+ document.querySelector( MPv1.selectors.cardNumber ).style.background = "url(" +
319
+ response[0].secure_thumbnail + ") 98% 50% no-repeat #fff";
320
+ }
321
+ }
322
+
323
+ // Check if the security code (ex: Tarshop) is required.
324
+ var cardConfiguration = response[0].settings;
325
+ var bin = MPv1.getBin();
326
+ var amount = MPv1.getAmount();
327
+
328
+ Mercadopago.getInstallments(
329
+ { "bin": bin, "amount": amount },
330
+ MPv1.setInstallmentInfo
331
+ );
332
+
333
+ // Check if the issuer is necessary to pay.
334
+ var issuerMandatory = false, additionalInfo = response[0].additional_info_needed;
335
+
336
+ for ( var i=0; i<additionalInfo.length; i++ ) {
337
+ if ( additionalInfo[i] == "issuer_id" ) {
338
+ issuerMandatory = true;
339
+ }
340
+ };
341
+
342
+ if ( issuerMandatory && MPv1.site_id != "MLM" ) {
343
+ var payment_method_id = response[0].id;
344
+ MPv1.getIssuersPaymentMethod( payment_method_id );
345
+ } else {
346
+ MPv1.hideIssuer();
347
+ }
348
+
349
+ }
350
+
351
+ }
352
+
353
+ MPv1.changePaymetMethodSelector = function() {
354
+ var payment_method_id =
355
+ document.querySelector( MPv1.selectors.paymentMethodSelector ).value;
356
+ MPv1.getIssuersPaymentMethod( payment_method_id );
357
+ }
358
+
359
+ // === Issuers
360
+
361
+ MPv1.getIssuersPaymentMethod = function( payment_method_id ) {
362
+
363
+ var amount = MPv1.getAmount();
364
+
365
+ // flow: MLM mercadopagocard
366
+ if ( payment_method_id == "mercadopagocard" ) {
367
+ Mercadopago.getInstallments(
368
+ { "payment_method_id": payment_method_id, "amount": amount },
369
+ MPv1.setInstallmentInfo
370
+ );
371
+ }
372
+
373
+ Mercadopago.getIssuers( payment_method_id, MPv1.showCardIssuers );
374
+ MPv1.addListenerEvent(
375
+ document.querySelector( MPv1.selectors.issuer ),
376
+ "change",
377
+ MPv1.setInstallmentsByIssuerId
378
+ );
379
+
380
+ }
381
+
382
+ MPv1.showCardIssuers = function( status, issuers ) {
383
+
384
+ // If the API does not return any bank.
385
+ if ( issuers.length > 0 ) {
386
+ var issuersSelector = document.querySelector( MPv1.selectors.issuer );
387
+ var fragment = document.createDocumentFragment();
388
+
389
+ issuersSelector.options.length = 0;
390
+ var option = new Option( MPv1.text.choose + "...", "-1" );
391
+ fragment.appendChild( option );
392
+
393
+ for ( var i=0; i<issuers.length; i++ ) {
394
+ if ( issuers[i].name != "default" ) {
395
+ option = new Option( issuers[i].name, issuers[i].id );
396
+ } else {
397
+ option = new Option( "Otro", issuers[i].id );
398
+ }
399
+ fragment.appendChild( option );
400
+ }
401
+
402
+ issuersSelector.appendChild( fragment );
403
+ issuersSelector.removeAttribute( "disabled" );
404
+ } else {
405
+ MPv1.hideIssuer();
406
+ }
407
+
408
+ }
409
+
410
+ MPv1.setInstallmentsByIssuerId = function( status, response ) {
411
+
412
+ var issuerId = document.querySelector( MPv1.selectors.issuer ).value;
413
+ var amount = MPv1.getAmount();
414
+
415
+ if ( issuerId === "-1" ) {
416
+ return;
417
+ }
418
+
419
+ var params_installments = {
420
+ "bin": MPv1.getBin(),
421
+ "amount": amount,
422
+ "issuer_id": issuerId
423
+ }
424
+
425
+ if ( MPv1.site_id == "MLM" ) {
426
+ params_installments = {
427
+ "payment_method_id": document.querySelector(
428
+ MPv1.selectors.paymentMethodSelector
429
+ ).value,
430
+ "amount": amount,
431
+ "issuer_id": issuerId
432
+ }
433
+ }
434
+ Mercadopago.getInstallments( params_installments, MPv1.setInstallmentInfo );
435
+
436
+ }
437
+
438
+ MPv1.hideIssuer = function() {
439
+ var $issuer = document.querySelector( MPv1.selectors.issuer );
440
+ var opt = document.createElement( "option" );
441
+ opt.value = "-1";
442
+ opt.innerHTML = MPv1.text.other_bank;
443
+ opt.style = "font-size: 12px;";
444
+
445
+ $issuer.innerHTML = "";
446
+ $issuer.appendChild( opt );
447
+ $issuer.setAttribute( "disabled", "disabled" );
448
+ }
449
+
450
+ // === Installments
451
+
452
+ MPv1.setInstallmentInfo = function( status, response ) {
453
+
454
+ var selectorInstallments = document.querySelector( MPv1.selectors.installments );
455
+
456
+ if ( response.length > 0 ) {
457
+
458
+ var html_option = "<option value='-1'>" + MPv1.text.choose + "...</option>";
459
+ payerCosts = response[0].payer_costs;
460
+
461
+ // fragment.appendChild(option);
462
+ for ( var i=0; i<payerCosts.length; i++) {
463
+ /*html_option += "<option value='" + payerCosts[i].installments + "'>" +
464
+ ( payerCosts[i].recommended_message || payerCosts[i].installments ) +
465
+ "</option>";*/
466
+ // Resolution 51/2017
467
+ var dataInput = "";
468
+ if ( MPv1.site_id == "MLA" ) {
469
+ var tax = payerCosts[i].labels;
470
+ if ( tax.length > 0 ) {
471
+ for ( var l=0; l<tax.length; l++ ) {
472
+ if ( tax[l].indexOf( "CFT_" ) !== -1 ) {
473
+ dataInput = "data-tax='" + tax[l] + "'";
474
+ }
475
+ }
476
+ }
477
+ }
478
+ html_option += "<option value='" + payerCosts[i].installments + "' " + dataInput + ">" +
479
+ (payerCosts[i].recommended_message || payerCosts[i].installments) +
480
+ "</option>";
481
+ }
482
+
483
+ // Not take the user's selection if equal.
484
+ if ( selectorInstallments.innerHTML != html_option ) {
485
+ selectorInstallments.innerHTML = html_option;
486
+ }
487
+
488
+ selectorInstallments.removeAttribute( "disabled" );
489
+ MPv1.showTaxes();
490
+
491
+ }
492
+
493
+ }
494
+
495
+ MPv1.showTaxes = function() {
496
+ var selectorIsntallments = document.querySelector( MPv1.selectors.installments );
497
+ var tax = selectorIsntallments.options[selectorIsntallments.selectedIndex].getAttribute( "data-tax" );
498
+ var cft = "";
499
+ var tea = "";
500
+ if ( tax != null ) {
501
+ var tax_split = tax.split( "|" );
502
+ cft = tax_split[0].replace( "_", " ");
503
+ tea = tax_split[1].replace( "_", " ");
504
+ if ( cft == "CFT 0,00%" && tea == "TEA 0,00%" ) {
505
+ cft = "";
506
+ tea = "";
507
+ }
508
+ }
509
+ document.querySelector( MPv1.selectors.taxTextCFT ).innerHTML = cft;
510
+ document.querySelector( MPv1.selectors.taxTextTEA ).innerHTML = tea;
511
+ }
512
+
513
+ // === Customer & Cards
514
+
515
+ MPv1.cardsHandler = function() {
516
+
517
+ var cardSelector = document.querySelector( MPv1.selectors.paymentMethodSelector );
518
+ var type_checkout =
519
+ cardSelector[cardSelector.options.selectedIndex].getAttribute( "type_checkout" );
520
+ var amount = MPv1.getAmount();
521
+
522
+ if ( MPv1.customer_and_card.default ) {
523
+
524
+ if ( cardSelector &&
525
+ cardSelector[cardSelector.options.selectedIndex].value != "-1" &&
526
+ type_checkout == "customer_and_card" ) {
527
+
528
+ document.querySelector( MPv1.selectors.paymentMethodId )
529
+ .value = cardSelector[cardSelector.options.selectedIndex]
530
+ .getAttribute( "payment_method_id" );
531
+
532
+ MPv1.clearOptions();
533
+
534
+ MPv1.customer_and_card.status = true;
535
+
536
+ var _bin = cardSelector[cardSelector.options.selectedIndex]
537
+ .getAttribute( "first_six_digits" );
538
+
539
+ Mercadopago.getPaymentMethod(
540
+ { "bin": _bin },
541
+ MPv1.setPaymentMethodInfo
542
+ );
543
+
544
+ } else {
545
+
546
+ document.querySelector( MPv1.selectors.paymentMethodId )
547
+ .value = cardSelector.value != -1 ? cardSelector.value : "";
548
+ MPv1.customer_and_card.status = false;
549
+ MPv1.resetBackgroundCard();
550
+ MPv1.guessingPaymentMethod(
551
+ { type: "keyup" }
552
+ );
553
+
554
+ }
555
+
556
+ MPv1.setForm();
557
+
558
+ }
559
+
560
+ }
561
+
562
+ // === Payment Methods
563
+
564
+ MPv1.getPaymentMethods = function() {
565
+
566
+ var fragment = document.createDocumentFragment();
567
+ var paymentMethodsSelector =
568
+ document.querySelector( MPv1.selectors.paymentMethodSelector )
569
+ var mainPaymentMethodSelector =
570
+ document.querySelector( MPv1.selectors.paymentMethodSelector )
571
+
572
+ // Set loading.
573
+ mainPaymentMethodSelector.style.background =
574
+ "url(" + MPv1.paths.loading + ") 95% 50% no-repeat #fff";
575
+
576
+ // If customer and card.
577
+ if ( MPv1.customer_and_card.status ) {
578
+ paymentMethodsSelector = document.querySelector( MPv1.selectors.pmListOtherCards )
579
+ // Clean payment methods.
580
+ paymentMethodsSelector.innerHTML = "";
581
+ } else {
582
+ paymentMethodsSelector.innerHTML = "";
583
+ option = new Option( MPv1.text.choose + "...", "-1" );
584
+ fragment.appendChild( option );
585
+ }
586
+
587
+ Mercadopago.getAllPaymentMethods( function( code, payment_methods ) {
588
+
589
+ for ( var x=0; x < payment_methods.length; x++ ) {
590
+
591
+ var pm = payment_methods[x];
592
+
593
+ if ( ( pm.payment_type_id == "credit_card" || pm.payment_type_id == "debit_card" ||
594
+ pm.payment_type_id == "prepaid_card" ) && pm.status == "active" ) {
595
+
596
+ option = new Option( pm.name, pm.id );
597
+ option.setAttribute( "type_checkout", "custom" );
598
+ fragment.appendChild( option );
599
+
600
+ } // end if
601
+
602
+ } // end for
603
+
604
+ paymentMethodsSelector.appendChild( fragment );
605
+ mainPaymentMethodSelector.style.background = "#fff";
606
+
607
+ } );
608
+
609
+ }
610
+
611
+ // === Functions related to Create Tokens
612
+
613
+ MPv1.createTokenByEvent = function() {
614
+
615
+ var $inputs = MPv1.getForm().querySelectorAll( "[data-checkout]" );
616
+ var $inputs_to_create_token = MPv1.getInputsToCreateToken();
617
+
618
+ for (var x=0; x<$inputs.length; x++) {
619
+
620
+ var element = $inputs[x];
621
+
622
+ // Add events only in the required fields.
623
+ if ( $inputs_to_create_token
624
+ .indexOf( element.getAttribute( "data-checkout" ) ) > -1 ) {
625
+
626
+ var event = "focusout";
627
+
628
+ if ( element.nodeName == "SELECT" ) {
629
+ event = "change";
630
+ }
631
+
632
+ MPv1.addListenerEvent( element, event, MPv1.validateInputsCreateToken );
633
+
634
+ // For firefox.
635
+ MPv1.addListenerEvent( element, "blur", MPv1.validateInputsCreateToken );
636
+
637
+ if ( MPv1.create_token_on.keyup ) {
638
+ MPv1.addListenerEvent(element, "keyup", MPv1.validateInputsCreateToken );
639
+ }
640
+
641
+ if ( MPv1.create_token_on.paste ) {
642
+ MPv1.addListenerEvent(element, "paste", MPv1.validateInputsCreateToken );
643
+ }
644
+
645
+ }
646
+
647
+ }
648
+
649
+ }
650
+
651
+ MPv1.createTokenBySubmit = function() {
652
+ MPv1.addListenerEvent( document.querySelector( MPv1.selectors.form ), "submit", MPv1.doPay );
653
+ }
654
+
655
+ var doSubmit = false;
656
+
657
+ MPv1.doPay = function( event ) {
658
+ event.preventDefault();
659
+ if ( ! doSubmit ) {
660
+ MPv1.createToken();
661
+ return false;
662
+ }
663
+ }
664
+
665
+ MPv1.validateInputsCreateToken = function() {
666
+
667
+ var valid_to_create_token = true;
668
+ var $inputs = MPv1.getForm().querySelectorAll( "[data-checkout]" );
669
+ var $inputs_to_create_token = MPv1.getInputsToCreateToken();
670
+
671
+ for (var x=0; x<$inputs.length; x++) {
672
+
673
+ var element = $inputs[x];
674
+
675
+ // Check is a input to create token.
676
+ if ( $inputs_to_create_token
677
+ .indexOf( element.getAttribute( "data-checkout" ) ) > -1 ) {
678
+
679
+ if ( element.value == -1 || element.value == "" ) {
680
+ valid_to_create_token = false;
681
+ } // end if check values
682
+ } // end if check data-checkout
683
+ } // end for
684
+
685
+ if ( valid_to_create_token ) {
686
+ MPv1.createToken();
687
+ }
688
+
689
+ }
690
+
691
+ MPv1.createToken = function() {
692
+ MPv1.hideErrors();
693
+
694
+ // Show loading.
695
+ document.querySelector( MPv1.selectors.box_loading ).style.background =
696
+ "url(" + MPv1.paths.loading + ") 0 50% no-repeat #fff";
697
+
698
+ // Form.
699
+ var $form = MPv1.getForm();
700
+
701
+ Mercadopago.createToken( $form, MPv1.sdkResponseHandler );
702
+
703
+ return false;
704
+ }
705
+
706
+ MPv1.sdkResponseHandler = function( status, response ) {
707
+
708
+ // Hide loading.
709
+ document.querySelector( MPv1.selectors.box_loading ).style.background = "";
710
+
711
+ if ( status != 200 && status != 201 ) {
712
+ MPv1.showErrors( response );
713
+ } else {
714
+ var token = document.querySelector( MPv1.selectors.token );
715
+ token.value = response.id;
716
+
717
+ if ( MPv1.add_truncated_card ) {
718
+ var card = MPv1.truncateCard( response );
719
+ document.querySelector( MPv1.selectors.cardTruncated ).value = card;
720
+ }
721
+
722
+ if ( ! MPv1.create_token_on.event ) {
723
+ doSubmit = true;
724
+ btn = document.querySelector( MPv1.selectors.form );
725
+ btn.submit();
726
+ }
727
+ }
728
+
729
+ }
730
+
731
+ // === Useful functions
732
+
733
+ MPv1.resetBackgroundCard = function() {
734
+ document.querySelector( MPv1.selectors.paymentMethodSelector ).style.background =
735
+ "no-repeat #fff";
736
+ document.querySelector( MPv1.selectors.cardNumber ).style.background =
737
+ "no-repeat #fff";
738
+ }
739
+
740
+ MPv1.setForm = function() {
741
+ if ( MPv1.customer_and_card.status ) {
742
+ document.querySelector( MPv1.selectors.formDiv ).style.display = "none";
743
+ document.querySelector( MPv1.selectors.mpSecurityCodeCustomerAndCard ).removeAttribute( "style" );
744
+ } else {
745
+ document.querySelector( MPv1.selectors.mpSecurityCodeCustomerAndCard ).style.display = "none";
746
+ document.querySelector( MPv1.selectors.formDiv ).removeAttribute( "style" );
747
+ }
748
+
749
+ Mercadopago.clearSession();
750
+
751
+ if ( MPv1.create_token_on.event ) {
752
+ MPv1.createTokenByEvent();
753
+ MPv1.validateInputsCreateToken();
754
+ }
755
+
756
+ document.querySelector( MPv1.selectors.CustomerAndCard ).value =
757
+ MPv1.customer_and_card.status;
758
+ }
759
+
760
+ MPv1.getForm = function() {
761
+ if ( MPv1.customer_and_card.status ) {
762
+ return document.querySelector( MPv1.selectors.formCustomerAndCard );
763
+ } else {
764
+ return document.querySelector( MPv1.selectors.form );
765
+ }
766
+ }
767
+
768
+ MPv1.getInputsToCreateToken = function() {
769
+ if ( MPv1.customer_and_card.status ) {
770
+ return MPv1.inputs_to_create_token_customer_and_card;
771
+ } else {
772
+ return MPv1.inputs_to_create_token;
773
+ }
774
+ }
775
+
776
+ MPv1.truncateCard = function( response_card_token ) {
777
+
778
+ var first_six_digits;
779
+ var last_four_digits;
780
+
781
+ if ( MPv1.customer_and_card.status ) {
782
+ var cardSelector = document.querySelector( MPv1.selectors.paymentMethodSelector );
783
+ first_six_digits = cardSelector[cardSelector.options.selectedIndex]
784
+ .getAttribute( "first_six_digits" ).match( /.{1,4}/g )
785
+ last_four_digits = cardSelector[cardSelector.options.selectedIndex]
786
+ .getAttribute( "last_four_digits" )
787
+ } else {
788
+ first_six_digits = response_card_token.first_six_digits.match( /.{1,4}/g )
789
+ last_four_digits = response_card_token.last_four_digits
790
+ }
791
+
792
+ var card = first_six_digits[0] + " " +
793
+ first_six_digits[1] + "** **** " + last_four_digits;
794
+
795
+ return card;
796
+
797
+ }
798
+
799
+ MPv1.getAmount = function() {
800
+ return document.querySelector( MPv1.selectors.amount ).value;
801
+ }
802
+
803
+ // === Show errors
804
+
805
+ MPv1.showErrors = function( response ) {
806
+ var $form = MPv1.getForm();
807
+
808
+ for ( var x=0; x<response.cause.length; x++ ) {
809
+ var error = response.cause[x];
810
+ var $span = $form.querySelector( "#mp-error-" + error.code );
811
+ var $input = $form.querySelector( $span.getAttribute( "data-main" ) );
812
+
813
+ $span.style.display = "inline-block";
814
+ $input.classList.add( "mp-error-input" );
815
+ }
816
+
817
+ return;
818
+ }
819
+
820
+ MPv1.hideErrors = function() {
821
+
822
+ for ( var x = 0; x < document.querySelectorAll( "[data-checkout]" ).length; x++ ) {
823
+ var $field = document.querySelectorAll( "[data-checkout]" )[x];
824
+ $field.classList.remove( "mp-error-input" );
825
+ } // end for
826
+
827
+ for ( var x = 0; x < document.querySelectorAll( ".mp-error" ).length; x++ ) {
828
+ var $span = document.querySelectorAll( ".mp-error" )[x];
829
+ $span.style.display = "none";
830
+ }
831
+
832
+ return;
833
+
834
+ }
835
+
836
+ // === Add events to guessing
837
+
838
+ MPv1.addListenerEvent = function( el, eventName, handler ) {
839
+ if ( el.addEventListener ) {
840
+ el.addEventListener( eventName, handler );
841
+ } else {
842
+ el.attachEvent( "on" + eventName, function() {
843
+ handler.call( el );
844
+ });
845
+ }
846
+ };
847
+
848
+ MPv1.addListenerEvent(
849
+ document.querySelector( MPv1.selectors.cardNumber ),
850
+ "keyup", MPv1.guessingPaymentMethod
851
+ );
852
+ MPv1.addListenerEvent(
853
+ document.querySelector( MPv1.selectors.cardNumber ),
854
+ "keyup", MPv1.clearOptions
855
+ );
856
+ MPv1.addListenerEvent(
857
+ document.querySelector( MPv1.selectors.cardNumber),
858
+ "change", MPv1.guessingPaymentMethod
859
+ );
860
+
861
+ /*
862
+ *
863
+ * Utilities
864
+ *
865
+ */
866
+
867
+ MPv1.referer = (function () {
868
+ var referer = window.location.protocol + "//" +
869
+ window.location.hostname + ( window.location.port ? ":" + window.location.port: "" );
870
+ return referer;
871
+ })();
872
+
873
+ MPv1.AJAX = function( options ) {
874
+ var useXDomain = !!window.XDomainRequest;
875
+ var req = useXDomain ? new XDomainRequest() : new XMLHttpRequest()
876
+ var data;
877
+ options.url += ( options.url.indexOf( "?" ) >= 0 ? "&" : "?" ) + "referer=" + escape( MPv1.referer );
878
+ options.requestedMethod = options.method;
879
+ if ( useXDomain && options.method == "PUT" ) {
880
+ options.method = "POST";
881
+ options.url += "&_method=PUT";
882
+ }
883
+ req.open( options.method, options.url, true );
884
+ req.timeout = options.timeout || 1000;
885
+ if ( window.XDomainRequest ) {
886
+ req.onload = function() {
887
+ data = JSON.parse( req.responseText );
888
+ if ( typeof options.success === "function" ) {
889
+ options.success( options.requestedMethod === "POST" ? 201 : 200, data );
890
+ }
891
+ };
892
+ req.onerror = req.ontimeout = function() {
893
+ if ( typeof options.error === "function" ) {
894
+ options.error( 400, {
895
+ user_agent:window.navigator.userAgent, error : "bad_request", cause:[]
896
+ });
897
+ }
898
+ };
899
+ req.onprogress = function() {};
900
+ } else {
901
+ req.setRequestHeader( "Accept", "application/json" );
902
+ if ( options.contentType ) {
903
+ req.setRequestHeader( "Content-Type", options.contentType );
904
+ } else {
905
+ req.setRequestHeader( "Content-Type", "application/json" );
906
+ }
907
+ req.onreadystatechange = function() {
908
+ if ( this.readyState === 4 ) {
909
+ try {
910
+ if ( this.status >= 200 && this.status < 400 ) {
911
+ // Success!
912
+ data = JSON.parse( this.responseText );
913
+ if ( typeof options.success === "function" ) {
914
+ options.success( this.status, data );
915
+ }
916
+ } else if ( this.status >= 400 ) {
917
+ data = JSON.parse( this.responseText );
918
+ if ( typeof options.error === "function" ) {
919
+ options.error( this.status, data );
920
+ }
921
+ } else if ( typeof options.error === "function" ) {
922
+ options.error( 503, {} );
923
+ }
924
+ } catch (e) {
925
+ options.error( 503, {} );
926
+ }
927
+ }
928
+ };
929
+ }
930
+ if ( options.method === "GET" || options.data == null || options.data == undefined ) {
931
+ req.send();
932
+ } else {
933
+ req.send( JSON.stringify( options.data ) );
934
+ }
935
+ }
936
+
937
+ // === Initialization function
938
+
939
+ MPv1.Initialize = function( site_id, public_key, coupon_mode, discount_action_url, payer_email ) {
940
+
941
+ // Sets
942
+ MPv1.site_id = site_id;
943
+ MPv1.public_key = public_key;
944
+ MPv1.coupon_of_discounts.default = coupon_mode;
945
+ MPv1.coupon_of_discounts.discount_action_url = discount_action_url;
946
+ MPv1.coupon_of_discounts.payer_email = payer_email;
947
+
948
+ Mercadopago.setPublishableKey( MPv1.public_key );
949
+
950
+ // flow coupon of discounts
951
+ if ( MPv1.coupon_of_discounts.default ) {
952
+ MPv1.addListenerEvent(
953
+ document.querySelector( MPv1.selectors.applyCoupon ),
954
+ "click",
955
+ MPv1.checkCouponEligibility
956
+ );
957
+ } else {
958
+ document.querySelector( MPv1.selectors.formCoupon ).style.display = "none";
959
+ }
960
+
961
+ // Flow: customer & cards.
962
+ var selectorPmCustomerAndCards = document.querySelector( MPv1.selectors.pmCustomerAndCards );
963
+ if ( MPv1.customer_and_card.default && selectorPmCustomerAndCards.childElementCount > 0 ) {
964
+ MPv1.addListenerEvent(
965
+ document.querySelector( MPv1.selectors.paymentMethodSelector ),
966
+ "change", MPv1.cardsHandler
967
+ );
968
+ MPv1.cardsHandler();
969
+ } else {
970
+ // If customer & cards is disabled or customer does not have cards.
971
+ MPv1.customer_and_card.status = false;
972
+ document.querySelector( MPv1.selectors.formCustomerAndCard ).style.display = "none";
973
+ }
974
+
975
+ if ( MPv1.create_token_on.event ) {
976
+ MPv1.createTokenByEvent();
977
+ } else {
978
+ MPv1.createTokenBySubmit()
979
+ }
980
+
981
+ // flow: MLM
982
+ if ( MPv1.site_id != "MLM" ) {
983
+ Mercadopago.getIdentificationTypes();
984
+ }
985
+
986
+ if ( MPv1.site_id == "MLM" ) {
987
+
988
+ // Hide documento for mex.
989
+ document.querySelector( MPv1.selectors.mpDoc ).style.display = "none";
990
+
991
+ document.querySelector( MPv1.selectors.formCustomerAndCard ).removeAttribute( "style" );
992
+ document.querySelector( MPv1.selectors.formCustomerAndCard ).style.padding = "36px 12px 16px 12px";
993
+ document.querySelector( MPv1.selectors.mpSecurityCodeCustomerAndCard ).style.display = "none";
994
+
995
+ // Removing not used fields for this country.
996
+ MPv1.inputs_to_create_token.splice(
997
+ MPv1.inputs_to_create_token.indexOf( "docType" ),
998
+ 1 );
999
+ MPv1.inputs_to_create_token.splice(
1000
+ MPv1.inputs_to_create_token.indexOf( "docNumber" ),
1001
+ 1 );
1002
+
1003
+ MPv1.addListenerEvent(
1004
+ document.querySelector( MPv1.selectors.paymentMethodSelector ),
1005
+ "change",
1006
+ MPv1.changePaymetMethodSelector
1007
+ );
1008
+
1009
+ // Get payment methods and populate selector.
1010
+ MPv1.getPaymentMethods();
1011
+
1012
+ }
1013
+
1014
+ // flow: MLB AND MCO
1015
+ if ( MPv1.site_id == "MLB" ) {
1016
+
1017
+ document.querySelector( MPv1.selectors.mpDocType ).style.display = "none";
1018
+ document.querySelector( MPv1.selectors.mpIssuer ).style.display = "none";
1019
+ // Adjust css.
1020
+ document.querySelector( MPv1.selectors.docNumber ).classList.remove( "mp-col-75" );
1021
+ document.querySelector( MPv1.selectors.docNumber ).classList.add( "mp-col-100" );
1022
+
1023
+ } else if ( MPv1.site_id == "MCO" ) {
1024
+ document.querySelector( MPv1.selectors.mpIssuer ).style.display = "none";
1025
+ } else if ( MPv1.site_id == "MLA" ) {
1026
+ document.querySelector( MPv1.selectors.boxInstallmentsSelector ).classList.remove( "mp-col-100" );
1027
+ document.querySelector( MPv1.selectors.boxInstallmentsSelector ).classList.add( "mp-col-70" );
1028
+ document.querySelector( MPv1.selectors.taxCFT ).style.display = "block";
1029
+ document.querySelector( MPv1.selectors.taxTEA ).style.display = "block";
1030
+ MPv1.addListenerEvent( document.querySelector( MPv1.selectors.installments ), "change", MPv1.showTaxes );
1031
+ } else if ( MPv1.site_id == "MLC" ) {
1032
+ document.querySelector(MPv1.selectors.mpIssuer).style.display = "none";
1033
+ }
1034
+
1035
+ if ( MPv1.debug ) {
1036
+ document.querySelector( MPv1.selectors.utilities_fields ).style.display = "inline-block";
1037
+ }
1038
+
1039
+ document.querySelector( MPv1.selectors.site_id ).value = MPv1.site_id;
1040
+
1041
+ return;
1042
+
1043
+ }
1044
+
1045
+ this.MPv1 = MPv1;
1046
+
1047
+ } ).call();
1048
+
1049
+ // Overriding this function to give form padding attribute.
1050
+ MPv1.setForm = function() {
1051
+ if ( MPv1.customer_and_card.status ) {
1052
+ document.querySelector( MPv1.selectors.form ).style.display = "none";
1053
+ document.querySelector( MPv1.selectors.mpSecurityCodeCustomerAndCard ).removeAttribute( "style" );
1054
+ } else {
1055
+ document.querySelector( MPv1.selectors.mpSecurityCodeCustomerAndCard ).style.display = "none";
1056
+ document.querySelector( MPv1.selectors.form ).removeAttribute( "style" );
1057
+ document.querySelector( MPv1.selectors.form ).style.padding = "0px 12px 0px 12px";
1058
+ }
1059
+ Mercadopago.clearSession();
1060
+ if ( MPv1.create_token_on.event ) {
1061
+ MPv1.createTokenByEvent();
1062
+ MPv1.validateInputsCreateToken();
1063
+ }
1064
+ document.querySelector( MPv1.selectors.CustomerAndCard ).value = MPv1.customer_and_card.status;
1065
+ }
1066
+
1067
+ MPv1.getAmount = function() {
1068
+ return document.querySelector( MPv1.selectors.amount ).value - document.querySelector( MPv1.selectors.discount ).value;
1069
+ }
1070
+
1071
+ MPv1.getAmountWithoutDiscount = function() {
1072
+ return document.querySelector( MPv1.selectors.amount ).value;
1073
+ }
1074
+
1075
+ MPv1.showErrors = function( response ) {
1076
+ var $form = MPv1.getForm();
1077
+ for ( var x=0; x<response.cause.length; x++ ) {
1078
+ var error = response.cause[x];
1079
+ var $span = $form.querySelector( "#mp-error-" + error.code );
1080
+ var $input = $form.querySelector( $span.getAttribute( "data-main" ) );
1081
+ $span.style.display = "inline-block";
1082
+ $input.classList.add( "mp-error-input" );
1083
+ }
1084
+ return;
1085
+ }
assets/js/ticket.js ADDED
@@ -0,0 +1,591 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ( function() {
2
+
3
+ var MPv1Ticket = {
4
+ site_id: "",
5
+ coupon_of_discounts: {
6
+ discount_action_url: "",
7
+ payer_email: "",
8
+ default: true,
9
+ status: false
10
+ },
11
+ inputs_to_create_discount: [
12
+ "couponCodeTicket",
13
+ "applyCouponTicket"
14
+ ],
15
+ inputs_to_validate_ticket: [
16
+ "firstname",
17
+ "lastname",
18
+ "docNumber",
19
+ "address",
20
+ "number",
21
+ "city",
22
+ "state",
23
+ "zipcode"
24
+ ],
25
+ selectors: {
26
+ // currency
27
+ currency_ratio: "#currency_ratioTicket",
28
+ // coupom
29
+ couponCode: "#couponCodeTicket",
30
+ applyCoupon: "#applyCouponTicket",
31
+ mpCouponApplyed: "#mpCouponApplyedTicket",
32
+ mpCouponError: "#mpCouponErrorTicket",
33
+ campaign_id: "#campaign_idTicket",
34
+ campaign: "#campaignTicket",
35
+ discount: "#discountTicket",
36
+ // payment method and checkout
37
+ paymentMethodId: "#paymentMethodIdTicket",
38
+ amount: "#amountTicket",
39
+ // other rules
40
+ boxFirstName: "#box-firstname",
41
+ boxLastName: "#box-lastname",
42
+ boxDocNumber: "#box-docnumber",
43
+ titleFirstName: ".title-name",
44
+ titleFirstNameRazaoSocial: ".title-razao-social",
45
+ titleDocNumber: ".title-cpf",
46
+ titleDocNumberCNPJ: ".title-cnpj",
47
+ radioTypeFisica: '#MPv1Ticket-docType-fisica',
48
+ radioTypeJuridica: '#MPv1Ticket-docType-juridica',
49
+ // febraban
50
+ firstname: "#febrabanFirstname",
51
+ lastname: "#febrabanLastname",
52
+ cpfcnpj: "#cpfcnpj",
53
+ address: "#febrabanAddress",
54
+ number: "#febrabanNumber",
55
+ city: "#febrabanCity",
56
+ state: "#febrabanState",
57
+ zipcode: "#febrabanZipcode",
58
+ // form
59
+ formCoupon: "#mercadopago-form-coupon-ticket",
60
+ formTicket: "#form-ticket",
61
+ box_loading: "#mp-box-loading",
62
+ submit: "#btnSubmit",
63
+ form: "#mercadopago-form-ticket"
64
+ },
65
+ text: {
66
+ discount_info1: "You will save",
67
+ discount_info2: "with discount from",
68
+ discount_info3: "Total of your purchase:",
69
+ discount_info4: "Total of your purchase with discount:",
70
+ discount_info5: "*Uppon payment approval",
71
+ discount_info6: "Terms and Conditions of Use",
72
+ coupon_empty: "Please, inform your coupon code",
73
+ apply: "Apply",
74
+ remove: "Remove"
75
+ },
76
+ paths: {
77
+ loading: "images/loading.gif",
78
+ check: "images/check.png",
79
+ error: "images/error.png"
80
+ }
81
+ }
82
+
83
+ // === Coupon of Discounts
84
+
85
+ MPv1Ticket.currencyIdToCurrency = function ( currency_id ) {
86
+ if ( currency_id == "ARS" ) {
87
+ return "$";
88
+ } else if ( currency_id == "BRL" ) {
89
+ return "R$";
90
+ } else if ( currency_id == "COP" ) {
91
+ return "$";
92
+ } else if ( currency_id == "CLP" ) {
93
+ return "$";
94
+ } else if ( currency_id == "MXN" ) {
95
+ return "$";
96
+ } else if ( currency_id == "VEF" ) {
97
+ return "Bs";
98
+ } else if ( currency_id == "PEN" ) {
99
+ return "S/";
100
+ } else if ( currency_id == "UYU" ) {
101
+ return "$U";
102
+ } else {
103
+ return "$";
104
+ }
105
+ }
106
+
107
+ MPv1Ticket.checkCouponEligibility = function () {
108
+ if ( document.querySelector( MPv1Ticket.selectors.couponCode ).value == "" ) {
109
+ // Coupon code is empty.
110
+ document.querySelector( MPv1Ticket.selectors.mpCouponApplyed ).style.display = "none";
111
+ document.querySelector( MPv1Ticket.selectors.mpCouponError ).style.display = "block";
112
+ document.querySelector( MPv1Ticket.selectors.mpCouponError ).innerHTML = MPv1Ticket.text.coupon_empty;
113
+ MPv1Ticket.coupon_of_discounts.status = false;
114
+ document.querySelector( MPv1Ticket.selectors.couponCode ).style.background = null;
115
+ document.querySelector( MPv1Ticket.selectors.applyCoupon ).value = MPv1Ticket.text.apply;
116
+ document.querySelector( MPv1Ticket.selectors.discount ).value = 0;
117
+ // --- No cards handler ---
118
+ } else if ( MPv1Ticket.coupon_of_discounts.status ) {
119
+ // We already have a coupon set, so we remove it.
120
+ document.querySelector( MPv1Ticket.selectors.mpCouponApplyed ).style.display = "none";
121
+ document.querySelector( MPv1Ticket.selectors.mpCouponError ).style.display = "none";
122
+ MPv1Ticket.coupon_of_discounts.status = false;
123
+ document.querySelector( MPv1Ticket.selectors.applyCoupon ).style.background = null;
124
+ document.querySelector( MPv1Ticket.selectors.applyCoupon ).value = MPv1Ticket.text.apply;
125
+ document.querySelector( MPv1Ticket.selectors.couponCode ).value = "";
126
+ document.querySelector( MPv1Ticket.selectors.couponCode ).style.background = null;
127
+ document.querySelector( MPv1Ticket.selectors.discount ).value = 0;
128
+ // --- No cards handler ---
129
+ } else {
130
+ // Set loading.
131
+ document.querySelector( MPv1Ticket.selectors.mpCouponApplyed ).style.display = "none";
132
+ document.querySelector( MPv1Ticket.selectors.mpCouponError ).style.display = "none";
133
+ document.querySelector( MPv1Ticket.selectors.couponCode ).style.background = "url(" + MPv1Ticket.paths.loading + ") 98% 50% no-repeat #fff";
134
+ document.querySelector( MPv1Ticket.selectors.applyCoupon ).disabled = true;
135
+
136
+ // Check if there are params in the url.
137
+ var url = MPv1Ticket.coupon_of_discounts.discount_action_url;
138
+ var sp = "?";
139
+ if ( url.indexOf( "?" ) >= 0 ) {
140
+ sp = "&";
141
+ }
142
+ url += sp + "site_id=" + MPv1Ticket.site_id;
143
+ url += "&coupon_id=" + document.querySelector( MPv1Ticket.selectors.couponCode ).value;
144
+ url += "&amount=" + document.querySelector( MPv1Ticket.selectors.amount ).value;
145
+ url += "&payer=" + MPv1Ticket.coupon_of_discounts.payer_email;
146
+ //url += "&payer=" + document.getElementById( "billing_email" ).value;
147
+
148
+ MPv1Ticket.AJAX({
149
+ url: url,
150
+ method : "GET",
151
+ timeout : 5000,
152
+ error: function() {
153
+ // Request failed.
154
+ document.querySelector( MPv1Ticket.selectors.mpCouponApplyed ).style.display = "none";
155
+ document.querySelector( MPv1Ticket.selectors.mpCouponError ).style.display = "none";
156
+ MPv1Ticket.coupon_of_discounts.status = false;
157
+ document.querySelector( MPv1Ticket.selectors.applyCoupon ).style.background = null;
158
+ document.querySelector( MPv1Ticket.selectors.applyCoupon ).value = MPv1Ticket.text.apply;
159
+ document.querySelector( MPv1Ticket.selectors.couponCode ).value = "";
160
+ document.querySelector( MPv1Ticket.selectors.couponCode ).style.background = null;
161
+ document.querySelector( MPv1Ticket.selectors.discount ).value = 0;
162
+ // --- No cards handler ---
163
+ },
164
+ success : function ( status, response ) {
165
+ if ( response.status == 200 ) {
166
+ document.querySelector( MPv1Ticket.selectors.mpCouponApplyed ).style.display =
167
+ "block";
168
+ document.querySelector( MPv1Ticket.selectors.discount ).value =
169
+ response.response.coupon_amount;
170
+ document.querySelector( MPv1Ticket.selectors.mpCouponApplyed ).innerHTML =
171
+ //"<div style='border-style: solid; border-width:thin; " +
172
+ //"border-color: #009EE3; padding: 8px 8px 8px 8px; margin-top: 4px;'>" +
173
+ MPv1Ticket.text.discount_info1 + " <strong>" +
174
+ MPv1Ticket.currencyIdToCurrency( response.response.currency_id ) + " " +
175
+ Math.round( response.response.coupon_amount * 100 ) / 100 +
176
+ "</strong> " + MPv1Ticket.text.discount_info2 + " " +
177
+ response.response.name + ".<br>" + MPv1Ticket.text.discount_info3 + " <strong>" +
178
+ MPv1Ticket.currencyIdToCurrency( response.response.currency_id ) + " " +
179
+ Math.round( MPv1Ticket.getAmountWithoutDiscount() * 100 ) / 100 +
180
+ "</strong><br>" + MPv1Ticket.text.discount_info4 + " <strong>" +
181
+ MPv1Ticket.currencyIdToCurrency( response.response.currency_id ) + " " +
182
+ Math.round( MPv1Ticket.getAmount() * 100 ) / 100 + "*</strong><br>" +
183
+ "<i>" + MPv1Ticket.text.discount_info5 + "</i><br>" +
184
+ "<a href='https://api.mercadolibre.com/campaigns/" +
185
+ response.response.id +
186
+ "/terms_and_conditions?format_type=html' target='_blank'>" +
187
+ MPv1Ticket.text.discount_info6 + "</a>";
188
+ document.querySelector( MPv1Ticket.selectors.mpCouponError ).style.display =
189
+ "none";
190
+ MPv1Ticket.coupon_of_discounts.status = true;
191
+ document.querySelector( MPv1Ticket.selectors.couponCode ).style.background =
192
+ null;
193
+ document.querySelector( MPv1Ticket.selectors.couponCode ).style.background =
194
+ "url(" + MPv1Ticket.paths.check + ") 98% 50% no-repeat #fff";
195
+ document.querySelector( MPv1Ticket.selectors.applyCoupon ).value =
196
+ MPv1Ticket.text.remove;
197
+ // --- No cards handler ---
198
+ document.querySelector( MPv1Ticket.selectors.campaign_id ).value =
199
+ response.response.id;
200
+ document.querySelector( MPv1Ticket.selectors.campaign ).value =
201
+ response.response.name;
202
+ } else {
203
+ document.querySelector( MPv1Ticket.selectors.mpCouponApplyed ).style.display = "none";
204
+ document.querySelector( MPv1Ticket.selectors.mpCouponError ).style.display = "block";
205
+ document.querySelector( MPv1Ticket.selectors.mpCouponError ).innerHTML = response.response.message;
206
+ MPv1Ticket.coupon_of_discounts.status = false;
207
+ document.querySelector(MPv1Ticket.selectors.couponCode).style.background = null;
208
+ document.querySelector( MPv1Ticket.selectors.couponCode ).style.background = "url(" + MPv1Ticket.paths.error + ") 98% 50% no-repeat #fff";
209
+ document.querySelector( MPv1Ticket.selectors.applyCoupon ).value = MPv1Ticket.text.apply;
210
+ document.querySelector( MPv1Ticket.selectors.discount ).value = 0;
211
+ // --- No cards handler ---
212
+ }
213
+ document.querySelector( MPv1Ticket.selectors.applyCoupon ).disabled = false;
214
+ }
215
+ });
216
+ }
217
+ }
218
+
219
+ // === Initialization function
220
+
221
+ MPv1Ticket.addListenerEvent = function( el, eventName, handler ) {
222
+ if ( el.addEventListener ) {
223
+ el.addEventListener( eventName, handler );
224
+ } else {
225
+ el.attachEvent( "on" + eventName, function() {
226
+ handler.call( el );
227
+ } );
228
+ }
229
+ };
230
+
231
+ /*
232
+ *
233
+ * Utilities
234
+ *
235
+ */
236
+
237
+ MPv1Ticket.referer = (function () {
238
+ var referer = window.location.protocol + "//" +
239
+ window.location.hostname + ( window.location.port ? ":" + window.location.port: "" );
240
+ return referer;
241
+ })();
242
+
243
+ MPv1Ticket.AJAX = function( options ) {
244
+ var useXDomain = !!window.XDomainRequest;
245
+ var req = useXDomain ? new XDomainRequest() : new XMLHttpRequest()
246
+ var data;
247
+ options.url += ( options.url.indexOf( "?" ) >= 0 ? "&" : "?" ) + "referer=" + escape( MPv1Ticket.referer );
248
+ options.requestedMethod = options.method;
249
+ if ( useXDomain && options.method == "PUT" ) {
250
+ options.method = "POST";
251
+ options.url += "&_method=PUT";
252
+ }
253
+ req.open( options.method, options.url, true );
254
+ req.timeout = options.timeout || 1000;
255
+ if ( window.XDomainRequest ) {
256
+ req.onload = function() {
257
+ data = JSON.parse( req.responseText );
258
+ if ( typeof options.success === "function" ) {
259
+ options.success( options.requestedMethod === "POST" ? 201 : 200, data );
260
+ }
261
+ };
262
+ req.onerror = req.ontimeout = function() {
263
+ if ( typeof options.error === "function" ) {
264
+ options.error( 400, {
265
+ user_agent:window.navigator.userAgent, error : "bad_request", cause:[]
266
+ });
267
+ }
268
+ };
269
+ req.onprogress = function() {};
270
+ } else {
271
+ req.setRequestHeader( "Accept", "application/json" );
272
+ if ( options.contentType ) {
273
+ req.setRequestHeader( "Content-Type", options.contentType );
274
+ } else {
275
+ req.setRequestHeader( "Content-Type", "application/json" );
276
+ }
277
+ req.onreadystatechange = function() {
278
+ if ( this.readyState === 4 ) {
279
+ try {
280
+ if ( this.status >= 200 && this.status < 400 ) {
281
+ // Success!
282
+ data = JSON.parse( this.responseText );
283
+ if ( typeof options.success === "function" ) {
284
+ options.success( this.status, data );
285
+ }
286
+ } else if ( this.status >= 400 ) {
287
+ data = JSON.parse( this.responseText );
288
+ if ( typeof options.error === "function" ) {
289
+ options.error( this.status, data );
290
+ }
291
+ } else if ( typeof options.error === "function" ) {
292
+ options.error( 503, {} );
293
+ }
294
+ } catch (e) {
295
+ options.error( 503, {} );
296
+ }
297
+ }
298
+ };
299
+ }
300
+ if ( options.method === "GET" || options.data == null || options.data == undefined ) {
301
+ req.send();
302
+ } else {
303
+ req.send( JSON.stringify( options.data ) );
304
+ }
305
+ }
306
+
307
+ // Form validation
308
+
309
+ var doSubmitTicket = false;
310
+
311
+ MPv1Ticket.doPay = function(febraban) {
312
+ if(!doSubmitTicket){
313
+ doSubmitTicket=true;
314
+ document.querySelector(MPv1Ticket.selectors.box_loading).style.background = "url("+MPv1Ticket.paths.loading+") 0 50% no-repeat #fff";
315
+ btn = document.querySelector(MPv1Ticket.selectors.form);
316
+ btn.submit();
317
+ }
318
+ }
319
+
320
+ MPv1Ticket.validateInputsTicket = function(event) {
321
+ event.preventDefault();
322
+ MPv1Ticket.hideErrors();
323
+ var valid_to_ticket = true;
324
+ var $inputs = MPv1Ticket.getForm().querySelectorAll("[data-checkout]");
325
+ var $inputs_to_validate_ticket = MPv1Ticket.inputs_to_validate_ticket;
326
+ var febraban = [];
327
+ var arr = [];
328
+ for (var x = 0; x < $inputs.length; x++) {
329
+ var element = $inputs[x];
330
+ if($inputs_to_validate_ticket.indexOf(element.getAttribute("data-checkout")) > -1){
331
+ if (element.value == -1 || element.value == "") {
332
+ arr.push(element.id);
333
+ valid_to_ticket = false;
334
+ } else {
335
+ febraban[element.id] = element.value;
336
+ }
337
+ }
338
+ }
339
+ if (!valid_to_ticket) {
340
+ MPv1Ticket.showErrors(arr);
341
+ } else {
342
+ MPv1Ticket.doPay(febraban);
343
+ }
344
+ }
345
+
346
+ MPv1Ticket.getForm = function(){
347
+ return document.querySelector(MPv1Ticket.selectors.form);
348
+ }
349
+
350
+ MPv1Ticket.addListenerEvent = function(el, eventName, handler){
351
+ if (el.addEventListener) {
352
+ el.addEventListener(eventName, handler);
353
+ } else {
354
+ el.attachEvent("on" + eventName, function(){
355
+ handler.call(el);
356
+ });
357
+ }
358
+ };
359
+
360
+ // Show/hide errors.
361
+
362
+ MPv1Ticket.showErrors = function(fields){
363
+ var $form = MPv1Ticket.getForm();
364
+ for(var x = 0; x < fields.length; x++){
365
+ var f = fields[x];
366
+ var $span = $form.querySelector("#error_" + f);
367
+ var $input = $form.querySelector($span.getAttribute("data-main"));
368
+ $span.style.display = "inline-block";
369
+ $input.classList.add("mp-error-input");
370
+ }
371
+ return;
372
+ }
373
+
374
+ MPv1Ticket.hideErrors = function(){
375
+ for(var x = 0; x < document.querySelectorAll("[data-checkout]").length; x++){
376
+ var $field = document.querySelectorAll("[data-checkout]")[x];
377
+ $field.classList.remove("mp-error-input");
378
+ } //end for
379
+ for(var x = 0; x < document.querySelectorAll(".erro_febraban").length; x++){
380
+ var $span = document.querySelectorAll(".erro_febraban")[x];
381
+ $span.style.display = "none";
382
+ }
383
+ return;
384
+ }
385
+
386
+ MPv1Ticket.actionsMLB = function() {
387
+ MPv1Ticket.initializeDocumentPessoaFisica();
388
+ MPv1Ticket.addListenerEvent(document.querySelector(MPv1Ticket.selectors.cpfcnpj), 'keyup', MPv1Ticket.execFormatDocument);
389
+ MPv1Ticket.addListenerEvent(document.querySelector(MPv1Ticket.selectors.radioTypeFisica), "change", MPv1Ticket.initializeDocumentPessoaFisica);
390
+ MPv1Ticket.addListenerEvent(document.querySelector(MPv1Ticket.selectors.radioTypeJuridica), "change", MPv1Ticket.initializeDocumentPessoaJuridica);
391
+ return;
392
+ }
393
+
394
+ MPv1Ticket.initializeDocumentPessoaFisica = function() {
395
+ // show elements
396
+ document.querySelector(MPv1Ticket.selectors.boxLastName).style.display = "block";
397
+ document.querySelector(MPv1Ticket.selectors.titleFirstName).style.display = "block";
398
+ document.querySelector(MPv1Ticket.selectors.titleDocNumber).style.display = "block";
399
+ // adjustment css
400
+ document.querySelector(MPv1Ticket.selectors.boxFirstName).classList.remove("form-col-8");
401
+ document.querySelector(MPv1Ticket.selectors.boxFirstName).classList.add("form-col-4");
402
+ // hide elements
403
+ document.querySelector(MPv1Ticket.selectors.titleFirstNameRazaoSocial).style.display = "none";
404
+ document.querySelector(MPv1Ticket.selectors.titleDocNumberCNPJ).style.display = "none";
405
+ // force max length CPF
406
+ document.querySelector(MPv1Ticket.selectors.cpfcnpj).maxLength = 14;
407
+ }
408
+
409
+ MPv1Ticket.initializeDocumentPessoaJuridica = function() {
410
+ // show elements
411
+ document.querySelector(MPv1Ticket.selectors.titleFirstNameRazaoSocial).style.display = "block";
412
+ document.querySelector(MPv1Ticket.selectors.titleDocNumberCNPJ).style.display = "block";
413
+ // adjustment css
414
+ document.querySelector(MPv1Ticket.selectors.boxFirstName).classList.remove("form-col-4");
415
+ document.querySelector(MPv1Ticket.selectors.boxFirstName).classList.add("form-col-8");
416
+ // Hide Elements
417
+ document.querySelector(MPv1Ticket.selectors.boxLastName).style.display = "none";
418
+ document.querySelector(MPv1Ticket.selectors.titleFirstName).style.display = "none";
419
+ document.querySelector(MPv1Ticket.selectors.titleDocNumber).style.display = "none";
420
+ // force max length CNPJ
421
+ document.querySelector(MPv1Ticket.selectors.cpfcnpj).maxLength = 18;
422
+ }
423
+
424
+ MPv1Ticket.validaCPF = function(strCPF) {
425
+ var Soma;
426
+ var Resto;
427
+ strCPF = strCPF.replace(/[.-\s]/g, "")
428
+ Soma = 0;
429
+ if (strCPF == "00000000000") {
430
+ return false;
431
+ }
432
+ for (i=1; i<=9; i++) {
433
+ Soma = Soma + parseInt(strCPF.substring(i-1, i)) * (11 - i);
434
+ }
435
+ Resto = (Soma * 10) % 11;
436
+ if ((Resto == 10) || (Resto == 11)) {
437
+ Resto = 0;
438
+ }
439
+ if (Resto != parseInt(strCPF.substring(9, 10)) ) {
440
+ return false;
441
+ }
442
+ Soma = 0;
443
+ for (i = 1; i <= 10; i++){
444
+ Soma = Soma + parseInt(strCPF.substring(i-1, i)) * (12 - i);
445
+ }
446
+ Resto = (Soma * 10) % 11;
447
+ if ((Resto == 10) || (Resto == 11)) {
448
+ Resto = 0;
449
+ }
450
+ if (Resto != parseInt(strCPF.substring(10, 11) ) ) {
451
+ return false;
452
+ }
453
+ return true;
454
+ }
455
+
456
+ MPv1Ticket.validaCNPJ = function(strCNPJ) {
457
+ strCNPJ = strCNPJ.replace(".","");
458
+ strCNPJ = strCNPJ.replace(".","");
459
+ strCNPJ = strCNPJ.replace(".","");
460
+ strCNPJ = strCNPJ.replace("-","");
461
+ strCNPJ = strCNPJ.replace("/","");
462
+ var numeros, digitos, soma, i, resultado, pos, tamanho, digitos_iguais;
463
+ digitos_iguais = 1;
464
+ if (strCNPJ.length < 14 && strCNPJ.length < 15) {
465
+ return false;
466
+ }
467
+ for (i = 0; i < strCNPJ.length - 1; i++) {
468
+ if (strCNPJ.charAt(i) != strCNPJ.charAt(i + 1)) {
469
+ digitos_iguais = 0;
470
+ break;
471
+ }
472
+ }
473
+ if (!digitos_iguais) {
474
+ tamanho = strCNPJ.length - 2
475
+ numeros = strCNPJ.substring(0,tamanho);
476
+ digitos = strCNPJ.substring(tamanho);
477
+ soma = 0;
478
+ pos = tamanho - 7;
479
+ for (i = tamanho; i >= 1; i--) {
480
+ soma += numeros.charAt(tamanho - i) * pos--;
481
+ if (pos < 2) {
482
+ pos = 9;
483
+ }
484
+ }
485
+ resultado = soma % 11 < 2 ? 0 : 11 - soma % 11;
486
+ if (resultado != digitos.charAt(0)) {
487
+ return false;
488
+ }
489
+ tamanho = tamanho + 1;
490
+ numeros = strCNPJ.substring(0,tamanho);
491
+ soma = 0;
492
+ pos = tamanho - 7;
493
+ for (i = tamanho; i >= 1; i--) {
494
+ soma += numeros.charAt(tamanho - i) * pos--;
495
+ if (pos < 2) {
496
+ pos = 9;
497
+ }
498
+ }
499
+ resultado = soma % 11 < 2 ? 0 : 11 - soma % 11;
500
+ if (resultado != digitos.charAt(1)) {
501
+ return false;
502
+ }
503
+ return true;
504
+ } else {
505
+ return false;
506
+ }
507
+ }
508
+
509
+ MPv1Ticket.execFormatDocument = function() {
510
+ v_obj= this;
511
+ setTimeout(function() {
512
+ v_obj.value = MPv1Ticket.formatDocument(v_obj.value)
513
+ }, 1)
514
+ }
515
+
516
+ MPv1Ticket.formatDocument = function(v) {
517
+ //Remove tudo o que não é dígito
518
+ v=v.replace(/\D/g,"")
519
+ if (document.querySelector(MPv1Ticket.selectors.radioTypeFisica).checked) { //CPF
520
+ //Coloca um ponto entre o terceiro e o quarto dígitos
521
+ v=v.replace(/(\d{3})(\d)/,"$1.$2")
522
+ //Coloca um ponto entre o terceiro e o quarto dígitos
523
+ //de novo (para o segundo bloco de números)
524
+ v=v.replace(/(\d{3})(\d)/,"$1.$2")
525
+ //Coloca um hífen entre o terceiro e o quarto dígitos
526
+ v=v.replace(/(\d{3})(\d{1,2})$/,"$1-$2")
527
+ } else { //CNPJ
528
+ //Coloca ponto entre o segundo e o terceiro dígitos
529
+ v=v.replace(/^(\d{2})(\d)/, "$1.$2")
530
+ //Coloca ponto entre o quinto e o sexto dígitos
531
+ v=v.replace(/^(\d{2})\.(\d{3})(\d)/, "$1.$2.$3")
532
+ //Coloca uma barra entre o oitavo e o nono dígitos
533
+ v=v.replace(/\.(\d{3})(\d)/, ".$1/$2")
534
+ //Coloca um hífen depois do bloco de quatro dígitos
535
+ v=v.replace(/(\d{4})(\d)/, "$1-$2")
536
+ }
537
+ return v
538
+ }
539
+
540
+ // ===
541
+
542
+ MPv1Ticket.Initialize = function( site_id, coupon_mode, discount_action_url, payer_email ) {
543
+
544
+ // Sets.
545
+ MPv1Ticket.site_id = site_id;
546
+ MPv1Ticket.coupon_of_discounts.default = coupon_mode;
547
+ MPv1Ticket.coupon_of_discounts.discount_action_url = discount_action_url;
548
+ MPv1Ticket.coupon_of_discounts.payer_email = payer_email;
549
+
550
+ // Flow coupon of discounts.
551
+ if ( MPv1Ticket.coupon_of_discounts.default ) {
552
+ MPv1Ticket.addListenerEvent(
553
+ document.querySelector( MPv1Ticket.selectors.applyCoupon ),
554
+ "click",
555
+ MPv1Ticket.checkCouponEligibility
556
+ );
557
+ } else {
558
+ document.querySelector( MPv1Ticket.selectors.formCoupon ).style.display = "none";
559
+ }
560
+
561
+ // flow: MLB
562
+ if (MPv1Ticket.site_id == "MLB") {
563
+ MPv1Ticket.actionsMLB();
564
+ }
565
+ /*if (MPv1Ticket.site_id != "MLB") {
566
+ document.querySelector(MPv1Ticket.selectors.formTicket).style.display = "none";
567
+ } else {
568
+ MPv1Ticket.addListenerEvent(
569
+ document.querySelector(MPv1Ticket.selectors.form),
570
+ "submit",
571
+ MPv1Ticket.validateInputsTicket
572
+ );
573
+ }*/
574
+
575
+ return;
576
+
577
+ }
578
+
579
+ this.MPv1Ticket = MPv1Ticket;
580
+
581
+ } ).call();
582
+
583
+ MPv1Ticket.getAmount = function() {
584
+ return document.querySelector( MPv1Ticket.selectors.amount )
585
+ .value - document.querySelector( MPv1Ticket.selectors.discount ).value;
586
+ }
587
+
588
+ MPv1Ticket.getAmountWithoutDiscount = function() {
589
+ return document.querySelector( MPv1Ticket.selectors.amount ).value;
590
+ }
591
+
i18n/languages/woocommerce-mercadopago-es_AR.mo ADDED
Binary file
i18n/languages/woocommerce-mercadopago-es_AR.po ADDED
@@ -0,0 +1,1010 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # WordPress Blank Pot
2
+ # Copyright (C) 2014 ...
3
+ # This file is distributed under the GNU General Public License v2 or later.
4
+ msgid ""
5
+ msgstr ""
6
+ "Project-Id-Version: WordPress Blank Pot v1.0.0\n"
7
+ "POT-Creation-Date: 2016-05-23 14:52-0300\n"
8
+ "PO-Revision-Date: \n"
9
+ "Language-Team: Product Development <translations@example.com>\n"
10
+ "Report-Msgid-Bugs-To: Translator Name <translations@example.com>\n"
11
+ "MIME-Version: 1.0\n"
12
+ "Content-Type: text/plain; charset=UTF-8\n"
13
+ "Content-Transfer-Encoding: 8bit\n"
14
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
+ "X-Textdomain-Support: yesX-Generator: Poedit 1.6.4\n"
16
+ "X-Poedit-SourceCharset: UTF-8\n"
17
+ "X-Poedit-KeywordsList: __;_e;esc_html_e;esc_html_x:1,2c;esc_html__;esc_attr_e;esc_attr_x:1,2c;esc_attr__;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_x:1,2c;_n:1,2;"
18
+ "_n_noop:1,2;__ngettext:1,2;__ngettext_noop:1,2;_c,_nc:4c,1,2\n"
19
+ "X-Poedit-Basepath: ../Documents/woocommerce (MAMP)/wp-content/plugins/woo-mercado-pago-module\n"
20
+ "X-Generator: Poedit 1.8.7\n"
21
+ "Last-Translator: \n"
22
+ "Language: es_AR\n"
23
+ "X-Poedit-SearchPath-0: .\n"
24
+
25
+ msgid "This is the <strong>oficial</strong> module of Mercado Pago for WooCommerce plugin. This module enables WooCommerce to use Mercado Pago as a payment Gateway for purchases made in your e-commerce store."
26
+ msgstr "Este es el módulo <strong>oficial</strong> de Mercado Pago para el plugin WooCommerce. Este módulo habilita el uso de Mercado Pago en WooCommerce como medio de pago para compras realizadas en su tienda virtual."
27
+
28
+ msgid "Mercado Pago Settings"
29
+ msgstr "Configuración de Mercado Pago"
30
+
31
+ msgid "Rate Us"
32
+ msgstr "Calificanos"
33
+
34
+ msgid "Tutorial"
35
+ msgstr "Tutorial"
36
+
37
+ msgid "Report Issue"
38
+ msgstr "Informar Problema"
39
+
40
+ msgid "ERROR: It was not possible to convert the unsupported currency"
41
+ msgstr "ERROR: No fue posible convertir la moneda no soportada"
42
+
43
+ msgid "to"
44
+ msgstr "a"
45
+
46
+ msgid "Currency conversions should be made outside this module."
47
+ msgstr "Las conversiones de monedas deben hacerse fuera de este módulo."
48
+
49
+ msgid "ATTENTION: The currency"
50
+ msgstr "ATENCION: La moneda"
51
+
52
+ msgid "defined in WooCommerce is different from the one used in your credentials country.<br>The currency for transactions in this payment method will be"
53
+ msgstr "definido en WooCommerce es diferente al utilizado por las credenciales de su país.<br>La moneda para las transacciones hechas con este método de pago será"
54
+
55
+ msgid "CURRENCY CONVERTED: Your store is converting currency from"
56
+ msgstr "MONEDA CONVERTIDA: Su tienda está convirtiendo moneda de"
57
+
58
+ msgid "Colombia"
59
+ msgstr "Colombia"
60
+
61
+ msgid "Argentine"
62
+ msgstr "Argentina"
63
+
64
+ msgid "Brazil"
65
+ msgstr "Brasil"
66
+
67
+ msgid "Chile"
68
+ msgstr "Chile"
69
+
70
+ msgid "Mexico"
71
+ msgstr "México"
72
+
73
+ msgid "Uruguay"
74
+ msgstr "Uruguay"
75
+
76
+ msgid "Venezuela"
77
+ msgstr "Venezuela"
78
+
79
+ msgid "Peru"
80
+ msgstr "Perú"
81
+
82
+ msgid "Update WooCommerce order to "
83
+ msgstr "Actualizar la orden de WooCommerce a "
84
+
85
+ msgid "You do not have sufficient permissions to access this page."
86
+ msgstr "No tiene suficientes permisos para acceder a esta página."
87
+
88
+ msgid "WooCommerce is installed and enabled."
89
+ msgstr "WooCommerce está instalado y habilitado."
90
+
91
+ msgid "You don\'t have WooCommerce installed and enabled."
92
+ msgstr "No tiene WooCommerce instalado y habilitado."
93
+
94
+ msgid "Your PHP version is OK."
95
+ msgstr "Su versión de PHP está bien."
96
+
97
+ msgid "Your PHP version do not support this module. You have %s, minimal required is %s."
98
+ msgstr "Su versión de PHP no soporta este módulo. Tienes %s, la mínima requerida es %s."
99
+
100
+ msgid "cURL is installed."
101
+ msgstr "cURL está instalado."
102
+
103
+ msgid "cURL is not installed."
104
+ msgstr "cURL no está instalado."
105
+
106
+ msgid "SSL is missing in your site."
107
+ msgstr "Falta el SSL en su sitio."
108
+
109
+ msgid "Your site has SSL enabled."
110
+ msgstr "Su sitio tiene SSL habilitado."
111
+
112
+ msgid "Basic Checkout"
113
+ msgstr "Checkout Básico"
114
+
115
+ msgid "Custom Checkout"
116
+ msgstr "Checkout Personalizado"
117
+
118
+ msgid "Ticket"
119
+ msgstr "Ticket"
120
+
121
+ msgid "Subscription"
122
+ msgstr "Suscripción"
123
+
124
+ msgid "Configure your Client_id and Client_secret to have access to more options."
125
+ msgstr "Configure su Client_id y Client_secret para tener acceso a más opciones."
126
+
127
+ msgid "Define which type of products your store sells."
128
+ msgstr "Defina qué tipo de productos se vende en su tienda."
129
+
130
+ msgid "Your <strong>client_id</strong> and <strong>client_secret</strong> are <strong>valid</strong> for"
131
+ msgstr "Su <strong>client_id</strong> y <strong>client_secret</strong> son <strong>válidos</strong> para"
132
+
133
+ msgid "Your <strong>client_id</strong> and <strong>client_secret</strong> are <strong>not valid</strong>!"
134
+ msgstr "Su <strong>client_id</strong> y <strong>client_secret</strong> son <strong>inválidas</strong>!"
135
+
136
+ msgid "These credentials are used in <strong>Basic Checkout</strong> and <strong>Subscriptions</strong>. Access it for your country:<br>"
137
+ msgstr "Estas credenciales se utilizan en <strong>Checkout Básico</strong> y <strong>Suscripciones</strong>. Acceda este para su país en:<br>"
138
+
139
+ msgid "or"
140
+ msgstr "o"
141
+
142
+ msgid "Your <strong>public_key</strong> and <strong>access_token</strong> are <strong>valid</strong> for"
143
+ msgstr "Su <strong>public_key</strong> y <strong>access_token</strong> son <strong>válidas</strong> para"
144
+
145
+ msgid "Your <strong>public_key</strong> and <strong>access_token</strong> are <strong>not valid</strong>!"
146
+ msgstr "Su <strong>public_key</strong> y <strong>acceso_token</strong> son <strong>inválidas</strong>!"
147
+
148
+ msgid "These credentials are used in <strong>Custom Checkout</strong> and <strong>Tickets</strong>. Access it for your country:<br>"
149
+ msgstr "Estas credenciales se usan en <strong>Checkout Personalizado</ strong> y <strong>Tickets</strong>. Acceda este para su país en:<br>"
150
+
151
+ msgid "This module enables WooCommerce to use Mercado Pago as payment method for purchases made in your virtual store."
152
+ msgstr "Este módulo permite a WooCommerce usar Mercado Pago como método de pago para compras realizadas en su tienda virtual."
153
+
154
+ msgid "Payment Gateways"
155
+ msgstr "Gateways de Pago"
156
+
157
+ msgid "Basic Checkout & Subscriptions"
158
+ msgstr "Checkout Básico & Suscripciones"
159
+
160
+ msgid "Custom Checkout & Tickets"
161
+ msgstr "Checkout Personalizado & Tickets"
162
+
163
+ msgid "Insert your Mercado Pago Client_id."
164
+ msgstr "Inserta su Client_id de Mercado Pago."
165
+
166
+ msgid "Insert your Mercado Pago Client_secret."
167
+ msgstr "Inserta su" Client_secret de Mercado Pago.
168
+
169
+ msgid "Currency Conversion"
170
+ msgstr "Conversión de Moneda"
171
+
172
+ msgid "If the used currency in WooCommerce is different or not supported by Mercado Pago, convert values of your transactions using Mercado Pago currency ratio. This service may slow down your server as each conversion is made in the checkout moment."
173
+ msgstr "Si la moneda utilizada en WooCommerce es diferente o no es compatible con Mercado Pago, convierta los valores de sus transacciones usando la tasa de moneda de Mercado Pago. Este servicio puede ralentizar su servidor ya que cada conversión se realiza en el momento de la compra."
174
+
175
+ msgid "Insert your Mercado Pago Public key."
176
+ msgstr "Inserta su Public_key de Mercado Pago."
177
+
178
+ msgid "Insert your Mercado Pago Access token."
179
+ msgstr "Inserta su Access_token de Mercado Pago."
180
+
181
+ msgid "Status Mapping of Payment x Order"
182
+ msgstr "Mapeamento de Estados de Pagos x Ordens"
183
+
184
+ msgid "Here you can configure details about Mercado Pago payments and WooCommerce order statuses."
185
+ msgstr "Acá puede configurar los detalles sobre los pagos de Mercado Pago y los estados de los pedidos de WooCommerce."
186
+
187
+ msgid "For status mappings between payment/order you can use the defaults, or check references of %s and %s"
188
+ msgstr "Para las asignaciones de estados entre pago/pedido se puede usar los valores estándares, o consultar las referencias de %s y %s"
189
+
190
+ msgid "Status for PENDING"
191
+ msgstr "Estado para PENDING"
192
+
193
+ msgid "when Mercado Pago updates a payment status to PENDING."
194
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a PENDIENTE."
195
+
196
+ msgid "Status for APPROVED"
197
+ msgstr "Estado para APPROVED"
198
+
199
+ msgid "When Mercado Pago updates a payment status to APPROVED."
200
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a APPROVED."
201
+
202
+ msgid "Status for IN_PROCESS"
203
+ msgstr "Estado para IN_PROCESS"
204
+
205
+ msgid "When Mercado Pago updates a payment status to IN_PROCESS."
206
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a IN_PROCESS."
207
+
208
+ msgid "Status for IN_MEDIATION"
209
+ msgstr "Estado para IN_MEDIATION"
210
+
211
+ msgid "When Mercado Pago updates a payment status to IN_MEDIATION."
212
+ msgstr "Cuando Mercado pago actualiza un estado de pago a IN_MEDIATION."
213
+
214
+ msgid "Status for REJECTED"
215
+ msgstr "Estado para REJECTED"
216
+
217
+ msgid "When Mercado Pago updates a payment status to REJECTED."
218
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a REJECTED."
219
+
220
+ msgid "Status for CANCELLED"
221
+ msgstr "Estado para CANCELLED"
222
+
223
+ msgid "When Mercado Pago updates a payment status to CANCELLED."
224
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a CANCELLED."
225
+
226
+ msgid "Status for REFUNDED"
227
+ msgstr "Estado para REFUNDED"
228
+
229
+ msgid "When Mercado Pago updates a payment status to REFUNDED."
230
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a REFUNDED."
231
+
232
+ msgid "Status for CHARGED_BACK"
233
+ msgstr "Estado para CHARGED_BACK"
234
+
235
+ msgid "When Mercado Pago updates a payment status to CHARGED_BACK."
236
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a CHARGED_BACK."
237
+
238
+ msgid "Store Settings"
239
+ msgstr "Configuración de la Tienda"
240
+
241
+ msgid "Here you can place details about your store."
242
+ msgstr "Acá puede colocar detalles de su tienda."
243
+
244
+ msgid "Statement Descriptor"
245
+ msgstr "Descripción de la Factura"
246
+
247
+ msgid "The description that will be shown in your customer\'s invoice."
248
+ msgstr "La descripción que se muestra en la factura de su cliente."
249
+
250
+ msgid "Store Category"
251
+ msgstr "Categoría de la tienda"
252
+
253
+ msgid "Store Identificator"
254
+ msgstr "Identificador de la tienda"
255
+
256
+ msgid "Please, inform a prefix to your store."
257
+ msgstr "Por favor, informe un prefijo para su tienda."
258
+
259
+ msgid "If you use your Mercado Pago account on multiple stores you should make sure that this prefix is unique as Mercado Pago will not allow orders with same identificators."
260
+ msgstr "Si esta utilizando su cuenta Mercado Pago para múltiples tiendas, asegúrese que este prefijo sea único para no generar pedidos con el mismo identificador."
261
+
262
+ msgid "Test and Debug Options"
263
+ msgstr "Opciones de Prueba y Debug"
264
+
265
+ msgid "Tools for debug and testing your integration."
266
+ msgstr "Herramientas para debug y teste para su integración."
267
+
268
+ msgid "Debug and Log"
269
+ msgstr "Debug y Log"
270
+
271
+ msgid "Enable log (Keep this disabled if you’re in production)."
272
+ msgstr "Habilitar log (Manténgalo desactivado si está en producción)."
273
+
274
+ msgid "Register event logs of Mercado Pago, such as API requests, for"
275
+ msgstr "Registrar los logs de eventos de Mercado Pago, como las solicitudes de API, para"
276
+
277
+ msgid "Tickets"
278
+ msgstr "Tickets"
279
+
280
+ msgid "You can access your logs in "
281
+ msgstr "Puede acceder a sus logs en "
282
+
283
+ msgid "WooCommerce &gt; System Status &gt; Logs"
284
+ msgstr "WooCommerce &gt; Estado del Sistema &gt; Logs"
285
+
286
+ msgid "Files are located in: "
287
+ msgstr "Los archivos se encuentran en: "
288
+
289
+ msgid "Mercado Pago Sandbox"
290
+ msgstr "Sandbox de Mercado Pago"
291
+
292
+ msgid "Enable Mercado Pago Sandbox."
293
+ msgstr "Habilitar el sandbox de Mercado Pago."
294
+
295
+ msgid "This option allows you to test payments inside a sandbox environment."
296
+ msgstr "Esta opción permite simular un flujo de pagos completo en nuestro entorno Sandbox."
297
+
298
+ msgid "Mercado Pago - Basic Checkout"
299
+ msgstr "Mercado Pago - Checkout Básico"
300
+
301
+ msgid "Receive payments in a matter of minutes. We make it easy for you: just tell us what you want to collect and we’ll take care of the rest."
302
+ msgstr "Recibe pagos en cuestión de minutos. Lo hacemos fácil: solo díganos lo que quiere recolectar y nos encargaremos del resto."
303
+
304
+ msgid "It appears that your credentials are not properly configured.<br/>Please, go to %s and configure it."
305
+ msgstr "Parece que sus credenciales no están configuradas correctamente.<br/>Por favor, vaya a %s y configúrelo."
306
+
307
+ msgid "This appears to be an invalid URL."
308
+ msgstr "Esto parece ser una URL inválida."
309
+
310
+ msgid "Where customers should be redirected after a successful purchase. Let blank to redirect to the default store order resume page."
311
+ msgstr "Donde los clientes serán redirigidos después de una compra exitosa. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
312
+
313
+ msgid "Where customers should be redirected after a failed purchase. Let blank to redirect to the default store order resume page."
314
+ msgstr "Donde los clientes serán redirigidos después de una compra rechazada. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
315
+
316
+ msgid "Where customers should be redirected after a pending purchase. Let blank to redirect to the default store order resume page."
317
+ msgstr "Donde los clientes ​serán redirigidos después de una compra pendiente. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
318
+
319
+ msgid "Enable/Disable"
320
+ msgstr "Habilitar/Deshabilitar"
321
+
322
+ msgid "Enable Basic Checkout"
323
+ msgstr "Habilitar Checkout Básico"
324
+
325
+ msgid "Checkout Interface: How checkout is shown"
326
+ msgstr "Interfaz de Checkout: Cómo se muestra el checkout"
327
+
328
+ msgid "Title"
329
+ msgstr "Título"
330
+
331
+ msgid "Title shown to the client in the checkout."
332
+ msgstr "Título mostrado al cliente en el checkout."
333
+
334
+ msgid "Mercado Pago"
335
+ msgstr "Mercado Pago"
336
+
337
+ msgid "Description"
338
+ msgstr "Descripción"
339
+
340
+ msgid "Description shown to the client in the checkout."
341
+ msgstr "Descripción mostrada al cliente en el checkout."
342
+
343
+ msgid "Pay with Mercado Pago"
344
+ msgstr "Pagar con Mercado Pago"
345
+
346
+ msgid "Integration Method"
347
+ msgstr "Método de integración"
348
+
349
+ msgid "Select how your clients should interact with Mercado Pago. Modal Window (inside your store), Redirect (Client is redirected to Mercado Pago), or iFrame (an internal window is embedded to the page layout)."
350
+ msgstr "Seleccione la forma en que sus clientes deben interactuar con Mercado Pago. Ventana Modal (Dentro de su tienda), Redireccionamiento (El cliente es redireccionado a Mercado Pago), o iFrame (Ventana de pago incorporada a su página)."
351
+
352
+ msgid "iFrame"
353
+ msgstr "iFrame"
354
+
355
+ msgid "Modal Window"
356
+ msgstr "Ventana Modal"
357
+
358
+ msgid "Redirect"
359
+ msgstr "Redireccionamiento"
360
+
361
+ msgid "iFrame Width"
362
+ msgstr "Ancho del iFrame"
363
+
364
+ msgid "If your integration method is iFrame, please inform the payment iFrame width."
365
+ msgstr "Si su modo de apertura es iFrame, indique el ancho del iFrame."
366
+
367
+ msgid "iFrame Height"
368
+ msgstr "Alto del iFrame"
369
+
370
+ msgid "If your integration method is iFrame, please inform the payment iFrame height."
371
+ msgstr "Si su modo de apertura es iFrame, indique el alto del iFrame."
372
+
373
+ msgid "Checkout Navigation: How checkout redirections will behave"
374
+ msgstr "Navegación de Checkout: Cómo se comportarán las redirecciones de pago"
375
+
376
+ msgid "Auto Return"
377
+ msgstr "Redirección automática"
378
+
379
+ msgid "Automatic Return After Payment"
380
+ msgstr "Redirección Automática luego del pago"
381
+
382
+ msgid "After the payment, client is automatically redirected."
383
+ msgstr "Después del pago, el cliente será redireccionado automáticamente."
384
+
385
+ msgid "Sucess URL"
386
+ msgstr "URL de Éxito"
387
+
388
+ msgid "Failure URL"
389
+ msgstr "URL de Pago Rechazado"
390
+
391
+ msgid "Pending URL"
392
+ msgstr "URL de Pago Pendiente"
393
+
394
+ msgid "Payment Options: How payment options behaves"
395
+ msgstr "Opciones de pago: Cómo se comportan las opciones de pago"
396
+
397
+ msgid "Max installments"
398
+ msgstr "Número máximo de cuotas"
399
+
400
+ msgid "Select the max number of installments for your customers."
401
+ msgstr "Seleccione el número máximo de cuotas disponibles para sus clientes."
402
+
403
+ msgid "1x installment"
404
+ msgstr "1x cuota"
405
+
406
+ msgid "2x installmens"
407
+ msgstr "2x cuotas"
408
+
409
+ msgid "3x installmens"
410
+ msgstr "3x cuotas"
411
+
412
+ msgid "4x installmens"
413
+ msgstr "4x cuotas"
414
+
415
+ msgid "5x installmens"
416
+ msgstr "5x cuotas"
417
+
418
+ msgid "6x installmens"
419
+ msgstr "6x cuotas"
420
+
421
+ msgid "10x installmens"
422
+ msgstr "10x cuotas"
423
+
424
+ msgid "12x installmens"
425
+ msgstr "12x cuotas"
426
+
427
+ msgid "15x installmens"
428
+ msgstr "15x cuotas"
429
+
430
+ msgid "18x installmens"
431
+ msgstr "18x cuotas"
432
+
433
+ msgid "24x installmens"
434
+ msgstr "24x cuotas"
435
+
436
+ msgid "Exclude Payment Methods"
437
+ msgstr "Excluir medios de pago"
438
+
439
+ msgid "Select the payment methods that you <strong>don\'t</strong> want to receive with Mercado Pago."
440
+ msgstr "Selecione los medios de pago que <strong>no</strong> desea aceptar con Mercado Pago."
441
+
442
+ msgid "Discount by Gateway"
443
+ msgstr "Descuento por Gateway"
444
+
445
+ msgid "Give a percentual (0 to 100) discount for your customers if they use this payment gateway."
446
+ msgstr "Dé un descuento porcentual para sus clientes si utilizan este medio de pago."
447
+
448
+ msgid "Two Cards Mode"
449
+ msgstr "Modo de Dos Tarjetas"
450
+
451
+ msgid "Payments with Two Cards"
452
+ msgstr "Pagos con Dos Tarjetas"
453
+
454
+ msgid "Your customer will be able to use two different cards to pay the order."
455
+ msgstr "Su cliente será capaz de utilizar dos tarjetas diferentes para pagar el pedido."
456
+
457
+ msgid "Thank you for your order. Please, proceed with your payment clicking in the bellow button."
458
+ msgstr "Gracias por su compra. Por favor, prosiga a la página de pago haciendo click en el botón de abajo."
459
+
460
+ msgid "Cancel order &amp; Clear cart"
461
+ msgstr "Cancelar &amp; Limpiar carrito"
462
+
463
+ msgid "Thank you for your order. Proceed with your payment completing the following information."
464
+ msgstr "Gracias por su compra. Prosiga con su pago completando la información abajo."
465
+
466
+ msgid "An error occurred when proccessing your payment. Please try again or contact us for assistence."
467
+ msgstr "Se ha producido un error en el procesamiento de su pago. Por favor, inténtelo de nuevo o póngase en contacto con nosotros para Asistencia."
468
+
469
+ msgid "Shipping service used by store"
470
+ msgstr "Servicio de envío utilizado por la tienda"
471
+
472
+ msgid "Discount of"
473
+ msgstr "Descuento de"
474
+
475
+ msgid "Mercado Pago Request Failure"
476
+ msgstr "La solicitud de Mercado Pago ha fallado"
477
+
478
+ msgid "Payer email"
479
+ msgstr "Email del comprador"
480
+
481
+ msgid "Payment type"
482
+ msgstr "Medio de pago"
483
+
484
+ msgid "Payment approved."
485
+ msgstr "Pago aprobado."
486
+
487
+ msgid "Customer haven\'t paid yet."
488
+ msgstr "El cliente todavía no efectuó el pago."
489
+
490
+ msgid "Payment under review."
491
+ msgstr "El pago está pendiente de revisión."
492
+
493
+ msgid "The payment was refused. The customer can try again."
494
+ msgstr "El pago fue rechazado. El cliente puede intentar nuevamente."
495
+
496
+ msgid "The payment was refunded to the customer."
497
+ msgstr "El pago fue devuelto al cliente."
498
+
499
+ msgid "The payment was cancelled."
500
+ msgstr "El pago fue cancelado."
501
+
502
+ msgid "The payment is under mediation or it was charged-back."
503
+ msgstr "El pago esta en mediación o la compra fue desconocida por el cliente."
504
+
505
+ msgid "Mercado Pago - Custom Checkout"
506
+ msgstr "Mercado Pago - Checkout Personalizado"
507
+
508
+ msgid "We give you the possibility to adapt the payment experience you want to offer 100% in your website, mobile app or anywhere you want. You can build the design that best fits your business model, aiming to maximize conversion."
509
+ msgstr "Le ofrecemos la posibilidad de adaptar la experiencia de pago que desea ofrecer 100% en su sitio web, en su aplicación móvil o en cualquier lugar que desee. Puede crear el diseño que mejor se adapte a su modelo de negocio, con el objetivo de maximizar la conversión."
510
+
511
+ msgid "Enable Custom Checkout"
512
+ msgstr "Habilitar Checkout Personalizado"
513
+
514
+ msgid "Coupons"
515
+ msgstr "Cupones"
516
+
517
+ msgid "Enable coupons of discounts"
518
+ msgstr "Activar los cupones de descuento"
519
+
520
+ msgid "If there is a Mercado Pago campaign, allow your store to give discounts to customers."
521
+ msgstr "Si hay una campaña de Mercado Pago, permitir a su tienda hacer descuentos para los clientes."
522
+
523
+ msgid "Binary Mode"
524
+ msgstr "Modo binario"
525
+
526
+ msgid "Enable binary mode for checkout status"
527
+ msgstr "Activar el modo binario para el estado del checkout"
528
+
529
+ msgid "When charging a credit card, only [approved] or [reject] status will be taken."
530
+ msgstr "Al cargar una tarjeta de crédito, sólo los estados [aprobado] o [rechazar] seran tomados."
531
+
532
+ msgid "This service allows you to subscribe customers to subscription plans."
533
+ msgstr "Este servicio le permite suscribir los clientes a planes de suscripción."
534
+
535
+ msgid "It appears that your country is not supported for this solution.<br/>Please, use another payment method or go to %s to use another credential."
536
+ msgstr "Parece que su país no es compatible con esta solución.<br/>Por favor, use otro método de pago o vaya a %s para usar otra credencial."
537
+
538
+ msgid "Enable Subscription"
539
+ msgstr "Habilitar Suscripción"
540
+
541
+ msgid "Instant Payment Notification (IPN) URL"
542
+ msgstr "URL da Notificación Instantanea de Pago (IPN)"
543
+
544
+ msgid "For this solution, you need to configure your IPN URL. You can access it in your account for your specific country in:"
545
+ msgstr "Para esta solución, usted debe configurar su URL de IPN. Puede acceder a ella en su cuenta para su específico país en:"
546
+
547
+ msgid "Your IPN URL to receive instant payment notifications is"
548
+ msgstr "Su URL de IPN para recibir notificaciones instantáneas de pago es"
549
+
550
+ msgid "Mercado Pago - Ticket"
551
+ msgstr "Mercado Pago - Ticket"
552
+
553
+ msgid "UNDER BUILDING..."
554
+ msgstr "UN CONSTRUCIÓN..."
555
+
556
+ msgid "Enable Ticket Payment Method"
557
+ msgstr "Habilitar Pago con Ticket"
558
+
559
+ msgid "Ticket Interface: How checkout is shown"
560
+ msgstr "Interfaz de Tickets: Cómo se muestra el checkout"
561
+
562
+ msgid "Title shown to the client in the ticket."
563
+ msgstr "Título mostrado al cliente en el ticket."
564
+
565
+ msgid "Description shown to the client in the ticket."
566
+ msgstr "Descripción mostrada al cliente en el ticket."
567
+
568
+ msgid "Stock Reduce"
569
+ msgstr "Reducir Inventario"
570
+
571
+ msgid "Reduce Stock in Order Generation"
572
+ msgstr "Reducir Inventario en la Orden"
573
+
574
+ msgid "Enable this to reduce the stock on order creation. Disable this to reduce <strong>after</strong> the payment approval."
575
+ msgstr "Activar esta opción para reducir el inventario mediante la creación de un pedido. Desactivar para reducir sólo <strong>después</strong> de la aprobación del pago."
576
+
577
+ msgid "Mercado Envios is a shipping method available only for payments with Mercado Pago."
578
+ msgstr "Mercado Envios es un método de envío disponible sólo para los pagos con Mercado Pago."
579
+
580
+ msgid "Free Shipping"
581
+ msgstr "Envío Gratuito"
582
+
583
+ msgid "Day"
584
+ msgstr "Día"
585
+
586
+ msgid "Days"
587
+ msgstr "Días"
588
+
589
+ msgid "Enable the two shipping methods the Mercado Envios (Express and Normal) for the proper functioning of the module."
590
+ msgstr "Habilitar los dos métodos de envío de Mercado Envios (Express y Normal) para el correcto funcionamiento del módulo."
591
+
592
+ msgid "Mercado Envios"
593
+ msgstr "Mercado Envios"
594
+
595
+ msgid "This controls the title which the user sees during checkout."
596
+ msgstr "Controla el título que se muestra al cliente durante el pago."
597
+
598
+ msgid "Enable free shipping for this shipping method"
599
+ msgstr "Habilitar el envío gratuito para este método de envío"
600
+
601
+ msgid "Delivery Time"
602
+ msgstr "Tiempo de Entrega"
603
+
604
+ msgid "Show estimated delivery time"
605
+ msgstr "Mostrar el tiempo estimado de entrega"
606
+
607
+ msgid "Display the estimated delivery time in working days."
608
+ msgstr "Mostrar el tiempo estimado de entrega en días laborables."
609
+
610
+ msgid "Tag ready to print"
611
+ msgstr "Etiqueta lista para imprimir"
612
+
613
+ msgid "Tag printed"
614
+ msgstr "Etiqueta impresa"
615
+
616
+ msgid "Unsuccessful"
617
+ msgstr "Fracasado"
618
+
619
+ msgid "Delayed shipping"
620
+ msgstr "Envío retrasado"
621
+
622
+ msgid "Missing recipient for delivery"
623
+ msgstr "Destinatario ausente para envío"
624
+
625
+ msgid "In return to sender"
626
+ msgstr "Volviendo al remitente"
627
+
628
+ msgid "Buyer initiates complaint and requested a refund."
629
+ msgstr "El comprador ha iniciado una discusión y pide un extorno."
630
+
631
+ msgid "Order"
632
+ msgstr "Pedido"
633
+
634
+ msgid "Mercado Envios Tracking ID"
635
+ msgstr "Código de rastreamiento de Mercado Envíos"
636
+
637
+ msgid "Hello,"
638
+ msgstr "Hola,"
639
+
640
+ msgid "Your order"
641
+ msgstr "Su pedido"
642
+
643
+ msgid "made in"
644
+ msgstr "hecho en"
645
+
646
+ msgid "used Mercado Envios as its shipment method."
647
+ msgstr "utilizó el Mercado Envíos como su medio de envío."
648
+
649
+ msgid "You can track it with the following Tracking ID:"
650
+ msgstr "Usted puedes rastrearlo con lo siguiente código de rastreamiento:"
651
+
652
+ msgid "Best regards."
653
+ msgstr "Saludos."
654
+
655
+ msgid "Mercado Pago Subscription"
656
+ msgstr "Suscripción Mercado Pago"
657
+
658
+ msgid "Payment ID:"
659
+ msgstr "ID de Pago:"
660
+
661
+ msgid "Amount:"
662
+ msgstr "Cantidad:"
663
+
664
+ msgid "This operation could not be completed."
665
+ msgstr "Esta operación no se puede completar."
666
+
667
+ msgid "Operation successfully completed."
668
+ msgstr "La operación se realizó con éxito."
669
+
670
+ msgid "Refund Payment"
671
+ msgstr "Reembolso de Pago"
672
+
673
+ msgid "Cancel Payment"
674
+ msgstr "Cancelar Pago"
675
+
676
+ msgid "Mercado Pago - Subscription"
677
+ msgstr "Mercado Pago - Suscripcións"
678
+
679
+ msgid "A recurrent product is a signature that should be bought isolated in your cart. Please, create separated orders."
680
+ msgstr "Un producto recurrente es una suscripción que debe adquirirse por separado en su carrito. Por favor, hace los pedidos por separado."
681
+
682
+ msgid "Recurrent Product"
683
+ msgstr "Producto Recurrente"
684
+
685
+ msgid "Frequency"
686
+ msgstr "Frecuencia"
687
+
688
+ msgid "Amount of time (in days or months) for the execution of the next payment."
689
+ msgstr "Cantidad de tiempo (en días o meses) para la ejecución del próximo pago."
690
+
691
+ msgid "End date"
692
+ msgstr "Fecha final"
693
+
694
+ msgid "Deadline to generate new charges. Defaults to never if blank."
695
+ msgstr "Fecha límite para generar nuevos cargos. De forma predeterminada como nunca, si está en blanco."
696
+
697
+ msgid "Months"
698
+ msgstr "Meses"
699
+
700
+ msgid "Indicates the period of time."
701
+ msgstr "Indica el período de tiempo."
702
+
703
+ msgid "Make this product a subscription."
704
+ msgstr "Hacer deste producto una suscripción."
705
+
706
+ msgid "Frequency type"
707
+ msgstr "Tipo de frecuencia"
708
+
709
+ msgid "Subscribe with Mercado Pago"
710
+ msgstr "Suscribirse con Mercado Pago"
711
+
712
+ msgid "Woo Mercado Pago Module depends on the last version of %s to execute!"
713
+ msgstr "Woo Mercado Pago Module depende de la última versión de %s para ejecutarse!"
714
+
715
+ msgid "Tracking code:"
716
+ msgstr "Código de rastreamiento:"
717
+
718
+ msgid "Tag:"
719
+ msgstr "Etiqueta:"
720
+
721
+ msgid "Shipping is pending"
722
+ msgstr "Envío pendiente"
723
+
724
+ msgid "Print"
725
+ msgstr "Imprimir"
726
+
727
+ msgid "Cancel Order"
728
+ msgstr "Cancelar la Compra"
729
+
730
+ msgid "Total of your purchase:"
731
+ msgstr "Total de su compra:"
732
+
733
+ msgid "Total of your purchase with discount:"
734
+ msgstr "Total de su compra con descuento:"
735
+
736
+ msgid "*Uppon payment approval"
737
+ msgstr "*Con la aprobación de pago"
738
+
739
+ msgid "Terms and Conditions of Use"
740
+ msgstr "Términos y Condiciones de Uso"
741
+
742
+ msgid "with discount from"
743
+ msgstr "con descuento de"
744
+
745
+ msgid "You will save"
746
+ msgstr "Usted ahorrará"
747
+
748
+ msgid "Please, inform your coupon code"
749
+ msgstr "Por favor, introduzca el código de su cupón"
750
+
751
+ msgid "Payment converted from"
752
+ msgstr "Pago convertido de"
753
+
754
+ msgid "Installments"
755
+ msgstr "Cuotas"
756
+
757
+ msgid "Choose"
758
+ msgstr "Seleccione"
759
+
760
+ msgid "Parameter cardIssuerId can not be null/empty"
761
+ msgstr "Parámetro [Emisor] no puede ser nulo/vacío"
762
+
763
+ msgid "Issuer"
764
+ msgstr "Emisor"
765
+
766
+ msgid "Invalid Document Number"
767
+ msgstr "Número del Documento inválido"
768
+
769
+ msgid "Parameter docNumber can not be null/empty"
770
+ msgstr "Parámetro [Número del Documento] no puede ser nulo/vacío"
771
+
772
+ msgid "Document number"
773
+ msgstr "Número de Documento"
774
+
775
+ msgid "Invalid Document Type"
776
+ msgstr "Tipo de Documento inválido"
777
+
778
+ msgid "Parameter docType can not be null/empty"
779
+ msgstr "Parámetro [Tipo de Documento] no puede ser nulo/vacío"
780
+
781
+ msgid "Document Type"
782
+ msgstr "Tipo de Documento"
783
+
784
+ msgid "Invalid Card Holder Name"
785
+ msgstr "Nombre del titular de la tarjeta inválido"
786
+
787
+ msgid "Parameter cardholderName can not be null/empty"
788
+ msgstr "Parámetro [Nombre del titular] no puede ser nulo/vacío"
789
+
790
+ msgid "Card holder name"
791
+ msgstr "Nombre del titular de la tarjeta"
792
+
793
+ msgid "Invalid Expiration Date"
794
+ msgstr "Fecha de expiración inválida"
795
+
796
+ msgid "Year"
797
+ msgstr "Año"
798
+
799
+ msgid "Expiration year"
800
+ msgstr "Año de expiración"
801
+
802
+ msgid "Month"
803
+ msgstr "Mes"
804
+
805
+ msgid "Expiration month"
806
+ msgstr "Mes de expiración"
807
+
808
+ msgid "Invalid Card Number"
809
+ msgstr "Número de tarjeta inválido"
810
+
811
+ msgid "Parameter cardNumber can not be null/empty"
812
+ msgstr "Parámetro [Número de tarjeta] no puede ser nulo/vacío"
813
+
814
+ msgid "Credit card number"
815
+ msgstr "Número de tarjeta de crédito"
816
+
817
+ msgid "Parameter securityCode can not be null/empty"
818
+ msgstr "Parámetro [Código de seguridad] no puede ser nulo/vacío"
819
+
820
+ msgid "Invalid Security Code"
821
+ msgstr "Código de seguridad inválido"
822
+
823
+ msgid "Security code"
824
+ msgstr "Código de seguridad"
825
+
826
+ msgid "Other Card"
827
+ msgstr "Otra Tarjeta"
828
+
829
+ msgid "Other Cards"
830
+ msgstr "Otras Tarjetas"
831
+
832
+ msgid "ended in"
833
+ msgstr "terminado en"
834
+
835
+ msgid "Your Card"
836
+ msgstr "Sus Tarjetas"
837
+
838
+ msgid "Payment Method"
839
+ msgstr "Medios de Pago"
840
+
841
+ msgid "Apply"
842
+ msgstr "Aplicar"
843
+
844
+ msgid "Remove"
845
+ msgstr "Eliminar"
846
+
847
+ msgid "Discount Coupon"
848
+ msgstr "Cupón de Descuento"
849
+
850
+ msgid "Mercado Pago - Credit Card"
851
+ msgstr "Mercado Pago - Tarjeta de Crédito"
852
+
853
+ msgid "Check your order resume"
854
+ msgstr "Ver su hoja de pedido"
855
+
856
+ msgid "Your payment was refused. You can try again."
857
+ msgstr "Su pago fue rechazado. Puede intentarlo de nuevo."
858
+
859
+ msgid "Click to try again"
860
+ msgstr "Haga clic para intentarlo de nuevo"
861
+
862
+ msgid "A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?"
863
+ msgstr "Un problema se produjo al procesar su pago. ¿Esta seguro que ha rellenado correctamente toda la información en el formulario de checkout?"
864
+
865
+ msgid "Discount provided by store"
866
+ msgstr "Descuento dado por la tienda"
867
+
868
+ msgid "Discount for %s coupon"
869
+ msgstr "Descuento para el cupón %s"
870
+
871
+ msgid "Done, your payment was accredited!"
872
+ msgstr "Listo, su pago ha sido aceptado!"
873
+
874
+ msgid "We are processing the payment. In less than an hour we will e-mail you the results."
875
+ msgstr "Estamos procesando su pago. En menos de una hora le enviaremos el resultado por correo electrónico."
876
+
877
+ msgid "We are processing the payment. In less than 2 business days we will tell you by e-mail whether it has accredited or we need more information."
878
+ msgstr "Estamos procesando su pago. En menos de 2 días le enviaremos por correo electrónico si se ha aprobado el pago o si se necesita información adicional."
879
+
880
+ msgid "Check the card number."
881
+ msgstr "Compruebe el número de tarjeta."
882
+
883
+ msgid "Check the expiration date."
884
+ msgstr "Compruebe la fecha de expiración."
885
+
886
+ msgid "Check the information."
887
+ msgstr "Compruebe la información informada."
888
+
889
+ msgid "Check the security code."
890
+ msgstr "Compruebe el código de seguridad informado."
891
+
892
+ msgid "We could not process your payment."
893
+ msgstr "No se puede procesar su pago."
894
+
895
+ msgid "You must authorize the payment of your orders."
896
+ msgstr "Usted debe autorizar los pagos de sus órdenes."
897
+
898
+ msgid "Call your card issuer to activate your card. The phone is on the back of your card."
899
+ msgstr "Póngase en contacto con el emisor de su tarjeta para activarla. El teléfono se encuentra en la parte posterior de su tarjeta."
900
+
901
+ msgid "You already made a payment for that amount. If you need to repay, use another card or other payment method."
902
+ msgstr "Usted ya realizó un pago de este importe. Si tiene que pagar de nuevo, utilizar otra tarjeta u otro medio de pago."
903
+
904
+ msgid "Your payment was rejected. Choose another payment method. We recommend cash."
905
+ msgstr "Su pago fue rechazado. Por favor seleccione otro medio de pago. Se recomienda en efectivo."
906
+
907
+ msgid "Your payment do not have sufficient funds."
908
+ msgstr "Su pago no tiene fondos suficientes."
909
+
910
+ msgid "Your payment does not process payments with selected installments."
911
+ msgstr "El pago no puede procesar la cuota seleccionada."
912
+
913
+ msgid "You have reached the limit of allowed attempts. Choose another card or another payment method."
914
+ msgstr "Has alcanzado el límite de intentos permitidos. Elija otra tarjeta u otro medio de pago."
915
+
916
+ msgid "This payment method did not process the payment."
917
+ msgstr "Esta medio de pago no puede procesar su pago."
918
+
919
+ msgid "Please, inform your email in billing address to use this feature"
920
+ msgstr "Por favor, introduzca su email en la dirección de facturación para utilizar este servicio"
921
+
922
+ msgid "Waiting for the ticket payment."
923
+ msgstr "Esperando el pago del ticket."
924
+
925
+ msgid "here"
926
+ msgstr "aquí"
927
+
928
+ msgid "To reprint the ticket click "
929
+ msgstr "Para imprimir nuevamente el ticket hace clic "
930
+
931
+ msgid "A problem was occurred when processing your payment. Please, try again."
932
+ msgstr "Un problema se produjo al procesar su pago. Por favor, inténtelo de nuevo."
933
+
934
+ msgid "Print the Ticket"
935
+ msgstr "Imprimir el ticket"
936
+
937
+ msgid "Thank you for your order. Please, pay the ticket to get your order approved."
938
+ msgstr "Gracias por su orden. Por favor, realice el pago del ticket para tener su orden aprobada."
939
+
940
+ msgid "Important: The order will be confirmed only after the payment approval."
941
+ msgstr "Importante: La solicitud sólo será confirmada después de la aprobación del pago."
942
+
943
+ msgid "Click [Place order] button. The ticket will be generated and you will be redirected to print it."
944
+ msgstr "Haga clic en el botón [Realizar el pedido]. El ticket será generado y usted será redirigido a imprimirlo."
945
+
946
+ msgid "Please, select the ticket issuer of your preference."
947
+ msgstr "Por favor, seleccione el emisor de su elección."
948
+
949
+ msgid "Needed informations due to brazilian bank compliances numbers 3.461/09, 3.598/12 and 3.656/13 of the Central Bank of Brazil."
950
+ msgstr "Informaciones necesarias debido a las normas bancarias brasileñas números 3.461/09, 3.598/12 y 3.656/13 del Banco Central de Brasil."
951
+
952
+ msgid "NAME"
953
+ msgstr "NOMBRE"
954
+
955
+ msgid "SURNAME"
956
+ msgstr "APELLIDO"
957
+
958
+ msgid "DOCUMENT"
959
+ msgstr "DOCUMENTO"
960
+
961
+ msgid "ADDRESS"
962
+ msgstr "DIRECCIÓN"
963
+
964
+ msgid "NUMBER"
965
+ msgstr "NÚMERO"
966
+
967
+ msgid "CITY"
968
+ msgstr "CIUDAD"
969
+
970
+ msgid "STATE"
971
+ msgstr "ESTADO"
972
+
973
+ msgid "ZIP"
974
+ msgstr "CÓDIGO POSTAL"
975
+
976
+ msgid "You must inform you NAME"
977
+ msgstr "Obligatorio informar su NOMBRE"
978
+
979
+ msgid "You must inform your SURNAME"
980
+ msgstr "Obligatorio informar su APELLIDO"
981
+
982
+ msgid "You must inform your DOCUMENT"
983
+ msgstr "Obligatorio informar su DOCUMENTO"
984
+
985
+ msgid "You must inform your ADDRESS"
986
+ msgstr "Obligatorio informar su DIRECCIÓN"
987
+
988
+ msgid "You must inform your ADDRESS NUMBER"
989
+ msgstr "Obligatorio informar su NÚMERO"
990
+
991
+ msgid "You must inform your CITY"
992
+ msgstr "Obligatorio informar su CIUDAD"
993
+
994
+ msgid "You must inform your STATE"
995
+ msgstr "Obligatorio informar su ESTADO"
996
+
997
+ msgid "You must inform your ZIP"
998
+ msgstr "Obligatorio informar su CÓDIGO POSTAL"
999
+
1000
+ msgid "Fisical Person"
1001
+ msgstr "Persona Física"
1002
+
1003
+ msgid "Legal Person"
1004
+ msgstr "Persona Jurídica"
1005
+
1006
+ msgid "SOCIAL NAME"
1007
+ msgstr "RAZÓN SOCIAL"
1008
+
1009
+ msgid "CNPJ"
1010
+ msgstr "CNPJ"
i18n/languages/woocommerce-mercadopago-es_CL.mo ADDED
Binary file
i18n/languages/woocommerce-mercadopago-es_CL.po ADDED
@@ -0,0 +1,1010 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # WordPress Blank Pot
2
+ # Copyright (C) 2014 ...
3
+ # This file is distributed under the GNU General Public License v2 or later.
4
+ msgid ""
5
+ msgstr ""
6
+ "Project-Id-Version: WordPress Blank Pot v1.0.0\n"
7
+ "POT-Creation-Date: 2016-05-23 14:52-0300\n"
8
+ "PO-Revision-Date: \n"
9
+ "Language-Team: Product Development <translations@example.com>\n"
10
+ "Report-Msgid-Bugs-To: Translator Name <translations@example.com>\n"
11
+ "MIME-Version: 1.0\n"
12
+ "Content-Type: text/plain; charset=UTF-8\n"
13
+ "Content-Transfer-Encoding: 8bit\n"
14
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
+ "X-Textdomain-Support: yesX-Generator: Poedit 1.6.4\n"
16
+ "X-Poedit-SourceCharset: UTF-8\n"
17
+ "X-Poedit-KeywordsList: __;_e;esc_html_e;esc_html_x:1,2c;esc_html__;esc_attr_e;esc_attr_x:1,2c;esc_attr__;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_x:1,2c;_n:1,2;"
18
+ "_n_noop:1,2;__ngettext:1,2;__ngettext_noop:1,2;_c,_nc:4c,1,2\n"
19
+ "X-Poedit-Basepath: ../Documents/woocommerce (MAMP)/wp-content/plugins/woo-mercado-pago-module\n"
20
+ "X-Generator: Poedit 1.8.7\n"
21
+ "Last-Translator: \n"
22
+ "Language: es_CL\n"
23
+ "X-Poedit-SearchPath-0: .\n"
24
+
25
+ msgid "This is the <strong>oficial</strong> module of Mercado Pago for WooCommerce plugin. This module enables WooCommerce to use Mercado Pago as a payment Gateway for purchases made in your e-commerce store."
26
+ msgstr "Este es el módulo <strong>oficial</strong> de Mercado Pago para el plugin WooCommerce. Este módulo habilita el uso de Mercado Pago en WooCommerce como medio de pago para compras realizadas en su tienda virtual."
27
+
28
+ msgid "Mercado Pago Settings"
29
+ msgstr "Configuración de Mercado Pago"
30
+
31
+ msgid "Rate Us"
32
+ msgstr "Calificanos"
33
+
34
+ msgid "Tutorial"
35
+ msgstr "Tutorial"
36
+
37
+ msgid "Report Issue"
38
+ msgstr "Informar Problema"
39
+
40
+ msgid "ERROR: It was not possible to convert the unsupported currency"
41
+ msgstr "ERROR: No fue posible convertir la moneda no soportada"
42
+
43
+ msgid "to"
44
+ msgstr "a"
45
+
46
+ msgid "Currency conversions should be made outside this module."
47
+ msgstr "Las conversiones de monedas deben hacerse fuera de este módulo."
48
+
49
+ msgid "ATTENTION: The currency"
50
+ msgstr "ATENCION: La moneda"
51
+
52
+ msgid "defined in WooCommerce is different from the one used in your credentials country.<br>The currency for transactions in this payment method will be"
53
+ msgstr "definido en WooCommerce es diferente al utilizado por las credenciales de su país.<br>La moneda para las transacciones hechas con este método de pago será"
54
+
55
+ msgid "CURRENCY CONVERTED: Your store is converting currency from"
56
+ msgstr "MONEDA CONVERTIDA: Su tienda está convirtiendo moneda de"
57
+
58
+ msgid "Colombia"
59
+ msgstr "Colombia"
60
+
61
+ msgid "Argentine"
62
+ msgstr "Argentina"
63
+
64
+ msgid "Brazil"
65
+ msgstr "Brasil"
66
+
67
+ msgid "Chile"
68
+ msgstr "Chile"
69
+
70
+ msgid "Mexico"
71
+ msgstr "México"
72
+
73
+ msgid "Uruguay"
74
+ msgstr "Uruguay"
75
+
76
+ msgid "Venezuela"
77
+ msgstr "Venezuela"
78
+
79
+ msgid "Peru"
80
+ msgstr "Perú"
81
+
82
+ msgid "Update WooCommerce order to "
83
+ msgstr "Actualizar la orden de WooCommerce a "
84
+
85
+ msgid "You do not have sufficient permissions to access this page."
86
+ msgstr "No tiene suficientes permisos para acceder a esta página."
87
+
88
+ msgid "WooCommerce is installed and enabled."
89
+ msgstr "WooCommerce está instalado y habilitado."
90
+
91
+ msgid "You don\'t have WooCommerce installed and enabled."
92
+ msgstr "No tiene WooCommerce instalado y habilitado."
93
+
94
+ msgid "Your PHP version is OK."
95
+ msgstr "Su versión de PHP está bien."
96
+
97
+ msgid "Your PHP version do not support this module. You have %s, minimal required is %s."
98
+ msgstr "Su versión de PHP no soporta este módulo. Tienes %s, la mínima requerida es %s."
99
+
100
+ msgid "cURL is installed."
101
+ msgstr "cURL está instalado."
102
+
103
+ msgid "cURL is not installed."
104
+ msgstr "cURL no está instalado."
105
+
106
+ msgid "SSL is missing in your site."
107
+ msgstr "Falta el SSL en su sitio."
108
+
109
+ msgid "Your site has SSL enabled."
110
+ msgstr "Su sitio tiene SSL habilitado."
111
+
112
+ msgid "Basic Checkout"
113
+ msgstr "Checkout Básico"
114
+
115
+ msgid "Custom Checkout"
116
+ msgstr "Checkout Personalizado"
117
+
118
+ msgid "Ticket"
119
+ msgstr "Ticket"
120
+
121
+ msgid "Subscription"
122
+ msgstr "Suscripción"
123
+
124
+ msgid "Configure your Client_id and Client_secret to have access to more options."
125
+ msgstr "Configure su Client_id y Client_secret para tener acceso a más opciones."
126
+
127
+ msgid "Define which type of products your store sells."
128
+ msgstr "Defina qué tipo de productos se vende en su tienda."
129
+
130
+ msgid "Your <strong>client_id</strong> and <strong>client_secret</strong> are <strong>valid</strong> for"
131
+ msgstr "Su <strong>client_id</strong> y <strong>client_secret</strong> son <strong>válidos</strong> para"
132
+
133
+ msgid "Your <strong>client_id</strong> and <strong>client_secret</strong> are <strong>not valid</strong>!"
134
+ msgstr "Su <strong>client_id</strong> y <strong>client_secret</strong> son <strong>inválidas</strong>!"
135
+
136
+ msgid "These credentials are used in <strong>Basic Checkout</strong> and <strong>Subscriptions</strong>. Access it for your country:<br>"
137
+ msgstr "Estas credenciales se utilizan en <strong>Checkout Básico</strong> y <strong>Suscripciones</strong>. Acceda este para su país en:<br>"
138
+
139
+ msgid "or"
140
+ msgstr "o"
141
+
142
+ msgid "Your <strong>public_key</strong> and <strong>access_token</strong> are <strong>valid</strong> for"
143
+ msgstr "Su <strong>public_key</strong> y <strong>access_token</strong> son <strong>válidas</strong> para"
144
+
145
+ msgid "Your <strong>public_key</strong> and <strong>access_token</strong> are <strong>not valid</strong>!"
146
+ msgstr "Su <strong>public_key</strong> y <strong>acceso_token</strong> son <strong>inválidas</strong>!"
147
+
148
+ msgid "These credentials are used in <strong>Custom Checkout</strong> and <strong>Tickets</strong>. Access it for your country:<br>"
149
+ msgstr "Estas credenciales se usan en <strong>Checkout Personalizado</ strong> y <strong>Tickets</strong>. Acceda este para su país en:<br>"
150
+
151
+ msgid "This module enables WooCommerce to use Mercado Pago as payment method for purchases made in your virtual store."
152
+ msgstr "Este módulo permite a WooCommerce usar Mercado Pago como método de pago para compras realizadas en su tienda virtual."
153
+
154
+ msgid "Payment Gateways"
155
+ msgstr "Gateways de Pago"
156
+
157
+ msgid "Basic Checkout & Subscriptions"
158
+ msgstr "Checkout Básico & Suscripciones"
159
+
160
+ msgid "Custom Checkout & Tickets"
161
+ msgstr "Checkout Personalizado & Tickets"
162
+
163
+ msgid "Insert your Mercado Pago Client_id."
164
+ msgstr "Inserta su Client_id de Mercado Pago."
165
+
166
+ msgid "Insert your Mercado Pago Client_secret."
167
+ msgstr "Inserta su" Client_secret de Mercado Pago.
168
+
169
+ msgid "Currency Conversion"
170
+ msgstr "Conversión de Moneda"
171
+
172
+ msgid "If the used currency in WooCommerce is different or not supported by Mercado Pago, convert values of your transactions using Mercado Pago currency ratio. This service may slow down your server as each conversion is made in the checkout moment."
173
+ msgstr "Si la moneda utilizada en WooCommerce es diferente o no es compatible con Mercado Pago, convierta los valores de sus transacciones usando la tasa de moneda de Mercado Pago. Este servicio puede ralentizar su servidor ya que cada conversión se realiza en el momento de la compra."
174
+
175
+ msgid "Insert your Mercado Pago Public key."
176
+ msgstr "Inserta su Public_key de Mercado Pago."
177
+
178
+ msgid "Insert your Mercado Pago Access token."
179
+ msgstr "Inserta su Access_token de Mercado Pago."
180
+
181
+ msgid "Status Mapping of Payment x Order"
182
+ msgstr "Mapeamento de Estados de Pagos x Ordens"
183
+
184
+ msgid "Here you can configure details about Mercado Pago payments and WooCommerce order statuses."
185
+ msgstr "Acá puede configurar los detalles sobre los pagos de Mercado Pago y los estados de los pedidos de WooCommerce."
186
+
187
+ msgid "For status mappings between payment/order you can use the defaults, or check references of %s and %s"
188
+ msgstr "Para las asignaciones de estados entre pago/pedido se puede usar los valores estándares, o consultar las referencias de %s y %s"
189
+
190
+ msgid "Status for PENDING"
191
+ msgstr "Estado para PENDING"
192
+
193
+ msgid "when Mercado Pago updates a payment status to PENDING."
194
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a PENDIENTE."
195
+
196
+ msgid "Status for APPROVED"
197
+ msgstr "Estado para APPROVED"
198
+
199
+ msgid "When Mercado Pago updates a payment status to APPROVED."
200
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a APPROVED."
201
+
202
+ msgid "Status for IN_PROCESS"
203
+ msgstr "Estado para IN_PROCESS"
204
+
205
+ msgid "When Mercado Pago updates a payment status to IN_PROCESS."
206
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a IN_PROCESS."
207
+
208
+ msgid "Status for IN_MEDIATION"
209
+ msgstr "Estado para IN_MEDIATION"
210
+
211
+ msgid "When Mercado Pago updates a payment status to IN_MEDIATION."
212
+ msgstr "Cuando Mercado pago actualiza un estado de pago a IN_MEDIATION."
213
+
214
+ msgid "Status for REJECTED"
215
+ msgstr "Estado para REJECTED"
216
+
217
+ msgid "When Mercado Pago updates a payment status to REJECTED."
218
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a REJECTED."
219
+
220
+ msgid "Status for CANCELLED"
221
+ msgstr "Estado para CANCELLED"
222
+
223
+ msgid "When Mercado Pago updates a payment status to CANCELLED."
224
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a CANCELLED."
225
+
226
+ msgid "Status for REFUNDED"
227
+ msgstr "Estado para REFUNDED"
228
+
229
+ msgid "When Mercado Pago updates a payment status to REFUNDED."
230
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a REFUNDED."
231
+
232
+ msgid "Status for CHARGED_BACK"
233
+ msgstr "Estado para CHARGED_BACK"
234
+
235
+ msgid "When Mercado Pago updates a payment status to CHARGED_BACK."
236
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a CHARGED_BACK."
237
+
238
+ msgid "Store Settings"
239
+ msgstr "Configuración de la Tienda"
240
+
241
+ msgid "Here you can place details about your store."
242
+ msgstr "Acá puede colocar detalles de su tienda."
243
+
244
+ msgid "Statement Descriptor"
245
+ msgstr "Descripción de la Factura"
246
+
247
+ msgid "The description that will be shown in your customer\'s invoice."
248
+ msgstr "La descripción que se muestra en la factura de su cliente."
249
+
250
+ msgid "Store Category"
251
+ msgstr "Categoría de la tienda"
252
+
253
+ msgid "Store Identificator"
254
+ msgstr "Identificador de la tienda"
255
+
256
+ msgid "Please, inform a prefix to your store."
257
+ msgstr "Por favor, informe un prefijo para su tienda."
258
+
259
+ msgid "If you use your Mercado Pago account on multiple stores you should make sure that this prefix is unique as Mercado Pago will not allow orders with same identificators."
260
+ msgstr "Si esta utilizando su cuenta Mercado Pago para múltiples tiendas, asegúrese que este prefijo sea único para no generar pedidos con el mismo identificador."
261
+
262
+ msgid "Test and Debug Options"
263
+ msgstr "Opciones de Prueba y Debug"
264
+
265
+ msgid "Tools for debug and testing your integration."
266
+ msgstr "Herramientas para debug y teste para su integración."
267
+
268
+ msgid "Debug and Log"
269
+ msgstr "Debug y Log"
270
+
271
+ msgid "Enable log (Keep this disabled if you’re in production)."
272
+ msgstr "Habilitar log (Manténgalo desactivado si está en producción)."
273
+
274
+ msgid "Register event logs of Mercado Pago, such as API requests, for"
275
+ msgstr "Registrar los logs de eventos de Mercado Pago, como las solicitudes de API, para"
276
+
277
+ msgid "Tickets"
278
+ msgstr "Tickets"
279
+
280
+ msgid "You can access your logs in "
281
+ msgstr "Puede acceder a sus logs en "
282
+
283
+ msgid "WooCommerce &gt; System Status &gt; Logs"
284
+ msgstr "WooCommerce &gt; Estado del Sistema &gt; Logs"
285
+
286
+ msgid "Files are located in: "
287
+ msgstr "Los archivos se encuentran en: "
288
+
289
+ msgid "Mercado Pago Sandbox"
290
+ msgstr "Sandbox de Mercado Pago"
291
+
292
+ msgid "Enable Mercado Pago Sandbox."
293
+ msgstr "Habilitar el sandbox de Mercado Pago."
294
+
295
+ msgid "This option allows you to test payments inside a sandbox environment."
296
+ msgstr "Esta opción permite simular un flujo de pagos completo en nuestro entorno Sandbox."
297
+
298
+ msgid "Mercado Pago - Basic Checkout"
299
+ msgstr "Mercado Pago - Checkout Básico"
300
+
301
+ msgid "Receive payments in a matter of minutes. We make it easy for you: just tell us what you want to collect and we’ll take care of the rest."
302
+ msgstr "Recibe pagos en cuestión de minutos. Lo hacemos fácil: solo díganos lo que quiere recolectar y nos encargaremos del resto."
303
+
304
+ msgid "It appears that your credentials are not properly configured.<br/>Please, go to %s and configure it."
305
+ msgstr "Parece que sus credenciales no están configuradas correctamente.<br/>Por favor, vaya a %s y configúrelo."
306
+
307
+ msgid "This appears to be an invalid URL."
308
+ msgstr "Esto parece ser una URL inválida."
309
+
310
+ msgid "Where customers should be redirected after a successful purchase. Let blank to redirect to the default store order resume page."
311
+ msgstr "Donde los clientes serán redirigidos después de una compra exitosa. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
312
+
313
+ msgid "Where customers should be redirected after a failed purchase. Let blank to redirect to the default store order resume page."
314
+ msgstr "Donde los clientes serán redirigidos después de una compra rechazada. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
315
+
316
+ msgid "Where customers should be redirected after a pending purchase. Let blank to redirect to the default store order resume page."
317
+ msgstr "Donde los clientes ​serán redirigidos después de una compra pendiente. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
318
+
319
+ msgid "Enable/Disable"
320
+ msgstr "Habilitar/Deshabilitar"
321
+
322
+ msgid "Enable Basic Checkout"
323
+ msgstr "Habilitar Checkout Básico"
324
+
325
+ msgid "Checkout Interface: How checkout is shown"
326
+ msgstr "Interfaz de Checkout: Cómo se muestra el checkout"
327
+
328
+ msgid "Title"
329
+ msgstr "Título"
330
+
331
+ msgid "Title shown to the client in the checkout."
332
+ msgstr "Título mostrado al cliente en el checkout."
333
+
334
+ msgid "Mercado Pago"
335
+ msgstr "Mercado Pago"
336
+
337
+ msgid "Description"
338
+ msgstr "Descripción"
339
+
340
+ msgid "Description shown to the client in the checkout."
341
+ msgstr "Descripción mostrada al cliente en el checkout."
342
+
343
+ msgid "Pay with Mercado Pago"
344
+ msgstr "Pagar con Mercado Pago"
345
+
346
+ msgid "Integration Method"
347
+ msgstr "Método de integración"
348
+
349
+ msgid "Select how your clients should interact with Mercado Pago. Modal Window (inside your store), Redirect (Client is redirected to Mercado Pago), or iFrame (an internal window is embedded to the page layout)."
350
+ msgstr "Seleccione la forma en que sus clientes deben interactuar con Mercado Pago. Ventana Modal (Dentro de su tienda), Redireccionamiento (El cliente es redireccionado a Mercado Pago), o iFrame (Ventana de pago incorporada a su página)."
351
+
352
+ msgid "iFrame"
353
+ msgstr "iFrame"
354
+
355
+ msgid "Modal Window"
356
+ msgstr "Ventana Modal"
357
+
358
+ msgid "Redirect"
359
+ msgstr "Redireccionamiento"
360
+
361
+ msgid "iFrame Width"
362
+ msgstr "Ancho del iFrame"
363
+
364
+ msgid "If your integration method is iFrame, please inform the payment iFrame width."
365
+ msgstr "Si su modo de apertura es iFrame, indique el ancho del iFrame."
366
+
367
+ msgid "iFrame Height"
368
+ msgstr "Alto del iFrame"
369
+
370
+ msgid "If your integration method is iFrame, please inform the payment iFrame height."
371
+ msgstr "Si su modo de apertura es iFrame, indique el alto del iFrame."
372
+
373
+ msgid "Checkout Navigation: How checkout redirections will behave"
374
+ msgstr "Navegación de Checkout: Cómo se comportarán las redirecciones de pago"
375
+
376
+ msgid "Auto Return"
377
+ msgstr "Redirección automática"
378
+
379
+ msgid "Automatic Return After Payment"
380
+ msgstr "Redirección Automática luego del pago"
381
+
382
+ msgid "After the payment, client is automatically redirected."
383
+ msgstr "Después del pago, el cliente será redireccionado automáticamente."
384
+
385
+ msgid "Sucess URL"
386
+ msgstr "URL de Éxito"
387
+
388
+ msgid "Failure URL"
389
+ msgstr "URL de Pago Rechazado"
390
+
391
+ msgid "Pending URL"
392
+ msgstr "URL de Pago Pendiente"
393
+
394
+ msgid "Payment Options: How payment options behaves"
395
+ msgstr "Opciones de pago: Cómo se comportan las opciones de pago"
396
+
397
+ msgid "Max installments"
398
+ msgstr "Número máximo de cuotas"
399
+
400
+ msgid "Select the max number of installments for your customers."
401
+ msgstr "Seleccione el número máximo de cuotas disponibles para sus clientes."
402
+
403
+ msgid "1x installment"
404
+ msgstr "1x cuota"
405
+
406
+ msgid "2x installmens"
407
+ msgstr "2x cuotas"
408
+
409
+ msgid "3x installmens"
410
+ msgstr "3x cuotas"
411
+
412
+ msgid "4x installmens"
413
+ msgstr "4x cuotas"
414
+
415
+ msgid "5x installmens"
416
+ msgstr "5x cuotas"
417
+
418
+ msgid "6x installmens"
419
+ msgstr "6x cuotas"
420
+
421
+ msgid "10x installmens"
422
+ msgstr "10x cuotas"
423
+
424
+ msgid "12x installmens"
425
+ msgstr "12x cuotas"
426
+
427
+ msgid "15x installmens"
428
+ msgstr "15x cuotas"
429
+
430
+ msgid "18x installmens"
431
+ msgstr "18x cuotas"
432
+
433
+ msgid "24x installmens"
434
+ msgstr "24x cuotas"
435
+
436
+ msgid "Exclude Payment Methods"
437
+ msgstr "Excluir medios de pago"
438
+
439
+ msgid "Select the payment methods that you <strong>don\'t</strong> want to receive with Mercado Pago."
440
+ msgstr "Selecione los medios de pago que <strong>no</strong> desea aceptar con Mercado Pago."
441
+
442
+ msgid "Discount by Gateway"
443
+ msgstr "Descuento por Gateway"
444
+
445
+ msgid "Give a percentual (0 to 100) discount for your customers if they use this payment gateway."
446
+ msgstr "Dé un descuento porcentual para sus clientes si utilizan este medio de pago."
447
+
448
+ msgid "Two Cards Mode"
449
+ msgstr "Modo de Dos Tarjetas"
450
+
451
+ msgid "Payments with Two Cards"
452
+ msgstr "Pagos con Dos Tarjetas"
453
+
454
+ msgid "Your customer will be able to use two different cards to pay the order."
455
+ msgstr "Su cliente será capaz de utilizar dos tarjetas diferentes para pagar el pedido."
456
+
457
+ msgid "Thank you for your order. Please, proceed with your payment clicking in the bellow button."
458
+ msgstr "Gracias por su compra. Por favor, prosiga a la página de pago haciendo click en el botón de abajo."
459
+
460
+ msgid "Cancel order &amp; Clear cart"
461
+ msgstr "Cancelar &amp; Limpiar carrito"
462
+
463
+ msgid "Thank you for your order. Proceed with your payment completing the following information."
464
+ msgstr "Gracias por su compra. Prosiga con su pago completando la información abajo."
465
+
466
+ msgid "An error occurred when proccessing your payment. Please try again or contact us for assistence."
467
+ msgstr "Se ha producido un error en el procesamiento de su pago. Por favor, inténtelo de nuevo o póngase en contacto con nosotros para Asistencia."
468
+
469
+ msgid "Shipping service used by store"
470
+ msgstr "Servicio de envío utilizado por la tienda"
471
+
472
+ msgid "Discount of"
473
+ msgstr "Descuento de"
474
+
475
+ msgid "Mercado Pago Request Failure"
476
+ msgstr "La solicitud de Mercado Pago ha fallado"
477
+
478
+ msgid "Payer email"
479
+ msgstr "Email del comprador"
480
+
481
+ msgid "Payment type"
482
+ msgstr "Medio de pago"
483
+
484
+ msgid "Payment approved."
485
+ msgstr "Pago aprobado."
486
+
487
+ msgid "Customer haven\'t paid yet."
488
+ msgstr "El cliente todavía no efectuó el pago."
489
+
490
+ msgid "Payment under review."
491
+ msgstr "El pago está pendiente de revisión."
492
+
493
+ msgid "The payment was refused. The customer can try again."
494
+ msgstr "El pago fue rechazado. El cliente puede intentar nuevamente."
495
+
496
+ msgid "The payment was refunded to the customer."
497
+ msgstr "El pago fue devuelto al cliente."
498
+
499
+ msgid "The payment was cancelled."
500
+ msgstr "El pago fue cancelado."
501
+
502
+ msgid "The payment is under mediation or it was charged-back."
503
+ msgstr "El pago esta en mediación o la compra fue desconocida por el cliente."
504
+
505
+ msgid "Mercado Pago - Custom Checkout"
506
+ msgstr "Mercado Pago - Checkout Personalizado"
507
+
508
+ msgid "We give you the possibility to adapt the payment experience you want to offer 100% in your website, mobile app or anywhere you want. You can build the design that best fits your business model, aiming to maximize conversion."
509
+ msgstr "Le ofrecemos la posibilidad de adaptar la experiencia de pago que desea ofrecer 100% en su sitio web, en su aplicación móvil o en cualquier lugar que desee. Puede crear el diseño que mejor se adapte a su modelo de negocio, con el objetivo de maximizar la conversión."
510
+
511
+ msgid "Enable Custom Checkout"
512
+ msgstr "Habilitar Checkout Personalizado"
513
+
514
+ msgid "Coupons"
515
+ msgstr "Cupones"
516
+
517
+ msgid "Enable coupons of discounts"
518
+ msgstr "Activar los cupones de descuento"
519
+
520
+ msgid "If there is a Mercado Pago campaign, allow your store to give discounts to customers."
521
+ msgstr "Si hay una campaña de Mercado Pago, permitir a su tienda hacer descuentos para los clientes."
522
+
523
+ msgid "Binary Mode"
524
+ msgstr "Modo binario"
525
+
526
+ msgid "Enable binary mode for checkout status"
527
+ msgstr "Activar el modo binario para el estado del checkout"
528
+
529
+ msgid "When charging a credit card, only [approved] or [reject] status will be taken."
530
+ msgstr "Al cargar una tarjeta de crédito, sólo los estados [aprobado] o [rechazar] seran tomados."
531
+
532
+ msgid "This service allows you to subscribe customers to subscription plans."
533
+ msgstr "Este servicio le permite suscribir los clientes a planes de suscripción."
534
+
535
+ msgid "It appears that your country is not supported for this solution.<br/>Please, use another payment method or go to %s to use another credential."
536
+ msgstr "Parece que su país no es compatible con esta solución.<br/>Por favor, use otro método de pago o vaya a %s para usar otra credencial."
537
+
538
+ msgid "Enable Subscription"
539
+ msgstr "Habilitar Suscripción"
540
+
541
+ msgid "Instant Payment Notification (IPN) URL"
542
+ msgstr "URL da Notificación Instantanea de Pago (IPN)"
543
+
544
+ msgid "For this solution, you need to configure your IPN URL. You can access it in your account for your specific country in:"
545
+ msgstr "Para esta solución, usted debe configurar su URL de IPN. Puede acceder a ella en su cuenta para su específico país en:"
546
+
547
+ msgid "Your IPN URL to receive instant payment notifications is"
548
+ msgstr "Su URL de IPN para recibir notificaciones instantáneas de pago es"
549
+
550
+ msgid "Mercado Pago - Ticket"
551
+ msgstr "Mercado Pago - Ticket"
552
+
553
+ msgid "UNDER BUILDING..."
554
+ msgstr "UN CONSTRUCIÓN..."
555
+
556
+ msgid "Enable Ticket Payment Method"
557
+ msgstr "Habilitar Pago con Ticket"
558
+
559
+ msgid "Ticket Interface: How checkout is shown"
560
+ msgstr "Interfaz de Tickets: Cómo se muestra el checkout"
561
+
562
+ msgid "Title shown to the client in the ticket."
563
+ msgstr "Título mostrado al cliente en el ticket."
564
+
565
+ msgid "Description shown to the client in the ticket."
566
+ msgstr "Descripción mostrada al cliente en el ticket."
567
+
568
+ msgid "Stock Reduce"
569
+ msgstr "Reducir Inventario"
570
+
571
+ msgid "Reduce Stock in Order Generation"
572
+ msgstr "Reducir Inventario en la Orden"
573
+
574
+ msgid "Enable this to reduce the stock on order creation. Disable this to reduce <strong>after</strong> the payment approval."
575
+ msgstr "Activar esta opción para reducir el inventario mediante la creación de un pedido. Desactivar para reducir sólo <strong>después</strong> de la aprobación del pago."
576
+
577
+ msgid "Mercado Envios is a shipping method available only for payments with Mercado Pago."
578
+ msgstr "Mercado Envios es un método de envío disponible sólo para los pagos con Mercado Pago."
579
+
580
+ msgid "Free Shipping"
581
+ msgstr "Envío Gratuito"
582
+
583
+ msgid "Day"
584
+ msgstr "Día"
585
+
586
+ msgid "Days"
587
+ msgstr "Días"
588
+
589
+ msgid "Enable the two shipping methods the Mercado Envios (Express and Normal) for the proper functioning of the module."
590
+ msgstr "Habilitar los dos métodos de envío de Mercado Envios (Express y Normal) para el correcto funcionamiento del módulo."
591
+
592
+ msgid "Mercado Envios"
593
+ msgstr "Mercado Envios"
594
+
595
+ msgid "This controls the title which the user sees during checkout."
596
+ msgstr "Controla el título que se muestra al cliente durante el pago."
597
+
598
+ msgid "Enable free shipping for this shipping method"
599
+ msgstr "Habilitar el envío gratuito para este método de envío"
600
+
601
+ msgid "Delivery Time"
602
+ msgstr "Tiempo de Entrega"
603
+
604
+ msgid "Show estimated delivery time"
605
+ msgstr "Mostrar el tiempo estimado de entrega"
606
+
607
+ msgid "Display the estimated delivery time in working days."
608
+ msgstr "Mostrar el tiempo estimado de entrega en días laborables."
609
+
610
+ msgid "Tag ready to print"
611
+ msgstr "Etiqueta lista para imprimir"
612
+
613
+ msgid "Tag printed"
614
+ msgstr "Etiqueta impresa"
615
+
616
+ msgid "Unsuccessful"
617
+ msgstr "Fracasado"
618
+
619
+ msgid "Delayed shipping"
620
+ msgstr "Envío retrasado"
621
+
622
+ msgid "Missing recipient for delivery"
623
+ msgstr "Destinatario ausente para envío"
624
+
625
+ msgid "In return to sender"
626
+ msgstr "Volviendo al remitente"
627
+
628
+ msgid "Buyer initiates complaint and requested a refund."
629
+ msgstr "El comprador ha iniciado una discusión y pide un extorno."
630
+
631
+ msgid "Order"
632
+ msgstr "Pedido"
633
+
634
+ msgid "Mercado Envios Tracking ID"
635
+ msgstr "Código de rastreamiento de Mercado Envíos"
636
+
637
+ msgid "Hello,"
638
+ msgstr "Hola,"
639
+
640
+ msgid "Your order"
641
+ msgstr "Su pedido"
642
+
643
+ msgid "made in"
644
+ msgstr "hecho en"
645
+
646
+ msgid "used Mercado Envios as its shipment method."
647
+ msgstr "utilizó el Mercado Envíos como su medio de envío."
648
+
649
+ msgid "You can track it with the following Tracking ID:"
650
+ msgstr "Usted puedes rastrearlo con lo siguiente código de rastreamiento:"
651
+
652
+ msgid "Best regards."
653
+ msgstr "Saludos."
654
+
655
+ msgid "Mercado Pago Subscription"
656
+ msgstr "Suscripción Mercado Pago"
657
+
658
+ msgid "Payment ID:"
659
+ msgstr "ID de Pago:"
660
+
661
+ msgid "Amount:"
662
+ msgstr "Cantidad:"
663
+
664
+ msgid "This operation could not be completed."
665
+ msgstr "Esta operación no se puede completar."
666
+
667
+ msgid "Operation successfully completed."
668
+ msgstr "La operación se realizó con éxito."
669
+
670
+ msgid "Refund Payment"
671
+ msgstr "Reembolso de Pago"
672
+
673
+ msgid "Cancel Payment"
674
+ msgstr "Cancelar Pago"
675
+
676
+ msgid "Mercado Pago - Subscription"
677
+ msgstr "Mercado Pago - Suscripcións"
678
+
679
+ msgid "A recurrent product is a signature that should be bought isolated in your cart. Please, create separated orders."
680
+ msgstr "Un producto recurrente es una suscripción que debe adquirirse por separado en su carrito. Por favor, hace los pedidos por separado."
681
+
682
+ msgid "Recurrent Product"
683
+ msgstr "Producto Recurrente"
684
+
685
+ msgid "Frequency"
686
+ msgstr "Frecuencia"
687
+
688
+ msgid "Amount of time (in days or months) for the execution of the next payment."
689
+ msgstr "Cantidad de tiempo (en días o meses) para la ejecución del próximo pago."
690
+
691
+ msgid "End date"
692
+ msgstr "Fecha final"
693
+
694
+ msgid "Deadline to generate new charges. Defaults to never if blank."
695
+ msgstr "Fecha límite para generar nuevos cargos. De forma predeterminada como nunca, si está en blanco."
696
+
697
+ msgid "Months"
698
+ msgstr "Meses"
699
+
700
+ msgid "Indicates the period of time."
701
+ msgstr "Indica el período de tiempo."
702
+
703
+ msgid "Make this product a subscription."
704
+ msgstr "Hacer deste producto una suscripción."
705
+
706
+ msgid "Frequency type"
707
+ msgstr "Tipo de frecuencia"
708
+
709
+ msgid "Subscribe with Mercado Pago"
710
+ msgstr "Suscribirse con Mercado Pago"
711
+
712
+ msgid "Woo Mercado Pago Module depends on the last version of %s to execute!"
713
+ msgstr "Woo Mercado Pago Module depende de la última versión de %s para ejecutarse!"
714
+
715
+ msgid "Tracking code:"
716
+ msgstr "Código de rastreamiento:"
717
+
718
+ msgid "Tag:"
719
+ msgstr "Etiqueta:"
720
+
721
+ msgid "Shipping is pending"
722
+ msgstr "Envío pendiente"
723
+
724
+ msgid "Print"
725
+ msgstr "Imprimir"
726
+
727
+ msgid "Cancel Order"
728
+ msgstr "Cancelar la Compra"
729
+
730
+ msgid "Total of your purchase:"
731
+ msgstr "Total de su compra:"
732
+
733
+ msgid "Total of your purchase with discount:"
734
+ msgstr "Total de su compra con descuento:"
735
+
736
+ msgid "*Uppon payment approval"
737
+ msgstr "*Con la aprobación de pago"
738
+
739
+ msgid "Terms and Conditions of Use"
740
+ msgstr "Términos y Condiciones de Uso"
741
+
742
+ msgid "with discount from"
743
+ msgstr "con descuento de"
744
+
745
+ msgid "You will save"
746
+ msgstr "Usted ahorrará"
747
+
748
+ msgid "Please, inform your coupon code"
749
+ msgstr "Por favor, introduzca el código de su cupón"
750
+
751
+ msgid "Payment converted from"
752
+ msgstr "Pago convertido de"
753
+
754
+ msgid "Installments"
755
+ msgstr "Cuotas"
756
+
757
+ msgid "Choose"
758
+ msgstr "Seleccione"
759
+
760
+ msgid "Parameter cardIssuerId can not be null/empty"
761
+ msgstr "Parámetro [Emisor] no puede ser nulo/vacío"
762
+
763
+ msgid "Issuer"
764
+ msgstr "Emisor"
765
+
766
+ msgid "Invalid Document Number"
767
+ msgstr "Número del Documento inválido"
768
+
769
+ msgid "Parameter docNumber can not be null/empty"
770
+ msgstr "Parámetro [Número del Documento] no puede ser nulo/vacío"
771
+
772
+ msgid "Document number"
773
+ msgstr "Número de Documento"
774
+
775
+ msgid "Invalid Document Type"
776
+ msgstr "Tipo de Documento inválido"
777
+
778
+ msgid "Parameter docType can not be null/empty"
779
+ msgstr "Parámetro [Tipo de Documento] no puede ser nulo/vacío"
780
+
781
+ msgid "Document Type"
782
+ msgstr "Tipo de Documento"
783
+
784
+ msgid "Invalid Card Holder Name"
785
+ msgstr "Nombre del titular de la tarjeta inválido"
786
+
787
+ msgid "Parameter cardholderName can not be null/empty"
788
+ msgstr "Parámetro [Nombre del titular] no puede ser nulo/vacío"
789
+
790
+ msgid "Card holder name"
791
+ msgstr "Nombre del titular de la tarjeta"
792
+
793
+ msgid "Invalid Expiration Date"
794
+ msgstr "Fecha de expiración inválida"
795
+
796
+ msgid "Year"
797
+ msgstr "Año"
798
+
799
+ msgid "Expiration year"
800
+ msgstr "Año de expiración"
801
+
802
+ msgid "Month"
803
+ msgstr "Mes"
804
+
805
+ msgid "Expiration month"
806
+ msgstr "Mes de expiración"
807
+
808
+ msgid "Invalid Card Number"
809
+ msgstr "Número de tarjeta inválido"
810
+
811
+ msgid "Parameter cardNumber can not be null/empty"
812
+ msgstr "Parámetro [Número de tarjeta] no puede ser nulo/vacío"
813
+
814
+ msgid "Credit card number"
815
+ msgstr "Número de tarjeta de crédito"
816
+
817
+ msgid "Parameter securityCode can not be null/empty"
818
+ msgstr "Parámetro [Código de seguridad] no puede ser nulo/vacío"
819
+
820
+ msgid "Invalid Security Code"
821
+ msgstr "Código de seguridad inválido"
822
+
823
+ msgid "Security code"
824
+ msgstr "Código de seguridad"
825
+
826
+ msgid "Other Card"
827
+ msgstr "Otra Tarjeta"
828
+
829
+ msgid "Other Cards"
830
+ msgstr "Otras Tarjetas"
831
+
832
+ msgid "ended in"
833
+ msgstr "terminado en"
834
+
835
+ msgid "Your Card"
836
+ msgstr "Sus Tarjetas"
837
+
838
+ msgid "Payment Method"
839
+ msgstr "Medios de Pago"
840
+
841
+ msgid "Apply"
842
+ msgstr "Aplicar"
843
+
844
+ msgid "Remove"
845
+ msgstr "Eliminar"
846
+
847
+ msgid "Discount Coupon"
848
+ msgstr "Cupón de Descuento"
849
+
850
+ msgid "Mercado Pago - Credit Card"
851
+ msgstr "Mercado Pago - Tarjeta de Crédito"
852
+
853
+ msgid "Check your order resume"
854
+ msgstr "Ver su hoja de pedido"
855
+
856
+ msgid "Your payment was refused. You can try again."
857
+ msgstr "Su pago fue rechazado. Puede intentarlo de nuevo."
858
+
859
+ msgid "Click to try again"
860
+ msgstr "Haga clic para intentarlo de nuevo"
861
+
862
+ msgid "A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?"
863
+ msgstr "Un problema se produjo al procesar su pago. ¿Esta seguro que ha rellenado correctamente toda la información en el formulario de checkout?"
864
+
865
+ msgid "Discount provided by store"
866
+ msgstr "Descuento dado por la tienda"
867
+
868
+ msgid "Discount for %s coupon"
869
+ msgstr "Descuento para el cupón %s"
870
+
871
+ msgid "Done, your payment was accredited!"
872
+ msgstr "Listo, su pago ha sido aceptado!"
873
+
874
+ msgid "We are processing the payment. In less than an hour we will e-mail you the results."
875
+ msgstr "Estamos procesando su pago. En menos de una hora le enviaremos el resultado por correo electrónico."
876
+
877
+ msgid "We are processing the payment. In less than 2 business days we will tell you by e-mail whether it has accredited or we need more information."
878
+ msgstr "Estamos procesando su pago. En menos de 2 días le enviaremos por correo electrónico si se ha aprobado el pago o si se necesita información adicional."
879
+
880
+ msgid "Check the card number."
881
+ msgstr "Compruebe el número de tarjeta."
882
+
883
+ msgid "Check the expiration date."
884
+ msgstr "Compruebe la fecha de expiración."
885
+
886
+ msgid "Check the information."
887
+ msgstr "Compruebe la información informada."
888
+
889
+ msgid "Check the security code."
890
+ msgstr "Compruebe el código de seguridad informado."
891
+
892
+ msgid "We could not process your payment."
893
+ msgstr "No se puede procesar su pago."
894
+
895
+ msgid "You must authorize the payment of your orders."
896
+ msgstr "Usted debe autorizar los pagos de sus órdenes."
897
+
898
+ msgid "Call your card issuer to activate your card. The phone is on the back of your card."
899
+ msgstr "Póngase en contacto con el emisor de su tarjeta para activarla. El teléfono se encuentra en la parte posterior de su tarjeta."
900
+
901
+ msgid "You already made a payment for that amount. If you need to repay, use another card or other payment method."
902
+ msgstr "Usted ya realizó un pago de este importe. Si tiene que pagar de nuevo, utilizar otra tarjeta u otro medio de pago."
903
+
904
+ msgid "Your payment was rejected. Choose another payment method. We recommend cash."
905
+ msgstr "Su pago fue rechazado. Por favor seleccione otro medio de pago. Se recomienda en efectivo."
906
+
907
+ msgid "Your payment do not have sufficient funds."
908
+ msgstr "Su pago no tiene fondos suficientes."
909
+
910
+ msgid "Your payment does not process payments with selected installments."
911
+ msgstr "El pago no puede procesar la cuota seleccionada."
912
+
913
+ msgid "You have reached the limit of allowed attempts. Choose another card or another payment method."
914
+ msgstr "Has alcanzado el límite de intentos permitidos. Elija otra tarjeta u otro medio de pago."
915
+
916
+ msgid "This payment method did not process the payment."
917
+ msgstr "Esta medio de pago no puede procesar su pago."
918
+
919
+ msgid "Please, inform your email in billing address to use this feature"
920
+ msgstr "Por favor, introduzca su email en la dirección de facturación para utilizar este servicio"
921
+
922
+ msgid "Waiting for the ticket payment."
923
+ msgstr "Esperando el pago del ticket."
924
+
925
+ msgid "here"
926
+ msgstr "aquí"
927
+
928
+ msgid "To reprint the ticket click "
929
+ msgstr "Para imprimir nuevamente el ticket hace clic "
930
+
931
+ msgid "A problem was occurred when processing your payment. Please, try again."
932
+ msgstr "Un problema se produjo al procesar su pago. Por favor, inténtelo de nuevo."
933
+
934
+ msgid "Print the Ticket"
935
+ msgstr "Imprimir el ticket"
936
+
937
+ msgid "Thank you for your order. Please, pay the ticket to get your order approved."
938
+ msgstr "Gracias por su orden. Por favor, realice el pago del ticket para tener su orden aprobada."
939
+
940
+ msgid "Important: The order will be confirmed only after the payment approval."
941
+ msgstr "Importante: La solicitud sólo será confirmada después de la aprobación del pago."
942
+
943
+ msgid "Click [Place order] button. The ticket will be generated and you will be redirected to print it."
944
+ msgstr "Haga clic en el botón [Realizar el pedido]. El ticket será generado y usted será redirigido a imprimirlo."
945
+
946
+ msgid "Please, select the ticket issuer of your preference."
947
+ msgstr "Por favor, seleccione el emisor de su elección."
948
+
949
+ msgid "Needed informations due to brazilian bank compliances numbers 3.461/09, 3.598/12 and 3.656/13 of the Central Bank of Brazil."
950
+ msgstr "Informaciones necesarias debido a las normas bancarias brasileñas números 3.461/09, 3.598/12 y 3.656/13 del Banco Central de Brasil."
951
+
952
+ msgid "NAME"
953
+ msgstr "NOMBRE"
954
+
955
+ msgid "SURNAME"
956
+ msgstr "APELLIDO"
957
+
958
+ msgid "DOCUMENT"
959
+ msgstr "DOCUMENTO"
960
+
961
+ msgid "ADDRESS"
962
+ msgstr "DIRECCIÓN"
963
+
964
+ msgid "NUMBER"
965
+ msgstr "NÚMERO"
966
+
967
+ msgid "CITY"
968
+ msgstr "CIUDAD"
969
+
970
+ msgid "STATE"
971
+ msgstr "ESTADO"
972
+
973
+ msgid "ZIP"
974
+ msgstr "CÓDIGO POSTAL"
975
+
976
+ msgid "You must inform you NAME"
977
+ msgstr "Obligatorio informar su NOMBRE"
978
+
979
+ msgid "You must inform your SURNAME"
980
+ msgstr "Obligatorio informar su APELLIDO"
981
+
982
+ msgid "You must inform your DOCUMENT"
983
+ msgstr "Obligatorio informar su DOCUMENTO"
984
+
985
+ msgid "You must inform your ADDRESS"
986
+ msgstr "Obligatorio informar su DIRECCIÓN"
987
+
988
+ msgid "You must inform your ADDRESS NUMBER"
989
+ msgstr "Obligatorio informar su NÚMERO"
990
+
991
+ msgid "You must inform your CITY"
992
+ msgstr "Obligatorio informar su CIUDAD"
993
+
994
+ msgid "You must inform your STATE"
995
+ msgstr "Obligatorio informar su ESTADO"
996
+
997
+ msgid "You must inform your ZIP"
998
+ msgstr "Obligatorio informar su CÓDIGO POSTAL"
999
+
1000
+ msgid "Fisical Person"
1001
+ msgstr "Persona Física"
1002
+
1003
+ msgid "Legal Person"
1004
+ msgstr "Persona Jurídica"
1005
+
1006
+ msgid "SOCIAL NAME"
1007
+ msgstr "RAZÓN SOCIAL"
1008
+
1009
+ msgid "CNPJ"
1010
+ msgstr "CNPJ"
i18n/languages/woocommerce-mercadopago-es_CO.mo ADDED
Binary file
i18n/languages/woocommerce-mercadopago-es_CO.po ADDED
@@ -0,0 +1,1010 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # WordPress Blank Pot
2
+ # Copyright (C) 2014 ...
3
+ # This file is distributed under the GNU General Public License v2 or later.
4
+ msgid ""
5
+ msgstr ""
6
+ "Project-Id-Version: WordPress Blank Pot v1.0.0\n"
7
+ "POT-Creation-Date: 2016-05-23 14:52-0300\n"
8
+ "PO-Revision-Date: \n"
9
+ "Language-Team: Product Development <translations@example.com>\n"
10
+ "Report-Msgid-Bugs-To: Translator Name <translations@example.com>\n"
11
+ "MIME-Version: 1.0\n"
12
+ "Content-Type: text/plain; charset=UTF-8\n"
13
+ "Content-Transfer-Encoding: 8bit\n"
14
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
+ "X-Textdomain-Support: yesX-Generator: Poedit 1.6.4\n"
16
+ "X-Poedit-SourceCharset: UTF-8\n"
17
+ "X-Poedit-KeywordsList: __;_e;esc_html_e;esc_html_x:1,2c;esc_html__;esc_attr_e;esc_attr_x:1,2c;esc_attr__;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_x:1,2c;_n:1,2;"
18
+ "_n_noop:1,2;__ngettext:1,2;__ngettext_noop:1,2;_c,_nc:4c,1,2\n"
19
+ "X-Poedit-Basepath: ../Documents/woocommerce (MAMP)/wp-content/plugins/woo-mercado-pago-module\n"
20
+ "X-Generator: Poedit 1.8.7\n"
21
+ "Last-Translator: \n"
22
+ "Language: es_CO\n"
23
+ "X-Poedit-SearchPath-0: .\n"
24
+
25
+ msgid "This is the <strong>oficial</strong> module of Mercado Pago for WooCommerce plugin. This module enables WooCommerce to use Mercado Pago as a payment Gateway for purchases made in your e-commerce store."
26
+ msgstr "Este es el módulo <strong>oficial</strong> de Mercado Pago para el plugin WooCommerce. Este módulo habilita el uso de Mercado Pago en WooCommerce como medio de pago para compras realizadas en su tienda virtual."
27
+
28
+ msgid "Mercado Pago Settings"
29
+ msgstr "Configuración de Mercado Pago"
30
+
31
+ msgid "Rate Us"
32
+ msgstr "Calificanos"
33
+
34
+ msgid "Tutorial"
35
+ msgstr "Tutorial"
36
+
37
+ msgid "Report Issue"
38
+ msgstr "Informar Problema"
39
+
40
+ msgid "ERROR: It was not possible to convert the unsupported currency"
41
+ msgstr "ERROR: No fue posible convertir la moneda no soportada"
42
+
43
+ msgid "to"
44
+ msgstr "a"
45
+
46
+ msgid "Currency conversions should be made outside this module."
47
+ msgstr "Las conversiones de monedas deben hacerse fuera de este módulo."
48
+
49
+ msgid "ATTENTION: The currency"
50
+ msgstr "ATENCION: La moneda"
51
+
52
+ msgid "defined in WooCommerce is different from the one used in your credentials country.<br>The currency for transactions in this payment method will be"
53
+ msgstr "definido en WooCommerce es diferente al utilizado por las credenciales de su país.<br>La moneda para las transacciones hechas con este método de pago será"
54
+
55
+ msgid "CURRENCY CONVERTED: Your store is converting currency from"
56
+ msgstr "MONEDA CONVERTIDA: Su tienda está convirtiendo moneda de"
57
+
58
+ msgid "Colombia"
59
+ msgstr "Colombia"
60
+
61
+ msgid "Argentine"
62
+ msgstr "Argentina"
63
+
64
+ msgid "Brazil"
65
+ msgstr "Brasil"
66
+
67
+ msgid "Chile"
68
+ msgstr "Chile"
69
+
70
+ msgid "Mexico"
71
+ msgstr "México"
72
+
73
+ msgid "Uruguay"
74
+ msgstr "Uruguay"
75
+
76
+ msgid "Venezuela"
77
+ msgstr "Venezuela"
78
+
79
+ msgid "Peru"
80
+ msgstr "Perú"
81
+
82
+ msgid "Update WooCommerce order to "
83
+ msgstr "Actualizar la orden de WooCommerce a "
84
+
85
+ msgid "You do not have sufficient permissions to access this page."
86
+ msgstr "No tiene suficientes permisos para acceder a esta página."
87
+
88
+ msgid "WooCommerce is installed and enabled."
89
+ msgstr "WooCommerce está instalado y habilitado."
90
+
91
+ msgid "You don\'t have WooCommerce installed and enabled."
92
+ msgstr "No tiene WooCommerce instalado y habilitado."
93
+
94
+ msgid "Your PHP version is OK."
95
+ msgstr "Su versión de PHP está bien."
96
+
97
+ msgid "Your PHP version do not support this module. You have %s, minimal required is %s."
98
+ msgstr "Su versión de PHP no soporta este módulo. Tienes %s, la mínima requerida es %s."
99
+
100
+ msgid "cURL is installed."
101
+ msgstr "cURL está instalado."
102
+
103
+ msgid "cURL is not installed."
104
+ msgstr "cURL no está instalado."
105
+
106
+ msgid "SSL is missing in your site."
107
+ msgstr "Falta el SSL en su sitio."
108
+
109
+ msgid "Your site has SSL enabled."
110
+ msgstr "Su sitio tiene SSL habilitado."
111
+
112
+ msgid "Basic Checkout"
113
+ msgstr "Checkout Básico"
114
+
115
+ msgid "Custom Checkout"
116
+ msgstr "Checkout Personalizado"
117
+
118
+ msgid "Ticket"
119
+ msgstr "Ticket"
120
+
121
+ msgid "Subscription"
122
+ msgstr "Suscripción"
123
+
124
+ msgid "Configure your Client_id and Client_secret to have access to more options."
125
+ msgstr "Configure su Client_id y Client_secret para tener acceso a más opciones."
126
+
127
+ msgid "Define which type of products your store sells."
128
+ msgstr "Defina qué tipo de productos se vende en su tienda."
129
+
130
+ msgid "Your <strong>client_id</strong> and <strong>client_secret</strong> are <strong>valid</strong> for"
131
+ msgstr "Su <strong>client_id</strong> y <strong>client_secret</strong> son <strong>válidos</strong> para"
132
+
133
+ msgid "Your <strong>client_id</strong> and <strong>client_secret</strong> are <strong>not valid</strong>!"
134
+ msgstr "Su <strong>client_id</strong> y <strong>client_secret</strong> son <strong>inválidas</strong>!"
135
+
136
+ msgid "These credentials are used in <strong>Basic Checkout</strong> and <strong>Subscriptions</strong>. Access it for your country:<br>"
137
+ msgstr "Estas credenciales se utilizan en <strong>Checkout Básico</strong> y <strong>Suscripciones</strong>. Acceda este para su país en:<br>"
138
+
139
+ msgid "or"
140
+ msgstr "o"
141
+
142
+ msgid "Your <strong>public_key</strong> and <strong>access_token</strong> are <strong>valid</strong> for"
143
+ msgstr "Su <strong>public_key</strong> y <strong>access_token</strong> son <strong>válidas</strong> para"
144
+
145
+ msgid "Your <strong>public_key</strong> and <strong>access_token</strong> are <strong>not valid</strong>!"
146
+ msgstr "Su <strong>public_key</strong> y <strong>acceso_token</strong> son <strong>inválidas</strong>!"
147
+
148
+ msgid "These credentials are used in <strong>Custom Checkout</strong> and <strong>Tickets</strong>. Access it for your country:<br>"
149
+ msgstr "Estas credenciales se usan en <strong>Checkout Personalizado</ strong> y <strong>Tickets</strong>. Acceda este para su país en:<br>"
150
+
151
+ msgid "This module enables WooCommerce to use Mercado Pago as payment method for purchases made in your virtual store."
152
+ msgstr "Este módulo permite a WooCommerce usar Mercado Pago como método de pago para compras realizadas en su tienda virtual."
153
+
154
+ msgid "Payment Gateways"
155
+ msgstr "Gateways de Pago"
156
+
157
+ msgid "Basic Checkout & Subscriptions"
158
+ msgstr "Checkout Básico & Suscripciones"
159
+
160
+ msgid "Custom Checkout & Tickets"
161
+ msgstr "Checkout Personalizado & Tickets"
162
+
163
+ msgid "Insert your Mercado Pago Client_id."
164
+ msgstr "Inserta su Client_id de Mercado Pago."
165
+
166
+ msgid "Insert your Mercado Pago Client_secret."
167
+ msgstr "Inserta su" Client_secret de Mercado Pago.
168
+
169
+ msgid "Currency Conversion"
170
+ msgstr "Conversión de Moneda"
171
+
172
+ msgid "If the used currency in WooCommerce is different or not supported by Mercado Pago, convert values of your transactions using Mercado Pago currency ratio. This service may slow down your server as each conversion is made in the checkout moment."
173
+ msgstr "Si la moneda utilizada en WooCommerce es diferente o no es compatible con Mercado Pago, convierta los valores de sus transacciones usando la tasa de moneda de Mercado Pago. Este servicio puede ralentizar su servidor ya que cada conversión se realiza en el momento de la compra."
174
+
175
+ msgid "Insert your Mercado Pago Public key."
176
+ msgstr "Inserta su Public_key de Mercado Pago."
177
+
178
+ msgid "Insert your Mercado Pago Access token."
179
+ msgstr "Inserta su Access_token de Mercado Pago."
180
+
181
+ msgid "Status Mapping of Payment x Order"
182
+ msgstr "Mapeamento de Estados de Pagos x Ordens"
183
+
184
+ msgid "Here you can configure details about Mercado Pago payments and WooCommerce order statuses."
185
+ msgstr "Acá puede configurar los detalles sobre los pagos de Mercado Pago y los estados de los pedidos de WooCommerce."
186
+
187
+ msgid "For status mappings between payment/order you can use the defaults, or check references of %s and %s"
188
+ msgstr "Para las asignaciones de estados entre pago/pedido se puede usar los valores estándares, o consultar las referencias de %s y %s"
189
+
190
+ msgid "Status for PENDING"
191
+ msgstr "Estado para PENDING"
192
+
193
+ msgid "when Mercado Pago updates a payment status to PENDING."
194
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a PENDIENTE."
195
+
196
+ msgid "Status for APPROVED"
197
+ msgstr "Estado para APPROVED"
198
+
199
+ msgid "When Mercado Pago updates a payment status to APPROVED."
200
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a APPROVED."
201
+
202
+ msgid "Status for IN_PROCESS"
203
+ msgstr "Estado para IN_PROCESS"
204
+
205
+ msgid "When Mercado Pago updates a payment status to IN_PROCESS."
206
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a IN_PROCESS."
207
+
208
+ msgid "Status for IN_MEDIATION"
209
+ msgstr "Estado para IN_MEDIATION"
210
+
211
+ msgid "When Mercado Pago updates a payment status to IN_MEDIATION."
212
+ msgstr "Cuando Mercado pago actualiza un estado de pago a IN_MEDIATION."
213
+
214
+ msgid "Status for REJECTED"
215
+ msgstr "Estado para REJECTED"
216
+
217
+ msgid "When Mercado Pago updates a payment status to REJECTED."
218
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a REJECTED."
219
+
220
+ msgid "Status for CANCELLED"
221
+ msgstr "Estado para CANCELLED"
222
+
223
+ msgid "When Mercado Pago updates a payment status to CANCELLED."
224
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a CANCELLED."
225
+
226
+ msgid "Status for REFUNDED"
227
+ msgstr "Estado para REFUNDED"
228
+
229
+ msgid "When Mercado Pago updates a payment status to REFUNDED."
230
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a REFUNDED."
231
+
232
+ msgid "Status for CHARGED_BACK"
233
+ msgstr "Estado para CHARGED_BACK"
234
+
235
+ msgid "When Mercado Pago updates a payment status to CHARGED_BACK."
236
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a CHARGED_BACK."
237
+
238
+ msgid "Store Settings"
239
+ msgstr "Configuración de la Tienda"
240
+
241
+ msgid "Here you can place details about your store."
242
+ msgstr "Acá puede colocar detalles de su tienda."
243
+
244
+ msgid "Statement Descriptor"
245
+ msgstr "Descripción de la Factura"
246
+
247
+ msgid "The description that will be shown in your customer\'s invoice."
248
+ msgstr "La descripción que se muestra en la factura de su cliente."
249
+
250
+ msgid "Store Category"
251
+ msgstr "Categoría de la tienda"
252
+
253
+ msgid "Store Identificator"
254
+ msgstr "Identificador de la tienda"
255
+
256
+ msgid "Please, inform a prefix to your store."
257
+ msgstr "Por favor, informe un prefijo para su tienda."
258
+
259
+ msgid "If you use your Mercado Pago account on multiple stores you should make sure that this prefix is unique as Mercado Pago will not allow orders with same identificators."
260
+ msgstr "Si esta utilizando su cuenta Mercado Pago para múltiples tiendas, asegúrese que este prefijo sea único para no generar pedidos con el mismo identificador."
261
+
262
+ msgid "Test and Debug Options"
263
+ msgstr "Opciones de Prueba y Debug"
264
+
265
+ msgid "Tools for debug and testing your integration."
266
+ msgstr "Herramientas para debug y teste para su integración."
267
+
268
+ msgid "Debug and Log"
269
+ msgstr "Debug y Log"
270
+
271
+ msgid "Enable log (Keep this disabled if you’re in production)."
272
+ msgstr "Habilitar log (Manténgalo desactivado si está en producción)."
273
+
274
+ msgid "Register event logs of Mercado Pago, such as API requests, for"
275
+ msgstr "Registrar los logs de eventos de Mercado Pago, como las solicitudes de API, para"
276
+
277
+ msgid "Tickets"
278
+ msgstr "Tickets"
279
+
280
+ msgid "You can access your logs in "
281
+ msgstr "Puede acceder a sus logs en "
282
+
283
+ msgid "WooCommerce &gt; System Status &gt; Logs"
284
+ msgstr "WooCommerce &gt; Estado del Sistema &gt; Logs"
285
+
286
+ msgid "Files are located in: "
287
+ msgstr "Los archivos se encuentran en: "
288
+
289
+ msgid "Mercado Pago Sandbox"
290
+ msgstr "Sandbox de Mercado Pago"
291
+
292
+ msgid "Enable Mercado Pago Sandbox."
293
+ msgstr "Habilitar el sandbox de Mercado Pago."
294
+
295
+ msgid "This option allows you to test payments inside a sandbox environment."
296
+ msgstr "Esta opción permite simular un flujo de pagos completo en nuestro entorno Sandbox."
297
+
298
+ msgid "Mercado Pago - Basic Checkout"
299
+ msgstr "Mercado Pago - Checkout Básico"
300
+
301
+ msgid "Receive payments in a matter of minutes. We make it easy for you: just tell us what you want to collect and we’ll take care of the rest."
302
+ msgstr "Recibe pagos en cuestión de minutos. Lo hacemos fácil: solo díganos lo que quiere recolectar y nos encargaremos del resto."
303
+
304
+ msgid "It appears that your credentials are not properly configured.<br/>Please, go to %s and configure it."
305
+ msgstr "Parece que sus credenciales no están configuradas correctamente.<br/>Por favor, vaya a %s y configúrelo."
306
+
307
+ msgid "This appears to be an invalid URL."
308
+ msgstr "Esto parece ser una URL inválida."
309
+
310
+ msgid "Where customers should be redirected after a successful purchase. Let blank to redirect to the default store order resume page."
311
+ msgstr "Donde los clientes serán redirigidos después de una compra exitosa. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
312
+
313
+ msgid "Where customers should be redirected after a failed purchase. Let blank to redirect to the default store order resume page."
314
+ msgstr "Donde los clientes serán redirigidos después de una compra rechazada. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
315
+
316
+ msgid "Where customers should be redirected after a pending purchase. Let blank to redirect to the default store order resume page."
317
+ msgstr "Donde los clientes ​serán redirigidos después de una compra pendiente. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
318
+
319
+ msgid "Enable/Disable"
320
+ msgstr "Habilitar/Deshabilitar"
321
+
322
+ msgid "Enable Basic Checkout"
323
+ msgstr "Habilitar Checkout Básico"
324
+
325
+ msgid "Checkout Interface: How checkout is shown"
326
+ msgstr "Interfaz de Checkout: Cómo se muestra el checkout"
327
+
328
+ msgid "Title"
329
+ msgstr "Título"
330
+
331
+ msgid "Title shown to the client in the checkout."
332
+ msgstr "Título mostrado al cliente en el checkout."
333
+
334
+ msgid "Mercado Pago"
335
+ msgstr "Mercado Pago"
336
+
337
+ msgid "Description"
338
+ msgstr "Descripción"
339
+
340
+ msgid "Description shown to the client in the checkout."
341
+ msgstr "Descripción mostrada al cliente en el checkout."
342
+
343
+ msgid "Pay with Mercado Pago"
344
+ msgstr "Pagar con Mercado Pago"
345
+
346
+ msgid "Integration Method"
347
+ msgstr "Método de integración"
348
+
349
+ msgid "Select how your clients should interact with Mercado Pago. Modal Window (inside your store), Redirect (Client is redirected to Mercado Pago), or iFrame (an internal window is embedded to the page layout)."
350
+ msgstr "Seleccione la forma en que sus clientes deben interactuar con Mercado Pago. Ventana Modal (Dentro de su tienda), Redireccionamiento (El cliente es redireccionado a Mercado Pago), o iFrame (Ventana de pago incorporada a su página)."
351
+
352
+ msgid "iFrame"
353
+ msgstr "iFrame"
354
+
355
+ msgid "Modal Window"
356
+ msgstr "Ventana Modal"
357
+
358
+ msgid "Redirect"
359
+ msgstr "Redireccionamiento"
360
+
361
+ msgid "iFrame Width"
362
+ msgstr "Ancho del iFrame"
363
+
364
+ msgid "If your integration method is iFrame, please inform the payment iFrame width."
365
+ msgstr "Si su modo de apertura es iFrame, indique el ancho del iFrame."
366
+
367
+ msgid "iFrame Height"
368
+ msgstr "Alto del iFrame"
369
+
370
+ msgid "If your integration method is iFrame, please inform the payment iFrame height."
371
+ msgstr "Si su modo de apertura es iFrame, indique el alto del iFrame."
372
+
373
+ msgid "Checkout Navigation: How checkout redirections will behave"
374
+ msgstr "Navegación de Checkout: Cómo se comportarán las redirecciones de pago"
375
+
376
+ msgid "Auto Return"
377
+ msgstr "Redirección automática"
378
+
379
+ msgid "Automatic Return After Payment"
380
+ msgstr "Redirección Automática luego del pago"
381
+
382
+ msgid "After the payment, client is automatically redirected."
383
+ msgstr "Después del pago, el cliente será redireccionado automáticamente."
384
+
385
+ msgid "Sucess URL"
386
+ msgstr "URL de Éxito"
387
+
388
+ msgid "Failure URL"
389
+ msgstr "URL de Pago Rechazado"
390
+
391
+ msgid "Pending URL"
392
+ msgstr "URL de Pago Pendiente"
393
+
394
+ msgid "Payment Options: How payment options behaves"
395
+ msgstr "Opciones de pago: Cómo se comportan las opciones de pago"
396
+
397
+ msgid "Max installments"
398
+ msgstr "Número máximo de cuotas"
399
+
400
+ msgid "Select the max number of installments for your customers."
401
+ msgstr "Seleccione el número máximo de cuotas disponibles para sus clientes."
402
+
403
+ msgid "1x installment"
404
+ msgstr "1x cuota"
405
+
406
+ msgid "2x installmens"
407
+ msgstr "2x cuotas"
408
+
409
+ msgid "3x installmens"
410
+ msgstr "3x cuotas"
411
+
412
+ msgid "4x installmens"
413
+ msgstr "4x cuotas"
414
+
415
+ msgid "5x installmens"
416
+ msgstr "5x cuotas"
417
+
418
+ msgid "6x installmens"
419
+ msgstr "6x cuotas"
420
+
421
+ msgid "10x installmens"
422
+ msgstr "10x cuotas"
423
+
424
+ msgid "12x installmens"
425
+ msgstr "12x cuotas"
426
+
427
+ msgid "15x installmens"
428
+ msgstr "15x cuotas"
429
+
430
+ msgid "18x installmens"
431
+ msgstr "18x cuotas"
432
+
433
+ msgid "24x installmens"
434
+ msgstr "24x cuotas"
435
+
436
+ msgid "Exclude Payment Methods"
437
+ msgstr "Excluir medios de pago"
438
+
439
+ msgid "Select the payment methods that you <strong>don\'t</strong> want to receive with Mercado Pago."
440
+ msgstr "Selecione los medios de pago que <strong>no</strong> desea aceptar con Mercado Pago."
441
+
442
+ msgid "Discount by Gateway"
443
+ msgstr "Descuento por Gateway"
444
+
445
+ msgid "Give a percentual (0 to 100) discount for your customers if they use this payment gateway."
446
+ msgstr "Dé un descuento porcentual para sus clientes si utilizan este medio de pago."
447
+
448
+ msgid "Two Cards Mode"
449
+ msgstr "Modo de Dos Tarjetas"
450
+
451
+ msgid "Payments with Two Cards"
452
+ msgstr "Pagos con Dos Tarjetas"
453
+
454
+ msgid "Your customer will be able to use two different cards to pay the order."
455
+ msgstr "Su cliente será capaz de utilizar dos tarjetas diferentes para pagar el pedido."
456
+
457
+ msgid "Thank you for your order. Please, proceed with your payment clicking in the bellow button."
458
+ msgstr "Gracias por su compra. Por favor, prosiga a la página de pago haciendo click en el botón de abajo."
459
+
460
+ msgid "Cancel order &amp; Clear cart"
461
+ msgstr "Cancelar &amp; Limpiar carrito"
462
+
463
+ msgid "Thank you for your order. Proceed with your payment completing the following information."
464
+ msgstr "Gracias por su compra. Prosiga con su pago completando la información abajo."
465
+
466
+ msgid "An error occurred when proccessing your payment. Please try again or contact us for assistence."
467
+ msgstr "Se ha producido un error en el procesamiento de su pago. Por favor, inténtelo de nuevo o póngase en contacto con nosotros para Asistencia."
468
+
469
+ msgid "Shipping service used by store"
470
+ msgstr "Servicio de envío utilizado por la tienda"
471
+
472
+ msgid "Discount of"
473
+ msgstr "Descuento de"
474
+
475
+ msgid "Mercado Pago Request Failure"
476
+ msgstr "La solicitud de Mercado Pago ha fallado"
477
+
478
+ msgid "Payer email"
479
+ msgstr "Email del comprador"
480
+
481
+ msgid "Payment type"
482
+ msgstr "Medio de pago"
483
+
484
+ msgid "Payment approved."
485
+ msgstr "Pago aprobado."
486
+
487
+ msgid "Customer haven\'t paid yet."
488
+ msgstr "El cliente todavía no efectuó el pago."
489
+
490
+ msgid "Payment under review."
491
+ msgstr "El pago está pendiente de revisión."
492
+
493
+ msgid "The payment was refused. The customer can try again."
494
+ msgstr "El pago fue rechazado. El cliente puede intentar nuevamente."
495
+
496
+ msgid "The payment was refunded to the customer."
497
+ msgstr "El pago fue devuelto al cliente."
498
+
499
+ msgid "The payment was cancelled."
500
+ msgstr "El pago fue cancelado."
501
+
502
+ msgid "The payment is under mediation or it was charged-back."
503
+ msgstr "El pago esta en mediación o la compra fue desconocida por el cliente."
504
+
505
+ msgid "Mercado Pago - Custom Checkout"
506
+ msgstr "Mercado Pago - Checkout Personalizado"
507
+
508
+ msgid "We give you the possibility to adapt the payment experience you want to offer 100% in your website, mobile app or anywhere you want. You can build the design that best fits your business model, aiming to maximize conversion."
509
+ msgstr "Le ofrecemos la posibilidad de adaptar la experiencia de pago que desea ofrecer 100% en su sitio web, en su aplicación móvil o en cualquier lugar que desee. Puede crear el diseño que mejor se adapte a su modelo de negocio, con el objetivo de maximizar la conversión."
510
+
511
+ msgid "Enable Custom Checkout"
512
+ msgstr "Habilitar Checkout Personalizado"
513
+
514
+ msgid "Coupons"
515
+ msgstr "Cupones"
516
+
517
+ msgid "Enable coupons of discounts"
518
+ msgstr "Activar los cupones de descuento"
519
+
520
+ msgid "If there is a Mercado Pago campaign, allow your store to give discounts to customers."
521
+ msgstr "Si hay una campaña de Mercado Pago, permitir a su tienda hacer descuentos para los clientes."
522
+
523
+ msgid "Binary Mode"
524
+ msgstr "Modo binario"
525
+
526
+ msgid "Enable binary mode for checkout status"
527
+ msgstr "Activar el modo binario para el estado del checkout"
528
+
529
+ msgid "When charging a credit card, only [approved] or [reject] status will be taken."
530
+ msgstr "Al cargar una tarjeta de crédito, sólo los estados [aprobado] o [rechazar] seran tomados."
531
+
532
+ msgid "This service allows you to subscribe customers to subscription plans."
533
+ msgstr "Este servicio le permite suscribir los clientes a planes de suscripción."
534
+
535
+ msgid "It appears that your country is not supported for this solution.<br/>Please, use another payment method or go to %s to use another credential."
536
+ msgstr "Parece que su país no es compatible con esta solución.<br/>Por favor, use otro método de pago o vaya a %s para usar otra credencial."
537
+
538
+ msgid "Enable Subscription"
539
+ msgstr "Habilitar Suscripción"
540
+
541
+ msgid "Instant Payment Notification (IPN) URL"
542
+ msgstr "URL da Notificación Instantanea de Pago (IPN)"
543
+
544
+ msgid "For this solution, you need to configure your IPN URL. You can access it in your account for your specific country in:"
545
+ msgstr "Para esta solución, usted debe configurar su URL de IPN. Puede acceder a ella en su cuenta para su específico país en:"
546
+
547
+ msgid "Your IPN URL to receive instant payment notifications is"
548
+ msgstr "Su URL de IPN para recibir notificaciones instantáneas de pago es"
549
+
550
+ msgid "Mercado Pago - Ticket"
551
+ msgstr "Mercado Pago - Ticket"
552
+
553
+ msgid "UNDER BUILDING..."
554
+ msgstr "UN CONSTRUCIÓN..."
555
+
556
+ msgid "Enable Ticket Payment Method"
557
+ msgstr "Habilitar Pago con Ticket"
558
+
559
+ msgid "Ticket Interface: How checkout is shown"
560
+ msgstr "Interfaz de Tickets: Cómo se muestra el checkout"
561
+
562
+ msgid "Title shown to the client in the ticket."
563
+ msgstr "Título mostrado al cliente en el ticket."
564
+
565
+ msgid "Description shown to the client in the ticket."
566
+ msgstr "Descripción mostrada al cliente en el ticket."
567
+
568
+ msgid "Stock Reduce"
569
+ msgstr "Reducir Inventario"
570
+
571
+ msgid "Reduce Stock in Order Generation"
572
+ msgstr "Reducir Inventario en la Orden"
573
+
574
+ msgid "Enable this to reduce the stock on order creation. Disable this to reduce <strong>after</strong> the payment approval."
575
+ msgstr "Activar esta opción para reducir el inventario mediante la creación de un pedido. Desactivar para reducir sólo <strong>después</strong> de la aprobación del pago."
576
+
577
+ msgid "Mercado Envios is a shipping method available only for payments with Mercado Pago."
578
+ msgstr "Mercado Envios es un método de envío disponible sólo para los pagos con Mercado Pago."
579
+
580
+ msgid "Free Shipping"
581
+ msgstr "Envío Gratuito"
582
+
583
+ msgid "Day"
584
+ msgstr "Día"
585
+
586
+ msgid "Days"
587
+ msgstr "Días"
588
+
589
+ msgid "Enable the two shipping methods the Mercado Envios (Express and Normal) for the proper functioning of the module."
590
+ msgstr "Habilitar los dos métodos de envío de Mercado Envios (Express y Normal) para el correcto funcionamiento del módulo."
591
+
592
+ msgid "Mercado Envios"
593
+ msgstr "Mercado Envios"
594
+
595
+ msgid "This controls the title which the user sees during checkout."
596
+ msgstr "Controla el título que se muestra al cliente durante el pago."
597
+
598
+ msgid "Enable free shipping for this shipping method"
599
+ msgstr "Habilitar el envío gratuito para este método de envío"
600
+
601
+ msgid "Delivery Time"
602
+ msgstr "Tiempo de Entrega"
603
+
604
+ msgid "Show estimated delivery time"
605
+ msgstr "Mostrar el tiempo estimado de entrega"
606
+
607
+ msgid "Display the estimated delivery time in working days."
608
+ msgstr "Mostrar el tiempo estimado de entrega en días laborables."
609
+
610
+ msgid "Tag ready to print"
611
+ msgstr "Etiqueta lista para imprimir"
612
+
613
+ msgid "Tag printed"
614
+ msgstr "Etiqueta impresa"
615
+
616
+ msgid "Unsuccessful"
617
+ msgstr "Fracasado"
618
+
619
+ msgid "Delayed shipping"
620
+ msgstr "Envío retrasado"
621
+
622
+ msgid "Missing recipient for delivery"
623
+ msgstr "Destinatario ausente para envío"
624
+
625
+ msgid "In return to sender"
626
+ msgstr "Volviendo al remitente"
627
+
628
+ msgid "Buyer initiates complaint and requested a refund."
629
+ msgstr "El comprador ha iniciado una discusión y pide un extorno."
630
+
631
+ msgid "Order"
632
+ msgstr "Pedido"
633
+
634
+ msgid "Mercado Envios Tracking ID"
635
+ msgstr "Código de rastreamiento de Mercado Envíos"
636
+
637
+ msgid "Hello,"
638
+ msgstr "Hola,"
639
+
640
+ msgid "Your order"
641
+ msgstr "Su pedido"
642
+
643
+ msgid "made in"
644
+ msgstr "hecho en"
645
+
646
+ msgid "used Mercado Envios as its shipment method."
647
+ msgstr "utilizó el Mercado Envíos como su medio de envío."
648
+
649
+ msgid "You can track it with the following Tracking ID:"
650
+ msgstr "Usted puedes rastrearlo con lo siguiente código de rastreamiento:"
651
+
652
+ msgid "Best regards."
653
+ msgstr "Saludos."
654
+
655
+ msgid "Mercado Pago Subscription"
656
+ msgstr "Suscripción Mercado Pago"
657
+
658
+ msgid "Payment ID:"
659
+ msgstr "ID de Pago:"
660
+
661
+ msgid "Amount:"
662
+ msgstr "Cantidad:"
663
+
664
+ msgid "This operation could not be completed."
665
+ msgstr "Esta operación no se puede completar."
666
+
667
+ msgid "Operation successfully completed."
668
+ msgstr "La operación se realizó con éxito."
669
+
670
+ msgid "Refund Payment"
671
+ msgstr "Reembolso de Pago"
672
+
673
+ msgid "Cancel Payment"
674
+ msgstr "Cancelar Pago"
675
+
676
+ msgid "Mercado Pago - Subscription"
677
+ msgstr "Mercado Pago - Suscripcións"
678
+
679
+ msgid "A recurrent product is a signature that should be bought isolated in your cart. Please, create separated orders."
680
+ msgstr "Un producto recurrente es una suscripción que debe adquirirse por separado en su carrito. Por favor, hace los pedidos por separado."
681
+
682
+ msgid "Recurrent Product"
683
+ msgstr "Producto Recurrente"
684
+
685
+ msgid "Frequency"
686
+ msgstr "Frecuencia"
687
+
688
+ msgid "Amount of time (in days or months) for the execution of the next payment."
689
+ msgstr "Cantidad de tiempo (en días o meses) para la ejecución del próximo pago."
690
+
691
+ msgid "End date"
692
+ msgstr "Fecha final"
693
+
694
+ msgid "Deadline to generate new charges. Defaults to never if blank."
695
+ msgstr "Fecha límite para generar nuevos cargos. De forma predeterminada como nunca, si está en blanco."
696
+
697
+ msgid "Months"
698
+ msgstr "Meses"
699
+
700
+ msgid "Indicates the period of time."
701
+ msgstr "Indica el período de tiempo."
702
+
703
+ msgid "Make this product a subscription."
704
+ msgstr "Hacer deste producto una suscripción."
705
+
706
+ msgid "Frequency type"
707
+ msgstr "Tipo de frecuencia"
708
+
709
+ msgid "Subscribe with Mercado Pago"
710
+ msgstr "Suscribirse con Mercado Pago"
711
+
712
+ msgid "Woo Mercado Pago Module depends on the last version of %s to execute!"
713
+ msgstr "Woo Mercado Pago Module depende de la última versión de %s para ejecutarse!"
714
+
715
+ msgid "Tracking code:"
716
+ msgstr "Código de rastreamiento:"
717
+
718
+ msgid "Tag:"
719
+ msgstr "Etiqueta:"
720
+
721
+ msgid "Shipping is pending"
722
+ msgstr "Envío pendiente"
723
+
724
+ msgid "Print"
725
+ msgstr "Imprimir"
726
+
727
+ msgid "Cancel Order"
728
+ msgstr "Cancelar la Compra"
729
+
730
+ msgid "Total of your purchase:"
731
+ msgstr "Total de su compra:"
732
+
733
+ msgid "Total of your purchase with discount:"
734
+ msgstr "Total de su compra con descuento:"
735
+
736
+ msgid "*Uppon payment approval"
737
+ msgstr "*Con la aprobación de pago"
738
+
739
+ msgid "Terms and Conditions of Use"
740
+ msgstr "Términos y Condiciones de Uso"
741
+
742
+ msgid "with discount from"
743
+ msgstr "con descuento de"
744
+
745
+ msgid "You will save"
746
+ msgstr "Usted ahorrará"
747
+
748
+ msgid "Please, inform your coupon code"
749
+ msgstr "Por favor, introduzca el código de su cupón"
750
+
751
+ msgid "Payment converted from"
752
+ msgstr "Pago convertido de"
753
+
754
+ msgid "Installments"
755
+ msgstr "Cuotas"
756
+
757
+ msgid "Choose"
758
+ msgstr "Seleccione"
759
+
760
+ msgid "Parameter cardIssuerId can not be null/empty"
761
+ msgstr "Parámetro [Emisor] no puede ser nulo/vacío"
762
+
763
+ msgid "Issuer"
764
+ msgstr "Emisor"
765
+
766
+ msgid "Invalid Document Number"
767
+ msgstr "Número del Documento inválido"
768
+
769
+ msgid "Parameter docNumber can not be null/empty"
770
+ msgstr "Parámetro [Número del Documento] no puede ser nulo/vacío"
771
+
772
+ msgid "Document number"
773
+ msgstr "Número de Documento"
774
+
775
+ msgid "Invalid Document Type"
776
+ msgstr "Tipo de Documento inválido"
777
+
778
+ msgid "Parameter docType can not be null/empty"
779
+ msgstr "Parámetro [Tipo de Documento] no puede ser nulo/vacío"
780
+
781
+ msgid "Document Type"
782
+ msgstr "Tipo de Documento"
783
+
784
+ msgid "Invalid Card Holder Name"
785
+ msgstr "Nombre del titular de la tarjeta inválido"
786
+
787
+ msgid "Parameter cardholderName can not be null/empty"
788
+ msgstr "Parámetro [Nombre del titular] no puede ser nulo/vacío"
789
+
790
+ msgid "Card holder name"
791
+ msgstr "Nombre del titular de la tarjeta"
792
+
793
+ msgid "Invalid Expiration Date"
794
+ msgstr "Fecha de expiración inválida"
795
+
796
+ msgid "Year"
797
+ msgstr "Año"
798
+
799
+ msgid "Expiration year"
800
+ msgstr "Año de expiración"
801
+
802
+ msgid "Month"
803
+ msgstr "Mes"
804
+
805
+ msgid "Expiration month"
806
+ msgstr "Mes de expiración"
807
+
808
+ msgid "Invalid Card Number"
809
+ msgstr "Número de tarjeta inválido"
810
+
811
+ msgid "Parameter cardNumber can not be null/empty"
812
+ msgstr "Parámetro [Número de tarjeta] no puede ser nulo/vacío"
813
+
814
+ msgid "Credit card number"
815
+ msgstr "Número de tarjeta de crédito"
816
+
817
+ msgid "Parameter securityCode can not be null/empty"
818
+ msgstr "Parámetro [Código de seguridad] no puede ser nulo/vacío"
819
+
820
+ msgid "Invalid Security Code"
821
+ msgstr "Código de seguridad inválido"
822
+
823
+ msgid "Security code"
824
+ msgstr "Código de seguridad"
825
+
826
+ msgid "Other Card"
827
+ msgstr "Otra Tarjeta"
828
+
829
+ msgid "Other Cards"
830
+ msgstr "Otras Tarjetas"
831
+
832
+ msgid "ended in"
833
+ msgstr "terminado en"
834
+
835
+ msgid "Your Card"
836
+ msgstr "Sus Tarjetas"
837
+
838
+ msgid "Payment Method"
839
+ msgstr "Medios de Pago"
840
+
841
+ msgid "Apply"
842
+ msgstr "Aplicar"
843
+
844
+ msgid "Remove"
845
+ msgstr "Eliminar"
846
+
847
+ msgid "Discount Coupon"
848
+ msgstr "Cupón de Descuento"
849
+
850
+ msgid "Mercado Pago - Credit Card"
851
+ msgstr "Mercado Pago - Tarjeta de Crédito"
852
+
853
+ msgid "Check your order resume"
854
+ msgstr "Ver su hoja de pedido"
855
+
856
+ msgid "Your payment was refused. You can try again."
857
+ msgstr "Su pago fue rechazado. Puede intentarlo de nuevo."
858
+
859
+ msgid "Click to try again"
860
+ msgstr "Haga clic para intentarlo de nuevo"
861
+
862
+ msgid "A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?"
863
+ msgstr "Un problema se produjo al procesar su pago. ¿Esta seguro que ha rellenado correctamente toda la información en el formulario de checkout?"
864
+
865
+ msgid "Discount provided by store"
866
+ msgstr "Descuento dado por la tienda"
867
+
868
+ msgid "Discount for %s coupon"
869
+ msgstr "Descuento para el cupón %s"
870
+
871
+ msgid "Done, your payment was accredited!"
872
+ msgstr "Listo, su pago ha sido aceptado!"
873
+
874
+ msgid "We are processing the payment. In less than an hour we will e-mail you the results."
875
+ msgstr "Estamos procesando su pago. En menos de una hora le enviaremos el resultado por correo electrónico."
876
+
877
+ msgid "We are processing the payment. In less than 2 business days we will tell you by e-mail whether it has accredited or we need more information."
878
+ msgstr "Estamos procesando su pago. En menos de 2 días le enviaremos por correo electrónico si se ha aprobado el pago o si se necesita información adicional."
879
+
880
+ msgid "Check the card number."
881
+ msgstr "Compruebe el número de tarjeta."
882
+
883
+ msgid "Check the expiration date."
884
+ msgstr "Compruebe la fecha de expiración."
885
+
886
+ msgid "Check the information."
887
+ msgstr "Compruebe la información informada."
888
+
889
+ msgid "Check the security code."
890
+ msgstr "Compruebe el código de seguridad informado."
891
+
892
+ msgid "We could not process your payment."
893
+ msgstr "No se puede procesar su pago."
894
+
895
+ msgid "You must authorize the payment of your orders."
896
+ msgstr "Usted debe autorizar los pagos de sus órdenes."
897
+
898
+ msgid "Call your card issuer to activate your card. The phone is on the back of your card."
899
+ msgstr "Póngase en contacto con el emisor de su tarjeta para activarla. El teléfono se encuentra en la parte posterior de su tarjeta."
900
+
901
+ msgid "You already made a payment for that amount. If you need to repay, use another card or other payment method."
902
+ msgstr "Usted ya realizó un pago de este importe. Si tiene que pagar de nuevo, utilizar otra tarjeta u otro medio de pago."
903
+
904
+ msgid "Your payment was rejected. Choose another payment method. We recommend cash."
905
+ msgstr "Su pago fue rechazado. Por favor seleccione otro medio de pago. Se recomienda en efectivo."
906
+
907
+ msgid "Your payment do not have sufficient funds."
908
+ msgstr "Su pago no tiene fondos suficientes."
909
+
910
+ msgid "Your payment does not process payments with selected installments."
911
+ msgstr "El pago no puede procesar la cuota seleccionada."
912
+
913
+ msgid "You have reached the limit of allowed attempts. Choose another card or another payment method."
914
+ msgstr "Has alcanzado el límite de intentos permitidos. Elija otra tarjeta u otro medio de pago."
915
+
916
+ msgid "This payment method did not process the payment."
917
+ msgstr "Esta medio de pago no puede procesar su pago."
918
+
919
+ msgid "Please, inform your email in billing address to use this feature"
920
+ msgstr "Por favor, introduzca su email en la dirección de facturación para utilizar este servicio"
921
+
922
+ msgid "Waiting for the ticket payment."
923
+ msgstr "Esperando el pago del ticket."
924
+
925
+ msgid "here"
926
+ msgstr "aquí"
927
+
928
+ msgid "To reprint the ticket click "
929
+ msgstr "Para imprimir nuevamente el ticket hace clic "
930
+
931
+ msgid "A problem was occurred when processing your payment. Please, try again."
932
+ msgstr "Un problema se produjo al procesar su pago. Por favor, inténtelo de nuevo."
933
+
934
+ msgid "Print the Ticket"
935
+ msgstr "Imprimir el ticket"
936
+
937
+ msgid "Thank you for your order. Please, pay the ticket to get your order approved."
938
+ msgstr "Gracias por su orden. Por favor, realice el pago del ticket para tener su orden aprobada."
939
+
940
+ msgid "Important: The order will be confirmed only after the payment approval."
941
+ msgstr "Importante: La solicitud sólo será confirmada después de la aprobación del pago."
942
+
943
+ msgid "Click [Place order] button. The ticket will be generated and you will be redirected to print it."
944
+ msgstr "Haga clic en el botón [Realizar el pedido]. El ticket será generado y usted será redirigido a imprimirlo."
945
+
946
+ msgid "Please, select the ticket issuer of your preference."
947
+ msgstr "Por favor, seleccione el emisor de su elección."
948
+
949
+ msgid "Needed informations due to brazilian bank compliances numbers 3.461/09, 3.598/12 and 3.656/13 of the Central Bank of Brazil."
950
+ msgstr "Informaciones necesarias debido a las normas bancarias brasileñas números 3.461/09, 3.598/12 y 3.656/13 del Banco Central de Brasil."
951
+
952
+ msgid "NAME"
953
+ msgstr "NOMBRE"
954
+
955
+ msgid "SURNAME"
956
+ msgstr "APELLIDO"
957
+
958
+ msgid "DOCUMENT"
959
+ msgstr "DOCUMENTO"
960
+
961
+ msgid "ADDRESS"
962
+ msgstr "DIRECCIÓN"
963
+
964
+ msgid "NUMBER"
965
+ msgstr "NÚMERO"
966
+
967
+ msgid "CITY"
968
+ msgstr "CIUDAD"
969
+
970
+ msgid "STATE"
971
+ msgstr "ESTADO"
972
+
973
+ msgid "ZIP"
974
+ msgstr "CÓDIGO POSTAL"
975
+
976
+ msgid "You must inform you NAME"
977
+ msgstr "Obligatorio informar su NOMBRE"
978
+
979
+ msgid "You must inform your SURNAME"
980
+ msgstr "Obligatorio informar su APELLIDO"
981
+
982
+ msgid "You must inform your DOCUMENT"
983
+ msgstr "Obligatorio informar su DOCUMENTO"
984
+
985
+ msgid "You must inform your ADDRESS"
986
+ msgstr "Obligatorio informar su DIRECCIÓN"
987
+
988
+ msgid "You must inform your ADDRESS NUMBER"
989
+ msgstr "Obligatorio informar su NÚMERO"
990
+
991
+ msgid "You must inform your CITY"
992
+ msgstr "Obligatorio informar su CIUDAD"
993
+
994
+ msgid "You must inform your STATE"
995
+ msgstr "Obligatorio informar su ESTADO"
996
+
997
+ msgid "You must inform your ZIP"
998
+ msgstr "Obligatorio informar su CÓDIGO POSTAL"
999
+
1000
+ msgid "Fisical Person"
1001
+ msgstr "Persona Física"
1002
+
1003
+ msgid "Legal Person"
1004
+ msgstr "Persona Jurídica"
1005
+
1006
+ msgid "SOCIAL NAME"
1007
+ msgstr "RAZÓN SOCIAL"
1008
+
1009
+ msgid "CNPJ"
1010
+ msgstr "CNPJ"
i18n/languages/woocommerce-mercadopago-es_ES.mo ADDED
Binary file
i18n/languages/woocommerce-mercadopago-es_ES.po ADDED
@@ -0,0 +1,1010 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # WordPress Blank Pot
2
+ # Copyright (C) 2014 ...
3
+ # This file is distributed under the GNU General Public License v2 or later.
4
+ msgid ""
5
+ msgstr ""
6
+ "Project-Id-Version: WordPress Blank Pot v1.0.0\n"
7
+ "POT-Creation-Date: 2016-05-23 14:52-0300\n"
8
+ "PO-Revision-Date: \n"
9
+ "Language-Team: Product Development <translations@example.com>\n"
10
+ "Report-Msgid-Bugs-To: Translator Name <translations@example.com>\n"
11
+ "MIME-Version: 1.0\n"
12
+ "Content-Type: text/plain; charset=UTF-8\n"
13
+ "Content-Transfer-Encoding: 8bit\n"
14
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
+ "X-Textdomain-Support: yesX-Generator: Poedit 1.6.4\n"
16
+ "X-Poedit-SourceCharset: UTF-8\n"
17
+ "X-Poedit-KeywordsList: __;_e;esc_html_e;esc_html_x:1,2c;esc_html__;esc_attr_e;esc_attr_x:1,2c;esc_attr__;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_x:1,2c;_n:1,2;"
18
+ "_n_noop:1,2;__ngettext:1,2;__ngettext_noop:1,2;_c,_nc:4c,1,2\n"
19
+ "X-Poedit-Basepath: ../Documents/woocommerce (MAMP)/wp-content/plugins/woo-mercado-pago-module\n"
20
+ "X-Generator: Poedit 1.8.7\n"
21
+ "Last-Translator: \n"
22
+ "Language: es_ES\n"
23
+ "X-Poedit-SearchPath-0: .\n"
24
+
25
+ msgid "This is the <strong>oficial</strong> module of Mercado Pago for WooCommerce plugin. This module enables WooCommerce to use Mercado Pago as a payment Gateway for purchases made in your e-commerce store."
26
+ msgstr "Este es el módulo <strong>oficial</strong> de Mercado Pago para el plugin WooCommerce. Este módulo habilita el uso de Mercado Pago en WooCommerce como medio de pago para compras realizadas en su tienda virtual."
27
+
28
+ msgid "Mercado Pago Settings"
29
+ msgstr "Configuración de Mercado Pago"
30
+
31
+ msgid "Rate Us"
32
+ msgstr "Calificanos"
33
+
34
+ msgid "Tutorial"
35
+ msgstr "Tutorial"
36
+
37
+ msgid "Report Issue"
38
+ msgstr "Informar Problema"
39
+
40
+ msgid "ERROR: It was not possible to convert the unsupported currency"
41
+ msgstr "ERROR: No fue posible convertir la moneda no soportada"
42
+
43
+ msgid "to"
44
+ msgstr "a"
45
+
46
+ msgid "Currency conversions should be made outside this module."
47
+ msgstr "Las conversiones de monedas deben hacerse fuera de este módulo."
48
+
49
+ msgid "ATTENTION: The currency"
50
+ msgstr "ATENCION: La moneda"
51
+
52
+ msgid "defined in WooCommerce is different from the one used in your credentials country.<br>The currency for transactions in this payment method will be"
53
+ msgstr "definido en WooCommerce es diferente al utilizado por las credenciales de su país.<br>La moneda para las transacciones hechas con este método de pago será"
54
+
55
+ msgid "CURRENCY CONVERTED: Your store is converting currency from"
56
+ msgstr "MONEDA CONVERTIDA: Su tienda está convirtiendo moneda de"
57
+
58
+ msgid "Colombia"
59
+ msgstr "Colombia"
60
+
61
+ msgid "Argentine"
62
+ msgstr "Argentina"
63
+
64
+ msgid "Brazil"
65
+ msgstr "Brasil"
66
+
67
+ msgid "Chile"
68
+ msgstr "Chile"
69
+
70
+ msgid "Mexico"
71
+ msgstr "México"
72
+
73
+ msgid "Uruguay"
74
+ msgstr "Uruguay"
75
+
76
+ msgid "Venezuela"
77
+ msgstr "Venezuela"
78
+
79
+ msgid "Peru"
80
+ msgstr "Perú"
81
+
82
+ msgid "Update WooCommerce order to "
83
+ msgstr "Actualizar la orden de WooCommerce a "
84
+
85
+ msgid "You do not have sufficient permissions to access this page."
86
+ msgstr "No tiene suficientes permisos para acceder a esta página."
87
+
88
+ msgid "WooCommerce is installed and enabled."
89
+ msgstr "WooCommerce está instalado y habilitado."
90
+
91
+ msgid "You don\'t have WooCommerce installed and enabled."
92
+ msgstr "No tiene WooCommerce instalado y habilitado."
93
+
94
+ msgid "Your PHP version is OK."
95
+ msgstr "Su versión de PHP está bien."
96
+
97
+ msgid "Your PHP version do not support this module. You have %s, minimal required is %s."
98
+ msgstr "Su versión de PHP no soporta este módulo. Tienes %s, la mínima requerida es %s."
99
+
100
+ msgid "cURL is installed."
101
+ msgstr "cURL está instalado."
102
+
103
+ msgid "cURL is not installed."
104
+ msgstr "cURL no está instalado."
105
+
106
+ msgid "SSL is missing in your site."
107
+ msgstr "Falta el SSL en su sitio."
108
+
109
+ msgid "Your site has SSL enabled."
110
+ msgstr "Su sitio tiene SSL habilitado."
111
+
112
+ msgid "Basic Checkout"
113
+ msgstr "Checkout Básico"
114
+
115
+ msgid "Custom Checkout"
116
+ msgstr "Checkout Personalizado"
117
+
118
+ msgid "Ticket"
119
+ msgstr "Ticket"
120
+
121
+ msgid "Subscription"
122
+ msgstr "Suscripción"
123
+
124
+ msgid "Configure your Client_id and Client_secret to have access to more options."
125
+ msgstr "Configure su Client_id y Client_secret para tener acceso a más opciones."
126
+
127
+ msgid "Define which type of products your store sells."
128
+ msgstr "Defina qué tipo de productos se vende en su tienda."
129
+
130
+ msgid "Your <strong>client_id</strong> and <strong>client_secret</strong> are <strong>valid</strong> for"
131
+ msgstr "Su <strong>client_id</strong> y <strong>client_secret</strong> son <strong>válidos</strong> para"
132
+
133
+ msgid "Your <strong>client_id</strong> and <strong>client_secret</strong> are <strong>not valid</strong>!"
134
+ msgstr "Su <strong>client_id</strong> y <strong>client_secret</strong> son <strong>inválidas</strong>!"
135
+
136
+ msgid "These credentials are used in <strong>Basic Checkout</strong> and <strong>Subscriptions</strong>. Access it for your country:<br>"
137
+ msgstr "Estas credenciales se utilizan en <strong>Checkout Básico</strong> y <strong>Suscripciones</strong>. Acceda este para su país en:<br>"
138
+
139
+ msgid "or"
140
+ msgstr "o"
141
+
142
+ msgid "Your <strong>public_key</strong> and <strong>access_token</strong> are <strong>valid</strong> for"
143
+ msgstr "Su <strong>public_key</strong> y <strong>access_token</strong> son <strong>válidas</strong> para"
144
+
145
+ msgid "Your <strong>public_key</strong> and <strong>access_token</strong> are <strong>not valid</strong>!"
146
+ msgstr "Su <strong>public_key</strong> y <strong>acceso_token</strong> son <strong>inválidas</strong>!"
147
+
148
+ msgid "These credentials are used in <strong>Custom Checkout</strong> and <strong>Tickets</strong>. Access it for your country:<br>"
149
+ msgstr "Estas credenciales se usan en <strong>Checkout Personalizado</ strong> y <strong>Tickets</strong>. Acceda este para su país en:<br>"
150
+
151
+ msgid "This module enables WooCommerce to use Mercado Pago as payment method for purchases made in your virtual store."
152
+ msgstr "Este módulo permite a WooCommerce usar Mercado Pago como método de pago para compras realizadas en su tienda virtual."
153
+
154
+ msgid "Payment Gateways"
155
+ msgstr "Gateways de Pago"
156
+
157
+ msgid "Basic Checkout & Subscriptions"
158
+ msgstr "Checkout Básico & Suscripciones"
159
+
160
+ msgid "Custom Checkout & Tickets"
161
+ msgstr "Checkout Personalizado & Tickets"
162
+
163
+ msgid "Insert your Mercado Pago Client_id."
164
+ msgstr "Inserta su Client_id de Mercado Pago."
165
+
166
+ msgid "Insert your Mercado Pago Client_secret."
167
+ msgstr "Inserta su" Client_secret de Mercado Pago.
168
+
169
+ msgid "Currency Conversion"
170
+ msgstr "Conversión de Moneda"
171
+
172
+ msgid "If the used currency in WooCommerce is different or not supported by Mercado Pago, convert values of your transactions using Mercado Pago currency ratio. This service may slow down your server as each conversion is made in the checkout moment."
173
+ msgstr "Si la moneda utilizada en WooCommerce es diferente o no es compatible con Mercado Pago, convierta los valores de sus transacciones usando la tasa de moneda de Mercado Pago. Este servicio puede ralentizar su servidor ya que cada conversión se realiza en el momento de la compra."
174
+
175
+ msgid "Insert your Mercado Pago Public key."
176
+ msgstr "Inserta su Public_key de Mercado Pago."
177
+
178
+ msgid "Insert your Mercado Pago Access token."
179
+ msgstr "Inserta su Access_token de Mercado Pago."
180
+
181
+ msgid "Status Mapping of Payment x Order"
182
+ msgstr "Mapeamento de Estados de Pagos x Ordens"
183
+
184
+ msgid "Here you can configure details about Mercado Pago payments and WooCommerce order statuses."
185
+ msgstr "Acá puede configurar los detalles sobre los pagos de Mercado Pago y los estados de los pedidos de WooCommerce."
186
+
187
+ msgid "For status mappings between payment/order you can use the defaults, or check references of %s and %s"
188
+ msgstr "Para las asignaciones de estados entre pago/pedido se puede usar los valores estándares, o consultar las referencias de %s y %s"
189
+
190
+ msgid "Status for PENDING"
191
+ msgstr "Estado para PENDING"
192
+
193
+ msgid "when Mercado Pago updates a payment status to PENDING."
194
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a PENDIENTE."
195
+
196
+ msgid "Status for APPROVED"
197
+ msgstr "Estado para APPROVED"
198
+
199
+ msgid "When Mercado Pago updates a payment status to APPROVED."
200
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a APPROVED."
201
+
202
+ msgid "Status for IN_PROCESS"
203
+ msgstr "Estado para IN_PROCESS"
204
+
205
+ msgid "When Mercado Pago updates a payment status to IN_PROCESS."
206
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a IN_PROCESS."
207
+
208
+ msgid "Status for IN_MEDIATION"
209
+ msgstr "Estado para IN_MEDIATION"
210
+
211
+ msgid "When Mercado Pago updates a payment status to IN_MEDIATION."
212
+ msgstr "Cuando Mercado pago actualiza un estado de pago a IN_MEDIATION."
213
+
214
+ msgid "Status for REJECTED"
215
+ msgstr "Estado para REJECTED"
216
+
217
+ msgid "When Mercado Pago updates a payment status to REJECTED."
218
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a REJECTED."
219
+
220
+ msgid "Status for CANCELLED"
221
+ msgstr "Estado para CANCELLED"
222
+
223
+ msgid "When Mercado Pago updates a payment status to CANCELLED."
224
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a CANCELLED."
225
+
226
+ msgid "Status for REFUNDED"
227
+ msgstr "Estado para REFUNDED"
228
+
229
+ msgid "When Mercado Pago updates a payment status to REFUNDED."
230
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a REFUNDED."
231
+
232
+ msgid "Status for CHARGED_BACK"
233
+ msgstr "Estado para CHARGED_BACK"
234
+
235
+ msgid "When Mercado Pago updates a payment status to CHARGED_BACK."
236
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a CHARGED_BACK."
237
+
238
+ msgid "Store Settings"
239
+ msgstr "Configuración de la Tienda"
240
+
241
+ msgid "Here you can place details about your store."
242
+ msgstr "Acá puede colocar detalles de su tienda."
243
+
244
+ msgid "Statement Descriptor"
245
+ msgstr "Descripción de la Factura"
246
+
247
+ msgid "The description that will be shown in your customer\'s invoice."
248
+ msgstr "La descripción que se muestra en la factura de su cliente."
249
+
250
+ msgid "Store Category"
251
+ msgstr "Categoría de la tienda"
252
+
253
+ msgid "Store Identificator"
254
+ msgstr "Identificador de la tienda"
255
+
256
+ msgid "Please, inform a prefix to your store."
257
+ msgstr "Por favor, informe un prefijo para su tienda."
258
+
259
+ msgid "If you use your Mercado Pago account on multiple stores you should make sure that this prefix is unique as Mercado Pago will not allow orders with same identificators."
260
+ msgstr "Si esta utilizando su cuenta Mercado Pago para múltiples tiendas, asegúrese que este prefijo sea único para no generar pedidos con el mismo identificador."
261
+
262
+ msgid "Test and Debug Options"
263
+ msgstr "Opciones de Prueba y Debug"
264
+
265
+ msgid "Tools for debug and testing your integration."
266
+ msgstr "Herramientas para debug y teste para su integración."
267
+
268
+ msgid "Debug and Log"
269
+ msgstr "Debug y Log"
270
+
271
+ msgid "Enable log (Keep this disabled if you’re in production)."
272
+ msgstr "Habilitar log (Manténgalo desactivado si está en producción)."
273
+
274
+ msgid "Register event logs of Mercado Pago, such as API requests, for"
275
+ msgstr "Registrar los logs de eventos de Mercado Pago, como las solicitudes de API, para"
276
+
277
+ msgid "Tickets"
278
+ msgstr "Tickets"
279
+
280
+ msgid "You can access your logs in "
281
+ msgstr "Puede acceder a sus logs en "
282
+
283
+ msgid "WooCommerce &gt; System Status &gt; Logs"
284
+ msgstr "WooCommerce &gt; Estado del Sistema &gt; Logs"
285
+
286
+ msgid "Files are located in: "
287
+ msgstr "Los archivos se encuentran en: "
288
+
289
+ msgid "Mercado Pago Sandbox"
290
+ msgstr "Sandbox de Mercado Pago"
291
+
292
+ msgid "Enable Mercado Pago Sandbox."
293
+ msgstr "Habilitar el sandbox de Mercado Pago."
294
+
295
+ msgid "This option allows you to test payments inside a sandbox environment."
296
+ msgstr "Esta opción permite simular un flujo de pagos completo en nuestro entorno Sandbox."
297
+
298
+ msgid "Mercado Pago - Basic Checkout"
299
+ msgstr "Mercado Pago - Checkout Básico"
300
+
301
+ msgid "Receive payments in a matter of minutes. We make it easy for you: just tell us what you want to collect and we’ll take care of the rest."
302
+ msgstr "Recibe pagos en cuestión de minutos. Lo hacemos fácil: solo díganos lo que quiere recolectar y nos encargaremos del resto."
303
+
304
+ msgid "It appears that your credentials are not properly configured.<br/>Please, go to %s and configure it."
305
+ msgstr "Parece que sus credenciales no están configuradas correctamente.<br/>Por favor, vaya a %s y configúrelo."
306
+
307
+ msgid "This appears to be an invalid URL."
308
+ msgstr "Esto parece ser una URL inválida."
309
+
310
+ msgid "Where customers should be redirected after a successful purchase. Let blank to redirect to the default store order resume page."
311
+ msgstr "Donde los clientes serán redirigidos después de una compra exitosa. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
312
+
313
+ msgid "Where customers should be redirected after a failed purchase. Let blank to redirect to the default store order resume page."
314
+ msgstr "Donde los clientes serán redirigidos después de una compra rechazada. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
315
+
316
+ msgid "Where customers should be redirected after a pending purchase. Let blank to redirect to the default store order resume page."
317
+ msgstr "Donde los clientes ​serán redirigidos después de una compra pendiente. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
318
+
319
+ msgid "Enable/Disable"
320
+ msgstr "Habilitar/Deshabilitar"
321
+
322
+ msgid "Enable Basic Checkout"
323
+ msgstr "Habilitar Checkout Básico"
324
+
325
+ msgid "Checkout Interface: How checkout is shown"
326
+ msgstr "Interfaz de Checkout: Cómo se muestra el checkout"
327
+
328
+ msgid "Title"
329
+ msgstr "Título"
330
+
331
+ msgid "Title shown to the client in the checkout."
332
+ msgstr "Título mostrado al cliente en el checkout."
333
+
334
+ msgid "Mercado Pago"
335
+ msgstr "Mercado Pago"
336
+
337
+ msgid "Description"
338
+ msgstr "Descripción"
339
+
340
+ msgid "Description shown to the client in the checkout."
341
+ msgstr "Descripción mostrada al cliente en el checkout."
342
+
343
+ msgid "Pay with Mercado Pago"
344
+ msgstr "Pagar con Mercado Pago"
345
+
346
+ msgid "Integration Method"
347
+ msgstr "Método de integración"
348
+
349
+ msgid "Select how your clients should interact with Mercado Pago. Modal Window (inside your store), Redirect (Client is redirected to Mercado Pago), or iFrame (an internal window is embedded to the page layout)."
350
+ msgstr "Seleccione la forma en que sus clientes deben interactuar con Mercado Pago. Ventana Modal (Dentro de su tienda), Redireccionamiento (El cliente es redireccionado a Mercado Pago), o iFrame (Ventana de pago incorporada a su página)."
351
+
352
+ msgid "iFrame"
353
+ msgstr "iFrame"
354
+
355
+ msgid "Modal Window"
356
+ msgstr "Ventana Modal"
357
+
358
+ msgid "Redirect"
359
+ msgstr "Redireccionamiento"
360
+
361
+ msgid "iFrame Width"
362
+ msgstr "Ancho del iFrame"
363
+
364
+ msgid "If your integration method is iFrame, please inform the payment iFrame width."
365
+ msgstr "Si su modo de apertura es iFrame, indique el ancho del iFrame."
366
+
367
+ msgid "iFrame Height"
368
+ msgstr "Alto del iFrame"
369
+
370
+ msgid "If your integration method is iFrame, please inform the payment iFrame height."
371
+ msgstr "Si su modo de apertura es iFrame, indique el alto del iFrame."
372
+
373
+ msgid "Checkout Navigation: How checkout redirections will behave"
374
+ msgstr "Navegación de Checkout: Cómo se comportarán las redirecciones de pago"
375
+
376
+ msgid "Auto Return"
377
+ msgstr "Redirección automática"
378
+
379
+ msgid "Automatic Return After Payment"
380
+ msgstr "Redirección Automática luego del pago"
381
+
382
+ msgid "After the payment, client is automatically redirected."
383
+ msgstr "Después del pago, el cliente será redireccionado automáticamente."
384
+
385
+ msgid "Sucess URL"
386
+ msgstr "URL de Éxito"
387
+
388
+ msgid "Failure URL"
389
+ msgstr "URL de Pago Rechazado"
390
+
391
+ msgid "Pending URL"
392
+ msgstr "URL de Pago Pendiente"
393
+
394
+ msgid "Payment Options: How payment options behaves"
395
+ msgstr "Opciones de pago: Cómo se comportan las opciones de pago"
396
+
397
+ msgid "Max installments"
398
+ msgstr "Número máximo de cuotas"
399
+
400
+ msgid "Select the max number of installments for your customers."
401
+ msgstr "Seleccione el número máximo de cuotas disponibles para sus clientes."
402
+
403
+ msgid "1x installment"
404
+ msgstr "1x cuota"
405
+
406
+ msgid "2x installmens"
407
+ msgstr "2x cuotas"
408
+
409
+ msgid "3x installmens"
410
+ msgstr "3x cuotas"
411
+
412
+ msgid "4x installmens"
413
+ msgstr "4x cuotas"
414
+
415
+ msgid "5x installmens"
416
+ msgstr "5x cuotas"
417
+
418
+ msgid "6x installmens"
419
+ msgstr "6x cuotas"
420
+
421
+ msgid "10x installmens"
422
+ msgstr "10x cuotas"
423
+
424
+ msgid "12x installmens"
425
+ msgstr "12x cuotas"
426
+
427
+ msgid "15x installmens"
428
+ msgstr "15x cuotas"
429
+
430
+ msgid "18x installmens"
431
+ msgstr "18x cuotas"
432
+
433
+ msgid "24x installmens"
434
+ msgstr "24x cuotas"
435
+
436
+ msgid "Exclude Payment Methods"
437
+ msgstr "Excluir medios de pago"
438
+
439
+ msgid "Select the payment methods that you <strong>don\'t</strong> want to receive with Mercado Pago."
440
+ msgstr "Selecione los medios de pago que <strong>no</strong> desea aceptar con Mercado Pago."
441
+
442
+ msgid "Discount by Gateway"
443
+ msgstr "Descuento por Gateway"
444
+
445
+ msgid "Give a percentual (0 to 100) discount for your customers if they use this payment gateway."
446
+ msgstr "Dé un descuento porcentual para sus clientes si utilizan este medio de pago."
447
+
448
+ msgid "Two Cards Mode"
449
+ msgstr "Modo de Dos Tarjetas"
450
+
451
+ msgid "Payments with Two Cards"
452
+ msgstr "Pagos con Dos Tarjetas"
453
+
454
+ msgid "Your customer will be able to use two different cards to pay the order."
455
+ msgstr "Su cliente será capaz de utilizar dos tarjetas diferentes para pagar el pedido."
456
+
457
+ msgid "Thank you for your order. Please, proceed with your payment clicking in the bellow button."
458
+ msgstr "Gracias por su compra. Por favor, prosiga a la página de pago haciendo click en el botón de abajo."
459
+
460
+ msgid "Cancel order &amp; Clear cart"
461
+ msgstr "Cancelar &amp; Limpiar carrito"
462
+
463
+ msgid "Thank you for your order. Proceed with your payment completing the following information."
464
+ msgstr "Gracias por su compra. Prosiga con su pago completando la información abajo."
465
+
466
+ msgid "An error occurred when proccessing your payment. Please try again or contact us for assistence."
467
+ msgstr "Se ha producido un error en el procesamiento de su pago. Por favor, inténtelo de nuevo o póngase en contacto con nosotros para Asistencia."
468
+
469
+ msgid "Shipping service used by store"
470
+ msgstr "Servicio de envío utilizado por la tienda"
471
+
472
+ msgid "Discount of"
473
+ msgstr "Descuento de"
474
+
475
+ msgid "Mercado Pago Request Failure"
476
+ msgstr "La solicitud de Mercado Pago ha fallado"
477
+
478
+ msgid "Payer email"
479
+ msgstr "Email del comprador"
480
+
481
+ msgid "Payment type"
482
+ msgstr "Medio de pago"
483
+
484
+ msgid "Payment approved."
485
+ msgstr "Pago aprobado."
486
+
487
+ msgid "Customer haven\'t paid yet."
488
+ msgstr "El cliente todavía no efectuó el pago."
489
+
490
+ msgid "Payment under review."
491
+ msgstr "El pago está pendiente de revisión."
492
+
493
+ msgid "The payment was refused. The customer can try again."
494
+ msgstr "El pago fue rechazado. El cliente puede intentar nuevamente."
495
+
496
+ msgid "The payment was refunded to the customer."
497
+ msgstr "El pago fue devuelto al cliente."
498
+
499
+ msgid "The payment was cancelled."
500
+ msgstr "El pago fue cancelado."
501
+
502
+ msgid "The payment is under mediation or it was charged-back."
503
+ msgstr "El pago esta en mediación o la compra fue desconocida por el cliente."
504
+
505
+ msgid "Mercado Pago - Custom Checkout"
506
+ msgstr "Mercado Pago - Checkout Personalizado"
507
+
508
+ msgid "We give you the possibility to adapt the payment experience you want to offer 100% in your website, mobile app or anywhere you want. You can build the design that best fits your business model, aiming to maximize conversion."
509
+ msgstr "Le ofrecemos la posibilidad de adaptar la experiencia de pago que desea ofrecer 100% en su sitio web, en su aplicación móvil o en cualquier lugar que desee. Puede crear el diseño que mejor se adapte a su modelo de negocio, con el objetivo de maximizar la conversión."
510
+
511
+ msgid "Enable Custom Checkout"
512
+ msgstr "Habilitar Checkout Personalizado"
513
+
514
+ msgid "Coupons"
515
+ msgstr "Cupones"
516
+
517
+ msgid "Enable coupons of discounts"
518
+ msgstr "Activar los cupones de descuento"
519
+
520
+ msgid "If there is a Mercado Pago campaign, allow your store to give discounts to customers."
521
+ msgstr "Si hay una campaña de Mercado Pago, permitir a su tienda hacer descuentos para los clientes."
522
+
523
+ msgid "Binary Mode"
524
+ msgstr "Modo binario"
525
+
526
+ msgid "Enable binary mode for checkout status"
527
+ msgstr "Activar el modo binario para el estado del checkout"
528
+
529
+ msgid "When charging a credit card, only [approved] or [reject] status will be taken."
530
+ msgstr "Al cargar una tarjeta de crédito, sólo los estados [aprobado] o [rechazar] seran tomados."
531
+
532
+ msgid "This service allows you to subscribe customers to subscription plans."
533
+ msgstr "Este servicio le permite suscribir los clientes a planes de suscripción."
534
+
535
+ msgid "It appears that your country is not supported for this solution.<br/>Please, use another payment method or go to %s to use another credential."
536
+ msgstr "Parece que su país no es compatible con esta solución.<br/>Por favor, use otro método de pago o vaya a %s para usar otra credencial."
537
+
538
+ msgid "Enable Subscription"
539
+ msgstr "Habilitar Suscripción"
540
+
541
+ msgid "Instant Payment Notification (IPN) URL"
542
+ msgstr "URL da Notificación Instantanea de Pago (IPN)"
543
+
544
+ msgid "For this solution, you need to configure your IPN URL. You can access it in your account for your specific country in:"
545
+ msgstr "Para esta solución, usted debe configurar su URL de IPN. Puede acceder a ella en su cuenta para su específico país en:"
546
+
547
+ msgid "Your IPN URL to receive instant payment notifications is"
548
+ msgstr "Su URL de IPN para recibir notificaciones instantáneas de pago es"
549
+
550
+ msgid "Mercado Pago - Ticket"
551
+ msgstr "Mercado Pago - Ticket"
552
+
553
+ msgid "UNDER BUILDING..."
554
+ msgstr "UN CONSTRUCIÓN..."
555
+
556
+ msgid "Enable Ticket Payment Method"
557
+ msgstr "Habilitar Pago con Ticket"
558
+
559
+ msgid "Ticket Interface: How checkout is shown"
560
+ msgstr "Interfaz de Tickets: Cómo se muestra el checkout"
561
+
562
+ msgid "Title shown to the client in the ticket."
563
+ msgstr "Título mostrado al cliente en el ticket."
564
+
565
+ msgid "Description shown to the client in the ticket."
566
+ msgstr "Descripción mostrada al cliente en el ticket."
567
+
568
+ msgid "Stock Reduce"
569
+ msgstr "Reducir Inventario"
570
+
571
+ msgid "Reduce Stock in Order Generation"
572
+ msgstr "Reducir Inventario en la Orden"
573
+
574
+ msgid "Enable this to reduce the stock on order creation. Disable this to reduce <strong>after</strong> the payment approval."
575
+ msgstr "Activar esta opción para reducir el inventario mediante la creación de un pedido. Desactivar para reducir sólo <strong>después</strong> de la aprobación del pago."
576
+
577
+ msgid "Mercado Envios is a shipping method available only for payments with Mercado Pago."
578
+ msgstr "Mercado Envios es un método de envío disponible sólo para los pagos con Mercado Pago."
579
+
580
+ msgid "Free Shipping"
581
+ msgstr "Envío Gratuito"
582
+
583
+ msgid "Day"
584
+ msgstr "Día"
585
+
586
+ msgid "Days"
587
+ msgstr "Días"
588
+
589
+ msgid "Enable the two shipping methods the Mercado Envios (Express and Normal) for the proper functioning of the module."
590
+ msgstr "Habilitar los dos métodos de envío de Mercado Envios (Express y Normal) para el correcto funcionamiento del módulo."
591
+
592
+ msgid "Mercado Envios"
593
+ msgstr "Mercado Envios"
594
+
595
+ msgid "This controls the title which the user sees during checkout."
596
+ msgstr "Controla el título que se muestra al cliente durante el pago."
597
+
598
+ msgid "Enable free shipping for this shipping method"
599
+ msgstr "Habilitar el envío gratuito para este método de envío"
600
+
601
+ msgid "Delivery Time"
602
+ msgstr "Tiempo de Entrega"
603
+
604
+ msgid "Show estimated delivery time"
605
+ msgstr "Mostrar el tiempo estimado de entrega"
606
+
607
+ msgid "Display the estimated delivery time in working days."
608
+ msgstr "Mostrar el tiempo estimado de entrega en días laborables."
609
+
610
+ msgid "Tag ready to print"
611
+ msgstr "Etiqueta lista para imprimir"
612
+
613
+ msgid "Tag printed"
614
+ msgstr "Etiqueta impresa"
615
+
616
+ msgid "Unsuccessful"
617
+ msgstr "Fracasado"
618
+
619
+ msgid "Delayed shipping"
620
+ msgstr "Envío retrasado"
621
+
622
+ msgid "Missing recipient for delivery"
623
+ msgstr "Destinatario ausente para envío"
624
+
625
+ msgid "In return to sender"
626
+ msgstr "Volviendo al remitente"
627
+
628
+ msgid "Buyer initiates complaint and requested a refund."
629
+ msgstr "El comprador ha iniciado una discusión y pide un extorno."
630
+
631
+ msgid "Order"
632
+ msgstr "Pedido"
633
+
634
+ msgid "Mercado Envios Tracking ID"
635
+ msgstr "Código de rastreamiento de Mercado Envíos"
636
+
637
+ msgid "Hello,"
638
+ msgstr "Hola,"
639
+
640
+ msgid "Your order"
641
+ msgstr "Su pedido"
642
+
643
+ msgid "made in"
644
+ msgstr "hecho en"
645
+
646
+ msgid "used Mercado Envios as its shipment method."
647
+ msgstr "utilizó el Mercado Envíos como su medio de envío."
648
+
649
+ msgid "You can track it with the following Tracking ID:"
650
+ msgstr "Usted puedes rastrearlo con lo siguiente código de rastreamiento:"
651
+
652
+ msgid "Best regards."
653
+ msgstr "Saludos."
654
+
655
+ msgid "Mercado Pago Subscription"
656
+ msgstr "Suscripción Mercado Pago"
657
+
658
+ msgid "Payment ID:"
659
+ msgstr "ID de Pago:"
660
+
661
+ msgid "Amount:"
662
+ msgstr "Cantidad:"
663
+
664
+ msgid "This operation could not be completed."
665
+ msgstr "Esta operación no se puede completar."
666
+
667
+ msgid "Operation successfully completed."
668
+ msgstr "La operación se realizó con éxito."
669
+
670
+ msgid "Refund Payment"
671
+ msgstr "Reembolso de Pago"
672
+
673
+ msgid "Cancel Payment"
674
+ msgstr "Cancelar Pago"
675
+
676
+ msgid "Mercado Pago - Subscription"
677
+ msgstr "Mercado Pago - Suscripcións"
678
+
679
+ msgid "A recurrent product is a signature that should be bought isolated in your cart. Please, create separated orders."
680
+ msgstr "Un producto recurrente es una suscripción que debe adquirirse por separado en su carrito. Por favor, hace los pedidos por separado."
681
+
682
+ msgid "Recurrent Product"
683
+ msgstr "Producto Recurrente"
684
+
685
+ msgid "Frequency"
686
+ msgstr "Frecuencia"
687
+
688
+ msgid "Amount of time (in days or months) for the execution of the next payment."
689
+ msgstr "Cantidad de tiempo (en días o meses) para la ejecución del próximo pago."
690
+
691
+ msgid "End date"
692
+ msgstr "Fecha final"
693
+
694
+ msgid "Deadline to generate new charges. Defaults to never if blank."
695
+ msgstr "Fecha límite para generar nuevos cargos. De forma predeterminada como nunca, si está en blanco."
696
+
697
+ msgid "Months"
698
+ msgstr "Meses"
699
+
700
+ msgid "Indicates the period of time."
701
+ msgstr "Indica el período de tiempo."
702
+
703
+ msgid "Make this product a subscription."
704
+ msgstr "Hacer deste producto una suscripción."
705
+
706
+ msgid "Frequency type"
707
+ msgstr "Tipo de frecuencia"
708
+
709
+ msgid "Subscribe with Mercado Pago"
710
+ msgstr "Suscribirse con Mercado Pago"
711
+
712
+ msgid "Woo Mercado Pago Module depends on the last version of %s to execute!"
713
+ msgstr "Woo Mercado Pago Module depende de la última versión de %s para ejecutarse!"
714
+
715
+ msgid "Tracking code:"
716
+ msgstr "Código de rastreamiento:"
717
+
718
+ msgid "Tag:"
719
+ msgstr "Etiqueta:"
720
+
721
+ msgid "Shipping is pending"
722
+ msgstr "Envío pendiente"
723
+
724
+ msgid "Print"
725
+ msgstr "Imprimir"
726
+
727
+ msgid "Cancel Order"
728
+ msgstr "Cancelar la Compra"
729
+
730
+ msgid "Total of your purchase:"
731
+ msgstr "Total de su compra:"
732
+
733
+ msgid "Total of your purchase with discount:"
734
+ msgstr "Total de su compra con descuento:"
735
+
736
+ msgid "*Uppon payment approval"
737
+ msgstr "*Con la aprobación de pago"
738
+
739
+ msgid "Terms and Conditions of Use"
740
+ msgstr "Términos y Condiciones de Uso"
741
+
742
+ msgid "with discount from"
743
+ msgstr "con descuento de"
744
+
745
+ msgid "You will save"
746
+ msgstr "Usted ahorrará"
747
+
748
+ msgid "Please, inform your coupon code"
749
+ msgstr "Por favor, introduzca el código de su cupón"
750
+
751
+ msgid "Payment converted from"
752
+ msgstr "Pago convertido de"
753
+
754
+ msgid "Installments"
755
+ msgstr "Cuotas"
756
+
757
+ msgid "Choose"
758
+ msgstr "Seleccione"
759
+
760
+ msgid "Parameter cardIssuerId can not be null/empty"
761
+ msgstr "Parámetro [Emisor] no puede ser nulo/vacío"
762
+
763
+ msgid "Issuer"
764
+ msgstr "Emisor"
765
+
766
+ msgid "Invalid Document Number"
767
+ msgstr "Número del Documento inválido"
768
+
769
+ msgid "Parameter docNumber can not be null/empty"
770
+ msgstr "Parámetro [Número del Documento] no puede ser nulo/vacío"
771
+
772
+ msgid "Document number"
773
+ msgstr "Número de Documento"
774
+
775
+ msgid "Invalid Document Type"
776
+ msgstr "Tipo de Documento inválido"
777
+
778
+ msgid "Parameter docType can not be null/empty"
779
+ msgstr "Parámetro [Tipo de Documento] no puede ser nulo/vacío"
780
+
781
+ msgid "Document Type"
782
+ msgstr "Tipo de Documento"
783
+
784
+ msgid "Invalid Card Holder Name"
785
+ msgstr "Nombre del titular de la tarjeta inválido"
786
+
787
+ msgid "Parameter cardholderName can not be null/empty"
788
+ msgstr "Parámetro [Nombre del titular] no puede ser nulo/vacío"
789
+
790
+ msgid "Card holder name"
791
+ msgstr "Nombre del titular de la tarjeta"
792
+
793
+ msgid "Invalid Expiration Date"
794
+ msgstr "Fecha de expiración inválida"
795
+
796
+ msgid "Year"
797
+ msgstr "Año"
798
+
799
+ msgid "Expiration year"
800
+ msgstr "Año de expiración"
801
+
802
+ msgid "Month"
803
+ msgstr "Mes"
804
+
805
+ msgid "Expiration month"
806
+ msgstr "Mes de expiración"
807
+
808
+ msgid "Invalid Card Number"
809
+ msgstr "Número de tarjeta inválido"
810
+
811
+ msgid "Parameter cardNumber can not be null/empty"
812
+ msgstr "Parámetro [Número de tarjeta] no puede ser nulo/vacío"
813
+
814
+ msgid "Credit card number"
815
+ msgstr "Número de tarjeta de crédito"
816
+
817
+ msgid "Parameter securityCode can not be null/empty"
818
+ msgstr "Parámetro [Código de seguridad] no puede ser nulo/vacío"
819
+
820
+ msgid "Invalid Security Code"
821
+ msgstr "Código de seguridad inválido"
822
+
823
+ msgid "Security code"
824
+ msgstr "Código de seguridad"
825
+
826
+ msgid "Other Card"
827
+ msgstr "Otra Tarjeta"
828
+
829
+ msgid "Other Cards"
830
+ msgstr "Otras Tarjetas"
831
+
832
+ msgid "ended in"
833
+ msgstr "terminado en"
834
+
835
+ msgid "Your Card"
836
+ msgstr "Sus Tarjetas"
837
+
838
+ msgid "Payment Method"
839
+ msgstr "Medios de Pago"
840
+
841
+ msgid "Apply"
842
+ msgstr "Aplicar"
843
+
844
+ msgid "Remove"
845
+ msgstr "Eliminar"
846
+
847
+ msgid "Discount Coupon"
848
+ msgstr "Cupón de Descuento"
849
+
850
+ msgid "Mercado Pago - Credit Card"
851
+ msgstr "Mercado Pago - Tarjeta de Crédito"
852
+
853
+ msgid "Check your order resume"
854
+ msgstr "Ver su hoja de pedido"
855
+
856
+ msgid "Your payment was refused. You can try again."
857
+ msgstr "Su pago fue rechazado. Puede intentarlo de nuevo."
858
+
859
+ msgid "Click to try again"
860
+ msgstr "Haga clic para intentarlo de nuevo"
861
+
862
+ msgid "A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?"
863
+ msgstr "Un problema se produjo al procesar su pago. ¿Esta seguro que ha rellenado correctamente toda la información en el formulario de checkout?"
864
+
865
+ msgid "Discount provided by store"
866
+ msgstr "Descuento dado por la tienda"
867
+
868
+ msgid "Discount for %s coupon"
869
+ msgstr "Descuento para el cupón %s"
870
+
871
+ msgid "Done, your payment was accredited!"
872
+ msgstr "Listo, su pago ha sido aceptado!"
873
+
874
+ msgid "We are processing the payment. In less than an hour we will e-mail you the results."
875
+ msgstr "Estamos procesando su pago. En menos de una hora le enviaremos el resultado por correo electrónico."
876
+
877
+ msgid "We are processing the payment. In less than 2 business days we will tell you by e-mail whether it has accredited or we need more information."
878
+ msgstr "Estamos procesando su pago. En menos de 2 días le enviaremos por correo electrónico si se ha aprobado el pago o si se necesita información adicional."
879
+
880
+ msgid "Check the card number."
881
+ msgstr "Compruebe el número de tarjeta."
882
+
883
+ msgid "Check the expiration date."
884
+ msgstr "Compruebe la fecha de expiración."
885
+
886
+ msgid "Check the information."
887
+ msgstr "Compruebe la información informada."
888
+
889
+ msgid "Check the security code."
890
+ msgstr "Compruebe el código de seguridad informado."
891
+
892
+ msgid "We could not process your payment."
893
+ msgstr "No se puede procesar su pago."
894
+
895
+ msgid "You must authorize the payment of your orders."
896
+ msgstr "Usted debe autorizar los pagos de sus órdenes."
897
+
898
+ msgid "Call your card issuer to activate your card. The phone is on the back of your card."
899
+ msgstr "Póngase en contacto con el emisor de su tarjeta para activarla. El teléfono se encuentra en la parte posterior de su tarjeta."
900
+
901
+ msgid "You already made a payment for that amount. If you need to repay, use another card or other payment method."
902
+ msgstr "Usted ya realizó un pago de este importe. Si tiene que pagar de nuevo, utilizar otra tarjeta u otro medio de pago."
903
+
904
+ msgid "Your payment was rejected. Choose another payment method. We recommend cash."
905
+ msgstr "Su pago fue rechazado. Por favor seleccione otro medio de pago. Se recomienda en efectivo."
906
+
907
+ msgid "Your payment do not have sufficient funds."
908
+ msgstr "Su pago no tiene fondos suficientes."
909
+
910
+ msgid "Your payment does not process payments with selected installments."
911
+ msgstr "El pago no puede procesar la cuota seleccionada."
912
+
913
+ msgid "You have reached the limit of allowed attempts. Choose another card or another payment method."
914
+ msgstr "Has alcanzado el límite de intentos permitidos. Elija otra tarjeta u otro medio de pago."
915
+
916
+ msgid "This payment method did not process the payment."
917
+ msgstr "Esta medio de pago no puede procesar su pago."
918
+
919
+ msgid "Please, inform your email in billing address to use this feature"
920
+ msgstr "Por favor, introduzca su email en la dirección de facturación para utilizar este servicio"
921
+
922
+ msgid "Waiting for the ticket payment."
923
+ msgstr "Esperando el pago del ticket."
924
+
925
+ msgid "here"
926
+ msgstr "aquí"
927
+
928
+ msgid "To reprint the ticket click "
929
+ msgstr "Para imprimir nuevamente el ticket hace clic "
930
+
931
+ msgid "A problem was occurred when processing your payment. Please, try again."
932
+ msgstr "Un problema se produjo al procesar su pago. Por favor, inténtelo de nuevo."
933
+
934
+ msgid "Print the Ticket"
935
+ msgstr "Imprimir el ticket"
936
+
937
+ msgid "Thank you for your order. Please, pay the ticket to get your order approved."
938
+ msgstr "Gracias por su orden. Por favor, realice el pago del ticket para tener su orden aprobada."
939
+
940
+ msgid "Important: The order will be confirmed only after the payment approval."
941
+ msgstr "Importante: La solicitud sólo será confirmada después de la aprobación del pago."
942
+
943
+ msgid "Click [Place order] button. The ticket will be generated and you will be redirected to print it."
944
+ msgstr "Haga clic en el botón [Realizar el pedido]. El ticket será generado y usted será redirigido a imprimirlo."
945
+
946
+ msgid "Please, select the ticket issuer of your preference."
947
+ msgstr "Por favor, seleccione el emisor de su elección."
948
+
949
+ msgid "Needed informations due to brazilian bank compliances numbers 3.461/09, 3.598/12 and 3.656/13 of the Central Bank of Brazil."
950
+ msgstr "Informaciones necesarias debido a las normas bancarias brasileñas números 3.461/09, 3.598/12 y 3.656/13 del Banco Central de Brasil."
951
+
952
+ msgid "NAME"
953
+ msgstr "NOMBRE"
954
+
955
+ msgid "SURNAME"
956
+ msgstr "APELLIDO"
957
+
958
+ msgid "DOCUMENT"
959
+ msgstr "DOCUMENTO"
960
+
961
+ msgid "ADDRESS"
962
+ msgstr "DIRECCIÓN"
963
+
964
+ msgid "NUMBER"
965
+ msgstr "NÚMERO"
966
+
967
+ msgid "CITY"
968
+ msgstr "CIUDAD"
969
+
970
+ msgid "STATE"
971
+ msgstr "ESTADO"
972
+
973
+ msgid "ZIP"
974
+ msgstr "CÓDIGO POSTAL"
975
+
976
+ msgid "You must inform you NAME"
977
+ msgstr "Obligatorio informar su NOMBRE"
978
+
979
+ msgid "You must inform your SURNAME"
980
+ msgstr "Obligatorio informar su APELLIDO"
981
+
982
+ msgid "You must inform your DOCUMENT"
983
+ msgstr "Obligatorio informar su DOCUMENTO"
984
+
985
+ msgid "You must inform your ADDRESS"
986
+ msgstr "Obligatorio informar su DIRECCIÓN"
987
+
988
+ msgid "You must inform your ADDRESS NUMBER"
989
+ msgstr "Obligatorio informar su NÚMERO"
990
+
991
+ msgid "You must inform your CITY"
992
+ msgstr "Obligatorio informar su CIUDAD"
993
+
994
+ msgid "You must inform your STATE"
995
+ msgstr "Obligatorio informar su ESTADO"
996
+
997
+ msgid "You must inform your ZIP"
998
+ msgstr "Obligatorio informar su CÓDIGO POSTAL"
999
+
1000
+ msgid "Fisical Person"
1001
+ msgstr "Persona Física"
1002
+
1003
+ msgid "Legal Person"
1004
+ msgstr "Persona Jurídica"
1005
+
1006
+ msgid "SOCIAL NAME"
1007
+ msgstr "RAZÓN SOCIAL"
1008
+
1009
+ msgid "CNPJ"
1010
+ msgstr "CNPJ"
i18n/languages/woocommerce-mercadopago-es_MX.mo ADDED
Binary file
i18n/languages/woocommerce-mercadopago-es_MX.po ADDED
@@ -0,0 +1,1010 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # WordPress Blank Pot
2
+ # Copyright (C) 2014 ...
3
+ # This file is distributed under the GNU General Public License v2 or later.
4
+ msgid ""
5
+ msgstr ""
6
+ "Project-Id-Version: WordPress Blank Pot v1.0.0\n"
7
+ "POT-Creation-Date: 2016-05-23 14:52-0300\n"
8
+ "PO-Revision-Date: \n"
9
+ "Language-Team: Product Development <translations@example.com>\n"
10
+ "Report-Msgid-Bugs-To: Translator Name <translations@example.com>\n"
11
+ "MIME-Version: 1.0\n"
12
+ "Content-Type: text/plain; charset=UTF-8\n"
13
+ "Content-Transfer-Encoding: 8bit\n"
14
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
+ "X-Textdomain-Support: yesX-Generator: Poedit 1.6.4\n"
16
+ "X-Poedit-SourceCharset: UTF-8\n"
17
+ "X-Poedit-KeywordsList: __;_e;esc_html_e;esc_html_x:1,2c;esc_html__;esc_attr_e;esc_attr_x:1,2c;esc_attr__;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_x:1,2c;_n:1,2;"
18
+ "_n_noop:1,2;__ngettext:1,2;__ngettext_noop:1,2;_c,_nc:4c,1,2\n"
19
+ "X-Poedit-Basepath: ../Documents/woocommerce (MAMP)/wp-content/plugins/woo-mercado-pago-module\n"
20
+ "X-Generator: Poedit 1.8.7\n"
21
+ "Last-Translator: \n"
22
+ "Language: es_MX\n"
23
+ "X-Poedit-SearchPath-0: .\n"
24
+
25
+ msgid "This is the <strong>oficial</strong> module of Mercado Pago for WooCommerce plugin. This module enables WooCommerce to use Mercado Pago as a payment Gateway for purchases made in your e-commerce store."
26
+ msgstr "Este es el módulo <strong>oficial</strong> de Mercado Pago para el plugin WooCommerce. Este módulo habilita el uso de Mercado Pago en WooCommerce como medio de pago para compras realizadas en su tienda virtual."
27
+
28
+ msgid "Mercado Pago Settings"
29
+ msgstr "Configuración de Mercado Pago"
30
+
31
+ msgid "Rate Us"
32
+ msgstr "Calificanos"
33
+
34
+ msgid "Tutorial"
35
+ msgstr "Tutorial"
36
+
37
+ msgid "Report Issue"
38
+ msgstr "Informar Problema"
39
+
40
+ msgid "ERROR: It was not possible to convert the unsupported currency"
41
+ msgstr "ERROR: No fue posible convertir la moneda no soportada"
42
+
43
+ msgid "to"
44
+ msgstr "a"
45
+
46
+ msgid "Currency conversions should be made outside this module."
47
+ msgstr "Las conversiones de monedas deben hacerse fuera de este módulo."
48
+
49
+ msgid "ATTENTION: The currency"
50
+ msgstr "ATENCION: La moneda"
51
+
52
+ msgid "defined in WooCommerce is different from the one used in your credentials country.<br>The currency for transactions in this payment method will be"
53
+ msgstr "definido en WooCommerce es diferente al utilizado por las credenciales de su país.<br>La moneda para las transacciones hechas con este método de pago será"
54
+
55
+ msgid "CURRENCY CONVERTED: Your store is converting currency from"
56
+ msgstr "MONEDA CONVERTIDA: Su tienda está convirtiendo moneda de"
57
+
58
+ msgid "Colombia"
59
+ msgstr "Colombia"
60
+
61
+ msgid "Argentine"
62
+ msgstr "Argentina"
63
+
64
+ msgid "Brazil"
65
+ msgstr "Brasil"
66
+
67
+ msgid "Chile"
68
+ msgstr "Chile"
69
+
70
+ msgid "Mexico"
71
+ msgstr "México"
72
+
73
+ msgid "Uruguay"
74
+ msgstr "Uruguay"
75
+
76
+ msgid "Venezuela"
77
+ msgstr "Venezuela"
78
+
79
+ msgid "Peru"
80
+ msgstr "Perú"
81
+
82
+ msgid "Update WooCommerce order to "
83
+ msgstr "Actualizar la orden de WooCommerce a "
84
+
85
+ msgid "You do not have sufficient permissions to access this page."
86
+ msgstr "No tiene suficientes permisos para acceder a esta página."
87
+
88
+ msgid "WooCommerce is installed and enabled."
89
+ msgstr "WooCommerce está instalado y habilitado."
90
+
91
+ msgid "You don\'t have WooCommerce installed and enabled."
92
+ msgstr "No tiene WooCommerce instalado y habilitado."
93
+
94
+ msgid "Your PHP version is OK."
95
+ msgstr "Su versión de PHP está bien."
96
+
97
+ msgid "Your PHP version do not support this module. You have %s, minimal required is %s."
98
+ msgstr "Su versión de PHP no soporta este módulo. Tienes %s, la mínima requerida es %s."
99
+
100
+ msgid "cURL is installed."
101
+ msgstr "cURL está instalado."
102
+
103
+ msgid "cURL is not installed."
104
+ msgstr "cURL no está instalado."
105
+
106
+ msgid "SSL is missing in your site."
107
+ msgstr "Falta el SSL en su sitio."
108
+
109
+ msgid "Your site has SSL enabled."
110
+ msgstr "Su sitio tiene SSL habilitado."
111
+
112
+ msgid "Basic Checkout"
113
+ msgstr "Checkout Básico"
114
+
115
+ msgid "Custom Checkout"
116
+ msgstr "Checkout Personalizado"
117
+
118
+ msgid "Ticket"
119
+ msgstr "Ticket"
120
+
121
+ msgid "Subscription"
122
+ msgstr "Suscripción"
123
+
124
+ msgid "Configure your Client_id and Client_secret to have access to more options."
125
+ msgstr "Configure su Client_id y Client_secret para tener acceso a más opciones."
126
+
127
+ msgid "Define which type of products your store sells."
128
+ msgstr "Defina qué tipo de productos se vende en su tienda."
129
+
130
+ msgid "Your <strong>client_id</strong> and <strong>client_secret</strong> are <strong>valid</strong> for"
131
+ msgstr "Su <strong>client_id</strong> y <strong>client_secret</strong> son <strong>válidos</strong> para"
132
+
133
+ msgid "Your <strong>client_id</strong> and <strong>client_secret</strong> are <strong>not valid</strong>!"
134
+ msgstr "Su <strong>client_id</strong> y <strong>client_secret</strong> son <strong>inválidas</strong>!"
135
+
136
+ msgid "These credentials are used in <strong>Basic Checkout</strong> and <strong>Subscriptions</strong>. Access it for your country:<br>"
137
+ msgstr "Estas credenciales se utilizan en <strong>Checkout Básico</strong> y <strong>Suscripciones</strong>. Acceda este para su país en:<br>"
138
+
139
+ msgid "or"
140
+ msgstr "o"
141
+
142
+ msgid "Your <strong>public_key</strong> and <strong>access_token</strong> are <strong>valid</strong> for"
143
+ msgstr "Su <strong>public_key</strong> y <strong>access_token</strong> son <strong>válidas</strong> para"
144
+
145
+ msgid "Your <strong>public_key</strong> and <strong>access_token</strong> are <strong>not valid</strong>!"
146
+ msgstr "Su <strong>public_key</strong> y <strong>acceso_token</strong> son <strong>inválidas</strong>!"
147
+
148
+ msgid "These credentials are used in <strong>Custom Checkout</strong> and <strong>Tickets</strong>. Access it for your country:<br>"
149
+ msgstr "Estas credenciales se usan en <strong>Checkout Personalizado</ strong> y <strong>Tickets</strong>. Acceda este para su país en:<br>"
150
+
151
+ msgid "This module enables WooCommerce to use Mercado Pago as payment method for purchases made in your virtual store."
152
+ msgstr "Este módulo permite a WooCommerce usar Mercado Pago como método de pago para compras realizadas en su tienda virtual."
153
+
154
+ msgid "Payment Gateways"
155
+ msgstr "Gateways de Pago"
156
+
157
+ msgid "Basic Checkout & Subscriptions"
158
+ msgstr "Checkout Básico & Suscripciones"
159
+
160
+ msgid "Custom Checkout & Tickets"
161
+ msgstr "Checkout Personalizado & Tickets"
162
+
163
+ msgid "Insert your Mercado Pago Client_id."
164
+ msgstr "Inserta su Client_id de Mercado Pago."
165
+
166
+ msgid "Insert your Mercado Pago Client_secret."
167
+ msgstr "Inserta su" Client_secret de Mercado Pago.
168
+
169
+ msgid "Currency Conversion"
170
+ msgstr "Conversión de Moneda"
171
+
172
+ msgid "If the used currency in WooCommerce is different or not supported by Mercado Pago, convert values of your transactions using Mercado Pago currency ratio. This service may slow down your server as each conversion is made in the checkout moment."
173
+ msgstr "Si la moneda utilizada en WooCommerce es diferente o no es compatible con Mercado Pago, convierta los valores de sus transacciones usando la tasa de moneda de Mercado Pago. Este servicio puede ralentizar su servidor ya que cada conversión se realiza en el momento de la compra."
174
+
175
+ msgid "Insert your Mercado Pago Public key."
176
+ msgstr "Inserta su Public_key de Mercado Pago."
177
+
178
+ msgid "Insert your Mercado Pago Access token."
179
+ msgstr "Inserta su Access_token de Mercado Pago."
180
+
181
+ msgid "Status Mapping of Payment x Order"
182
+ msgstr "Mapeamento de Estados de Pagos x Ordens"
183
+
184
+ msgid "Here you can configure details about Mercado Pago payments and WooCommerce order statuses."
185
+ msgstr "Acá puede configurar los detalles sobre los pagos de Mercado Pago y los estados de los pedidos de WooCommerce."
186
+
187
+ msgid "For status mappings between payment/order you can use the defaults, or check references of %s and %s"
188
+ msgstr "Para las asignaciones de estados entre pago/pedido se puede usar los valores estándares, o consultar las referencias de %s y %s"
189
+
190
+ msgid "Status for PENDING"
191
+ msgstr "Estado para PENDING"
192
+
193
+ msgid "when Mercado Pago updates a payment status to PENDING."
194
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a PENDIENTE."
195
+
196
+ msgid "Status for APPROVED"
197
+ msgstr "Estado para APPROVED"
198
+
199
+ msgid "When Mercado Pago updates a payment status to APPROVED."
200
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a APPROVED."
201
+
202
+ msgid "Status for IN_PROCESS"
203
+ msgstr "Estado para IN_PROCESS"
204
+
205
+ msgid "When Mercado Pago updates a payment status to IN_PROCESS."
206
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a IN_PROCESS."
207
+
208
+ msgid "Status for IN_MEDIATION"
209
+ msgstr "Estado para IN_MEDIATION"
210
+
211
+ msgid "When Mercado Pago updates a payment status to IN_MEDIATION."
212
+ msgstr "Cuando Mercado pago actualiza un estado de pago a IN_MEDIATION."
213
+
214
+ msgid "Status for REJECTED"
215
+ msgstr "Estado para REJECTED"
216
+
217
+ msgid "When Mercado Pago updates a payment status to REJECTED."
218
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a REJECTED."
219
+
220
+ msgid "Status for CANCELLED"
221
+ msgstr "Estado para CANCELLED"
222
+
223
+ msgid "When Mercado Pago updates a payment status to CANCELLED."
224
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a CANCELLED."
225
+
226
+ msgid "Status for REFUNDED"
227
+ msgstr "Estado para REFUNDED"
228
+
229
+ msgid "When Mercado Pago updates a payment status to REFUNDED."
230
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a REFUNDED."
231
+
232
+ msgid "Status for CHARGED_BACK"
233
+ msgstr "Estado para CHARGED_BACK"
234
+
235
+ msgid "When Mercado Pago updates a payment status to CHARGED_BACK."
236
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a CHARGED_BACK."
237
+
238
+ msgid "Store Settings"
239
+ msgstr "Configuración de la Tienda"
240
+
241
+ msgid "Here you can place details about your store."
242
+ msgstr "Acá puede colocar detalles de su tienda."
243
+
244
+ msgid "Statement Descriptor"
245
+ msgstr "Descripción de la Factura"
246
+
247
+ msgid "The description that will be shown in your customer\'s invoice."
248
+ msgstr "La descripción que se muestra en la factura de su cliente."
249
+
250
+ msgid "Store Category"
251
+ msgstr "Categoría de la tienda"
252
+
253
+ msgid "Store Identificator"
254
+ msgstr "Identificador de la tienda"
255
+
256
+ msgid "Please, inform a prefix to your store."
257
+ msgstr "Por favor, informe un prefijo para su tienda."
258
+
259
+ msgid "If you use your Mercado Pago account on multiple stores you should make sure that this prefix is unique as Mercado Pago will not allow orders with same identificators."
260
+ msgstr "Si esta utilizando su cuenta Mercado Pago para múltiples tiendas, asegúrese que este prefijo sea único para no generar pedidos con el mismo identificador."
261
+
262
+ msgid "Test and Debug Options"
263
+ msgstr "Opciones de Prueba y Debug"
264
+
265
+ msgid "Tools for debug and testing your integration."
266
+ msgstr "Herramientas para debug y teste para su integración."
267
+
268
+ msgid "Debug and Log"
269
+ msgstr "Debug y Log"
270
+
271
+ msgid "Enable log (Keep this disabled if you’re in production)."
272
+ msgstr "Habilitar log (Manténgalo desactivado si está en producción)."
273
+
274
+ msgid "Register event logs of Mercado Pago, such as API requests, for"
275
+ msgstr "Registrar los logs de eventos de Mercado Pago, como las solicitudes de API, para"
276
+
277
+ msgid "Tickets"
278
+ msgstr "Tickets"
279
+
280
+ msgid "You can access your logs in "
281
+ msgstr "Puede acceder a sus logs en "
282
+
283
+ msgid "WooCommerce &gt; System Status &gt; Logs"
284
+ msgstr "WooCommerce &gt; Estado del Sistema &gt; Logs"
285
+
286
+ msgid "Files are located in: "
287
+ msgstr "Los archivos se encuentran en: "
288
+
289
+ msgid "Mercado Pago Sandbox"
290
+ msgstr "Sandbox de Mercado Pago"
291
+
292
+ msgid "Enable Mercado Pago Sandbox."
293
+ msgstr "Habilitar el sandbox de Mercado Pago."
294
+
295
+ msgid "This option allows you to test payments inside a sandbox environment."
296
+ msgstr "Esta opción permite simular un flujo de pagos completo en nuestro entorno Sandbox."
297
+
298
+ msgid "Mercado Pago - Basic Checkout"
299
+ msgstr "Mercado Pago - Checkout Básico"
300
+
301
+ msgid "Receive payments in a matter of minutes. We make it easy for you: just tell us what you want to collect and we’ll take care of the rest."
302
+ msgstr "Recibe pagos en cuestión de minutos. Lo hacemos fácil: solo díganos lo que quiere recolectar y nos encargaremos del resto."
303
+
304
+ msgid "It appears that your credentials are not properly configured.<br/>Please, go to %s and configure it."
305
+ msgstr "Parece que sus credenciales no están configuradas correctamente.<br/>Por favor, vaya a %s y configúrelo."
306
+
307
+ msgid "This appears to be an invalid URL."
308
+ msgstr "Esto parece ser una URL inválida."
309
+
310
+ msgid "Where customers should be redirected after a successful purchase. Let blank to redirect to the default store order resume page."
311
+ msgstr "Donde los clientes serán redirigidos después de una compra exitosa. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
312
+
313
+ msgid "Where customers should be redirected after a failed purchase. Let blank to redirect to the default store order resume page."
314
+ msgstr "Donde los clientes serán redirigidos después de una compra rechazada. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
315
+
316
+ msgid "Where customers should be redirected after a pending purchase. Let blank to redirect to the default store order resume page."
317
+ msgstr "Donde los clientes ​serán redirigidos después de una compra pendiente. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
318
+
319
+ msgid "Enable/Disable"
320
+ msgstr "Habilitar/Deshabilitar"
321
+
322
+ msgid "Enable Basic Checkout"
323
+ msgstr "Habilitar Checkout Básico"
324
+
325
+ msgid "Checkout Interface: How checkout is shown"
326
+ msgstr "Interfaz de Checkout: Cómo se muestra el checkout"
327
+
328
+ msgid "Title"
329
+ msgstr "Título"
330
+
331
+ msgid "Title shown to the client in the checkout."
332
+ msgstr "Título mostrado al cliente en el checkout."
333
+
334
+ msgid "Mercado Pago"
335
+ msgstr "Mercado Pago"
336
+
337
+ msgid "Description"
338
+ msgstr "Descripción"
339
+
340
+ msgid "Description shown to the client in the checkout."
341
+ msgstr "Descripción mostrada al cliente en el checkout."
342
+
343
+ msgid "Pay with Mercado Pago"
344
+ msgstr "Pagar con Mercado Pago"
345
+
346
+ msgid "Integration Method"
347
+ msgstr "Método de integración"
348
+
349
+ msgid "Select how your clients should interact with Mercado Pago. Modal Window (inside your store), Redirect (Client is redirected to Mercado Pago), or iFrame (an internal window is embedded to the page layout)."
350
+ msgstr "Seleccione la forma en que sus clientes deben interactuar con Mercado Pago. Ventana Modal (Dentro de su tienda), Redireccionamiento (El cliente es redireccionado a Mercado Pago), o iFrame (Ventana de pago incorporada a su página)."
351
+
352
+ msgid "iFrame"
353
+ msgstr "iFrame"
354
+
355
+ msgid "Modal Window"
356
+ msgstr "Ventana Modal"
357
+
358
+ msgid "Redirect"
359
+ msgstr "Redireccionamiento"
360
+
361
+ msgid "iFrame Width"
362
+ msgstr "Ancho del iFrame"
363
+
364
+ msgid "If your integration method is iFrame, please inform the payment iFrame width."
365
+ msgstr "Si su modo de apertura es iFrame, indique el ancho del iFrame."
366
+
367
+ msgid "iFrame Height"
368
+ msgstr "Alto del iFrame"
369
+
370
+ msgid "If your integration method is iFrame, please inform the payment iFrame height."
371
+ msgstr "Si su modo de apertura es iFrame, indique el alto del iFrame."
372
+
373
+ msgid "Checkout Navigation: How checkout redirections will behave"
374
+ msgstr "Navegación de Checkout: Cómo se comportarán las redirecciones de pago"
375
+
376
+ msgid "Auto Return"
377
+ msgstr "Redirección automática"
378
+
379
+ msgid "Automatic Return After Payment"
380
+ msgstr "Redirección Automática luego del pago"
381
+
382
+ msgid "After the payment, client is automatically redirected."
383
+ msgstr "Después del pago, el cliente será redireccionado automáticamente."
384
+
385
+ msgid "Sucess URL"
386
+ msgstr "URL de Éxito"
387
+
388
+ msgid "Failure URL"
389
+ msgstr "URL de Pago Rechazado"
390
+
391
+ msgid "Pending URL"
392
+ msgstr "URL de Pago Pendiente"
393
+
394
+ msgid "Payment Options: How payment options behaves"
395
+ msgstr "Opciones de pago: Cómo se comportan las opciones de pago"
396
+
397
+ msgid "Max installments"
398
+ msgstr "Número máximo de mensualidades"
399
+
400
+ msgid "Select the max number of installments for your customers."
401
+ msgstr "Seleccione el número máximo de mensualidades disponibles para sus clientes."
402
+
403
+ msgid "1x installment"
404
+ msgstr "1x mensualidade"
405
+
406
+ msgid "2x installmens"
407
+ msgstr "2x mensualidades"
408
+
409
+ msgid "3x installmens"
410
+ msgstr "3x mensualidades"
411
+
412
+ msgid "4x installmens"
413
+ msgstr "4x mensualidades"
414
+
415
+ msgid "5x installmens"
416
+ msgstr "5x mensualidades"
417
+
418
+ msgid "6x installmens"
419
+ msgstr "6x mensualidades"
420
+
421
+ msgid "10x installmens"
422
+ msgstr "10x mensualidades"
423
+
424
+ msgid "12x installmens"
425
+ msgstr "12x mensualidades"
426
+
427
+ msgid "15x installmens"
428
+ msgstr "15x mensualidades"
429
+
430
+ msgid "18x installmens"
431
+ msgstr "18x mensualidades"
432
+
433
+ msgid "24x installmens"
434
+ msgstr "24x mensualidades"
435
+
436
+ msgid "Exclude Payment Methods"
437
+ msgstr "Excluir medios de pago"
438
+
439
+ msgid "Select the payment methods that you <strong>don\'t</strong> want to receive with Mercado Pago."
440
+ msgstr "Selecione los medios de pago que <strong>no</strong> desea aceptar con Mercado Pago."
441
+
442
+ msgid "Discount by Gateway"
443
+ msgstr "Descuento por Gateway"
444
+
445
+ msgid "Give a percentual (0 to 100) discount for your customers if they use this payment gateway."
446
+ msgstr "Dé un descuento porcentual para sus clientes si utilizan este medio de pago."
447
+
448
+ msgid "Two Cards Mode"
449
+ msgstr "Modo de Dos Tarjetas"
450
+
451
+ msgid "Payments with Two Cards"
452
+ msgstr "Pagos con Dos Tarjetas"
453
+
454
+ msgid "Your customer will be able to use two different cards to pay the order."
455
+ msgstr "Su cliente será capaz de utilizar dos tarjetas diferentes para pagar el pedido."
456
+
457
+ msgid "Thank you for your order. Please, proceed with your payment clicking in the bellow button."
458
+ msgstr "Gracias por su compra. Por favor, prosiga a la página de pago haciendo click en el botón de abajo."
459
+
460
+ msgid "Cancel order &amp; Clear cart"
461
+ msgstr "Cancelar &amp; Limpiar carrito"
462
+
463
+ msgid "Thank you for your order. Proceed with your payment completing the following information."
464
+ msgstr "Gracias por su compra. Prosiga con su pago completando la información abajo."
465
+
466
+ msgid "An error occurred when proccessing your payment. Please try again or contact us for assistence."
467
+ msgstr "Se ha producido un error en el procesamiento de su pago. Por favor, inténtelo de nuevo o póngase en contacto con nosotros para Asistencia."
468
+
469
+ msgid "Shipping service used by store"
470
+ msgstr "Servicio de envío utilizado por la tienda"
471
+
472
+ msgid "Discount of"
473
+ msgstr "Descuento de"
474
+
475
+ msgid "Mercado Pago Request Failure"
476
+ msgstr "La solicitud de Mercado Pago ha fallado"
477
+
478
+ msgid "Payer email"
479
+ msgstr "Email del comprador"
480
+
481
+ msgid "Payment type"
482
+ msgstr "Medio de pago"
483
+
484
+ msgid "Payment approved."
485
+ msgstr "Pago aprobado."
486
+
487
+ msgid "Customer haven\'t paid yet."
488
+ msgstr "El cliente todavía no efectuó el pago."
489
+
490
+ msgid "Payment under review."
491
+ msgstr "El pago está pendiente de revisión."
492
+
493
+ msgid "The payment was refused. The customer can try again."
494
+ msgstr "El pago fue rechazado. El cliente puede intentar nuevamente."
495
+
496
+ msgid "The payment was refunded to the customer."
497
+ msgstr "El pago fue devuelto al cliente."
498
+
499
+ msgid "The payment was cancelled."
500
+ msgstr "El pago fue cancelado."
501
+
502
+ msgid "The payment is under mediation or it was charged-back."
503
+ msgstr "El pago esta en mediación o la compra fue desconocida por el cliente."
504
+
505
+ msgid "Mercado Pago - Custom Checkout"
506
+ msgstr "Mercado Pago - Checkout Personalizado"
507
+
508
+ msgid "We give you the possibility to adapt the payment experience you want to offer 100% in your website, mobile app or anywhere you want. You can build the design that best fits your business model, aiming to maximize conversion."
509
+ msgstr "Le ofrecemos la posibilidad de adaptar la experiencia de pago que desea ofrecer 100% en su sitio web, en su aplicación móvil o en cualquier lugar que desee. Puede crear el diseño que mejor se adapte a su modelo de negocio, con el objetivo de maximizar la conversión."
510
+
511
+ msgid "Enable Custom Checkout"
512
+ msgstr "Habilitar Checkout Personalizado"
513
+
514
+ msgid "Coupons"
515
+ msgstr "Cupones"
516
+
517
+ msgid "Enable coupons of discounts"
518
+ msgstr "Activar los cupones de descuento"
519
+
520
+ msgid "If there is a Mercado Pago campaign, allow your store to give discounts to customers."
521
+ msgstr "Si hay una campaña de Mercado Pago, permitir a su tienda hacer descuentos para los clientes."
522
+
523
+ msgid "Binary Mode"
524
+ msgstr "Modo binario"
525
+
526
+ msgid "Enable binary mode for checkout status"
527
+ msgstr "Activar el modo binario para el estado del checkout"
528
+
529
+ msgid "When charging a credit card, only [approved] or [reject] status will be taken."
530
+ msgstr "Al cargar una tarjeta de crédito, sólo los estados [aprobado] o [rechazar] seran tomados."
531
+
532
+ msgid "This service allows you to subscribe customers to subscription plans."
533
+ msgstr "Este servicio le permite suscribir los clientes a planes de suscripción."
534
+
535
+ msgid "It appears that your country is not supported for this solution.<br/>Please, use another payment method or go to %s to use another credential."
536
+ msgstr "Parece que su país no es compatible con esta solución.<br/>Por favor, use otro método de pago o vaya a %s para usar otra credencial."
537
+
538
+ msgid "Enable Subscription"
539
+ msgstr "Habilitar Suscripción"
540
+
541
+ msgid "Instant Payment Notification (IPN) URL"
542
+ msgstr "URL da Notificación Instantanea de Pago (IPN)"
543
+
544
+ msgid "For this solution, you need to configure your IPN URL. You can access it in your account for your specific country in:"
545
+ msgstr "Para esta solución, usted debe configurar su URL de IPN. Puede acceder a ella en su cuenta para su específico país en:"
546
+
547
+ msgid "Your IPN URL to receive instant payment notifications is"
548
+ msgstr "Su URL de IPN para recibir notificaciones instantáneas de pago es"
549
+
550
+ msgid "Mercado Pago - Ticket"
551
+ msgstr "Mercado Pago - Ticket"
552
+
553
+ msgid "UNDER BUILDING..."
554
+ msgstr "UN CONSTRUCIÓN..."
555
+
556
+ msgid "Enable Ticket Payment Method"
557
+ msgstr "Habilitar Pago con Ticket"
558
+
559
+ msgid "Ticket Interface: How checkout is shown"
560
+ msgstr "Interfaz de Tickets: Cómo se muestra el checkout"
561
+
562
+ msgid "Title shown to the client in the ticket."
563
+ msgstr "Título mostrado al cliente en el ticket."
564
+
565
+ msgid "Description shown to the client in the ticket."
566
+ msgstr "Descripción mostrada al cliente en el ticket."
567
+
568
+ msgid "Stock Reduce"
569
+ msgstr "Reducir Inventario"
570
+
571
+ msgid "Reduce Stock in Order Generation"
572
+ msgstr "Reducir Inventario en la Orden"
573
+
574
+ msgid "Enable this to reduce the stock on order creation. Disable this to reduce <strong>after</strong> the payment approval."
575
+ msgstr "Activar esta opción para reducir el inventario mediante la creación de un pedido. Desactivar para reducir sólo <strong>después</strong> de la aprobación del pago."
576
+
577
+ msgid "Mercado Envios is a shipping method available only for payments with Mercado Pago."
578
+ msgstr "Mercado Envios es un método de envío disponible sólo para los pagos con Mercado Pago."
579
+
580
+ msgid "Free Shipping"
581
+ msgstr "Envío Gratuito"
582
+
583
+ msgid "Day"
584
+ msgstr "Día"
585
+
586
+ msgid "Days"
587
+ msgstr "Días"
588
+
589
+ msgid "Enable the two shipping methods the Mercado Envios (Express and Normal) for the proper functioning of the module."
590
+ msgstr "Habilitar los dos métodos de envío de Mercado Envios (Express y Normal) para el correcto funcionamiento del módulo."
591
+
592
+ msgid "Mercado Envios"
593
+ msgstr "Mercado Envios"
594
+
595
+ msgid "This controls the title which the user sees during checkout."
596
+ msgstr "Controla el título que se muestra al cliente durante el pago."
597
+
598
+ msgid "Enable free shipping for this shipping method"
599
+ msgstr "Habilitar el envío gratuito para este método de envío"
600
+
601
+ msgid "Delivery Time"
602
+ msgstr "Tiempo de Entrega"
603
+
604
+ msgid "Show estimated delivery time"
605
+ msgstr "Mostrar el tiempo estimado de entrega"
606
+
607
+ msgid "Display the estimated delivery time in working days."
608
+ msgstr "Mostrar el tiempo estimado de entrega en días laborables."
609
+
610
+ msgid "Tag ready to print"
611
+ msgstr "Etiqueta lista para imprimir"
612
+
613
+ msgid "Tag printed"
614
+ msgstr "Etiqueta impresa"
615
+
616
+ msgid "Unsuccessful"
617
+ msgstr "Fracasado"
618
+
619
+ msgid "Delayed shipping"
620
+ msgstr "Envío retrasado"
621
+
622
+ msgid "Missing recipient for delivery"
623
+ msgstr "Destinatario ausente para envío"
624
+
625
+ msgid "In return to sender"
626
+ msgstr "Volviendo al remitente"
627
+
628
+ msgid "Buyer initiates complaint and requested a refund."
629
+ msgstr "El comprador ha iniciado una discusión y pide un extorno."
630
+
631
+ msgid "Order"
632
+ msgstr "Pedido"
633
+
634
+ msgid "Mercado Envios Tracking ID"
635
+ msgstr "Código de rastreamiento de Mercado Envíos"
636
+
637
+ msgid "Hello,"
638
+ msgstr "Hola,"
639
+
640
+ msgid "Your order"
641
+ msgstr "Su pedido"
642
+
643
+ msgid "made in"
644
+ msgstr "hecho en"
645
+
646
+ msgid "used Mercado Envios as its shipment method."
647
+ msgstr "utilizó el Mercado Envíos como su medio de envío."
648
+
649
+ msgid "You can track it with the following Tracking ID:"
650
+ msgstr "Usted puedes rastrearlo con lo siguiente código de rastreamiento:"
651
+
652
+ msgid "Best regards."
653
+ msgstr "Saludos."
654
+
655
+ msgid "Mercado Pago Subscription"
656
+ msgstr "Suscripción Mercado Pago"
657
+
658
+ msgid "Payment ID:"
659
+ msgstr "ID de Pago:"
660
+
661
+ msgid "Amount:"
662
+ msgstr "Cantidad:"
663
+
664
+ msgid "This operation could not be completed."
665
+ msgstr "Esta operación no se puede completar."
666
+
667
+ msgid "Operation successfully completed."
668
+ msgstr "La operación se realizó con éxito."
669
+
670
+ msgid "Refund Payment"
671
+ msgstr "Reembolso de Pago"
672
+
673
+ msgid "Cancel Payment"
674
+ msgstr "Cancelar Pago"
675
+
676
+ msgid "Mercado Pago - Subscription"
677
+ msgstr "Mercado Pago - Suscripcións"
678
+
679
+ msgid "A recurrent product is a signature that should be bought isolated in your cart. Please, create separated orders."
680
+ msgstr "Un producto recurrente es una suscripción que debe adquirirse por separado en su carrito. Por favor, hace los pedidos por separado."
681
+
682
+ msgid "Recurrent Product"
683
+ msgstr "Producto Recurrente"
684
+
685
+ msgid "Frequency"
686
+ msgstr "Frecuencia"
687
+
688
+ msgid "Amount of time (in days or months) for the execution of the next payment."
689
+ msgstr "Cantidad de tiempo (en días o meses) para la ejecución del próximo pago."
690
+
691
+ msgid "End date"
692
+ msgstr "Fecha final"
693
+
694
+ msgid "Deadline to generate new charges. Defaults to never if blank."
695
+ msgstr "Fecha límite para generar nuevos cargos. De forma predeterminada como nunca, si está en blanco."
696
+
697
+ msgid "Months"
698
+ msgstr "Meses"
699
+
700
+ msgid "Indicates the period of time."
701
+ msgstr "Indica el período de tiempo."
702
+
703
+ msgid "Make this product a subscription."
704
+ msgstr "Hacer deste producto una suscripción."
705
+
706
+ msgid "Frequency type"
707
+ msgstr "Tipo de frecuencia"
708
+
709
+ msgid "Subscribe with Mercado Pago"
710
+ msgstr "Suscribirse con Mercado Pago"
711
+
712
+ msgid "Woo Mercado Pago Module depends on the last version of %s to execute!"
713
+ msgstr "Woo Mercado Pago Module depende de la última versión de %s para ejecutarse!"
714
+
715
+ msgid "Tracking code:"
716
+ msgstr "Código de rastreamiento:"
717
+
718
+ msgid "Tag:"
719
+ msgstr "Etiqueta:"
720
+
721
+ msgid "Shipping is pending"
722
+ msgstr "Envío pendiente"
723
+
724
+ msgid "Print"
725
+ msgstr "Imprimir"
726
+
727
+ msgid "Cancel Order"
728
+ msgstr "Cancelar la Compra"
729
+
730
+ msgid "Total of your purchase:"
731
+ msgstr "Total de su compra:"
732
+
733
+ msgid "Total of your purchase with discount:"
734
+ msgstr "Total de su compra con descuento:"
735
+
736
+ msgid "*Uppon payment approval"
737
+ msgstr "*Con la aprobación de pago"
738
+
739
+ msgid "Terms and Conditions of Use"
740
+ msgstr "Términos y Condiciones de Uso"
741
+
742
+ msgid "with discount from"
743
+ msgstr "con descuento de"
744
+
745
+ msgid "You will save"
746
+ msgstr "Usted ahorrará"
747
+
748
+ msgid "Please, inform your coupon code"
749
+ msgstr "Por favor, introduzca el código de su cupón"
750
+
751
+ msgid "Payment converted from"
752
+ msgstr "Pago convertido de"
753
+
754
+ msgid "Installments"
755
+ msgstr "Mensualidades"
756
+
757
+ msgid "Choose"
758
+ msgstr "Seleccione"
759
+
760
+ msgid "Parameter cardIssuerId can not be null/empty"
761
+ msgstr "Parámetro [Emisor] no puede ser nulo/vacío"
762
+
763
+ msgid "Issuer"
764
+ msgstr "Emisor"
765
+
766
+ msgid "Invalid Document Number"
767
+ msgstr "Número del Documento inválido"
768
+
769
+ msgid "Parameter docNumber can not be null/empty"
770
+ msgstr "Parámetro [Número del Documento] no puede ser nulo/vacío"
771
+
772
+ msgid "Document number"
773
+ msgstr "Número de Documento"
774
+
775
+ msgid "Invalid Document Type"
776
+ msgstr "Tipo de Documento inválido"
777
+
778
+ msgid "Parameter docType can not be null/empty"
779
+ msgstr "Parámetro [Tipo de Documento] no puede ser nulo/vacío"
780
+
781
+ msgid "Document Type"
782
+ msgstr "Tipo de Documento"
783
+
784
+ msgid "Invalid Card Holder Name"
785
+ msgstr "Nombre del titular de la tarjeta inválido"
786
+
787
+ msgid "Parameter cardholderName can not be null/empty"
788
+ msgstr "Parámetro [Nombre del titular] no puede ser nulo/vacío"
789
+
790
+ msgid "Card holder name"
791
+ msgstr "Nombre del titular de la tarjeta"
792
+
793
+ msgid "Invalid Expiration Date"
794
+ msgstr "Fecha de expiración inválida"
795
+
796
+ msgid "Year"
797
+ msgstr "Año"
798
+
799
+ msgid "Expiration year"
800
+ msgstr "Año de expiración"
801
+
802
+ msgid "Month"
803
+ msgstr "Mes"
804
+
805
+ msgid "Expiration month"
806
+ msgstr "Mes de expiración"
807
+
808
+ msgid "Invalid Card Number"
809
+ msgstr "Número de tarjeta inválido"
810
+
811
+ msgid "Parameter cardNumber can not be null/empty"
812
+ msgstr "Parámetro [Número de tarjeta] no puede ser nulo/vacío"
813
+
814
+ msgid "Credit card number"
815
+ msgstr "Número de tarjeta de crédito"
816
+
817
+ msgid "Parameter securityCode can not be null/empty"
818
+ msgstr "Parámetro [Código de seguridad] no puede ser nulo/vacío"
819
+
820
+ msgid "Invalid Security Code"
821
+ msgstr "Código de seguridad inválido"
822
+
823
+ msgid "Security code"
824
+ msgstr "Código de seguridad"
825
+
826
+ msgid "Other Card"
827
+ msgstr "Otra Tarjeta"
828
+
829
+ msgid "Other Cards"
830
+ msgstr "Otras Tarjetas"
831
+
832
+ msgid "ended in"
833
+ msgstr "terminado en"
834
+
835
+ msgid "Your Card"
836
+ msgstr "Sus Tarjetas"
837
+
838
+ msgid "Payment Method"
839
+ msgstr "Medios de Pago"
840
+
841
+ msgid "Apply"
842
+ msgstr "Aplicar"
843
+
844
+ msgid "Remove"
845
+ msgstr "Eliminar"
846
+
847
+ msgid "Discount Coupon"
848
+ msgstr "Cupón de Descuento"
849
+
850
+ msgid "Mercado Pago - Credit Card"
851
+ msgstr "Mercado Pago - Tarjeta de Crédito"
852
+
853
+ msgid "Check your order resume"
854
+ msgstr "Ver su hoja de pedido"
855
+
856
+ msgid "Your payment was refused. You can try again."
857
+ msgstr "Su pago fue rechazado. Puede intentarlo de nuevo."
858
+
859
+ msgid "Click to try again"
860
+ msgstr "Haga clic para intentarlo de nuevo"
861
+
862
+ msgid "A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?"
863
+ msgstr "Un problema se produjo al procesar su pago. ¿Esta seguro que ha rellenado correctamente toda la información en el formulario de checkout?"
864
+
865
+ msgid "Discount provided by store"
866
+ msgstr "Descuento dado por la tienda"
867
+
868
+ msgid "Discount for %s coupon"
869
+ msgstr "Descuento para el cupón %s"
870
+
871
+ msgid "Done, your payment was accredited!"
872
+ msgstr "Listo, su pago ha sido aceptado!"
873
+
874
+ msgid "We are processing the payment. In less than an hour we will e-mail you the results."
875
+ msgstr "Estamos procesando su pago. En menos de una hora le enviaremos el resultado por correo electrónico."
876
+
877
+ msgid "We are processing the payment. In less than 2 business days we will tell you by e-mail whether it has accredited or we need more information."
878
+ msgstr "Estamos procesando su pago. En menos de 2 días le enviaremos por correo electrónico si se ha aprobado el pago o si se necesita información adicional."
879
+
880
+ msgid "Check the card number."
881
+ msgstr "Compruebe el número de tarjeta."
882
+
883
+ msgid "Check the expiration date."
884
+ msgstr "Compruebe la fecha de expiración."
885
+
886
+ msgid "Check the information."
887
+ msgstr "Compruebe la información informada."
888
+
889
+ msgid "Check the security code."
890
+ msgstr "Compruebe el código de seguridad informado."
891
+
892
+ msgid "We could not process your payment."
893
+ msgstr "No se puede procesar su pago."
894
+
895
+ msgid "You must authorize the payment of your orders."
896
+ msgstr "Usted debe autorizar los pagos de sus órdenes."
897
+
898
+ msgid "Call your card issuer to activate your card. The phone is on the back of your card."
899
+ msgstr "Póngase en contacto con el emisor de su tarjeta para activarla. El teléfono se encuentra en la parte posterior de su tarjeta."
900
+
901
+ msgid "You already made a payment for that amount. If you need to repay, use another card or other payment method."
902
+ msgstr "Usted ya realizó un pago de este importe. Si tiene que pagar de nuevo, utilizar otra tarjeta u otro medio de pago."
903
+
904
+ msgid "Your payment was rejected. Choose another payment method. We recommend cash."
905
+ msgstr "Su pago fue rechazado. Por favor seleccione otro medio de pago. Se recomienda en efectivo."
906
+
907
+ msgid "Your payment do not have sufficient funds."
908
+ msgstr "Su pago no tiene fondos suficientes."
909
+
910
+ msgid "Your payment does not process payments with selected installments."
911
+ msgstr "El pago no puede procesar la cuota seleccionada."
912
+
913
+ msgid "You have reached the limit of allowed attempts. Choose another card or another payment method."
914
+ msgstr "Has alcanzado el límite de intentos permitidos. Elija otra tarjeta u otro medio de pago."
915
+
916
+ msgid "This payment method did not process the payment."
917
+ msgstr "Esta medio de pago no puede procesar su pago."
918
+
919
+ msgid "Please, inform your email in billing address to use this feature"
920
+ msgstr "Por favor, introduzca su email en la dirección de facturación para utilizar este servicio"
921
+
922
+ msgid "Waiting for the ticket payment."
923
+ msgstr "Esperando el pago del ticket."
924
+
925
+ msgid "here"
926
+ msgstr "aquí"
927
+
928
+ msgid "To reprint the ticket click "
929
+ msgstr "Para imprimir nuevamente el ticket hace clic "
930
+
931
+ msgid "A problem was occurred when processing your payment. Please, try again."
932
+ msgstr "Un problema se produjo al procesar su pago. Por favor, inténtelo de nuevo."
933
+
934
+ msgid "Print the Ticket"
935
+ msgstr "Imprimir el ticket"
936
+
937
+ msgid "Thank you for your order. Please, pay the ticket to get your order approved."
938
+ msgstr "Gracias por su orden. Por favor, realice el pago del ticket para tener su orden aprobada."
939
+
940
+ msgid "Important: The order will be confirmed only after the payment approval."
941
+ msgstr "Importante: La solicitud sólo será confirmada después de la aprobación del pago."
942
+
943
+ msgid "Click [Place order] button. The ticket will be generated and you will be redirected to print it."
944
+ msgstr "Haga clic en el botón [Realizar el pedido]. El ticket será generado y usted será redirigido a imprimirlo."
945
+
946
+ msgid "Please, select the ticket issuer of your preference."
947
+ msgstr "Por favor, seleccione el emisor de su elección."
948
+
949
+ msgid "Needed informations due to brazilian bank compliances numbers 3.461/09, 3.598/12 and 3.656/13 of the Central Bank of Brazil."
950
+ msgstr "Informaciones necesarias debido a las normas bancarias brasileñas números 3.461/09, 3.598/12 y 3.656/13 del Banco Central de Brasil."
951
+
952
+ msgid "NAME"
953
+ msgstr "NOMBRE"
954
+
955
+ msgid "SURNAME"
956
+ msgstr "APELLIDO"
957
+
958
+ msgid "DOCUMENT"
959
+ msgstr "DOCUMENTO"
960
+
961
+ msgid "ADDRESS"
962
+ msgstr "DIRECCIÓN"
963
+
964
+ msgid "NUMBER"
965
+ msgstr "NÚMERO"
966
+
967
+ msgid "CITY"
968
+ msgstr "CIUDAD"
969
+
970
+ msgid "STATE"
971
+ msgstr "ESTADO"
972
+
973
+ msgid "ZIP"
974
+ msgstr "CÓDIGO POSTAL"
975
+
976
+ msgid "You must inform you NAME"
977
+ msgstr "Obligatorio informar su NOMBRE"
978
+
979
+ msgid "You must inform your SURNAME"
980
+ msgstr "Obligatorio informar su APELLIDO"
981
+
982
+ msgid "You must inform your DOCUMENT"
983
+ msgstr "Obligatorio informar su DOCUMENTO"
984
+
985
+ msgid "You must inform your ADDRESS"
986
+ msgstr "Obligatorio informar su DIRECCIÓN"
987
+
988
+ msgid "You must inform your ADDRESS NUMBER"
989
+ msgstr "Obligatorio informar su NÚMERO"
990
+
991
+ msgid "You must inform your CITY"
992
+ msgstr "Obligatorio informar su CIUDAD"
993
+
994
+ msgid "You must inform your STATE"
995
+ msgstr "Obligatorio informar su ESTADO"
996
+
997
+ msgid "You must inform your ZIP"
998
+ msgstr "Obligatorio informar su CÓDIGO POSTAL"
999
+
1000
+ msgid "Fisical Person"
1001
+ msgstr "Persona Física"
1002
+
1003
+ msgid "Legal Person"
1004
+ msgstr "Persona Jurídica"
1005
+
1006
+ msgid "SOCIAL NAME"
1007
+ msgstr "RAZÓN SOCIAL"
1008
+
1009
+ msgid "CNPJ"
1010
+ msgstr "CNPJ"
i18n/languages/woocommerce-mercadopago-es_PE.mo ADDED
Binary file
i18n/languages/woocommerce-mercadopago-es_PE.po ADDED
@@ -0,0 +1,1010 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # WordPress Blank Pot
2
+ # Copyright (C) 2014 ...
3
+ # This file is distributed under the GNU General Public License v2 or later.
4
+ msgid ""
5
+ msgstr ""
6
+ "Project-Id-Version: WordPress Blank Pot v1.0.0\n"
7
+ "POT-Creation-Date: 2016-05-23 14:52-0300\n"
8
+ "PO-Revision-Date: \n"
9
+ "Language-Team: Product Development <translations@example.com>\n"
10
+ "Report-Msgid-Bugs-To: Translator Name <translations@example.com>\n"
11
+ "MIME-Version: 1.0\n"
12
+ "Content-Type: text/plain; charset=UTF-8\n"
13
+ "Content-Transfer-Encoding: 8bit\n"
14
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
+ "X-Textdomain-Support: yesX-Generator: Poedit 1.6.4\n"
16
+ "X-Poedit-SourceCharset: UTF-8\n"
17
+ "X-Poedit-KeywordsList: __;_e;esc_html_e;esc_html_x:1,2c;esc_html__;esc_attr_e;esc_attr_x:1,2c;esc_attr__;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_x:1,2c;_n:1,2;"
18
+ "_n_noop:1,2;__ngettext:1,2;__ngettext_noop:1,2;_c,_nc:4c,1,2\n"
19
+ "X-Poedit-Basepath: ../Documents/woocommerce (MAMP)/wp-content/plugins/woo-mercado-pago-module\n"
20
+ "X-Generator: Poedit 1.8.7\n"
21
+ "Last-Translator: \n"
22
+ "Language: es_PE\n"
23
+ "X-Poedit-SearchPath-0: .\n"
24
+
25
+ msgid "This is the <strong>oficial</strong> module of Mercado Pago for WooCommerce plugin. This module enables WooCommerce to use Mercado Pago as a payment Gateway for purchases made in your e-commerce store."
26
+ msgstr "Este es el módulo <strong>oficial</strong> de Mercado Pago para el plugin WooCommerce. Este módulo habilita el uso de Mercado Pago en WooCommerce como medio de pago para compras realizadas en su tienda virtual."
27
+
28
+ msgid "Mercado Pago Settings"
29
+ msgstr "Configuración de Mercado Pago"
30
+
31
+ msgid "Rate Us"
32
+ msgstr "Calificanos"
33
+
34
+ msgid "Tutorial"
35
+ msgstr "Tutorial"
36
+
37
+ msgid "Report Issue"
38
+ msgstr "Informar Problema"
39
+
40
+ msgid "ERROR: It was not possible to convert the unsupported currency"
41
+ msgstr "ERROR: No fue posible convertir la moneda no soportada"
42
+
43
+ msgid "to"
44
+ msgstr "a"
45
+
46
+ msgid "Currency conversions should be made outside this module."
47
+ msgstr "Las conversiones de monedas deben hacerse fuera de este módulo."
48
+
49
+ msgid "ATTENTION: The currency"
50
+ msgstr "ATENCION: La moneda"
51
+
52
+ msgid "defined in WooCommerce is different from the one used in your credentials country.<br>The currency for transactions in this payment method will be"
53
+ msgstr "definido en WooCommerce es diferente al utilizado por las credenciales de su país.<br>La moneda para las transacciones hechas con este método de pago será"
54
+
55
+ msgid "CURRENCY CONVERTED: Your store is converting currency from"
56
+ msgstr "MONEDA CONVERTIDA: Su tienda está convirtiendo moneda de"
57
+
58
+ msgid "Colombia"
59
+ msgstr "Colombia"
60
+
61
+ msgid "Argentine"
62
+ msgstr "Argentina"
63
+
64
+ msgid "Brazil"
65
+ msgstr "Brasil"
66
+
67
+ msgid "Chile"
68
+ msgstr "Chile"
69
+
70
+ msgid "Mexico"
71
+ msgstr "México"
72
+
73
+ msgid "Uruguay"
74
+ msgstr "Uruguay"
75
+
76
+ msgid "Venezuela"
77
+ msgstr "Venezuela"
78
+
79
+ msgid "Peru"
80
+ msgstr "Perú"
81
+
82
+ msgid "Update WooCommerce order to "
83
+ msgstr "Actualizar la orden de WooCommerce a "
84
+
85
+ msgid "You do not have sufficient permissions to access this page."
86
+ msgstr "No tiene suficientes permisos para acceder a esta página."
87
+
88
+ msgid "WooCommerce is installed and enabled."
89
+ msgstr "WooCommerce está instalado y habilitado."
90
+
91
+ msgid "You don\'t have WooCommerce installed and enabled."
92
+ msgstr "No tiene WooCommerce instalado y habilitado."
93
+
94
+ msgid "Your PHP version is OK."
95
+ msgstr "Su versión de PHP está bien."
96
+
97
+ msgid "Your PHP version do not support this module. You have %s, minimal required is %s."
98
+ msgstr "Su versión de PHP no soporta este módulo. Tienes %s, la mínima requerida es %s."
99
+
100
+ msgid "cURL is installed."
101
+ msgstr "cURL está instalado."
102
+
103
+ msgid "cURL is not installed."
104
+ msgstr "cURL no está instalado."
105
+
106
+ msgid "SSL is missing in your site."
107
+ msgstr "Falta el SSL en su sitio."
108
+
109
+ msgid "Your site has SSL enabled."
110
+ msgstr "Su sitio tiene SSL habilitado."
111
+
112
+ msgid "Basic Checkout"
113
+ msgstr "Checkout Básico"
114
+
115
+ msgid "Custom Checkout"
116
+ msgstr "Checkout Personalizado"
117
+
118
+ msgid "Ticket"
119
+ msgstr "Ticket"
120
+
121
+ msgid "Subscription"
122
+ msgstr "Suscripción"
123
+
124
+ msgid "Configure your Client_id and Client_secret to have access to more options."
125
+ msgstr "Configure su Client_id y Client_secret para tener acceso a más opciones."
126
+
127
+ msgid "Define which type of products your store sells."
128
+ msgstr "Defina qué tipo de productos se vende en su tienda."
129
+
130
+ msgid "Your <strong>client_id</strong> and <strong>client_secret</strong> are <strong>valid</strong> for"
131
+ msgstr "Su <strong>client_id</strong> y <strong>client_secret</strong> son <strong>válidos</strong> para"
132
+
133
+ msgid "Your <strong>client_id</strong> and <strong>client_secret</strong> are <strong>not valid</strong>!"
134
+ msgstr "Su <strong>client_id</strong> y <strong>client_secret</strong> son <strong>inválidas</strong>!"
135
+
136
+ msgid "These credentials are used in <strong>Basic Checkout</strong> and <strong>Subscriptions</strong>. Access it for your country:<br>"
137
+ msgstr "Estas credenciales se utilizan en <strong>Checkout Básico</strong> y <strong>Suscripciones</strong>. Acceda este para su país en:<br>"
138
+
139
+ msgid "or"
140
+ msgstr "o"
141
+
142
+ msgid "Your <strong>public_key</strong> and <strong>access_token</strong> are <strong>valid</strong> for"
143
+ msgstr "Su <strong>public_key</strong> y <strong>access_token</strong> son <strong>válidas</strong> para"
144
+
145
+ msgid "Your <strong>public_key</strong> and <strong>access_token</strong> are <strong>not valid</strong>!"
146
+ msgstr "Su <strong>public_key</strong> y <strong>acceso_token</strong> son <strong>inválidas</strong>!"
147
+
148
+ msgid "These credentials are used in <strong>Custom Checkout</strong> and <strong>Tickets</strong>. Access it for your country:<br>"
149
+ msgstr "Estas credenciales se usan en <strong>Checkout Personalizado</ strong> y <strong>Tickets</strong>. Acceda este para su país en:<br>"
150
+
151
+ msgid "This module enables WooCommerce to use Mercado Pago as payment method for purchases made in your virtual store."
152
+ msgstr "Este módulo permite a WooCommerce usar Mercado Pago como método de pago para compras realizadas en su tienda virtual."
153
+
154
+ msgid "Payment Gateways"
155
+ msgstr "Gateways de Pago"
156
+
157
+ msgid "Basic Checkout & Subscriptions"
158
+ msgstr "Checkout Básico & Suscripciones"
159
+
160
+ msgid "Custom Checkout & Tickets"
161
+ msgstr "Checkout Personalizado & Tickets"
162
+
163
+ msgid "Insert your Mercado Pago Client_id."
164
+ msgstr "Inserta su Client_id de Mercado Pago."
165
+
166
+ msgid "Insert your Mercado Pago Client_secret."
167
+ msgstr "Inserta su" Client_secret de Mercado Pago.
168
+
169
+ msgid "Currency Conversion"
170
+ msgstr "Conversión de Moneda"
171
+
172
+ msgid "If the used currency in WooCommerce is different or not supported by Mercado Pago, convert values of your transactions using Mercado Pago currency ratio. This service may slow down your server as each conversion is made in the checkout moment."
173
+ msgstr "Si la moneda utilizada en WooCommerce es diferente o no es compatible con Mercado Pago, convierta los valores de sus transacciones usando la tasa de moneda de Mercado Pago. Este servicio puede ralentizar su servidor ya que cada conversión se realiza en el momento de la compra."
174
+
175
+ msgid "Insert your Mercado Pago Public key."
176
+ msgstr "Inserta su Public_key de Mercado Pago."
177
+
178
+ msgid "Insert your Mercado Pago Access token."
179
+ msgstr "Inserta su Access_token de Mercado Pago."
180
+
181
+ msgid "Status Mapping of Payment x Order"
182
+ msgstr "Mapeamento de Estados de Pagos x Ordens"
183
+
184
+ msgid "Here you can configure details about Mercado Pago payments and WooCommerce order statuses."
185
+ msgstr "Acá puede configurar los detalles sobre los pagos de Mercado Pago y los estados de los pedidos de WooCommerce."
186
+
187
+ msgid "For status mappings between payment/order you can use the defaults, or check references of %s and %s"
188
+ msgstr "Para las asignaciones de estados entre pago/pedido se puede usar los valores estándares, o consultar las referencias de %s y %s"
189
+
190
+ msgid "Status for PENDING"
191
+ msgstr "Estado para PENDING"
192
+
193
+ msgid "when Mercado Pago updates a payment status to PENDING."
194
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a PENDIENTE."
195
+
196
+ msgid "Status for APPROVED"
197
+ msgstr "Estado para APPROVED"
198
+
199
+ msgid "When Mercado Pago updates a payment status to APPROVED."
200
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a APPROVED."
201
+
202
+ msgid "Status for IN_PROCESS"
203
+ msgstr "Estado para IN_PROCESS"
204
+
205
+ msgid "When Mercado Pago updates a payment status to IN_PROCESS."
206
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a IN_PROCESS."
207
+
208
+ msgid "Status for IN_MEDIATION"
209
+ msgstr "Estado para IN_MEDIATION"
210
+
211
+ msgid "When Mercado Pago updates a payment status to IN_MEDIATION."
212
+ msgstr "Cuando Mercado pago actualiza un estado de pago a IN_MEDIATION."
213
+
214
+ msgid "Status for REJECTED"
215
+ msgstr "Estado para REJECTED"
216
+
217
+ msgid "When Mercado Pago updates a payment status to REJECTED."
218
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a REJECTED."
219
+
220
+ msgid "Status for CANCELLED"
221
+ msgstr "Estado para CANCELLED"
222
+
223
+ msgid "When Mercado Pago updates a payment status to CANCELLED."
224
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a CANCELLED."
225
+
226
+ msgid "Status for REFUNDED"
227
+ msgstr "Estado para REFUNDED"
228
+
229
+ msgid "When Mercado Pago updates a payment status to REFUNDED."
230
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a REFUNDED."
231
+
232
+ msgid "Status for CHARGED_BACK"
233
+ msgstr "Estado para CHARGED_BACK"
234
+
235
+ msgid "When Mercado Pago updates a payment status to CHARGED_BACK."
236
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a CHARGED_BACK."
237
+
238
+ msgid "Store Settings"
239
+ msgstr "Configuración de la Tienda"
240
+
241
+ msgid "Here you can place details about your store."
242
+ msgstr "Acá puede colocar detalles de su tienda."
243
+
244
+ msgid "Statement Descriptor"
245
+ msgstr "Descripción de la Factura"
246
+
247
+ msgid "The description that will be shown in your customer\'s invoice."
248
+ msgstr "La descripción que se muestra en la factura de su cliente."
249
+
250
+ msgid "Store Category"
251
+ msgstr "Categoría de la tienda"
252
+
253
+ msgid "Store Identificator"
254
+ msgstr "Identificador de la tienda"
255
+
256
+ msgid "Please, inform a prefix to your store."
257
+ msgstr "Por favor, informe un prefijo para su tienda."
258
+
259
+ msgid "If you use your Mercado Pago account on multiple stores you should make sure that this prefix is unique as Mercado Pago will not allow orders with same identificators."
260
+ msgstr "Si esta utilizando su cuenta Mercado Pago para múltiples tiendas, asegúrese que este prefijo sea único para no generar pedidos con el mismo identificador."
261
+
262
+ msgid "Test and Debug Options"
263
+ msgstr "Opciones de Prueba y Debug"
264
+
265
+ msgid "Tools for debug and testing your integration."
266
+ msgstr "Herramientas para debug y teste para su integración."
267
+
268
+ msgid "Debug and Log"
269
+ msgstr "Debug y Log"
270
+
271
+ msgid "Enable log (Keep this disabled if you’re in production)."
272
+ msgstr "Habilitar log (Manténgalo desactivado si está en producción)."
273
+
274
+ msgid "Register event logs of Mercado Pago, such as API requests, for"
275
+ msgstr "Registrar los logs de eventos de Mercado Pago, como las solicitudes de API, para"
276
+
277
+ msgid "Tickets"
278
+ msgstr "Tickets"
279
+
280
+ msgid "You can access your logs in "
281
+ msgstr "Puede acceder a sus logs en "
282
+
283
+ msgid "WooCommerce &gt; System Status &gt; Logs"
284
+ msgstr "WooCommerce &gt; Estado del Sistema &gt; Logs"
285
+
286
+ msgid "Files are located in: "
287
+ msgstr "Los archivos se encuentran en: "
288
+
289
+ msgid "Mercado Pago Sandbox"
290
+ msgstr "Sandbox de Mercado Pago"
291
+
292
+ msgid "Enable Mercado Pago Sandbox."
293
+ msgstr "Habilitar el sandbox de Mercado Pago."
294
+
295
+ msgid "This option allows you to test payments inside a sandbox environment."
296
+ msgstr "Esta opción permite simular un flujo de pagos completo en nuestro entorno Sandbox."
297
+
298
+ msgid "Mercado Pago - Basic Checkout"
299
+ msgstr "Mercado Pago - Checkout Básico"
300
+
301
+ msgid "Receive payments in a matter of minutes. We make it easy for you: just tell us what you want to collect and we’ll take care of the rest."
302
+ msgstr "Recibe pagos en cuestión de minutos. Lo hacemos fácil: solo díganos lo que quiere recolectar y nos encargaremos del resto."
303
+
304
+ msgid "It appears that your credentials are not properly configured.<br/>Please, go to %s and configure it."
305
+ msgstr "Parece que sus credenciales no están configuradas correctamente.<br/>Por favor, vaya a %s y configúrelo."
306
+
307
+ msgid "This appears to be an invalid URL."
308
+ msgstr "Esto parece ser una URL inválida."
309
+
310
+ msgid "Where customers should be redirected after a successful purchase. Let blank to redirect to the default store order resume page."
311
+ msgstr "Donde los clientes serán redirigidos después de una compra exitosa. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
312
+
313
+ msgid "Where customers should be redirected after a failed purchase. Let blank to redirect to the default store order resume page."
314
+ msgstr "Donde los clientes serán redirigidos después de una compra rechazada. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
315
+
316
+ msgid "Where customers should be redirected after a pending purchase. Let blank to redirect to the default store order resume page."
317
+ msgstr "Donde los clientes ​serán redirigidos después de una compra pendiente. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
318
+
319
+ msgid "Enable/Disable"
320
+ msgstr "Habilitar/Deshabilitar"
321
+
322
+ msgid "Enable Basic Checkout"
323
+ msgstr "Habilitar Checkout Básico"
324
+
325
+ msgid "Checkout Interface: How checkout is shown"
326
+ msgstr "Interfaz de Checkout: Cómo se muestra el checkout"
327
+
328
+ msgid "Title"
329
+ msgstr "Título"
330
+
331
+ msgid "Title shown to the client in the checkout."
332
+ msgstr "Título mostrado al cliente en el checkout."
333
+
334
+ msgid "Mercado Pago"
335
+ msgstr "Mercado Pago"
336
+
337
+ msgid "Description"
338
+ msgstr "Descripción"
339
+
340
+ msgid "Description shown to the client in the checkout."
341
+ msgstr "Descripción mostrada al cliente en el checkout."
342
+
343
+ msgid "Pay with Mercado Pago"
344
+ msgstr "Pagar con Mercado Pago"
345
+
346
+ msgid "Integration Method"
347
+ msgstr "Método de integración"
348
+
349
+ msgid "Select how your clients should interact with Mercado Pago. Modal Window (inside your store), Redirect (Client is redirected to Mercado Pago), or iFrame (an internal window is embedded to the page layout)."
350
+ msgstr "Seleccione la forma en que sus clientes deben interactuar con Mercado Pago. Ventana Modal (Dentro de su tienda), Redireccionamiento (El cliente es redireccionado a Mercado Pago), o iFrame (Ventana de pago incorporada a su página)."
351
+
352
+ msgid "iFrame"
353
+ msgstr "iFrame"
354
+
355
+ msgid "Modal Window"
356
+ msgstr "Ventana Modal"
357
+
358
+ msgid "Redirect"
359
+ msgstr "Redireccionamiento"
360
+
361
+ msgid "iFrame Width"
362
+ msgstr "Ancho del iFrame"
363
+
364
+ msgid "If your integration method is iFrame, please inform the payment iFrame width."
365
+ msgstr "Si su modo de apertura es iFrame, indique el ancho del iFrame."
366
+
367
+ msgid "iFrame Height"
368
+ msgstr "Alto del iFrame"
369
+
370
+ msgid "If your integration method is iFrame, please inform the payment iFrame height."
371
+ msgstr "Si su modo de apertura es iFrame, indique el alto del iFrame."
372
+
373
+ msgid "Checkout Navigation: How checkout redirections will behave"
374
+ msgstr "Navegación de Checkout: Cómo se comportarán las redirecciones de pago"
375
+
376
+ msgid "Auto Return"
377
+ msgstr "Redirección automática"
378
+
379
+ msgid "Automatic Return After Payment"
380
+ msgstr "Redirección Automática luego del pago"
381
+
382
+ msgid "After the payment, client is automatically redirected."
383
+ msgstr "Después del pago, el cliente será redireccionado automáticamente."
384
+
385
+ msgid "Sucess URL"
386
+ msgstr "URL de Éxito"
387
+
388
+ msgid "Failure URL"
389
+ msgstr "URL de Pago Rechazado"
390
+
391
+ msgid "Pending URL"
392
+ msgstr "URL de Pago Pendiente"
393
+
394
+ msgid "Payment Options: How payment options behaves"
395
+ msgstr "Opciones de pago: Cómo se comportan las opciones de pago"
396
+
397
+ msgid "Max installments"
398
+ msgstr "Número máximo de cuotas"
399
+
400
+ msgid "Select the max number of installments for your customers."
401
+ msgstr "Seleccione el número máximo de cuotas disponibles para sus clientes."
402
+
403
+ msgid "1x installment"
404
+ msgstr "1x cuota"
405
+
406
+ msgid "2x installmens"
407
+ msgstr "2x cuotas"
408
+
409
+ msgid "3x installmens"
410
+ msgstr "3x cuotas"
411
+
412
+ msgid "4x installmens"
413
+ msgstr "4x cuotas"
414
+
415
+ msgid "5x installmens"
416
+ msgstr "5x cuotas"
417
+
418
+ msgid "6x installmens"
419
+ msgstr "6x cuotas"
420
+
421
+ msgid "10x installmens"
422
+ msgstr "10x cuotas"
423
+
424
+ msgid "12x installmens"
425
+ msgstr "12x cuotas"
426
+
427
+ msgid "15x installmens"
428
+ msgstr "15x cuotas"
429
+
430
+ msgid "18x installmens"
431
+ msgstr "18x cuotas"
432
+
433
+ msgid "24x installmens"
434
+ msgstr "24x cuotas"
435
+
436
+ msgid "Exclude Payment Methods"
437
+ msgstr "Excluir medios de pago"
438
+
439
+ msgid "Select the payment methods that you <strong>don\'t</strong> want to receive with Mercado Pago."
440
+ msgstr "Selecione los medios de pago que <strong>no</strong> desea aceptar con Mercado Pago."
441
+
442
+ msgid "Discount by Gateway"
443
+ msgstr "Descuento por Gateway"
444
+
445
+ msgid "Give a percentual (0 to 100) discount for your customers if they use this payment gateway."
446
+ msgstr "Dé un descuento porcentual para sus clientes si utilizan este medio de pago."
447
+
448
+ msgid "Two Cards Mode"
449
+ msgstr "Modo de Dos Tarjetas"
450
+
451
+ msgid "Payments with Two Cards"
452
+ msgstr "Pagos con Dos Tarjetas"
453
+
454
+ msgid "Your customer will be able to use two different cards to pay the order."
455
+ msgstr "Su cliente será capaz de utilizar dos tarjetas diferentes para pagar el pedido."
456
+
457
+ msgid "Thank you for your order. Please, proceed with your payment clicking in the bellow button."
458
+ msgstr "Gracias por su compra. Por favor, prosiga a la página de pago haciendo click en el botón de abajo."
459
+
460
+ msgid "Cancel order &amp; Clear cart"
461
+ msgstr "Cancelar &amp; Limpiar carrito"
462
+
463
+ msgid "Thank you for your order. Proceed with your payment completing the following information."
464
+ msgstr "Gracias por su compra. Prosiga con su pago completando la información abajo."
465
+
466
+ msgid "An error occurred when proccessing your payment. Please try again or contact us for assistence."
467
+ msgstr "Se ha producido un error en el procesamiento de su pago. Por favor, inténtelo de nuevo o póngase en contacto con nosotros para Asistencia."
468
+
469
+ msgid "Shipping service used by store"
470
+ msgstr "Servicio de envío utilizado por la tienda"
471
+
472
+ msgid "Discount of"
473
+ msgstr "Descuento de"
474
+
475
+ msgid "Mercado Pago Request Failure"
476
+ msgstr "La solicitud de Mercado Pago ha fallado"
477
+
478
+ msgid "Payer email"
479
+ msgstr "Email del comprador"
480
+
481
+ msgid "Payment type"
482
+ msgstr "Medio de pago"
483
+
484
+ msgid "Payment approved."
485
+ msgstr "Pago aprobado."
486
+
487
+ msgid "Customer haven\'t paid yet."
488
+ msgstr "El cliente todavía no efectuó el pago."
489
+
490
+ msgid "Payment under review."
491
+ msgstr "El pago está pendiente de revisión."
492
+
493
+ msgid "The payment was refused. The customer can try again."
494
+ msgstr "El pago fue rechazado. El cliente puede intentar nuevamente."
495
+
496
+ msgid "The payment was refunded to the customer."
497
+ msgstr "El pago fue devuelto al cliente."
498
+
499
+ msgid "The payment was cancelled."
500
+ msgstr "El pago fue cancelado."
501
+
502
+ msgid "The payment is under mediation or it was charged-back."
503
+ msgstr "El pago esta en mediación o la compra fue desconocida por el cliente."
504
+
505
+ msgid "Mercado Pago - Custom Checkout"
506
+ msgstr "Mercado Pago - Checkout Personalizado"
507
+
508
+ msgid "We give you the possibility to adapt the payment experience you want to offer 100% in your website, mobile app or anywhere you want. You can build the design that best fits your business model, aiming to maximize conversion."
509
+ msgstr "Le ofrecemos la posibilidad de adaptar la experiencia de pago que desea ofrecer 100% en su sitio web, en su aplicación móvil o en cualquier lugar que desee. Puede crear el diseño que mejor se adapte a su modelo de negocio, con el objetivo de maximizar la conversión."
510
+
511
+ msgid "Enable Custom Checkout"
512
+ msgstr "Habilitar Checkout Personalizado"
513
+
514
+ msgid "Coupons"
515
+ msgstr "Cupones"
516
+
517
+ msgid "Enable coupons of discounts"
518
+ msgstr "Activar los cupones de descuento"
519
+
520
+ msgid "If there is a Mercado Pago campaign, allow your store to give discounts to customers."
521
+ msgstr "Si hay una campaña de Mercado Pago, permitir a su tienda hacer descuentos para los clientes."
522
+
523
+ msgid "Binary Mode"
524
+ msgstr "Modo binario"
525
+
526
+ msgid "Enable binary mode for checkout status"
527
+ msgstr "Activar el modo binario para el estado del checkout"
528
+
529
+ msgid "When charging a credit card, only [approved] or [reject] status will be taken."
530
+ msgstr "Al cargar una tarjeta de crédito, sólo los estados [aprobado] o [rechazar] seran tomados."
531
+
532
+ msgid "This service allows you to subscribe customers to subscription plans."
533
+ msgstr "Este servicio le permite suscribir los clientes a planes de suscripción."
534
+
535
+ msgid "It appears that your country is not supported for this solution.<br/>Please, use another payment method or go to %s to use another credential."
536
+ msgstr "Parece que su país no es compatible con esta solución.<br/>Por favor, use otro método de pago o vaya a %s para usar otra credencial."
537
+
538
+ msgid "Enable Subscription"
539
+ msgstr "Habilitar Suscripción"
540
+
541
+ msgid "Instant Payment Notification (IPN) URL"
542
+ msgstr "URL da Notificación Instantanea de Pago (IPN)"
543
+
544
+ msgid "For this solution, you need to configure your IPN URL. You can access it in your account for your specific country in:"
545
+ msgstr "Para esta solución, usted debe configurar su URL de IPN. Puede acceder a ella en su cuenta para su específico país en:"
546
+
547
+ msgid "Your IPN URL to receive instant payment notifications is"
548
+ msgstr "Su URL de IPN para recibir notificaciones instantáneas de pago es"
549
+
550
+ msgid "Mercado Pago - Ticket"
551
+ msgstr "Mercado Pago - Ticket"
552
+
553
+ msgid "UNDER BUILDING..."
554
+ msgstr "UN CONSTRUCIÓN..."
555
+
556
+ msgid "Enable Ticket Payment Method"
557
+ msgstr "Habilitar Pago con Ticket"
558
+
559
+ msgid "Ticket Interface: How checkout is shown"
560
+ msgstr "Interfaz de Tickets: Cómo se muestra el checkout"
561
+
562
+ msgid "Title shown to the client in the ticket."
563
+ msgstr "Título mostrado al cliente en el ticket."
564
+
565
+ msgid "Description shown to the client in the ticket."
566
+ msgstr "Descripción mostrada al cliente en el ticket."
567
+
568
+ msgid "Stock Reduce"
569
+ msgstr "Reducir Inventario"
570
+
571
+ msgid "Reduce Stock in Order Generation"
572
+ msgstr "Reducir Inventario en la Orden"
573
+
574
+ msgid "Enable this to reduce the stock on order creation. Disable this to reduce <strong>after</strong> the payment approval."
575
+ msgstr "Activar esta opción para reducir el inventario mediante la creación de un pedido. Desactivar para reducir sólo <strong>después</strong> de la aprobación del pago."
576
+
577
+ msgid "Mercado Envios is a shipping method available only for payments with Mercado Pago."
578
+ msgstr "Mercado Envios es un método de envío disponible sólo para los pagos con Mercado Pago."
579
+
580
+ msgid "Free Shipping"
581
+ msgstr "Envío Gratuito"
582
+
583
+ msgid "Day"
584
+ msgstr "Día"
585
+
586
+ msgid "Days"
587
+ msgstr "Días"
588
+
589
+ msgid "Enable the two shipping methods the Mercado Envios (Express and Normal) for the proper functioning of the module."
590
+ msgstr "Habilitar los dos métodos de envío de Mercado Envios (Express y Normal) para el correcto funcionamiento del módulo."
591
+
592
+ msgid "Mercado Envios"
593
+ msgstr "Mercado Envios"
594
+
595
+ msgid "This controls the title which the user sees during checkout."
596
+ msgstr "Controla el título que se muestra al cliente durante el pago."
597
+
598
+ msgid "Enable free shipping for this shipping method"
599
+ msgstr "Habilitar el envío gratuito para este método de envío"
600
+
601
+ msgid "Delivery Time"
602
+ msgstr "Tiempo de Entrega"
603
+
604
+ msgid "Show estimated delivery time"
605
+ msgstr "Mostrar el tiempo estimado de entrega"
606
+
607
+ msgid "Display the estimated delivery time in working days."
608
+ msgstr "Mostrar el tiempo estimado de entrega en días laborables."
609
+
610
+ msgid "Tag ready to print"
611
+ msgstr "Etiqueta lista para imprimir"
612
+
613
+ msgid "Tag printed"
614
+ msgstr "Etiqueta impresa"
615
+
616
+ msgid "Unsuccessful"
617
+ msgstr "Fracasado"
618
+
619
+ msgid "Delayed shipping"
620
+ msgstr "Envío retrasado"
621
+
622
+ msgid "Missing recipient for delivery"
623
+ msgstr "Destinatario ausente para envío"
624
+
625
+ msgid "In return to sender"
626
+ msgstr "Volviendo al remitente"
627
+
628
+ msgid "Buyer initiates complaint and requested a refund."
629
+ msgstr "El comprador ha iniciado una discusión y pide un extorno."
630
+
631
+ msgid "Order"
632
+ msgstr "Pedido"
633
+
634
+ msgid "Mercado Envios Tracking ID"
635
+ msgstr "Código de rastreamiento de Mercado Envíos"
636
+
637
+ msgid "Hello,"
638
+ msgstr "Hola,"
639
+
640
+ msgid "Your order"
641
+ msgstr "Su pedido"
642
+
643
+ msgid "made in"
644
+ msgstr "hecho en"
645
+
646
+ msgid "used Mercado Envios as its shipment method."
647
+ msgstr "utilizó el Mercado Envíos como su medio de envío."
648
+
649
+ msgid "You can track it with the following Tracking ID:"
650
+ msgstr "Usted puedes rastrearlo con lo siguiente código de rastreamiento:"
651
+
652
+ msgid "Best regards."
653
+ msgstr "Saludos."
654
+
655
+ msgid "Mercado Pago Subscription"
656
+ msgstr "Suscripción Mercado Pago"
657
+
658
+ msgid "Payment ID:"
659
+ msgstr "ID de Pago:"
660
+
661
+ msgid "Amount:"
662
+ msgstr "Cantidad:"
663
+
664
+ msgid "This operation could not be completed."
665
+ msgstr "Esta operación no se puede completar."
666
+
667
+ msgid "Operation successfully completed."
668
+ msgstr "La operación se realizó con éxito."
669
+
670
+ msgid "Refund Payment"
671
+ msgstr "Reembolso de Pago"
672
+
673
+ msgid "Cancel Payment"
674
+ msgstr "Cancelar Pago"
675
+
676
+ msgid "Mercado Pago - Subscription"
677
+ msgstr "Mercado Pago - Suscripcións"
678
+
679
+ msgid "A recurrent product is a signature that should be bought isolated in your cart. Please, create separated orders."
680
+ msgstr "Un producto recurrente es una suscripción que debe adquirirse por separado en su carrito. Por favor, hace los pedidos por separado."
681
+
682
+ msgid "Recurrent Product"
683
+ msgstr "Producto Recurrente"
684
+
685
+ msgid "Frequency"
686
+ msgstr "Frecuencia"
687
+
688
+ msgid "Amount of time (in days or months) for the execution of the next payment."
689
+ msgstr "Cantidad de tiempo (en días o meses) para la ejecución del próximo pago."
690
+
691
+ msgid "End date"
692
+ msgstr "Fecha final"
693
+
694
+ msgid "Deadline to generate new charges. Defaults to never if blank."
695
+ msgstr "Fecha límite para generar nuevos cargos. De forma predeterminada como nunca, si está en blanco."
696
+
697
+ msgid "Months"
698
+ msgstr "Meses"
699
+
700
+ msgid "Indicates the period of time."
701
+ msgstr "Indica el período de tiempo."
702
+
703
+ msgid "Make this product a subscription."
704
+ msgstr "Hacer deste producto una suscripción."
705
+
706
+ msgid "Frequency type"
707
+ msgstr "Tipo de frecuencia"
708
+
709
+ msgid "Subscribe with Mercado Pago"
710
+ msgstr "Suscribirse con Mercado Pago"
711
+
712
+ msgid "Woo Mercado Pago Module depends on the last version of %s to execute!"
713
+ msgstr "Woo Mercado Pago Module depende de la última versión de %s para ejecutarse!"
714
+
715
+ msgid "Tracking code:"
716
+ msgstr "Código de rastreamiento:"
717
+
718
+ msgid "Tag:"
719
+ msgstr "Etiqueta:"
720
+
721
+ msgid "Shipping is pending"
722
+ msgstr "Envío pendiente"
723
+
724
+ msgid "Print"
725
+ msgstr "Imprimir"
726
+
727
+ msgid "Cancel Order"
728
+ msgstr "Cancelar la Compra"
729
+
730
+ msgid "Total of your purchase:"
731
+ msgstr "Total de su compra:"
732
+
733
+ msgid "Total of your purchase with discount:"
734
+ msgstr "Total de su compra con descuento:"
735
+
736
+ msgid "*Uppon payment approval"
737
+ msgstr "*Con la aprobación de pago"
738
+
739
+ msgid "Terms and Conditions of Use"
740
+ msgstr "Términos y Condiciones de Uso"
741
+
742
+ msgid "with discount from"
743
+ msgstr "con descuento de"
744
+
745
+ msgid "You will save"
746
+ msgstr "Usted ahorrará"
747
+
748
+ msgid "Please, inform your coupon code"
749
+ msgstr "Por favor, introduzca el código de su cupón"
750
+
751
+ msgid "Payment converted from"
752
+ msgstr "Pago convertido de"
753
+
754
+ msgid "Installments"
755
+ msgstr "Cuotas"
756
+
757
+ msgid "Choose"
758
+ msgstr "Seleccione"
759
+
760
+ msgid "Parameter cardIssuerId can not be null/empty"
761
+ msgstr "Parámetro [Emisor] no puede ser nulo/vacío"
762
+
763
+ msgid "Issuer"
764
+ msgstr "Emisor"
765
+
766
+ msgid "Invalid Document Number"
767
+ msgstr "Número del Documento inválido"
768
+
769
+ msgid "Parameter docNumber can not be null/empty"
770
+ msgstr "Parámetro [Número del Documento] no puede ser nulo/vacío"
771
+
772
+ msgid "Document number"
773
+ msgstr "Número de Documento"
774
+
775
+ msgid "Invalid Document Type"
776
+ msgstr "Tipo de Documento inválido"
777
+
778
+ msgid "Parameter docType can not be null/empty"
779
+ msgstr "Parámetro [Tipo de Documento] no puede ser nulo/vacío"
780
+
781
+ msgid "Document Type"
782
+ msgstr "Tipo de Documento"
783
+
784
+ msgid "Invalid Card Holder Name"
785
+ msgstr "Nombre del titular de la tarjeta inválido"
786
+
787
+ msgid "Parameter cardholderName can not be null/empty"
788
+ msgstr "Parámetro [Nombre del titular] no puede ser nulo/vacío"
789
+
790
+ msgid "Card holder name"
791
+ msgstr "Nombre del titular de la tarjeta"
792
+
793
+ msgid "Invalid Expiration Date"
794
+ msgstr "Fecha de expiración inválida"
795
+
796
+ msgid "Year"
797
+ msgstr "Año"
798
+
799
+ msgid "Expiration year"
800
+ msgstr "Año de expiración"
801
+
802
+ msgid "Month"
803
+ msgstr "Mes"
804
+
805
+ msgid "Expiration month"
806
+ msgstr "Mes de expiración"
807
+
808
+ msgid "Invalid Card Number"
809
+ msgstr "Número de tarjeta inválido"
810
+
811
+ msgid "Parameter cardNumber can not be null/empty"
812
+ msgstr "Parámetro [Número de tarjeta] no puede ser nulo/vacío"
813
+
814
+ msgid "Credit card number"
815
+ msgstr "Número de tarjeta de crédito"
816
+
817
+ msgid "Parameter securityCode can not be null/empty"
818
+ msgstr "Parámetro [Código de seguridad] no puede ser nulo/vacío"
819
+
820
+ msgid "Invalid Security Code"
821
+ msgstr "Código de seguridad inválido"
822
+
823
+ msgid "Security code"
824
+ msgstr "Código de seguridad"
825
+
826
+ msgid "Other Card"
827
+ msgstr "Otra Tarjeta"
828
+
829
+ msgid "Other Cards"
830
+ msgstr "Otras Tarjetas"
831
+
832
+ msgid "ended in"
833
+ msgstr "terminado en"
834
+
835
+ msgid "Your Card"
836
+ msgstr "Sus Tarjetas"
837
+
838
+ msgid "Payment Method"
839
+ msgstr "Medios de Pago"
840
+
841
+ msgid "Apply"
842
+ msgstr "Aplicar"
843
+
844
+ msgid "Remove"
845
+ msgstr "Eliminar"
846
+
847
+ msgid "Discount Coupon"
848
+ msgstr "Cupón de Descuento"
849
+
850
+ msgid "Mercado Pago - Credit Card"
851
+ msgstr "Mercado Pago - Tarjeta de Crédito"
852
+
853
+ msgid "Check your order resume"
854
+ msgstr "Ver su hoja de pedido"
855
+
856
+ msgid "Your payment was refused. You can try again."
857
+ msgstr "Su pago fue rechazado. Puede intentarlo de nuevo."
858
+
859
+ msgid "Click to try again"
860
+ msgstr "Haga clic para intentarlo de nuevo"
861
+
862
+ msgid "A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?"
863
+ msgstr "Un problema se produjo al procesar su pago. ¿Esta seguro que ha rellenado correctamente toda la información en el formulario de checkout?"
864
+
865
+ msgid "Discount provided by store"
866
+ msgstr "Descuento dado por la tienda"
867
+
868
+ msgid "Discount for %s coupon"
869
+ msgstr "Descuento para el cupón %s"
870
+
871
+ msgid "Done, your payment was accredited!"
872
+ msgstr "Listo, su pago ha sido aceptado!"
873
+
874
+ msgid "We are processing the payment. In less than an hour we will e-mail you the results."
875
+ msgstr "Estamos procesando su pago. En menos de una hora le enviaremos el resultado por correo electrónico."
876
+
877
+ msgid "We are processing the payment. In less than 2 business days we will tell you by e-mail whether it has accredited or we need more information."
878
+ msgstr "Estamos procesando su pago. En menos de 2 días le enviaremos por correo electrónico si se ha aprobado el pago o si se necesita información adicional."
879
+
880
+ msgid "Check the card number."
881
+ msgstr "Compruebe el número de tarjeta."
882
+
883
+ msgid "Check the expiration date."
884
+ msgstr "Compruebe la fecha de expiración."
885
+
886
+ msgid "Check the information."
887
+ msgstr "Compruebe la información informada."
888
+
889
+ msgid "Check the security code."
890
+ msgstr "Compruebe el código de seguridad informado."
891
+
892
+ msgid "We could not process your payment."
893
+ msgstr "No se puede procesar su pago."
894
+
895
+ msgid "You must authorize the payment of your orders."
896
+ msgstr "Usted debe autorizar los pagos de sus órdenes."
897
+
898
+ msgid "Call your card issuer to activate your card. The phone is on the back of your card."
899
+ msgstr "Póngase en contacto con el emisor de su tarjeta para activarla. El teléfono se encuentra en la parte posterior de su tarjeta."
900
+
901
+ msgid "You already made a payment for that amount. If you need to repay, use another card or other payment method."
902
+ msgstr "Usted ya realizó un pago de este importe. Si tiene que pagar de nuevo, utilizar otra tarjeta u otro medio de pago."
903
+
904
+ msgid "Your payment was rejected. Choose another payment method. We recommend cash."
905
+ msgstr "Su pago fue rechazado. Por favor seleccione otro medio de pago. Se recomienda en efectivo."
906
+
907
+ msgid "Your payment do not have sufficient funds."
908
+ msgstr "Su pago no tiene fondos suficientes."
909
+
910
+ msgid "Your payment does not process payments with selected installments."
911
+ msgstr "El pago no puede procesar la cuota seleccionada."
912
+
913
+ msgid "You have reached the limit of allowed attempts. Choose another card or another payment method."
914
+ msgstr "Has alcanzado el límite de intentos permitidos. Elija otra tarjeta u otro medio de pago."
915
+
916
+ msgid "This payment method did not process the payment."
917
+ msgstr "Esta medio de pago no puede procesar su pago."
918
+
919
+ msgid "Please, inform your email in billing address to use this feature"
920
+ msgstr "Por favor, introduzca su email en la dirección de facturación para utilizar este servicio"
921
+
922
+ msgid "Waiting for the ticket payment."
923
+ msgstr "Esperando el pago del ticket."
924
+
925
+ msgid "here"
926
+ msgstr "aquí"
927
+
928
+ msgid "To reprint the ticket click "
929
+ msgstr "Para imprimir nuevamente el ticket hace clic "
930
+
931
+ msgid "A problem was occurred when processing your payment. Please, try again."
932
+ msgstr "Un problema se produjo al procesar su pago. Por favor, inténtelo de nuevo."
933
+
934
+ msgid "Print the Ticket"
935
+ msgstr "Imprimir el ticket"
936
+
937
+ msgid "Thank you for your order. Please, pay the ticket to get your order approved."
938
+ msgstr "Gracias por su orden. Por favor, realice el pago del ticket para tener su orden aprobada."
939
+
940
+ msgid "Important: The order will be confirmed only after the payment approval."
941
+ msgstr "Importante: La solicitud sólo será confirmada después de la aprobación del pago."
942
+
943
+ msgid "Click [Place order] button. The ticket will be generated and you will be redirected to print it."
944
+ msgstr "Haga clic en el botón [Realizar el pedido]. El ticket será generado y usted será redirigido a imprimirlo."
945
+
946
+ msgid "Please, select the ticket issuer of your preference."
947
+ msgstr "Por favor, seleccione el emisor de su elección."
948
+
949
+ msgid "Needed informations due to brazilian bank compliances numbers 3.461/09, 3.598/12 and 3.656/13 of the Central Bank of Brazil."
950
+ msgstr "Informaciones necesarias debido a las normas bancarias brasileñas números 3.461/09, 3.598/12 y 3.656/13 del Banco Central de Brasil."
951
+
952
+ msgid "NAME"
953
+ msgstr "NOMBRE"
954
+
955
+ msgid "SURNAME"
956
+ msgstr "APELLIDO"
957
+
958
+ msgid "DOCUMENT"
959
+ msgstr "DOCUMENTO"
960
+
961
+ msgid "ADDRESS"
962
+ msgstr "DIRECCIÓN"
963
+
964
+ msgid "NUMBER"
965
+ msgstr "NÚMERO"
966
+
967
+ msgid "CITY"
968
+ msgstr "CIUDAD"
969
+
970
+ msgid "STATE"
971
+ msgstr "ESTADO"
972
+
973
+ msgid "ZIP"
974
+ msgstr "CÓDIGO POSTAL"
975
+
976
+ msgid "You must inform you NAME"
977
+ msgstr "Obligatorio informar su NOMBRE"
978
+
979
+ msgid "You must inform your SURNAME"
980
+ msgstr "Obligatorio informar su APELLIDO"
981
+
982
+ msgid "You must inform your DOCUMENT"
983
+ msgstr "Obligatorio informar su DOCUMENTO"
984
+
985
+ msgid "You must inform your ADDRESS"
986
+ msgstr "Obligatorio informar su DIRECCIÓN"
987
+
988
+ msgid "You must inform your ADDRESS NUMBER"
989
+ msgstr "Obligatorio informar su NÚMERO"
990
+
991
+ msgid "You must inform your CITY"
992
+ msgstr "Obligatorio informar su CIUDAD"
993
+
994
+ msgid "You must inform your STATE"
995
+ msgstr "Obligatorio informar su ESTADO"
996
+
997
+ msgid "You must inform your ZIP"
998
+ msgstr "Obligatorio informar su CÓDIGO POSTAL"
999
+
1000
+ msgid "Fisical Person"
1001
+ msgstr "Persona Física"
1002
+
1003
+ msgid "Legal Person"
1004
+ msgstr "Persona Jurídica"
1005
+
1006
+ msgid "SOCIAL NAME"
1007
+ msgstr "RAZÓN SOCIAL"
1008
+
1009
+ msgid "CNPJ"
1010
+ msgstr "CNPJ"
i18n/languages/woocommerce-mercadopago-es_UY.mo ADDED
Binary file
i18n/languages/woocommerce-mercadopago-es_UY.po ADDED
@@ -0,0 +1,1010 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # WordPress Blank Pot
2
+ # Copyright (C) 2014 ...
3
+ # This file is distributed under the GNU General Public License v2 or later.
4
+ msgid ""
5
+ msgstr ""
6
+ "Project-Id-Version: WordPress Blank Pot v1.0.0\n"
7
+ "POT-Creation-Date: 2016-05-23 14:52-0300\n"
8
+ "PO-Revision-Date: \n"
9
+ "Language-Team: Product Development <translations@example.com>\n"
10
+ "Report-Msgid-Bugs-To: Translator Name <translations@example.com>\n"
11
+ "MIME-Version: 1.0\n"
12
+ "Content-Type: text/plain; charset=UTF-8\n"
13
+ "Content-Transfer-Encoding: 8bit\n"
14
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
+ "X-Textdomain-Support: yesX-Generator: Poedit 1.6.4\n"
16
+ "X-Poedit-SourceCharset: UTF-8\n"
17
+ "X-Poedit-KeywordsList: __;_e;esc_html_e;esc_html_x:1,2c;esc_html__;esc_attr_e;esc_attr_x:1,2c;esc_attr__;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_x:1,2c;_n:1,2;"
18
+ "_n_noop:1,2;__ngettext:1,2;__ngettext_noop:1,2;_c,_nc:4c,1,2\n"
19
+ "X-Poedit-Basepath: ../Documents/woocommerce (MAMP)/wp-content/plugins/woo-mercado-pago-module\n"
20
+ "X-Generator: Poedit 1.8.7\n"
21
+ "Last-Translator: \n"
22
+ "Language: es_UY\n"
23
+ "X-Poedit-SearchPath-0: .\n"
24
+
25
+ msgid "This is the <strong>oficial</strong> module of Mercado Pago for WooCommerce plugin. This module enables WooCommerce to use Mercado Pago as a payment Gateway for purchases made in your e-commerce store."
26
+ msgstr "Este es el módulo <strong>oficial</strong> de Mercado Pago para el plugin WooCommerce. Este módulo habilita el uso de Mercado Pago en WooCommerce como medio de pago para compras realizadas en su tienda virtual."
27
+
28
+ msgid "Mercado Pago Settings"
29
+ msgstr "Configuración de Mercado Pago"
30
+
31
+ msgid "Rate Us"
32
+ msgstr "Calificanos"
33
+
34
+ msgid "Tutorial"
35
+ msgstr "Tutorial"
36
+
37
+ msgid "Report Issue"
38
+ msgstr "Informar Problema"
39
+
40
+ msgid "ERROR: It was not possible to convert the unsupported currency"
41
+ msgstr "ERROR: No fue posible convertir la moneda no soportada"
42
+
43
+ msgid "to"
44
+ msgstr "a"
45
+
46
+ msgid "Currency conversions should be made outside this module."
47
+ msgstr "Las conversiones de monedas deben hacerse fuera de este módulo."
48
+
49
+ msgid "ATTENTION: The currency"
50
+ msgstr "ATENCION: La moneda"
51
+
52
+ msgid "defined in WooCommerce is different from the one used in your credentials country.<br>The currency for transactions in this payment method will be"
53
+ msgstr "definido en WooCommerce es diferente al utilizado por las credenciales de su país.<br>La moneda para las transacciones hechas con este método de pago será"
54
+
55
+ msgid "CURRENCY CONVERTED: Your store is converting currency from"
56
+ msgstr "MONEDA CONVERTIDA: Su tienda está convirtiendo moneda de"
57
+
58
+ msgid "Colombia"
59
+ msgstr "Colombia"
60
+
61
+ msgid "Argentine"
62
+ msgstr "Argentina"
63
+
64
+ msgid "Brazil"
65
+ msgstr "Brasil"
66
+
67
+ msgid "Chile"
68
+ msgstr "Chile"
69
+
70
+ msgid "Mexico"
71
+ msgstr "México"
72
+
73
+ msgid "Uruguay"
74
+ msgstr "Uruguay"
75
+
76
+ msgid "Venezuela"
77
+ msgstr "Venezuela"
78
+
79
+ msgid "Peru"
80
+ msgstr "Perú"
81
+
82
+ msgid "Update WooCommerce order to "
83
+ msgstr "Actualizar la orden de WooCommerce a "
84
+
85
+ msgid "You do not have sufficient permissions to access this page."
86
+ msgstr "No tiene suficientes permisos para acceder a esta página."
87
+
88
+ msgid "WooCommerce is installed and enabled."
89
+ msgstr "WooCommerce está instalado y habilitado."
90
+
91
+ msgid "You don\'t have WooCommerce installed and enabled."
92
+ msgstr "No tiene WooCommerce instalado y habilitado."
93
+
94
+ msgid "Your PHP version is OK."
95
+ msgstr "Su versión de PHP está bien."
96
+
97
+ msgid "Your PHP version do not support this module. You have %s, minimal required is %s."
98
+ msgstr "Su versión de PHP no soporta este módulo. Tienes %s, la mínima requerida es %s."
99
+
100
+ msgid "cURL is installed."
101
+ msgstr "cURL está instalado."
102
+
103
+ msgid "cURL is not installed."
104
+ msgstr "cURL no está instalado."
105
+
106
+ msgid "SSL is missing in your site."
107
+ msgstr "Falta el SSL en su sitio."
108
+
109
+ msgid "Your site has SSL enabled."
110
+ msgstr "Su sitio tiene SSL habilitado."
111
+
112
+ msgid "Basic Checkout"
113
+ msgstr "Checkout Básico"
114
+
115
+ msgid "Custom Checkout"
116
+ msgstr "Checkout Personalizado"
117
+
118
+ msgid "Ticket"
119
+ msgstr "Ticket"
120
+
121
+ msgid "Subscription"
122
+ msgstr "Suscripción"
123
+
124
+ msgid "Configure your Client_id and Client_secret to have access to more options."
125
+ msgstr "Configure su Client_id y Client_secret para tener acceso a más opciones."
126
+
127
+ msgid "Define which type of products your store sells."
128
+ msgstr "Defina qué tipo de productos se vende en su tienda."
129
+
130
+ msgid "Your <strong>client_id</strong> and <strong>client_secret</strong> are <strong>valid</strong> for"
131
+ msgstr "Su <strong>client_id</strong> y <strong>client_secret</strong> son <strong>válidos</strong> para"
132
+
133
+ msgid "Your <strong>client_id</strong> and <strong>client_secret</strong> are <strong>not valid</strong>!"
134
+ msgstr "Su <strong>client_id</strong> y <strong>client_secret</strong> son <strong>inválidas</strong>!"
135
+
136
+ msgid "These credentials are used in <strong>Basic Checkout</strong> and <strong>Subscriptions</strong>. Access it for your country:<br>"
137
+ msgstr "Estas credenciales se utilizan en <strong>Checkout Básico</strong> y <strong>Suscripciones</strong>. Acceda este para su país en:<br>"
138
+
139
+ msgid "or"
140
+ msgstr "o"
141
+
142
+ msgid "Your <strong>public_key</strong> and <strong>access_token</strong> are <strong>valid</strong> for"
143
+ msgstr "Su <strong>public_key</strong> y <strong>access_token</strong> son <strong>válidas</strong> para"
144
+
145
+ msgid "Your <strong>public_key</strong> and <strong>access_token</strong> are <strong>not valid</strong>!"
146
+ msgstr "Su <strong>public_key</strong> y <strong>acceso_token</strong> son <strong>inválidas</strong>!"
147
+
148
+ msgid "These credentials are used in <strong>Custom Checkout</strong> and <strong>Tickets</strong>. Access it for your country:<br>"
149
+ msgstr "Estas credenciales se usan en <strong>Checkout Personalizado</ strong> y <strong>Tickets</strong>. Acceda este para su país en:<br>"
150
+
151
+ msgid "This module enables WooCommerce to use Mercado Pago as payment method for purchases made in your virtual store."
152
+ msgstr "Este módulo permite a WooCommerce usar Mercado Pago como método de pago para compras realizadas en su tienda virtual."
153
+
154
+ msgid "Payment Gateways"
155
+ msgstr "Gateways de Pago"
156
+
157
+ msgid "Basic Checkout & Subscriptions"
158
+ msgstr "Checkout Básico & Suscripciones"
159
+
160
+ msgid "Custom Checkout & Tickets"
161
+ msgstr "Checkout Personalizado & Tickets"
162
+
163
+ msgid "Insert your Mercado Pago Client_id."
164
+ msgstr "Inserta su Client_id de Mercado Pago."
165
+
166
+ msgid "Insert your Mercado Pago Client_secret."
167
+ msgstr "Inserta su" Client_secret de Mercado Pago.
168
+
169
+ msgid "Currency Conversion"
170
+ msgstr "Conversión de Moneda"
171
+
172
+ msgid "If the used currency in WooCommerce is different or not supported by Mercado Pago, convert values of your transactions using Mercado Pago currency ratio. This service may slow down your server as each conversion is made in the checkout moment."
173
+ msgstr "Si la moneda utilizada en WooCommerce es diferente o no es compatible con Mercado Pago, convierta los valores de sus transacciones usando la tasa de moneda de Mercado Pago. Este servicio puede ralentizar su servidor ya que cada conversión se realiza en el momento de la compra."
174
+
175
+ msgid "Insert your Mercado Pago Public key."
176
+ msgstr "Inserta su Public_key de Mercado Pago."
177
+
178
+ msgid "Insert your Mercado Pago Access token."
179
+ msgstr "Inserta su Access_token de Mercado Pago."
180
+
181
+ msgid "Status Mapping of Payment x Order"
182
+ msgstr "Mapeamento de Estados de Pagos x Ordens"
183
+
184
+ msgid "Here you can configure details about Mercado Pago payments and WooCommerce order statuses."
185
+ msgstr "Acá puede configurar los detalles sobre los pagos de Mercado Pago y los estados de los pedidos de WooCommerce."
186
+
187
+ msgid "For status mappings between payment/order you can use the defaults, or check references of %s and %s"
188
+ msgstr "Para las asignaciones de estados entre pago/pedido se puede usar los valores estándares, o consultar las referencias de %s y %s"
189
+
190
+ msgid "Status for PENDING"
191
+ msgstr "Estado para PENDING"
192
+
193
+ msgid "when Mercado Pago updates a payment status to PENDING."
194
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a PENDIENTE."
195
+
196
+ msgid "Status for APPROVED"
197
+ msgstr "Estado para APPROVED"
198
+
199
+ msgid "When Mercado Pago updates a payment status to APPROVED."
200
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a APPROVED."
201
+
202
+ msgid "Status for IN_PROCESS"
203
+ msgstr "Estado para IN_PROCESS"
204
+
205
+ msgid "When Mercado Pago updates a payment status to IN_PROCESS."
206
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a IN_PROCESS."
207
+
208
+ msgid "Status for IN_MEDIATION"
209
+ msgstr "Estado para IN_MEDIATION"
210
+
211
+ msgid "When Mercado Pago updates a payment status to IN_MEDIATION."
212
+ msgstr "Cuando Mercado pago actualiza un estado de pago a IN_MEDIATION."
213
+
214
+ msgid "Status for REJECTED"
215
+ msgstr "Estado para REJECTED"
216
+
217
+ msgid "When Mercado Pago updates a payment status to REJECTED."
218
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a REJECTED."
219
+
220
+ msgid "Status for CANCELLED"
221
+ msgstr "Estado para CANCELLED"
222
+
223
+ msgid "When Mercado Pago updates a payment status to CANCELLED."
224
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a CANCELLED."
225
+
226
+ msgid "Status for REFUNDED"
227
+ msgstr "Estado para REFUNDED"
228
+
229
+ msgid "When Mercado Pago updates a payment status to REFUNDED."
230
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a REFUNDED."
231
+
232
+ msgid "Status for CHARGED_BACK"
233
+ msgstr "Estado para CHARGED_BACK"
234
+
235
+ msgid "When Mercado Pago updates a payment status to CHARGED_BACK."
236
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a CHARGED_BACK."
237
+
238
+ msgid "Store Settings"
239
+ msgstr "Configuración de la Tienda"
240
+
241
+ msgid "Here you can place details about your store."
242
+ msgstr "Acá puede colocar detalles de su tienda."
243
+
244
+ msgid "Statement Descriptor"
245
+ msgstr "Descripción de la Factura"
246
+
247
+ msgid "The description that will be shown in your customer\'s invoice."
248
+ msgstr "La descripción que se muestra en la factura de su cliente."
249
+
250
+ msgid "Store Category"
251
+ msgstr "Categoría de la tienda"
252
+
253
+ msgid "Store Identificator"
254
+ msgstr "Identificador de la tienda"
255
+
256
+ msgid "Please, inform a prefix to your store."
257
+ msgstr "Por favor, informe un prefijo para su tienda."
258
+
259
+ msgid "If you use your Mercado Pago account on multiple stores you should make sure that this prefix is unique as Mercado Pago will not allow orders with same identificators."
260
+ msgstr "Si esta utilizando su cuenta Mercado Pago para múltiples tiendas, asegúrese que este prefijo sea único para no generar pedidos con el mismo identificador."
261
+
262
+ msgid "Test and Debug Options"
263
+ msgstr "Opciones de Prueba y Debug"
264
+
265
+ msgid "Tools for debug and testing your integration."
266
+ msgstr "Herramientas para debug y teste para su integración."
267
+
268
+ msgid "Debug and Log"
269
+ msgstr "Debug y Log"
270
+
271
+ msgid "Enable log (Keep this disabled if you’re in production)."
272
+ msgstr "Habilitar log (Manténgalo desactivado si está en producción)."
273
+
274
+ msgid "Register event logs of Mercado Pago, such as API requests, for"
275
+ msgstr "Registrar los logs de eventos de Mercado Pago, como las solicitudes de API, para"
276
+
277
+ msgid "Tickets"
278
+ msgstr "Tickets"
279
+
280
+ msgid "You can access your logs in "
281
+ msgstr "Puede acceder a sus logs en "
282
+
283
+ msgid "WooCommerce &gt; System Status &gt; Logs"
284
+ msgstr "WooCommerce &gt; Estado del Sistema &gt; Logs"
285
+
286
+ msgid "Files are located in: "
287
+ msgstr "Los archivos se encuentran en: "
288
+
289
+ msgid "Mercado Pago Sandbox"
290
+ msgstr "Sandbox de Mercado Pago"
291
+
292
+ msgid "Enable Mercado Pago Sandbox."
293
+ msgstr "Habilitar el sandbox de Mercado Pago."
294
+
295
+ msgid "This option allows you to test payments inside a sandbox environment."
296
+ msgstr "Esta opción permite simular un flujo de pagos completo en nuestro entorno Sandbox."
297
+
298
+ msgid "Mercado Pago - Basic Checkout"
299
+ msgstr "Mercado Pago - Checkout Básico"
300
+
301
+ msgid "Receive payments in a matter of minutes. We make it easy for you: just tell us what you want to collect and we’ll take care of the rest."
302
+ msgstr "Recibe pagos en cuestión de minutos. Lo hacemos fácil: solo díganos lo que quiere recolectar y nos encargaremos del resto."
303
+
304
+ msgid "It appears that your credentials are not properly configured.<br/>Please, go to %s and configure it."
305
+ msgstr "Parece que sus credenciales no están configuradas correctamente.<br/>Por favor, vaya a %s y configúrelo."
306
+
307
+ msgid "This appears to be an invalid URL."
308
+ msgstr "Esto parece ser una URL inválida."
309
+
310
+ msgid "Where customers should be redirected after a successful purchase. Let blank to redirect to the default store order resume page."
311
+ msgstr "Donde los clientes serán redirigidos después de una compra exitosa. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
312
+
313
+ msgid "Where customers should be redirected after a failed purchase. Let blank to redirect to the default store order resume page."
314
+ msgstr "Donde los clientes serán redirigidos después de una compra rechazada. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
315
+
316
+ msgid "Where customers should be redirected after a pending purchase. Let blank to redirect to the default store order resume page."
317
+ msgstr "Donde los clientes ​serán redirigidos después de una compra pendiente. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
318
+
319
+ msgid "Enable/Disable"
320
+ msgstr "Habilitar/Deshabilitar"
321
+
322
+ msgid "Enable Basic Checkout"
323
+ msgstr "Habilitar Checkout Básico"
324
+
325
+ msgid "Checkout Interface: How checkout is shown"
326
+ msgstr "Interfaz de Checkout: Cómo se muestra el checkout"
327
+
328
+ msgid "Title"
329
+ msgstr "Título"
330
+
331
+ msgid "Title shown to the client in the checkout."
332
+ msgstr "Título mostrado al cliente en el checkout."
333
+
334
+ msgid "Mercado Pago"
335
+ msgstr "Mercado Pago"
336
+
337
+ msgid "Description"
338
+ msgstr "Descripción"
339
+
340
+ msgid "Description shown to the client in the checkout."
341
+ msgstr "Descripción mostrada al cliente en el checkout."
342
+
343
+ msgid "Pay with Mercado Pago"
344
+ msgstr "Pagar con Mercado Pago"
345
+
346
+ msgid "Integration Method"
347
+ msgstr "Método de integración"
348
+
349
+ msgid "Select how your clients should interact with Mercado Pago. Modal Window (inside your store), Redirect (Client is redirected to Mercado Pago), or iFrame (an internal window is embedded to the page layout)."
350
+ msgstr "Seleccione la forma en que sus clientes deben interactuar con Mercado Pago. Ventana Modal (Dentro de su tienda), Redireccionamiento (El cliente es redireccionado a Mercado Pago), o iFrame (Ventana de pago incorporada a su página)."
351
+
352
+ msgid "iFrame"
353
+ msgstr "iFrame"
354
+
355
+ msgid "Modal Window"
356
+ msgstr "Ventana Modal"
357
+
358
+ msgid "Redirect"
359
+ msgstr "Redireccionamiento"
360
+
361
+ msgid "iFrame Width"
362
+ msgstr "Ancho del iFrame"
363
+
364
+ msgid "If your integration method is iFrame, please inform the payment iFrame width."
365
+ msgstr "Si su modo de apertura es iFrame, indique el ancho del iFrame."
366
+
367
+ msgid "iFrame Height"
368
+ msgstr "Alto del iFrame"
369
+
370
+ msgid "If your integration method is iFrame, please inform the payment iFrame height."
371
+ msgstr "Si su modo de apertura es iFrame, indique el alto del iFrame."
372
+
373
+ msgid "Checkout Navigation: How checkout redirections will behave"
374
+ msgstr "Navegación de Checkout: Cómo se comportarán las redirecciones de pago"
375
+
376
+ msgid "Auto Return"
377
+ msgstr "Redirección automática"
378
+
379
+ msgid "Automatic Return After Payment"
380
+ msgstr "Redirección Automática luego del pago"
381
+
382
+ msgid "After the payment, client is automatically redirected."
383
+ msgstr "Después del pago, el cliente será redireccionado automáticamente."
384
+
385
+ msgid "Sucess URL"
386
+ msgstr "URL de Éxito"
387
+
388
+ msgid "Failure URL"
389
+ msgstr "URL de Pago Rechazado"
390
+
391
+ msgid "Pending URL"
392
+ msgstr "URL de Pago Pendiente"
393
+
394
+ msgid "Payment Options: How payment options behaves"
395
+ msgstr "Opciones de pago: Cómo se comportan las opciones de pago"
396
+
397
+ msgid "Max installments"
398
+ msgstr "Número máximo de cuotas"
399
+
400
+ msgid "Select the max number of installments for your customers."
401
+ msgstr "Seleccione el número máximo de cuotas disponibles para sus clientes."
402
+
403
+ msgid "1x installment"
404
+ msgstr "1x cuota"
405
+
406
+ msgid "2x installmens"
407
+ msgstr "2x cuotas"
408
+
409
+ msgid "3x installmens"
410
+ msgstr "3x cuotas"
411
+
412
+ msgid "4x installmens"
413
+ msgstr "4x cuotas"
414
+
415
+ msgid "5x installmens"
416
+ msgstr "5x cuotas"
417
+
418
+ msgid "6x installmens"
419
+ msgstr "6x cuotas"
420
+
421
+ msgid "10x installmens"
422
+ msgstr "10x cuotas"
423
+
424
+ msgid "12x installmens"
425
+ msgstr "12x cuotas"
426
+
427
+ msgid "15x installmens"
428
+ msgstr "15x cuotas"
429
+
430
+ msgid "18x installmens"
431
+ msgstr "18x cuotas"
432
+
433
+ msgid "24x installmens"
434
+ msgstr "24x cuotas"
435
+
436
+ msgid "Exclude Payment Methods"
437
+ msgstr "Excluir medios de pago"
438
+
439
+ msgid "Select the payment methods that you <strong>don\'t</strong> want to receive with Mercado Pago."
440
+ msgstr "Selecione los medios de pago que <strong>no</strong> desea aceptar con Mercado Pago."
441
+
442
+ msgid "Discount by Gateway"
443
+ msgstr "Descuento por Gateway"
444
+
445
+ msgid "Give a percentual (0 to 100) discount for your customers if they use this payment gateway."
446
+ msgstr "Dé un descuento porcentual para sus clientes si utilizan este medio de pago."
447
+
448
+ msgid "Two Cards Mode"
449
+ msgstr "Modo de Dos Tarjetas"
450
+
451
+ msgid "Payments with Two Cards"
452
+ msgstr "Pagos con Dos Tarjetas"
453
+
454
+ msgid "Your customer will be able to use two different cards to pay the order."
455
+ msgstr "Su cliente será capaz de utilizar dos tarjetas diferentes para pagar el pedido."
456
+
457
+ msgid "Thank you for your order. Please, proceed with your payment clicking in the bellow button."
458
+ msgstr "Gracias por su compra. Por favor, prosiga a la página de pago haciendo click en el botón de abajo."
459
+
460
+ msgid "Cancel order &amp; Clear cart"
461
+ msgstr "Cancelar &amp; Limpiar carrito"
462
+
463
+ msgid "Thank you for your order. Proceed with your payment completing the following information."
464
+ msgstr "Gracias por su compra. Prosiga con su pago completando la información abajo."
465
+
466
+ msgid "An error occurred when proccessing your payment. Please try again or contact us for assistence."
467
+ msgstr "Se ha producido un error en el procesamiento de su pago. Por favor, inténtelo de nuevo o póngase en contacto con nosotros para Asistencia."
468
+
469
+ msgid "Shipping service used by store"
470
+ msgstr "Servicio de envío utilizado por la tienda"
471
+
472
+ msgid "Discount of"
473
+ msgstr "Descuento de"
474
+
475
+ msgid "Mercado Pago Request Failure"
476
+ msgstr "La solicitud de Mercado Pago ha fallado"
477
+
478
+ msgid "Payer email"
479
+ msgstr "Email del comprador"
480
+
481
+ msgid "Payment type"
482
+ msgstr "Medio de pago"
483
+
484
+ msgid "Payment approved."
485
+ msgstr "Pago aprobado."
486
+
487
+ msgid "Customer haven\'t paid yet."
488
+ msgstr "El cliente todavía no efectuó el pago."
489
+
490
+ msgid "Payment under review."
491
+ msgstr "El pago está pendiente de revisión."
492
+
493
+ msgid "The payment was refused. The customer can try again."
494
+ msgstr "El pago fue rechazado. El cliente puede intentar nuevamente."
495
+
496
+ msgid "The payment was refunded to the customer."
497
+ msgstr "El pago fue devuelto al cliente."
498
+
499
+ msgid "The payment was cancelled."
500
+ msgstr "El pago fue cancelado."
501
+
502
+ msgid "The payment is under mediation or it was charged-back."
503
+ msgstr "El pago esta en mediación o la compra fue desconocida por el cliente."
504
+
505
+ msgid "Mercado Pago - Custom Checkout"
506
+ msgstr "Mercado Pago - Checkout Personalizado"
507
+
508
+ msgid "We give you the possibility to adapt the payment experience you want to offer 100% in your website, mobile app or anywhere you want. You can build the design that best fits your business model, aiming to maximize conversion."
509
+ msgstr "Le ofrecemos la posibilidad de adaptar la experiencia de pago que desea ofrecer 100% en su sitio web, en su aplicación móvil o en cualquier lugar que desee. Puede crear el diseño que mejor se adapte a su modelo de negocio, con el objetivo de maximizar la conversión."
510
+
511
+ msgid "Enable Custom Checkout"
512
+ msgstr "Habilitar Checkout Personalizado"
513
+
514
+ msgid "Coupons"
515
+ msgstr "Cupones"
516
+
517
+ msgid "Enable coupons of discounts"
518
+ msgstr "Activar los cupones de descuento"
519
+
520
+ msgid "If there is a Mercado Pago campaign, allow your store to give discounts to customers."
521
+ msgstr "Si hay una campaña de Mercado Pago, permitir a su tienda hacer descuentos para los clientes."
522
+
523
+ msgid "Binary Mode"
524
+ msgstr "Modo binario"
525
+
526
+ msgid "Enable binary mode for checkout status"
527
+ msgstr "Activar el modo binario para el estado del checkout"
528
+
529
+ msgid "When charging a credit card, only [approved] or [reject] status will be taken."
530
+ msgstr "Al cargar una tarjeta de crédito, sólo los estados [aprobado] o [rechazar] seran tomados."
531
+
532
+ msgid "This service allows you to subscribe customers to subscription plans."
533
+ msgstr "Este servicio le permite suscribir los clientes a planes de suscripción."
534
+
535
+ msgid "It appears that your country is not supported for this solution.<br/>Please, use another payment method or go to %s to use another credential."
536
+ msgstr "Parece que su país no es compatible con esta solución.<br/>Por favor, use otro método de pago o vaya a %s para usar otra credencial."
537
+
538
+ msgid "Enable Subscription"
539
+ msgstr "Habilitar Suscripción"
540
+
541
+ msgid "Instant Payment Notification (IPN) URL"
542
+ msgstr "URL da Notificación Instantanea de Pago (IPN)"
543
+
544
+ msgid "For this solution, you need to configure your IPN URL. You can access it in your account for your specific country in:"
545
+ msgstr "Para esta solución, usted debe configurar su URL de IPN. Puede acceder a ella en su cuenta para su específico país en:"
546
+
547
+ msgid "Your IPN URL to receive instant payment notifications is"
548
+ msgstr "Su URL de IPN para recibir notificaciones instantáneas de pago es"
549
+
550
+ msgid "Mercado Pago - Ticket"
551
+ msgstr "Mercado Pago - Ticket"
552
+
553
+ msgid "UNDER BUILDING..."
554
+ msgstr "UN CONSTRUCIÓN..."
555
+
556
+ msgid "Enable Ticket Payment Method"
557
+ msgstr "Habilitar Pago con Ticket"
558
+
559
+ msgid "Ticket Interface: How checkout is shown"
560
+ msgstr "Interfaz de Tickets: Cómo se muestra el checkout"
561
+
562
+ msgid "Title shown to the client in the ticket."
563
+ msgstr "Título mostrado al cliente en el ticket."
564
+
565
+ msgid "Description shown to the client in the ticket."
566
+ msgstr "Descripción mostrada al cliente en el ticket."
567
+
568
+ msgid "Stock Reduce"
569
+ msgstr "Reducir Inventario"
570
+
571
+ msgid "Reduce Stock in Order Generation"
572
+ msgstr "Reducir Inventario en la Orden"
573
+
574
+ msgid "Enable this to reduce the stock on order creation. Disable this to reduce <strong>after</strong> the payment approval."
575
+ msgstr "Activar esta opción para reducir el inventario mediante la creación de un pedido. Desactivar para reducir sólo <strong>después</strong> de la aprobación del pago."
576
+
577
+ msgid "Mercado Envios is a shipping method available only for payments with Mercado Pago."
578
+ msgstr "Mercado Envios es un método de envío disponible sólo para los pagos con Mercado Pago."
579
+
580
+ msgid "Free Shipping"
581
+ msgstr "Envío Gratuito"
582
+
583
+ msgid "Day"
584
+ msgstr "Día"
585
+
586
+ msgid "Days"
587
+ msgstr "Días"
588
+
589
+ msgid "Enable the two shipping methods the Mercado Envios (Express and Normal) for the proper functioning of the module."
590
+ msgstr "Habilitar los dos métodos de envío de Mercado Envios (Express y Normal) para el correcto funcionamiento del módulo."
591
+
592
+ msgid "Mercado Envios"
593
+ msgstr "Mercado Envios"
594
+
595
+ msgid "This controls the title which the user sees during checkout."
596
+ msgstr "Controla el título que se muestra al cliente durante el pago."
597
+
598
+ msgid "Enable free shipping for this shipping method"
599
+ msgstr "Habilitar el envío gratuito para este método de envío"
600
+
601
+ msgid "Delivery Time"
602
+ msgstr "Tiempo de Entrega"
603
+
604
+ msgid "Show estimated delivery time"
605
+ msgstr "Mostrar el tiempo estimado de entrega"
606
+
607
+ msgid "Display the estimated delivery time in working days."
608
+ msgstr "Mostrar el tiempo estimado de entrega en días laborables."
609
+
610
+ msgid "Tag ready to print"
611
+ msgstr "Etiqueta lista para imprimir"
612
+
613
+ msgid "Tag printed"
614
+ msgstr "Etiqueta impresa"
615
+
616
+ msgid "Unsuccessful"
617
+ msgstr "Fracasado"
618
+
619
+ msgid "Delayed shipping"
620
+ msgstr "Envío retrasado"
621
+
622
+ msgid "Missing recipient for delivery"
623
+ msgstr "Destinatario ausente para envío"
624
+
625
+ msgid "In return to sender"
626
+ msgstr "Volviendo al remitente"
627
+
628
+ msgid "Buyer initiates complaint and requested a refund."
629
+ msgstr "El comprador ha iniciado una discusión y pide un extorno."
630
+
631
+ msgid "Order"
632
+ msgstr "Pedido"
633
+
634
+ msgid "Mercado Envios Tracking ID"
635
+ msgstr "Código de rastreamiento de Mercado Envíos"
636
+
637
+ msgid "Hello,"
638
+ msgstr "Hola,"
639
+
640
+ msgid "Your order"
641
+ msgstr "Su pedido"
642
+
643
+ msgid "made in"
644
+ msgstr "hecho en"
645
+
646
+ msgid "used Mercado Envios as its shipment method."
647
+ msgstr "utilizó el Mercado Envíos como su medio de envío."
648
+
649
+ msgid "You can track it with the following Tracking ID:"
650
+ msgstr "Usted puedes rastrearlo con lo siguiente código de rastreamiento:"
651
+
652
+ msgid "Best regards."
653
+ msgstr "Saludos."
654
+
655
+ msgid "Mercado Pago Subscription"
656
+ msgstr "Suscripción Mercado Pago"
657
+
658
+ msgid "Payment ID:"
659
+ msgstr "ID de Pago:"
660
+
661
+ msgid "Amount:"
662
+ msgstr "Cantidad:"
663
+
664
+ msgid "This operation could not be completed."
665
+ msgstr "Esta operación no se puede completar."
666
+
667
+ msgid "Operation successfully completed."
668
+ msgstr "La operación se realizó con éxito."
669
+
670
+ msgid "Refund Payment"
671
+ msgstr "Reembolso de Pago"
672
+
673
+ msgid "Cancel Payment"
674
+ msgstr "Cancelar Pago"
675
+
676
+ msgid "Mercado Pago - Subscription"
677
+ msgstr "Mercado Pago - Suscripcións"
678
+
679
+ msgid "A recurrent product is a signature that should be bought isolated in your cart. Please, create separated orders."
680
+ msgstr "Un producto recurrente es una suscripción que debe adquirirse por separado en su carrito. Por favor, hace los pedidos por separado."
681
+
682
+ msgid "Recurrent Product"
683
+ msgstr "Producto Recurrente"
684
+
685
+ msgid "Frequency"
686
+ msgstr "Frecuencia"
687
+
688
+ msgid "Amount of time (in days or months) for the execution of the next payment."
689
+ msgstr "Cantidad de tiempo (en días o meses) para la ejecución del próximo pago."
690
+
691
+ msgid "End date"
692
+ msgstr "Fecha final"
693
+
694
+ msgid "Deadline to generate new charges. Defaults to never if blank."
695
+ msgstr "Fecha límite para generar nuevos cargos. De forma predeterminada como nunca, si está en blanco."
696
+
697
+ msgid "Months"
698
+ msgstr "Meses"
699
+
700
+ msgid "Indicates the period of time."
701
+ msgstr "Indica el período de tiempo."
702
+
703
+ msgid "Make this product a subscription."
704
+ msgstr "Hacer deste producto una suscripción."
705
+
706
+ msgid "Frequency type"
707
+ msgstr "Tipo de frecuencia"
708
+
709
+ msgid "Subscribe with Mercado Pago"
710
+ msgstr "Suscribirse con Mercado Pago"
711
+
712
+ msgid "Woo Mercado Pago Module depends on the last version of %s to execute!"
713
+ msgstr "Woo Mercado Pago Module depende de la última versión de %s para ejecutarse!"
714
+
715
+ msgid "Tracking code:"
716
+ msgstr "Código de rastreamiento:"
717
+
718
+ msgid "Tag:"
719
+ msgstr "Etiqueta:"
720
+
721
+ msgid "Shipping is pending"
722
+ msgstr "Envío pendiente"
723
+
724
+ msgid "Print"
725
+ msgstr "Imprimir"
726
+
727
+ msgid "Cancel Order"
728
+ msgstr "Cancelar la Compra"
729
+
730
+ msgid "Total of your purchase:"
731
+ msgstr "Total de su compra:"
732
+
733
+ msgid "Total of your purchase with discount:"
734
+ msgstr "Total de su compra con descuento:"
735
+
736
+ msgid "*Uppon payment approval"
737
+ msgstr "*Con la aprobación de pago"
738
+
739
+ msgid "Terms and Conditions of Use"
740
+ msgstr "Términos y Condiciones de Uso"
741
+
742
+ msgid "with discount from"
743
+ msgstr "con descuento de"
744
+
745
+ msgid "You will save"
746
+ msgstr "Usted ahorrará"
747
+
748
+ msgid "Please, inform your coupon code"
749
+ msgstr "Por favor, introduzca el código de su cupón"
750
+
751
+ msgid "Payment converted from"
752
+ msgstr "Pago convertido de"
753
+
754
+ msgid "Installments"
755
+ msgstr "Cuotas"
756
+
757
+ msgid "Choose"
758
+ msgstr "Seleccione"
759
+
760
+ msgid "Parameter cardIssuerId can not be null/empty"
761
+ msgstr "Parámetro [Emisor] no puede ser nulo/vacío"
762
+
763
+ msgid "Issuer"
764
+ msgstr "Emisor"
765
+
766
+ msgid "Invalid Document Number"
767
+ msgstr "Número del Documento inválido"
768
+
769
+ msgid "Parameter docNumber can not be null/empty"
770
+ msgstr "Parámetro [Número del Documento] no puede ser nulo/vacío"
771
+
772
+ msgid "Document number"
773
+ msgstr "Número de Documento"
774
+
775
+ msgid "Invalid Document Type"
776
+ msgstr "Tipo de Documento inválido"
777
+
778
+ msgid "Parameter docType can not be null/empty"
779
+ msgstr "Parámetro [Tipo de Documento] no puede ser nulo/vacío"
780
+
781
+ msgid "Document Type"
782
+ msgstr "Tipo de Documento"
783
+
784
+ msgid "Invalid Card Holder Name"
785
+ msgstr "Nombre del titular de la tarjeta inválido"
786
+
787
+ msgid "Parameter cardholderName can not be null/empty"
788
+ msgstr "Parámetro [Nombre del titular] no puede ser nulo/vacío"
789
+
790
+ msgid "Card holder name"
791
+ msgstr "Nombre del titular de la tarjeta"
792
+
793
+ msgid "Invalid Expiration Date"
794
+ msgstr "Fecha de expiración inválida"
795
+
796
+ msgid "Year"
797
+ msgstr "Año"
798
+
799
+ msgid "Expiration year"
800
+ msgstr "Año de expiración"
801
+
802
+ msgid "Month"
803
+ msgstr "Mes"
804
+
805
+ msgid "Expiration month"
806
+ msgstr "Mes de expiración"
807
+
808
+ msgid "Invalid Card Number"
809
+ msgstr "Número de tarjeta inválido"
810
+
811
+ msgid "Parameter cardNumber can not be null/empty"
812
+ msgstr "Parámetro [Número de tarjeta] no puede ser nulo/vacío"
813
+
814
+ msgid "Credit card number"
815
+ msgstr "Número de tarjeta de crédito"
816
+
817
+ msgid "Parameter securityCode can not be null/empty"
818
+ msgstr "Parámetro [Código de seguridad] no puede ser nulo/vacío"
819
+
820
+ msgid "Invalid Security Code"
821
+ msgstr "Código de seguridad inválido"
822
+
823
+ msgid "Security code"
824
+ msgstr "Código de seguridad"
825
+
826
+ msgid "Other Card"
827
+ msgstr "Otra Tarjeta"
828
+
829
+ msgid "Other Cards"
830
+ msgstr "Otras Tarjetas"
831
+
832
+ msgid "ended in"
833
+ msgstr "terminado en"
834
+
835
+ msgid "Your Card"
836
+ msgstr "Sus Tarjetas"
837
+
838
+ msgid "Payment Method"
839
+ msgstr "Medios de Pago"
840
+
841
+ msgid "Apply"
842
+ msgstr "Aplicar"
843
+
844
+ msgid "Remove"
845
+ msgstr "Eliminar"
846
+
847
+ msgid "Discount Coupon"
848
+ msgstr "Cupón de Descuento"
849
+
850
+ msgid "Mercado Pago - Credit Card"
851
+ msgstr "Mercado Pago - Tarjeta de Crédito"
852
+
853
+ msgid "Check your order resume"
854
+ msgstr "Ver su hoja de pedido"
855
+
856
+ msgid "Your payment was refused. You can try again."
857
+ msgstr "Su pago fue rechazado. Puede intentarlo de nuevo."
858
+
859
+ msgid "Click to try again"
860
+ msgstr "Haga clic para intentarlo de nuevo"
861
+
862
+ msgid "A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?"
863
+ msgstr "Un problema se produjo al procesar su pago. ¿Esta seguro que ha rellenado correctamente toda la información en el formulario de checkout?"
864
+
865
+ msgid "Discount provided by store"
866
+ msgstr "Descuento dado por la tienda"
867
+
868
+ msgid "Discount for %s coupon"
869
+ msgstr "Descuento para el cupón %s"
870
+
871
+ msgid "Done, your payment was accredited!"
872
+ msgstr "Listo, su pago ha sido aceptado!"
873
+
874
+ msgid "We are processing the payment. In less than an hour we will e-mail you the results."
875
+ msgstr "Estamos procesando su pago. En menos de una hora le enviaremos el resultado por correo electrónico."
876
+
877
+ msgid "We are processing the payment. In less than 2 business days we will tell you by e-mail whether it has accredited or we need more information."
878
+ msgstr "Estamos procesando su pago. En menos de 2 días le enviaremos por correo electrónico si se ha aprobado el pago o si se necesita información adicional."
879
+
880
+ msgid "Check the card number."
881
+ msgstr "Compruebe el número de tarjeta."
882
+
883
+ msgid "Check the expiration date."
884
+ msgstr "Compruebe la fecha de expiración."
885
+
886
+ msgid "Check the information."
887
+ msgstr "Compruebe la información informada."
888
+
889
+ msgid "Check the security code."
890
+ msgstr "Compruebe el código de seguridad informado."
891
+
892
+ msgid "We could not process your payment."
893
+ msgstr "No se puede procesar su pago."
894
+
895
+ msgid "You must authorize the payment of your orders."
896
+ msgstr "Usted debe autorizar los pagos de sus órdenes."
897
+
898
+ msgid "Call your card issuer to activate your card. The phone is on the back of your card."
899
+ msgstr "Póngase en contacto con el emisor de su tarjeta para activarla. El teléfono se encuentra en la parte posterior de su tarjeta."
900
+
901
+ msgid "You already made a payment for that amount. If you need to repay, use another card or other payment method."
902
+ msgstr "Usted ya realizó un pago de este importe. Si tiene que pagar de nuevo, utilizar otra tarjeta u otro medio de pago."
903
+
904
+ msgid "Your payment was rejected. Choose another payment method. We recommend cash."
905
+ msgstr "Su pago fue rechazado. Por favor seleccione otro medio de pago. Se recomienda en efectivo."
906
+
907
+ msgid "Your payment do not have sufficient funds."
908
+ msgstr "Su pago no tiene fondos suficientes."
909
+
910
+ msgid "Your payment does not process payments with selected installments."
911
+ msgstr "El pago no puede procesar la cuota seleccionada."
912
+
913
+ msgid "You have reached the limit of allowed attempts. Choose another card or another payment method."
914
+ msgstr "Has alcanzado el límite de intentos permitidos. Elija otra tarjeta u otro medio de pago."
915
+
916
+ msgid "This payment method did not process the payment."
917
+ msgstr "Esta medio de pago no puede procesar su pago."
918
+
919
+ msgid "Please, inform your email in billing address to use this feature"
920
+ msgstr "Por favor, introduzca su email en la dirección de facturación para utilizar este servicio"
921
+
922
+ msgid "Waiting for the ticket payment."
923
+ msgstr "Esperando el pago del ticket."
924
+
925
+ msgid "here"
926
+ msgstr "aquí"
927
+
928
+ msgid "To reprint the ticket click "
929
+ msgstr "Para imprimir nuevamente el ticket hace clic "
930
+
931
+ msgid "A problem was occurred when processing your payment. Please, try again."
932
+ msgstr "Un problema se produjo al procesar su pago. Por favor, inténtelo de nuevo."
933
+
934
+ msgid "Print the Ticket"
935
+ msgstr "Imprimir el ticket"
936
+
937
+ msgid "Thank you for your order. Please, pay the ticket to get your order approved."
938
+ msgstr "Gracias por su orden. Por favor, realice el pago del ticket para tener su orden aprobada."
939
+
940
+ msgid "Important: The order will be confirmed only after the payment approval."
941
+ msgstr "Importante: La solicitud sólo será confirmada después de la aprobación del pago."
942
+
943
+ msgid "Click [Place order] button. The ticket will be generated and you will be redirected to print it."
944
+ msgstr "Haga clic en el botón [Realizar el pedido]. El ticket será generado y usted será redirigido a imprimirlo."
945
+
946
+ msgid "Please, select the ticket issuer of your preference."
947
+ msgstr "Por favor, seleccione el emisor de su elección."
948
+
949
+ msgid "Needed informations due to brazilian bank compliances numbers 3.461/09, 3.598/12 and 3.656/13 of the Central Bank of Brazil."
950
+ msgstr "Informaciones necesarias debido a las normas bancarias brasileñas números 3.461/09, 3.598/12 y 3.656/13 del Banco Central de Brasil."
951
+
952
+ msgid "NAME"
953
+ msgstr "NOMBRE"
954
+
955
+ msgid "SURNAME"
956
+ msgstr "APELLIDO"
957
+
958
+ msgid "DOCUMENT"
959
+ msgstr "DOCUMENTO"
960
+
961
+ msgid "ADDRESS"
962
+ msgstr "DIRECCIÓN"
963
+
964
+ msgid "NUMBER"
965
+ msgstr "NÚMERO"
966
+
967
+ msgid "CITY"
968
+ msgstr "CIUDAD"
969
+
970
+ msgid "STATE"
971
+ msgstr "ESTADO"
972
+
973
+ msgid "ZIP"
974
+ msgstr "CÓDIGO POSTAL"
975
+
976
+ msgid "You must inform you NAME"
977
+ msgstr "Obligatorio informar su NOMBRE"
978
+
979
+ msgid "You must inform your SURNAME"
980
+ msgstr "Obligatorio informar su APELLIDO"
981
+
982
+ msgid "You must inform your DOCUMENT"
983
+ msgstr "Obligatorio informar su DOCUMENTO"
984
+
985
+ msgid "You must inform your ADDRESS"
986
+ msgstr "Obligatorio informar su DIRECCIÓN"
987
+
988
+ msgid "You must inform your ADDRESS NUMBER"
989
+ msgstr "Obligatorio informar su NÚMERO"
990
+
991
+ msgid "You must inform your CITY"
992
+ msgstr "Obligatorio informar su CIUDAD"
993
+
994
+ msgid "You must inform your STATE"
995
+ msgstr "Obligatorio informar su ESTADO"
996
+
997
+ msgid "You must inform your ZIP"
998
+ msgstr "Obligatorio informar su CÓDIGO POSTAL"
999
+
1000
+ msgid "Fisical Person"
1001
+ msgstr "Persona Física"
1002
+
1003
+ msgid "Legal Person"
1004
+ msgstr "Persona Jurídica"
1005
+
1006
+ msgid "SOCIAL NAME"
1007
+ msgstr "RAZÓN SOCIAL"
1008
+
1009
+ msgid "CNPJ"
1010
+ msgstr "CNPJ"
i18n/languages/woocommerce-mercadopago-es_VE.mo ADDED
Binary file
i18n/languages/woocommerce-mercadopago-es_VE.po ADDED
@@ -0,0 +1,1010 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # WordPress Blank Pot
2
+ # Copyright (C) 2014 ...
3
+ # This file is distributed under the GNU General Public License v2 or later.
4
+ msgid ""
5
+ msgstr ""
6
+ "Project-Id-Version: WordPress Blank Pot v1.0.0\n"
7
+ "POT-Creation-Date: 2016-05-23 14:52-0300\n"
8
+ "PO-Revision-Date: \n"
9
+ "Language-Team: Product Development <translations@example.com>\n"
10
+ "Report-Msgid-Bugs-To: Translator Name <translations@example.com>\n"
11
+ "MIME-Version: 1.0\n"
12
+ "Content-Type: text/plain; charset=UTF-8\n"
13
+ "Content-Transfer-Encoding: 8bit\n"
14
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
+ "X-Textdomain-Support: yesX-Generator: Poedit 1.6.4\n"
16
+ "X-Poedit-SourceCharset: UTF-8\n"
17
+ "X-Poedit-KeywordsList: __;_e;esc_html_e;esc_html_x:1,2c;esc_html__;esc_attr_e;esc_attr_x:1,2c;esc_attr__;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_x:1,2c;_n:1,2;"
18
+ "_n_noop:1,2;__ngettext:1,2;__ngettext_noop:1,2;_c,_nc:4c,1,2\n"
19
+ "X-Poedit-Basepath: ../Documents/woocommerce (MAMP)/wp-content/plugins/woo-mercado-pago-module\n"
20
+ "X-Generator: Poedit 1.8.7\n"
21
+ "Last-Translator: \n"
22
+ "Language: es_VE\n"
23
+ "X-Poedit-SearchPath-0: .\n"
24
+
25
+ msgid "This is the <strong>oficial</strong> module of Mercado Pago for WooCommerce plugin. This module enables WooCommerce to use Mercado Pago as a payment Gateway for purchases made in your e-commerce store."
26
+ msgstr "Este es el módulo <strong>oficial</strong> de Mercado Pago para el plugin WooCommerce. Este módulo habilita el uso de Mercado Pago en WooCommerce como medio de pago para compras realizadas en su tienda virtual."
27
+
28
+ msgid "Mercado Pago Settings"
29
+ msgstr "Configuración de Mercado Pago"
30
+
31
+ msgid "Rate Us"
32
+ msgstr "Calificanos"
33
+
34
+ msgid "Tutorial"
35
+ msgstr "Tutorial"
36
+
37
+ msgid "Report Issue"
38
+ msgstr "Informar Problema"
39
+
40
+ msgid "ERROR: It was not possible to convert the unsupported currency"
41
+ msgstr "ERROR: No fue posible convertir la moneda no soportada"
42
+
43
+ msgid "to"
44
+ msgstr "a"
45
+
46
+ msgid "Currency conversions should be made outside this module."
47
+ msgstr "Las conversiones de monedas deben hacerse fuera de este módulo."
48
+
49
+ msgid "ATTENTION: The currency"
50
+ msgstr "ATENCION: La moneda"
51
+
52
+ msgid "defined in WooCommerce is different from the one used in your credentials country.<br>The currency for transactions in this payment method will be"
53
+ msgstr "definido en WooCommerce es diferente al utilizado por las credenciales de su país.<br>La moneda para las transacciones hechas con este método de pago será"
54
+
55
+ msgid "CURRENCY CONVERTED: Your store is converting currency from"
56
+ msgstr "MONEDA CONVERTIDA: Su tienda está convirtiendo moneda de"
57
+
58
+ msgid "Colombia"
59
+ msgstr "Colombia"
60
+
61
+ msgid "Argentine"
62
+ msgstr "Argentina"
63
+
64
+ msgid "Brazil"
65
+ msgstr "Brasil"
66
+
67
+ msgid "Chile"
68
+ msgstr "Chile"
69
+
70
+ msgid "Mexico"
71
+ msgstr "México"
72
+
73
+ msgid "Uruguay"
74
+ msgstr "Uruguay"
75
+
76
+ msgid "Venezuela"
77
+ msgstr "Venezuela"
78
+
79
+ msgid "Peru"
80
+ msgstr "Perú"
81
+
82
+ msgid "Update WooCommerce order to "
83
+ msgstr "Actualizar la orden de WooCommerce a "
84
+
85
+ msgid "You do not have sufficient permissions to access this page."
86
+ msgstr "No tiene suficientes permisos para acceder a esta página."
87
+
88
+ msgid "WooCommerce is installed and enabled."
89
+ msgstr "WooCommerce está instalado y habilitado."
90
+
91
+ msgid "You don\'t have WooCommerce installed and enabled."
92
+ msgstr "No tiene WooCommerce instalado y habilitado."
93
+
94
+ msgid "Your PHP version is OK."
95
+ msgstr "Su versión de PHP está bien."
96
+
97
+ msgid "Your PHP version do not support this module. You have %s, minimal required is %s."
98
+ msgstr "Su versión de PHP no soporta este módulo. Tienes %s, la mínima requerida es %s."
99
+
100
+ msgid "cURL is installed."
101
+ msgstr "cURL está instalado."
102
+
103
+ msgid "cURL is not installed."
104
+ msgstr "cURL no está instalado."
105
+
106
+ msgid "SSL is missing in your site."
107
+ msgstr "Falta el SSL en su sitio."
108
+
109
+ msgid "Your site has SSL enabled."
110
+ msgstr "Su sitio tiene SSL habilitado."
111
+
112
+ msgid "Basic Checkout"
113
+ msgstr "Checkout Básico"
114
+
115
+ msgid "Custom Checkout"
116
+ msgstr "Checkout Personalizado"
117
+
118
+ msgid "Ticket"
119
+ msgstr "Ticket"
120
+
121
+ msgid "Subscription"
122
+ msgstr "Suscripción"
123
+
124
+ msgid "Configure your Client_id and Client_secret to have access to more options."
125
+ msgstr "Configure su Client_id y Client_secret para tener acceso a más opciones."
126
+
127
+ msgid "Define which type of products your store sells."
128
+ msgstr "Defina qué tipo de productos se vende en su tienda."
129
+
130
+ msgid "Your <strong>client_id</strong> and <strong>client_secret</strong> are <strong>valid</strong> for"
131
+ msgstr "Su <strong>client_id</strong> y <strong>client_secret</strong> son <strong>válidos</strong> para"
132
+
133
+ msgid "Your <strong>client_id</strong> and <strong>client_secret</strong> are <strong>not valid</strong>!"
134
+ msgstr "Su <strong>client_id</strong> y <strong>client_secret</strong> son <strong>inválidas</strong>!"
135
+
136
+ msgid "These credentials are used in <strong>Basic Checkout</strong> and <strong>Subscriptions</strong>. Access it for your country:<br>"
137
+ msgstr "Estas credenciales se utilizan en <strong>Checkout Básico</strong> y <strong>Suscripciones</strong>. Acceda este para su país en:<br>"
138
+
139
+ msgid "or"
140
+ msgstr "o"
141
+
142
+ msgid "Your <strong>public_key</strong> and <strong>access_token</strong> are <strong>valid</strong> for"
143
+ msgstr "Su <strong>public_key</strong> y <strong>access_token</strong> son <strong>válidas</strong> para"
144
+
145
+ msgid "Your <strong>public_key</strong> and <strong>access_token</strong> are <strong>not valid</strong>!"
146
+ msgstr "Su <strong>public_key</strong> y <strong>acceso_token</strong> son <strong>inválidas</strong>!"
147
+
148
+ msgid "These credentials are used in <strong>Custom Checkout</strong> and <strong>Tickets</strong>. Access it for your country:<br>"
149
+ msgstr "Estas credenciales se usan en <strong>Checkout Personalizado</ strong> y <strong>Tickets</strong>. Acceda este para su país en:<br>"
150
+
151
+ msgid "This module enables WooCommerce to use Mercado Pago as payment method for purchases made in your virtual store."
152
+ msgstr "Este módulo permite a WooCommerce usar Mercado Pago como método de pago para compras realizadas en su tienda virtual."
153
+
154
+ msgid "Payment Gateways"
155
+ msgstr "Gateways de Pago"
156
+
157
+ msgid "Basic Checkout & Subscriptions"
158
+ msgstr "Checkout Básico & Suscripciones"
159
+
160
+ msgid "Custom Checkout & Tickets"
161
+ msgstr "Checkout Personalizado & Tickets"
162
+
163
+ msgid "Insert your Mercado Pago Client_id."
164
+ msgstr "Inserta su Client_id de Mercado Pago."
165
+
166
+ msgid "Insert your Mercado Pago Client_secret."
167
+ msgstr "Inserta su" Client_secret de Mercado Pago.
168
+
169
+ msgid "Currency Conversion"
170
+ msgstr "Conversión de Moneda"
171
+
172
+ msgid "If the used currency in WooCommerce is different or not supported by Mercado Pago, convert values of your transactions using Mercado Pago currency ratio. This service may slow down your server as each conversion is made in the checkout moment."
173
+ msgstr "Si la moneda utilizada en WooCommerce es diferente o no es compatible con Mercado Pago, convierta los valores de sus transacciones usando la tasa de moneda de Mercado Pago. Este servicio puede ralentizar su servidor ya que cada conversión se realiza en el momento de la compra."
174
+
175
+ msgid "Insert your Mercado Pago Public key."
176
+ msgstr "Inserta su Public_key de Mercado Pago."
177
+
178
+ msgid "Insert your Mercado Pago Access token."
179
+ msgstr "Inserta su Access_token de Mercado Pago."
180
+
181
+ msgid "Status Mapping of Payment x Order"
182
+ msgstr "Mapeamento de Estados de Pagos x Ordens"
183
+
184
+ msgid "Here you can configure details about Mercado Pago payments and WooCommerce order statuses."
185
+ msgstr "Acá puede configurar los detalles sobre los pagos de Mercado Pago y los estados de los pedidos de WooCommerce."
186
+
187
+ msgid "For status mappings between payment/order you can use the defaults, or check references of %s and %s"
188
+ msgstr "Para las asignaciones de estados entre pago/pedido se puede usar los valores estándares, o consultar las referencias de %s y %s"
189
+
190
+ msgid "Status for PENDING"
191
+ msgstr "Estado para PENDING"
192
+
193
+ msgid "when Mercado Pago updates a payment status to PENDING."
194
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a PENDIENTE."
195
+
196
+ msgid "Status for APPROVED"
197
+ msgstr "Estado para APPROVED"
198
+
199
+ msgid "When Mercado Pago updates a payment status to APPROVED."
200
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a APPROVED."
201
+
202
+ msgid "Status for IN_PROCESS"
203
+ msgstr "Estado para IN_PROCESS"
204
+
205
+ msgid "When Mercado Pago updates a payment status to IN_PROCESS."
206
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a IN_PROCESS."
207
+
208
+ msgid "Status for IN_MEDIATION"
209
+ msgstr "Estado para IN_MEDIATION"
210
+
211
+ msgid "When Mercado Pago updates a payment status to IN_MEDIATION."
212
+ msgstr "Cuando Mercado pago actualiza un estado de pago a IN_MEDIATION."
213
+
214
+ msgid "Status for REJECTED"
215
+ msgstr "Estado para REJECTED"
216
+
217
+ msgid "When Mercado Pago updates a payment status to REJECTED."
218
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a REJECTED."
219
+
220
+ msgid "Status for CANCELLED"
221
+ msgstr "Estado para CANCELLED"
222
+
223
+ msgid "When Mercado Pago updates a payment status to CANCELLED."
224
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a CANCELLED."
225
+
226
+ msgid "Status for REFUNDED"
227
+ msgstr "Estado para REFUNDED"
228
+
229
+ msgid "When Mercado Pago updates a payment status to REFUNDED."
230
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a REFUNDED."
231
+
232
+ msgid "Status for CHARGED_BACK"
233
+ msgstr "Estado para CHARGED_BACK"
234
+
235
+ msgid "When Mercado Pago updates a payment status to CHARGED_BACK."
236
+ msgstr "Cuando Mercado Pago actualiza un estado de pago a CHARGED_BACK."
237
+
238
+ msgid "Store Settings"
239
+ msgstr "Configuración de la Tienda"
240
+
241
+ msgid "Here you can place details about your store."
242
+ msgstr "Acá puede colocar detalles de su tienda."
243
+
244
+ msgid "Statement Descriptor"
245
+ msgstr "Descripción de la Factura"
246
+
247
+ msgid "The description that will be shown in your customer\'s invoice."
248
+ msgstr "La descripción que se muestra en la factura de su cliente."
249
+
250
+ msgid "Store Category"
251
+ msgstr "Categoría de la tienda"
252
+
253
+ msgid "Store Identificator"
254
+ msgstr "Identificador de la tienda"
255
+
256
+ msgid "Please, inform a prefix to your store."
257
+ msgstr "Por favor, informe un prefijo para su tienda."
258
+
259
+ msgid "If you use your Mercado Pago account on multiple stores you should make sure that this prefix is unique as Mercado Pago will not allow orders with same identificators."
260
+ msgstr "Si esta utilizando su cuenta Mercado Pago para múltiples tiendas, asegúrese que este prefijo sea único para no generar pedidos con el mismo identificador."
261
+
262
+ msgid "Test and Debug Options"
263
+ msgstr "Opciones de Prueba y Debug"
264
+
265
+ msgid "Tools for debug and testing your integration."
266
+ msgstr "Herramientas para debug y teste para su integración."
267
+
268
+ msgid "Debug and Log"
269
+ msgstr "Debug y Log"
270
+
271
+ msgid "Enable log (Keep this disabled if you’re in production)."
272
+ msgstr "Habilitar log (Manténgalo desactivado si está en producción)."
273
+
274
+ msgid "Register event logs of Mercado Pago, such as API requests, for"
275
+ msgstr "Registrar los logs de eventos de Mercado Pago, como las solicitudes de API, para"
276
+
277
+ msgid "Tickets"
278
+ msgstr "Tickets"
279
+
280
+ msgid "You can access your logs in "
281
+ msgstr "Puede acceder a sus logs en "
282
+
283
+ msgid "WooCommerce &gt; System Status &gt; Logs"
284
+ msgstr "WooCommerce &gt; Estado del Sistema &gt; Logs"
285
+
286
+ msgid "Files are located in: "
287
+ msgstr "Los archivos se encuentran en: "
288
+
289
+ msgid "Mercado Pago Sandbox"
290
+ msgstr "Sandbox de Mercado Pago"
291
+
292
+ msgid "Enable Mercado Pago Sandbox."
293
+ msgstr "Habilitar el sandbox de Mercado Pago."
294
+
295
+ msgid "This option allows you to test payments inside a sandbox environment."
296
+ msgstr "Esta opción permite simular un flujo de pagos completo en nuestro entorno Sandbox."
297
+
298
+ msgid "Mercado Pago - Basic Checkout"
299
+ msgstr "Mercado Pago - Checkout Básico"
300
+
301
+ msgid "Receive payments in a matter of minutes. We make it easy for you: just tell us what you want to collect and we’ll take care of the rest."
302
+ msgstr "Recibe pagos en cuestión de minutos. Lo hacemos fácil: solo díganos lo que quiere recolectar y nos encargaremos del resto."
303
+
304
+ msgid "It appears that your credentials are not properly configured.<br/>Please, go to %s and configure it."
305
+ msgstr "Parece que sus credenciales no están configuradas correctamente.<br/>Por favor, vaya a %s y configúrelo."
306
+
307
+ msgid "This appears to be an invalid URL."
308
+ msgstr "Esto parece ser una URL inválida."
309
+
310
+ msgid "Where customers should be redirected after a successful purchase. Let blank to redirect to the default store order resume page."
311
+ msgstr "Donde los clientes serán redirigidos después de una compra exitosa. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
312
+
313
+ msgid "Where customers should be redirected after a failed purchase. Let blank to redirect to the default store order resume page."
314
+ msgstr "Donde los clientes serán redirigidos después de una compra rechazada. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
315
+
316
+ msgid "Where customers should be redirected after a pending purchase. Let blank to redirect to the default store order resume page."
317
+ msgstr "Donde los clientes ​serán redirigidos después de una compra pendiente. Dejar en blanco para redirigir a la página estándar de resumen de compra en la tienda."
318
+
319
+ msgid "Enable/Disable"
320
+ msgstr "Habilitar/Deshabilitar"
321
+
322
+ msgid "Enable Basic Checkout"
323
+ msgstr "Habilitar Checkout Básico"
324
+
325
+ msgid "Checkout Interface: How checkout is shown"
326
+ msgstr "Interfaz de Checkout: Cómo se muestra el checkout"
327
+
328
+ msgid "Title"
329
+ msgstr "Título"
330
+
331
+ msgid "Title shown to the client in the checkout."
332
+ msgstr "Título mostrado al cliente en el checkout."
333
+
334
+ msgid "Mercado Pago"
335
+ msgstr "Mercado Pago"
336
+
337
+ msgid "Description"
338
+ msgstr "Descripción"
339
+
340
+ msgid "Description shown to the client in the checkout."
341
+ msgstr "Descripción mostrada al cliente en el checkout."
342
+
343
+ msgid "Pay with Mercado Pago"
344
+ msgstr "Pagar con Mercado Pago"
345
+
346
+ msgid "Integration Method"
347
+ msgstr "Método de integración"
348
+
349
+ msgid "Select how your clients should interact with Mercado Pago. Modal Window (inside your store), Redirect (Client is redirected to Mercado Pago), or iFrame (an internal window is embedded to the page layout)."
350
+ msgstr "Seleccione la forma en que sus clientes deben interactuar con Mercado Pago. Ventana Modal (Dentro de su tienda), Redireccionamiento (El cliente es redireccionado a Mercado Pago), o iFrame (Ventana de pago incorporada a su página)."
351
+
352
+ msgid "iFrame"
353
+ msgstr "iFrame"
354
+
355
+ msgid "Modal Window"
356
+ msgstr "Ventana Modal"
357
+
358
+ msgid "Redirect"
359
+ msgstr "Redireccionamiento"
360
+
361
+ msgid "iFrame Width"
362
+ msgstr "Ancho del iFrame"
363
+
364
+ msgid "If your integration method is iFrame, please inform the payment iFrame width."
365
+ msgstr "Si su modo de apertura es iFrame, indique el ancho del iFrame."
366
+
367
+ msgid "iFrame Height"
368
+ msgstr "Alto del iFrame"
369
+
370
+ msgid "If your integration method is iFrame, please inform the payment iFrame height."
371
+ msgstr "Si su modo de apertura es iFrame, indique el alto del iFrame."
372
+
373
+ msgid "Checkout Navigation: How checkout redirections will behave"
374
+ msgstr "Navegación de Checkout: Cómo se comportarán las redirecciones de pago"
375
+
376
+ msgid "Auto Return"
377
+ msgstr "Redirección automática"
378
+
379
+ msgid "Automatic Return After Payment"
380
+ msgstr "Redirección Automática luego del pago"
381
+
382
+ msgid "After the payment, client is automatically redirected."
383
+ msgstr "Después del pago, el cliente será redireccionado automáticamente."
384
+
385
+ msgid "Sucess URL"
386
+ msgstr "URL de Éxito"
387
+
388
+ msgid "Failure URL"
389
+ msgstr "URL de Pago Rechazado"
390
+
391
+ msgid "Pending URL"
392
+ msgstr "URL de Pago Pendiente"
393
+
394
+ msgid "Payment Options: How payment options behaves"
395
+ msgstr "Opciones de pago: Cómo se comportan las opciones de pago"
396
+
397
+ msgid "Max installments"
398
+ msgstr "Número máximo de cuotas"
399
+
400
+ msgid "Select the max number of installments for your customers."
401
+ msgstr "Seleccione el número máximo de cuotas disponibles para sus clientes."
402
+
403
+ msgid "1x installment"
404
+ msgstr "1x cuota"
405
+
406
+ msgid "2x installmens"
407
+ msgstr "2x cuotas"
408
+
409
+ msgid "3x installmens"
410
+ msgstr "3x cuotas"
411
+
412
+ msgid "4x installmens"
413
+ msgstr "4x cuotas"
414
+
415
+ msgid "5x installmens"
416
+ msgstr "5x cuotas"
417
+
418
+ msgid "6x installmens"
419
+ msgstr "6x cuotas"
420
+
421
+ msgid "10x installmens"
422
+ msgstr "10x cuotas"
423
+
424
+ msgid "12x installmens"
425
+ msgstr "12x cuotas"
426
+
427
+ msgid "15x installmens"
428
+ msgstr "15x cuotas"
429
+
430
+ msgid "18x installmens"
431
+ msgstr "18x cuotas"
432
+
433
+ msgid "24x installmens"
434
+ msgstr "24x cuotas"
435
+
436
+ msgid "Exclude Payment Methods"
437
+ msgstr "Excluir medios de pago"
438
+
439
+ msgid "Select the payment methods that you <strong>don\'t</strong> want to receive with Mercado Pago."
440
+ msgstr "Selecione los medios de pago que <strong>no</strong> desea aceptar con Mercado Pago."
441
+
442
+ msgid "Discount by Gateway"
443
+ msgstr "Descuento por Gateway"
444
+
445
+ msgid "Give a percentual (0 to 100) discount for your customers if they use this payment gateway."
446
+ msgstr "Dé un descuento porcentual para sus clientes si utilizan este medio de pago."
447
+
448
+ msgid "Two Cards Mode"
449
+ msgstr "Modo de Dos Tarjetas"
450
+
451
+ msgid "Payments with Two Cards"
452
+ msgstr "Pagos con Dos Tarjetas"
453
+
454
+ msgid "Your customer will be able to use two different cards to pay the order."
455
+ msgstr "Su cliente será capaz de utilizar dos tarjetas diferentes para pagar el pedido."
456
+
457
+ msgid "Thank you for your order. Please, proceed with your payment clicking in the bellow button."
458
+ msgstr "Gracias por su compra. Por favor, prosiga a la página de pago haciendo click en el botón de abajo."
459
+
460
+ msgid "Cancel order &amp; Clear cart"
461
+ msgstr "Cancelar &amp; Limpiar carrito"
462
+
463
+ msgid "Thank you for your order. Proceed with your payment completing the following information."
464
+ msgstr "Gracias por su compra. Prosiga con su pago completando la información abajo."
465
+
466
+ msgid "An error occurred when proccessing your payment. Please try again or contact us for assistence."
467
+ msgstr "Se ha producido un error en el procesamiento de su pago. Por favor, inténtelo de nuevo o póngase en contacto con nosotros para Asistencia."
468
+
469
+ msgid "Shipping service used by store"
470
+ msgstr "Servicio de envío utilizado por la tienda"
471
+
472
+ msgid "Discount of"
473
+ msgstr "Descuento de"
474
+
475
+ msgid "Mercado Pago Request Failure"
476
+ msgstr "La solicitud de Mercado Pago ha fallado"
477
+
478
+ msgid "Payer email"
479
+ msgstr "Email del comprador"
480
+
481
+ msgid "Payment type"
482
+ msgstr "Medio de pago"
483
+
484
+ msgid "Payment approved."
485
+ msgstr "Pago aprobado."
486
+
487
+ msgid "Customer haven\'t paid yet."
488
+ msgstr "El cliente todavía no efectuó el pago."
489
+
490
+ msgid "Payment under review."
491
+ msgstr "El pago está pendiente de revisión."
492
+
493
+ msgid "The payment was refused. The customer can try again."
494
+ msgstr "El pago fue rechazado. El cliente puede intentar nuevamente."
495
+
496
+ msgid "The payment was refunded to the customer."
497
+ msgstr "El pago fue devuelto al cliente."
498
+
499
+ msgid "The payment was cancelled."
500
+ msgstr "El pago fue cancelado."
501
+
502
+ msgid "The payment is under mediation or it was charged-back."
503
+ msgstr "El pago esta en mediación o la compra fue desconocida por el cliente."
504
+
505
+ msgid "Mercado Pago - Custom Checkout"
506
+ msgstr "Mercado Pago - Checkout Personalizado"
507
+
508
+ msgid "We give you the possibility to adapt the payment experience you want to offer 100% in your website, mobile app or anywhere you want. You can build the design that best fits your business model, aiming to maximize conversion."
509
+ msgstr "Le ofrecemos la posibilidad de adaptar la experiencia de pago que desea ofrecer 100% en su sitio web, en su aplicación móvil o en cualquier lugar que desee. Puede crear el diseño que mejor se adapte a su modelo de negocio, con el objetivo de maximizar la conversión."
510
+
511
+ msgid "Enable Custom Checkout"
512
+ msgstr "Habilitar Checkout Personalizado"
513
+
514
+ msgid "Coupons"
515
+ msgstr "Cupones"
516
+
517
+ msgid "Enable coupons of discounts"
518
+ msgstr "Activar los cupones de descuento"
519
+
520
+ msgid "If there is a Mercado Pago campaign, allow your store to give discounts to customers."
521
+ msgstr "Si hay una campaña de Mercado Pago, permitir a su tienda hacer descuentos para los clientes."
522
+
523
+ msgid "Binary Mode"
524
+ msgstr "Modo binario"
525
+
526
+ msgid "Enable binary mode for checkout status"
527
+ msgstr "Activar el modo binario para el estado del checkout"
528
+
529
+ msgid "When charging a credit card, only [approved] or [reject] status will be taken."
530
+ msgstr "Al cargar una tarjeta de crédito, sólo los estados [aprobado] o [rechazar] seran tomados."
531
+
532
+ msgid "This service allows you to subscribe customers to subscription plans."
533
+ msgstr "Este servicio le permite suscribir los clientes a planes de suscripción."
534
+
535
+ msgid "It appears that your country is not supported for this solution.<br/>Please, use another payment method or go to %s to use another credential."
536
+ msgstr "Parece que su país no es compatible con esta solución.<br/>Por favor, use otro método de pago o vaya a %s para usar otra credencial."
537
+
538
+ msgid "Enable Subscription"
539
+ msgstr "Habilitar Suscripción"
540
+
541
+ msgid "Instant Payment Notification (IPN) URL"
542
+ msgstr "URL da Notificación Instantanea de Pago (IPN)"
543
+
544
+ msgid "For this solution, you need to configure your IPN URL. You can access it in your account for your specific country in:"
545
+ msgstr "Para esta solución, usted debe configurar su URL de IPN. Puede acceder a ella en su cuenta para su específico país en:"
546
+
547
+ msgid "Your IPN URL to receive instant payment notifications is"
548
+ msgstr "Su URL de IPN para recibir notificaciones instantáneas de pago es"
549
+
550
+ msgid "Mercado Pago - Ticket"
551
+ msgstr "Mercado Pago - Ticket"
552
+
553
+ msgid "UNDER BUILDING..."
554
+ msgstr "UN CONSTRUCIÓN..."
555
+
556
+ msgid "Enable Ticket Payment Method"
557
+ msgstr "Habilitar Pago con Ticket"
558
+
559
+ msgid "Ticket Interface: How checkout is shown"
560
+ msgstr "Interfaz de Tickets: Cómo se muestra el checkout"
561
+
562
+ msgid "Title shown to the client in the ticket."
563
+ msgstr "Título mostrado al cliente en el ticket."
564
+
565
+ msgid "Description shown to the client in the ticket."
566
+ msgstr "Descripción mostrada al cliente en el ticket."
567
+
568
+ msgid "Stock Reduce"
569
+ msgstr "Reducir Inventario"
570
+
571
+ msgid "Reduce Stock in Order Generation"
572
+ msgstr "Reducir Inventario en la Orden"
573
+
574
+ msgid "Enable this to reduce the stock on order creation. Disable this to reduce <strong>after</strong> the payment approval."
575
+ msgstr "Activar esta opción para reducir el inventario mediante la creación de un pedido. Desactivar para reducir sólo <strong>después</strong> de la aprobación del pago."
576
+
577
+ msgid "Mercado Envios is a shipping method available only for payments with Mercado Pago."
578
+ msgstr "Mercado Envios es un método de envío disponible sólo para los pagos con Mercado Pago."
579
+
580
+ msgid "Free Shipping"
581
+ msgstr "Envío Gratuito"
582
+
583
+ msgid "Day"
584
+ msgstr "Día"
585
+
586
+ msgid "Days"
587
+ msgstr "Días"
588
+
589
+ msgid "Enable the two shipping methods the Mercado Envios (Express and Normal) for the proper functioning of the module."
590
+ msgstr "Habilitar los dos métodos de envío de Mercado Envios (Express y Normal) para el correcto funcionamiento del módulo."
591
+
592
+ msgid "Mercado Envios"
593
+ msgstr "Mercado Envios"
594
+
595
+ msgid "This controls the title which the user sees during checkout."
596
+ msgstr "Controla el título que se muestra al cliente durante el pago."
597
+
598
+ msgid "Enable free shipping for this shipping method"
599
+ msgstr "Habilitar el envío gratuito para este método de envío"
600
+
601
+ msgid "Delivery Time"
602
+ msgstr "Tiempo de Entrega"
603
+
604
+ msgid "Show estimated delivery time"
605
+ msgstr "Mostrar el tiempo estimado de entrega"
606
+
607
+ msgid "Display the estimated delivery time in working days."
608
+ msgstr "Mostrar el tiempo estimado de entrega en días laborables."
609
+
610
+ msgid "Tag ready to print"
611
+ msgstr "Etiqueta lista para imprimir"
612
+
613
+ msgid "Tag printed"
614
+ msgstr "Etiqueta impresa"
615
+
616
+ msgid "Unsuccessful"
617
+ msgstr "Fracasado"
618
+
619
+ msgid "Delayed shipping"
620
+ msgstr "Envío retrasado"
621
+
622
+ msgid "Missing recipient for delivery"
623
+ msgstr "Destinatario ausente para envío"
624
+
625
+ msgid "In return to sender"
626
+ msgstr "Volviendo al remitente"
627
+
628
+ msgid "Buyer initiates complaint and requested a refund."
629
+ msgstr "El comprador ha iniciado una discusión y pide un extorno."
630
+
631
+ msgid "Order"
632
+ msgstr "Pedido"
633
+
634
+ msgid "Mercado Envios Tracking ID"
635
+ msgstr "Código de rastreamiento de Mercado Envíos"
636
+
637
+ msgid "Hello,"
638
+ msgstr "Hola,"
639
+
640
+ msgid "Your order"
641
+ msgstr "Su pedido"
642
+
643
+ msgid "made in"
644
+ msgstr "hecho en"
645
+
646
+ msgid "used Mercado Envios as its shipment method."
647
+ msgstr "utilizó el Mercado Envíos como su medio de envío."
648
+
649
+ msgid "You can track it with the following Tracking ID:"
650
+ msgstr "Usted puedes rastrearlo con lo siguiente código de rastreamiento:"
651
+
652
+ msgid "Best regards."
653
+ msgstr "Saludos."
654
+
655
+ msgid "Mercado Pago Subscription"
656
+ msgstr "Suscripción Mercado Pago"
657
+
658
+ msgid "Payment ID:"
659
+ msgstr "ID de Pago:"
660
+
661
+ msgid "Amount:"
662
+ msgstr "Cantidad:"
663
+
664
+ msgid "This operation could not be completed."
665
+ msgstr "Esta operación no se puede completar."
666
+
667
+ msgid "Operation successfully completed."
668
+ msgstr "La operación se realizó con éxito."
669
+
670
+ msgid "Refund Payment"
671
+ msgstr "Reembolso de Pago"
672
+
673
+ msgid "Cancel Payment"
674
+ msgstr "Cancelar Pago"
675
+
676
+ msgid "Mercado Pago - Subscription"
677
+ msgstr "Mercado Pago - Suscripcións"
678
+
679
+ msgid "A recurrent product is a signature that should be bought isolated in your cart. Please, create separated orders."
680
+ msgstr "Un producto recurrente es una suscripción que debe adquirirse por separado en su carrito. Por favor, hace los pedidos por separado."
681
+
682
+ msgid "Recurrent Product"
683
+ msgstr "Producto Recurrente"
684
+
685
+ msgid "Frequency"
686
+ msgstr "Frecuencia"
687
+
688
+ msgid "Amount of time (in days or months) for the execution of the next payment."
689
+ msgstr "Cantidad de tiempo (en días o meses) para la ejecución del próximo pago."
690
+
691
+ msgid "End date"
692
+ msgstr "Fecha final"
693
+
694
+ msgid "Deadline to generate new charges. Defaults to never if blank."
695
+ msgstr "Fecha límite para generar nuevos cargos. De forma predeterminada como nunca, si está en blanco."
696
+
697
+ msgid "Months"
698
+ msgstr "Meses"
699
+
700
+ msgid "Indicates the period of time."
701
+ msgstr "Indica el período de tiempo."
702
+
703
+ msgid "Make this product a subscription."
704
+ msgstr "Hacer deste producto una suscripción."
705
+
706
+ msgid "Frequency type"
707
+ msgstr "Tipo de frecuencia"
708
+
709
+ msgid "Subscribe with Mercado Pago"
710
+ msgstr "Suscribirse con Mercado Pago"
711
+
712
+ msgid "Woo Mercado Pago Module depends on the last version of %s to execute!"
713
+ msgstr "Woo Mercado Pago Module depende de la última versión de %s para ejecutarse!"
714
+
715
+ msgid "Tracking code:"
716
+ msgstr "Código de rastreamiento:"
717
+
718
+ msgid "Tag:"
719
+ msgstr "Etiqueta:"
720
+
721
+ msgid "Shipping is pending"
722
+ msgstr "Envío pendiente"
723
+
724
+ msgid "Print"
725
+ msgstr "Imprimir"
726
+
727
+ msgid "Cancel Order"
728
+ msgstr "Cancelar la Compra"
729
+
730
+ msgid "Total of your purchase:"
731
+ msgstr "Total de su compra:"
732
+
733
+ msgid "Total of your purchase with discount:"
734
+ msgstr "Total de su compra con descuento:"
735
+
736
+ msgid "*Uppon payment approval"
737
+ msgstr "*Con la aprobación de pago"
738
+
739
+ msgid "Terms and Conditions of Use"
740
+ msgstr "Términos y Condiciones de Uso"
741
+
742
+ msgid "with discount from"
743
+ msgstr "con descuento de"
744
+
745
+ msgid "You will save"
746
+ msgstr "Usted ahorrará"
747
+
748
+ msgid "Please, inform your coupon code"
749
+ msgstr "Por favor, introduzca el código de su cupón"
750
+
751
+ msgid "Payment converted from"
752
+ msgstr "Pago convertido de"
753
+
754
+ msgid "Installments"
755
+ msgstr "Cuotas"
756
+
757
+ msgid "Choose"
758
+ msgstr "Seleccione"
759
+
760
+ msgid "Parameter cardIssuerId can not be null/empty"
761
+ msgstr "Parámetro [Emisor] no puede ser nulo/vacío"
762
+
763
+ msgid "Issuer"
764
+ msgstr "Emisor"
765
+
766
+ msgid "Invalid Document Number"
767
+ msgstr "Número del Documento inválido"
768
+
769
+ msgid "Parameter docNumber can not be null/empty"
770
+ msgstr "Parámetro [Número del Documento] no puede ser nulo/vacío"
771
+
772
+ msgid "Document number"
773
+ msgstr "Número de Documento"
774
+
775
+ msgid "Invalid Document Type"
776
+ msgstr "Tipo de Documento inválido"
777
+
778
+ msgid "Parameter docType can not be null/empty"
779
+ msgstr "Parámetro [Tipo de Documento] no puede ser nulo/vacío"
780
+
781
+ msgid "Document Type"
782
+ msgstr "Tipo de Documento"
783
+
784
+ msgid "Invalid Card Holder Name"
785
+ msgstr "Nombre del titular de la tarjeta inválido"
786
+
787
+ msgid "Parameter cardholderName can not be null/empty"
788
+ msgstr "Parámetro [Nombre del titular] no puede ser nulo/vacío"
789
+
790
+ msgid "Card holder name"
791
+ msgstr "Nombre del titular de la tarjeta"
792
+
793
+ msgid "Invalid Expiration Date"
794
+ msgstr "Fecha de expiración inválida"
795
+
796
+ msgid "Year"
797
+ msgstr "Año"
798
+
799
+ msgid "Expiration year"
800
+ msgstr "Año de expiración"
801
+
802
+ msgid "Month"
803
+ msgstr "Mes"
804
+
805
+ msgid "Expiration month"
806
+ msgstr "Mes de expiración"
807
+
808
+ msgid "Invalid Card Number"
809
+ msgstr "Número de tarjeta inválido"
810
+
811
+ msgid "Parameter cardNumber can not be null/empty"
812
+ msgstr "Parámetro [Número de tarjeta] no puede ser nulo/vacío"
813
+
814
+ msgid "Credit card number"
815
+ msgstr "Número de tarjeta de crédito"
816
+
817
+ msgid "Parameter securityCode can not be null/empty"
818
+ msgstr "Parámetro [Código de seguridad] no puede ser nulo/vacío"
819
+
820
+ msgid "Invalid Security Code"
821
+ msgstr "Código de seguridad inválido"
822
+
823
+ msgid "Security code"
824
+ msgstr "Código de seguridad"
825
+
826
+ msgid "Other Card"
827
+ msgstr "Otra Tarjeta"
828
+
829
+ msgid "Other Cards"
830
+ msgstr "Otras Tarjetas"
831
+
832
+ msgid "ended in"
833
+ msgstr "terminado en"
834
+
835
+ msgid "Your Card"
836
+ msgstr "Sus Tarjetas"
837
+
838
+ msgid "Payment Method"
839
+ msgstr "Medios de Pago"
840
+
841
+ msgid "Apply"
842
+ msgstr "Aplicar"
843
+
844
+ msgid "Remove"
845
+ msgstr "Eliminar"
846
+
847
+ msgid "Discount Coupon"
848
+ msgstr "Cupón de Descuento"
849
+
850
+ msgid "Mercado Pago - Credit Card"
851
+ msgstr "Mercado Pago - Tarjeta de Crédito"
852
+
853
+ msgid "Check your order resume"
854
+ msgstr "Ver su hoja de pedido"
855
+
856
+ msgid "Your payment was refused. You can try again."
857
+ msgstr "Su pago fue rechazado. Puede intentarlo de nuevo."
858
+
859
+ msgid "Click to try again"
860
+ msgstr "Haga clic para intentarlo de nuevo"
861
+
862
+ msgid "A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?"
863
+ msgstr "Un problema se produjo al procesar su pago. ¿Esta seguro que ha rellenado correctamente toda la información en el formulario de checkout?"
864
+
865
+ msgid "Discount provided by store"
866
+ msgstr "Descuento dado por la tienda"
867
+
868
+ msgid "Discount for %s coupon"
869
+ msgstr "Descuento para el cupón %s"
870
+
871
+ msgid "Done, your payment was accredited!"
872
+ msgstr "Listo, su pago ha sido aceptado!"
873
+
874
+ msgid "We are processing the payment. In less than an hour we will e-mail you the results."
875
+ msgstr "Estamos procesando su pago. En menos de una hora le enviaremos el resultado por correo electrónico."
876
+
877
+ msgid "We are processing the payment. In less than 2 business days we will tell you by e-mail whether it has accredited or we need more information."
878
+ msgstr "Estamos procesando su pago. En menos de 2 días le enviaremos por correo electrónico si se ha aprobado el pago o si se necesita información adicional."
879
+
880
+ msgid "Check the card number."
881
+ msgstr "Compruebe el número de tarjeta."
882
+
883
+ msgid "Check the expiration date."
884
+ msgstr "Compruebe la fecha de expiración."
885
+
886
+ msgid "Check the information."
887
+ msgstr "Compruebe la información informada."
888
+
889
+ msgid "Check the security code."
890
+ msgstr "Compruebe el código de seguridad informado."
891
+
892
+ msgid "We could not process your payment."
893
+ msgstr "No se puede procesar su pago."
894
+
895
+ msgid "You must authorize the payment of your orders."
896
+ msgstr "Usted debe autorizar los pagos de sus órdenes."
897
+
898
+ msgid "Call your card issuer to activate your card. The phone is on the back of your card."
899
+ msgstr "Póngase en contacto con el emisor de su tarjeta para activarla. El teléfono se encuentra en la parte posterior de su tarjeta."
900
+
901
+ msgid "You already made a payment for that amount. If you need to repay, use another card or other payment method."
902
+ msgstr "Usted ya realizó un pago de este importe. Si tiene que pagar de nuevo, utilizar otra tarjeta u otro medio de pago."
903
+
904
+ msgid "Your payment was rejected. Choose another payment method. We recommend cash."
905
+ msgstr "Su pago fue rechazado. Por favor seleccione otro medio de pago. Se recomienda en efectivo."
906
+
907
+ msgid "Your payment do not have sufficient funds."
908
+ msgstr "Su pago no tiene fondos suficientes."
909
+
910
+ msgid "Your payment does not process payments with selected installments."
911
+ msgstr "El pago no puede procesar la cuota seleccionada."
912
+
913
+ msgid "You have reached the limit of allowed attempts. Choose another card or another payment method."
914
+ msgstr "Has alcanzado el límite de intentos permitidos. Elija otra tarjeta u otro medio de pago."
915
+
916
+ msgid "This payment method did not process the payment."
917
+ msgstr "Esta medio de pago no puede procesar su pago."
918
+
919
+ msgid "Please, inform your email in billing address to use this feature"
920
+ msgstr "Por favor, introduzca su email en la dirección de facturación para utilizar este servicio"
921
+
922
+ msgid "Waiting for the ticket payment."
923
+ msgstr "Esperando el pago del ticket."
924
+
925
+ msgid "here"
926
+ msgstr "aquí"
927
+
928
+ msgid "To reprint the ticket click "
929
+ msgstr "Para imprimir nuevamente el ticket hace clic "
930
+
931
+ msgid "A problem was occurred when processing your payment. Please, try again."
932
+ msgstr "Un problema se produjo al procesar su pago. Por favor, inténtelo de nuevo."
933
+
934
+ msgid "Print the Ticket"
935
+ msgstr "Imprimir el ticket"
936
+
937
+ msgid "Thank you for your order. Please, pay the ticket to get your order approved."
938
+ msgstr "Gracias por su orden. Por favor, realice el pago del ticket para tener su orden aprobada."
939
+
940
+ msgid "Important: The order will be confirmed only after the payment approval."
941
+ msgstr "Importante: La solicitud sólo será confirmada después de la aprobación del pago."
942
+
943
+ msgid "Click [Place order] button. The ticket will be generated and you will be redirected to print it."
944
+ msgstr "Haga clic en el botón [Realizar el pedido]. El ticket será generado y usted será redirigido a imprimirlo."
945
+
946
+ msgid "Please, select the ticket issuer of your preference."
947
+ msgstr "Por favor, seleccione el emisor de su elección."
948
+
949
+ msgid "Needed informations due to brazilian bank compliances numbers 3.461/09, 3.598/12 and 3.656/13 of the Central Bank of Brazil."
950
+ msgstr "Informaciones necesarias debido a las normas bancarias brasileñas números 3.461/09, 3.598/12 y 3.656/13 del Banco Central de Brasil."
951
+
952
+ msgid "NAME"
953
+ msgstr "NOMBRE"
954
+
955
+ msgid "SURNAME"
956
+ msgstr "APELLIDO"
957
+
958
+ msgid "DOCUMENT"
959
+ msgstr "DOCUMENTO"
960
+
961
+ msgid "ADDRESS"
962
+ msgstr "DIRECCIÓN"
963
+
964
+ msgid "NUMBER"
965
+ msgstr "NÚMERO"
966
+
967
+ msgid "CITY"
968
+ msgstr "CIUDAD"
969
+
970
+ msgid "STATE"
971
+ msgstr "ESTADO"
972
+
973
+ msgid "ZIP"
974
+ msgstr "CÓDIGO POSTAL"
975
+
976
+ msgid "You must inform you NAME"
977
+ msgstr "Obligatorio informar su NOMBRE"
978
+
979
+ msgid "You must inform your SURNAME"
980
+ msgstr "Obligatorio informar su APELLIDO"
981
+
982
+ msgid "You must inform your DOCUMENT"
983
+ msgstr "Obligatorio informar su DOCUMENTO"
984
+
985
+ msgid "You must inform your ADDRESS"
986
+ msgstr "Obligatorio informar su DIRECCIÓN"
987
+
988
+ msgid "You must inform your ADDRESS NUMBER"
989
+ msgstr "Obligatorio informar su NÚMERO"
990
+
991
+ msgid "You must inform your CITY"
992
+ msgstr "Obligatorio informar su CIUDAD"
993
+
994
+ msgid "You must inform your STATE"
995
+ msgstr "Obligatorio informar su ESTADO"
996
+
997
+ msgid "You must inform your ZIP"
998
+ msgstr "Obligatorio informar su CÓDIGO POSTAL"
999
+
1000
+ msgid "Fisical Person"
1001
+ msgstr "Persona Física"
1002
+
1003
+ msgid "Legal Person"
1004
+ msgstr "Persona Jurídica"
1005
+
1006
+ msgid "SOCIAL NAME"
1007
+ msgstr "RAZÓN SOCIAL"
1008
+
1009
+ msgid "CNPJ"
1010
+ msgstr "CNPJ"
i18n/languages/woocommerce-mercadopago-pt_BR.mo ADDED
Binary file
i18n/languages/woocommerce-mercadopago-pt_BR.po ADDED
@@ -0,0 +1,1010 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # WordPress Blank Pot
2
+ # Copyright (C) 2014 ...
3
+ # This file is distributed under the GNU General Public License v2 or later.
4
+ msgid ""
5
+ msgstr ""
6
+ "Project-Id-Version: WordPress Blank Pot v1.0.0\n"
7
+ "POT-Creation-Date: 2016-05-23 14:52-0300\n"
8
+ "PO-Revision-Date: \n"
9
+ "Language-Team: Product Development <translations@example.com>\n"
10
+ "Report-Msgid-Bugs-To: Translator Name <translations@example.com>\n"
11
+ "MIME-Version: 1.0\n"
12
+ "Content-Type: text/plain; charset=UTF-8\n"
13
+ "Content-Transfer-Encoding: 8bit\n"
14
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
+ "X-Textdomain-Support: yesX-Generator: Poedit 1.6.4\n"
16
+ "X-Poedit-SourceCharset: UTF-8\n"
17
+ "X-Poedit-KeywordsList: __;_e;esc_html_e;esc_html_x:1,2c;esc_html__;esc_attr_e;esc_attr_x:1,2c;esc_attr__;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_x:1,2c;_n:1,2;"
18
+ "_n_noop:1,2;__ngettext:1,2;__ngettext_noop:1,2;_c,_nc:4c,1,2\n"
19
+ "X-Poedit-Basepath: ../Documents/woocommerce (MAMP)/wp-content/plugins/woo-mercado-pago-module\n"
20
+ "X-Generator: Poedit 1.8.7\n"
21
+ "Last-Translator: \n"
22
+ "Language: pt_BR\n"
23
+ "X-Poedit-SearchPath-0: .\n"
24
+
25
+ msgid "This is the <strong>oficial</strong> module of Mercado Pago for WooCommerce plugin. This module enables WooCommerce to use Mercado Pago as a payment Gateway for purchases made in your e-commerce store."
26
+ msgstr "Este é o módulo <strong>oficial</strong> do Mercado Pago para o plugin WooCommerce. Este módulo habilita o WooCommerce a usar o Mercado Pago como meio de pagamento para compras realizadas em sua loja virtual."
27
+
28
+ msgid "Mercado Pago Settings"
29
+ msgstr "Configurações do Mercado Pago"
30
+
31
+ msgid "Rate Us"
32
+ msgstr "Qualifique-nos"
33
+
34
+ msgid "Tutorial"
35
+ msgstr "Tutorial"
36
+
37
+ msgid "Report Issue"
38
+ msgstr "Reportar Problema"
39
+
40
+ msgid "ERROR: It was not possible to convert the unsupported currency"
41
+ msgstr "ERRO: Não foi possível converter a moeda não suportada"
42
+
43
+ msgid "to"
44
+ msgstr "para"
45
+
46
+ msgid "Currency conversions should be made outside this module."
47
+ msgstr "Conversões de moedas devem ser feitas fora deste módulo."
48
+
49
+ msgid "ATTENTION: The currency"
50
+ msgstr "ATENÇÃO: A moeda"
51
+
52
+ msgid "defined in WooCommerce is different from the one used in your credentials country.<br>The currency for transactions in this payment method will be"
53
+ msgstr "definida no WooCommerce é diferente da usada no país de suas credenciais.<br>A moeda para transações feitas por este meio de pagamento será"
54
+
55
+ msgid "CURRENCY CONVERTED: Your store is converting currency from"
56
+ msgstr "MOEDA CONVERTIDA: Sua loja está convertendo moeda de"
57
+
58
+ msgid "Colombia"
59
+ msgstr "Colômbia"
60
+
61
+ msgid "Argentine"
62
+ msgstr "Argentina"
63
+
64
+ msgid "Brazil"
65
+ msgstr "Brasil"
66
+
67
+ msgid "Chile"
68
+ msgstr "Chile"
69
+
70
+ msgid "Mexico"
71
+ msgstr "México"
72
+
73
+ msgid "Uruguay"
74
+ msgstr "Uruguai"
75
+
76
+ msgid "Venezuela"
77
+ msgstr "Venezuela"
78
+
79
+ msgid "Peru"
80
+ msgstr "Peru"
81
+
82
+ msgid "Update WooCommerce order to "
83
+ msgstr "Atualizar pedido no WooCommerce para "
84
+
85
+ msgid "You do not have sufficient permissions to access this page."
86
+ msgstr "Você não possui permissões suficientes para acessar esta página."
87
+
88
+ msgid "WooCommerce is installed and enabled."
89
+ msgstr "WooCommerce está instalado e habilitado."
90
+
91
+ msgid "You don\'t have WooCommerce installed and enabled."
92
+ msgstr "Você não possui o WooCommerce instalado e habilitado."
93
+
94
+ msgid "Your PHP version is OK."
95
+ msgstr "Sua versão do PHP está OK."
96
+
97
+ msgid "Your PHP version do not support this module. You have %s, minimal required is %s."
98
+ msgstr "Sua versão do PHP não suporta este módulo. Sua versão é %s, a mínima requerida é %s."
99
+
100
+ msgid "cURL is installed."
101
+ msgstr "cURL está instalado."
102
+
103
+ msgid "cURL is not installed."
104
+ msgstr "cURL não está instalado."
105
+
106
+ msgid "SSL is missing in your site."
107
+ msgstr "Está faltando SSL em seu site."
108
+
109
+ msgid "Your site has SSL enabled."
110
+ msgstr "Seu site possui SSL habilitado."
111
+
112
+ msgid "Basic Checkout"
113
+ msgstr "Checkout Básico"
114
+
115
+ msgid "Custom Checkout"
116
+ msgstr "Checkout Transparente"
117
+
118
+ msgid "Ticket"
119
+ msgstr "Boletos"
120
+
121
+ msgid "Subscription"
122
+ msgstr "Assinaturas"
123
+
124
+ msgid "Configure your Client_id and Client_secret to have access to more options."
125
+ msgstr "Configure seu Client_id e Client_secret para ter acesso a mais opções."
126
+
127
+ msgid "Define which type of products your store sells."
128
+ msgstr "Defina qual o tipo dos produtos que sua loja vende."
129
+
130
+ msgid "Your <strong>client_id</strong> and <strong>client_secret</strong> are <strong>valid</strong> for"
131
+ msgstr "Sua <strong>client_id</strong> e <strong>client_secret</strong> são <strong>válidas</strong> para"
132
+
133
+ msgid "Your <strong>client_id</strong> and <strong>client_secret</strong> are <strong>not valid</strong>!"
134
+ msgstr "Sua <strong>client_id</strong> e <strong>client_secret</strong> são <strong>inválidas</strong>!"
135
+
136
+ msgid "These credentials are used in <strong>Basic Checkout</strong> and <strong>Subscriptions</strong>. Access it for your country:<br>"
137
+ msgstr "Estas credenciais são usadas no <strong>Checkout Básico</strong> e <strong>Assinaturas</strong>. Acesse elas para seu país:<br>"
138
+
139
+ msgid "or"
140
+ msgstr "ou"
141
+
142
+ msgid "Your <strong>public_key</strong> and <strong>access_token</strong> are <strong>valid</strong> for"
143
+ msgstr "Sua <strong>public_key</strong> e <strong>access_token</strong> são <strong>válidas</strong> para"
144
+
145
+ msgid "Your <strong>public_key</strong> and <strong>access_token</strong> are <strong>not valid</strong>!"
146
+ msgstr "Sua <strong>public_key</strong> e <strong>access_token</strong> são <strong>inválidas</strong>!"
147
+
148
+ msgid "These credentials are used in <strong>Custom Checkout</strong> and <strong>Tickets</strong>. Access it for your country:<br>"
149
+ msgstr "Estas credenciais são usadas no <strong>Checkout Transparente</strong> e <strong>Boletos</strong>. Acesse elas para seu país:<br>"
150
+
151
+ msgid "This module enables WooCommerce to use Mercado Pago as payment method for purchases made in your virtual store."
152
+ msgstr "Este módulo habilita o WooCommerce a usar o Mercado Pago como meio de pagamento para compras realizadas em sua loja virtual."
153
+
154
+ msgid "Payment Gateways"
155
+ msgstr "Gateways de Pagamento"
156
+
157
+ msgid "Basic Checkout & Subscriptions"
158
+ msgstr "Checkout Básico & Assinaturas"
159
+
160
+ msgid "Custom Checkout & Tickets"
161
+ msgstr "Checkout Transparente & Boletos"
162
+
163
+ msgid "Insert your Mercado Pago Client_id."
164
+ msgstr "Insira seu Client_id do Mercado Pago."
165
+
166
+ msgid "Insert your Mercado Pago Client_secret."
167
+ msgstr "Insira seu Client_secret do Mercado Pago."
168
+
169
+ msgid "Currency Conversion"
170
+ msgstr "Conversão de Moeda"
171
+
172
+ msgid "If the used currency in WooCommerce is different or not supported by Mercado Pago, convert values of your transactions using Mercado Pago currency ratio. This service may slow down your server as each conversion is made in the checkout moment."
173
+ msgstr "Se a moeda utilizada pelo WooCommerce for diferente ou não suportada pelo Mercado Pago, converte os valores de suas transações usando a taxa de conversão do Mercado Pago. Este serviço pode deixar seu servidor mais lento pois cada conversão é feita no momento do checkout."
174
+
175
+ msgid "Insert your Mercado Pago Public key."
176
+ msgstr "Insira sua Public Key do Mercado Pago."
177
+
178
+ msgid "Insert your Mercado Pago Access token."
179
+ msgstr "Insira seu Access Token do Mercado Pago."
180
+
181
+ msgid "Status Mapping of Payment x Order"
182
+ msgstr "Mapeamento de Estados de Pagamento x Pedido"
183
+
184
+ msgid "Here you can configure details about Mercado Pago payments and WooCommerce order statuses."
185
+ msgstr "Aqui você pode configurar detalhes sobre os estados dos pagamentos do Mercado Pago e os pedidos do WooCommerce."
186
+
187
+ msgid "For status mappings between payment/order you can use the defaults, or check references of %s and %s"
188
+ msgstr "Para mapeamentos de estados entre pagamento/pedido você pode utilizar os padrões, ou checar referências do %s e %s"
189
+
190
+ msgid "Status for PENDING"
191
+ msgstr "Estado para PENDING"
192
+
193
+ msgid "when Mercado Pago updates a payment status to PENDING."
194
+ msgstr "quando o Mercado Pago atualiza o estado de um pagamento para PENDING."
195
+
196
+ msgid "Status for APPROVED"
197
+ msgstr "Estado para APPROVED"
198
+
199
+ msgid "When Mercado Pago updates a payment status to APPROVED."
200
+ msgstr "quando o Mercado Pago atualiza o estado de um pagamento para APPROVED."
201
+
202
+ msgid "Status for IN_PROCESS"
203
+ msgstr "Estado para IN_PROCESS"
204
+
205
+ msgid "When Mercado Pago updates a payment status to IN_PROCESS."
206
+ msgstr "quando o Mercado Pago atualiza o estado de um pagamento para IN_PROCESS."
207
+
208
+ msgid "Status for IN_MEDIATION"
209
+ msgstr "Estado para IN_MEDIATION"
210
+
211
+ msgid "When Mercado Pago updates a payment status to IN_MEDIATION."
212
+ msgstr "quando o Mercado Pago atualiza o estado de um pagamento para IN_MEDIATION."
213
+
214
+ msgid "Status for REJECTED"
215
+ msgstr "Estado para REJECTED"
216
+
217
+ msgid "When Mercado Pago updates a payment status to REJECTED."
218
+ msgstr "quando o Mercado Pago atualiza o estado de um pagamento para REJECTED."
219
+
220
+ msgid "Status for CANCELLED"
221
+ msgstr "Estado para CANCELLED"
222
+
223
+ msgid "When Mercado Pago updates a payment status to CANCELLED."
224
+ msgstr "quando o Mercado Pago atualiza o estado de um pagamento para CANCELLED."
225
+
226
+ msgid "Status for REFUNDED"
227
+ msgstr "Estado para REFUNDED"
228
+
229
+ msgid "When Mercado Pago updates a payment status to REFUNDED."
230
+ msgstr "quando o Mercado Pago atualiza o estado de um pagamento para REFUNDED."
231
+
232
+ msgid "Status for CHARGED_BACK"
233
+ msgstr "Estado para CHARGED_BACK"
234
+
235
+ msgid "When Mercado Pago updates a payment status to CHARGED_BACK."
236
+ msgstr "quando o Mercado Pago atualiza o estado de um pagamento para CHARGED_BACK."
237
+
238
+ msgid "Store Settings"
239
+ msgstr "Configurações da Loja"
240
+
241
+ msgid "Here you can place details about your store."
242
+ msgstr "Aqui você pode configurar detalhes da sua loja."
243
+
244
+ msgid "Statement Descriptor"
245
+ msgstr "Descritor da Nota Fiscal"
246
+
247
+ msgid "The description that will be shown in your customer\'s invoice."
248
+ msgstr "A descrição que será mostrada na nota fiscal de seu cliente."
249
+
250
+ msgid "Store Category"
251
+ msgstr "Categoria da loja"
252
+
253
+ msgid "Store Identificator"
254
+ msgstr "Identificador da Loja"
255
+
256
+ msgid "Please, inform a prefix to your store."
257
+ msgstr "Por favor, informe um prefixo para sua loja."
258
+
259
+ msgid "If you use your Mercado Pago account on multiple stores you should make sure that this prefix is unique as Mercado Pago will not allow orders with same identificators."
260
+ msgstr "Se estiver usando sua conta Mercado Pago para múltiplas lojas então você deverá assegurar-se que este prefixo seja único pois o Mercado Pago não permitirá pedidos com um mesmo identificador."
261
+
262
+ msgid "Test and Debug Options"
263
+ msgstr "Opções de Teste e Debug"
264
+
265
+ msgid "Tools for debug and testing your integration."
266
+ msgstr "Ferramentas para debug e testes de sua integração."
267
+
268
+ msgid "Debug and Log"
269
+ msgstr "Debug e Log"
270
+
271
+ msgid "Enable log (Keep this disabled if you’re in production)."
272
+ msgstr "Habilitar log (mantenha isto desabilitado se você estiver em produção)."
273
+
274
+ msgid "Register event logs of Mercado Pago, such as API requests, for"
275
+ msgstr "Registrar eventos de logs do Mercado Pago, como requisições de API, para"
276
+
277
+ msgid "Tickets"
278
+ msgstr "Boletos"
279
+
280
+ msgid "You can access your logs in "
281
+ msgstr "Você pode acessar seus logs em"
282
+
283
+ msgid "WooCommerce &gt; System Status &gt; Logs"
284
+ msgstr "WooCommerce &gt; Estados do Sistema &gt; Logs"
285
+
286
+ msgid "Files are located in: "
287
+ msgstr "Arquivos estão localizados em: "
288
+
289
+ msgid "Mercado Pago Sandbox"
290
+ msgstr "Sandbox Mercado Pago"
291
+
292
+ msgid "Enable Mercado Pago Sandbox."
293
+ msgstr "Habilitar o sandbox do Mercado Pago"
294
+
295
+ msgid "This option allows you to test payments inside a sandbox environment."
296
+ msgstr "Esta opção permite a você testar pagamentos em um ambiente sandbox."
297
+
298
+ msgid "Mercado Pago - Basic Checkout"
299
+ msgstr "Mercado Pago - Checkout Básico"
300
+
301
+ msgid "Receive payments in a matter of minutes. We make it easy for you: just tell us what you want to collect and we’ll take care of the rest."
302
+ msgstr "Receba pagamentos em questões de minutos. Nós deixamos fácil pra você: apenas diga o que você quer coletar e nós cuidaremos do resto."
303
+
304
+ msgid "It appears that your credentials are not properly configured.<br/>Please, go to %s and configure it."
305
+ msgstr "Parece que suas credenciais não estão configuradas apropriadamente.<br/>Por favor, vá para %s e configure-as."
306
+
307
+ msgid "This appears to be an invalid URL."
308
+ msgstr "Esta parece ser uma URL inválida."
309
+
310
+ msgid "Where customers should be redirected after a successful purchase. Let blank to redirect to the default store order resume page."
311
+ msgstr "Onde os clientes deverão ser redirecionados após uma compra bem-sucedida. Deixe em branco para redirecionar para a página padrão de resumo de pedido da loja."
312
+
313
+ msgid "Where customers should be redirected after a failed purchase. Let blank to redirect to the default store order resume page."
314
+ msgstr "Onde os clientes deverão ser redirecionados após uma compra ter falhado. Deixe em branco para redirecionar para a página padrão de resumo de pedido da loja."
315
+
316
+ msgid "Where customers should be redirected after a pending purchase. Let blank to redirect to the default store order resume page."
317
+ msgstr "Onde os clientes deverão ser redirecionados após uma compra entrar em análise. Deixe em branco para redirecionar para a página padrão de resumo de pedido da loja."
318
+
319
+ msgid "Enable/Disable"
320
+ msgstr "Habilitar/Desabilitar"
321
+
322
+ msgid "Enable Basic Checkout"
323
+ msgstr "Habilitar o Checkout Básico"
324
+
325
+ msgid "Checkout Interface: How checkout is shown"
326
+ msgstr "Interface do Checkout: Como o checkout é mostrado"
327
+
328
+ msgid "Title"
329
+ msgstr "Título"
330
+
331
+ msgid "Title shown to the client in the checkout."
332
+ msgstr "Título mostrado ao cliente durante o checkout."
333
+
334
+ msgid "Mercado Pago"
335
+ msgstr "Mercado Pago"
336
+
337
+ msgid "Description"
338
+ msgstr "Descrição"
339
+
340
+ msgid "Description shown to the client in the checkout."
341
+ msgstr "Descrição mostrada ao cliente durante o checkout."
342
+
343
+ msgid "Pay with Mercado Pago"
344
+ msgstr "Pagar com Mercado Pago"
345
+
346
+ msgid "Integration Method"
347
+ msgstr "Método de Integração"
348
+
349
+ msgid "Select how your clients should interact with Mercado Pago. Modal Window (inside your store), Redirect (Client is redirected to Mercado Pago), or iFrame (an internal window is embedded to the page layout)."
350
+ msgstr "Selecione como seus clientes irão interagir com o Mercado Pago. Janela Modal (Dentro de sua loja), Redirecionamento (O cliente é redirecionado ao Mercado Pago), ou iFrame (Uma janela de pagamento é incorporada ao layout da página)."
351
+
352
+ msgid "iFrame"
353
+ msgstr "iFrame"
354
+
355
+ msgid "Modal Window"
356
+ msgstr "Janela Modal"
357
+
358
+ msgid "Redirect"
359
+ msgstr "Redirecionamento"
360
+
361
+ msgid "iFrame Width"
362
+ msgstr "Largura do iFrame"
363
+
364
+ msgid "If your integration method is iFrame, please inform the payment iFrame width."
365
+ msgstr "Se o seu método de integração é por iFrame, por favor informe a largura do layout."
366
+
367
+ msgid "iFrame Height"
368
+ msgstr "Altura do iFrame"
369
+
370
+ msgid "If your integration method is iFrame, please inform the payment iFrame height."
371
+ msgstr "Se o seu método de integração é por iFrame, por favor informe a altura do layout."
372
+
373
+ msgid "Checkout Navigation: How checkout redirections will behave"
374
+ msgstr "Navegação do Checkout: Como os redirecionamentos do checkout irão comportar-se"
375
+
376
+ msgid "Auto Return"
377
+ msgstr "Auto Retorno"
378
+
379
+ msgid "Automatic Return After Payment"
380
+ msgstr "Retorno com Redirecionamento Automático"
381
+
382
+ msgid "After the payment, client is automatically redirected."
383
+ msgstr "Após a compra, o cliente é redirecionado automaticamente."
384
+
385
+ msgid "Sucess URL"
386
+ msgstr "URL de Sucesso"
387
+
388
+ msgid "Failure URL"
389
+ msgstr "URL de Falha"
390
+
391
+ msgid "Pending URL"
392
+ msgstr "URL de Pendência"
393
+
394
+ msgid "Payment Options: How payment options behaves"
395
+ msgstr "Opções de Pagamento: Como as opções de pagamento irão comportar-se"
396
+
397
+ msgid "Max installments"
398
+ msgstr "Número Máximo de Parcelamentos"
399
+
400
+ msgid "Select the max number of installments for your customers."
401
+ msgstr "Selecione o número máximo de parcelas que sua loja oferece a seus clientes."
402
+
403
+ msgid "1x installment"
404
+ msgstr "1x parcela"
405
+
406
+ msgid "2x installmens"
407
+ msgstr "2x parcelas"
408
+
409
+ msgid "3x installmens"
410
+ msgstr "3x parcelas"
411
+
412
+ msgid "4x installmens"
413
+ msgstr "4x parcelas"
414
+
415
+ msgid "5x installmens"
416
+ msgstr "5x parcelas"
417
+
418
+ msgid "6x installmens"
419
+ msgstr "6x parcelas"
420
+
421
+ msgid "10x installmens"
422
+ msgstr "10x parcelas"
423
+
424
+ msgid "12x installmens"
425
+ msgstr "12x parcelas"
426
+
427
+ msgid "15x installmens"
428
+ msgstr "15x parcelas"
429
+
430
+ msgid "18x installmens"
431
+ msgstr "18x parcelas"
432
+
433
+ msgid "24x installmens"
434
+ msgstr "24x parcelas"
435
+
436
+ msgid "Exclude Payment Methods"
437
+ msgstr "Excluir Métodos de Pagamento"
438
+
439
+ msgid "Select the payment methods that you <strong>don\'t</strong> want to receive with Mercado Pago."
440
+ msgstr "Selecione os meios de pagamento que <strong>não</strong> gostaria de receber com o Mercado Pago."
441
+
442
+ msgid "Discount by Gateway"
443
+ msgstr "Desconto por Gateway"
444
+
445
+ msgid "Give a percentual (0 to 100) discount for your customers if they use this payment gateway."
446
+ msgstr "Dê um desconto porcentual (0 a 100) para seus clientes caso eles usem este método de pagamento."
447
+
448
+ msgid "Two Cards Mode"
449
+ msgstr "Modo Dois Cartões"
450
+
451
+ msgid "Payments with Two Cards"
452
+ msgstr "Pagamento com Dois Cartões"
453
+
454
+ msgid "Your customer will be able to use two different cards to pay the order."
455
+ msgstr "Seus clientes poderão utilizar dois diferentes cartões para pagar pedidos."
456
+
457
+ msgid "Thank you for your order. Please, proceed with your payment clicking in the bellow button."
458
+ msgstr "Obrigado pela sua compra. Por favor, prossiga para a página de pagamento clicando no botão abaixo."
459
+
460
+ msgid "Cancel order &amp; Clear cart"
461
+ msgstr "Cancelar &amp; Limpar carrinho"
462
+
463
+ msgid "Thank you for your order. Proceed with your payment completing the following information."
464
+ msgstr "Obrigado pela sua compra. Prossiga com seu pagamento completando as informações abaixo."
465
+
466
+ msgid "An error occurred when proccessing your payment. Please try again or contact us for assistence.""
467
+ msgstr "Um erro ocorreu ao processar seu pagamento. Por favor tente novamente ou nos contacte para assistência."
468
+
469
+ msgid "Shipping service used by store"
470
+ msgstr "Serviço de envio usado pela loja"
471
+
472
+ msgid "Discount of"
473
+ msgstr "Desconto de"
474
+
475
+ msgid "Mercado Pago Request Failure"
476
+ msgstr "Falha na Requisição do Mercado Pago"
477
+
478
+ msgid "Payer email"
479
+ msgstr "Email do pagador"
480
+
481
+ msgid "Payment type"
482
+ msgstr "Tipo de pagamento"
483
+
484
+ msgid "Payment approved."
485
+ msgstr "Pagamento aprovado."
486
+
487
+ msgid "Customer haven\'t paid yet."
488
+ msgstr "O cliente ainda não realizou o pagamento."
489
+
490
+ msgid "Payment under review."
491
+ msgstr "O pagamento está em revisão."
492
+
493
+ msgid "The payment was refused. The customer can try again."
494
+ msgstr "O pagamento foi recusado. O cliente pode tentar novamente."
495
+
496
+ msgid "The payment was refunded to the customer."
497
+ msgstr "O pagamento foi estornado ao cliente."
498
+
499
+ msgid "The payment was cancelled."
500
+ msgstr "O pagamento foi cancelado."
501
+
502
+ msgid "The payment is under mediation or it was charged-back."
503
+ msgstr "O pagamento está em mediação ou a compra não foi reconhecida pelo cliente."
504
+
505
+ msgid "Mercado Pago - Custom Checkout"
506
+ msgstr "Mercado Pago - Checkout Transparente"
507
+
508
+ msgid "We give you the possibility to adapt the payment experience you want to offer 100% in your website, mobile app or anywhere you want. You can build the design that best fits your business model, aiming to maximize conversion."
509
+ msgstr "Nós damos a você a possibilidade de adaptar 100% da experiência de pagamento que você gostaria de oferecer em seu website, aplicativo mobile ou onde quer que você queira. Você pode construir o design que melhor atenda ao seu modelo de negócio, com o objetivo de maximizar a conversão."
510
+
511
+ msgid "Enable Custom Checkout"
512
+ msgstr "Habilitar o Checkout Transparente"
513
+
514
+ msgid "Coupons"
515
+ msgstr "Cupons"
516
+
517
+ msgid "Enable coupons of discounts"
518
+ msgstr "Habilitar cupons de desconto"
519
+
520
+ msgid "If there is a Mercado Pago campaign, allow your store to give discounts to customers."
521
+ msgstr "Caso haja uma campanha do Mercado Pago, permite que sua loja disponibilize descontos aos clientes."
522
+
523
+ msgid "Binary Mode"
524
+ msgstr "Modo Binário"
525
+
526
+ msgid "Enable binary mode for checkout status"
527
+ msgstr "Habilita o modo binário para o status do checkout"
528
+
529
+ msgid "When charging a credit card, only [approved] or [reject] status will be taken."
530
+ msgstr "Ao realizar a cobrança no cartão, apenas os status [aprovado] ou [rejeitado] serão considerados."
531
+
532
+ msgid "This service allows you to subscribe customers to subscription plans."
533
+ msgstr "Este serviço permite a você inscrever clientes em planos de assinaturas."
534
+
535
+ msgid "It appears that your country is not supported for this solution.<br/>Please, use another payment method or go to %s to use another credential."
536
+ msgstr "Parece que seu país não é suportado para esta solução.<br/>Por favor, use outro meio de pagamento ou vá para %s e use outra credencial."
537
+
538
+ msgid "Enable Subscription"
539
+ msgstr "Habilitar Assinaturas"
540
+
541
+ msgid "Instant Payment Notification (IPN) URL"
542
+ msgstr "URL de Notificações Instantâneas de Pagamento (IPN)"
543
+
544
+ msgid "For this solution, you need to configure your IPN URL. You can access it in your account for your specific country in:"
545
+ msgstr "Para esta solução, você precisa configurar sua URL de IPN. Você pode acessa-la em sua conta específica para seu país em:"
546
+
547
+ msgid "Your IPN URL to receive instant payment notifications is"
548
+ msgstr "Sua URL de IPN para receber notificações instantâneas de pagamentos é"
549
+
550
+ msgid "Mercado Pago - Ticket"
551
+ msgstr "Mercado Pago - Boleto"
552
+
553
+ msgid "UNDER BUILDING..."
554
+ msgstr "EM CONSTRUÇÃO..."
555
+
556
+ msgid "Enable Ticket Payment Method"
557
+ msgstr "Habilitar o Método de Pagamento por Boleto"
558
+
559
+ msgid "Ticket Interface: How checkout is shown"
560
+ msgstr "Interface do Boleto: Como o checkout é mostrado"
561
+
562
+ msgid "Title shown to the client in the ticket."
563
+ msgstr "Título mostrado ao cliente no boleto."
564
+
565
+ msgid "Description shown to the client in the ticket."
566
+ msgstr "Descrição mostrada ao cliente no boleto."
567
+
568
+ msgid "Stock Reduce"
569
+ msgstr "Redução de Estoque"
570
+
571
+ msgid "Reduce Stock in Order Generation"
572
+ msgstr "Reduzir Estoque ao Gerar Pedido"
573
+
574
+ msgid "Enable this to reduce the stock on order creation. Disable this to reduce <strong>after</strong> the payment approval."
575
+ msgstr "Habilite esta opção para reduzir o estoque ao se criar um pedido. Desabilite para reduzir somente <strong>depois</strong> da aprovação do pagamento."
576
+
577
+ msgid "Mercado Envios is a shipping method available only for payments with Mercado Pago."
578
+ msgstr "Mercado Envios é um método de envio disponível apenas para pagamentos com Mercado Pago."
579
+
580
+ msgid "Free Shipping"
581
+ msgstr "Envio Grátis"
582
+
583
+ msgid "Day"
584
+ msgstr "Dia"
585
+
586
+ msgid "Days"
587
+ msgstr "Dias"
588
+
589
+ msgid "Enable the two shipping methods the Mercado Envios (Express and Normal) for the proper functioning of the module."
590
+ msgstr "Habilitar os dois métodos de envio do Mercado Envios (Expresso e Normal) para o devido funcionamento do módulo."
591
+
592
+ msgid "Mercado Envios"
593
+ msgstr "Mercado Envios"
594
+
595
+ msgid "This controls the title which the user sees during checkout."
596
+ msgstr "Controla o título que é mostrado ao cliente vê durante o checkout."
597
+
598
+ msgid "Enable free shipping for this shipping method"
599
+ msgstr "Habilitar envio gratuito para este método de envio"
600
+
601
+ msgid "Delivery Time"
602
+ msgstr "Tempo de Entrega"
603
+
604
+ msgid "Show estimated delivery time"
605
+ msgstr "Mostrar tempo estimado de entrega"
606
+
607
+ msgid "Display the estimated delivery time in working days."
608
+ msgstr "Mostrar o tempo estimado de entrega em dias úteis."
609
+
610
+ msgid "Tag ready to print"
611
+ msgstr "Etiqueta pronta para impressão"
612
+
613
+ msgid "Tag printed"
614
+ msgstr "Etiqueta imprimida"
615
+
616
+ msgid "Unsuccessful"
617
+ msgstr "Mal sucedido"
618
+
619
+ msgid "Delayed shipping"
620
+ msgstr "Envio atrasado"
621
+
622
+ msgid "Missing recipient for delivery"
623
+ msgstr "Destinatário ausente" para envio
624
+
625
+ msgid "In return to sender"
626
+ msgstr "Retornando ao remetente"
627
+
628
+ msgid "Buyer initiates complaint and requested a refund."
629
+ msgstr "O comprador iniciou uma discussão e requisita um extorno."
630
+
631
+ msgid "Order"
632
+ msgstr "Pedido"
633
+
634
+ msgid "Mercado Envios Tracking ID"
635
+ msgstr "ID de rastreamento do Mercado Envios"
636
+
637
+ msgid "Hello,"
638
+ msgstr "Olá,"
639
+
640
+ msgid "Your order"
641
+ msgstr "Seu pedido"
642
+
643
+ msgid "made in"
644
+ msgstr "feito em"
645
+
646
+ msgid "used Mercado Envios as its shipment method."
647
+ msgstr "usou o Mercado Envios como método de envio."
648
+
649
+ msgid "You can track it with the following Tracking ID:"
650
+ msgstr "Você pode rastrea-lo com o seguinte ID de rastreamento:"
651
+
652
+ msgid "Best regards."
653
+ msgstr "Atenciosamente."
654
+
655
+ msgid "Mercado Pago Subscription"
656
+ msgstr "Assinaturas Mercado Pago"
657
+
658
+ msgid "Payment ID:"
659
+ msgstr "ID de pagamento:"
660
+
661
+ msgid "Amount:"
662
+ msgstr "Quantidade:"
663
+
664
+ msgid "This operation could not be completed."
665
+ msgstr "Esta operação não pode ser completada."
666
+
667
+ msgid "Operation successfully completed."
668
+ msgstr "A operação foi realizada com sucesso."
669
+
670
+ msgid "Refund Payment"
671
+ msgstr "Extornar Pgto"
672
+
673
+ msgid "Cancel Payment"
674
+ msgstr "Cancelar Pgto"
675
+
676
+ msgid "Mercado Pago - Subscription"
677
+ msgstr "Mercado Pago - Assinaturas"
678
+
679
+ msgid "A recurrent product is a signature that should be bought isolated in your cart. Please, create separated orders."
680
+ msgstr "Um produto recorrente é uma assinatura que deve ser comprada isoladamente em seu carrinho. Por favor, crie pedidos separadamente."
681
+
682
+ msgid "Recurrent Product"
683
+ msgstr "Produto Recorrente"
684
+
685
+ msgid "Frequency"
686
+ msgstr "Frequência"
687
+
688
+ msgid "Amount of time (in days or months) for the execution of the next payment."
689
+ msgstr "Quantia de tempo (em dias ou meses) para a cobrança do próximo pagamento."
690
+
691
+ msgid "End date"
692
+ msgstr "Data final"
693
+
694
+ msgid "Deadline to generate new charges. Defaults to never if blank."
695
+ msgstr "Data limite para gerar nova cobrança. Por padrão nunca, se deixado em branco."
696
+
697
+ msgid "Months"
698
+ msgstr "Meses"
699
+
700
+ msgid "Indicates the period of time."
701
+ msgstr "Indica o período de tempo."
702
+
703
+ msgid "Make this product a subscription."
704
+ msgstr "Fazer deste produto uma assinatura."
705
+
706
+ msgid "Frequency type"
707
+ msgstr "Tipo de frequência"
708
+
709
+ msgid "Subscribe with Mercado Pago"
710
+ msgstr "Assine com Mercado Pago"
711
+
712
+ msgid "Woo Mercado Pago Module depends on the last version of %s to execute!"
713
+ msgstr "Woo Mercado Pago Module depende da última versão do %s para executar!"
714
+
715
+ msgid "Tracking code:"
716
+ msgstr "Código de rastreamento:"
717
+
718
+ msgid "Tag:"
719
+ msgstr "Etiqueta:"
720
+
721
+ msgid "Shipping is pending"
722
+ msgstr "Envio pendente"
723
+
724
+ msgid "Print"
725
+ msgstr "Imprimir"
726
+
727
+ msgid "Cancel Order"
728
+ msgstr "Cancelar Pedido"
729
+
730
+ msgid "Total of your purchase:"
731
+ msgstr "Total da sua compra:"
732
+
733
+ msgid "Total of your purchase with discount:"
734
+ msgstr "Total da sua compra com desconto:"
735
+
736
+ msgid "*Uppon payment approval"
737
+ msgstr "*Mediante aprovação de pagamento"
738
+
739
+ msgid "Terms and Conditions of Use"
740
+ msgstr "Termos e condições"
741
+
742
+ msgid "with discount from"
743
+ msgstr "com o desconto de"
744
+
745
+ msgid "You will save"
746
+ msgstr "Você economizará"
747
+
748
+ msgid "Please, inform your coupon code"
749
+ msgstr "Por favor, informe o código do seu cupom"
750
+
751
+ msgid "Payment converted from"
752
+ msgstr "Pagamento convertido de"
753
+
754
+ msgid "Installments"
755
+ msgstr "Parcelas"
756
+
757
+ msgid "Choose"
758
+ msgstr "Escolher"
759
+
760
+ msgid "Parameter cardIssuerId can not be null/empty"
761
+ msgstr "O campo [Emitente do cartão] não pode ser nulo/vazio"
762
+
763
+ msgid "Issuer"
764
+ msgstr "Emitente"
765
+
766
+ msgid "Invalid Document Number"
767
+ msgstr "Número do documento inválido"
768
+
769
+ msgid "Parameter docNumber can not be null/empty"
770
+ msgstr "O campo [Número do documento] não pode ser nulo/vazio"
771
+
772
+ msgid "Document number"
773
+ msgstr "Número do CPF"
774
+
775
+ msgid "Invalid Document Type"
776
+ msgstr "Tipo do documento inválido"
777
+
778
+ msgid "Parameter docType can not be null/empty"
779
+ msgstr "O campo [Tipo do documento] não pode ser nulo/vazio"
780
+
781
+ msgid "Document Type"
782
+ msgstr "Tipo de documento"
783
+
784
+ msgid "Invalid Card Holder Name"
785
+ msgstr "Nome do dono do cartão inválido"
786
+
787
+ msgid "Parameter cardholderName can not be null/empty"
788
+ msgstr "O campo [Nome do dono do cartão] não pode ser nulo/vazio"
789
+
790
+ msgid "Card holder name"
791
+ msgstr "Nome do dono do cartão"
792
+
793
+ msgid "Invalid Expiration Date"
794
+ msgstr "Data de expiração inválida"
795
+
796
+ msgid "Year"
797
+ msgstr "Ano"
798
+
799
+ msgid "Expiration year"
800
+ msgstr "Ano de expiração"
801
+
802
+ msgid "Month"
803
+ msgstr "Mês"
804
+
805
+ msgid "Expiration month"
806
+ msgstr "Mês de expiração"
807
+
808
+ msgid "Invalid Card Number"
809
+ msgstr "Número do cartão inválido"
810
+
811
+ msgid "Parameter cardNumber can not be null/empty"
812
+ msgstr "O campo [Número do cartão] não pode ser nulo/vazio"
813
+
814
+ msgid "Credit card number"
815
+ msgstr "Número do cartão de crédito"
816
+
817
+ msgid "Parameter securityCode can not be null/empty"
818
+ msgstr "O campo [Código de segurança] não pode ser nulo/vazio"
819
+
820
+ msgid "Invalid Security Code"
821
+ msgstr "Código de segurança inválido"
822
+
823
+ msgid "Security code"
824
+ msgstr "Código de segurança"
825
+
826
+ msgid "Other Card"
827
+ msgstr "Outro Cartão"
828
+
829
+ msgid "Other Cards"
830
+ msgstr "Outros Cartões"
831
+
832
+ msgid "ended in"
833
+ msgstr "terminado em"
834
+
835
+ msgid "Your Card"
836
+ msgstr "Seus Cartões"
837
+
838
+ msgid "Payment Method"
839
+ msgstr "Método de Pagamento"
840
+
841
+ msgid "Apply"
842
+ msgstr "Aplicar"
843
+
844
+ msgid "Remove"
845
+ msgstr "Remover"
846
+
847
+ msgid "Discount Coupon"
848
+ msgstr "Cupom de Desconto"
849
+
850
+ msgid "Mercado Pago - Credit Card"
851
+ msgstr "Mercado Pago - Cartão de Crédito"
852
+
853
+ msgid "Check your order resume"
854
+ msgstr "Ver o resumo do pedido"
855
+
856
+ msgid "Your payment was refused. You can try again."
857
+ msgstr "Seu pagamento foi rejeitado. Você pode tentar novamente."
858
+
859
+ msgid "Click to try again"
860
+ msgstr "Clique para tentar novamente"
861
+
862
+ msgid "A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?"
863
+ msgstr "Um problema ocorreu ao processar seu pagamento. Você tem certeza que preencheu corretamente todos os campos do formulário do checkout?"
864
+
865
+ msgid "Discount provided by store"
866
+ msgstr "Desconto dado pela loja"
867
+
868
+ msgid "Discount for %s coupon"
869
+ msgstr "Desconto para o cupom %s"
870
+
871
+ msgid "Done, your payment was accredited!"
872
+ msgstr "Pronto, seu pagamento foi aprovado!"
873
+
874
+ msgid "We are processing the payment. In less than an hour we will e-mail you the results."
875
+ msgstr "Estamos processando seu pagamento. Em menos de uma hora você será notificado por email."
876
+
877
+ msgid "We are processing the payment. In less than 2 business days we will tell you by e-mail whether it has accredited or we need more information."
878
+ msgstr "Estamos processando seu pagamento. Em menos de 2 dias úteis você será notificado por email se o pagamento foi aprovado ou se são necessárias informações adicionais."
879
+
880
+ msgid "Check the card number."
881
+ msgstr "Verifique o número do cartão."
882
+
883
+ msgid "Check the expiration date."
884
+ msgstr "Verifique a data de expiração."
885
+
886
+ msgid "Check the information."
887
+ msgstr "Verifique as informações preenchidas."
888
+
889
+ msgid "Check the security code."
890
+ msgstr "Verifique o código de segurança informado."
891
+
892
+ msgid "We could not process your payment."
893
+ msgstr "Não foi possível processar seu pagamento."
894
+
895
+ msgid "You must authorize the payment of your orders."
896
+ msgstr "Você precisa autorizar o pagamento de seus pedidos."
897
+
898
+ msgid "Call your card issuer to activate your card. The phone is on the back of your card."
899
+ msgstr "Contacte o emissor de seu cartão para ativá-lo. O telefone está no verso do seu cartão."
900
+
901
+ msgid "You already made a payment for that amount. If you need to repay, use another card or other payment method."
902
+ msgstr "Você já realizou o pagamento para esse valor. Se precisa pagar novamente, use outro cartão ou outro método de pagamento."
903
+
904
+ msgid "Your payment was rejected. Choose another payment method. We recommend cash."
905
+ msgstr "Seu pagamento foi rejeitado. Escolha outro método de pagamento. Recomenda-se dinheiro."
906
+
907
+ msgid "Your payment do not have sufficient funds."
908
+ msgstr "Seu pagamento não possui fundos suficientes."
909
+
910
+ msgid "Your payment does not process payments with selected installments."
911
+ msgstr "Seu pagamento não pode processar o parcelamento selecionado."
912
+
913
+ msgid "You have reached the limit of allowed attempts. Choose another card or another payment method."
914
+ msgstr "Você atingiu o limite de tentativas permitidas. Escolha outro cartão ou outro método de pagamento."
915
+
916
+ msgid "This payment method did not process the payment."
917
+ msgstr "Este método de pagamento não pôde processar o seu pagamento."
918
+
919
+ msgid "Please, inform your email in billing address to use this feature"
920
+ msgstr "Por favor, informe seu email no endereço de cobrança para fazer uso desta funcionalidade"
921
+
922
+ msgid "Waiting for the ticket payment."
923
+ msgstr "Aguardando o pagamento do boleto."
924
+
925
+ msgid "here"
926
+ msgstr "aqui"
927
+
928
+ msgid "To reprint the ticket click "
929
+ msgstr "Para reimprimir o boleto clique "
930
+
931
+ msgid "A problem was occurred when processing your payment. Please, try again."
932
+ msgstr "Um problema ocorreu ao processar seu pagamento. Por favor, tente novamente."
933
+
934
+ msgid "Print the Ticket"
935
+ msgstr "Imprimir o boleto"
936
+
937
+ msgid "Thank you for your order. Please, pay the ticket to get your order approved."
938
+ msgstr "Obrigado pelo seu pedido. Por favor, pague o boleto para ter seu pedido aprovado."
939
+
940
+ msgid "Important: The order will be confirmed only after the payment approval."
941
+ msgstr "Importante: O pedido só será confirmado após a aprovação do pagamento."
942
+
943
+ msgid "Click [Place order] button. The ticket will be generated and you will be redirected to print it."
944
+ msgstr "Clique no botão [Finalizar compra]. O boleto será gerado e você será redirecionado para imprimí-lo."
945
+
946
+ msgid "Please, select the ticket issuer of your preference."
947
+ msgstr "Por favor, selecione o emissor de sua preferência."
948
+
949
+ msgid "Needed informations due to brazilian bank compliances numbers 3.461/09, 3.598/12 and 3.656/13 of the Central Bank of Brazil."
950
+ msgstr "Informações solicitadas em conformidade com as normas das circulares Nro. 3.461/09, 3.598/12 e 3.656/13 do Banco Central do Brasil."
951
+
952
+ msgid "NAME"
953
+ msgstr "NOME"
954
+
955
+ msgid "SURNAME"
956
+ msgstr "SOBRENOME"
957
+
958
+ msgid "DOCUMENT"
959
+ msgstr "CPF"
960
+
961
+ msgid "ADDRESS"
962
+ msgstr "ENDEREÇO"
963
+
964
+ msgid "NUMBER"
965
+ msgstr "NÚMERO"
966
+
967
+ msgid "CITY"
968
+ msgstr "CIDADE"
969
+
970
+ msgid "STATE"
971
+ msgstr "ESTADO"
972
+
973
+ msgid "ZIP"
974
+ msgstr "CEP"
975
+
976
+ msgid "You must inform you NAME"
977
+ msgstr "Obrigatório o preenchimento do Nome"
978
+
979
+ msgid "You must inform your SURNAME"
980
+ msgstr "Obrigatório o preenchimento do Sobrenome"
981
+
982
+ msgid "You must inform your DOCUMENT"
983
+ msgstr "Obrigatório o preenchimento do documento"
984
+
985
+ msgid "You must inform your ADDRESS"
986
+ msgstr "Obrigatório o preenchimento do Endereço"
987
+
988
+ msgid "You must inform your ADDRESS NUMBER"
989
+ msgstr "Obrigatório o preenchimento do número residencial"
990
+
991
+ msgid "You must inform your CITY"
992
+ msgstr "Obrigatório informar a cidade"
993
+
994
+ msgid "You must inform your STATE"
995
+ msgstr "Obrigatório informar o estado"
996
+
997
+ msgid "You must inform your ZIP"
998
+ msgstr "Obrigatório informar o CEP"
999
+
1000
+ msgid "Fisical Person"
1001
+ msgstr "Pessoa Física"
1002
+
1003
+ msgid "Legal Person"
1004
+ msgstr "Pessoa Jurídica"
1005
+
1006
+ msgid "SOCIAL NAME"
1007
+ msgstr "RAZÃO SOCIAL"
1008
+
1009
+ msgid "CNPJ"
1010
+ msgstr "CNPJ"
i18n/languages/woocommerce-mercadopago.pot ADDED
@@ -0,0 +1,1010 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # WordPress Blank Pot
2
+ # Copyright (C) 2014 ...
3
+ # This file is distributed under the GNU General Public License v2 or later.
4
+ msgid ""
5
+ msgstr ""
6
+ "Project-Id-Version: WordPress Blank Pot v1.0.0\n"
7
+ "POT-Creation-Date: 2016-05-23 14:52-0300\n"
8
+ "PO-Revision-Date: \n"
9
+ "Language-Team: Product Development <translations@example.com>\n"
10
+ "Report-Msgid-Bugs-To: Translator Name <translations@example.com>\n"
11
+ "MIME-Version: 1.0\n"
12
+ "Content-Type: text/plain; charset=UTF-8\n"
13
+ "Content-Transfer-Encoding: 8bit\n"
14
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
+ "X-Textdomain-Support: yesX-Generator: Poedit 1.6.4\n"
16
+ "X-Poedit-SourceCharset: UTF-8\n"
17
+ "X-Poedit-KeywordsList: __;_e;esc_html_e;esc_html_x:1,2c;esc_html__;esc_attr_e;esc_attr_x:1,2c;esc_attr__;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_x:1,2c;_n:1,2;"
18
+ "_n_noop:1,2;__ngettext:1,2;__ngettext_noop:1,2;_c,_nc:4c,1,2\n"
19
+ "X-Poedit-Basepath: ../Documents/woocommerce (MAMP)/wp-content/plugins/woo-mercado-pago-module\n"
20
+ "X-Generator: Poedit 1.8.7\n"
21
+ "Last-Translator: \n"
22
+ "Language: es_MX\n"
23
+ "X-Poedit-SearchPath-0: .\n"
24
+
25
+ msgid "This is the <strong>oficial</strong> module of Mercado Pago for WooCommerce plugin. This module enables WooCommerce to use Mercado Pago as a payment Gateway for purchases made in your e-commerce store."
26
+ msgstr ""
27
+
28
+ msgid "Mercado Pago Settings"
29
+ msgstr ""
30
+
31
+ msgid "Rate Us"
32
+ msgstr ""
33
+
34
+ msgid "Tutorial"
35
+ msgstr ""
36
+
37
+ msgid "Report Issue"
38
+ msgstr ""
39
+
40
+ msgid "ERROR: It was not possible to convert the unsupported currency"
41
+ msgstr ""
42
+
43
+ msgid "to"
44
+ msgstr ""
45
+
46
+ msgid "Currency conversions should be made outside this module."
47
+ msgstr ""
48
+
49
+ msgid "ATTENTION: The currency"
50
+ msgstr ""
51
+
52
+ msgid "defined in WooCommerce is different from the one used in your credentials country.<br>The currency for transactions in this payment method will be"
53
+ msgstr ""
54
+
55
+ msgid "CURRENCY CONVERTED: Your store is converting currency from"
56
+ msgstr ""
57
+
58
+ msgid "Colombia"
59
+ msgstr ""
60
+
61
+ msgid "Argentine"
62
+ msgstr ""
63
+
64
+ msgid "Brazil"
65
+ msgstr ""
66
+
67
+ msgid "Chile"
68
+ msgstr ""
69
+
70
+ msgid "Mexico"
71
+ msgstr ""
72
+
73
+ msgid "Uruguay"
74
+ msgstr ""
75
+
76
+ msgid "Venezuela"
77
+ msgstr ""
78
+
79
+ msgid "Peru"
80
+ msgstr ""
81
+
82
+ msgid "Update WooCommerce order to "
83
+ msgstr ""
84
+
85
+ msgid "You do not have sufficient permissions to access this page."
86
+ msgstr ""
87
+
88
+ msgid "WooCommerce is installed and enabled."
89
+ msgstr ""
90
+
91
+ msgid "You don\'t have WooCommerce installed and enabled."
92
+ msgstr ""
93
+
94
+ msgid "Your PHP version is OK."
95
+ msgstr ""
96
+
97
+ msgid "Your PHP version do not support this module. You have %s, minimal required is %s."
98
+ msgstr ""
99
+
100
+ msgid "cURL is installed."
101
+ msgstr ""
102
+
103
+ msgid "cURL is not installed."
104
+ msgstr ""
105
+
106
+ msgid "SSL is missing in your site."
107
+ msgstr ""
108
+
109
+ msgid "Your site has SSL enabled."
110
+ msgstr ""
111
+
112
+ msgid "Basic Checkout"
113
+ msgstr ""
114
+
115
+ msgid "Custom Checkout"
116
+ msgstr ""
117
+
118
+ msgid "Ticket"
119
+ msgstr ""
120
+
121
+ msgid "Subscription"
122
+ msgstr ""
123
+
124
+ msgid "Configure your Client_id and Client_secret to have access to more options."
125
+ msgstr ""
126
+
127
+ msgid "Define which type of products your store sells."
128
+ msgstr ""
129
+
130
+ msgid "Your <strong>client_id</strong> and <strong>client_secret</strong> are <strong>valid</strong> for"
131
+ msgstr ""
132
+
133
+ msgid "Your <strong>client_id</strong> and <strong>client_secret</strong> are <strong>not valid</strong>!"
134
+ msgstr ""
135
+
136
+ msgid "These credentials are used in <strong>Basic Checkout</strong> and <strong>Subscriptions</strong>. Access it for your country:<br>"
137
+ msgstr ""
138
+
139
+ msgid "or"
140
+ msgstr ""
141
+
142
+ msgid "Your <strong>public_key</strong> and <strong>access_token</strong> are <strong>valid</strong> for"
143
+ msgstr ""
144
+
145
+ msgid "Your <strong>public_key</strong> and <strong>access_token</strong> are <strong>not valid</strong>!"
146
+ msgstr ""
147
+
148
+ msgid "These credentials are used in <strong>Custom Checkout</strong> and <strong>Tickets</strong>. Access it for your country:<br>"
149
+ msgstr ""
150
+
151
+ msgid "This module enables WooCommerce to use Mercado Pago as payment method for purchases made in your virtual store."
152
+ msgstr ""
153
+
154
+ msgid "Payment Gateways"
155
+ msgstr ""
156
+
157
+ msgid "Basic Checkout & Subscriptions"
158
+ msgstr ""
159
+
160
+ msgid "Custom Checkout & Tickets"
161
+ msgstr ""
162
+
163
+ msgid "Insert your Mercado Pago Client_id."
164
+ msgstr ""
165
+
166
+ msgid "Insert your Mercado Pago Client_secret."
167
+ msgstr ""
168
+
169
+ msgid "Currency Conversion"
170
+ msgstr ""
171
+
172
+ msgid "If the used currency in WooCommerce is different or not supported by Mercado Pago, convert values of your transactions using Mercado Pago currency ratio. This service may slow down your server as each conversion is made in the checkout moment."
173
+ msgstr ""
174
+
175
+ msgid "Insert your Mercado Pago Public key."
176
+ msgstr ""
177
+
178
+ msgid "Insert your Mercado Pago Access token."
179
+ msgstr ""
180
+
181
+ msgid "Status Mapping of Payment x Order"
182
+ msgstr ""
183
+
184
+ msgid "Here you can configure details about Mercado Pago payments and WooCommerce order statuses."
185
+ msgstr ""
186
+
187
+ msgid "For status mappings between payment/order you can use the defaults, or check references of %s and %s"
188
+ msgstr ""
189
+
190
+ msgid "Status for PENDING"
191
+ msgstr ""
192
+
193
+ msgid "when Mercado Pago updates a payment status to PENDING."
194
+ msgstr ""
195
+
196
+ msgid "Status for APPROVED"
197
+ msgstr ""
198
+
199
+ msgid "When Mercado Pago updates a payment status to APPROVED."
200
+ msgstr ""
201
+
202
+ msgid "Status for IN_PROCESS"
203
+ msgstr ""
204
+
205
+ msgid "When Mercado Pago updates a payment status to IN_PROCESS."
206
+ msgstr ""
207
+
208
+ msgid "Status for IN_MEDIATION"
209
+ msgstr ""
210
+
211
+ msgid "When Mercado Pago updates a payment status to IN_MEDIATION."
212
+ msgstr ""
213
+
214
+ msgid "Status for REJECTED"
215
+ msgstr ""
216
+
217
+ msgid "When Mercado Pago updates a payment status to REJECTED."
218
+ msgstr ""
219
+
220
+ msgid "Status for CANCELLED"
221
+ msgstr ""
222
+
223
+ msgid "When Mercado Pago updates a payment status to CANCELLED."
224
+ msgstr ""
225
+
226
+ msgid "Status for REFUNDED"
227
+ msgstr ""
228
+
229
+ msgid "When Mercado Pago updates a payment status to REFUNDED."
230
+ msgstr ""
231
+
232
+ msgid "Status for CHARGED_BACK"
233
+ msgstr ""
234
+
235
+ msgid "When Mercado Pago updates a payment status to CHARGED_BACK."
236
+ msgstr ""
237
+
238
+ msgid "Store Settings"
239
+ msgstr ""
240
+
241
+ msgid "Here you can place details about your store."
242
+ msgstr ""
243
+
244
+ msgid "Statement Descriptor"
245
+ msgstr ""
246
+
247
+ msgid "The description that will be shown in your customer\'s invoice."
248
+ msgstr ""
249
+
250
+ msgid "Store Category"
251
+ msgstr ""
252
+
253
+ msgid "Store Identificator"
254
+ msgstr ""
255
+
256
+ msgid "Please, inform a prefix to your store."
257
+ msgstr ""
258
+
259
+ msgid "If you use your Mercado Pago account on multiple stores you should make sure that this prefix is unique as Mercado Pago will not allow orders with same identificators."
260
+ msgstr ""
261
+
262
+ msgid "Test and Debug Options"
263
+ msgstr ""
264
+
265
+ msgid "Tools for debug and testing your integration."
266
+ msgstr ""
267
+
268
+ msgid "Debug and Log"
269
+ msgstr ""
270
+
271
+ msgid "Enable log (Keep this disabled if you’re in production)."
272
+ msgstr ""
273
+
274
+ msgid "Register event logs of Mercado Pago, such as API requests, for"
275
+ msgstr ""
276
+
277
+ msgid "Tickets"
278
+ msgstr ""
279
+
280
+ msgid "You can access your logs in "
281
+ msgstr ""
282
+
283
+ msgid "WooCommerce &gt; System Status &gt; Logs"
284
+ msgstr ""
285
+
286
+ msgid "Files are located in: "
287
+ msgstr ""
288
+
289
+ msgid "Mercado Pago Sandbox"
290
+ msgstr ""
291
+
292
+ msgid "Enable Mercado Pago Sandbox."
293
+ msgstr ""
294
+
295
+ msgid "This option allows you to test payments inside a sandbox environment."
296
+ msgstr ""
297
+
298
+ msgid "Mercado Pago - Basic Checkout"
299
+ msgstr ""
300
+
301
+ msgid "Receive payments in a matter of minutes. We make it easy for you: just tell us what you want to collect and we’ll take care of the rest."
302
+ msgstr ""
303
+
304
+ msgid "It appears that your credentials are not properly configured.<br/>Please, go to %s and configure it."
305
+ msgstr ""
306
+
307
+ msgid "This appears to be an invalid URL."
308
+ msgstr ""
309
+
310
+ msgid "Where customers should be redirected after a successful purchase. Let blank to redirect to the default store order resume page."
311
+ msgstr ""
312
+
313
+ msgid "Where customers should be redirected after a failed purchase. Let blank to redirect to the default store order resume page."
314
+ msgstr ""
315
+
316
+ msgid "Where customers should be redirected after a pending purchase. Let blank to redirect to the default store order resume page."
317
+ msgstr ""
318
+
319
+ msgid "Enable/Disable"
320
+ msgstr ""
321
+
322
+ msgid "Enable Basic Checkout"
323
+ msgstr ""
324
+
325
+ msgid "Checkout Interface: How checkout is shown"
326
+ msgstr ""
327
+
328
+ msgid "Title"
329
+ msgstr ""
330
+
331
+ msgid "Title shown to the client in the checkout."
332
+ msgstr ""
333
+
334
+ msgid "Mercado Pago"
335
+ msgstr ""
336
+
337
+ msgid "Description"
338
+ msgstr ""
339
+
340
+ msgid "Description shown to the client in the checkout."
341
+ msgstr ""
342
+
343
+ msgid "Pay with Mercado Pago"
344
+ msgstr ""
345
+
346
+ msgid "Integration Method"
347
+ msgstr ""
348
+
349
+ msgid "Select how your clients should interact with Mercado Pago. Modal Window (inside your store), Redirect (Client is redirected to Mercado Pago), or iFrame (an internal window is embedded to the page layout)."
350
+ msgstr ""
351
+
352
+ msgid "iFrame"
353
+ msgstr ""
354
+
355
+ msgid "Modal Window"
356
+ msgstr ""
357
+
358
+ msgid "Redirect"
359
+ msgstr ""
360
+
361
+ msgid "iFrame Width"
362
+ msgstr ""
363
+
364
+ msgid "If your integration method is iFrame, please inform the payment iFrame width."
365
+ msgstr ""
366
+
367
+ msgid "iFrame Height"
368
+ msgstr ""
369
+
370
+ msgid "If your integration method is iFrame, please inform the payment iFrame height."
371
+ msgstr ""
372
+
373
+ msgid "Checkout Navigation: How checkout redirections will behave"
374
+ msgstr ""
375
+
376
+ msgid "Auto Return"
377
+ msgstr ""
378
+
379
+ msgid "Automatic Return After Payment"
380
+ msgstr ""
381
+
382
+ msgid "After the payment, client is automatically redirected."
383
+ msgstr ""
384
+
385
+ msgid "Sucess URL"
386
+ msgstr ""
387
+
388
+ msgid "Failure URL"
389
+ msgstr ""
390
+
391
+ msgid "Pending URL"
392
+ msgstr ""
393
+
394
+ msgid "Payment Options: How payment options behaves"
395
+ msgstr ""
396
+
397
+ msgid "Max installments"
398
+ msgstr ""
399
+
400
+ msgid "Select the max number of installments for your customers."
401
+ msgstr ""
402
+
403
+ msgid "1x installment"
404
+ msgstr ""
405
+
406
+ msgid "2x installmens"
407
+ msgstr ""
408
+
409
+ msgid "3x installmens"
410
+ msgstr ""
411
+
412
+ msgid "4x installmens"
413
+ msgstr ""
414
+
415
+ msgid "5x installmens"
416
+ msgstr ""
417
+
418
+ msgid "6x installmens"
419
+ msgstr ""
420
+
421
+ msgid "10x installmens"
422
+ msgstr ""
423
+
424
+ msgid "12x installmens"
425
+ msgstr ""
426
+
427
+ msgid "15x installmens"
428
+ msgstr ""
429
+
430
+ msgid "18x installmens"
431
+ msgstr ""
432
+
433
+ msgid "24x installmens"
434
+ msgstr ""
435
+
436
+ msgid "Exclude Payment Methods"
437
+ msgstr ""
438
+
439
+ msgid "Select the payment methods that you <strong>don\'t</strong> want to receive with Mercado Pago."
440
+ msgstr ""
441
+
442
+ msgid "Discount by Gateway"
443
+ msgstr ""
444
+
445
+ msgid "Give a percentual (0 to 100) discount for your customers if they use this payment gateway."
446
+ msgstr ""
447
+
448
+ msgid "Two Cards Mode"
449
+ msgstr ""
450
+
451
+ msgid "Payments with Two Cards"
452
+ msgstr ""
453
+
454
+ msgid "Your customer will be able to use two different cards to pay the order."
455
+ msgstr ""
456
+
457
+ msgid "Thank you for your order. Please, proceed with your payment clicking in the bellow button."
458
+ msgstr ""
459
+
460
+ msgid "Cancel order &amp; Clear cart"
461
+ msgstr ""
462
+
463
+ msgid "Thank you for your order. Proceed with your payment completing the following information."
464
+ msgstr ""
465
+
466
+ msgid "An error occurred when proccessing your payment. Please try again or contact us for assistence.""
467
+ msgstr ""
468
+
469
+ msgid "Shipping service used by store"
470
+ msgstr ""
471
+
472
+ msgid "Discount of"
473
+ msgstr ""
474
+
475
+ msgid "Mercado Pago Request Failure"
476
+ msgstr ""
477
+
478
+ msgid "Payer email"
479
+ msgstr ""
480
+
481
+ msgid "Payment type"
482
+ msgstr ""
483
+
484
+ msgid "Payment approved."
485
+ msgstr ""
486
+
487
+ msgid "Customer haven\'t paid yet."
488
+ msgstr ""
489
+
490
+ msgid "Payment under review."
491
+ msgstr ""
492
+
493
+ msgid "The payment was refused. The customer can try again."
494
+ msgstr ""
495
+
496
+ msgid "The payment was refunded to the customer."
497
+ msgstr ""
498
+
499
+ msgid "The payment was cancelled."
500
+ msgstr ""
501
+
502
+ msgid "The payment is under mediation or it was charged-back."
503
+ msgstr ""
504
+
505
+ msgid "Mercado Pago - Custom Checkout"
506
+ msgstr ""
507
+
508
+ msgid "We give you the possibility to adapt the payment experience you want to offer 100% in your website, mobile app or anywhere you want. You can build the design that best fits your business model, aiming to maximize conversion."
509
+ msgstr ""
510
+
511
+ msgid "Enable Custom Checkout"
512
+ msgstr ""
513
+
514
+ msgid "Coupons"
515
+ msgstr ""
516
+
517
+ msgid "Enable coupons of discounts"
518
+ msgstr ""
519
+
520
+ msgid "If there is a Mercado Pago campaign, allow your store to give discounts to customers."
521
+ msgstr ""
522
+
523
+ msgid "Binary Mode"
524
+ msgstr ""
525
+
526
+ msgid "Enable binary mode for checkout status"
527
+ msgstr ""
528
+
529
+ msgid "When charging a credit card, only [approved] or [reject] status will be taken."
530
+ msgstr ""
531
+
532
+ msgid "This service allows you to subscribe customers to subscription plans."
533
+ msgstr ""
534
+
535
+ msgid "It appears that your country is not supported for this solution.<br/>Please, use another payment method or go to %s to use another credential."
536
+ msgstr ""
537
+
538
+ msgid "Enable Subscription"
539
+ msgstr ""
540
+
541
+ msgid "Instant Payment Notification (IPN) URL"
542
+ msgstr ""
543
+
544
+ msgid "For this solution, you need to configure your IPN URL. You can access it in your account for your specific country in:"
545
+ msgstr ""
546
+
547
+ msgid "Your IPN URL to receive instant payment notifications is"
548
+ msgstr ""
549
+
550
+ msgid "Mercado Pago - Ticket"
551
+ msgstr ""
552
+
553
+ msgid "UNDER BUILDING..."
554
+ msgstr ""
555
+
556
+ msgid "Enable Ticket Payment Method"
557
+ msgstr ""
558
+
559
+ msgid "Ticket Interface: How checkout is shown"
560
+ msgstr ""
561
+
562
+ msgid "Title shown to the client in the ticket."
563
+ msgstr ""
564
+
565
+ msgid "Description shown to the client in the ticket."
566
+ msgstr ""
567
+
568
+ msgid "Stock Reduce"
569
+ msgstr ""
570
+
571
+ msgid "Reduce Stock in Order Generation"
572
+ msgstr ""
573
+
574
+ msgid "Enable this to reduce the stock on order creation. Disable this to reduce <strong>after</strong> the payment approval."
575
+ msgstr ""
576
+
577
+ msgid "Mercado Envios is a shipping method available only for payments with Mercado Pago."
578
+ msgstr ""
579
+
580
+ msgid "Free Shipping"
581
+ msgstr ""
582
+
583
+ msgid "Day"
584
+ msgstr ""
585
+
586
+ msgid "Days"
587
+ msgstr ""
588
+
589
+ msgid "Enable the two shipping methods the Mercado Envios (Express and Normal) for the proper functioning of the module."
590
+ msgstr ""
591
+
592
+ msgid "Mercado Envios"
593
+ msgstr ""
594
+
595
+ msgid "This controls the title which the user sees during checkout."
596
+ msgstr ""
597
+
598
+ msgid "Enable free shipping for this shipping method"
599
+ msgstr ""
600
+
601
+ msgid "Delivery Time"
602
+ msgstr ""
603
+
604
+ msgid "Show estimated delivery time"
605
+ msgstr ""
606
+
607
+ msgid "Display the estimated delivery time in working days."
608
+ msgstr ""
609
+
610
+ msgid "Tag ready to print"
611
+ msgstr ""
612
+
613
+ msgid "Tag printed"
614
+ msgstr ""
615
+
616
+ msgid "Unsuccessful"
617
+ msgstr ""
618
+
619
+ msgid "Delayed shipping"
620
+ msgstr ""
621
+
622
+ msgid "Missing recipient for delivery"
623
+ msgstr ""
624
+
625
+ msgid "In return to sender"
626
+ msgstr ""
627
+
628
+ msgid "Buyer initiates complaint and requested a refund."
629
+ msgstr ""
630
+
631
+ msgid "Order"
632
+ msgstr ""
633
+
634
+ msgid "Mercado Envios Tracking ID"
635
+ msgstr ""
636
+
637
+ msgid "Hello,"
638
+ msgstr ""
639
+
640
+ msgid "Your order"
641
+ msgstr ""
642
+
643
+ msgid "made in"
644
+ msgstr ""
645
+
646
+ msgid "used Mercado Envios as its shipment method."
647
+ msgstr ""
648
+
649
+ msgid "You can track it with the following Tracking ID:"
650
+ msgstr ""
651
+
652
+ msgid "Best regards."
653
+ msgstr ""
654
+
655
+ msgid "Mercado Pago Subscription"
656
+ msgstr ""
657
+
658
+ msgid "Payment ID:"
659
+ msgstr ""
660
+
661
+ msgid "Amount:"
662
+ msgstr ""
663
+
664
+ msgid "This operation could not be completed."
665
+ msgstr ""
666
+
667
+ msgid "Operation successfully completed."
668
+ msgstr ""
669
+
670
+ msgid "Refund Payment"
671
+ msgstr ""
672
+
673
+ msgid "Cancel Payment"
674
+ msgstr ""
675
+
676
+ msgid "Mercado Pago - Subscription"
677
+ msgstr ""
678
+
679
+ msgid "A recurrent product is a signature that should be bought isolated in your cart. Please, create separated orders."
680
+ msgstr ""
681
+
682
+ msgid "Recurrent Product"
683
+ msgstr ""
684
+
685
+ msgid "Frequency"
686
+ msgstr ""
687
+
688
+ msgid "Amount of time (in days or months) for the execution of the next payment."
689
+ msgstr ""
690
+
691
+ msgid "End date"
692
+ msgstr ""
693
+
694
+ msgid "Deadline to generate new charges. Defaults to never if blank."
695
+ msgstr ""
696
+
697
+ msgid "Months"
698
+ msgstr ""
699
+
700
+ msgid "Indicates the period of time."
701
+ msgstr ""
702
+
703
+ msgid "Make this product a subscription."
704
+ msgstr ""
705
+
706
+ msgid "Frequency type"
707
+ msgstr ""
708
+
709
+ msgid "Subscribe with Mercado Pago"
710
+ msgstr ""
711
+
712
+ msgid "Woo Mercado Pago Module depends on the last version of %s to execute!"
713
+ msgstr ""
714
+
715
+ msgid "Tracking code:"
716
+ msgstr ""
717
+
718
+ msgid "Tag:"
719
+ msgstr ""
720
+
721
+ msgid "Shipping is pending"
722
+ msgstr ""
723
+
724
+ msgid "Print"
725
+ msgstr ""
726
+
727
+ msgid "Cancel Order"
728
+ msgstr ""
729
+
730
+ msgid "Total of your purchase:"
731
+ msgstr ""
732
+
733
+ msgid "Total of your purchase with discount:"
734
+ msgstr ""
735
+
736
+ msgid "*Uppon payment approval"
737
+ msgstr ""
738
+
739
+ msgid "Terms and Conditions of Use"
740
+ msgstr ""
741
+
742
+ msgid "with discount from"
743
+ msgstr ""
744
+
745
+ msgid "You will save"
746
+ msgstr ""
747
+
748
+ msgid "Please, inform your coupon code"
749
+ msgstr ""
750
+
751
+ msgid "Payment converted from"
752
+ msgstr ""
753
+
754
+ msgid "Installments"
755
+ msgstr ""
756
+
757
+ msgid "Choose"
758
+ msgstr ""
759
+
760
+ msgid "Parameter cardIssuerId can not be null/empty"
761
+ msgstr ""
762
+
763
+ msgid "Issuer"
764
+ msgstr ""
765
+
766
+ msgid "Invalid Document Number"
767
+ msgstr ""
768
+
769
+ msgid "Parameter docNumber can not be null/empty"
770
+ msgstr ""
771
+
772
+ msgid "Document number"
773
+ msgstr ""
774
+
775
+ msgid "Invalid Document Type"
776
+ msgstr ""
777
+
778
+ msgid "Parameter docType can not be null/empty"
779
+ msgstr ""
780
+
781
+ msgid "Document Type"
782
+ msgstr ""
783
+
784
+ msgid "Invalid Card Holder Name"
785
+ msgstr ""
786
+
787
+ msgid "Parameter cardholderName can not be null/empty"
788
+ msgstr ""
789
+
790
+ msgid "Card holder name"
791
+ msgstr ""
792
+
793
+ msgid "Invalid Expiration Date"
794
+ msgstr ""
795
+
796
+ msgid "Year"
797
+ msgstr ""
798
+
799
+ msgid "Expiration year"
800
+ msgstr ""
801
+
802
+ msgid "Month"
803
+ msgstr ""
804
+
805
+ msgid "Expiration month"
806
+ msgstr ""
807
+
808
+ msgid "Invalid Card Number"
809
+ msgstr ""
810
+
811
+ msgid "Parameter cardNumber can not be null/empty"
812
+ msgstr ""
813
+
814
+ msgid "Credit card number"
815
+ msgstr ""
816
+
817
+ msgid "Parameter securityCode can not be null/empty"
818
+ msgstr ""
819
+
820
+ msgid "Invalid Security Code"
821
+ msgstr ""
822
+
823
+ msgid "Security code"
824
+ msgstr ""
825
+
826
+ msgid "Other Card"
827
+ msgstr ""
828
+
829
+ msgid "Other Cards"
830
+ msgstr ""
831
+
832
+ msgid "ended in"
833
+ msgstr ""
834
+
835
+ msgid "Your Card"
836
+ msgstr ""
837
+
838
+ msgid "Payment Method"
839
+ msgstr ""
840
+
841
+ msgid "Apply"
842
+ msgstr ""
843
+
844
+ msgid "Remove"
845
+ msgstr ""
846
+
847
+ msgid "Discount Coupon"
848
+ msgstr ""
849
+
850
+ msgid "Mercado Pago - Credit Card"
851
+ msgstr ""
852
+
853
+ msgid "Check your order resume"
854
+ msgstr ""
855
+
856
+ msgid "Your payment was refused. You can try again."
857
+ msgstr ""
858
+
859
+ msgid "Click to try again"
860
+ msgstr ""
861
+
862
+ msgid "A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?"
863
+ msgstr ""
864
+
865
+ msgid "Discount provided by store"
866
+ msgstr ""
867
+
868
+ msgid "Discount for %s coupon"
869
+ msgstr ""
870
+
871
+ msgid "Done, your payment was accredited!"
872
+ msgstr ""
873
+
874
+ msgid "We are processing the payment. In less than an hour we will e-mail you the results."
875
+ msgstr ""
876
+
877
+ msgid "We are processing the payment. In less than 2 business days we will tell you by e-mail whether it has accredited or we need more information."
878
+ msgstr ""
879
+
880
+ msgid "Check the card number."
881
+ msgstr ""
882
+
883
+ msgid "Check the expiration date."
884
+ msgstr ""
885
+
886
+ msgid "Check the information."
887
+ msgstr ""
888
+
889
+ msgid "Check the security code."
890
+ msgstr ""
891
+
892
+ msgid "We could not process your payment."
893
+ msgstr ""
894
+
895
+ msgid "You must authorize the payment of your orders."
896
+ msgstr ""
897
+
898
+ msgid "Call your card issuer to activate your card. The phone is on the back of your card."
899
+ msgstr ""
900
+
901
+ msgid "You already made a payment for that amount. If you need to repay, use another card or other payment method."
902
+ msgstr ""
903
+
904
+ msgid "Your payment was rejected. Choose another payment method. We recommend cash."
905
+ msgstr ""
906
+
907
+ msgid "Your payment do not have sufficient funds."
908
+ msgstr ""
909
+
910
+ msgid "Your payment does not process payments with selected installments."
911
+ msgstr ""
912
+
913
+ msgid "You have reached the limit of allowed attempts. Choose another card or another payment method."
914
+ msgstr ""
915
+
916
+ msgid "This payment method did not process the payment."
917
+ msgstr ""
918
+
919
+ msgid "Please, inform your email in billing address to use this feature"
920
+ msgstr ""
921
+
922
+ msgid "Waiting for the ticket payment."
923
+ msgstr ""
924
+
925
+ msgid "here"
926
+ msgstr ""
927
+
928
+ msgid "To reprint the ticket click "
929
+ msgstr ""
930
+
931
+ msgid "A problem was occurred when processing your payment. Please, try again."
932
+ msgstr ""
933
+
934
+ msgid "Print the Ticket"
935
+ msgstr ""
936
+
937
+ msgid "Thank you for your order. Please, pay the ticket to get your order approved."
938
+ msgstr ""
939
+
940
+ msgid "Important: The order will be confirmed only after the payment approval."
941
+ msgstr ""
942
+
943
+ msgid "Click [Place order] button. The ticket will be generated and you will be redirected to print it."
944
+ msgstr ""
945
+
946
+ msgid "Please, select the ticket issuer of your preference."
947
+ msgstr ""
948
+
949
+ msgid "Needed informations due to brazilian bank compliances numbers 3.461/09, 3.598/12 and 3.656/13 of the Central Bank of Brazil."
950
+ msgstr ""
951
+
952
+ msgid "NAME"
953
+ msgstr ""
954
+
955
+ msgid "SURNAME"
956
+ msgstr ""
957
+
958
+ msgid "DOCUMENT"
959
+ msgstr ""
960
+
961
+ msgid "ADDRESS"
962
+ msgstr ""
963
+
964
+ msgid "NUMBER"
965
+ msgstr ""
966
+
967
+ msgid "CITY"
968
+ msgstr ""
969
+
970
+ msgid "STATE"
971
+ msgstr ""
972
+
973
+ msgid "ZIP"
974
+ msgstr ""
975
+
976
+ msgid "You must inform you NAME"
977
+ msgstr ""
978
+
979
+ msgid "You must inform your SURNAME"
980
+ msgstr ""
981
+
982
+ msgid "You must inform your DOCUMENT"
983
+ msgstr ""
984
+
985
+ msgid "You must inform your ADDRESS"
986
+ msgstr ""
987
+
988
+ msgid "You must inform your ADDRESS NUMBER"
989
+ msgstr ""
990
+
991
+ msgid "You must inform your CITY"
992
+ msgstr ""
993
+
994
+ msgid "You must inform your STATE"
995
+ msgstr ""
996
+
997
+ msgid "You must inform your ZIP"
998
+ msgstr ""
999
+
1000
+ msgid "Fisical Person"
1001
+ msgstr ""
1002
+
1003
+ msgid "Legal Person"
1004
+ msgstr ""
1005
+
1006
+ msgid "SOCIAL NAME"
1007
+ msgstr ""
1008
+
1009
+ msgid "CNPJ"
1010
+ msgstr ""
includes/WC_WooMercadoPago_BasicGateway.php ADDED
@@ -0,0 +1,1477 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Part of Woo Mercado Pago Module
5
+ * Author - Mercado Pago
6
+ * Developer - Marcelo Tomio Hama / marcelo.hama@mercadolivre.com
7
+ * Copyright - Copyright(c) MercadoPago [https://www.mercadopago.com]
8
+ * License - https://www.gnu.org/licenses/gpl.html GPL version 2 or higher
9
+ */
10
+
11
+ // This include Mercado Pago library SDK
12
+ require_once dirname( __FILE__ ) . '/sdk/lib/mercadopago.php';
13
+
14
+ /**
15
+ * Summary: Extending from WooCommerce Payment Gateway class.
16
+ * Description: This class implements Mercado Pago Basic checkout.
17
+ * @since 3.0.0
18
+ */
19
+ class WC_WooMercadoPago_BasicGateway extends WC_Payment_Gateway {
20
+
21
+ public function __construct() {
22
+
23
+ // Mercao Pago instance.
24
+ $this->site_data = WC_Woo_Mercado_Pago_Module::get_site_data( false );
25
+ $this->mp = new MP(
26
+ WC_Woo_Mercado_Pago_Module::get_module_version(),
27
+ get_option( '_mp_client_id' ),
28
+ get_option( '_mp_client_secret' )
29
+ );
30
+ $email = ( wp_get_current_user()->ID != 0 ) ? wp_get_current_user()->user_email : null;
31
+ $this->mp->set_email( $email );
32
+
33
+ // WooCommerce fields.
34
+ $this->id = 'woo-mercado-pago-basic';
35
+ $this->supports = array( 'products', 'refunds' );
36
+ $this->icon = apply_filters(
37
+ 'woocommerce_mercadopago_icon',
38
+ plugins_url( 'assets/images/mercadopago.png', plugin_dir_path( __FILE__ ) )
39
+ );
40
+
41
+ $this->method_title = __( 'Mercado Pago - Basic Checkout', 'woocommerce-mercadopago' );
42
+ $this->method_description = '<img width="200" height="52" src="' .
43
+ plugins_url( 'assets/images/mplogo.png', plugin_dir_path( __FILE__ ) ) .
44
+ '"><br><br><strong>' .
45
+ __( 'Receive payments in a matter of minutes. We make it easy for you: just tell us what you want to collect and we’ll take care of the rest.', 'woocommerce-mercadopago' ) .
46
+ '</strong>';
47
+
48
+ // TODO: Verify sandbox availability.
49
+ $this->sandbox = false;
50
+ //$this->sandbox = get_option( '_mp_sandbox_mode', false );
51
+ $this->mp->sandbox_mode( $this->sandbox );
52
+
53
+ // How checkout is shown.
54
+ $this->title = $this->get_option( 'title' );
55
+ $this->description = $this->get_option( 'description' );
56
+ $this->method = $this->get_option( 'method', 'iframe' );
57
+ $this->iframe_width = $this->get_option( 'iframe_width', '640' );
58
+ $this->iframe_height = $this->get_option( 'iframe_height', '800' );
59
+ // How checkout redirections will behave.
60
+ $this->auto_return = $this->get_option( 'auto_return', 'yes' );
61
+ $this->success_url = $this->get_option( 'success_url', '' );
62
+ $this->failure_url = $this->get_option( 'failure_url', '' );
63
+ $this->pending_url = $this->get_option( 'pending_url', '' );
64
+ // How checkout payment behaves.
65
+ $this->installments = $this->get_option( 'installments', '24' );
66
+ $this->ex_payments = $this->get_option( 'ex_payments', 'n/d' );
67
+ $this->gateway_discount = $this->get_option( 'gateway_discount', 0 );
68
+ $this->two_cards_mode = 'inactive';
69
+
70
+ // Logging and debug.
71
+ $_mp_debug_mode = get_option( '_mp_debug_mode', '' );
72
+ if ( ! empty ( $_mp_debug_mode ) ) {
73
+ if ( class_exists( 'WC_Logger' ) ) {
74
+ $this->log = new WC_Logger();
75
+ } else {
76
+ $this->log = WC_Woo_Mercado_Pago_Module::woocommerce_instance()->logger();
77
+ }
78
+ }
79
+
80
+ // Render our configuration page and init/load fields.
81
+ $this->init_form_fields();
82
+ $this->init_settings();
83
+
84
+ // Used by IPN to receive IPN incomings.
85
+ add_action(
86
+ 'woocommerce_api_wc_woomercadopago_basicgateway',
87
+ array( $this, 'check_ipn_response' )
88
+ );
89
+ // Used by IPN to process valid incomings.
90
+ add_action(
91
+ 'valid_mercadopago_basic_ipn_request',
92
+ array( $this, 'successful_request' )
93
+ );
94
+ // Process the cancel order meta box order action.
95
+ add_action(
96
+ 'woocommerce_order_action_cancel_order',
97
+ array( $this, 'process_cancel_order_meta_box_actions' )
98
+ );
99
+ // Used by WordPress to render the custom checkout page.
100
+ add_action(
101
+ 'woocommerce_receipt_' . $this->id,
102
+ function( $order ) {
103
+ echo $this->render_order_form( $order );
104
+ }
105
+ );
106
+ // Used to fix CSS in some older WordPress/WooCommerce versions.
107
+ add_action(
108
+ 'wp_head',
109
+ function() {
110
+ if ( defined( 'WC_VERSION' ) && version_compare( WC_VERSION, '2.1', '>=' ) ) {
111
+ $page_id = wc_get_page_id( 'checkout' );
112
+ } else {
113
+ $page_id = woocommerce_get_page_id( 'checkout' );
114
+ }
115
+ if ( is_page( $page_id ) ) {
116
+ echo '<style type="text/css">#MP-Checkout-dialog { z-index: 9999 !important; }</style>' . PHP_EOL;
117
+ }
118
+ }
119
+ );
120
+ // Used in settings page to hook "save settings" action.
121
+ add_action(
122
+ 'woocommerce_update_options_payment_gateways_' . $this->id,
123
+ array( $this, 'custom_process_admin_options' )
124
+ );
125
+ // Scripts for order configuration.
126
+ add_action(
127
+ 'woocommerce_after_checkout_form',
128
+ array( $this, 'add_checkout_script' )
129
+ );
130
+ // Display discount in payment method title.
131
+ add_filter(
132
+ 'woocommerce_gateway_title',
133
+ array( $this, 'get_payment_method_title_basic' ), 10, 2
134
+ );
135
+ // Checkout updates.
136
+ add_action(
137
+ 'woocommerce_thankyou',
138
+ array( $this, 'update_checkout_status' )
139
+ );
140
+
141
+ }
142
+
143
+ /**
144
+ * Summary: Initialise Gateway Settings Form Fields.
145
+ * Description: Initialise Gateway settings form fields with a customized page.
146
+ */
147
+ public function init_form_fields() {
148
+
149
+ // Show message if credentials are not properly configured.
150
+ $_site_id_v0 = get_option( '_site_id_v0', '' );
151
+ if ( empty( $_site_id_v0 ) ) {
152
+ $this->form_fields = array(
153
+ 'no_credentials_title' => array(
154
+ 'title' => sprintf(
155
+ __( 'It appears that your credentials are not properly configured.<br/>Please, go to %s and configure it.', 'woocommerce-mercadopago' ),
156
+ '<a href="' . esc_url( admin_url( 'admin.php?page=mercado-pago-settings' ) ) . '">' .
157
+ __( 'Mercado Pago Settings', 'woocommerce-mercadopago' ) .
158
+ '</a>'
159
+ ),
160
+ 'type' => 'title'
161
+ ),
162
+ );
163
+ return;
164
+ }
165
+
166
+ // If module is disabled, we do not need to load and process the settings page.
167
+ if ( empty( $this->settings['enabled'] ) || 'no' == $this->settings['enabled'] ) {
168
+ $this->form_fields = array(
169
+ 'enabled' => array(
170
+ 'title' => __( 'Enable/Disable', 'woocommerce-mercadopago' ),
171
+ 'type' => 'checkbox',
172
+ 'label' => __( 'Enable Basic Checkout', 'woocommerce-mercadopago' ),
173
+ 'default' => 'no'
174
+ )
175
+ );
176
+ return;
177
+ }
178
+
179
+ $this->two_cards_mode = $this->mp->check_two_cards();
180
+
181
+ // Validate back URL.
182
+ if ( ! empty( $this->success_url ) && filter_var( $this->success_url, FILTER_VALIDATE_URL ) === FALSE ) {
183
+ $success_back_url_message = '<img width="14" height="14" src="' . plugins_url( 'assets/images/warning.png', plugin_dir_path( __FILE__ ) ) . '"> ' .
184
+ __( 'This appears to be an invalid URL.', 'woocommerce-mercadopago' ) . ' ';
185
+ } else {
186
+ $success_back_url_message = __( 'Where customers should be redirected after a successful purchase. Let blank to redirect to the default store order resume page.', 'woocommerce-mercadopago' );
187
+ }
188
+ if ( ! empty( $this->failure_url ) && filter_var( $this->failure_url, FILTER_VALIDATE_URL ) === FALSE ) {
189
+ $fail_back_url_message = '<img width="14" height="14" src="' . plugins_url( 'assets/images/warning.png', plugin_dir_path( __FILE__ ) ) . '"> ' .
190
+ __( 'This appears to be an invalid URL.', 'woocommerce-mercadopago' ) . ' ';
191
+ } else {
192
+ $fail_back_url_message = __( 'Where customers should be redirected after a failed purchase. Let blank to redirect to the default store order resume page.', 'woocommerce-mercadopago' );
193
+ }
194
+ if ( ! empty( $this->pending_url ) && filter_var( $this->pending_url, FILTER_VALIDATE_URL ) === FALSE ) {
195
+ $pending_back_url_message = '<img width="14" height="14" src="' . plugins_url( 'assets/images/warning.png', plugin_dir_path( __FILE__ ) ) . '"> ' .
196
+ __( 'This appears to be an invalid URL.', 'woocommerce-mercadopago' ) . ' ';
197
+ } else {
198
+ $pending_back_url_message = __( 'Where customers should be redirected after a pending purchase. Let blank to redirect to the default store order resume page.', 'woocommerce-mercadopago' );
199
+ }
200
+
201
+ // This array draws each UI (text, selector, checkbox, label, etc).
202
+ $this->form_fields = array(
203
+ 'enabled' => array(
204
+ 'title' => __( 'Enable/Disable', 'woocommerce-mercadopago' ),
205
+ 'type' => 'checkbox',
206
+ 'label' => __( 'Enable Basic Checkout', 'woocommerce-mercadopago' ),
207
+ 'default' => 'no'
208
+ ),
209
+ 'checkout_options_title' => array(
210
+ 'title' => __( 'Checkout Interface: How checkout is shown', 'woocommerce-mercadopago' ),
211
+ 'type' => 'title'
212
+ ),
213
+ 'title' => array(
214
+ 'title' => __( 'Title', 'woocommerce-mercadopago' ),
215
+ 'type' => 'text',
216
+ 'description' => __( 'Title shown to the client in the checkout.', 'woocommerce-mercadopago' ),
217
+ 'default' => __( 'Mercado Pago', 'woocommerce-mercadopago' )
218
+ ),
219
+ 'description' => array(
220
+ 'title' => __( 'Description', 'woocommerce-mercadopago' ),
221
+ 'type' => 'textarea',
222
+ 'description' => __( 'Description shown to the client in the checkout.', 'woocommerce-mercadopago' ),
223
+ 'default' => __( 'Pay with Mercado Pago', 'woocommerce-mercadopago' )
224
+ ),
225
+ 'method' => array(
226
+ 'title' => __( 'Integration Method', 'woocommerce-mercadopago' ),
227
+ 'type' => 'select',
228
+ 'description' => __( 'Select how your clients should interact with Mercado Pago. Modal Window (inside your store), Redirect (Client is redirected to Mercado Pago), or iFrame (an internal window is embedded to the page layout).', 'woocommerce-mercadopago' ),
229
+ 'default' => 'iframe',
230
+ 'options' => array(
231
+ 'iframe' => __( 'iFrame', 'woocommerce-mercadopago' ),
232
+ 'modal' => __( 'Modal Window', 'woocommerce-mercadopago' ),
233
+ 'redirect' => __( 'Redirect', 'woocommerce-mercadopago' )
234
+ )
235
+ ),
236
+ 'iframe_width' => array(
237
+ 'title' => __( 'iFrame Width', 'woocommerce-mercadopago' ),
238
+ 'type' => 'number',
239
+ 'description' => __( 'If your integration method is iFrame, please inform the payment iFrame width.', 'woocommerce-mercadopago' ),
240
+ 'default' => '640'
241
+ ),
242
+ 'iframe_height' => array(
243
+ 'title' => __( 'iFrame Height', 'woocommerce-mercadopago' ),
244
+ 'type' => 'number',
245
+ 'description' => __( 'If your integration method is iFrame, please inform the payment iFrame height.', 'woocommerce-mercadopago' ),
246
+ 'default' => '800'
247
+ ),
248
+ 'checkout_navigation_title' => array(
249
+ 'title' => __( 'Checkout Navigation: How checkout redirections will behave', 'woocommerce-mercadopago' ),
250
+ 'type' => 'title'
251
+ ),
252
+ 'auto_return' => array(
253
+ 'title' => __( 'Auto Return', 'woocommerce-mercadopago' ),
254
+ 'type' => 'checkbox',
255
+ 'label' => __( 'Automatic Return After Payment', 'woocommerce-mercadopago' ),
256
+ 'default' => 'yes',
257
+ 'description' => __( 'After the payment, client is automatically redirected.', 'woocommerce-mercadopago' ),
258
+ ),
259
+ 'success_url' => array(
260
+ 'title' => __( 'Sucess URL', 'woocommerce-mercadopago' ),
261
+ 'type' => 'text',
262
+ 'description' => $success_back_url_message,
263
+ 'default' => ''
264
+ ),
265
+ 'failure_url' => array(
266
+ 'title' => __( 'Failure URL', 'woocommerce-mercadopago' ),
267
+ 'type' => 'text',
268
+ 'description' => $fail_back_url_message,
269
+ 'default' => ''
270
+ ),
271
+ 'pending_url' => array(
272
+ 'title' => __( 'Pending URL', 'woocommerce-mercadopago' ),
273
+ 'type' => 'text',
274
+ 'description' => $pending_back_url_message,
275
+ 'default' => ''
276
+ ),
277
+ 'payment_title' => array(
278
+ 'title' => __( 'Payment Options: How payment options behaves', 'woocommerce-mercadopago' ),
279
+ 'type' => 'title'
280
+ ),
281
+ 'installments' => array(
282
+ 'title' => __( 'Max installments', 'woocommerce-mercadopago' ),
283
+ 'type' => 'select',
284
+ 'description' => __( 'Select the max number of installments for your customers.', 'woocommerce-mercadopago' ),
285
+ 'default' => '24',
286
+ 'options' => array(
287
+ '1' => __( '1x installment', 'woocommerce-mercadopago' ),
288
+ '2' => __( '2x installmens', 'woocommerce-mercadopago' ),
289
+ '3' => __( '3x installmens', 'woocommerce-mercadopago' ),
290
+ '4' => __( '4x installmens', 'woocommerce-mercadopago' ),
291
+ '5' => __( '5x installmens', 'woocommerce-mercadopago' ),
292
+ '6' => __( '6x installmens', 'woocommerce-mercadopago' ),
293
+ '10' => __( '10x installmens', 'woocommerce-mercadopago' ),
294
+ '12' => __( '12x installmens', 'woocommerce-mercadopago' ),
295
+ '15' => __( '15x installmens', 'woocommerce-mercadopago' ),
296
+ '18' => __( '18x installmens', 'woocommerce-mercadopago' ),
297
+ '24' => __( '24x installmens', 'woocommerce-mercadopago' )
298
+ )
299
+ ),
300
+ 'ex_payments' => array(
301
+ 'title' => __( 'Exclude Payment Methods', 'woocommerce-mercadopago' ),
302
+ 'description' => __( 'Select the payment methods that you <strong>don\'t</strong> want to receive with Mercado Pago.', 'woocommerce-mercadopago' ),
303
+ 'type' => 'multiselect',
304
+ 'options' => explode( ',', get_option( '_all_payment_methods_v0', '' ) ),
305
+ 'default' => ''
306
+ ),
307
+ 'gateway_discount' => array(
308
+ 'title' => __( 'Discount by Gateway', 'woocommerce-mercadopago' ),
309
+ 'type' => 'number',
310
+ 'description' => __( 'Give a percentual (0 to 100) discount for your customers if they use this payment gateway.', 'woocommerce-mercadopago' ),
311
+ 'default' => '0'
312
+ ),
313
+ 'two_cards_mode' => array(
314
+ 'title' => __( 'Two Cards Mode', 'woocommerce-mercadopago' ),
315
+ 'type' => 'checkbox',
316
+ 'label' => __( 'Payments with Two Cards', 'woocommerce-mercadopago' ),
317
+ 'default' => ( $this->two_cards_mode == 'active' ? 'yes' : 'no' ),
318
+ 'description' => __( 'Your customer will be able to use two different cards to pay the order.', 'woocommerce-mercadopago' )
319
+ )
320
+ );
321
+
322
+ }
323
+
324
+ /**
325
+ * Processes and saves options.
326
+ * If there is an error thrown, will continue to save and validate fields, but will leave the
327
+ * erroring field out.
328
+ * @return bool was anything saved?
329
+ */
330
+ public function custom_process_admin_options() {
331
+ $this->init_settings();
332
+ $post_data = $this->get_post_data();
333
+ foreach ( $this->get_form_fields() as $key => $field ) {
334
+ if ( 'title' !== $this->get_field_type( $field ) ) {
335
+ $value = $this->get_field_value( $key, $field, $post_data );
336
+ if ( $key == 'two_cards_mode' ) {
337
+ // We dont save two card mode as it should come from api.
338
+ unset( $this->settings[$key] );
339
+ $this->two_cards_mode = ( $value == 'yes' ? 'active' : 'inactive' );
340
+ } elseif ( $key == 'iframe_width' ) {
341
+ if ( ! is_numeric( $value ) || empty ( $value ) ) {
342
+ $this->settings[$key] = 480;
343
+ } else {
344
+ $this->settings[$key] = $value;
345
+ }
346
+ } elseif ( $key == 'iframe_height' ) {
347
+ if ( ! is_numeric( $value ) || empty ( $value ) ) {
348
+ $this->settings[$key] = 800;
349
+ } else {
350
+ $this->settings[$key] = $value;
351
+ }
352
+ } elseif ( $key == 'gateway_discount') {
353
+ if ( ! is_numeric( $value ) || empty ( $value ) ) {
354
+ $this->settings[$key] = 0;
355
+ } else {
356
+ if ( $value < 0 || $value >= 100 || empty ( $value ) ) {
357
+ $this->settings[$key] = 0;
358
+ } else {
359
+ $this->settings[$key] = $value;
360
+ }
361
+ }
362
+ } else {
363
+ $this->settings[$key] = $this->get_field_value( $key, $field, $post_data );
364
+ }
365
+ }
366
+ }
367
+ $_site_id_v0 = get_option( '_site_id_v0', '' );
368
+ $is_test_user = get_option( '_test_user_v0', false );
369
+ if ( ! empty( $_site_id_v0 ) ) {
370
+ // Create MP instance.
371
+ $mp = new MP(
372
+ WC_Woo_Mercado_Pago_Module::get_module_version(),
373
+ get_option( '_mp_client_id' ),
374
+ get_option( '_mp_client_secret' )
375
+ );
376
+ $email = ( wp_get_current_user()->ID != 0 ) ? wp_get_current_user()->user_email : null;
377
+ $mp->set_email( $email );
378
+ // Analytics.
379
+ if ( ! $is_test_user ) {
380
+ $infra_data = WC_Woo_Mercado_Pago_Module::get_common_settings();
381
+ $infra_data['checkout_basic'] = ( $this->settings['enabled'] == 'yes' ? 'true' : 'false' );
382
+ $infra_data['two_cards'] = ( $this->two_cards_mode == 'active' ? 'true' : 'false' );
383
+ $response = $mp->analytics_save_settings( $infra_data );
384
+ }
385
+ // Two cards mode.
386
+ $response = $mp->set_two_cards_mode( $this->two_cards_mode );
387
+ }
388
+ // Apply updates.
389
+ return update_option(
390
+ $this->get_option_key(),
391
+ apply_filters( 'woocommerce_settings_api_sanitized_fields_' . $this->id, $this->settings )
392
+ );
393
+ }
394
+
395
+ /**
396
+ * Handles the manual order refunding in server-side.
397
+ */
398
+ public function process_refund( $order_id, $amount = null, $reason = '' ) {
399
+
400
+ $payments = get_post_meta( $order_id, '_Mercado_Pago_Payment_IDs', true );
401
+
402
+ // Validate.
403
+ if ( $this->mp == null || empty( $payments ) ) {
404
+ $this->write_log( __FUNCTION__, 'no payments or credentials invalid' );
405
+ return false;
406
+ }
407
+
408
+ // Processing data about this refund.
409
+ $total_available = 0;
410
+ $payment_structs = array();
411
+ $payment_ids = explode( ', ', $payments );
412
+ foreach ( $payment_ids as $p_id ) {
413
+ $p = get_post_meta( $order_id, 'Mercado Pago - Payment ' . $p_id, true );
414
+ $p = explode( '/', $p );
415
+ $paid_arr = explode( ' ', substr( $p[2], 1, -1 ) );
416
+ $paid = ( (float) $paid_arr[1] );
417
+ $refund_arr = explode( ' ', substr( $p[3], 1, -1 ) );
418
+ $refund = ( (float) $refund_arr[1] );
419
+ $p_struct = array( 'id' => $p_id, 'available_to_refund' => $paid - $refund );
420
+ $total_available += $paid - $refund;
421
+ $payment_structs[] = $p_struct;
422
+ }
423
+ $this->write_log( __FUNCTION__,
424
+ 'refunding ' . $amount . ' because of ' . $reason . ' and payments ' .
425
+ json_encode( $payment_structs, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
426
+ );
427
+
428
+ // Do not allow refund more than available or invalid amounts.
429
+ if ( $amount > $total_available || $amount <= 0 ) {
430
+ return false;
431
+ }
432
+
433
+ // Iteratively refunfind amount, taking in consideration multiple payments.
434
+ $remaining_to_refund = $amount;
435
+ foreach ( $payment_structs as $to_refund ) {
436
+ if ( $remaining_to_refund <= $to_refund['available_to_refund'] ) {
437
+ // We want to refund an amount that is less than the available for this payment, so we
438
+ // can just refund and return.
439
+ $response = $this->mp->partial_refund_payment(
440
+ $to_refund['id'], $remaining_to_refund,
441
+ $reason, $this->invoice_prefix . $order_id
442
+ );
443
+ $message = $response['response']['message'];
444
+ $status = $response['status'];
445
+ $this->write_log( __FUNCTION__,
446
+ 'refund payment of id ' . $p_id . ' => ' .
447
+ ( $status >= 200 && $status < 300 ? 'SUCCESS' : 'FAIL - ' . $message )
448
+ );
449
+ if ( $status >= 200 && $status < 300 ) {
450
+ return true;
451
+ } else {
452
+ return false;
453
+ }
454
+ } elseif ( $to_refund['available_to_refund'] > 0 ) {
455
+ // We want to refund an amount that exceeds the available for this payment, so we
456
+ // totally refund this payment, and try to complete refund in other/next payments.
457
+ $response = $this->mp->partial_refund_payment(
458
+ $to_refund['id'], $to_refund['available_to_refund'],
459
+ $reason, $this->invoice_prefix . $order_id
460
+ );
461
+ $message = $response['response']['message'];
462
+ $status = $response['status'];
463
+ $this->write_log( __FUNCTION__,
464
+ 'refund payment of id ' . $p_id . ' => ' .
465
+ ( $status >= 200 && $status < 300 ? 'SUCCESS' : 'FAIL - ' . $message )
466
+ );
467
+ if ( $status < 200 || $status >= 300 ) {
468
+ return false;
469
+ }
470
+ $remaining_to_refund -= $to_refund['available_to_refund'];
471
+ }
472
+ if ( $remaining_to_refund == 0 ) {
473
+ return true;
474
+ }
475
+ }
476
+ // Reaching here means that there we run out of payments, and there is an amount
477
+ // remaining to be refund, which is impossible as it implies refunding more than
478
+ // available on paid amounts.
479
+ return false;
480
+ }
481
+
482
+ /**
483
+ * Handles the manual order cancellation in server-side.
484
+ */
485
+ public function process_cancel_order_meta_box_actions( $order ) {
486
+
487
+ $used_gateway = ( method_exists( $order, 'get_meta' ) ) ?
488
+ $order->get_meta( '_used_gateway' ) :
489
+ get_post_meta( $order->id, '_used_gateway', true );
490
+ $payments = ( method_exists( $order, 'get_meta' ) ) ?
491
+ $order->get_meta( '_Mercado_Pago_Payment_IDs' ) :
492
+ get_post_meta( $order->id, '_Mercado_Pago_Payment_IDs', true );
493
+
494
+ // A watchdog to prevent operations from other gateways.
495
+ if ( $used_gateway != 'WC_WooMercadoPago_BasicGateway' ) {
496
+ return;
497
+ }
498
+
499
+ $this->write_log( __FUNCTION__, 'cancelling payments for ' . $payments );
500
+
501
+ // Canceling the order and all of its payments.
502
+ if ( $this->mp != null && ! empty( $payments ) ) {
503
+ $payment_ids = explode( ', ', $payments );
504
+ foreach ( $payment_ids as $p_id ) {
505
+ $response = $this->mp->cancel_payment( $p_id );
506
+ $message = $response['response']['message'];
507
+ $status = $response['status'];
508
+ $this->write_log( __FUNCTION__,
509
+ 'cancel payment of id ' . $p_id . ' => ' .
510
+ ( $status >= 200 && $status < 300 ? 'SUCCESS' : 'FAIL - ' . $message )
511
+ );
512
+ }
513
+ } else {
514
+ $this->write_log( __FUNCTION__, 'no payments or credentials invalid' );
515
+ }
516
+ }
517
+
518
+ // Write log.
519
+ private function write_log( $function, $message ) {
520
+ $_mp_debug_mode = get_option( '_mp_debug_mode', '' );
521
+ if ( ! empty ( $_mp_debug_mode ) ) {
522
+ $this->log->add(
523
+ $this->id,
524
+ '[' . $function . ']: ' . $message
525
+ );
526
+ }
527
+ }
528
+
529
+ /*
530
+ * ========================================================================
531
+ * CHECKOUT BUSINESS RULES (CLIENT SIDE)
532
+ * ========================================================================
533
+ */
534
+
535
+ public function payment_fields() {
536
+ // basic checkout
537
+ if ( $description = $this->get_description() ) {
538
+ echo wpautop( wptexturize( $description ) );
539
+ }
540
+ if ( $this->supports( 'default_credit_card_form' ) ) {
541
+ $this->credit_card_form();
542
+ }
543
+ }
544
+
545
+ public function add_checkout_script() {
546
+
547
+ $client_id = get_option( '_mp_client_id' );
548
+ $is_test_user = get_option( '_test_user_v0', false );
549
+
550
+ if ( ! empty( $client_id ) && ! $is_test_user ) {
551
+
552
+ $w = WC_Woo_Mercado_Pago_Module::woocommerce_instance();
553
+ $available_payments = array();
554
+ $gateways = WC()->payment_gateways->get_available_payment_gateways();
555
+ foreach ( $gateways as $g ) {
556
+ $available_payments[] = $g->id;
557
+ }
558
+ $available_payments = str_replace( '-', '_', implode( ', ', $available_payments ) );
559
+ if ( wp_get_current_user()->ID != 0 ) {
560
+ $logged_user_email = wp_get_current_user()->user_email;
561
+ } else {
562
+ $logged_user_email = null;
563
+ }
564
+ ?>
565
+ <script src="https://secure.mlstatic.com/modules/javascript/analytics.js"></script>
566
+ <script type="text/javascript">
567
+ var MA = ModuleAnalytics;
568
+ MA.setToken( '<?php echo $client_id; ?>' );
569
+ MA.setPlatform( 'WooCommerce' );
570
+ MA.setPlatformVersion( '<?php echo $w->version; ?>' );
571
+ MA.setModuleVersion( '<?php echo WC_Woo_Mercado_Pago_Module::VERSION; ?>' );
572
+ MA.setPayerEmail( '<?php echo ( $logged_user_email != null ? $logged_user_email : "" ); ?>' );
573
+ MA.setUserLogged( <?php echo ( empty( $logged_user_email ) ? 0 : 1 ); ?> );
574
+ MA.setInstalledModules( '<?php echo $available_payments; ?>' );
575
+ MA.post();
576
+ </script>
577
+ <?php
578
+
579
+ }
580
+
581
+ }
582
+
583
+ public function update_checkout_status( $order_id ) {
584
+ $client_id = get_option( '_mp_client_id' );
585
+ $is_test_user = get_option( '_test_user_v0', false );
586
+ if ( ! empty( $client_id ) && ! $is_test_user ) {
587
+ if ( get_post_meta( $order_id, '_used_gateway', true ) != 'WC_WooMercadoPago_BasicGateway' ) {
588
+ return;
589
+ }
590
+ $this->write_log( __FUNCTION__, 'updating order of ID ' . $order_id );
591
+ echo '<script src="https://secure.mlstatic.com/modules/javascript/analytics.js"></script>
592
+ <script type="text/javascript">
593
+ var MA = ModuleAnalytics;
594
+ MA.setToken( ' . $client_id . ' );
595
+ MA.setPaymentType("basic");
596
+ MA.setCheckoutType("basic");
597
+ MA.put();
598
+ </script>';
599
+ }
600
+ }
601
+
602
+ /**
603
+ * Summary: Handle the payment and processing the order.
604
+ * Description: First step occurs when the customer selects Mercado Pago and proceed to checkout.
605
+ * This method verify which integration method was selected and makes the build for the checkout
606
+ * URL.
607
+ * @return an array containing the result of the processment and the URL to redirect.
608
+ */
609
+ public function process_payment( $order_id ) {
610
+
611
+ $order = wc_get_order( $order_id );
612
+ if ( method_exists( $order, 'update_meta_data' ) ) {
613
+ $order->update_meta_data( '_used_gateway', 'WC_WooMercadoPago_BasicGateway' );
614
+ $order->save();
615
+ } else {
616
+ update_post_meta( $order_id, '_used_gateway', 'WC_WooMercadoPago_BasicGateway' );
617
+ }
618
+
619
+ if ( 'redirect' == $this->method ) {
620
+ $this->write_log( __FUNCTION__, 'customer being redirected to Mercado Pago.' );
621
+ return array(
622
+ 'result' => 'success',
623
+ 'redirect' => $this->create_url( $order )
624
+ );
625
+ } elseif ( 'modal' == $this->method || 'iframe' == $this->method ) {
626
+ $this->write_log( __FUNCTION__, 'preparing to render Mercado Pago checkout view.' );
627
+ return array(
628
+ 'result' => 'success',
629
+ 'redirect' => $order->get_checkout_payment_url( true )
630
+ );
631
+ }
632
+
633
+ }
634
+
635
+ /**
636
+ * Summary: Show the custom renderization for the checkout.
637
+ * Description: Order page and this generates the form that shows the pay button. This step
638
+ * generates the form to proceed to checkout.
639
+ * @return the html to be rendered.
640
+ */
641
+ public function render_order_form( $order_id ) {
642
+
643
+ $order = wc_get_order( $order_id );
644
+ $url = $this->create_url( $order );
645
+
646
+ if ( 'modal' == $this->method && $url ) {
647
+
648
+ $this->write_log( __FUNCTION__, 'rendering Mercado Pago lightbox (modal window).' );
649
+
650
+ // ===== The checkout is made by displaying a modal to the customer =====
651
+ $html = '<style type="text/css">
652
+ #MP-Checkout-dialog #MP-Checkout-IFrame { bottom: -28px !important; height: 590px !important; }
653
+ </style>';
654
+ $html = '<script type="text/javascript" src="https://secure.mlstatic.com/mptools/render.js"></script>
655
+ <script type="text/javascript">
656
+ (function() { $MPC.openCheckout({ url: "' . esc_url( $url ) . '", mode: "modal" }); })();
657
+ </script>';
658
+ $html = '<img width="468" height="60" src="' . $this->site_data['checkout_banner'] . '">';
659
+ $html = '<p></p><p>' . wordwrap(
660
+ __( 'Thank you for your order. Please, proceed with your payment clicking in the bellow button.', 'woocommerce-mercadopago' ),
661
+ 60, '<br>'
662
+ ) . '</p>
663
+ <a id="submit-payment" href="' . esc_url( $url ) . '" name="MP-Checkout" class="button alt" mp-mode="modal">' .
664
+ __( 'Pay with Mercado Pago', 'woocommerce-mercadopago' ) .
665
+ '</a> <a class="button cancel" href="' . esc_url( $order->get_cancel_order_url() ) . '">' .
666
+ __( 'Cancel order &amp; Clear cart', 'woocommerce-mercadopago' ) .
667
+ '</a>';
668
+ return $html;
669
+ // ===== The checkout is made by displaying a modal to the customer =====
670
+
671
+ } elseif ( 'modal' != $this->method && $url ) {
672
+
673
+ $this->write_log( __FUNCTION__, 'embedding Mercado Pago iframe.' );
674
+
675
+ // ===== The checkout is made by rendering Mercado Pago form within a iframe =====
676
+ $html = '<img width="468" height="60" src="' . $this->site_data['checkout_banner'] . '">';
677
+ $html = '<p></p><p>' . wordwrap(
678
+ __( 'Thank you for your order. Proceed with your payment completing the following information.', 'woocommerce-mercadopago' ),
679
+ 60, '<br>'
680
+ ) . '</p>
681
+ <iframe src="' . esc_url( $url ) . '" name="MP-Checkout" ' .
682
+ 'width="' . $this->iframe_width . '" ' . 'height="' . $this->iframe_height . '" ' .
683
+ 'frameborder="0" scrolling="no" id="checkout_mercadopago"></iframe>';
684
+ return $html;
685
+ // ===== The checkout is made by rendering Mercado Pago form within a iframe =====
686
+
687
+ } else {
688
+
689
+ $this->write_log( __FUNCTION__, 'unable to build Mercado Pago checkout URL.' );
690
+
691
+ // ===== Reaching at this point means that the URL could not be build by some reason =====
692
+ $html = '<p>' .
693
+ __( 'An error occurred when proccessing your payment. Please try again or contact us for assistence.', 'woocommerce-mercadopago' ) .
694
+ '</p>' .
695
+ '<a class="button" href="' . esc_url( $order->get_checkout_payment_url() ) . '">' .
696
+ __( 'Click to try again', 'woocommerce-mercadopago' ) .
697
+ '</a>
698
+ ';
699
+ return $html;
700
+ // ===== Reaching at this point means that the URL could not be build by some reason =====
701
+
702
+ }
703
+
704
+ }
705
+
706
+ /**
707
+ * Summary: Build Mercado Pago preference.
708
+ * Description: Create Mercado Pago preference and get init_point URL based in the order options
709
+ * from the cart.
710
+ * @return the preference object.
711
+ */
712
+ public function build_payment_preference( $order ) {
713
+
714
+ $items = array();
715
+ $currency_ratio = 1;
716
+ $order_content = array();
717
+ $selected_shipping = $order->get_shipping_method();
718
+
719
+ // Here we build the array that contains ordered items, from customer cart.
720
+ if ( sizeof( $order->get_items() ) > 0 ) {
721
+ foreach ( $order->get_items() as $item ) {
722
+ if ( $item['qty'] ) {
723
+ $product = new WC_product( $item['product_id'] );
724
+ $product_title = method_exists( $product, 'get_description' ) ?
725
+ $product->get_name() :
726
+ $product->post->post_title;
727
+ $product_content = method_exists( $product, 'get_description' ) ?
728
+ $product->get_description() :
729
+ $product->post->post_content;
730
+ $line_amount = $item['line_total'] + $item['line_tax'];
731
+ $method_discount = $line_amount * ( $this->gateway_discount / 100 );
732
+
733
+ $currency_ratio = 1;
734
+ $_mp_currency_conversion_v0 = get_option( '_mp_currency_conversion_v0', '' );
735
+ if ( ! empty( $_mp_currency_conversion_v0 ) ) {
736
+ $currency_ratio = WC_Woo_Mercado_Pago_Module::get_conversion_rate( $this->site_data['currency'] );
737
+ $currency_ratio = $currency_ratio > 0 ? $currency_ratio : 1;
738
+ }
739
+
740
+ array_push( $order_content, $product_title . ' x ' . $item['qty'] );
741
+ array_push( $items, array(
742
+ 'id' => $item['product_id'],
743
+ 'title' => html_entity_decode( $product_title ) . ' x ' . $item['qty'],
744
+ 'description' => sanitize_file_name( html_entity_decode(
745
+ strlen( $product_content ) > 230 ?
746
+ substr( $product_content, 0, 230 ) . '...' :
747
+ $product_content
748
+ ) ),
749
+ 'picture_url' => sizeof( $order->get_items() > 1 ) ?
750
+ plugins_url( 'assets/images/cart.png', plugin_dir_path( __FILE__ ) ) :
751
+ wp_get_attachment_url( $product->get_image_id()
752
+ ),
753
+ 'category_id' => get_option( '_mp_category_name', 'others' ),
754
+ 'quantity' => 1,
755
+ 'unit_price' => ( $this->site_data['currency'] == 'COP' || $this->site_data['currency'] == 'CLP' ) ?
756
+ floor( ( $line_amount - $method_discount ) * $currency_ratio ) :
757
+ floor( ( $line_amount - $method_discount ) * $currency_ratio * 100 ) / 100,
758
+ 'currency_id' => $this->site_data['currency']
759
+ ) );
760
+ }
761
+ }
762
+
763
+ // If we're not using Mercado Envios, shipping cost is added as an item in the order, preventing
764
+ // Mercado Pago Javascript to show shipment setup twice.
765
+ $ship_amount = $order->get_total_shipping() + $order->get_shipping_tax();
766
+ if ( strpos( $selected_shipping, 'Mercado Envios' ) !== 0 && $ship_amount > 0 ) {
767
+ array_push( $order_content, __( 'Shipping service used by store', 'woocommerce-mercadopago' ) );
768
+ array_push( $items, array(
769
+ 'title' => __( 'Shipping service used by store', 'woocommerce-mercadopago' ),
770
+ 'description' => __( 'Shipping service used by store', 'woocommerce-mercadopago' ),
771
+ 'category_id' => get_option( '_mp_category_name', 'others' ),
772
+ 'quantity' => 1,
773
+ 'unit_price' => ( $this->site_data['currency'] == 'COP' || $this->site_data['currency'] == 'CLP' ) ?
774
+ floor( $ship_amount * $currency_ratio ) :
775
+ floor( $ship_amount * $currency_ratio * 100 ) / 100,
776
+ 'currency_id' => $this->site_data['currency']
777
+ ) );
778
+ }
779
+ $items[0]['title'] = implode( ', ', $order_content );
780
+ }
781
+
782
+ // Create and setup payment options.
783
+ $excluded_payment_methods = array();
784
+ $payment_methods = explode( ',', get_option( '_all_payment_methods_v0', '' ) );
785
+ if ( is_array( $this->ex_payments ) || is_object( $this->ex_payments ) ) {
786
+ foreach ( $this->ex_payments as $excluded ) {
787
+ if ( $excluded == 0 ) {
788
+ break;
789
+ }
790
+ array_push( $excluded_payment_methods, array(
791
+ 'id' => $payment_methods[$excluded]
792
+ ) );
793
+ }
794
+ }
795
+ $payment_methods = array(
796
+ 'installments' => (int) $this->installments,
797
+ 'default_installments' => 1,
798
+ 'excluded_payment_methods' => $excluded_payment_methods
799
+ );
800
+
801
+ // Create Mercado Pago preference.
802
+ $preferences = array(
803
+ 'items' => $items,
804
+ 'payer' => ( method_exists( $order, 'get_id' ) ?
805
+ array( // Support to WooCommerce 3.0.
806
+ 'name' => html_entity_decode( $order->get_billing_first_name() ),
807
+ 'surname' => html_entity_decode( $order->get_billing_last_name() ),
808
+ 'email' => $order->get_billing_email(),
809
+ 'phone' => array(
810
+ 'number' => $order->get_billing_phone()
811
+ ),
812
+ 'address' => array(
813
+ 'street_name' => html_entity_decode(
814
+ $order->get_billing_address_1() . ' / ' .
815
+ $order->get_billing_city() . ' ' .
816
+ $order->get_billing_state() . ' ' .
817
+ $order->get_billing_country()
818
+ ),
819
+ 'zip_code' => $order->get_billing_postcode()
820
+ )
821
+ ) :
822
+ array( // In case that we're not with WooCommerce 3.0.
823
+ 'name' => html_entity_decode( $order->billing_first_name ),
824
+ 'surname' => html_entity_decode( $order->billing_last_name ),
825
+ 'email' => $order->billing_email,
826
+ 'phone' => array(
827
+ 'number' => $order->billing_phone
828
+ ),
829
+ 'address' => array(
830
+ 'street_name' => html_entity_decode(
831
+ $order->billing_address_1 . ' / ' .
832
+ $order->billing_city . ' ' .
833
+ $order->billing_state . ' ' .
834
+ $order->billing_country
835
+ ),
836
+ 'zip_code' => $order->billing_postcode
837
+ )
838
+ )
839
+ ),
840
+ 'back_urls' => array(
841
+ 'success' => empty( $this->success_url ) ?
842
+ WC_Woo_Mercado_Pago_Module::workaround_ampersand_bug(
843
+ esc_url( $this->get_return_url( $order ) )
844
+ ) :
845
+ $this->success_url,
846
+ 'failure' => empty( $this->failure_url ) ?
847
+ WC_Woo_Mercado_Pago_Module::workaround_ampersand_bug(
848
+ esc_url( $order->get_cancel_order_url() )
849
+ ) :
850
+ $this->failure_url,
851
+ 'pending' => empty( $this->pending_url ) ?
852
+ WC_Woo_Mercado_Pago_Module::workaround_ampersand_bug(
853
+ esc_url( $this->get_return_url( $order) )
854
+ ) : $this->pending_url
855
+ ),
856
+ //'marketplace' =>
857
+ //'marketplace_fee' =>
858
+ 'shipments' => array(
859
+ //'cost' =>
860
+ //'mode' =>
861
+ 'receiver_address' => ( method_exists( $order, 'get_id' ) ?
862
+ array(
863
+ 'zip_code' => $order->get_shipping_postcode(),
864
+ //'street_number' =>
865
+ 'street_name' => html_entity_decode(
866
+ $order->get_shipping_address_1() . ' ' .
867
+ $order->get_shipping_city() . ' ' .
868
+ $order->get_shipping_state() . ' ' .
869
+ $order->get_shipping_country()
870
+ ),
871
+ //'floor' =>
872
+ 'apartment' => $order->get_shipping_address_2()
873
+ ) :
874
+ array(
875
+ 'zip_code' => $order->shipping_postcode,
876
+ //'street_number' =>
877
+ 'street_name' => html_entity_decode(
878
+ $order->shipping_address_1 . ' ' .
879
+ $order->shipping_city . ' ' .
880
+ $order->shipping_state . ' ' .
881
+ $order->shipping_country
882
+ ),
883
+ //'floor' =>
884
+ 'apartment' => $order->shipping_address_2
885
+ )
886
+ ),
887
+ ),
888
+ 'payment_methods' => $payment_methods,
889
+ //'notification_url' =>
890
+ 'external_reference' => get_option( '_mp_store_identificator', 'WC-' ) .
891
+ ( method_exists( $order, 'get_id' ) ? $order->get_id() : $order->id )
892
+ //'additional_info' =>
893
+ //'expires' =>
894
+ //'expiration_date_from' =>
895
+ //'expiration_date_to' =>
896
+ );
897
+
898
+ // If we're using Mercado Envios, shipping cost should be setup in preferences.
899
+ if ( strpos( $selected_shipping, 'Mercado Envios' ) === 0 && $order->get_total_shipping() + $order->get_shipping_tax() > 0 ) {
900
+ $preferences['shipments']['mode'] = 'me2';
901
+ foreach ( $order->get_shipping_methods() as $shipping ) {
902
+ $preferences['shipments']['dimensions'] = $shipping['dimensions'];
903
+ $preferences['shipments']['default_shipping_method'] = (int) $shipping['shipping_method_id'];
904
+ $preferences['shipments']['free_methods'] = array();
905
+ // Get shipping method id.
906
+ $prepare_method_id = explode( ':', $shipping['method_id'] );
907
+ // Get instance_id.
908
+ $shipping_id = $prepare_method_id[count( $prepare_method_id ) - 1];
909
+ // TODO: Refactor to Get zone by instance_id.
910
+ $shipping_zone = WC_Shipping_Zones::get_zone_by( 'instance_id', $shipping_id );
911
+ // Get all shipping and filter by free_shipping (Mercado Envios).
912
+ foreach ( $shipping_zone->get_shipping_methods() as $key => $shipping_object ) {
913
+ // Check is a free method.
914
+ if ( $shipping_object->get_option( 'free_shipping' ) == 'yes' ) {
915
+ // Get shipping method id (Mercado Envios).
916
+ $shipping_method_id = $shipping_object->get_shipping_method_id( $this->site_data['site_id'] );
917
+ $preferences['shipments']['free_methods'][] = array( 'id' => (int) $shipping_method_id );
918
+ }
919
+ }
920
+ }
921
+ }
922
+
923
+ // Do not set IPN url if it is a localhost.
924
+ if ( ! strrpos( get_site_url(), 'localhost' ) ) {
925
+ $preferences['notification_url'] = WC()->api_request_url( 'WC_WooMercadoPago_BasicGateway' );
926
+ }
927
+
928
+ // Set sponsor ID.
929
+ $_test_user_v0 = get_option( '_test_user_v0', false );
930
+ if ( ! $_test_user_v0 ) {
931
+ $preferences['sponsor_id'] = $this->site_data['sponsor_id'];
932
+ }
933
+
934
+ // Auto return options.
935
+ if ( 'yes' == $this->auto_return ) {
936
+ $preferences['auto_return'] = 'approved';
937
+ }
938
+
939
+ // Debug/log this preference.
940
+ $this->write_log(
941
+ __FUNCTION__,
942
+ 'preference created with following structure: ' .
943
+ json_encode( $preferences, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
944
+ );
945
+
946
+ return $preferences;
947
+ }
948
+
949
+ protected function create_url( $order ) {
950
+ // Creates the order parameters by checking the cart configuration.
951
+ $preferences = $this->build_payment_preference( $order );
952
+ // Create order preferences with Mercado Pago API request.
953
+ try {
954
+ $checkout_info = $this->mp->create_preference( json_encode( $preferences ) );
955
+ if ( $checkout_info['status'] < 200 || $checkout_info['status'] >= 300 ) {
956
+ // Mercado Pago throwed an error.
957
+ $this->write_log(
958
+ __FUNCTION__,
959
+ 'mercado pago gave error, payment creation failed with error: ' . $checkout_info['response']['message']
960
+ );
961
+ return false;
962
+ } elseif ( is_wp_error( $checkout_info ) ) {
963
+ // WordPress throwed an error.
964
+ $this->write_log(
965
+ __FUNCTION__,
966
+ 'wordpress gave error, payment creation failed with error: ' . $checkout_info['response']['message']
967
+ );
968
+ return false;
969
+ } else {
970
+ // Obtain the URL.
971
+ $this->write_log(
972
+ __FUNCTION__,
973
+ 'payment link generated with success from mercado pago, with structure as follow: ' .
974
+ json_encode( $checkout_info, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
975
+ );
976
+ // TODO: Verify sandbox availability.
977
+ //if ( $this->sandbox ) {
978
+ // return $checkout_info['response']['sandbox_init_point'];
979
+ //} else {
980
+ return $checkout_info['response']['init_point'];
981
+ //}
982
+ }
983
+ } catch ( MercadoPagoException $ex ) {
984
+ // Something went wrong with the payment creation.
985
+ $this->write_log(
986
+ __FUNCTION__,
987
+ 'payment creation failed with exception: ' .
988
+ json_encode( $ex, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
989
+ );
990
+ return false;
991
+ }
992
+ }
993
+
994
+ /*
995
+ * ========================================================================
996
+ * AUXILIARY AND FEEDBACK METHODS (SERVER SIDE)
997
+ * ========================================================================
998
+ */
999
+
1000
+ // Called automatically by WooCommerce, verify if Module is available to use.
1001
+ public function is_available() {
1002
+ if ( ! did_action( 'wp_loaded' ) ) {
1003
+ return false;
1004
+ }
1005
+ global $woocommerce;
1006
+ $w_cart = $woocommerce->cart;
1007
+ // Check for recurrent product checkout.
1008
+ if ( isset( $w_cart ) ) {
1009
+ if ( WC_Woo_Mercado_Pago_Module::is_subscription( $w_cart->get_cart() ) ) {
1010
+ return false;
1011
+ }
1012
+ }
1013
+ // Check if this gateway is enabled and well configured.
1014
+ $_mp_client_id = get_option( '_mp_client_id' );
1015
+ $_mp_client_secret = get_option( '_mp_client_secret' );
1016
+ $_site_id_v0 = get_option( '_site_id_v0' );
1017
+ $available = ( 'yes' == $this->settings['enabled'] ) &&
1018
+ ! empty( $_mp_client_id ) &&
1019
+ ! empty( $_mp_client_secret ) &&
1020
+ ! empty( $_site_id_v0 );
1021
+ return $available;
1022
+ }
1023
+
1024
+ // Get the URL to admin page.
1025
+ protected function admin_url() {
1026
+ if ( defined( 'WC_VERSION' ) && version_compare( WC_VERSION, '2.1', '>=' ) ) {
1027
+ return admin_url(
1028
+ 'admin.php?page=wc-settings&tab=checkout&section=wc_woomercadopago_basicgateway'
1029
+ );
1030
+ }
1031
+ return admin_url(
1032
+ 'admin.php?page=woocommerce_settings&tab=payment_gateways&section=WC_WooMercadoPago_BasicGateway'
1033
+ );
1034
+ }
1035
+
1036
+ // Display the discount in payment method title.
1037
+ public function get_payment_method_title_basic( $title, $id ) {
1038
+ if ( ! is_checkout() && ! ( defined( 'DOING_AJAX' ) && DOING_AJAX ) ) {
1039
+ return $title;
1040
+ }
1041
+ if ( $title != $this->title || $this->gateway_discount == 0 ) {
1042
+ return $title;
1043
+ }
1044
+ if ( WC()->session->chosen_payment_method == 'woo-mercado-pago-subscription' ) {
1045
+ return $title;
1046
+ }
1047
+ $total = (float) WC()->cart->subtotal;
1048
+ $price_percent = $this->gateway_discount / 100;
1049
+ if ( $price_percent > 0 ) {
1050
+ $title .= ' (' . __( 'Discount of', 'woocommerce-mercadopago' ) . ' ' .
1051
+ strip_tags( wc_price( $total * $price_percent ) ) . ')';
1052
+ }
1053
+ return $title;
1054
+ }
1055
+
1056
+ /*
1057
+ * ========================================================================
1058
+ * IPN MECHANICS (SERVER SIDE)
1059
+ * ========================================================================
1060
+ */
1061
+
1062
+ /**
1063
+ * Summary: This call checks any incoming notifications from Mercado Pago server.
1064
+ * Description: This call checks any incoming notifications from Mercado Pago server.
1065
+ */
1066
+ public function check_ipn_response() {
1067
+ @ob_clean();
1068
+ $this->write_log(
1069
+ __FUNCTION__,
1070
+ 'received _get content: ' .
1071
+ json_encode( $_GET, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
1072
+ );
1073
+ // Setup sandbox mode.
1074
+ $this->mp->sandbox_mode( $this->sandbox );
1075
+ // Over here, $_GET should come with this JSON structure:
1076
+ // {
1077
+ // "topic": <string>,
1078
+ // "id": <string>
1079
+ // }
1080
+ // If not, the IPN is corrupted in some way.
1081
+ $data = $_GET;
1082
+ if ( isset( $data['id'] ) && isset( $data['topic'] ) ) {
1083
+ // We have received a normal IPN call for this gateway, start process by getting the access token...
1084
+ $access_token = array( 'access_token' => $this->mp->get_access_token() );
1085
+ // Now, we should handle the topic type that has come...
1086
+ if ( $data['topic'] == 'merchant_order' ) {
1087
+ // Get the merchant_order reported by the IPN.
1088
+ $ipn_info = $this->mp->get( '/merchant_orders/' . $data['id'], $access_token, false );
1089
+ if ( ! is_wp_error( $ipn_info ) && ( $ipn_info['status'] == 200 || $ipn_info['status'] == 201 ) ) {
1090
+ $payments = $ipn_info['response']['payments'];
1091
+ // If the payment's transaction amount is equal (or bigger) than the merchant order's amount we can release the items.
1092
+ if ( sizeof( $payments ) >= 1 ) {
1093
+ // We have payments...
1094
+ $ipn_info['response']['ipn_type'] = 'merchant_order';
1095
+ do_action( 'valid_mercadopago_basic_ipn_request', $ipn_info['response'] );
1096
+ } else {
1097
+ // We have no payments?
1098
+ $this->write_log( __FUNCTION__, 'order received but has no payment.' );
1099
+ }
1100
+ header( 'HTTP/1.1 200 OK' );
1101
+ } else {
1102
+ $this->write_log(
1103
+ __FUNCTION__,
1104
+ 'got status not equal 200: ' .
1105
+ json_encode( $preapproval_info, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
1106
+ );
1107
+ }
1108
+ } elseif ( $data['topic'] == 'payment' ) {
1109
+ $payment_info = $this->mp->get( '/v1/payments/' . $data['id'], $access_token, false );
1110
+ if ( ! is_wp_error( $payment_info ) && ( $payment_info['status'] == 200 || $payment_info['status'] == 201 ) ) {
1111
+ $payments = $payment_info['response']['payments'];
1112
+ // If the payment's transaction amount is equal (or bigger) than the merchant order's amount we can release the items.
1113
+ if ( sizeof( $payments ) >= 1 ) {
1114
+ // We have payments...
1115
+ $payment_info['response']['ipn_type'] = 'payment';
1116
+ do_action( 'valid_mercadopago_basic_ipn_request', $payment_info['response'] );
1117
+ } else {
1118
+ // We have no payments?
1119
+ $this->write_log( __FUNCTION__, 'order received but has no payment.' );
1120
+ }
1121
+ header( 'HTTP/1.1 200 OK' );
1122
+ } else {
1123
+ $this->write_log(
1124
+ __FUNCTION__,
1125
+ 'error when processing received data: ' .
1126
+ json_encode( $payment_info, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
1127
+ );
1128
+ }
1129
+ } else {
1130
+ // We have received an unhandled topic...
1131
+ $this->write_log( __FUNCTION__, 'request failure, received an unhandled topic.' );
1132
+ }
1133
+ } elseif ( isset( $data['data_id'] ) && isset( $data['type'] ) ) {
1134
+ // We have received a bad, however valid) IPN call for this gateway (data is set for API V1).
1135
+ // At least, we should respond 200 to notify server that we already received it.
1136
+ header( 'HTTP/1.1 200 OK' );
1137
+ } else {
1138
+ // Reaching here means that we received an IPN call but there are no data!
1139
+ // Just kills the processment. No IDs? No process!
1140
+ $this->write_log(
1141
+ __FUNCTION__,
1142
+ 'request failure, received ipn call with no data.'
1143
+ );
1144
+ wp_die( __( 'Mercado Pago Request Failure', 'woocommerce-mercadopago' ) );
1145
+ }
1146
+ }
1147
+
1148
+ /**
1149
+ * Summary: Properly handles each case of notification, based in payment status.
1150
+ * Description: Properly handles each case of notification, based in payment status.
1151
+ */
1152
+ public function successful_request( $data ) {
1153
+ $this->write_log( __FUNCTION__, 'starting to process ipn update...' );
1154
+ // Get the order and check its presence.
1155
+ $order_key = $data['external_reference'];
1156
+ if ( empty( $order_key ) ) {
1157
+ return;
1158
+ }
1159
+ $invoice_prefix = get_option( '_mp_store_identificator', 'WC-' );
1160
+ $id = (int) str_replace( $invoice_prefix, '', $order_key );
1161
+ $order = wc_get_order( $id );
1162
+ // Check if order exists.
1163
+ if ( ! $order ) {
1164
+ return;
1165
+ }
1166
+ // WooCommerce 3.0 or later.
1167
+ $order_id = ( method_exists( $order, 'get_id' ) ? $order->get_id() : $order->id );
1168
+ // Check if we have the correct order.
1169
+ if ( $order_id !== $id ) {
1170
+ return;
1171
+ }
1172
+ $this->write_log(
1173
+ __FUNCTION__,
1174
+ 'updating metadata and status with data: ' .
1175
+ json_encode( $data, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
1176
+ );
1177
+ // Here, we process the status... this is the business rules!
1178
+ // Reference: https://www.mercadopago.com.br/developers/en/api-docs/basic-checkout/ipn/payment-status/
1179
+ $status = 'pending';
1180
+ $payments = $data['payments'];
1181
+ if ( sizeof( $payments ) == 1 ) {
1182
+ // If we have only one payment, just set status as its status
1183
+ $status = $payments[0]['status'];
1184
+ } elseif ( sizeof( $payments ) > 1 ) {
1185
+ // However, if we have multiple payments, the overall payment have some rules...
1186
+ $total_paid = 0.00;
1187
+ $total_refund = 0.00;
1188
+ $total = $data['shipping_cost'] + $data['total_amount'];
1189
+ // Grab some information...
1190
+ foreach ( $data['payments'] as $payment ) {
1191
+ if ( $payment['status'] === 'approved' ) {
1192
+ // Get the total paid amount, considering only approved incomings.
1193
+ $total_paid += (float) $payment['total_paid_amount'];
1194
+ } elseif ( $payment['status'] === 'refunded' ) {
1195
+ // Get the total refounded amount.
1196
+ $total_refund += (float) $payment['amount_refunded'];
1197
+ }
1198
+ }
1199
+ if ( $total_paid >= $total ) {
1200
+ $status = 'approved';
1201
+ } elseif ( $total_refund >= $total ) {
1202
+ $status = 'refunded';
1203
+ } else {
1204
+ $status = 'pending';
1205
+ }
1206
+ }
1207
+ // WooCommerce 3.0 or later.
1208
+ if ( method_exists( $order, 'update_meta_data' ) ) {
1209
+ // Updates the type of gateway.
1210
+ $order->update_meta_data( '_used_gateway', 'WC_WooMercadoPago_BasicGateway' );
1211
+ if ( ! empty( $data['payer']['email'] ) ) {
1212
+ $order->update_meta_data( __( 'Payer email', 'woocommerce-mercadopago' ), $data['payer']['email'] );
1213
+ }
1214
+ if ( ! empty( $data['payment_type_id'] ) ) {
1215
+ $order->update_meta_data( __( 'Payment type', 'woocommerce-mercadopago' ), $data['payment_type_id'] );
1216
+ }
1217
+ if ( ! empty( $data['payments'] ) ) {
1218
+ $payment_ids = array();
1219
+ foreach ( $data['payments'] as $payment ) {
1220
+ $payment_ids[] = $payment['id'];
1221
+ $order->update_meta_data( 'Mercado Pago - Payment ' . $payment['id'],
1222
+ '[Date ' . date( 'Y-m-d H:i:s', strtotime( $payment['date_created'] ) ) .
1223
+ ']/[Amount ' . $payment['transaction_amount'] .
1224
+ ']/[Paid ' . $payment['total_paid_amount'] .
1225
+ ']/[Refund ' . $payment['amount_refunded'] . ']'
1226
+ );
1227
+ }
1228
+ if ( sizeof( $payment_ids ) > 0 ) {
1229
+ $order->update_meta_data( '_Mercado_Pago_Payment_IDs', implode( ', ', $payment_ids ) );
1230
+ }
1231
+ }
1232
+ $order->save();
1233
+ } else {
1234
+ // Updates the type of gateway.
1235
+ update_post_meta( $order->id, '_used_gateway', 'WC_WooMercadoPago_BasicGateway' );
1236
+ if ( ! empty( $data['payer']['email'] ) ) {
1237
+ update_post_meta( $order_id, __( 'Payer email', 'woocommerce-mercadopago' ), $data['payer']['email'] );
1238
+ }
1239
+ if ( ! empty( $data['payment_type_id'] ) ) {
1240
+ update_post_meta( $order_id, __( 'Payment type', 'woocommerce-mercadopago' ), $data['payment_type_id'] );
1241
+ }
1242
+ if ( ! empty( $data['payments'] ) ) {
1243
+ $payment_ids = array();
1244
+ foreach ( $data['payments'] as $payment ) {
1245
+ $payment_ids[] = $payment['id'];
1246
+ update_post_meta(
1247
+ $order_id,
1248
+ 'Mercado Pago - Payment ' . $payment['id'],
1249
+ '[Date ' . date( 'Y-m-d H:i:s', strtotime( $payment['date_created'] ) ) .
1250
+ ']/[Amount ' . $payment['transaction_amount'] .
1251
+ ']/[Paid ' . $payment['total_paid_amount'] .
1252
+ ']/[Refund ' . $payment['amount_refunded'] . ']'
1253
+ );
1254
+ }
1255
+ if ( sizeof( $payment_ids ) > 0 ) {
1256
+ update_post_meta( $order_id, '_Mercado_Pago_Payment_IDs', implode( ', ', $payment_ids ) );
1257
+ }
1258
+ }
1259
+ }
1260
+ // Switch the status and update in WooCommerce.
1261
+ $this->write_log(
1262
+ __FUNCTION__,
1263
+ 'Changing order status to: ' .
1264
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( str_replace( '_', '', $status ) )
1265
+ );
1266
+ switch ( $status ) {
1267
+ case 'approved':
1268
+ $order->add_order_note(
1269
+ 'Mercado Pago: ' . __( 'Payment approved.', 'woocommerce-mercadopago' )
1270
+ );
1271
+ $order->payment_complete();
1272
+ $order->update_status(
1273
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'approved' )
1274
+ );
1275
+ break;
1276
+ case 'pending':
1277
+ $order->update_status(
1278
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'pending' )
1279
+ );
1280
+ $order->add_order_note(
1281
+ 'Mercado Pago: ' . __( 'Customer haven\'t paid yet.', 'woocommerce-mercadopago' )
1282
+ );
1283
+ break;
1284
+ case 'in_process':
1285
+ $order->update_status(
1286
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'on-hold' ),
1287
+ 'Mercado Pago: ' . __( 'Payment under review.', 'woocommerce-mercadopago' )
1288
+ );
1289
+ break;
1290
+ case 'rejected':
1291
+ $order->update_status(
1292
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'failed' ),
1293
+ 'Mercado Pago: ' . __( 'The payment was refused. The customer can try again.', 'woocommerce-mercadopago' )
1294
+ );
1295
+ break;
1296
+ case 'refunded':
1297
+ $order->update_status(
1298
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'refunded' ),
1299
+ 'Mercado Pago: ' . __( 'The payment was refunded to the customer.', 'woocommerce-mercadopago' )
1300
+ );
1301
+ break;
1302
+ case 'cancelled':
1303
+ $this->process_cancel_order_meta_box_actions( $order );
1304
+ $order->update_status(
1305
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'cancelled' ),
1306
+ 'Mercado Pago: ' . __( 'The payment was cancelled.', 'woocommerce-mercadopago' )
1307
+ );
1308
+ break;
1309
+ case 'in_mediation':
1310
+ $order->update_status(
1311
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'inmediation' )
1312
+ );
1313
+ $order->add_order_note(
1314
+ 'Mercado Pago: ' . __( 'The payment is under mediation or it was charged-back.', 'woocommerce-mercadopago' )
1315
+ );
1316
+ break;
1317
+ case 'charged-back':
1318
+ $order->update_status(
1319
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'chargedback' )
1320
+ );
1321
+ $order->add_order_note(
1322
+ 'Mercado Pago: ' . __( 'The payment is under mediation or it was charged-back.', 'woocommerce-mercadopago' )
1323
+ );
1324
+ break;
1325
+ default:
1326
+ break;
1327
+ }
1328
+ $this->check_mercado_envios( $data );
1329
+ }
1330
+
1331
+ /**
1332
+ * Summary: Check IPN data and updates Mercado Envios tag and informaitons.
1333
+ * Description: Check IPN data and updates Mercado Envios tag and informaitons.
1334
+ */
1335
+ public function check_mercado_envios( $merchant_order ) {
1336
+ $order_key = $merchant_order['external_reference'];
1337
+ if ( ! empty( $order_key ) ) {
1338
+ $invoice_prefix = get_option( '_mp_store_identificator', 'WC-' );
1339
+ $order_id = (int) str_replace( $invoice_prefix, '', $order_key );
1340
+ $order = wc_get_order( $order_id );
1341
+ if ( count( $merchant_order['shipments'] ) > 0 ) {
1342
+ foreach ( $merchant_order['shipments'] as $shipment ) {
1343
+ $shipment_id = $shipment['id'];
1344
+ // Get shipping data on merchant_order.
1345
+ $shipment_name = $shipment['shipping_option']['name'];
1346
+ $shipment_cost = $shipment['shipping_option']['cost'];
1347
+ $shipping_method_id = $shipment['shipping_option']['shipping_method_id'];
1348
+ // Get data shipping selected on checkout.
1349
+ $shipping_meta = $order->get_items( 'shipping' );
1350
+ $order_item_shipping_id = null;
1351
+ $method_id = null;
1352
+ foreach ( $shipping_meta as $key => $shipping ) {
1353
+ $order_item_shipping_id = $key;
1354
+ $method_id = $shipping['method_id'];
1355
+ }
1356
+ $free_shipping_text = '';
1357
+ $free_shipping_status = 'no';
1358
+ if ( $shipment_cost == 0 ) {
1359
+ $free_shipping_status = 'yes';
1360
+ $free_shipping_text = ' (' . __( 'Free Shipping', 'woocommerce' ) . ')';
1361
+ }
1362
+ // WooCommerce 3.0 or later.
1363
+ if ( method_exists( $order, 'get_id' ) ) {
1364
+ $shipping_item = $order->get_item( $order_item_shipping_id );
1365
+ $shipping_item->set_order_id( $order->get_id() );
1366
+ // Update shipping cost and method title.
1367
+ $shipping_item->set_props( array(
1368
+ 'method_title' => 'Mercado Envios - ' . $shipment_name . $free_shipping_text,
1369
+ 'method_id' => $method_id,
1370
+ 'total' => wc_format_decimal( $shipment_cost ),
1371
+ ) );
1372
+ $shipping_item->save();
1373
+ $this->calculate_shipping();
1374
+ } else {
1375
+ // Update shipping cost and method title.
1376
+ $r = $order->update_shipping( $order_item_shipping_id, array(
1377
+ 'method_title' => 'Mercado Envios - ' . $shipment_name . $free_shipping_text,
1378
+ 'method_id' => $method_id,
1379
+ 'cost' => wc_format_decimal( $shipment_cost )
1380
+ ) );
1381
+ }
1382
+ // WTF? FORCE UPDATE SHIPPING: https://docs.woocommerce.com/wc-apidocs/source-class-WC_Abstract_Order.html#541
1383
+ $order->set_total( wc_format_decimal( $shipment_cost ) , 'shipping' );
1384
+ // Update total order.
1385
+ $order->set_total(
1386
+ wc_format_decimal( $order->get_subtotal() )
1387
+ + wc_format_decimal( $order->get_total_shipping() )
1388
+ + wc_format_decimal( $order->get_total_tax() )
1389
+ - wc_format_decimal( $order->get_total_discount() )
1390
+ );
1391
+ // Update additional info.
1392
+ wc_update_order_item_meta( $order_item_shipping_id, 'shipping_method_id', $shipping_method_id );
1393
+ wc_update_order_item_meta( $order_item_shipping_id, 'free_shipping', $free_shipping_status );
1394
+ $access_token = $this->mp->get_access_token();
1395
+ $request = array(
1396
+ 'uri' => '/shipments/' . $shipment_id,
1397
+ 'params' => array(
1398
+ 'access_token' => $access_token
1399
+ )
1400
+ );
1401
+ $email = ( wp_get_current_user()->ID != 0 ) ? wp_get_current_user()->user_email : null;
1402
+ MeliRestClient::set_email( $email );
1403
+ $shipments_data = MeliRestClient::get( $request, '' );
1404
+ switch ( $shipments_data['response']['substatus'] ) {
1405
+ case 'ready_to_print':
1406
+ $substatus_description = __( 'Tag ready to print', 'woocommerce-mercadopago' );
1407
+ break;
1408
+ case 'printed':
1409
+ $substatus_description = __( 'Tag printed', 'woocommerce-mercadopago' );
1410
+ break;
1411
+ case 'stale':
1412
+ $substatus_description = __( 'Unsuccessful', 'woocommerce-mercadopago' );
1413
+ break;
1414
+ case 'delayed':
1415
+ $substatus_description = __( 'Delayed shipping', 'woocommerce-mercadopago' );
1416
+ break;
1417
+ case 'receiver_absent':
1418
+ $substatus_description = __( 'Missing recipient for delivery', 'woocommerce-mercadopago' );
1419
+ break;
1420
+ case 'returning_to_sender':
1421
+ $substatus_description = __( 'In return to sender', 'woocommerce-mercadopago' );
1422
+ break;
1423
+ case 'claimed_me':
1424
+ $substatus_description = __( 'Buyer initiates complaint and requested a refund.', 'woocommerce-mercadopago' );
1425
+ break;
1426
+ default:
1427
+ $substatus_description = $shipments_data['response']['substatus'];
1428
+ break;
1429
+ }
1430
+ if ( $substatus_description == '' ) {
1431
+ $substatus_description = $shipments_data['response']['status'];
1432
+ }
1433
+ $order->add_order_note( 'Mercado Envios: ' . $substatus_description );
1434
+ $this->write_log( __FUNCTION__, 'Mercado Envios - shipments_data : ' . json_encode( $shipments_data, JSON_PRETTY_PRINT ) );
1435
+ // Add tracking number in meta data to use in order page.
1436
+ update_post_meta( $order_id, '_mercadoenvios_tracking_number', $shipments_data['response']['tracking_number'] );
1437
+ // Add shipiment_id in meta data to use in order page.
1438
+ update_post_meta( $order_id, '_mercadoenvios_shipment_id', $shipment_id );
1439
+ // Add status in meta data to use in order page.
1440
+ update_post_meta( $order_id, '_mercadoenvios_status', $shipments_data['response']['status'] );
1441
+ // Add substatus in meta data to use in order page.
1442
+ update_post_meta( $order_id, '_mercadoenvios_substatus', $shipments_data['response']['substatus'] );
1443
+ // Send email to customer.
1444
+ $tracking_id = $shipments_data['response']['tracking_number'];
1445
+ if ( isset( $order->billing_email ) && isset( $tracking_id ) ) {
1446
+ $list_of_items = array();
1447
+ $items = $order->get_items();
1448
+ foreach ( $items as $item ) {
1449
+ $product = new WC_product( $item['product_id'] );
1450
+ if ( method_exists( $product, 'get_description' ) ) {
1451
+ $product_title = WC_Woo_Mercado_Pago_Module::utf8_ansi(
1452
+ $product->get_name()
1453
+ );
1454
+ } else {
1455
+ $product_title = WC_Woo_Mercado_Pago_Module::utf8_ansi(
1456
+ $product->post->post_title
1457
+ );
1458
+ }
1459
+ array_push( $list_of_items, $product_title . ' x ' . $item['qty'] );
1460
+ }
1461
+ wp_mail(
1462
+ $order->billing_email,
1463
+ __( 'Order', 'woocommerce-mercadopago' ) . ' ' . $order_id . ' - ' . __( 'Mercado Envios Tracking ID', 'woocommerce-mercadopago' ),
1464
+ __( 'Hello,', 'woocommerce-mercadopago' ) . "\r\n\r\n" .
1465
+ __( 'Your order', 'woocommerce-mercadopago' ) . ' ' . ' [ ' . implode( ', ', $list_of_items ) . ' ] ' .
1466
+ __( 'made in', 'woocommerce-mercadopago' ) . ' ' . get_site_url() . ' ' .
1467
+ __( 'used Mercado Envios as its shipment method.', 'woocommerce-mercadopago' ) . "\r\n" .
1468
+ __( 'You can track it with the following Tracking ID:', 'woocommerce-mercadopago' ) . ' ' . $tracking_id . ".\r\n\r\n" .
1469
+ __( 'Best regards.', 'woocommerce-mercadopago' )
1470
+ );
1471
+ }
1472
+ }
1473
+ }
1474
+ }
1475
+ }
1476
+
1477
+ }
includes/WC_WooMercadoPago_CustomGateway.php ADDED
@@ -0,0 +1,1337 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Part of Woo Mercado Pago Module
5
+ * Author - Mercado Pago
6
+ * Developer - Marcelo Tomio Hama / marcelo.hama@mercadolivre.com
7
+ * Copyright - Copyright(c) MercadoPago [https://www.mercadopago.com]
8
+ * License - https://www.gnu.org/licenses/gpl.html GPL version 2 or higher
9
+ */
10
+
11
+ // This include Mercado Pago library SDK
12
+ require_once dirname( __FILE__ ) . '/sdk/lib/mercadopago.php';
13
+
14
+ /**
15
+ * Summary: Extending from WooCommerce Payment Gateway class.
16
+ * Description: This class implements Mercado Pago custom checkout.
17
+ * @since 3.0.0
18
+ */
19
+ class WC_WooMercadoPago_CustomGateway extends WC_Payment_Gateway {
20
+
21
+ public function __construct( $is_instance = false ) {
22
+
23
+ // Mercao Pago instance.
24
+ $this->site_data = WC_Woo_Mercado_Pago_Module::get_site_data( true );
25
+ $this->mp = new MP(
26
+ WC_Woo_Mercado_Pago_Module::get_module_version(),
27
+ get_option( '_mp_access_token' )
28
+ );
29
+ $email = ( wp_get_current_user()->ID != 0 ) ? wp_get_current_user()->user_email : null;
30
+ $this->mp->set_email( $email );
31
+
32
+ // WooCommerce fields.
33
+ $this->id = 'woo-mercado-pago-custom';
34
+ $this->supports = array( 'products', 'refunds' );
35
+ $this->icon = apply_filters(
36
+ 'woocommerce_mercadopago_icon',
37
+ plugins_url( 'assets/images/mercadopago.png', plugin_dir_path( __FILE__ ) )
38
+ );
39
+
40
+ $this->method_title = __( 'Mercado Pago - Custom Checkout', 'woocommerce-mercadopago' );
41
+ $this->method_description = '<img width="200" height="52" src="' .
42
+ plugins_url( 'assets/images/mplogo.png', plugin_dir_path( __FILE__ ) ) .
43
+ '"><br><br><strong>' .
44
+ __( 'We give you the possibility to adapt the payment experience you want to offer 100% in your website, mobile app or anywhere you want. You can build the design that best fits your business model, aiming to maximize conversion.', 'woocommerce-mercadopago' ) .
45
+ '</strong>';
46
+
47
+ $this->sandbox = get_option( '_mp_sandbox_mode', false );
48
+ $this->mp->sandbox_mode( $this->sandbox );
49
+
50
+ // How checkout is shown.
51
+ $this->title = $this->get_option( 'title' );
52
+ $this->description = $this->get_option( 'description' );
53
+ // How checkout payment behaves.
54
+ $this->coupon_mode = $this->get_option( 'coupon_mode', 'no' );
55
+ $this->binary_mode = $this->get_option( 'binary_mode', 'no' );
56
+ $this->gateway_discount = $this->get_option( 'gateway_discount', 0 );
57
+
58
+ // Logging and debug.
59
+ $_mp_debug_mode = get_option( '_mp_debug_mode', '' );
60
+ if ( ! empty ( $_mp_debug_mode ) ) {
61
+ if ( class_exists( 'WC_Logger' ) ) {
62
+ $this->log = new WC_Logger();
63
+ } else {
64
+ $this->log = WC_Woo_Mercado_Pago_Module::woocommerce_instance()->logger();
65
+ }
66
+ }
67
+
68
+ // Render our configuration page and init/load fields.
69
+ $this->init_form_fields();
70
+ $this->init_settings();
71
+
72
+ // Used by IPN to receive IPN incomings.
73
+ add_action(
74
+ 'woocommerce_api_wc_woomercadopago_customgateway',
75
+ array( $this, 'check_ipn_response' )
76
+ );
77
+ // Used by IPN to process valid incomings.
78
+ add_action(
79
+ 'valid_mercadopago_custom_ipn_request',
80
+ array( $this, 'successful_request' )
81
+ );
82
+ // Process the cancel order meta box order action.
83
+ add_action(
84
+ 'woocommerce_order_action_cancel_order',
85
+ array( $this, 'process_cancel_order_meta_box_actions' )
86
+ );
87
+ // Used in settings page to hook "save settings" action.
88
+ add_action(
89
+ 'woocommerce_update_options_payment_gateways_' . $this->id,
90
+ array( $this, 'custom_process_admin_options' )
91
+ );
92
+ // Scripts for custom checkout.
93
+ add_action(
94
+ 'wp_enqueue_scripts',
95
+ array( $this, 'add_checkout_scripts_custom' )
96
+ );
97
+ // Apply the discounts.
98
+ add_action(
99
+ 'woocommerce_cart_calculate_fees',
100
+ array( $this, 'add_discount_custom' ), 10
101
+ );
102
+ // Display discount in payment method title.
103
+ add_filter(
104
+ 'woocommerce_gateway_title',
105
+ array( $this, 'get_payment_method_title_custom' ), 10, 2
106
+ );
107
+
108
+ if ( ! empty( $this->settings['enabled'] ) && $this->settings['enabled'] == 'yes' ) {
109
+ if ( ! $is_instance ) {
110
+ // Scripts for order configuration.
111
+ add_action(
112
+ 'woocommerce_after_checkout_form',
113
+ array( $this, 'add_mp_settings_script_custom' )
114
+ );
115
+ // Checkout updates.
116
+ add_action(
117
+ 'woocommerce_thankyou',
118
+ array( $this, 'update_mp_settings_script_custom' )
119
+ );
120
+ }
121
+ }
122
+
123
+ }
124
+
125
+ /**
126
+ * Summary: Initialise Gateway Settings Form Fields.
127
+ * Description: Initialise Gateway settings form fields with a customized page.
128
+ */
129
+ public function init_form_fields() {
130
+
131
+ // Show message if credentials are not properly configured.
132
+ $_site_id_v1 = get_option( '_site_id_v1', '' );
133
+ if ( empty( $_site_id_v1 ) ) {
134
+ $this->form_fields = array(
135
+ 'no_credentials_title' => array(
136
+ 'title' => sprintf(
137
+ __( 'It appears that your credentials are not properly configured.<br/>Please, go to %s and configure it.', 'woocommerce-mercadopago' ),
138
+ '<a href="' . esc_url( admin_url( 'admin.php?page=mercado-pago-settings' ) ) . '">' .
139
+ __( 'Mercado Pago Settings', 'woocommerce-mercadopago' ) .
140
+ '</a>'
141
+ ),
142
+ 'type' => 'title'
143
+ ),
144
+ );
145
+ return;
146
+ }
147
+
148
+ // If module is disabled, we do not need to load and process the settings page.
149
+ if ( empty( $this->settings['enabled'] ) || 'no' == $this->settings['enabled'] ) {
150
+ $this->form_fields = array(
151
+ 'enabled' => array(
152
+ 'title' => __( 'Enable/Disable', 'woocommerce-mercadopago' ),
153
+ 'type' => 'checkbox',
154
+ 'label' => __( 'Enable Custom Checkout', 'woocommerce-mercadopago' ),
155
+ 'default' => 'no'
156
+ )
157
+ );
158
+ return;
159
+ }
160
+
161
+ // This array draws each UI (text, selector, checkbox, label, etc).
162
+ $this->form_fields = array(
163
+ 'enabled' => array(
164
+ 'title' => __( 'Enable/Disable', 'woocommerce-mercadopago' ),
165
+ 'type' => 'checkbox',
166
+ 'label' => __( 'Enable Custom Checkout', 'woocommerce-mercadopago' ),
167
+ 'default' => 'no'
168
+ ),
169
+ 'checkout_options_title' => array(
170
+ 'title' => __( 'Checkout Interface: How checkout is shown', 'woocommerce-mercadopago' ),
171
+ 'type' => 'title'
172
+ ),
173
+ 'title' => array(
174
+ 'title' => __( 'Title', 'woocommerce-mercadopago' ),
175
+ 'type' => 'text',
176
+ 'description' => __( 'Title shown to the client in the checkout.', 'woocommerce-mercadopago' ),
177
+ 'default' => __( 'Mercado Pago - Credit Card', 'woocommerce-mercadopago' )
178
+ ),
179
+ 'description' => array(
180
+ 'title' => __( 'Description', 'woocommerce-mercadopago' ),
181
+ 'type' => 'textarea',
182
+ 'description' => __( 'Description shown to the client in the checkout.', 'woocommerce-mercadopago' ),
183
+ 'default' => __( 'Pay with Mercado Pago', 'woocommerce-mercadopago' )
184
+ ),
185
+ 'payment_title' => array(
186
+ 'title' => __( 'Payment Options: How payment options behaves', 'woocommerce-mercadopago' ),
187
+ 'type' => 'title'
188
+ ),
189
+ 'coupon_mode' => array(
190
+ 'title' => __( 'Coupons', 'woocommerce-mercadopago' ),
191
+ 'type' => 'checkbox',
192
+ 'label' => __( 'Enable coupons of discounts', 'woocommerce-mercadopago' ),
193
+ 'default' => 'no',
194
+ 'description' => __( 'If there is a Mercado Pago campaign, allow your store to give discounts to customers.', 'woocommerce-mercadopago' )
195
+ ),
196
+ 'binary_mode' => array(
197
+ 'title' => __( 'Binary Mode', 'woocommerce-mercadopago' ),
198
+ 'type' => 'checkbox',
199
+ 'label' => __( 'Enable binary mode for checkout status', 'woocommerce-mercadopago' ),
200
+ 'default' => 'no',
201
+ 'description' => __( 'When charging a credit card, only [approved] or [reject] status will be taken.', 'woocommerce-mercadopago' )
202
+ ),
203
+ 'gateway_discount' => array(
204
+ 'title' => __( 'Discount by Gateway', 'woocommerce-mercadopago' ),
205
+ 'type' => 'number',
206
+ 'description' => __( 'Give a percentual (0 to 100) discount for your customers if they use this payment gateway.', 'woocommerce-mercadopago' ),
207
+ 'default' => '0'
208
+ )
209
+ );
210
+
211
+ }
212
+
213
+ /**
214
+ * Processes and saves options.
215
+ * If there is an error thrown, will continue to save and validate fields, but will leave the
216
+ * erroring field out.
217
+ * @return bool was anything saved?
218
+ */
219
+ public function custom_process_admin_options() {
220
+ $this->init_settings();
221
+ $post_data = $this->get_post_data();
222
+ foreach ( $this->get_form_fields() as $key => $field ) {
223
+ if ( 'title' !== $this->get_field_type( $field ) ) {
224
+ $value = $this->get_field_value( $key, $field, $post_data );
225
+ if ( $key == 'gateway_discount') {
226
+ if ( ! is_numeric( $value ) || empty ( $value ) ) {
227
+ $this->settings[$key] = 0;
228
+ } else {
229
+ if ( $value < 0 || $value >= 100 || empty ( $value ) ) {
230
+ $this->settings[$key] = 0;
231
+ } else {
232
+ $this->settings[$key] = $value;
233
+ }
234
+ }
235
+ } else {
236
+ $this->settings[$key] = $this->get_field_value( $key, $field, $post_data );
237
+ }
238
+ }
239
+ }
240
+ $_site_id_v1 = get_option( '_site_id_v1', '' );
241
+ $is_test_user = get_option( '_test_user_v1', false );
242
+ if ( ! empty( $_site_id_v1 ) && ! $is_test_user ) {
243
+ // Create MP instance.
244
+ $mp = new MP(
245
+ WC_Woo_Mercado_Pago_Module::get_module_version(),
246
+ get_option( '_mp_access_token' )
247
+ );
248
+ $email = ( wp_get_current_user()->ID != 0 ) ? wp_get_current_user()->user_email : null;
249
+ $mp->set_email( $email );
250
+ // Analytics.
251
+ $infra_data = WC_Woo_Mercado_Pago_Module::get_common_settings();
252
+ $infra_data['checkout_custom_credit_card'] = ( $this->settings['enabled'] == 'yes' ? 'true' : 'false' );
253
+ $infra_data['checkout_custom_credit_card_coupon'] = ( $this->settings['coupon_mode'] == 'yes' ? 'true' : 'false' );
254
+ $response = $mp->analytics_save_settings( $infra_data );
255
+ }
256
+ // Apply updates.
257
+ return update_option(
258
+ $this->get_option_key(),
259
+ apply_filters( 'woocommerce_settings_api_sanitized_fields_' . $this->id, $this->settings )
260
+ );
261
+ }
262
+
263
+ /**
264
+ * Handles the manual order refunding in server-side.
265
+ */
266
+ public function process_refund( $order_id, $amount = null, $reason = '' ) {
267
+
268
+ $payments = get_post_meta( $order_id, '_Mercado_Pago_Payment_IDs', true );
269
+
270
+ // Validate.
271
+ if ( $this->mp == null || empty( $payments ) ) {
272
+ $this->write_log( __FUNCTION__, 'no payments or credentials invalid' );
273
+ return false;
274
+ }
275
+
276
+ // Processing data about this refund.
277
+ $total_available = 0;
278
+ $payment_structs = array();
279
+ $payment_ids = explode( ', ', $payments );
280
+ foreach ( $payment_ids as $p_id ) {
281
+ $p = get_post_meta( $order_id, 'Mercado Pago - Payment ' . $p_id, true );
282
+ $p = explode( '/', $p );
283
+ $paid_arr = explode( ' ', substr( $p[2], 1, -1 ) );
284
+ $paid = ( (float) $paid_arr[1] );
285
+ $refund_arr = explode( ' ', substr( $p[3], 1, -1 ) );
286
+ $refund = ( (float) $refund_arr[1] );
287
+ $p_struct = array( 'id' => $p_id, 'available_to_refund' => $paid - $refund );
288
+ $total_available += $paid - $refund;
289
+ $payment_structs[] = $p_struct;
290
+ }
291
+ $this->write_log( __FUNCTION__,
292
+ 'refunding ' . $amount . ' because of ' . $reason . ' and payments ' .
293
+ json_encode( $payment_structs, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
294
+ );
295
+
296
+ // Do not allow refund more than available or invalid amounts.
297
+ if ( $amount > $total_available || $amount <= 0 ) {
298
+ return false;
299
+ }
300
+
301
+ // Iteratively refunfind amount, taking in consideration multiple payments.
302
+ $remaining_to_refund = $amount;
303
+ foreach ( $payment_structs as $to_refund ) {
304
+ if ( $remaining_to_refund <= $to_refund['available_to_refund'] ) {
305
+ // We want to refund an amount that is less than the available for this payment, so we
306
+ // can just refund and return.
307
+ $response = $this->mp->partial_refund_payment(
308
+ $to_refund['id'], $remaining_to_refund,
309
+ $reason, $this->invoice_prefix . $order_id
310
+ );
311
+ $message = $response['response']['message'];
312
+ $status = $response['status'];
313
+ $this->write_log( __FUNCTION__,
314
+ 'refund payment of id ' . $p_id . ' => ' .
315
+ ( $status >= 200 && $status < 300 ? 'SUCCESS' : 'FAIL - ' . $message )
316
+ );
317
+ if ( $status >= 200 && $status < 300 ) {
318
+ return true;
319
+ } else {
320
+ return false;
321
+ }
322
+ } elseif ( $to_refund['available_to_refund'] > 0 ) {
323
+ // We want to refund an amount that exceeds the available for this payment, so we
324
+ // totally refund this payment, and try to complete refund in other/next payments.
325
+ $response = $this->mp->partial_refund_payment(
326
+ $to_refund['id'], $to_refund['available_to_refund'],
327
+ $reason, $this->invoice_prefix . $order_id
328
+ );
329
+ $message = $response['response']['message'];
330
+ $status = $response['status'];
331
+ $this->write_log( __FUNCTION__,
332
+ 'refund payment of id ' . $p_id . ' => ' .
333
+ ( $status >= 200 && $status < 300 ? 'SUCCESS' : 'FAIL - ' . $message )
334
+ );
335
+ if ( $status < 200 || $status >= 300 ) {
336
+ return false;
337
+ }
338
+ $remaining_to_refund -= $to_refund['available_to_refund'];
339
+ }
340
+ if ( $remaining_to_refund == 0 )
341
+ return true;
342
+ }
343
+
344
+ // Reaching here means that there we run out of payments, and there is an amount
345
+ // remaining to be refund, which is impossible as it implies refunding more than
346
+ // available on paid amounts.
347
+ return false;
348
+ }
349
+
350
+ /**
351
+ * Handles the manual order cancellation in server-side.
352
+ */
353
+ public function process_cancel_order_meta_box_actions( $order ) {
354
+
355
+ $used_gateway = ( method_exists( $order, 'get_meta' ) ) ?
356
+ $order->get_meta( '_used_gateway' ) :
357
+ get_post_meta( $order->id, '_used_gateway', true );
358
+ $payments = ( method_exists( $order, 'get_meta' ) ) ?
359
+ $order->get_meta( '_Mercado_Pago_Payment_IDs' ) :
360
+ get_post_meta( $order->id, '_Mercado_Pago_Payment_IDs', true );
361
+
362
+ // A watchdog to prevent operations from other gateways.
363
+ if ( $used_gateway != 'WC_WooMercadoPago_CustomGateway' ) {
364
+ return;
365
+ }
366
+
367
+ $this->write_log( __FUNCTION__, 'cancelling payments for ' . $payments );
368
+
369
+ // Canceling the order and all of its payments.
370
+ if ( $this->mp != null && ! empty( $payments ) ) {
371
+ $payment_ids = explode( ', ', $payments );
372
+ foreach ( $payment_ids as $p_id ) {
373
+ $response = $this->mp->cancel_payment( $p_id );
374
+ $message = $response['response']['message'];
375
+ $status = $response['status'];
376
+ $this->write_log( __FUNCTION__,
377
+ 'cancel payment of id ' . $p_id . ' => ' .
378
+ ( $status >= 200 && $status < 300 ? 'SUCCESS' : 'FAIL - ' . $message )
379
+ );
380
+ }
381
+ } else {
382
+ $this->write_log( __FUNCTION__, 'no payments or credentials invalid' );
383
+ }
384
+ }
385
+
386
+ // Write log.
387
+ private function write_log( $function, $message ) {
388
+ $_mp_debug_mode = get_option( '_mp_debug_mode', '' );
389
+ if ( ! empty ( $_mp_debug_mode ) ) {
390
+ $this->log->add(
391
+ $this->id,
392
+ '[' . $function . ']: ' . $message
393
+ );
394
+ }
395
+ }
396
+
397
+ /*
398
+ * ========================================================================
399
+ * CHECKOUT BUSINESS RULES (CLIENT SIDE)
400
+ * ========================================================================
401
+ */
402
+
403
+ public function add_mp_settings_script_custom() {
404
+ $public_key = get_option( '_mp_public_key' );
405
+ $is_test_user = get_option( '_test_user_v1', false );
406
+ if ( ! empty( $public_key ) && ! $is_test_user ) {
407
+ $w = WC_Woo_Mercado_Pago_Module::woocommerce_instance();
408
+ $available_payments = array();
409
+ $gateways = WC()->payment_gateways->get_available_payment_gateways();
410
+ foreach ( $gateways as $g ) {
411
+ $available_payments[] = $g->id;
412
+ }
413
+ $available_payments = str_replace( '-', '_', implode( ', ', $available_payments ) );
414
+ if ( wp_get_current_user()->ID != 0 ) {
415
+ $logged_user_email = wp_get_current_user()->user_email;
416
+ } else {
417
+ $logged_user_email = null;
418
+ }
419
+ ?>
420
+ <script src="https://secure.mlstatic.com/modules/javascript/analytics.js"></script>
421
+ <script type="text/javascript">
422
+ var MA = ModuleAnalytics;
423
+ MA.setPublicKey( '<?php echo $public_key; ?>' );
424
+ MA.setPlatform( 'WooCommerce' );
425
+ MA.setPlatformVersion( '<?php echo $w->version; ?>' );
426
+ MA.setModuleVersion( '<?php echo WC_Woo_Mercado_Pago_Module::VERSION; ?>' );
427
+ MA.setPayerEmail( '<?php echo ( $logged_user_email != null ? $logged_user_email : "" ); ?>' );
428
+ MA.setUserLogged( <?php echo ( empty( $logged_user_email ) ? 0 : 1 ); ?> );
429
+ MA.setInstalledModules( '<?php echo $available_payments; ?>' );
430
+ MA.post();
431
+ </script>
432
+ <?php
433
+ }
434
+ }
435
+
436
+ public function update_mp_settings_script_custom( $order_id ) {
437
+ $public_key = get_option( '_mp_public_key' );
438
+ $is_test_user = get_option( '_test_user_v1', false );
439
+ if ( ! empty( $public_key ) && ! $is_test_user ) {
440
+ if ( get_post_meta( $order_id, '_used_gateway', true ) != 'WC_WooMercadoPago_CustomGateway' ) {
441
+ return;
442
+ }
443
+ $this->write_log( __FUNCTION__, 'updating order of ID ' . $order_id );
444
+ echo '<script src="https://secure.mlstatic.com/modules/javascript/analytics.js"></script>
445
+ <script type="text/javascript">
446
+ var MA = ModuleAnalytics;
447
+ MA.setPublicKey( "' . $public_key . '" );
448
+ MA.setPaymentType("credit_card");
449
+ MA.setCheckoutType("custom");
450
+ MA.put();
451
+ </script>';
452
+ }
453
+ }
454
+
455
+ public function add_checkout_scripts_custom() {
456
+ if ( is_checkout() && $this->is_available() ) {
457
+ if ( ! get_query_var( 'order-received' ) ) {
458
+ wp_enqueue_style(
459
+ 'woocommerce-mercadopago-style',
460
+ plugins_url( 'assets/css/custom_checkout_mercadopago.css', plugin_dir_path( __FILE__ ) )
461
+ );
462
+ wp_enqueue_script(
463
+ 'mercado-pago-module-custom-js',
464
+ 'https://secure.mlstatic.com/sdk/javascript/v1/mercadopago.js'
465
+ );
466
+ }
467
+ }
468
+ }
469
+
470
+ public function payment_fields() {
471
+
472
+ wp_enqueue_script( 'wc-credit-card-form' );
473
+
474
+ $amount = $this->get_order_total();
475
+ $logged_user_email = ( wp_get_current_user()->ID != 0 ) ? wp_get_current_user()->user_email : null;
476
+ $customer = isset( $logged_user_email ) ? $this->mp->get_or_create_customer( $logged_user_email ) : null;
477
+ $discount_action_url = get_site_url() . '/index.php/woocommerce-mercadopago/?wc-api=WC_WooMercadoPago_CustomGateway';
478
+
479
+ $currency_ratio = 1;
480
+ $_mp_currency_conversion_v1 = get_option( '_mp_currency_conversion_v1', '' );
481
+ if ( ! empty( $_mp_currency_conversion_v1 ) ) {
482
+ $currency_ratio = WC_Woo_Mercado_Pago_Module::get_conversion_rate( $this->site_data['currency'] );
483
+ $currency_ratio = $currency_ratio > 0 ? $currency_ratio : 1;
484
+ }
485
+
486
+ $parameters = array(
487
+ 'amount' => $amount,
488
+ // ===
489
+ 'site_id' => get_option( '_site_id_v1' ),
490
+ 'public_key' => get_option( '_mp_public_key' ),
491
+ 'coupon_mode' => isset( $logged_user_email ) ? $this->coupon_mode : 'no',
492
+ 'discount_action_url' => $discount_action_url,
493
+ 'payer_email' => $logged_user_email,
494
+ // ===
495
+ 'images_path' => plugins_url( 'assets/images/', plugin_dir_path( __FILE__ ) ),
496
+ 'banner_path' => $this->site_data['checkout_banner_custom'],
497
+ 'customer_cards' => isset( $customer ) ? ( isset( $customer['cards'] ) ? $customer['cards'] : array() ) : array(),
498
+ 'customerId' => isset( $customer ) ? ( isset( $customer['id'] ) ? $customer['id'] : null ) : null,
499
+ 'currency_ratio' => $currency_ratio,
500
+ 'woocommerce_currency' => get_woocommerce_currency(),
501
+ 'account_currency' => $this->site_data['currency'],
502
+ // ===
503
+ 'path_to_javascript' => plugins_url( 'assets/js/credit-card.js', plugin_dir_path( __FILE__ ) )
504
+ );
505
+
506
+ wc_get_template(
507
+ 'credit-card/payment-form.php',
508
+ $parameters,
509
+ 'woo/mercado/pago/module/',
510
+ WC_Woo_Mercado_Pago_Module::get_templates_path()
511
+ );
512
+ }
513
+
514
+ /**
515
+ * Summary: Handle the payment and processing the order.
516
+ * Description: This function is called after we click on [place_order] button, and each field is
517
+ * passed to this function through $_POST variable.
518
+ * @return an array containing the result of the processment and the URL to redirect.
519
+ */
520
+ public function process_payment( $order_id ) {
521
+
522
+ if ( ! isset( $_POST['mercadopago_custom'] ) ) {
523
+ return;
524
+ }
525
+ $custom_checkout = $_POST['mercadopago_custom'];
526
+
527
+ $order = wc_get_order( $order_id );
528
+ if ( method_exists( $order, 'update_meta_data' ) ) {
529
+ $order->update_meta_data( '_used_gateway', 'WC_WooMercadoPago_CustomGateway' );
530
+ $order->save();
531
+ } else {
532
+ update_post_meta( $order_id, '_used_gateway', 'WC_WooMercadoPago_CustomGateway' );
533
+ }
534
+
535
+ // Mexico country case.
536
+ if ( ! isset( $custom_checkout['paymentMethodId'] ) || empty( $custom_checkout['paymentMethodId'] ) ) {
537
+ $custom_checkout['paymentMethodId'] = $custom_checkout['paymentMethodSelector'];
538
+ }
539
+
540
+ if ( isset( $custom_checkout['amount'] ) && ! empty( $custom_checkout['amount'] ) &&
541
+ isset( $custom_checkout['token'] ) && ! empty( $custom_checkout['token'] ) &&
542
+ isset( $custom_checkout['paymentMethodId'] ) && ! empty( $custom_checkout['paymentMethodId'] ) &&
543
+ isset( $custom_checkout['installments'] ) && ! empty( $custom_checkout['installments'] ) &&
544
+ $custom_checkout['installments'] != -1 ) {
545
+ $response = $this->create_url( $order, $custom_checkout );
546
+ if ( array_key_exists( 'status', $response ) ) {
547
+ switch ( $response['status'] ) {
548
+ case 'approved':
549
+ WC()->cart->empty_cart();
550
+ wc_add_notice(
551
+ '<p>' . $this->get_order_status( 'accredited' ) . '</p>',
552
+ 'notice'
553
+ );
554
+ $order->add_order_note(
555
+ 'Mercado Pago: ' . __( 'Payment approved.', 'woocommerce-mercadopago' )
556
+ );
557
+ return array(
558
+ 'result' => 'success',
559
+ 'redirect' => $order->get_checkout_order_received_url()
560
+ );
561
+ break;
562
+ case 'pending':
563
+ // Order approved/pending, we just redirect to the thankyou page.
564
+ return array(
565
+ 'result' => 'success',
566
+ 'redirect' => $order->get_checkout_order_received_url()
567
+ );
568
+ break;
569
+ case 'in_process':
570
+ // For pending, we don't know if the purchase will be made, so we must inform this status.
571
+ WC()->cart->empty_cart();
572
+ wc_add_notice(
573
+ '<p>' . $this->get_order_status( $response['status_detail'] ) . '</p>' .
574
+ '<p><a class="button" href="' . esc_url( $order->get_checkout_order_received_url() ) . '">' .
575
+ __( 'Check your order resume', 'woocommerce-mercadopago' ) .
576
+ '</a></p>',
577
+ 'notice'
578
+ );
579
+ return array(
580
+ 'result' => 'success',
581
+ 'redirect' => $order->get_checkout_payment_url( true )
582
+ );
583
+ break;
584
+ case 'rejected':
585
+ // If rejected is received, the order will not proceed until another payment try, so we must inform this status.
586
+ wc_add_notice(
587
+ '<p>' . __( 'Your payment was refused. You can try again.', 'woocommerce-mercadopago' ) . '<br>' .
588
+ $this->get_order_status( $response['status_detail'] ) .
589
+ '</p>' .
590
+ '<p><a class="button" href="' . esc_url( $order->get_checkout_payment_url() ) . '">' .
591
+ __( 'Click to try again', 'woocommerce-mercadopago' ) .
592
+ '</a></p>',
593
+ 'error'
594
+ );
595
+ return array(
596
+ 'result' => 'success',
597
+ 'redirect' => $order->get_checkout_payment_url( true )
598
+ );
599
+ break;
600
+ case 'cancelled':
601
+ case 'in_mediation':
602
+ case 'charged-back':
603
+ break;
604
+ default:
605
+ break;
606
+ }
607
+ } else {
608
+ // Process when fields are imcomplete.
609
+ wc_add_notice(
610
+ '<p>' .
611
+ __( 'A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?', 'woocommerce-mercadopago' ) . ' MERCADO PAGO: ' . $response .
612
+ '</p>',
613
+ 'error'
614
+ );
615
+ return array(
616
+ 'result' => 'fail',
617
+ 'redirect' => '',
618
+ );
619
+ }
620
+ } else {
621
+ // Process when fields are imcomplete.
622
+ wc_add_notice(
623
+ '<p>' .
624
+ __( 'A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?', 'woocommerce-mercadopago' ) .
625
+ '</p>',
626
+ 'error'
627
+ );
628
+ return array(
629
+ 'result' => 'fail',
630
+ 'redirect' => '',
631
+ );
632
+ }
633
+
634
+ }
635
+
636
+ /**
637
+ * Summary: Build Mercado Pago preference.
638
+ * Description: Create Mercado Pago preference and get init_point URL based in the order options
639
+ * from the cart.
640
+ * @return the preference object.
641
+ */
642
+ private function build_payment_preference( $order, $custom_checkout ) {
643
+
644
+ // A string to register items (workaround to deal with API problem that shows only first item).
645
+ $items = array();
646
+ $order_total = 0;
647
+ $list_of_items = array();
648
+
649
+ // Find currency rate.
650
+ $currency_ratio = 1;
651
+ $_mp_currency_conversion_v1 = get_option( '_mp_currency_conversion_v1', '' );
652
+ if ( ! empty( $_mp_currency_conversion_v1 ) ) {
653
+ $currency_ratio = WC_Woo_Mercado_Pago_Module::get_conversion_rate( $this->site_data['currency'] );
654
+ $currency_ratio = $currency_ratio > 0 ? $currency_ratio : 1;
655
+ }
656
+
657
+ // Here we build the array that contains ordered items, from customer cart.
658
+ if ( sizeof( $order->get_items() ) > 0 ) {
659
+ foreach ( $order->get_items() as $item ) {
660
+ if ( $item['qty'] ) {
661
+ $product = new WC_product( $item['product_id'] );
662
+ $product_title = method_exists( $product, 'get_description' ) ?
663
+ $product->get_name() :
664
+ $product->post->post_title;
665
+ $product_content = method_exists( $product, 'get_description' ) ?
666
+ $product->get_description() :
667
+ $product->post->post_content;
668
+ // Calculates line amount and discounts.
669
+ $line_amount = $item['line_total'] + $item['line_tax'];
670
+ $discount_by_gateway = (float) $line_amount * ( $this->gateway_discount / 100 );
671
+ $order_total += ($line_amount - $discount_by_gateway);
672
+ // Add the item.
673
+ array_push( $list_of_items, $product_title . ' x ' . $item['qty'] );
674
+ array_push( $items, array(
675
+ 'id' => $item['product_id'],
676
+ 'title' => html_entity_decode( $product_title ) . ' x ' . $item['qty'],
677
+ 'description' => sanitize_file_name( html_entity_decode(
678
+ strlen( $product_content ) > 230 ?
679
+ substr( $product_content, 0, 230 ) . '...' :
680
+ $product_content
681
+ ) ),
682
+ 'picture_url' => sizeof( $order->get_items() > 1 ) ?
683
+ plugins_url( 'assets/images/cart.png', plugin_dir_path( __FILE__ ) ) :
684
+ wp_get_attachment_url( $product->get_image_id()
685
+ ),
686
+ 'category_id' => get_option( '_mp_category_name', 'others' ),
687
+ 'quantity' => 1,
688
+ 'unit_price' => ( $this->site_data['currency'] == 'COP' || $this->site_data['currency'] == 'CLP' ) ?
689
+ floor( ( $line_amount - $discount_by_gateway ) * $currency_ratio ) :
690
+ floor( ( $line_amount - $discount_by_gateway ) * $currency_ratio * 100 ) / 100
691
+ ) );
692
+ }
693
+ }
694
+ }
695
+
696
+ // Creates the shipment cost structure.
697
+ $ship_cost = ($order->get_total_shipping() + $order->get_shipping_tax());
698
+ if ( $ship_cost > 0 ) {
699
+ $order_total += $ship_cost;
700
+ $item = array(
701
+ 'title' => method_exists( $order, 'get_id' ) ?
702
+ $order->get_shipping_method() :
703
+ $order->shipping_method,
704
+ 'description' => __( 'Shipping service used by store', 'woocommerce-mercadopago' ),
705
+ 'category_id' => get_option( '_mp_category_name', 'others' ),
706
+ 'quantity' => 1,
707
+ 'unit_price' => ( $this->site_data['currency'] == 'COP' || $this->site_data['currency'] == 'CLP' ) ?
708
+ floor( $ship_cost * $currency_ratio ) :
709
+ floor( $ship_cost * $currency_ratio * 100 ) / 100
710
+ );
711
+ $items[] = $item;
712
+ }
713
+
714
+ // Discounts features.
715
+ if ( isset( $custom_checkout['discount'] ) && ! empty( $custom_checkout['discount'] ) &&
716
+ isset( $custom_checkout['coupon_code'] ) && ! empty( $custom_checkout['coupon_code'] ) &&
717
+ $custom_checkout['discount'] > 0 && WC()->session->chosen_payment_method == 'woo-mercado-pago-custom' ) {
718
+ $item = array(
719
+ 'title' => __( 'Discount provided by store', 'woocommerce-mercadopago' ),
720
+ 'description' => __( 'Discount provided by store', 'woocommerce-mercadopago' ),
721
+ 'quantity' => 1,
722
+ 'category_id' => get_option( '_mp_category_name', 'others' ),
723
+ 'unit_price' => ( $this->site_data['currency'] == 'COP' || $this->site_data['currency'] == 'CLP' ) ?
724
+ -floor( $custom_checkout['discount'] * $currency_ratio ) :
725
+ -floor( $custom_checkout['discount'] * $currency_ratio * 100 ) / 100
726
+ );
727
+ $items[] = $item;
728
+ }
729
+
730
+ // Build additional information from the customer data.
731
+ $payer_additional_info = array(
732
+ 'first_name' => ( method_exists( $order, 'get_id' ) ?
733
+ html_entity_decode( $order->get_billing_first_name() ) :
734
+ html_entity_decode( $order->billing_first_name ) ),
735
+ 'last_name' => ( method_exists( $order, 'get_id' ) ?
736
+ html_entity_decode( $order->get_billing_last_name() ) :
737
+ html_entity_decode( $order->billing_last_name ) ),
738
+ //'registration_date' =>
739
+ 'phone' => array(
740
+ //'area_code' =>
741
+ 'number' => ( method_exists( $order, 'get_id' ) ?
742
+ $order->get_billing_phone() :
743
+ $order->billing_phone )
744
+ ),
745
+ 'address' => array(
746
+ 'zip_code' => ( method_exists( $order, 'get_id' ) ?
747
+ $order->get_billing_postcode() :
748
+ $order->billing_postcode
749
+ ),
750
+ //'street_number' =>
751
+ 'street_name' => html_entity_decode( method_exists( $order, 'get_id' ) ?
752
+ $order->get_billing_address_1() . ' / ' .
753
+ $order->get_billing_city() . ' ' .
754
+ $order->get_billing_state() . ' ' .
755
+ $order->get_billing_country() :
756
+ $order->billing_address_1 . ' / ' .
757
+ $order->billing_city . ' ' .
758
+ $order->billing_state . ' ' .
759
+ $order->billing_country
760
+ )
761
+ )
762
+ );
763
+
764
+ // Create the shipment address information set.
765
+ $shipments = array(
766
+ 'receiver_address' => array(
767
+ 'zip_code' => method_exists( $order, 'get_id' ) ?
768
+ $order->get_shipping_postcode() :
769
+ $order->shipping_postcode,
770
+ //'street_number' =>
771
+ 'street_name' => html_entity_decode( method_exists( $order, 'get_id' ) ?
772
+ $order->get_shipping_address_1() . ' ' .
773
+ $order->get_shipping_address_2() . ' ' .
774
+ $order->get_shipping_city() . ' ' .
775
+ $order->get_shipping_state() . ' ' .
776
+ $order->get_shipping_country() :
777
+ $order->shipping_address_1 . ' ' .
778
+ $order->shipping_address_2 . ' ' .
779
+ $order->shipping_city . ' ' .
780
+ $order->shipping_state . ' ' .
781
+ $order->shipping_country
782
+ ),
783
+ //'floor' =>
784
+ 'apartment' => method_exists( $order, 'get_id' ) ?
785
+ $order->get_shipping_address_2() :
786
+ $order->shipping_address_2
787
+ )
788
+ );
789
+
790
+ // The payment preference.
791
+ $preferences = array(
792
+ 'transaction_amount' => ( $this->site_data['currency'] == 'COP' || $this->site_data['currency'] == 'CLP' ) ?
793
+ floor( $order_total * $currency_ratio ) :
794
+ floor( $order_total * $currency_ratio * 100 ) / 100,
795
+ 'token' => $custom_checkout['token'],
796
+ 'description' => implode( ', ', $list_of_items ),
797
+ 'installments' => (int) $custom_checkout['installments'],
798
+ 'payment_method_id' => $custom_checkout['paymentMethodId'],
799
+ 'payer' => array(
800
+ 'email' => method_exists( $order, 'get_id' ) ?
801
+ $order->get_billing_email() :
802
+ $order->billing_email
803
+ ),
804
+ 'external_reference' => get_option( '_mp_store_identificator', 'WC-' ) .
805
+ ( method_exists( $order, 'get_id' ) ? $order->get_id() : $order->id ),
806
+ 'statement_descriptor' => get_option( '_mp_statement_descriptor', 'Mercado Pago' ),
807
+ 'binary_mode' => ( $this->binary_mode == 'yes' ),
808
+ 'additional_info' => array(
809
+ 'items' => $items,
810
+ 'payer' => $payer_additional_info,
811
+ 'shipments' => $shipments
812
+ )
813
+ );
814
+
815
+ // Customer's Card Feature, add only if it has issuer id.
816
+ if ( array_key_exists( 'token', $custom_checkout ) ) {
817
+ $preferences['metadata']['token'] = $custom_checkout['token'];
818
+ if ( array_key_exists( 'issuer', $custom_checkout ) ) {
819
+ if ( ! empty( $custom_checkout['issuer'] ) ) {
820
+ $preferences['issuer_id'] = (integer) $custom_checkout['issuer'];
821
+ }
822
+ }
823
+ if ( ! empty( $custom_checkout['CustomerId'] ) ) {
824
+ $preferences['payer']['id'] = $custom_checkout['CustomerId'];
825
+ }
826
+ }
827
+
828
+ // Do not set IPN url if it is a localhost.
829
+ if ( ! strrpos( get_site_url(), 'localhost' ) ) {
830
+ $preferences['notification_url'] = WC()->api_request_url( 'WC_WooMercadoPago_CustomGateway' );
831
+ }
832
+
833
+ // Discounts features.
834
+ if ( isset( $custom_checkout['discount'] ) && ! empty( $custom_checkout['discount'] ) &&
835
+ isset( $custom_checkout['coupon_code'] ) && ! empty( $custom_checkout['coupon_code'] ) &&
836
+ $custom_checkout['discount'] > 0 && WC()->session->chosen_payment_method == 'woo-mercado-pago-custom' ) {
837
+ $preferences['campaign_id'] = (int) $custom_checkout['campaign_id'];
838
+ $preferences['coupon_amount'] = ( $this->site_data['currency'] == 'COP' || $this->site_data['currency'] == 'CLP' ) ?
839
+ floor( $custom_checkout['discount'] * $currency_ratio ) :
840
+ floor( $custom_checkout['discount'] * $currency_ratio * 100 ) / 100;
841
+ $preferences['coupon_code'] = strtoupper( $custom_checkout['coupon_code'] );
842
+ }
843
+
844
+ // Set sponsor ID.
845
+ $_test_user_v1 = get_option( '_test_user_v1', false );
846
+ if ( ! $_test_user_v1 ) {
847
+ $preferences['sponsor_id'] = $this->site_data['sponsor_id'];
848
+ }
849
+
850
+ // Debug/log this preference.
851
+ $this->write_log(
852
+ __FUNCTION__,
853
+ 'returning just created [$preferences] structure: ' .
854
+ json_encode( $preferences, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
855
+ );
856
+
857
+ return $preferences;
858
+ }
859
+
860
+ protected function create_url( $order, $custom_checkout ) {
861
+ // Creates the order parameters by checking the cart configuration.
862
+ $preferences = $this->build_payment_preference( $order, $custom_checkout );
863
+ // Checks for sandbox mode.
864
+ $this->mp->sandbox_mode( $this->sandbox );
865
+ // Create order preferences with Mercado Pago API request.
866
+ try {
867
+ $checkout_info = $this->mp->post( '/v1/payments', json_encode( $preferences) );
868
+ if ( $checkout_info['status'] < 200 || $checkout_info['status'] >= 300 ) {
869
+ // Mercado Pago throwed an error.
870
+ $this->write_log(
871
+ __FUNCTION__,
872
+ 'mercado pago gave error, payment creation failed with error: ' . $checkout_info['response']['message']
873
+ );
874
+ return $checkout_info['response']['message'];
875
+ } elseif ( is_wp_error( $checkout_info ) ) {
876
+ // WordPress throwed an error.
877
+ $this->write_log(
878
+ __FUNCTION__,
879
+ 'wordpress gave error, payment creation failed with error: ' . $checkout_info['response']['message']
880
+ );
881
+ return $checkout_info['response']['message'];
882
+ } else {
883
+ // Obtain the URL.
884
+ $this->write_log(
885
+ __FUNCTION__,
886
+ 'payment link generated with success from mercado pago, with structure as follow: ' .
887
+ json_encode( $checkout_info, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
888
+ );
889
+ // TODO: Verify sandbox availability.
890
+ //if ( 'yes' == $this->sandbox ) {
891
+ // return $checkout_info['response']['sandbox_init_point'];
892
+ //} else {
893
+ return $checkout_info['response'];
894
+ //}
895
+ }
896
+ } catch ( MercadoPagoException $ex ) {
897
+ // Something went wrong with the payment creation.
898
+ $this->write_log(
899
+ __FUNCTION__,
900
+ 'payment creation failed with exception: ' .
901
+ json_encode( $ex, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
902
+ );
903
+ return $ex->getMessage();
904
+ }
905
+ }
906
+
907
+ /**
908
+ * Summary: Check if we have existing customer card, if not we create and save it.
909
+ * Description: Check if we have existing customer card, if not we create and save it.
910
+ * @return boolean true/false depending on the validation result.
911
+ */
912
+ public function check_and_save_customer_card( $checkout_info ) {
913
+
914
+ $this->write_log(
915
+ __FUNCTION__,
916
+ 'checking info to create card: ' .
917
+ json_encode( $checkout_info, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
918
+ );
919
+
920
+ $custId = null;
921
+ $token = null;
922
+ $issuer_id = null;
923
+ $payment_method_id = null;
924
+
925
+ if ( isset( $checkout_info['payer']['id'] ) && ! empty( $checkout_info['payer']['id'] ) ) {
926
+ $custId = $checkout_info['payer']['id'];
927
+ } else {
928
+ return;
929
+ }
930
+
931
+ if ( isset( $checkout_info['metadata']['token'] ) && ! empty( $checkout_info['metadata']['token'] ) ) {
932
+ $token = $checkout_info['metadata']['token'];
933
+ } else {
934
+ return;
935
+ }
936
+
937
+ if ( isset( $checkout_info['issuer_id'] ) && ! empty( $checkout_info['issuer_id'] ) ) {
938
+ $issuer_id = (integer) ( $checkout_info['issuer_id'] );
939
+ }
940
+ if ( isset( $checkout_info['payment_method_id'] ) && ! empty( $checkout_info['payment_method_id'] ) ) {
941
+ $payment_method_id = $checkout_info['payment_method_id'];
942
+ }
943
+
944
+ try {
945
+ $this->mp->create_card_in_customer( $custId, $token, $payment_method_id, $issuer_id );
946
+ } catch ( MercadoPagoException $ex ) {
947
+ $this->write_log(
948
+ __FUNCTION__,
949
+ 'card creation failed: ' .
950
+ json_encode( $ex, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
951
+ );
952
+ }
953
+
954
+ }
955
+
956
+ /**
957
+ * Summary: Receive post data and applies a discount based in the received values.
958
+ * Description: Receive post data and applies a discount based in the received values.
959
+ */
960
+ public function add_discount_custom() {
961
+
962
+ if ( ! isset( $_POST['mercadopago_custom'] ) ) {
963
+ return;
964
+ }
965
+
966
+ if ( is_admin() && ! defined( 'DOING_AJAX' ) || is_cart() ) {
967
+ return;
968
+ }
969
+
970
+ $custom_checkout = $_POST['mercadopago_custom'];
971
+ if ( isset( $custom_checkout['discount'] ) && ! empty( $custom_checkout['discount'] ) &&
972
+ isset( $custom_checkout['coupon_code'] ) && ! empty( $custom_checkout['coupon_code'] ) &&
973
+ $custom_checkout['discount'] > 0 && WC()->session->chosen_payment_method == 'woo-mercado-pago-custom' ) {
974
+
975
+ $this->write_log( __FUNCTION__, 'custom checkout trying to apply discount...' );
976
+
977
+ $value = ( $this->site_data['currency'] == 'COP' || $this->site_data['currency'] == 'CLP' ) ?
978
+ floor( $custom_checkout['discount'] / $custom_checkout['currency_ratio'] ) :
979
+ floor( $custom_checkout['discount'] / $custom_checkout['currency_ratio'] * 100 ) / 100;
980
+ global $woocommerce;
981
+ if ( apply_filters(
982
+ 'wc_mercadopago_custommodule_apply_discount',
983
+ 0 < $value, $woocommerce->cart )
984
+ ) {
985
+ $woocommerce->cart->add_fee( sprintf(
986
+ __( 'Discount for %s coupon', 'woocommerce-mercadopago' ),
987
+ esc_attr( $custom_checkout['campaign']
988
+ ) ), ( $value * -1 ), false
989
+ );
990
+ }
991
+ }
992
+
993
+ }
994
+
995
+ // Display the discount in payment method title.
996
+ public function get_payment_method_title_custom( $title, $id ) {
997
+
998
+ if ( ! is_checkout() && ! ( defined( 'DOING_AJAX' ) && DOING_AJAX ) ) {
999
+ return $title;
1000
+ }
1001
+
1002
+ if ( $title != $this->title || $this->gateway_discount == 0 ) {
1003
+ return $title;
1004
+ }
1005
+
1006
+ $total = (float) WC()->cart->subtotal;
1007
+ if ( is_numeric( $this->gateway_discount ) ) {
1008
+ if ( $this->gateway_discount >= 0 && $this->gateway_discount < 100 ) {
1009
+ $price_percent = $this->gateway_discount / 100;
1010
+ if ( $price_percent > 0 ) {
1011
+ $title .= ' (' . __( 'Discount of', 'woocommerce-mercadopago' ) . ' ' .
1012
+ strip_tags( wc_price( $total * $price_percent ) ) . ')';
1013
+ }
1014
+ }
1015
+ }
1016
+
1017
+ return $title;
1018
+ }
1019
+
1020
+ /*
1021
+ * ========================================================================
1022
+ * AUXILIARY AND FEEDBACK METHODS (SERVER SIDE)
1023
+ * ========================================================================
1024
+ */
1025
+
1026
+ // Called automatically by WooCommerce, verify if Module is available to use.
1027
+ public function is_available() {
1028
+ if ( ! did_action( 'wp_loaded' ) ) {
1029
+ return false;
1030
+ }
1031
+ global $woocommerce;
1032
+ $w_cart = $woocommerce->cart;
1033
+ // If we do not have SSL in production environment, we are not allowed to process.
1034
+ $_mp_debug_mode = get_option( '_mp_debug_mode', '' );
1035
+ if ( empty( $_SERVER['HTTPS'] ) || $_SERVER['HTTPS'] == 'off' ) {
1036
+ if ( empty ( $_mp_debug_mode ) ) {
1037
+ return false;
1038
+ }
1039
+ }
1040
+ // Check for recurrent product checkout.
1041
+ if ( isset( $w_cart ) ) {
1042
+ if ( WC_Woo_Mercado_Pago_Module::is_subscription( $w_cart->get_cart() ) ) {
1043
+ return false;
1044
+ }
1045
+ }
1046
+ // Check if this gateway is enabled and well configured.
1047
+ $_mp_public_key = get_option( '_mp_public_key' );
1048
+ $_mp_access_token = get_option( '_mp_access_token' );
1049
+ $_site_id_v1 = get_option( '_site_id_v1' );
1050
+ $available = ( 'yes' == $this->settings['enabled'] ) &&
1051
+ ! empty( $_mp_public_key ) &&
1052
+ ! empty( $_mp_access_token ) &&
1053
+ ! empty( $_site_id_v1 );
1054
+ return $available;
1055
+ }
1056
+
1057
+ public function get_order_status( $status_detail ) {
1058
+ switch ( $status_detail ) {
1059
+ case 'accredited':
1060
+ return __( 'Done, your payment was accredited!', 'woocommerce-mercadopago' );
1061
+ case 'pending_contingency':
1062
+ return __( 'We are processing the payment. In less than an hour we will e-mail you the results.', 'woocommerce-mercadopago' );
1063
+ case 'pending_review_manual':
1064
+ return __( 'We are processing the payment. In less than 2 business days we will tell you by e-mail whether it has accredited or we need more information.', 'woocommerce-mercadopago' );
1065
+ case 'cc_rejected_bad_filled_card_number':
1066
+ return __( 'Check the card number.', 'woocommerce-mercadopago' );
1067
+ case 'cc_rejected_bad_filled_date':
1068
+ return __( 'Check the expiration date.', 'woocommerce-mercadopago' );
1069
+ case 'cc_rejected_bad_filled_other':
1070
+ return __( 'Check the information.', 'woocommerce-mercadopago' );
1071
+ case 'cc_rejected_bad_filled_security_code':
1072
+ return __( 'Check the security code.', 'woocommerce-mercadopago' );
1073
+ case 'cc_rejected_blacklist':
1074
+ return __( 'We could not process your payment.', 'woocommerce-mercadopago' );
1075
+ case 'cc_rejected_call_for_authorize':
1076
+ return __( 'You must authorize the payment of your orders.', 'woocommerce-mercadopago' );
1077
+ case 'cc_rejected_card_disabled':
1078
+ return __( 'Call your card issuer to activate your card. The phone is on the back of your card.', 'woocommerce-mercadopago' );
1079
+ case 'cc_rejected_card_error':
1080
+ return __( 'We could not process your payment.', 'woocommerce-mercadopago' );
1081
+ case 'cc_rejected_duplicated_payment':
1082
+ return __( 'You already made a payment for that amount. If you need to repay, use another card or other payment method.', 'woocommerce-mercadopago' );
1083
+ case 'cc_rejected_high_risk':
1084
+ return __( 'Your payment was rejected. Choose another payment method. We recommend cash.', 'woocommerce-mercadopago' );
1085
+ case 'cc_rejected_insufficient_amount':
1086
+ return __( 'Your payment do not have sufficient funds.', 'woocommerce-mercadopago' );
1087
+ case 'cc_rejected_invalid_installments':
1088
+ return __( 'Your payment does not process payments with selected installments.', 'woocommerce-mercadopago' );
1089
+ case 'cc_rejected_max_attempts':
1090
+ return __( 'You have reached the limit of allowed attempts. Choose another card or another payment method.', 'woocommerce-mercadopago' );
1091
+ case 'cc_rejected_other_reason':
1092
+ return __( 'This payment method did not process the payment.', 'woocommerce-mercadopago' );
1093
+ default:
1094
+ return __( 'This payment method did not process the payment.', 'woocommerce-mercadopago' );
1095
+ }
1096
+ }
1097
+
1098
+ /*
1099
+ * ========================================================================
1100
+ * IPN MECHANICS (SERVER SIDE)
1101
+ * ========================================================================
1102
+ */
1103
+
1104
+ /**
1105
+ * Summary: This call checks any incoming notifications from Mercado Pago server.
1106
+ * Description: This call checks any incoming notifications from Mercado Pago server.
1107
+ */
1108
+ public function check_ipn_response() {
1109
+ @ob_clean();
1110
+ $this->write_log(
1111
+ __FUNCTION__,
1112
+ 'received _get content: ' .
1113
+ json_encode( $_GET, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
1114
+ );
1115
+ // Setup sandbox mode.
1116
+ $this->mp->sandbox_mode( $this->sandbox );
1117
+ // Over here, $_GET should come with this JSON structure:
1118
+ // {
1119
+ // "topic": <string>,
1120
+ // "id": <string>
1121
+ // }
1122
+ // If not, the IPN is corrupted in some way.
1123
+ $data = $_GET;
1124
+ if ( isset( $data['coupon_id'] ) && ! empty( $data['coupon_id'] ) ) {
1125
+ // Process coupon evaluations.
1126
+ if ( isset( $data['payer'] ) && ! empty( $data['payer'] ) ) {
1127
+ $response = $this->mp->check_discount_campaigns( $data['amount'], $data['payer'], $data['coupon_id'] );
1128
+ header( 'HTTP/1.1 200 OK' );
1129
+ header( 'Content-Type: application/json' );
1130
+ echo json_encode( $response );
1131
+ } else {
1132
+ $obj = new stdClass();
1133
+ $obj->status = 404;
1134
+ $obj->response = array(
1135
+ 'message' => __( 'Please, inform your email in billing address to use this feature', 'woocommerce-mercadopago' ),
1136
+ 'error' => 'payer_not_found',
1137
+ 'status' => 404,
1138
+ 'cause' => array()
1139
+ );
1140
+ header( 'HTTP/1.1 200 OK' );
1141
+ header( 'Content-Type: application/json' );
1142
+ echo json_encode( $obj );
1143
+ }
1144
+ exit( 0 );
1145
+ } else if ( ! isset( $data['data_id'] ) || ! isset( $data['type'] ) ) {
1146
+ // Received IPN call from v0.
1147
+ $this->write_log(
1148
+ __FUNCTION__,
1149
+ 'data_id or type not set: ' .
1150
+ json_encode( $data, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
1151
+ );
1152
+ if ( ! isset( $data['id'] ) || ! isset( $data['topic'] ) ) {
1153
+ $this->write_log(
1154
+ __FUNCTION__,
1155
+ 'Mercado Pago Request failure: ' .
1156
+ json_encode( $data, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
1157
+ );
1158
+ wp_die( __( 'Mercado Pago Request Failure', 'woocommerce-mercadopago' ) );
1159
+ } else {
1160
+ // At least, check if its a v0 ipn.
1161
+ header( 'HTTP/1.1 200 OK' );
1162
+ }
1163
+ } else {
1164
+ // Needed informations are present, so start process then.
1165
+ try {
1166
+ if ( $data['type'] == 'payment' ) {
1167
+ $access_token = array( 'access_token' => $this->mp->get_access_token() );
1168
+ $payment_info = $this->mp->get( '/v1/payments/' . $data['data_id'], $access_token, false );
1169
+ if ( ! is_wp_error( $payment_info ) && ( $payment_info['status'] == 200 || $payment_info['status'] == 201 ) ) {
1170
+ if ( $payment_info['response'] ) {
1171
+ header( 'HTTP/1.1 200 OK' );
1172
+ do_action( 'valid_mercadopago_custom_ipn_request', $payment_info['response'] );
1173
+ }
1174
+ } else {
1175
+ $this->write_log(
1176
+ __FUNCTION__,
1177
+ 'error when processing received data: ' .
1178
+ json_encode( $payment_info, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
1179
+ );
1180
+ }
1181
+ }
1182
+ } catch ( MercadoPagoException $ex ) {
1183
+ $this->write_log(
1184
+ __FUNCTION__,
1185
+ 'MercadoPagoException: ' .
1186
+ json_encode( $ex, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
1187
+ );
1188
+ }
1189
+ }
1190
+ }
1191
+
1192
+ /**
1193
+ * Summary: Properly handles each case of notification, based in payment status.
1194
+ * Description: Properly handles each case of notification, based in payment status.
1195
+ */
1196
+ public function successful_request( $data ) {
1197
+ $this->write_log( __FUNCTION__, 'starting to process ipn update...' );
1198
+ // Get the order and check its presence.
1199
+ $order_key = $data['external_reference'];
1200
+ if ( empty( $order_key ) ) {
1201
+ return;
1202
+ }
1203
+ $invoice_prefix = get_option( '_mp_store_identificator', 'WC-' );
1204
+ $id = (int) str_replace( $invoice_prefix, '', $order_key );
1205
+ $order = wc_get_order( $id );
1206
+ // Check if order exists.
1207
+ if ( ! $order ) {
1208
+ return;
1209
+ }
1210
+ // WooCommerce 3.0 or later.
1211
+ $order_id = ( method_exists( $order, 'get_id' ) ? $order->get_id() : $order->id );
1212
+ // Check if we have the correct order.
1213
+ if ( $order_id !== $id ) {
1214
+ return;
1215
+ }
1216
+ $this->write_log(
1217
+ __FUNCTION__,
1218
+ 'updating metadata and status with data: ' .
1219
+ json_encode( $data, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
1220
+ );
1221
+ // Here, we process the status... this is the business rules!
1222
+ // Reference: https://www.mercadopago.com.br/developers/en/api-docs/basic-checkout/ipn/payment-status/
1223
+ $status = isset( $data['status'] ) ? $data['status'] : 'pending';
1224
+ $total_paid = isset( $data['transaction_details']['total_paid_amount'] ) ? $data['transaction_details']['total_paid_amount'] : 0.00;
1225
+ $total_refund = isset( $data['transaction_amount_refunded'] ) ? $data['transaction_amount_refunded'] : 0.00;
1226
+ // WooCommerce 3.0 or later.
1227
+ if ( method_exists( $order, 'update_meta_data' ) ) {
1228
+ // Updates the type of gateway.
1229
+ $order->update_meta_data( '_used_gateway', 'WC_WooMercadoPago_CustomGateway' );
1230
+ if ( ! empty( $data['payer']['email'] ) ) {
1231
+ $order->update_meta_data( __( 'Payer email', 'woocommerce-mercadopago' ), $data['payer']['email'] );
1232
+ }
1233
+ if ( ! empty( $data['payment_type_id'] ) ) {
1234
+ $order->update_meta_data( __( 'Payment type', 'woocommerce-mercadopago' ), $data['payment_type_id'] );
1235
+ }
1236
+ $order->update_meta_data(
1237
+ 'Mercado Pago - Payment ' . $data['id'],
1238
+ '[Date ' . date( 'Y-m-d H:i:s', strtotime( $data['date_created'] ) ) .
1239
+ ']/[Amount ' . $data['transaction_amount'] .
1240
+ ']/[Paid ' . $total_paid .
1241
+ ']/[Refund ' . $total_refund . ']'
1242
+ );
1243
+ $order->update_meta_data( '_Mercado_Pago_Payment_IDs', $data['id'] );
1244
+ $order->save();
1245
+ } else {
1246
+ // Updates the type of gateway.
1247
+ update_post_meta( $order_id, '_used_gateway', 'WC_WooMercadoPago_CustomGateway' );
1248
+ if ( ! empty( $data['payer']['email'] ) ) {
1249
+ update_post_meta( $order_id, __( 'Payer email', 'woocommerce-mercadopago' ), $data['payer']['email'] );
1250
+ }
1251
+ if ( ! empty( $data['payment_type_id'] ) ) {
1252
+ update_post_meta( $order_id, __( 'Payment type', 'woocommerce-mercadopago' ), $data['payment_type_id'] );
1253
+ }
1254
+ update_post_meta(
1255
+ $order_id,
1256
+ 'Mercado Pago - Payment ' . $data['id'],
1257
+ '[Date ' . date( 'Y-m-d H:i:s', strtotime( $data['date_created'] ) ) .
1258
+ ']/[Amount ' . $data['transaction_amount'] .
1259
+ ']/[Paid ' . $total_paid .
1260
+ ']/[Refund ' . $total_refund . ']'
1261
+ );
1262
+ update_post_meta( $order_id, '_Mercado_Pago_Payment_IDs', $data['id'] );
1263
+ }
1264
+ // Switch the status and update in WooCommerce.
1265
+ $this->write_log(
1266
+ __FUNCTION__,
1267
+ 'Changing order status to: ' .
1268
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( str_replace( '_', '', $status ) )
1269
+ );
1270
+ switch ( $status ) {
1271
+ case 'approved':
1272
+ $order->add_order_note(
1273
+ 'Mercado Pago: ' . __( 'Payment approved.', 'woocommerce-mercadopago' )
1274
+ );
1275
+ $this->check_and_save_customer_card( $data );
1276
+ $order->payment_complete();
1277
+ $order->update_status(
1278
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'approved' )
1279
+ );
1280
+ break;
1281
+ case 'pending':
1282
+ $order->update_status(
1283
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'pending' )
1284
+ );
1285
+ $order->add_order_note(
1286
+ 'Mercado Pago: ' . __( 'Customer haven\'t paid yet.', 'woocommerce-mercadopago' )
1287
+ );
1288
+ break;
1289
+ case 'in_process':
1290
+ $order->update_status(
1291
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'on-hold' ),
1292
+ 'Mercado Pago: ' . __( 'Payment under review.', 'woocommerce-mercadopago' )
1293
+ );
1294
+ break;
1295
+ case 'rejected':
1296
+ $order->update_status(
1297
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'failed' ),
1298
+ 'Mercado Pago: ' . __( 'The payment was refused. The customer can try again.', 'woocommerce-mercadopago' )
1299
+ );
1300
+ break;
1301
+ case 'refunded':
1302
+ $order->update_status(
1303
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'refunded' ),
1304
+ 'Mercado Pago: ' . __( 'The payment was refunded to the customer.', 'woocommerce-mercadopago' )
1305
+ );
1306
+ break;
1307
+ case 'cancelled':
1308
+ $this->process_cancel_order_meta_box_actions( $order );
1309
+ $order->update_status(
1310
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'cancelled' ),
1311
+ 'Mercado Pago: ' . __( 'The payment was cancelled.', 'woocommerce-mercadopago' )
1312
+ );
1313
+ break;
1314
+ case 'in_mediation':
1315
+ $order->update_status(
1316
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'inmediation' )
1317
+ );
1318
+ $order->add_order_note(
1319
+ 'Mercado Pago: ' . __( 'The payment is under mediation or it was charged-back.', 'woocommerce-mercadopago' )
1320
+ );
1321
+ break;
1322
+ case 'charged-back':
1323
+ $order->update_status(
1324
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'chargedback' )
1325
+ );
1326
+ $order->add_order_note(
1327
+ 'Mercado Pago: ' . __( 'The payment is under mediation or it was charged-back.', 'woocommerce-mercadopago' )
1328
+ );
1329
+ break;
1330
+ default:
1331
+ break;
1332
+ }
1333
+ }
1334
+
1335
+ }
1336
+
1337
+ new WC_WooMercadoPago_CustomGateway( true );
includes/WC_WooMercadoPago_SubscriptionGateway.php ADDED
@@ -0,0 +1,1133 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Part of Woo Mercado Pago Module
5
+ * Author - Mercado Pago
6
+ * Developer - Marcelo Tomio Hama / marcelo.hama@mercadolivre.com
7
+ * Copyright - Copyright(c) MercadoPago [https://www.mercadopago.com]
8
+ * License - https://www.gnu.org/licenses/gpl.html GPL version 2 or higher
9
+ */
10
+
11
+ // This include Mercado Pago library SDK
12
+ require_once dirname( __FILE__ ) . '/sdk/lib/mercadopago.php';
13
+
14
+ /**
15
+ * Summary: Extending from WooCommerce Payment Gateway class.
16
+ * Description: This class implements Mercado Pago Subscription checkout.
17
+ * @since 3.0.0
18
+ */
19
+ class WC_WooMercadoPago_SubscriptionGateway extends WC_Payment_Gateway {
20
+
21
+ public function __construct() {
22
+
23
+ // Mercao Pago instance.
24
+ $this->site_data = WC_Woo_Mercado_Pago_Module::get_site_data( false );
25
+ $this->mp = new MP(
26
+ WC_Woo_Mercado_Pago_Module::get_module_version(),
27
+ get_option( '_mp_client_id' ),
28
+ get_option( '_mp_client_secret' )
29
+ );
30
+ $email = ( wp_get_current_user()->ID != 0 ) ? wp_get_current_user()->user_email : null;
31
+ $this->mp->set_email( $email );
32
+
33
+ // WooCommerce fields.
34
+ $this->id = 'woo-mercado-pago-subscription';
35
+ //$this->supports = array( 'products', 'refunds' );
36
+ $this->icon = apply_filters(
37
+ 'woocommerce_mercadopago_icon',
38
+ plugins_url( 'assets/images/mercadopago.png', plugin_dir_path( __FILE__ ) )
39
+ );
40
+
41
+ $this->method_title = __( 'Mercado Pago - Subscription', 'woocommerce-mercadopago' );
42
+ $this->method_description = '<img width="200" height="52" src="' .
43
+ plugins_url( 'assets/images/mplogo.png', plugin_dir_path( __FILE__ ) ) .
44
+ '"><br><br><strong>' .
45
+ __( 'This service allows you to subscribe customers to subscription plans.', 'woocommerce-mercadopago' ) .
46
+ '</strong>';
47
+
48
+ // TODO: Verify sandbox availability.
49
+ $this->mp->sandbox_mode( false );
50
+
51
+ // How checkout is shown.
52
+ $this->title = $this->get_option( 'title' );
53
+ $this->description = $this->get_option( 'description' );
54
+ $this->method = $this->get_option( 'method', 'iframe' );
55
+ $this->iframe_width = $this->get_option( 'iframe_width', '640' );
56
+ $this->iframe_height = $this->get_option( 'iframe_height', '800' );
57
+ // How checkout redirections will behave.
58
+ $this->success_url = $this->get_option( 'success_url', '' );
59
+ $this->failure_url = $this->get_option( 'failure_url', '' );
60
+ $this->pending_url = $this->get_option( 'pending_url', '' );
61
+ // How checkout payment behaves.
62
+ $this->gateway_discount = $this->get_option( 'gateway_discount', 0 );
63
+
64
+ // Logging and debug.
65
+ $_mp_debug_mode = get_option( '_mp_debug_mode', '' );
66
+ if ( ! empty ( $_mp_debug_mode ) ) {
67
+ if ( class_exists( 'WC_Logger' ) ) {
68
+ $this->log = new WC_Logger();
69
+ } else {
70
+ $this->log = WC_Woo_Mercado_Pago_Module::woocommerce_instance()->logger();
71
+ }
72
+ }
73
+
74
+ // Render our configuration page and init/load fields.
75
+ $this->init_form_fields();
76
+ $this->init_settings();
77
+
78
+ // Used by IPN to receive IPN incomings.
79
+ add_action(
80
+ 'woocommerce_api_wc_woomercadopago_subscriptiongateway',
81
+ array( $this, 'check_ipn_response' )
82
+ );
83
+ // Used by IPN to process valid incomings.
84
+ add_action(
85
+ 'valid_mercadopago_subscription_ipn_request',
86
+ array( $this, 'successful_request' )
87
+ );
88
+ // Process the cancel order meta box order action.
89
+ add_action(
90
+ 'woocommerce_order_action_cancel_order',
91
+ array( $this, 'process_cancel_order_meta_box_actions' )
92
+ );
93
+ // Used by WordPress to render the custom checkout page.
94
+ add_action(
95
+ 'woocommerce_receipt_' . $this->id,
96
+ function( $order ) {
97
+ echo $this->render_order_form( $order );
98
+ }
99
+ );
100
+ // Used to fix CSS in some older WordPress/WooCommerce versions.
101
+ add_action(
102
+ 'wp_head',
103
+ function() {
104
+ if ( defined( 'WC_VERSION' ) && version_compare( WC_VERSION, '2.1', '>=' ) ) {
105
+ $page_id = wc_get_page_id( 'checkout' );
106
+ } else {
107
+ $page_id = woocommerce_get_page_id( 'checkout' );
108
+ }
109
+ if ( is_page( $page_id ) ) {
110
+ echo '<style type="text/css">#MP-Checkout-dialog { z-index: 9999 !important; }</style>' . PHP_EOL;
111
+ }
112
+ }
113
+ );
114
+ // Used in settings page to hook "save settings" action.
115
+ add_action(
116
+ 'woocommerce_update_options_payment_gateways_' . $this->id,
117
+ array( $this, 'custom_process_admin_options' )
118
+ );
119
+ // Scripts for order configuration.
120
+ add_action(
121
+ 'woocommerce_after_checkout_form',
122
+ array( $this, 'add_checkout_script' )
123
+ );
124
+ // Display discount in payment method title.
125
+ add_filter(
126
+ 'woocommerce_gateway_title',
127
+ array( $this, 'get_payment_method_title_subscription' ), 10, 2
128
+ );
129
+ // Checkout updates.
130
+ add_action(
131
+ 'woocommerce_thankyou',
132
+ array( $this, 'update_checkout_status' )
133
+ );
134
+
135
+ }
136
+
137
+ /**
138
+ * Summary: Initialise Gateway Settings Form Fields.
139
+ * Description: Initialise Gateway settings form fields with a customized page.
140
+ */
141
+ public function init_form_fields() {
142
+
143
+ // Show message if credentials are not properly configured or country is not supported.
144
+ $_site_id_v0 = get_option( '_site_id_v0', '' );
145
+ if ( empty( $_site_id_v0 ) ) {
146
+ $this->form_fields = array(
147
+ 'no_credentials_title' => array(
148
+ 'title' => sprintf(
149
+ __( 'It appears that your credentials are not properly configured.<br/>Please, go to %s and configure it.', 'woocommerce-mercadopago' ),
150
+ '<a href="' . esc_url( admin_url( 'admin.php?page=mercado-pago-settings' ) ) . '">' .
151
+ __( 'Mercado Pago Settings', 'woocommerce-mercadopago' ) .
152
+ '</a>'
153
+ ),
154
+ 'type' => 'title'
155
+ ),
156
+ );
157
+ return;
158
+ } elseif ( get_option( '_site_id_v0', '' ) != 'MLA' && get_option( '_site_id_v0', '' ) != 'MLB' && get_option( '_site_id_v0', '' ) != 'MLM' ) {
159
+ $this->form_fields = array(
160
+ 'unsupported_country_title' => array(
161
+ 'title' => sprintf(
162
+ __( 'It appears that your country is not supported for this solution.<br/>Please, use another payment method or go to %s to use another credential.', 'woocommerce-mercadopago' ),
163
+ '<a href="' . esc_url( admin_url( 'admin.php?page=mercado-pago-settings' ) ) . '">' .
164
+ __( 'Mercado Pago Settings', 'woocommerce-mercadopago' ) .
165
+ '</a>'
166
+ ),
167
+ 'type' => 'title'
168
+ ),
169
+ );
170
+ return;
171
+ }
172
+
173
+ // If module is disabled, we do not need to load and process the settings page.
174
+ if ( empty( $this->settings['enabled'] ) || 'no' == $this->settings['enabled'] ) {
175
+ $this->form_fields = array(
176
+ 'enabled' => array(
177
+ 'title' => __( 'Enable/Disable', 'woocommerce-mercadopago' ),
178
+ 'type' => 'checkbox',
179
+ 'label' => __( 'Enable Subscription', 'woocommerce-mercadopago' ),
180
+ 'default' => 'no'
181
+ )
182
+ );
183
+ return;
184
+ }
185
+
186
+ // Validate back URL.
187
+ if ( ! empty( $this->success_url ) && filter_var( $this->success_url, FILTER_VALIDATE_URL ) === FALSE ) {
188
+ $success_back_url_message = '<img width="14" height="14" src="' . plugins_url( 'assets/images/warning.png', plugin_dir_path( __FILE__ ) ) . '"> ' .
189
+ __( 'This appears to be an invalid URL.', 'woocommerce-mercadopago' ) . ' ';
190
+ } else {
191
+ $success_back_url_message = __( 'Where customers should be redirected after a successful purchase. Let blank to redirect to the default store order resume page.', 'woocommerce-mercadopago' );
192
+ }
193
+ if ( ! empty( $this->failure_url ) && filter_var( $this->failure_url, FILTER_VALIDATE_URL ) === FALSE ) {
194
+ $fail_back_url_message = '<img width="14" height="14" src="' . plugins_url( 'assets/images/warning.png', plugin_dir_path( __FILE__ ) ) . '"> ' .
195
+ __( 'This appears to be an invalid URL.', 'woocommerce-mercadopago' ) . ' ';
196
+ } else {
197
+ $fail_back_url_message = __( 'Where customers should be redirected after a failed purchase. Let blank to redirect to the default store order resume page.', 'woocommerce-mercadopago' );
198
+ }
199
+ if ( ! empty( $this->pending_url ) && filter_var( $this->pending_url, FILTER_VALIDATE_URL ) === FALSE ) {
200
+ $pending_back_url_message = '<img width="14" height="14" src="' . plugins_url( 'assets/images/warning.png', plugin_dir_path( __FILE__ ) ) . '"> ' .
201
+ __( 'This appears to be an invalid URL.', 'woocommerce-mercadopago' ) . ' ';
202
+ } else {
203
+ $pending_back_url_message = __( 'Where customers should be redirected after a pending purchase. Let blank to redirect to the default store order resume page.', 'woocommerce-mercadopago' );
204
+ }
205
+
206
+ $ipn_locale = sprintf(
207
+ '<a href="https://www.mercadopago.com.ar/ipn-notifications" target="_blank">%s</a>, ' .
208
+ '<a href="https://www.mercadopago.com.br/ipn-notifications" target="_blank">%s</a> %s ' .
209
+ '<a href="https://www.mercadopago.com.mx/ipn-notifications" target="_blank">%s</a>',
210
+ __( 'Argentine', 'woocommerce-mercadopago' ),
211
+ __( 'Brazil', 'woocommerce-mercadopago' ),
212
+ __( 'or', 'woocommerce-mercadopago' ),
213
+ __( 'Mexico', 'woocommerce-mercadopago' )
214
+ );
215
+
216
+ // This array draws each UI (text, selector, checkbox, label, etc).
217
+ $this->form_fields = array(
218
+ 'enabled' => array(
219
+ 'title' => __( 'Enable/Disable', 'woocommerce-mercadopago' ),
220
+ 'type' => 'checkbox',
221
+ 'label' => __( 'Enable Subscription', 'woocommerce-mercadopago' ),
222
+ 'default' => 'no'
223
+ ),
224
+ 'checkout_options_title' => array(
225
+ 'title' => __( 'Checkout Interface: How checkout is shown', 'woocommerce-mercadopago' ),
226
+ 'type' => 'title'
227
+ ),
228
+ 'title' => array(
229
+ 'title' => __( 'Title', 'woocommerce-mercadopago' ),
230
+ 'type' => 'text',
231
+ 'description' => __( 'Title shown to the client in the checkout.', 'woocommerce-mercadopago' ),
232
+ 'default' => __( 'Mercado Pago', 'woocommerce-mercadopago' )
233
+ ),
234
+ 'description' => array(
235
+ 'title' => __( 'Description', 'woocommerce-mercadopago' ),
236
+ 'type' => 'textarea',
237
+ 'description' => __( 'Description shown to the client in the checkout.', 'woocommerce-mercadopago' ),
238
+ 'default' => __( 'Subscribe with Mercado Pago', 'woocommerce-mercadopago' )
239
+ ),
240
+ 'method' => array(
241
+ 'title' => __( 'Integration Method', 'woocommerce-mercadopago' ),
242
+ 'type' => 'select',
243
+ 'description' => __( 'Select how your clients should interact with Mercado Pago. Modal Window (inside your store), Redirect (Client is redirected to Mercado Pago), or iFrame (an internal window is embedded to the page layout).', 'woocommerce-mercadopago' ),
244
+ 'default' => 'iframe',
245
+ 'options' => array(
246
+ 'iframe' => __( 'iFrame', 'woocommerce-mercadopago' ),
247
+ 'modal' => __( 'Modal Window', 'woocommerce-mercadopago' ),
248
+ 'redirect' => __( 'Redirect', 'woocommerce-mercadopago' )
249
+ )
250
+ ),
251
+ 'iframe_width' => array(
252
+ 'title' => __( 'iFrame Width', 'woocommerce-mercadopago' ),
253
+ 'type' => 'number',
254
+ 'description' => __( 'If your integration method is iFrame, please inform the payment iFrame width.', 'woocommerce-mercadopago' ),
255
+ 'default' => '640'
256
+ ),
257
+ 'iframe_height' => array(
258
+ 'title' => __( 'iFrame Height', 'woocommerce-mercadopago' ),
259
+ 'type' => 'number',
260
+ 'description' => __( 'If your integration method is iFrame, please inform the payment iFrame height.', 'woocommerce-mercadopago' ),
261
+ 'default' => '800'
262
+ ),
263
+ 'checkout_navigation_title' => array(
264
+ 'title' => __( 'Checkout Navigation: How checkout redirections will behave', 'woocommerce-mercadopago' ),
265
+ 'type' => 'title'
266
+ ),
267
+ 'ipn_url' => array(
268
+ 'title' =>
269
+ __( 'Instant Payment Notification (IPN) URL', 'woocommerce-mercadopago' ),
270
+ 'type' => 'title',
271
+ 'description' => sprintf(
272
+ __( 'For this solution, you need to configure your IPN URL. You can access it in your account for your specific country in:', 'woocommerce-mercadopago' ) .
273
+ '<br>' . ' %s.', $ipn_locale . '. ' . sprintf(
274
+ __( 'Your IPN URL to receive instant payment notifications is', 'woocommerce-mercadopago' ) .
275
+ ':<br>%s', '<code>' . WC()->api_request_url( 'WC_WooMercadoPago_SubscriptionGateway' ) . '</code>' )
276
+ )
277
+ ),
278
+ 'success_url' => array(
279
+ 'title' => __( 'Sucess URL', 'woocommerce-mercadopago' ),
280
+ 'type' => 'text',
281
+ 'description' => $success_back_url_message,
282
+ 'default' => ''
283
+ ),
284
+ 'failure_url' => array(
285
+ 'title' => __( 'Failure URL', 'woocommerce-mercadopago' ),
286
+ 'type' => 'text',
287
+ 'description' => $fail_back_url_message,
288
+ 'default' => ''
289
+ ),
290
+ 'pending_url' => array(
291
+ 'title' => __( 'Pending URL', 'woocommerce-mercadopago' ),
292
+ 'type' => 'text',
293
+ 'description' => $pending_back_url_message,
294
+ 'default' => ''
295
+ ),
296
+ 'payment_title' => array(
297
+ 'title' => __( 'Payment Options: How payment options behaves', 'woocommerce-mercadopago' ),
298
+ 'type' => 'title'
299
+ ),
300
+ 'gateway_discount' => array(
301
+ 'title' => __( 'Discount by Gateway', 'woocommerce-mercadopago' ),
302
+ 'type' => 'number',
303
+ 'description' => __( 'Give a percentual (0 to 100) discount for your customers if they use this payment gateway.', 'woocommerce-mercadopago' ),
304
+ 'default' => '0'
305
+ )
306
+ );
307
+
308
+ }
309
+
310
+ /**
311
+ * Processes and saves options.
312
+ * If there is an error thrown, will continue to save and validate fields, but will leave the
313
+ * erroring field out.
314
+ * @return bool was anything saved?
315
+ */
316
+ public function custom_process_admin_options() {
317
+ $this->init_settings();
318
+ $post_data = $this->get_post_data();
319
+ foreach ( $this->get_form_fields() as $key => $field ) {
320
+ if ( 'title' !== $this->get_field_type( $field ) ) {
321
+ $value = $this->get_field_value( $key, $field, $post_data );
322
+ if ( $key == 'iframe_width' ) {
323
+ if ( ! is_numeric( $value ) || empty ( $value ) ) {
324
+ $this->settings[$key] = 480;
325
+ } else {
326
+ $this->settings[$key] = $value;
327
+ }
328
+ } elseif ( $key == 'iframe_height' ) {
329
+ if ( ! is_numeric( $value ) || empty ( $value ) ) {
330
+ $this->settings[$key] = 800;
331
+ } else {
332
+ $this->settings[$key] = $value;
333
+ }
334
+ } elseif ( $key == 'gateway_discount') {
335
+ if ( ! is_numeric( $value ) || empty ( $value ) ) {
336
+ $this->settings[$key] = 0;
337
+ } else {
338
+ if ( $value < 0 || $value >= 100 || empty ( $value ) ) {
339
+ $this->settings[$key] = 0;
340
+ } else {
341
+ $this->settings[$key] = $value;
342
+ }
343
+ }
344
+ } else {
345
+ $this->settings[$key] = $this->get_field_value( $key, $field, $post_data );
346
+ }
347
+ }
348
+ }
349
+ $_site_id_v0 = get_option( '_site_id_v0', '' );
350
+ $is_test_user = get_option( '_test_user_v0', false );
351
+ if ( ! empty( $_site_id_v0 ) && ! $is_test_user ) {
352
+ // Create MP instance.
353
+ $mp = new MP(
354
+ WC_Woo_Mercado_Pago_Module::get_module_version(),
355
+ get_option( '_mp_client_id' ),
356
+ get_option( '_mp_client_secret' )
357
+ );
358
+ $email = ( wp_get_current_user()->ID != 0 ) ? wp_get_current_user()->user_email : null;
359
+ $mp->set_email( $email );
360
+ // Analytics.
361
+ $infra_data = WC_Woo_Mercado_Pago_Module::get_common_settings();
362
+ $infra_data['checkout_subscription'] = ( $this->settings['enabled'] == 'yes' ? 'true' : 'false' );
363
+ $response = $mp->analytics_save_settings( $infra_data );
364
+ }
365
+ // Apply updates.
366
+ return update_option(
367
+ $this->get_option_key(),
368
+ apply_filters( 'woocommerce_settings_api_sanitized_fields_' . $this->id, $this->settings )
369
+ );
370
+ }
371
+
372
+ /**
373
+ * Handles the manual order cancellation in server-side.
374
+ */
375
+ public function process_cancel_order_meta_box_actions( $order ) {
376
+
377
+ $used_gateway = ( method_exists( $order, 'get_meta' ) ) ?
378
+ $order->get_meta( '_used_gateway' ) :
379
+ get_post_meta( $order->id, '_used_gateway', true );
380
+ $preapproval = ( method_exists( $order, 'get_meta' ) ) ?
381
+ $order->get_meta( 'Mercado Pago Pre-Approval' ) :
382
+ get_post_meta( $order->id, 'Mercado Pago Pre-Approval', true );
383
+ $preapproval = explode( '/', $preapproval );
384
+ $preapproval = explode( ' ', substr( $preapproval[0], 1, -1 ) );
385
+ $preapproval_id = $preapproval[1];
386
+
387
+ // A watchdog to prevent operations from other gateways.
388
+ if ( $used_gateway != 'WC_WooMercadoPago_SubscriptionGateway' ) {
389
+ return;
390
+ }
391
+
392
+ $this->write_log( __FUNCTION__, 'cancelling preapproval for ' . $preapproval_id );
393
+
394
+ // Canceling the order and all of its payments.
395
+ if ( $this->mp != null && ! empty( $preapproval_id ) ) {
396
+ $response = $this->mp->cancel_preapproval_payment( $preapproval_id );
397
+ $message = $response['response']['message'];
398
+ $status = $response['status'];
399
+ $this->write_log(
400
+ __FUNCTION__,
401
+ 'cancel preapproval of id ' . $preapproval_id . ' => ' .
402
+ ( $status >= 200 && $status < 300 ? 'SUCCESS' : 'FAIL - ' . $message )
403
+ );
404
+ } else {
405
+ $this->write_log( __FUNCTION__, 'no preapproval or credentials invalid' );
406
+ }
407
+
408
+ }
409
+
410
+ // Write log.
411
+ private function write_log( $function, $message ) {
412
+ $_mp_debug_mode = get_option( '_mp_debug_mode', '' );
413
+ if ( ! empty ( $_mp_debug_mode ) ) {
414
+ $this->log->add(
415
+ $this->id,
416
+ '[' . $function . ']: ' . $message
417
+ );
418
+ }
419
+ }
420
+
421
+ /*
422
+ * ========================================================================
423
+ * CHECKOUT BUSINESS RULES (CLIENT SIDE)
424
+ * ========================================================================
425
+ */
426
+
427
+ public function payment_fields() {
428
+ // subscription checkout
429
+ if ( $description = $this->get_description() ) {
430
+ echo wpautop( wptexturize( $description ) );
431
+ }
432
+ if ( $this->supports( 'default_credit_card_form' ) ) {
433
+ $this->credit_card_form();
434
+ }
435
+ }
436
+
437
+ public function add_checkout_script() {
438
+
439
+ $client_id = get_option( 'client_id' );
440
+ $is_test_user = get_option( '_test_user_v0', false );
441
+
442
+ if ( ! empty( $client_id ) && ! $is_test_user ) {
443
+
444
+ $w = WC_Woo_Mercado_Pago_Module::woocommerce_instance();
445
+ $logged_user_email = null;
446
+ $payments = array();
447
+ $gateways = WC()->payment_gateways->get_available_payment_gateways();
448
+ foreach ( $gateways as $g ) {
449
+ $payments[] = $g->id;
450
+ }
451
+ $payments = str_replace( '-', '_', implode( ', ', $payments ) );
452
+
453
+ if ( wp_get_current_user()->ID != 0 ) {
454
+ $logged_user_email = wp_get_current_user()->user_email;
455
+ }
456
+
457
+ ?>
458
+ <script src="https://secure.mlstatic.com/modules/javascript/analytics.js"></script>
459
+ <script type="text/javascript">
460
+ var MA = ModuleAnalytics;
461
+ MA.setToken( '<?php echo $client_id; ?>' );
462
+ MA.setPlatform( 'WooCommerce' );
463
+ MA.setPlatformVersion( '<?php echo $w->version; ?>' );
464
+ MA.setModuleVersion( '<?php echo WC_Woo_Mercado_Pago_Module::VERSION; ?>' );
465
+ MA.setPayerEmail( '<?php echo ( $logged_user_email != null ? $logged_user_email : "" ); ?>' );
466
+ MA.setUserLogged( <?php echo ( empty( $logged_user_email ) ? 0 : 1 ); ?> );
467
+ MA.setInstalledModules( '<?php echo $payments; ?>' );
468
+ MA.post();
469
+ </script>
470
+ <?php
471
+
472
+ }
473
+
474
+ }
475
+
476
+ public function update_checkout_status( $order_id ) {
477
+ $client_id = get_option( '_mp_client_id' );
478
+ $is_test_user = get_option( '_test_user_v0', false );
479
+ if ( ! empty( $client_id ) && ! $is_test_user ) {
480
+ if ( get_post_meta( $order_id, '_used_gateway', true ) != 'WC_WooMercadoPago_SubscriptionGateway' ) {
481
+ return;
482
+ }
483
+ $this->write_log( __FUNCTION__, 'updating order of ID ' . $order_id );
484
+ echo '<script src="https://secure.mlstatic.com/modules/javascript/analytics.js"></script>
485
+ <script type="text/javascript">
486
+ var MA = ModuleAnalytics;
487
+ MA.setToken( ' . $client_id . ' );
488
+ MA.setPaymentType("subscription");
489
+ MA.setCheckoutType("subscription");
490
+ MA.put();
491
+ </script>';
492
+
493
+ }
494
+
495
+ }
496
+
497
+ /**
498
+ * Summary: Handle the payment and processing the order.
499
+ * Description: First step occurs when the customer selects Mercado Pago and proceed to checkout.
500
+ * This method verify which integration method was selected and makes the build for the checkout
501
+ * URL.
502
+ * @return an array containing the result of the processment and the URL to redirect.
503
+ */
504
+ public function process_payment( $order_id ) {
505
+
506
+ $order = wc_get_order( $order_id );
507
+ if ( method_exists( $order, 'update_meta_data' ) ) {
508
+ $order->update_meta_data( '_used_gateway', 'WC_WooMercadoPago_SubscriptionGateway' );
509
+ $order->save();
510
+ } else {
511
+ update_post_meta( $order_id, '_used_gateway', 'WC_WooMercadoPago_SubscriptionGateway' );
512
+ }
513
+
514
+ if ( 'redirect' == $this->method ) {
515
+ $this->write_log( __FUNCTION__, 'customer being redirected to Mercado Pago.' );
516
+ return array(
517
+ 'result' => 'success',
518
+ 'redirect' => $this->create_url( $order )
519
+ );
520
+ } elseif ( 'modal' == $this->method || 'iframe' == $this->method ) {
521
+ $this->write_log( __FUNCTION__, 'preparing to render Mercado Pago checkout view.' );
522
+ return array(
523
+ 'result' => 'success',
524
+ 'redirect' => $order->get_checkout_payment_url( true )
525
+ );
526
+ }
527
+
528
+ }
529
+
530
+ /**
531
+ * Summary: Show the custom renderization for the checkout.
532
+ * Description: Order page and this generates the form that shows the pay button. This step
533
+ * generates the form to proceed to checkout.
534
+ * @return the html to be rendered.
535
+ */
536
+ public function render_order_form( $order_id ) {
537
+
538
+ $order = wc_get_order( $order_id );
539
+ $url = $this->create_url( $order );
540
+
541
+ if ( 'modal' == $this->method && $url ) {
542
+
543
+ $this->write_log( __FUNCTION__, 'rendering Mercado Pago lightbox (modal window).' );
544
+
545
+ // ===== The checkout is made by displaying a modal to the customer =====
546
+ $html = '<style type="text/css">
547
+ #MP-Checkout-dialog #MP-Checkout-IFrame { bottom: -28px !important; height: 590px !important; }
548
+ </style>';
549
+ $html = '<script type="text/javascript" src="https://secure.mlstatic.com/mptools/render.js"></script>
550
+ <script type="text/javascript">
551
+ (function() { $MPC.openCheckout({ url: "' . esc_url( $url ) . '", mode: "modal" }); })();
552
+ </script>';
553
+ $html = '<img width="468" height="60" src="' . $this->site_data['checkout_banner'] . '">';
554
+ $html = '<p></p><p>' . wordwrap(
555
+ __( 'Thank you for your order. Please, proceed with your payment clicking in the bellow button.', 'woocommerce-mercadopago' ),
556
+ 60, '<br>'
557
+ ) . '</p>
558
+ <a id="submit-payment" href="' . esc_url( $url ) . '" name="MP-Checkout" class="button alt" mp-mode="modal">' .
559
+ __( 'Pay with Mercado Pago', 'woocommerce-mercadopago' ) .
560
+ '</a> <a class="button cancel" href="' . esc_url( $order->get_cancel_order_url() ) . '">' .
561
+ __( 'Cancel order &amp; Clear cart', 'woocommerce-mercadopago' ) .
562
+ '</a>';
563
+ return $html;
564
+ // ===== The checkout is made by displaying a modal to the customer =====
565
+
566
+ } elseif ( 'modal' != $this->method && $url ) {
567
+
568
+ $this->write_log( __FUNCTION__, 'embedding Mercado Pago iframe.' );
569
+
570
+ // ===== The checkout is made by rendering Mercado Pago form within a iframe =====
571
+ $html = '<img width="468" height="60" src="' . $this->site_data['checkout_banner'] . '">';
572
+ $html = '<p></p><p>' . wordwrap(
573
+ __( 'Thank you for your order. Proceed with your payment completing the following information.', 'woocommerce-mercadopago' ),
574
+ 60, '<br>'
575
+ ) . '</p>
576
+ <iframe src="' . esc_url( $url ) . '" name="MP-Checkout" ' .
577
+ 'width="' . $this->iframe_width . '" ' . 'height="' . $this->iframe_height . '" ' .
578
+ 'frameborder="0" scrolling="no" id="checkout_mercadopago"></iframe>';
579
+ return $html;
580
+ // ===== The checkout is made by rendering Mercado Pago form within a iframe =====
581
+
582
+ } else {
583
+
584
+ $this->write_log( __FUNCTION__, 'unable to build Mercado Pago checkout URL.' );
585
+
586
+ // ===== Reaching at this point means that the URL could not be build by some reason =====
587
+ $html = '<p>' .
588
+ __( 'An error occurred when proccessing your payment. Please try again or contact us for assistence.', 'woocommerce-mercadopago' ) .
589
+ '</p>' .
590
+ '<a class="button" href="' . esc_url( $order->get_checkout_payment_url() ) . '">' .
591
+ __( 'Click to try again', 'woocommerce-mercadopago' ) .
592
+ '</a>
593
+ ';
594
+ return $html;
595
+ // ===== Reaching at this point means that the URL could not be build by some reason =====
596
+
597
+ }
598
+
599
+ }
600
+
601
+ /**
602
+ * Summary: Build Mercado Pago preapproval.
603
+ * Description: Create Mercado Pago preapproval structure and get init_point URL based in the order options
604
+ * from the cart.
605
+ * @return the preapproval structure.
606
+ */
607
+ public function build_preapproval( $order ) {
608
+
609
+ $preapproval = null;
610
+
611
+ // Here we build the array that contains ordered items, from customer cart.
612
+ foreach ( $order->get_items() as $item ) {
613
+ if ( $item['qty'] ) {
614
+ $product = new WC_product( $item['product_id'] );
615
+ $product_title = method_exists( $product, 'get_description' ) ?
616
+ $product->get_name() :
617
+ $product->post->post_title;
618
+ $unit_price = $item['line_total'] + $item['line_tax'];
619
+ $method_discount = $unit_price * ( $this->gateway_discount / 100 );
620
+ $ship_amount = $order->get_total_shipping() + $order->get_shipping_tax();
621
+
622
+ $currency_ratio = 1;
623
+ $_mp_currency_conversion_v0 = get_option( '_mp_currency_conversion_v0', '' );
624
+ if ( ! empty( $_mp_currency_conversion_v0 ) ) {
625
+ $currency_ratio = WC_Woo_Mercado_Pago_Module::get_conversion_rate( $this->site_data['currency'] );
626
+ $currency_ratio = $currency_ratio > 0 ? $currency_ratio : 1;
627
+ }
628
+
629
+ // Get the custom fields
630
+ $frequency = get_post_meta( $item['product_id'], '_mp_recurring_frequency', true );
631
+ $frequency_type = get_post_meta( $item['product_id'], '_mp_recurring_frequency_type', true );
632
+ $start_date = get_post_meta( $item['product_id'], '_mp_recurring_start_date', true );
633
+ $end_date = get_post_meta( $item['product_id'], '_mp_recurring_end_date', true );
634
+
635
+ $preapproval = array(
636
+ 'payer_email' => ( method_exists( $order, 'get_id' ) ) ?
637
+ $order->get_billing_email() :
638
+ $order->billing_email,
639
+ 'back_url' => ( empty( $this->success_url ) ?
640
+ WC_Woo_Mercado_Pago_Module::workaround_ampersand_bug(
641
+ esc_url( $this->get_return_url( $order ) )
642
+ ) : $this->success_url
643
+ ),
644
+ 'reason' => $product_title,
645
+ 'external_reference' => get_option( '_mp_store_identificator', 'WC-' ) .
646
+ ( method_exists( $order, 'get_id' ) ? $order->get_id() : $order->id ),
647
+ 'auto_recurring' => array(
648
+ 'frequency' => $frequency,
649
+ 'frequency_type' => $frequency_type,
650
+ 'transaction_amount' => ( $this->site_data['currency'] == 'COP' || $this->site_data['currency'] == 'CLP' ) ?
651
+ floor( ( $unit_price + $ship_amount - $method_discount ) * $currency_ratio ) :
652
+ floor( ( $unit_price + $ship_amount - $method_discount ) * $currency_ratio * 100 ) / 100,
653
+ 'currency_id' => $this->site_data['currency']
654
+ )
655
+ );
656
+
657
+ if ( isset( $start_date ) && ! empty( $start_date ) ) {
658
+ $preapproval['auto_recurring']['start_date'] = $start_date . 'T16:00:00.000-03:00';
659
+ }
660
+ if ( isset( $end_date ) && ! empty( $end_date ) ) {
661
+ $preapproval['auto_recurring']['end_date'] = $end_date . 'T16:00:00.000-03:00';
662
+ }
663
+
664
+ // Do not set IPN url if it is a localhost.
665
+ if ( ! strrpos( get_site_url(), 'localhost' ) ) {
666
+ $preferences['notification_url'] = WC()->api_request_url( 'WC_WooMercadoPago_SubscriptionGateway' );
667
+ }
668
+
669
+ // Set sponsor ID.
670
+ $_test_user_v0 = get_option( '_test_user_v0', false );
671
+ if ( ! $_test_user_v0 ) {
672
+ $preapproval['sponsor_id'] = $this->site_data['sponsor_id'];
673
+ }
674
+
675
+ // Debug/log this preapproval.
676
+ $this->write_log(
677
+ __FUNCTION__,
678
+ 'preapproval created with following structure: ' .
679
+ json_encode( $preapproval, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
680
+ );
681
+ }
682
+ }
683
+
684
+ return $preapproval;
685
+ }
686
+
687
+ protected function create_url( $order ) {
688
+ // Creates the order parameters by checking the cart configuration.
689
+ $preapproval_payment = $this->build_preapproval( $order );
690
+ // Create order preferences with Mercado Pago API request.
691
+ try {
692
+ $checkout_info = $this->mp->create_preapproval_payment( json_encode( $preapproval_payment ) );
693
+ if ( $checkout_info['status'] < 200 || $checkout_info['status'] >= 300 ) {
694
+ // Mercado Pago throwed an error.
695
+ $this->write_log(
696
+ __FUNCTION__,
697
+ 'mercado pago gave error, payment creation failed with error: ' . $checkout_info['response']['message']
698
+ );
699
+ return false;
700
+ } elseif ( is_wp_error( $checkout_info ) ) {
701
+ // WordPress throwed an error.
702
+ $this->write_log(
703
+ __FUNCTION__,
704
+ 'wordpress gave error, payment creation failed with error: ' . $checkout_info['response']['message']
705
+ );
706
+ return false;
707
+ } else {
708
+ // Obtain the URL.
709
+ $this->write_log(
710
+ __FUNCTION__,
711
+ 'pre-approval link generated with success from mercado pago, with structure as follow: ' .
712
+ json_encode( $checkout_info, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
713
+ );
714
+ // TODO: Verify sandbox availability.
715
+ //if ( 'yes' == $this->sandbox ) {
716
+ // return $checkout_info['response']['sandbox_init_point'];
717
+ //} else {
718
+ return $checkout_info['response']['init_point'];
719
+ //}
720
+ }
721
+ } catch ( MercadoPagoException $ex ) {
722
+ // Something went wrong with the payment creation.
723
+ $this->write_log(
724
+ __FUNCTION__,
725
+ 'payment creation failed with exception: ' .
726
+ json_encode( $ex, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
727
+ );
728
+ return false;
729
+ }
730
+ }
731
+
732
+ /*
733
+ * ========================================================================
734
+ * AUXILIARY AND FEEDBACK METHODS (SERVER SIDE)
735
+ * ========================================================================
736
+ */
737
+
738
+ // Called automatically by WooCommerce, verify if Module is available to use.
739
+ public function is_available() {
740
+ if ( ! did_action( 'wp_loaded' ) ) {
741
+ return false;
742
+ }
743
+ global $woocommerce;
744
+ $w_cart = $woocommerce->cart;
745
+ // Check for recurrent product checkout.
746
+ if ( isset( $w_cart ) ) {
747
+ if ( ! WC_Woo_Mercado_Pago_Module::is_subscription( $w_cart->get_cart() ) ) {
748
+ return false;
749
+ }
750
+ }
751
+ $_mp_client_id = get_option( '_mp_client_id' );
752
+ $_mp_client_secret = get_option( '_mp_client_secret' );
753
+ $_site_id_v0 = get_option( '_site_id_v0' );
754
+ // Check for country support.
755
+ if ( $_site_id_v0 != 'MLA' && $_site_id_v0 != 'MLB' && $_site_id_v0 != 'MLM') {
756
+ return false;
757
+ }
758
+ $available = ( 'yes' == $this->settings['enabled'] ) &&
759
+ ! empty( $_mp_client_id ) &&
760
+ ! empty( $_mp_client_secret ) &&
761
+ ! empty( $_site_id_v0 );
762
+ return $available;
763
+ }
764
+
765
+ // Get the URL to admin page.
766
+ protected function admin_url() {
767
+ if ( defined( 'WC_VERSION' ) && version_compare( WC_VERSION, '2.1', '>=' ) ) {
768
+ return admin_url(
769
+ 'admin.php?page=wc-settings&tab=checkout&section=wc_woomercadopago_subscriptiongateway'
770
+ );
771
+ }
772
+ return admin_url(
773
+ 'admin.php?page=woocommerce_settings&tab=payment_gateways&section=WC_WooMercadoPago_SubscriptionGateway'
774
+ );
775
+ }
776
+
777
+ // Display the discount in payment method title.
778
+ public function get_payment_method_title_subscription( $title, $id ) {
779
+
780
+ if ( ! is_checkout() && ! ( defined( 'DOING_AJAX' ) && DOING_AJAX ) ) {
781
+ return $title;
782
+ }
783
+
784
+ if ( $title != $this->title || $this->gateway_discount == 0 ) {
785
+ return $title;
786
+ }
787
+
788
+ $total = (float) WC()->cart->subtotal;
789
+ if ( is_numeric( $this->gateway_discount ) ) {
790
+ if ( $this->gateway_discount >= 0 && $this->gateway_discount < 100 ) {
791
+ $price_percent = $this->gateway_discount / 100;
792
+ if ( $price_percent > 0 ) {
793
+ $title .= ' (' . __( 'Discount of', 'woocommerce-mercadopago' ) . ' ' .
794
+ strip_tags( wc_price( $total * $price_percent ) ) . ')';
795
+ }
796
+ }
797
+ }
798
+
799
+ return $title;
800
+ }
801
+
802
+ /*
803
+ * ========================================================================
804
+ * IPN MECHANICS (SERVER SIDE)
805
+ * ========================================================================
806
+ */
807
+
808
+ /**
809
+ * Summary: This call checks any incoming notifications from Mercado Pago server.
810
+ * Description: This call checks any incoming notifications from Mercado Pago server.
811
+ */
812
+ public function check_ipn_response() {
813
+ @ob_clean();
814
+ $this->write_log( __FUNCTION__, 'received _get content: ' . json_encode( $_GET, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE ) );
815
+ // Setup sandbox mode, in subscription it should be always false.
816
+ $this->mp->sandbox_mode( false );
817
+ // Over here, $_GET should come with this JSON structure:
818
+ // {
819
+ // "topic": <string>,
820
+ // "id": <string>
821
+ // }
822
+ // If not, the IPN is corrupted in some way.
823
+ $data = $_GET;
824
+ if ( isset( $data['action_mp_payment_id'] ) && ! empty( $data['action_mp_payment_id'] ) && isset( $data['action_mp_payment_amount'] ) ) {
825
+
826
+ // ===== Client calls server when performing requests about cancelling or refund orders =====
827
+ $this->write_log( __FUNCTION__, 'cancelling or refunding payment of ID ' . $data['action_mp_payment_id'] );
828
+ if ( $data['action_mp_payment_action'] === 'cancel' ) {
829
+ $response = $this->mp->cancel_payment( $data['action_mp_payment_id'] );
830
+ $message = $response['response']['message'];
831
+ $status = $response['status'];
832
+ $this->write_log(
833
+ __FUNCTION__,
834
+ 'cancel payment of id ' . $data['action_mp_payment_id'] . ' => ' .
835
+ ( $status >= 200 && $status < 300 ? 'SUCCESS' : 'FAIL - ' . $message )
836
+ );
837
+ if ( $status >= 200 && $status < 300 ) {
838
+ header( 'HTTP/1.1 200 OK' );
839
+ echo json_encode( array(
840
+ 'status' => 200,
841
+ 'message' => __( 'Operation successfully completed.', 'woocommerce-mercadopago' )
842
+ ) );
843
+ } else {
844
+ header( 'HTTP/1.1 200 OK' );
845
+ echo json_encode( array(
846
+ 'status' => $status,
847
+ 'message' => $message
848
+ ) );
849
+ }
850
+ } elseif ( $data['action_mp_payment_action'] === 'refund' ) {
851
+ $response = $this->mp->partial_refund_payment(
852
+ $data['action_mp_payment_id'],
853
+ (float) str_replace( ',', '.', $data['action_mp_payment_amount'] ),
854
+ // TODO: here, we should improve by placing the actual reason and the external refarence
855
+ __( 'Refund Payment', 'woocommerce-mercadopago' ) . ' ' . $data['action_mp_payment_id'],
856
+ __( 'Refund Payment', 'woocommerce-mercadopago' ) . ' ' . $data['action_mp_payment_id']
857
+ );
858
+ $message = $response['response']['message'];
859
+ $status = $response['status'];
860
+ $this->write_log(
861
+ __FUNCTION__,
862
+ 'refund payment of id ' . $data['action_mp_payment_id'] . ' => ' .
863
+ ( $status >= 200 && $status < 300 ? 'SUCCESS' : 'FAIL - ' . $message )
864
+ );
865
+ if ( $status >= 200 && $status < 300 ) {
866
+ header( 'HTTP/1.1 200 OK' );
867
+ echo json_encode( array(
868
+ 'status' => 200,
869
+ 'message' => __( 'Operation successfully completed.', 'woocommerce-mercadopago' )
870
+ ) );
871
+ } else {
872
+ header( 'HTTP/1.1 200 OK' );
873
+ echo json_encode( array(
874
+ 'status' => $status,
875
+ 'message' => $message
876
+ ) );
877
+ }
878
+ }
879
+ // ===== Client calls server when performing requests about cancelling or refund orders =====
880
+
881
+ } elseif ( isset( $data['id'] ) && isset( $data['topic'] ) ) {
882
+
883
+ // ===== We have received a normal IPN call for this gateway =====
884
+ // Start process by getting the access token...
885
+ $access_token = array( 'access_token' => $this->mp->get_access_token() );
886
+ // Now, we should handle the topic type that has come...
887
+ if ( $data['topic'] == 'preapproval' ) {
888
+ // Get the preapproval reported by the IPN.
889
+ $ipn_info = $this->mp->get_preapproval_payment( $data['id'] );
890
+ if ( ! is_wp_error( $ipn_info ) && ( $ipn_info['status'] == 200 || $ipn_info['status'] == 201 ) ) {
891
+ $ipn_info['response']['ipn_type'] = 'preapproval';
892
+ do_action( 'valid_mercadopago_subscription_ipn_request', $ipn_info['response'] );
893
+ header( 'HTTP/1.1 200 OK' );
894
+ } else {
895
+ $this->write_log(
896
+ __FUNCTION__, 'got status not equal 200: ' . json_encode( $ipn_info, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
897
+ );
898
+ }
899
+ } elseif ( $data['topic'] == 'payment' ) {
900
+ $payment_info = $this->mp->get( '/v1/payments/' . $data['id'], $access_token, false );
901
+ if ( ! is_wp_error( $payment_info ) && ( $payment_info['status'] == 200 || $payment_info['status'] == 201 ) ) {
902
+ $payment_info['response']['ipn_type'] = 'payment';
903
+ do_action( 'valid_mercadopago_subscription_ipn_request', $payment_info['response'] );
904
+ header( 'HTTP/1.1 200 OK' );
905
+ } else {
906
+ $this->write_log(
907
+ __FUNCTION__, 'got status not equal 200: ' . json_encode( $payment_info, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
908
+ );
909
+ return false;
910
+ }
911
+ } else {
912
+ // We have received an unhandled topic...
913
+ $this->write_log( __FUNCTION__, 'request failure, received an unhandled topic' );
914
+ }
915
+ // ===== We have received a normal IPN call for this gateway =====
916
+
917
+ } elseif ( isset( $data['data_id'] ) && isset( $data['type'] ) ) {
918
+ // We have received a bad, however valid) IPN call for this gateway (data is set for API V1).
919
+ // At least, we should respond 200 to notify server that we already received it.
920
+ header( 'HTTP/1.1 200 OK' );
921
+ } else {
922
+ // Reaching here means that we received an IPN call but there are no data!
923
+ // Just kills the processment. No IDs? No process!
924
+ $this->write_log(
925
+ __FUNCTION__,
926
+ 'request failure, received ipn call with no data.'
927
+ );
928
+ wp_die( __( 'Mercado Pago Request Failure', 'woocommerce-mercadopago' ) );
929
+ }
930
+ }
931
+
932
+ /**
933
+ * Summary: Properly handles each case of notification, based in payment status.
934
+ * Description: Properly handles each case of notification, based in payment status.
935
+ */
936
+ public function successful_request( $data ) {
937
+ $this->write_log( __FUNCTION__, 'starting to process ipn update...' );
938
+ // Get the order and check its presence.
939
+ $order_key = $data['external_reference'];
940
+ if ( empty( $order_key ) ) {
941
+ return;
942
+ }
943
+ $invoice_prefix = get_option( '_mp_store_identificator', 'WC-' );
944
+ $id = (int) str_replace( $invoice_prefix, '', $order_key );
945
+ $order = wc_get_order( $id );
946
+ // Check if order exists.
947
+ if ( ! $order ) {
948
+ return;
949
+ }
950
+ // WooCommerce 3.0 or later.
951
+ $order_id = ( method_exists( $order, 'get_id' ) ? $order->get_id() : $order->id );
952
+ // Check if we have the correct order.
953
+ if ( $order_id !== $id ) {
954
+ return;
955
+ }
956
+ $this->write_log(
957
+ __FUNCTION__,
958
+ 'updating metadata and status with data: ' .
959
+ json_encode( $data, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
960
+ );
961
+ // Here, we process the status... this is the business rules!
962
+ // Reference: https://www.mercadopago.com.br/developers/en/api-docs/basic-checkout/ipn/payment-status/
963
+ $status = isset( $data['status'] ) ? $data['status'] : 'pending';
964
+ if ( $data['ipn_type'] == 'payment' ) {
965
+ // ===== Here we process IPN from recurrency payments =====
966
+ $total_paid = isset( $data['transaction_details']['total_paid_amount'] ) ? $data['transaction_details']['total_paid_amount'] : 0.00;
967
+ $total_refund = isset( $data['transaction_amount_refunded'] ) ? $data['transaction_amount_refunded'] : 0.00;
968
+ $total = $data['transaction_amount'];
969
+ // WooCommerce 3.0 or later.
970
+ if ( method_exists( $order, 'update_meta_data' ) ) {
971
+ // Updates the type of gateway.
972
+ $order->update_meta_data( '_used_gateway', 'WC_WooMercadoPago_SubscriptionGateway' );
973
+ if ( ! empty( $data['payer']['email'] ) ) {
974
+ $order->update_meta_data( __( 'Payer email', 'woocommerce-mercadopago' ), $data['payer']['email'] );
975
+ }
976
+ if ( ! empty( $data['payment_type_id'] ) ) {
977
+ $order->update_meta_data( __( 'Payment type', 'woocommerce-mercadopago' ), $data['payment_type_id'] );
978
+ }
979
+ if ( ! empty( $data['id'] ) ) {
980
+ $order->update_meta_data(
981
+ 'Mercado Pago - Payment ID ' . $data['id'],
982
+ '[Date ' . date( 'Y-m-d H:i:s', strtotime( $data['date_created'] ) ) .
983
+ ']/[Amount ' . $total .
984
+ ']/[Paid ' . $total_paid .
985
+ ']/[Refund ' . $total_refund . ']'
986
+ );
987
+ $payment_ids_str = $order->get_meta( '_Mercado_Pago_Sub_Payment_IDs' );
988
+ $payment_ids = array();
989
+ if ( ! empty( $payment_ids_str ) ) {
990
+ $payment_ids = explode( ', ', $payment_ids_str );
991
+ }
992
+ $payment_ids[] = $data['id'];
993
+ $order->update_meta_data( '_Mercado_Pago_Sub_Payment_IDs', implode( ', ', $payment_ids ) );
994
+ }
995
+ $order->save();
996
+ } else {
997
+ // Updates the type of gateway.
998
+ update_post_meta( $order->id, '_used_gateway', 'WC_WooMercadoPago_SubscriptionGateway' );
999
+ if ( ! empty( $data['payer']['email'] ) ) {
1000
+ update_post_meta( $order_id, __( 'Payer email', 'woocommerce-mercadopago' ), $data['payer']['email'] );
1001
+ }
1002
+ if ( ! empty( $data['payment_type_id'] ) ) {
1003
+ update_post_meta( $order_id, __( 'Payment type', 'woocommerce-mercadopago' ), $data['payment_type_id'] );
1004
+ }
1005
+ if ( ! empty( $data['id'] ) ) {
1006
+ update_post_meta(
1007
+ $order_id,
1008
+ 'Mercado Pago - Payment ID ' . $data['id'],
1009
+ '[Date ' . date( 'Y-m-d H:i:s', strtotime( $data['date_created'] ) ) .
1010
+ ']/[Amount ' . $total .
1011
+ ']/[Paid ' . $total_paid .
1012
+ ']/[Refund ' . $total_refund . ']'
1013
+ );
1014
+ $payment_ids_str = get_post_meta( $order->id, '_Mercado_Pago_Sub_Payment_IDs', true );
1015
+ $payment_ids = array();
1016
+ if ( ! empty( $payment_ids_str ) ) {
1017
+ $payment_ids = explode( ', ', $payment_ids_str );
1018
+ }
1019
+ $payment_ids[] = $data['id'];
1020
+ update_post_meta( $order_id, '_Mercado_Pago_Sub_Payment_IDs', implode( ', ', $payment_ids ) );
1021
+ }
1022
+ }
1023
+ // ===== Here we process IPN from recurrency payments =====
1024
+ } elseif ( $data['ipn_type'] == 'preapproval' ) {
1025
+ // ===== Here we process IPN from recurrency preapprovals =====
1026
+ // WooCommerce 3.0 or later.
1027
+ if ( method_exists( $order, 'update_meta_data' ) ) {
1028
+ // Updates the type of gateway.
1029
+ $order->update_meta_data( '_used_gateway', 'WC_WooMercadoPago_SubscriptionGateway' );
1030
+ if ( ! empty( $data['payer_email'] ) ) {
1031
+ $order->update_meta_data( __( 'Payer email', 'woocommerce-mercadopago' ), $data['payer_email'] );
1032
+ }
1033
+ if ( ! empty( $data['id'] ) ) {
1034
+ $order->update_meta_data(
1035
+ 'Mercado Pago Pre-Approval',
1036
+ '[ID ' . $data['id'] .
1037
+ ']/[Date ' . date( 'Y-m-d H:i:s', strtotime( $data['date_created'] ) ) .
1038
+ ']/[Amount ' . $data['auto_recurring']['transaction_amount'] .
1039
+ ']/[End ' . date( 'Y-m-d', strtotime( $data['auto_recurring']['end_date'] ) ) . ']'
1040
+ );
1041
+ }
1042
+ $order->save();
1043
+ } else {
1044
+ // Updates the type of gateway.
1045
+ update_post_meta( $order->id, '_used_gateway', 'WC_WooMercadoPago_SubscriptionGateway' );
1046
+ if ( ! empty( $data['payer_email'] ) ) {
1047
+ update_post_meta( $order_id, __( 'Payer email', 'woocommerce-mercadopago' ), $data['payer_email'] );
1048
+ }
1049
+ if ( ! empty( $data['id'] ) ) {
1050
+ update_post_meta(
1051
+ $order_id,
1052
+ 'Mercado Pago Pre-Approval',
1053
+ '[ID ' . $data['id'] .
1054
+ ']/[Date ' . date( 'Y-m-d H:i:s', strtotime( $data['date_created'] ) ) .
1055
+ ']/[Amount ' . $data['auto_recurring']['transaction_amount'] .
1056
+ ']/[End ' . date( 'Y-m-d', strtotime( $data['auto_recurring']['end_date'] ) ) . ']'
1057
+ );
1058
+ }
1059
+ }
1060
+ // ===== Here we process IPN from recurrency preapprovals =====
1061
+ }
1062
+ // Switch the status and update in WooCommerce.
1063
+ $this->write_log(
1064
+ __FUNCTION__,
1065
+ 'Changing order status to: ' .
1066
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( str_replace( '_', '', $status ) )
1067
+ );
1068
+ switch ( $status ) {
1069
+ case 'authorized':
1070
+ case 'approved':
1071
+ $order->add_order_note(
1072
+ 'Mercado Pago: ' . __( 'Payment approved.', 'woocommerce-mercadopago' )
1073
+ );
1074
+ $order->payment_complete();
1075
+ $order->update_status(
1076
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'approved' )
1077
+ );
1078
+ break;
1079
+ case 'pending':
1080
+ $order->update_status(
1081
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'pending' )
1082
+ );
1083
+ $order->add_order_note(
1084
+ 'Mercado Pago: ' . __( 'Customer haven\'t paid yet.', 'woocommerce-mercadopago' )
1085
+ );
1086
+ break;
1087
+ case 'in_process':
1088
+ $order->update_status(
1089
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'on-hold' ),
1090
+ 'Mercado Pago: ' . __( 'Payment under review.', 'woocommerce-mercadopago' )
1091
+ );
1092
+ break;
1093
+ case 'rejected':
1094
+ $order->update_status(
1095
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'failed' ),
1096
+ 'Mercado Pago: ' . __( 'The payment was refused. The customer can try again.', 'woocommerce-mercadopago' )
1097
+ );
1098
+ break;
1099
+ case 'refunded':
1100
+ $order->update_status(
1101
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'refunded' ),
1102
+ 'Mercado Pago: ' . __( 'The payment was refunded to the customer.', 'woocommerce-mercadopago' )
1103
+ );
1104
+ break;
1105
+ case 'cancelled':
1106
+ $this->process_cancel_order_meta_box_actions( $order );
1107
+ $order->update_status(
1108
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'cancelled' ),
1109
+ 'Mercado Pago: ' . __( 'The payment was cancelled.', 'woocommerce-mercadopago' )
1110
+ );
1111
+ break;
1112
+ case 'in_mediation':
1113
+ $order->update_status(
1114
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'inmediation' )
1115
+ );
1116
+ $order->add_order_note(
1117
+ 'Mercado Pago: ' . __( 'The payment is under mediation or it was charged-back.', 'woocommerce-mercadopago' )
1118
+ );
1119
+ break;
1120
+ case 'charged-back':
1121
+ $order->update_status(
1122
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'chargedback' )
1123
+ );
1124
+ $order->add_order_note(
1125
+ 'Mercado Pago: ' . __( 'The payment is under mediation or it was charged-back.', 'woocommerce-mercadopago' )
1126
+ );
1127
+ break;
1128
+ default:
1129
+ break;
1130
+ }
1131
+ }
1132
+
1133
+ }
includes/WC_WooMercadoPago_TicketGateway.php ADDED
@@ -0,0 +1,1297 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Part of Woo Mercado Pago Module
5
+ * Author - Mercado Pago
6
+ * Developer - Marcelo Tomio Hama / marcelo.hama@mercadolivre.com
7
+ * Copyright - Copyright(c) MercadoPago [https://www.mercadopago.com]
8
+ * License - https://www.gnu.org/licenses/gpl.html GPL version 2 or higher
9
+ */
10
+
11
+ // This include Mercado Pago library SDK
12
+ require_once dirname( __FILE__ ) . '/sdk/lib/mercadopago.php';
13
+
14
+ /**
15
+ * Summary: Extending from WooCommerce Payment Gateway class.
16
+ * Description: This class implements Mercado Pago ticket payment method.
17
+ * @since 3.0.0
18
+ */
19
+ class WC_WooMercadoPago_TicketGateway extends WC_Payment_Gateway {
20
+
21
+ public function __construct( $is_instance = false ) {
22
+
23
+ // Mercao Pago instance.
24
+ $this->site_data = WC_Woo_Mercado_Pago_Module::get_site_data( true );
25
+ $this->mp = new MP(
26
+ WC_Woo_Mercado_Pago_Module::get_module_version(),
27
+ get_option( '_mp_access_token' )
28
+ );
29
+ $email = ( wp_get_current_user()->ID != 0 ) ? wp_get_current_user()->user_email : null;
30
+ $this->mp->set_email( $email );
31
+
32
+ // WooCommerce fields.
33
+ $this->id = 'woo-mercado-pago-ticket';
34
+ $this->supports = array( 'products', 'refunds' );
35
+ $this->icon = apply_filters(
36
+ 'woocommerce_mercadopago_icon',
37
+ plugins_url( 'assets/images/mercadopago.png', plugin_dir_path( __FILE__ ) )
38
+ );
39
+
40
+ $this->method_title = __( 'Mercado Pago - Ticket', 'woocommerce-mercadopago' );
41
+ $this->method_description = '<img width="200" height="52" src="' .
42
+ plugins_url( 'assets/images/mplogo.png', plugin_dir_path( __FILE__ ) ) .
43
+ '"><br><br><strong>' .
44
+ __( 'We give you the possibility to adapt the payment experience you want to offer 100% in your website, mobile app or anywhere you want. You can build the design that best fits your business model, aiming to maximize conversion.', 'woocommerce-mercadopago' ) .
45
+ '</strong>';
46
+
47
+ //$this->sandbox = get_option( '_mp_sandbox_mode', false );
48
+ $this->sandbox = false;
49
+ $this->mp->sandbox_mode( $this->sandbox );
50
+
51
+ // How checkout is shown.
52
+ $this->title = $this->get_option( 'title' );
53
+ $this->description = $this->get_option( 'description' );
54
+ // How checkout payment behaves.
55
+ $this->coupon_mode = $this->get_option( 'coupon_mode', 'no' );
56
+ $this->stock_reduce_mode = $this->get_option( 'stock_reduce_mode', 'no' );
57
+ $this->gateway_discount = $this->get_option( 'gateway_discount', 0 );
58
+
59
+ // Logging and debug.
60
+ $_mp_debug_mode = get_option( '_mp_debug_mode', '' );
61
+ if ( ! empty ( $_mp_debug_mode ) ) {
62
+ if ( class_exists( 'WC_Logger' ) ) {
63
+ $this->log = new WC_Logger();
64
+ } else {
65
+ $this->log = WC_Woo_Mercado_Pago_Module::woocommerce_instance()->logger();
66
+ }
67
+ }
68
+
69
+ // Render our configuration page and init/load fields.
70
+ $this->init_form_fields();
71
+ $this->init_settings();
72
+
73
+ // Used by IPN to receive IPN incomings.
74
+ add_action(
75
+ 'woocommerce_api_wc_woomercadopago_ticketgateway',
76
+ array( $this, 'check_ipn_response' )
77
+ );
78
+ // Used by IPN to process valid incomings.
79
+ add_action(
80
+ 'valid_mercadopago_ticket_ipn_request',
81
+ array( $this, 'successful_request' )
82
+ );
83
+ // process the cancel order meta box order action
84
+ add_action(
85
+ 'woocommerce_order_action_cancel_order',
86
+ array( $this, 'process_cancel_order_meta_box_actions' )
87
+ );
88
+ // Used in settings page to hook "save settings" action.
89
+ add_action(
90
+ 'woocommerce_update_options_payment_gateways_' . $this->id,
91
+ array( $this, 'custom_process_admin_options' )
92
+ );
93
+ // Scripts for custom checkout.
94
+ add_action(
95
+ 'wp_enqueue_scripts',
96
+ array( $this, 'add_checkout_scripts_ticket' )
97
+ );
98
+ // Apply the discounts.
99
+ add_action(
100
+ 'woocommerce_cart_calculate_fees',
101
+ array( $this, 'add_discount_ticket' ), 10
102
+ );
103
+ // Display discount in payment method title.
104
+ add_filter(
105
+ 'woocommerce_gateway_title',
106
+ array( $this, 'get_payment_method_title_ticket' ), 10, 2
107
+ );
108
+
109
+ if ( ! empty( $this->settings['enabled'] ) && $this->settings['enabled'] == 'yes' ) {
110
+ if ( ! $is_instance ) {
111
+ // Scripts for order configuration.
112
+ add_action(
113
+ 'woocommerce_after_checkout_form',
114
+ array( $this, 'add_mp_settings_script_ticket' )
115
+ );
116
+ // Checkout updates.
117
+ add_action(
118
+ 'woocommerce_thankyou_' . $this->id,
119
+ array( $this, 'update_mp_settings_script_ticket' )
120
+ );
121
+ }
122
+ }
123
+
124
+ }
125
+
126
+ /**
127
+ * Summary: Initialise Gateway Settings Form Fields.
128
+ * Description: Initialise Gateway settings form fields with a customized page.
129
+ */
130
+ public function init_form_fields() {
131
+
132
+ // Show message if credentials are not properly configured.
133
+ $_site_id_v1 = get_option( '_site_id_v1', '' );
134
+ if ( empty( $_site_id_v1 ) ) {
135
+ $this->form_fields = array(
136
+ 'no_credentials_title' => array(
137
+ 'title' => sprintf(
138
+ __( 'It appears that your credentials are not properly configured.<br/>Please, go to %s and configure it.', 'woocommerce-mercadopago' ),
139
+ '<a href="' . esc_url( admin_url( 'admin.php?page=mercado-pago-settings' ) ) . '">' .
140
+ __( 'Mercado Pago Settings', 'woocommerce-mercadopago' ) .
141
+ '</a>'
142
+ ),
143
+ 'type' => 'title'
144
+ ),
145
+ );
146
+ return;
147
+ }
148
+
149
+ // If module is disabled, we do not need to load and process the settings page.
150
+ if ( empty( $this->settings['enabled'] ) || 'no' == $this->settings['enabled'] ) {
151
+ $this->form_fields = array(
152
+ 'enabled' => array(
153
+ 'title' => __( 'Enable/Disable', 'woocommerce-mercadopago' ),
154
+ 'type' => 'checkbox',
155
+ 'label' => __( 'Enable Ticket Payment Method', 'woocommerce-mercadopago' ),
156
+ 'default' => 'no'
157
+ )
158
+ );
159
+ return;
160
+ }
161
+
162
+ // This array draws each UI (text, selector, checkbox, label, etc).
163
+ $this->form_fields = array(
164
+ 'enabled' => array(
165
+ 'title' => __( 'Enable/Disable', 'woocommerce-mercadopago' ),
166
+ 'type' => 'checkbox',
167
+ 'label' => __( 'Enable Ticket Payment Method', 'woocommerce-mercadopago' ),
168
+ 'default' => 'no'
169
+ ),
170
+ 'checkout_options_title' => array(
171
+ 'title' => __( 'Ticket Interface: How checkout is shown', 'woocommerce-mercadopago' ),
172
+ 'type' => 'title'
173
+ ),
174
+ 'title' => array(
175
+ 'title' => __( 'Title', 'woocommerce-mercadopago' ),
176
+ 'type' => 'text',
177
+ 'description' => __( 'Title shown to the client in the ticket.', 'woocommerce-mercadopago' ),
178
+ 'default' => __( 'Mercado Pago - Ticket', 'woocommerce-mercadopago' )
179
+ ),
180
+ 'description' => array(
181
+ 'title' => __( 'Description', 'woocommerce-mercadopago' ),
182
+ 'type' => 'textarea',
183
+ 'description' => __( 'Description shown to the client in the ticket.', 'woocommerce-mercadopago' ),
184
+ 'default' => __( 'Pay with Mercado Pago', 'woocommerce-mercadopago' )
185
+ ),
186
+ 'payment_title' => array(
187
+ 'title' => __( 'Payment Options: How payment options behaves', 'woocommerce-mercadopago' ),
188
+ 'type' => 'title'
189
+ ),
190
+ 'coupon_mode' => array(
191
+ 'title' => __( 'Coupons', 'woocommerce-mercadopago' ),
192
+ 'type' => 'checkbox',
193
+ 'label' => __( 'Enable coupons of discounts', 'woocommerce-mercadopago' ),
194
+ 'default' => 'no',
195
+ 'description' => __( 'If there is a Mercado Pago campaign, allow your store to give discounts to customers.', 'woocommerce-mercadopago' )
196
+ ),
197
+ 'stock_reduce_mode' => array(
198
+ 'title' => __( 'Stock Reduce', 'woocommerce-mercadopago' ),
199
+ 'type' => 'checkbox',
200
+ 'label' => __( 'Reduce Stock in Order Generation', 'woocommerce-mercadopago' ),
201
+ 'default' => 'no',
202
+ 'description' => __( 'Enable this to reduce the stock on order creation. Disable this to reduce <strong>after</strong> the payment approval.', 'woocommerce-mercadopago' )
203
+ ),
204
+ 'gateway_discount' => array(
205
+ 'title' => __( 'Discount by Gateway', 'woocommerce-mercadopago' ),
206
+ 'type' => 'number',
207
+ 'description' => __( 'Give a percentual (0 to 100) discount for your customers if they use this payment gateway.', 'woocommerce-mercadopago' ),
208
+ 'default' => '0'
209
+ )
210
+ );
211
+
212
+ }
213
+
214
+ /**
215
+ * Processes and saves options.
216
+ * If there is an error thrown, will continue to save and validate fields, but will leave the
217
+ * erroring field out.
218
+ * @return bool was anything saved?
219
+ */
220
+ public function custom_process_admin_options() {
221
+ $this->init_settings();
222
+ $post_data = $this->get_post_data();
223
+ foreach ( $this->get_form_fields() as $key => $field ) {
224
+ if ( 'title' !== $this->get_field_type( $field ) ) {
225
+ $value = $this->get_field_value( $key, $field, $post_data );
226
+ if ( $key == 'gateway_discount') {
227
+ if ( ! is_numeric( $value ) || empty ( $value ) ) {
228
+ $this->settings[$key] = 0;
229
+ } else {
230
+ if ( $value < 0 || $value >= 100 || empty ( $value ) ) {
231
+ $this->settings[$key] = 0;
232
+ } else {
233
+ $this->settings[$key] = $value;
234
+ }
235
+ }
236
+ } else {
237
+ $this->settings[$key] = $this->get_field_value( $key, $field, $post_data );
238
+ }
239
+ }
240
+ }
241
+ $_site_id_v1 = get_option( '_site_id_v1', '' );
242
+ $is_test_user = get_option( '_test_user_v1', false );
243
+ if ( ! empty( $_site_id_v1 ) && ! $is_test_user ) {
244
+ // Create MP instance.
245
+ $mp = new MP(
246
+ WC_Woo_Mercado_Pago_Module::get_module_version(),
247
+ get_option( '_mp_access_token' )
248
+ );
249
+ $email = ( wp_get_current_user()->ID != 0 ) ? wp_get_current_user()->user_email : null;
250
+ $mp->set_email( $email );
251
+ // Analytics.
252
+ $infra_data = WC_Woo_Mercado_Pago_Module::get_common_settings();
253
+ $infra_data['checkout_custom_ticket'] = ( $this->settings['enabled'] == 'yes' ? 'true' : 'false' );
254
+ $infra_data['checkout_custom_ticket_coupon'] = ( $this->settings['coupon_mode'] == 'yes' ? 'true' : 'false' );
255
+ $response = $mp->analytics_save_settings( $infra_data );
256
+ }
257
+ // Apply updates.
258
+ return update_option(
259
+ $this->get_option_key(),
260
+ apply_filters( 'woocommerce_settings_api_sanitized_fields_' . $this->id, $this->settings )
261
+ );
262
+ }
263
+
264
+ /**
265
+ * Handles the manual order refunding in server-side.
266
+ */
267
+ public function process_refund( $order_id, $amount = null, $reason = '' ) {
268
+
269
+ $payments = get_post_meta( $order_id, '_Mercado_Pago_Payment_IDs', true );
270
+
271
+ // Validate.
272
+ if ( $this->mp == null || empty( $payments ) ) {
273
+ $this->write_log( __FUNCTION__, 'no payments or credentials invalid' );
274
+ return false;
275
+ }
276
+
277
+ // Processing data about this refund.
278
+ $total_available = 0;
279
+ $payment_structs = array();
280
+ $payment_ids = explode( ', ', $payments );
281
+ foreach ( $payment_ids as $p_id ) {
282
+ $p = get_post_meta( $order_id, 'Mercado Pago - Payment ' . $p_id, true );
283
+ $p = explode( '/', $p );
284
+ $paid_arr = explode( ' ', substr( $p[2], 1, -1 ) );
285
+ $paid = ( (float) $paid_arr[1] );
286
+ $refund_arr = explode( ' ', substr( $p[3], 1, -1 ) );
287
+ $refund = ( (float) $refund_arr[1] );
288
+ $p_struct = array( 'id' => $p_id, 'available_to_refund' => $paid - $refund );
289
+ $total_available += $paid - $refund;
290
+ $payment_structs[] = $p_struct;
291
+ }
292
+ $this->write_log( __FUNCTION__,
293
+ 'refunding ' . $amount . ' because of ' . $reason . ' and payments ' .
294
+ json_encode( $payment_structs, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
295
+ );
296
+
297
+ // Do not allow refund more than available or invalid amounts.
298
+ if ( $amount > $total_available || $amount <= 0 ) {
299
+ return false;
300
+ }
301
+
302
+ // Iteratively refunfind amount, taking in consideration multiple payments.
303
+ $remaining_to_refund = $amount;
304
+ foreach ( $payment_structs as $to_refund ) {
305
+ if ( $remaining_to_refund <= $to_refund['available_to_refund'] ) {
306
+ // We want to refund an amount that is less than the available for this payment, so we
307
+ // can just refund and return.
308
+ $response = $this->mp->partial_refund_payment(
309
+ $to_refund['id'], $remaining_to_refund,
310
+ $reason, $this->invoice_prefix . $order_id
311
+ );
312
+ $message = $response['response']['message'];
313
+ $status = $response['status'];
314
+ $this->write_log( __FUNCTION__,
315
+ 'refund payment of id ' . $p_id . ' => ' .
316
+ ( $status >= 200 && $status < 300 ? 'SUCCESS' : 'FAIL - ' . $message )
317
+ );
318
+ if ( $status >= 200 && $status < 300 ) {
319
+ return true;
320
+ } else {
321
+ return false;
322
+ }
323
+ } elseif ( $to_refund['available_to_refund'] > 0 ) {
324
+ // We want to refund an amount that exceeds the available for this payment, so we
325
+ // totally refund this payment, and try to complete refund in other/next payments.
326
+ $response = $this->mp->partial_refund_payment(
327
+ $to_refund['id'], $to_refund['available_to_refund'],
328
+ $reason, $this->invoice_prefix . $order_id
329
+ );
330
+ $message = $response['response']['message'];
331
+ $status = $response['status'];
332
+ $this->write_log( __FUNCTION__,
333
+ 'refund payment of id ' . $p_id . ' => ' .
334
+ ( $status >= 200 && $status < 300 ? 'SUCCESS' : 'FAIL - ' . $message )
335
+ );
336
+ if ( $status < 200 || $status >= 300 ) {
337
+ return false;
338
+ }
339
+ $remaining_to_refund -= $to_refund['available_to_refund'];
340
+ }
341
+ if ( $remaining_to_refund == 0 )
342
+ return true;
343
+ }
344
+
345
+ // Reaching here means that there we run out of payments, and there is an amount
346
+ // remaining to be refund, which is impossible as it implies refunding more than
347
+ // available on paid amounts.
348
+ return false;
349
+ }
350
+
351
+ /**
352
+ * Handles the manual order cancellation in server-side.
353
+ */
354
+ public function process_cancel_order_meta_box_actions( $order ) {
355
+
356
+ $used_gateway = ( method_exists( $order, 'get_meta' ) ) ?
357
+ $order->get_meta( '_used_gateway' ) :
358
+ get_post_meta( $order->id, '_used_gateway', true );
359
+ $payments = ( method_exists( $order, 'get_meta' ) ) ?
360
+ $order->get_meta( '_Mercado_Pago_Payment_IDs' ) :
361
+ get_post_meta( $order->id, '_Mercado_Pago_Payment_IDs', true );
362
+
363
+ // A watchdog to prevent operations from other gateways.
364
+ if ( $used_gateway != 'WC_WooMercadoPago_TicketGateway' ) {
365
+ return;
366
+ }
367
+
368
+ $this->write_log( __FUNCTION__, 'cancelling payments for ' . $payments );
369
+
370
+ // Canceling the order and all of its payments.
371
+ if ( $this->mp != null && ! empty( $payments ) ) {
372
+ $payment_ids = explode( ', ', $payments );
373
+ foreach ( $payment_ids as $p_id ) {
374
+ $response = $this->mp->cancel_payment( $p_id );
375
+ $message = $response['response']['message'];
376
+ $status = $response['status'];
377
+ $this->write_log( __FUNCTION__,
378
+ 'cancel payment of id ' . $p_id . ' => ' .
379
+ ( $status >= 200 && $status < 300 ? 'SUCCESS' : 'FAIL - ' . $message )
380
+ );
381
+ }
382
+ } else {
383
+ $this->write_log( __FUNCTION__, 'no payments or credentials invalid' );
384
+ }
385
+ }
386
+
387
+ // Write log.
388
+ private function write_log( $function, $message ) {
389
+ $_mp_debug_mode = get_option( '_mp_debug_mode', '' );
390
+ if ( ! empty ( $_mp_debug_mode ) ) {
391
+ $this->log->add(
392
+ $this->id,
393
+ '[' . $function . ']: ' . $message
394
+ );
395
+ }
396
+ }
397
+
398
+ /*
399
+ * ========================================================================
400
+ * CHECKOUT BUSINESS RULES (CLIENT SIDE)
401
+ * ========================================================================
402
+ */
403
+
404
+ public function add_mp_settings_script_ticket() {
405
+ $client_id = WC_Woo_Mercado_Pago_Module::get_client_id( get_option( '_mp_access_token' ) );
406
+ $is_test_user = get_option( '_test_user_v1', false );
407
+ if ( ! empty( $client_id ) && ! $is_test_user ) {
408
+ $w = WC_Woo_Mercado_Pago_Module::woocommerce_instance();
409
+ $available_payments = array();
410
+ $gateways = WC()->payment_gateways->get_available_payment_gateways();
411
+ foreach ( $gateways as $g ) {
412
+ $available_payments[] = $g->id;
413
+ }
414
+ $available_payments = str_replace( '-', '_', implode( ', ', $available_payments ) );
415
+ if ( wp_get_current_user()->ID != 0 ) {
416
+ $logged_user_email = wp_get_current_user()->user_email;
417
+ } else {
418
+ $logged_user_email = null;
419
+ }
420
+ ?>
421
+ <script src="https://secure.mlstatic.com/modules/javascript/analytics.js"></script>
422
+ <script type="text/javascript">
423
+ var MA = ModuleAnalytics;
424
+ MA.setToken( '<?php echo $client_id; ?>' );
425
+ MA.setPlatform( 'WooCommerce' );
426
+ MA.setPlatformVersion( '<?php echo $w->version; ?>' );
427
+ MA.setModuleVersion( '<?php echo WC_Woo_Mercado_Pago_Module::VERSION; ?>' );
428
+ MA.setPayerEmail( '<?php echo ( $logged_user_email != null ? $logged_user_email : "" ); ?>' );
429
+ MA.setUserLogged( <?php echo ( empty( $logged_user_email ) ? 0 : 1 ); ?> );
430
+ MA.setInstalledModules( '<?php echo $available_payments; ?>' );
431
+ MA.post();
432
+ </script>
433
+ <?php
434
+ }
435
+ }
436
+
437
+ public function update_mp_settings_script_ticket( $order_id ) {
438
+ $access_token = get_option( '_mp_access_token' );
439
+ $is_test_user = get_option( '_test_user_v1', false );
440
+ if ( ! empty( $access_token ) && ! $is_test_user ) {
441
+ if ( get_post_meta( $order_id, '_used_gateway', true ) != 'WC_WooMercadoPago_TicketGateway' ) {
442
+ return;
443
+ }
444
+ $this->write_log( __FUNCTION__, 'updating order of ID ' . $order_id );
445
+ echo '<script src="https://secure.mlstatic.com/modules/javascript/analytics.js"></script>
446
+ <script type="text/javascript">
447
+ var MA = ModuleAnalytics;
448
+ MA.setToken( ' . $access_token . ' );
449
+ MA.setPaymentType("ticket");
450
+ MA.setCheckoutType("custom");
451
+ MA.put();
452
+ </script>';
453
+ }
454
+
455
+ $order = wc_get_order( $order_id );
456
+ $used_gateway = ( method_exists( $order, 'get_meta' ) ) ?
457
+ $order->get_meta( '_used_gateway' ) :
458
+ get_post_meta( $order->id, '_used_gateway', true );
459
+ $transaction_details = ( method_exists( $order, 'get_meta' ) ) ?
460
+ $order->get_meta( '_transaction_details_ticket' ) :
461
+ get_post_meta( $order->id, '_transaction_details_ticket', true );
462
+
463
+ // A watchdog to prevent operations from other gateways.
464
+ if ( $used_gateway != 'WC_WooMercadoPago_TicketGateway' || empty( $transaction_details ) ) {
465
+ return;
466
+ }
467
+
468
+ $html = '<p>' .
469
+ __( 'Thank you for your order. Please, pay the ticket to get your order approved.', 'woocommerce-mercadopago' ) .
470
+ '</p>' .
471
+ '<p><iframe src="' . $transaction_details . '" style="width:100%; height:1000px;"></iframe></p>' .
472
+ '<a id="submit-payment" target="_blank" href="' . $transaction_details . '" class="button alt"' .
473
+ ' style="font-size:1.25rem; width:75%; height:48px; line-height:24px; text-align:center;">' .
474
+ __( 'Print the Ticket', 'woocommerce-mercadopago' ) .
475
+ '</a> ';
476
+ $added_text = '<p>' . $html . '</p>';
477
+ echo $added_text;
478
+ }
479
+
480
+ public function add_checkout_scripts_ticket() {
481
+ if ( is_checkout() && $this->is_available() ) {
482
+ if ( ! get_query_var( 'order-received' ) ) {
483
+ wp_enqueue_style(
484
+ 'woocommerce-mercadopago-style',
485
+ plugins_url( 'assets/css/custom_checkout_mercadopago.css', plugin_dir_path( __FILE__ ) )
486
+ );
487
+ wp_enqueue_script(
488
+ 'woocommerce-mercadopago-ticket-js',
489
+ 'https://secure.mlstatic.com/sdk/javascript/v1/mercadopago.js'
490
+ );
491
+ }
492
+ }
493
+ }
494
+
495
+ public function payment_fields() {
496
+
497
+ $amount = $this->get_order_total();
498
+ $logged_user_email = ( wp_get_current_user()->ID != 0 ) ? wp_get_current_user()->user_email : null;
499
+ $customer = isset( $logged_user_email ) ? $this->mp->get_or_create_customer( $logged_user_email ) : null;
500
+ $discount_action_url = get_site_url() . '/index.php/woocommerce-mercadopago/?wc-api=WC_WooMercadoPago_TicketGateway';
501
+ $address = get_user_meta( wp_get_current_user()->ID, 'shipping_address_1', true );
502
+ $address_2 = get_user_meta( wp_get_current_user()->ID, 'shipping_address_2', true );
503
+ $address .= ( ! empty( $address_2 ) ? ' - ' . $address_2 : '' );
504
+ $country = get_user_meta( wp_get_current_user()->ID, 'shipping_country', true );
505
+ $address .= ( ! empty( $country ) ? ' - ' . $country : '' );
506
+
507
+ $currency_ratio = 1;
508
+ $_mp_currency_conversion_v1 = get_option( '_mp_currency_conversion_v1', '' );
509
+ if ( ! empty( $_mp_currency_conversion_v1 ) ) {
510
+ $currency_ratio = WC_Woo_Mercado_Pago_Module::get_conversion_rate( $this->site_data['currency'] );
511
+ $currency_ratio = $currency_ratio > 0 ? $currency_ratio : 1;
512
+ }
513
+
514
+ $parameters = array(
515
+ 'amount' => $amount,
516
+ 'payment_methods' => json_decode( get_option( '_all_payment_methods_ticket', '[]' ), true ),
517
+ // ===
518
+ 'site_id' => get_option( '_site_id_v1' ),
519
+ 'coupon_mode' => isset( $logged_user_email ) ? $this->coupon_mode : 'no',
520
+ 'discount_action_url' => $discount_action_url,
521
+ 'payer_email' => $logged_user_email,
522
+ // ===
523
+ 'images_path' => plugins_url( 'assets/images/', plugin_dir_path( __FILE__ ) ),
524
+ 'currency_ratio' => $currency_ratio,
525
+ 'woocommerce_currency' => get_woocommerce_currency(),
526
+ 'account_currency' => $this->site_data['currency'],
527
+ // ===
528
+ 'febraban' => ( wp_get_current_user()->ID != 0 ) ?
529
+ array(
530
+ 'firstname' => wp_get_current_user()->user_firstname,
531
+ 'lastname' => wp_get_current_user()->user_lastname,
532
+ 'docNumber' => '',
533
+ 'address' => $address,
534
+ 'number' => '',
535
+ 'city' => get_user_meta( wp_get_current_user()->ID, 'shipping_city', true ),
536
+ 'state' => get_user_meta( wp_get_current_user()->ID, 'shipping_state', true ),
537
+ 'zipcode' => get_user_meta( wp_get_current_user()->ID, 'shipping_postcode', true )
538
+ ) :
539
+ array(
540
+ 'firstname' => '', 'lastname' => '', 'docNumber' => '', 'address' => '',
541
+ 'number' => '', 'city' => '', 'state' => '', 'zipcode' => ''
542
+ ),
543
+ 'path_to_javascript' => plugins_url( 'assets/js/ticket.js', plugin_dir_path( __FILE__ ) )
544
+ );
545
+
546
+ wc_get_template(
547
+ 'ticket/ticket-form.php',
548
+ $parameters,
549
+ 'woo/mercado/pago/module/',
550
+ WC_Woo_Mercado_Pago_Module::get_templates_path()
551
+ );
552
+ }
553
+
554
+ /**
555
+ * Summary: Handle the payment and processing the order.
556
+ * Description: This function is called after we click on [place_order] button, and each field is
557
+ * passed to this function through $_POST variable.
558
+ * @return an array containing the result of the processment and the URL to redirect.
559
+ */
560
+ public function process_payment( $order_id ) {
561
+
562
+ if ( ! isset( $_POST['mercadopago_ticket'] ) ) {
563
+ return;
564
+ }
565
+ $ticket_checkout = $_POST['mercadopago_ticket'];
566
+
567
+ $order = wc_get_order( $order_id );
568
+ if ( method_exists( $order, 'update_meta_data' ) ) {
569
+ $order->update_meta_data( '_used_gateway', 'WC_WooMercadoPago_TicketGateway' );
570
+ $order->save();
571
+ } else {
572
+ update_post_meta( $order_id, '_used_gateway', 'WC_WooMercadoPago_TicketGateway' );
573
+ }
574
+
575
+ // Check for brazilian FEBRABAN rules.
576
+ if ( get_option( '_site_id_v1' ) == 'MLB' ) {
577
+ if ( ! isset( $ticket_checkout['firstname'] ) || empty( $ticket_checkout['firstname'] ) ||
578
+ ! isset( $ticket_checkout['lastname'] ) || empty( $ticket_checkout['lastname'] ) ||
579
+ ! isset( $ticket_checkout['docNumber'] ) || empty( $ticket_checkout['docNumber'] ) ||
580
+ (strlen( $ticket_checkout['docNumber'] ) != 14 && strlen( $ticket_checkout['docNumber'] ) != 18) ||
581
+ ! isset( $ticket_checkout['address'] ) || empty( $ticket_checkout['address'] ) ||
582
+ ! isset( $ticket_checkout['number'] ) || empty( $ticket_checkout['number'] ) ||
583
+ ! isset( $ticket_checkout['city'] ) || empty( $ticket_checkout['city'] ) ||
584
+ ! isset( $ticket_checkout['state'] ) || empty( $ticket_checkout['state'] ) ||
585
+ ! isset( $ticket_checkout['zipcode'] ) || empty( $ticket_checkout['zipcode'] ) ) {
586
+ wc_add_notice(
587
+ '<p>' .
588
+ __( 'A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?', 'woocommerce-mercadopago' ) .
589
+ '</p>',
590
+ 'error'
591
+ );
592
+ return array(
593
+ 'result' => 'fail',
594
+ 'redirect' => '',
595
+ );
596
+ }
597
+ }
598
+
599
+ if ( isset( $ticket_checkout['amount'] ) && ! empty( $ticket_checkout['amount'] ) &&
600
+ isset( $ticket_checkout['paymentMethodId'] ) && ! empty( $ticket_checkout['paymentMethodId'] ) ) {
601
+ $response = $this->create_url( $order, $ticket_checkout );
602
+ if ( array_key_exists( 'status', $response ) ) {
603
+ if ( $response['status'] == 'pending' ) {
604
+ if ( $response['status_detail'] == 'pending_waiting_payment' ) {
605
+ WC()->cart->empty_cart();
606
+ if ( $this->stock_reduce_mode == 'yes' ) {
607
+ $order->reduce_order_stock();
608
+ }
609
+ // WooCommerce 3.0 or later.
610
+ if ( method_exists( $order, 'update_meta_data' ) ) {
611
+ $order->update_meta_data( '_transaction_details_ticket', $response['transaction_details']['external_resource_url'] );
612
+ $order->save();
613
+ } else {
614
+ update_post_meta(
615
+ $order->id,
616
+ '_transaction_details_ticket',
617
+ $response['transaction_details']['external_resource_url']
618
+ );
619
+ }
620
+ // Shows some info in checkout page.
621
+ $order->add_order_note(
622
+ 'Mercado Pago: ' .
623
+ __( 'Customer haven\'t paid yet.', 'woocommerce-mercadopago' )
624
+ );
625
+ $order->add_order_note(
626
+ 'Mercado Pago: ' .
627
+ __( 'To reprint the ticket click ', 'woocommerce-mercadopago' ) .
628
+ '<a target="_blank" href="' .
629
+ $response['transaction_details']['external_resource_url'] . '">' .
630
+ __( 'here', 'woocommerce-mercadopago' ) .
631
+ '</a>', 1, false
632
+ );
633
+ return array(
634
+ 'result' => 'success',
635
+ 'redirect' => $order->get_checkout_order_received_url()
636
+ );
637
+ }
638
+ }
639
+ } else {
640
+ // Process when fields are imcomplete.
641
+ wc_add_notice(
642
+ '<p>' .
643
+ __( 'A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?', 'woocommerce-mercadopago' ) . ' MERCADO PAGO: ' . $response .
644
+ '</p>',
645
+ 'error'
646
+ );
647
+ return array(
648
+ 'result' => 'fail',
649
+ 'redirect' => '',
650
+ );
651
+ }
652
+ } else {
653
+ // Process when fields are imcomplete.
654
+ wc_add_notice(
655
+ '<p>' .
656
+ __( 'A problem was occurred when processing your payment. Please, try again.', 'woocommerce-mercadopago' ) .
657
+ '</p>',
658
+ 'error'
659
+ );
660
+ return array(
661
+ 'result' => 'fail',
662
+ 'redirect' => '',
663
+ );
664
+ }
665
+
666
+ }
667
+
668
+ /**
669
+ * Summary: Build Mercado Pago preference.
670
+ * Description: Create Mercado Pago preference and get init_point URL based in the order options
671
+ * from the cart.
672
+ * @return the preference object.
673
+ */
674
+ private function build_payment_preference( $order, $ticket_checkout ) {
675
+
676
+ // A string to register items (workaround to deal with API problem that shows only first item).
677
+ $items = array();
678
+ $order_total = 0;
679
+ $list_of_items = array();
680
+
681
+ // Find currency rate.
682
+ $currency_ratio = 1;
683
+ $_mp_currency_conversion_v1 = get_option( '_mp_currency_conversion_v1', '' );
684
+ if ( ! empty( $_mp_currency_conversion_v1 ) ) {
685
+ $currency_ratio = WC_Woo_Mercado_Pago_Module::get_conversion_rate( $this->site_data['currency'] );
686
+ $currency_ratio = $currency_ratio > 0 ? $currency_ratio : 1;
687
+ }
688
+
689
+ // Here we build the array that contains ordered items, from customer cart.
690
+ if ( sizeof( $order->get_items() ) > 0 ) {
691
+ foreach ( $order->get_items() as $item ) {
692
+ if ( $item['qty'] ) {
693
+ $product = new WC_product( $item['product_id'] );
694
+ $product_title = method_exists( $product, 'get_description' ) ?
695
+ $product->get_name() :
696
+ $product->post->post_title;
697
+ $product_content = method_exists( $product, 'get_description' ) ?
698
+ $product->get_description() :
699
+ $product->post->post_content;
700
+ // Calculates line amount and discounts.
701
+ $line_amount = $item['line_total'] + $item['line_tax'];
702
+ $discount_by_gateway = (float) $line_amount * ( $this->gateway_discount / 100 );
703
+ $order_total += ($line_amount - $discount_by_gateway);
704
+ // Add the item.
705
+ array_push( $list_of_items, $product_title . ' x ' . $item['qty'] );
706
+ array_push( $items, array(
707
+ 'id' => $item['product_id'],
708
+ 'title' => html_entity_decode( $product_title ) . ' x ' . $item['qty'],
709
+ 'description' => sanitize_file_name( html_entity_decode(
710
+ strlen( $product_content ) > 230 ?
711
+ substr( $product_content, 0, 230 ) . '...' :
712
+ $product_content
713
+ ) ),
714
+ 'picture_url' => sizeof( $order->get_items() > 1 ) ?
715
+ plugins_url( 'assets/images/cart.png', plugin_dir_path( __FILE__ ) ) :
716
+ wp_get_attachment_url( $product->get_image_id()
717
+ ),
718
+ 'category_id' => get_option( '_mp_category_name', 'others' ),
719
+ 'quantity' => 1,
720
+ 'unit_price' => ( $this->site_data['currency'] == 'COP' || $this->site_data['currency'] == 'CLP' ) ?
721
+ floor( ( $line_amount - $discount_by_gateway ) * $currency_ratio ) :
722
+ floor( ( $line_amount - $discount_by_gateway ) * $currency_ratio * 100 ) / 100
723
+ ) );
724
+ }
725
+ }
726
+ }
727
+
728
+ // Creates the shipment cost structure.
729
+ $ship_cost = ($order->get_total_shipping() + $order->get_shipping_tax());
730
+ if ( $ship_cost > 0 ) {
731
+ $order_total += $ship_cost;
732
+ $item = array(
733
+ 'title' => method_exists( $order, 'get_id' ) ?
734
+ $order->get_shipping_method() :
735
+ $order->shipping_method,
736
+ 'description' => __( 'Shipping service used by store', 'woocommerce-mercadopago' ),
737
+ 'category_id' => get_option( '_mp_category_name', 'others' ),
738
+ 'quantity' => 1,
739
+ 'unit_price' => ( $this->site_data['currency'] == 'COP' || $this->site_data['currency'] == 'CLP' ) ?
740
+ floor( $ship_cost * $currency_ratio ) :
741
+ floor( $ship_cost * $currency_ratio * 100 ) / 100
742
+ );
743
+ $items[] = $item;
744
+ }
745
+
746
+ // Discounts features.
747
+ if ( isset( $ticket_checkout['discount'] ) && ! empty( $ticket_checkout['discount'] ) &&
748
+ isset( $ticket_checkout['coupon_code'] ) && ! empty( $ticket_checkout['coupon_code'] ) &&
749
+ $ticket_checkout['discount'] > 0 && WC()->session->chosen_payment_method == 'woo-mercado-pago-ticket' ) {
750
+ $item = array(
751
+ 'title' => __( 'Discount provided by store', 'woocommerce-mercadopago' ),
752
+ 'description' => __( 'Discount provided by store', 'woocommerce-mercadopago' ),
753
+ 'category_id' => get_option( '_mp_category_name', 'others' ),
754
+ 'quantity' => 1,
755
+ 'unit_price' => ( $this->site_data['currency'] == 'COP' || $this->site_data['currency'] == 'CLP' ) ?
756
+ -floor( $ticket_checkout['discount'] * $currency_ratio ) :
757
+ -floor( $ticket_checkout['discount'] * $currency_ratio * 100 ) / 100
758
+ );
759
+ $items[] = $item;
760
+ }
761
+
762
+ // Build additional information from the customer data.
763
+ $payer_additional_info = array(
764
+ 'first_name' => ( method_exists( $order, 'get_id' ) ?
765
+ html_entity_decode( $order->get_billing_first_name() ) :
766
+ html_entity_decode( $order->billing_first_name ) ),
767
+ 'last_name' => ( method_exists( $order, 'get_id' ) ?
768
+ html_entity_decode( $order->get_billing_last_name() ) :
769
+ html_entity_decode( $order->billing_last_name ) ),
770
+ //'registration_date' =>
771
+ 'phone' => array(
772
+ //'area_code' =>
773
+ 'number' => ( method_exists( $order, 'get_id' ) ?
774
+ $order->get_billing_phone() :
775
+ $order->billing_phone )
776
+ ),
777
+ 'address' => array(
778
+ 'zip_code' => ( method_exists( $order, 'get_id' ) ?
779
+ $order->get_billing_postcode() :
780
+ $order->billing_postcode
781
+ ),
782
+ //'street_number' =>
783
+ 'street_name' => html_entity_decode( method_exists( $order, 'get_id' ) ?
784
+ $order->get_billing_address_1() . ' / ' .
785
+ $order->get_billing_city() . ' ' .
786
+ $order->get_billing_state() . ' ' .
787
+ $order->get_billing_country() :
788
+ $order->billing_address_1 . ' / ' .
789
+ $order->billing_city . ' ' .
790
+ $order->billing_state . ' ' .
791
+ $order->billing_country
792
+ )
793
+ )
794
+ );
795
+
796
+ // Create the shipment address information set.
797
+ $shipments = array(
798
+ 'receiver_address' => array(
799
+ 'zip_code' => method_exists( $order, 'get_id' ) ?
800
+ $order->get_shipping_postcode() :
801
+ $order->shipping_postcode,
802
+ //'street_number' =>
803
+ 'street_name' => html_entity_decode( method_exists( $order, 'get_id' ) ?
804
+ $order->get_shipping_address_1() . ' ' .
805
+ $order->get_shipping_address_2() . ' ' .
806
+ $order->get_shipping_city() . ' ' .
807
+ $order->get_shipping_state() . ' ' .
808
+ $order->get_shipping_country() :
809
+ $order->shipping_address_1 . ' ' .
810
+ $order->shipping_address_2 . ' ' .
811
+ $order->shipping_city . ' ' .
812
+ $order->shipping_state . ' ' .
813
+ $order->shipping_country
814
+ ),
815
+ //'floor' =>
816
+ 'apartment' => method_exists( $order, 'get_id' ) ?
817
+ $order->get_shipping_address_2() :
818
+ $order->shipping_address_2
819
+ )
820
+ );
821
+
822
+ // The payment preference.
823
+ $preferences = array(
824
+ 'transaction_amount' => ( $this->site_data['currency'] == 'COP' || $this->site_data['currency'] == 'CLP' ) ?
825
+ floor( $order_total * $currency_ratio ) :
826
+ floor( $order_total * $currency_ratio * 100 ) / 100,
827
+ 'description' => implode( ', ', $list_of_items ),
828
+ 'payment_method_id' => $ticket_checkout['paymentMethodId'],
829
+ 'payer' => array(
830
+ 'email' => method_exists( $order, 'get_id' ) ?
831
+ $order->get_billing_email() :
832
+ $order->billing_email
833
+ ),
834
+ 'external_reference' => get_option( '_mp_store_identificator', 'WC-' ) .
835
+ ( method_exists( $order, 'get_id' ) ? $order->get_id() : $order->id ),
836
+ 'statement_descriptor' => get_option( '_mp_statement_descriptor', 'Mercado Pago' ),
837
+ 'binary_mode' => ( $this->binary_mode == 'yes' ),
838
+ 'additional_info' => array(
839
+ 'items' => $items,
840
+ 'payer' => $payer_additional_info,
841
+ 'shipments' => $shipments
842
+ )
843
+ );
844
+
845
+ // FEBRABAN rules.
846
+ if ( $this->site_data['currency'] == 'BRL' ) {
847
+ $preferences['payer']['first_name'] = $ticket_checkout['firstname'];
848
+ $preferences['payer']['last_name'] = strlen( $ticket_checkout['docNumber'] ) == 14 ? $ticket_checkout['lastname'] : $ticket_checkout['firstname'];
849
+ $preferences['payer']['identification']['type'] = strlen( $ticket_checkout['docNumber'] ) == 14 ? 'CPF' : 'CNPJ';
850
+ $preferences['payer']['identification']['number'] = $ticket_checkout['docNumber'];
851
+ $preferences['payer']['address']['street_name'] = $ticket_checkout['address'];
852
+ $preferences['payer']['address']['street_number'] = $ticket_checkout['number'];
853
+ $preferences['payer']['address']['neighborhood'] = $ticket_checkout['city'];
854
+ $preferences['payer']['address']['city'] = $ticket_checkout['city'];
855
+ $preferences['payer']['address']['federal_unit'] = $ticket_checkout['state'];
856
+ $preferences['payer']['address']['zip_code'] = $ticket_checkout['zipcode'];
857
+ }
858
+
859
+ // Do not set IPN url if it is a localhost.
860
+ if ( ! strrpos( get_site_url(), 'localhost' ) ) {
861
+ $preferences['notification_url'] = WC()->api_request_url( 'WC_WooMercadoPago_TicketGateway' );
862
+ }
863
+
864
+ // Discounts features.
865
+ if ( isset( $ticket_checkout['discount'] ) && ! empty( $ticket_checkout['discount'] ) &&
866
+ isset( $ticket_checkout['coupon_code'] ) && ! empty( $ticket_checkout['coupon_code'] ) &&
867
+ $ticket_checkout['discount'] > 0 && WC()->session->chosen_payment_method == 'woo-mercado-pago-ticket' ) {
868
+ $preferences['campaign_id'] = (int) $ticket_checkout['campaign_id'];
869
+ $preferences['coupon_amount'] = ( $this->site_data['currency'] == 'COP' || $this->site_data['currency'] == 'CLP' ) ?
870
+ floor( $ticket_checkout['discount'] * $currency_ratio ) :
871
+ floor( $ticket_checkout['discount'] * $currency_ratio * 100 ) / 100;
872
+ $preferences['coupon_code'] = strtoupper( $ticket_checkout['coupon_code'] );
873
+ }
874
+
875
+ // Set sponsor ID.
876
+ $_test_user_v1 = get_option( '_test_user_v1', false );
877
+ if ( ! $_test_user_v1 ) {
878
+ $preferences['sponsor_id'] = $this->site_data['sponsor_id'];
879
+ }
880
+
881
+ // Debug/log this preference.
882
+ $this->write_log(
883
+ __FUNCTION__,
884
+ 'returning just created [$preferences] structure: ' .
885
+ json_encode( $preferences, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
886
+ );
887
+
888
+ return $preferences;
889
+ }
890
+
891
+ protected function create_url( $order, $ticket_checkout ) {
892
+ // Creates the order parameters by checking the cart configuration.
893
+ $preferences = $this->build_payment_preference( $order, $ticket_checkout );
894
+ // Checks for sandbox mode.
895
+ $this->mp->sandbox_mode( $this->sandbox );
896
+ // Create order preferences with Mercado Pago API request.
897
+ try {
898
+ $checkout_info = $this->mp->create_payment( json_encode( $preferences ) );
899
+ if ( $checkout_info['status'] < 200 || $checkout_info['status'] >= 300 ) {
900
+ // Mercado Pago throwed an error.
901
+ $this->write_log(
902
+ __FUNCTION__,
903
+ 'mercado pago gave error, payment creation failed with error: ' . $checkout_info['response']['message']
904
+ );
905
+ return $checkout_info['response']['message'];
906
+ } elseif ( is_wp_error( $checkout_info ) ) {
907
+ // WordPress throwed an error.
908
+ $this->write_log(
909
+ __FUNCTION__,
910
+ 'wordpress gave error, payment creation failed with error: ' . $checkout_info['response']['message']
911
+ );
912
+ return $checkout_info['response']['message'];
913
+ } else {
914
+ // Obtain the URL.
915
+ $this->write_log(
916
+ __FUNCTION__,
917
+ 'payment link generated with success from mercado pago, with structure as follow: ' .
918
+ json_encode( $checkout_info, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
919
+ );
920
+ // TODO: Verify sandbox availability.
921
+ //if ( 'yes' == $this->sandbox ) {
922
+ // return $checkout_info['response']['sandbox_init_point'];
923
+ //} else {
924
+ return $checkout_info['response'];
925
+ //}
926
+ }
927
+ } catch ( MercadoPagoException $ex ) {
928
+ // Something went wrong with the payment creation.
929
+ $this->write_log(
930
+ __FUNCTION__,
931
+ 'payment creation failed with exception: ' .
932
+ json_encode( $ex, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
933
+ );
934
+ return $ex->getMessage();
935
+ }
936
+ }
937
+
938
+ /**
939
+ * Summary: Receive post data and applies a discount based in the received values.
940
+ * Description: Receive post data and applies a discount based in the received values.
941
+ */
942
+ public function add_discount_ticket() {
943
+
944
+ if ( ! isset( $_POST['mercadopago_ticket'] ) ) {
945
+ return;
946
+ }
947
+
948
+ if ( is_admin() && ! defined( 'DOING_AJAX' ) || is_cart() ) {
949
+ return;
950
+ }
951
+
952
+ $ticket_checkout = $_POST['mercadopago_ticket'];
953
+ if ( isset( $ticket_checkout['discount'] ) && ! empty( $ticket_checkout['discount'] ) &&
954
+ isset( $ticket_checkout['coupon_code'] ) && ! empty( $ticket_checkout['coupon_code'] ) &&
955
+ $ticket_checkout['discount'] > 0 && WC()->session->chosen_payment_method == 'woo-mercado-pago-ticket' ) {
956
+
957
+ $this->write_log( __FUNCTION__, 'ticket checkout trying to apply discount...' );
958
+
959
+ $value = ( $this->site_data['currency'] == 'COP' || $this->site_data['currency'] == 'CLP' ) ?
960
+ floor( $ticket_checkout['discount'] / $ticket_checkout['currency_ratio'] ) :
961
+ floor( $ticket_checkout['discount'] / $ticket_checkout['currency_ratio'] * 100 ) / 100;
962
+ global $woocommerce;
963
+ if ( apply_filters(
964
+ 'wc_mercadopagoticket_module_apply_discount',
965
+ 0 < $value, $woocommerce->cart )
966
+ ) {
967
+ $woocommerce->cart->add_fee( sprintf(
968
+ __( 'Discount for %s coupon', 'woocommerce-mercadopago' ),
969
+ esc_attr( $ticket_checkout['campaign']
970
+ ) ), ( $value * -1 ), false
971
+ );
972
+ }
973
+ }
974
+
975
+ }
976
+
977
+ // Display the discount in payment method title.
978
+ public function get_payment_method_title_ticket( $title, $id ) {
979
+
980
+ if ( ! is_checkout() && ! ( defined( 'DOING_AJAX' ) && DOING_AJAX ) ) {
981
+ return $title;
982
+ }
983
+
984
+ if ( $title != $this->title || $this->gateway_discount == 0 ) {
985
+ return $title;
986
+ }
987
+
988
+ $total = (float) WC()->cart->subtotal;
989
+ if ( is_numeric( $this->gateway_discount ) ) {
990
+ if ( $this->gateway_discount >= 0 && $this->gateway_discount < 100 ) {
991
+ $price_percent = $this->gateway_discount / 100;
992
+ if ( $price_percent > 0 ) {
993
+ $title .= ' (' . __( 'Discount of', 'woocommerce-mercadopago' ) . ' ' .
994
+ strip_tags( wc_price( $total * $price_percent ) ) . ')';
995
+ }
996
+ }
997
+ }
998
+
999
+ return $title;
1000
+ }
1001
+
1002
+ /*
1003
+ * ========================================================================
1004
+ * AUXILIARY AND FEEDBACK METHODS (SERVER SIDE)
1005
+ * ========================================================================
1006
+ */
1007
+
1008
+ // Called automatically by WooCommerce, verify if Module is available to use.
1009
+ public function is_available() {
1010
+ if ( ! did_action( 'wp_loaded' ) ) {
1011
+ return false;
1012
+ }
1013
+ global $woocommerce;
1014
+ $w_cart = $woocommerce->cart;
1015
+ // If we do not have SSL in production environment, we are not allowed to process.
1016
+ $_mp_debug_mode = get_option( '_mp_debug_mode', '' );
1017
+ if ( empty( $_SERVER['HTTPS'] ) || $_SERVER['HTTPS'] == 'off' ) {
1018
+ if ( empty ( $_mp_debug_mode ) ) {
1019
+ return false;
1020
+ }
1021
+ }
1022
+ // Check for recurrent product checkout.
1023
+ if ( isset( $w_cart ) ) {
1024
+ if ( WC_Woo_Mercado_Pago_Module::is_subscription( $w_cart->get_cart() ) ) {
1025
+ return false;
1026
+ }
1027
+ }
1028
+ // Check if there are available payments with ticket.
1029
+ $payment_methods = json_decode( get_option( '_all_payment_methods_ticket', '[]' ), true );
1030
+ if ( count( $payment_methods ) == 0 ) {
1031
+ return false;
1032
+ }
1033
+ // Check if this gateway is enabled and well configured.
1034
+ $_mp_public_key = get_option( '_mp_public_key' );
1035
+ $_mp_access_token = get_option( '_mp_access_token' );
1036
+ $_site_id_v1 = get_option( '_site_id_v1' );
1037
+ $available = ( 'yes' == $this->settings['enabled'] ) &&
1038
+ ! empty( $_mp_public_key ) &&
1039
+ ! empty( $_mp_access_token ) &&
1040
+ ! empty( $_site_id_v1 );
1041
+ return $available;
1042
+ }
1043
+
1044
+ /*
1045
+ * ========================================================================
1046
+ * IPN MECHANICS (SERVER SIDE)
1047
+ * ========================================================================
1048
+ */
1049
+
1050
+ /**
1051
+ * Summary: This call checks any incoming notifications from Mercado Pago server.
1052
+ * Description: This call checks any incoming notifications from Mercado Pago server.
1053
+ */
1054
+ public function check_ipn_response() {
1055
+ @ob_clean();
1056
+ $this->write_log(
1057
+ __FUNCTION__,
1058
+ 'received _get content: ' .
1059
+ json_encode( $_GET, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
1060
+ );
1061
+ // Setup sandbox mode.
1062
+ $this->mp->sandbox_mode( $this->sandbox );
1063
+ // Over here, $_GET should come with this JSON structure:
1064
+ // {
1065
+ // "topic": <string>,
1066
+ // "id": <string>
1067
+ // }
1068
+ // If not, the IPN is corrupted in some way.
1069
+ $data = $_GET;
1070
+ if ( isset( $data['coupon_id'] ) && ! empty( $data['coupon_id'] ) ) {
1071
+ // Process coupon evaluations.
1072
+ if ( isset( $data['payer'] ) && ! empty( $data['payer'] ) ) {
1073
+ $response = $this->mp->check_discount_campaigns( $data['amount'], $data['payer'], $data['coupon_id'] );
1074
+ header( 'HTTP/1.1 200 OK' );
1075
+ header( 'Content-Type: application/json' );
1076
+ echo json_encode( $response );
1077
+ } else {
1078
+ $obj = new stdClass();
1079
+ $obj->status = 404;
1080
+ $obj->response = array(
1081
+ 'message' => __( 'Please, inform your email in billing address to use this feature', 'woocommerce-mercadopago' ),
1082
+ 'error' => 'payer_not_found',
1083
+ 'status' => 404,
1084
+ 'cause' => array()
1085
+ );
1086
+ header( 'HTTP/1.1 200 OK' );
1087
+ header( 'Content-Type: application/json' );
1088
+ echo json_encode( $obj );
1089
+ }
1090
+ exit( 0 );
1091
+ } else if ( ! isset( $data['data_id'] ) || ! isset( $data['type'] ) ) {
1092
+ // Received IPN call from v0.
1093
+ $this->write_log(
1094
+ __FUNCTION__,
1095
+ 'data_id or type not set: ' .
1096
+ json_encode( $data, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
1097
+ );
1098
+ if ( ! isset( $data['id'] ) || ! isset( $data['topic'] ) ) {
1099
+ $this->write_log(
1100
+ __FUNCTION__,
1101
+ 'Mercado Pago Request failure: ' .
1102
+ json_encode( $data, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
1103
+ );
1104
+ wp_die( __( 'Mercado Pago Request Failure', 'woocommerce-mercadopago' ) );
1105
+ } else {
1106
+ // At least, check if its a v0 ipn.
1107
+ header( 'HTTP/1.1 200 OK' );
1108
+ }
1109
+ } else {
1110
+ // Needed informations are present, so start process then.
1111
+ try {
1112
+ if ( $data['type'] == 'payment' ) {
1113
+ $access_token = array( 'access_token' => $this->mp->get_access_token() );
1114
+ $payment_info = $this->mp->get( '/v1/payments/' . $data['data_id'], $access_token, false );
1115
+ if ( ! is_wp_error( $payment_info ) && ( $payment_info['status'] == 200 || $payment_info['status'] == 201 ) ) {
1116
+ if ( $payment_info['response'] ) {
1117
+ header( 'HTTP/1.1 200 OK' );
1118
+ do_action( 'valid_mercadopago_ticket_ipn_request', $payment_info['response'] );
1119
+ }
1120
+ } else {
1121
+ $this->write_log(
1122
+ __FUNCTION__,
1123
+ 'error when processing received data: ' .
1124
+ json_encode( $payment_info, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
1125
+ );
1126
+ }
1127
+ }
1128
+ } catch ( MercadoPagoException $ex ) {
1129
+ $this->write_log(
1130
+ __FUNCTION__,
1131
+ 'MercadoPagoException: ' .
1132
+ json_encode( $ex, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
1133
+ );
1134
+ }
1135
+ }
1136
+ }
1137
+
1138
+ /**
1139
+ * Summary: Properly handles each case of notification, based in payment status.
1140
+ * Description: Properly handles each case of notification, based in payment status.
1141
+ */
1142
+ public function successful_request( $data ) {
1143
+ $this->write_log( __FUNCTION__, 'starting to process ipn update...' );
1144
+ // Get the order and check its presence.
1145
+ $order_key = $data['external_reference'];
1146
+ if ( empty( $order_key ) ) {
1147
+ return;
1148
+ }
1149
+ $invoice_prefix = get_option( '_mp_store_identificator', 'WC-' );
1150
+ $id = (int) str_replace( $invoice_prefix, '', $order_key );
1151
+ $order = wc_get_order( $id );
1152
+ // Check if order exists.
1153
+ if ( ! $order ) {
1154
+ return;
1155
+ }
1156
+ // WooCommerce 3.0 or later.
1157
+ $order_id = ( method_exists( $order, 'get_id' ) ? $order->get_id() : $order->id );
1158
+ // Check if we have the correct order.
1159
+ if ( $order_id !== $id ) {
1160
+ return;
1161
+ }
1162
+ $this->write_log(
1163
+ __FUNCTION__,
1164
+ 'updating metadata and status with data: ' .
1165
+ json_encode( $data, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE )
1166
+ );
1167
+ // Here, we process the status... this is the business rules!
1168
+ // Reference: https://www.mercadopago.com.br/developers/en/api-docs/basic-checkout/ipn/payment-status/
1169
+ $status = isset( $data['status'] ) ? $data['status'] : 'pending';
1170
+ $total_paid = isset( $data['transaction_details']['total_paid_amount'] ) ? $data['transaction_details']['total_paid_amount'] : 0.00;
1171
+ $total_refund = isset( $data['transaction_amount_refunded'] ) ? $data['transaction_amount_refunded'] : 0.00;
1172
+ // WooCommerce 3.0 or later.
1173
+ if ( method_exists( $order, 'update_meta_data' ) ) {
1174
+ // Updates the type of gateway.
1175
+ $order->update_meta_data( '_used_gateway', 'WC_WooMercadoPago_TicketGateway' );
1176
+ if ( ! empty( $data['payer']['email'] ) ) {
1177
+ $order->update_meta_data( __( 'Payer email', 'woocommerce-mercadopago' ), $data['payer']['email'] );
1178
+ }
1179
+ if ( ! empty( $data['payment_type_id'] ) ) {
1180
+ $order->update_meta_data( __( 'Payment type', 'woocommerce-mercadopago' ), $data['payment_type_id'] );
1181
+ }
1182
+ $order->update_meta_data(
1183
+ 'Mercado Pago - Payment ' . $data['id'],
1184
+ '[Date ' . date( 'Y-m-d H:i:s', strtotime( $data['date_created'] ) ) .
1185
+ ']/[Amount ' . $data['transaction_amount'] .
1186
+ ']/[Paid ' . $total_paid .
1187
+ ']/[Refund ' . $total_refund . ']'
1188
+ );
1189
+ $order->update_meta_data( '_Mercado_Pago_Payment_IDs', $data['id'] );
1190
+ $order->save();
1191
+ } else {
1192
+ // Updates the type of gateway.
1193
+ update_post_meta( $order_id, '_used_gateway', 'WC_WooMercadoPago_TicketGateway' );
1194
+ if ( ! empty( $data['payer']['email'] ) ) {
1195
+ update_post_meta( $order_id, __( 'Payer email', 'woocommerce-mercadopago' ), $data['payer']['email'] );
1196
+ }
1197
+ if ( ! empty( $data['payment_type_id'] ) ) {
1198
+ update_post_meta( $order_id, __( 'Payment type', 'woocommerce-mercadopago' ), $data['payment_type_id'] );
1199
+ }
1200
+ update_post_meta(
1201
+ $order_id,
1202
+ 'Mercado Pago - Payment ' . $data['id'],
1203
+ '[Date ' . date( 'Y-m-d H:i:s', strtotime( $data['date_created'] ) ) .
1204
+ ']/[Amount ' . $data['transaction_amount'] .
1205
+ ']/[Paid ' . $total_paid .
1206
+ ']/[Refund ' . $total_refund . ']'
1207
+ );
1208
+ update_post_meta( $order_id, '_Mercado_Pago_Payment_IDs', $data['id'] );
1209
+ }
1210
+ // Switch the status and update in WooCommerce.
1211
+ $this->write_log(
1212
+ __FUNCTION__,
1213
+ 'Changing order status to: ' .
1214
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( str_replace( '_', '', $status ) )
1215
+ );
1216
+ switch ( $status ) {
1217
+ case 'approved':
1218
+ $order->add_order_note(
1219
+ 'Mercado Pago: ' . __( 'Payment approved.', 'woocommerce-mercadopago' )
1220
+ );
1221
+ if ( $this->stock_reduce_mode == 'no' ) {
1222
+ $order->payment_complete();
1223
+ }
1224
+ $order->update_status(
1225
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'approved' )
1226
+ );
1227
+ break;
1228
+ case 'pending':
1229
+ $order->update_status(
1230
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'pending' )
1231
+ );
1232
+ // decrease stock if not yet decreased and order not exists.
1233
+ $notes = $order->get_customer_order_notes();
1234
+ $has_note = false;
1235
+ if ( sizeof( $notes ) > 1 ) {
1236
+ $has_note = true;
1237
+ break;
1238
+ }
1239
+ if ( ! $has_note ) {
1240
+ $order->add_order_note(
1241
+ 'Mercado Pago: ' . __( 'Waiting for the ticket payment.', 'woocommerce-mercadopago' )
1242
+ );
1243
+ $order->add_order_note(
1244
+ 'Mercado Pago: ' . __( 'Waiting for the ticket payment.', 'woocommerce-mercadopago' ),
1245
+ 1, false
1246
+ );
1247
+ }
1248
+ break;
1249
+ case 'in_process':
1250
+ $order->update_status(
1251
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'on-hold' ),
1252
+ 'Mercado Pago: ' . __( 'Payment under review.', 'woocommerce-mercadopago' )
1253
+ );
1254
+ break;
1255
+ case 'rejected':
1256
+ $order->update_status(
1257
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'failed' ),
1258
+ 'Mercado Pago: ' . __( 'The payment was refused. The customer can try again.', 'woocommerce-mercadopago' )
1259
+ );
1260
+ break;
1261
+ case 'refunded':
1262
+ $order->update_status(
1263
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'refunded' ),
1264
+ 'Mercado Pago: ' . __( 'The payment was refunded to the customer.', 'woocommerce-mercadopago' )
1265
+ );
1266
+ break;
1267
+ case 'cancelled':
1268
+ $this->process_cancel_order_meta_box_actions( $order );
1269
+ $order->update_status(
1270
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'cancelled' ),
1271
+ 'Mercado Pago: ' . __( 'The payment was cancelled.', 'woocommerce-mercadopago' )
1272
+ );
1273
+ break;
1274
+ case 'in_mediation':
1275
+ $order->update_status(
1276
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'inmediation' )
1277
+ );
1278
+ $order->add_order_note(
1279
+ 'Mercado Pago: ' . __( 'The payment is under mediation or it was charged-back.', 'woocommerce-mercadopago' )
1280
+ );
1281
+ break;
1282
+ case 'charged-back':
1283
+ $order->update_status(
1284
+ WC_Woo_Mercado_Pago_Module::get_wc_status_for_mp_status( 'chargedback' )
1285
+ );
1286
+ $order->add_order_note(
1287
+ 'Mercado Pago: ' . __( 'The payment is under mediation or it was charged-back.', 'woocommerce-mercadopago' )
1288
+ );
1289
+ break;
1290
+ default:
1291
+ break;
1292
+ }
1293
+ }
1294
+
1295
+ }
1296
+
1297
+ new WC_WooMercadoPago_TicketGateway( true );
includes/admin/class-wc-mercadoenvios-admin-orders.php ADDED
@@ -0,0 +1,94 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Part of Woo Mercado Pago Module
5
+ * Author - Mercado Pago
6
+ * Developer - Marcelo Tomio Hama / marcelo.hama@mercadolivre.com, Gabriel Matsuoka / gabriel.matsuoka@mercadopago.com
7
+ * Copyright - Copyright(c) MercadoPago [https://www.mercadopago.com]
8
+ * License - https://www.gnu.org/licenses/gpl.html GPL version 2 or higher
9
+ */
10
+
11
+ if ( ! defined( 'ABSPATH' ) ) {
12
+ exit;
13
+ }
14
+
15
+ include_once dirname( __FILE__ ) . '/../sdk/lib/mercadopago.php';
16
+
17
+ /**
18
+ * MercadoEnvios orders.
19
+ */
20
+ class WC_MercadoEnvios_Admin_Orders {
21
+
22
+ /**
23
+ * Initialize the order actions.
24
+ */
25
+ public function __construct() {
26
+ add_action( 'add_meta_boxes', array( $this, 'register_metabox' ) );
27
+ }
28
+
29
+ /**
30
+ * Register tracking code metabox.
31
+ */
32
+ public function register_metabox() {
33
+ global $post;
34
+ $order = wc_get_order( $post->ID );
35
+ $shipment_id = ( method_exists( $order, 'get_meta' ) ) ?
36
+ $order->get_meta( '_mercadoenvios_shipment_id' ) :
37
+ get_post_meta( $post->ID, '_mercadoenvios_shipment_id', true );
38
+ if ( isset( $shipment_id ) && ! empty( $shipment_id ) ) {
39
+ add_meta_box(
40
+ 'wc_mercadoenvios',
41
+ 'Mercado Envios',
42
+ array( $this, 'metabox_content' ),
43
+ 'shop_order',
44
+ 'side',
45
+ 'high'
46
+ );
47
+ }
48
+ }
49
+
50
+ /**
51
+ * Tracking code metabox content.
52
+ *
53
+ * @param WC_Post $post Post data.
54
+ */
55
+ public function metabox_content( $post ) {
56
+
57
+ $order = wc_get_order( $post->ID );
58
+ $shipment_id = ( method_exists( $order, 'get_meta' ) ) ?
59
+ $order->get_meta( '_mercadoenvios_shipment_id' ) :
60
+ get_post_meta( $post->ID, '_mercadoenvios_shipment_id', true );
61
+ $status = ( method_exists( $order, 'get_meta' ) ) ?
62
+ $order->get_meta( '_mercadoenvios_status' ) :
63
+ get_post_meta( $post->ID, '_mercadoenvios_status', true );
64
+ $tracking_number = ( method_exists( $order, 'get_meta' ) ) ?
65
+ $order->get_meta( '_mercadoenvios_tracking_number' ) :
66
+ get_post_meta( $post->ID, '_mercadoenvios_tracking_number', true );
67
+
68
+ if ( isset( $status ) && $status != '' && $status != 'pending' ) {
69
+ echo '<label for="mercadoenvios_tracking_code">' . esc_html__( 'Tracking code:', 'woocommerce-mercadopago' ) . '</label><br />';
70
+ echo '<input type="text" id="mercadoenvios_tracking_code" name="mercadoenvios_tracking_code" value="' .
71
+ esc_attr( $tracking_number ) . '" style="width:100%; text-align:center;" />';
72
+ // Check exist shipment_id
73
+ if ( isset( $shipment_id ) && $shipment_id != '' ) {
74
+ $client_id = get_option( '_mp_client_id', '' );
75
+ $client_secret = get_option( '_mp_client_secret', '' );
76
+ $mp = new MP(
77
+ WC_Woo_Mercado_Pago_Module::get_module_version(),
78
+ $client_id,
79
+ $client_secret
80
+ );
81
+ $email = ( wp_get_current_user()->ID != 0 ) ? wp_get_current_user()->user_email : null;
82
+ $mp->set_email( $email );
83
+ echo '<br /><label for="mercadoenvios_tracking_number">' . esc_html__( 'Tag:', 'woocommerce-mercadopago' ) . '</label><br />';
84
+ echo '<a href="https://api.mercadolibre.com/shipment_labels?shipment_ids=' . esc_attr( $shipment_id ) .
85
+ '&savePdf=Y&access_token=' . $mp->get_access_token() .
86
+ '" style="width:100%; text-align:center;" class="button" target="_blank">' . esc_html__( 'Print', 'woocommerce-mercadopago' ) . '</a>';
87
+ }
88
+ } else {
89
+ echo '<label for="mercadoenvios_tracking_number">' . esc_html__( 'Shipping is pending', 'woocommerce-mercadopago' ) . '</label><br />';
90
+ }
91
+ }
92
+ }
93
+
94
+ new WC_MercadoEnvios_Admin_Orders();
includes/class-wc-product-mp_recurrent.php ADDED
@@ -0,0 +1,210 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Part of Woo Mercado Pago Module
5
+ * Author - Mercado Pago
6
+ * Developer - Marcelo Tomio Hama / marcelo.hama@mercadolivre.com
7
+ * Copyright - Copyright(c) MercadoPago [https://www.mercadopago.com]
8
+ * License - https://www.gnu.org/licenses/gpl.html GPL version 2 or higher
9
+ */
10
+
11
+ if ( ! defined( 'ABSPATH' ) ) {
12
+ exit; // Exit if accessed directly
13
+ }
14
+
15
+ // Build and handle a window for refunding and canceling
16
+ add_action( 'add_meta_boxes', 'add_meta_boxes' );
17
+ function add_meta_boxes() {
18
+ // Get order.
19
+ global $post;
20
+ $order = wc_get_order( $post->ID );
21
+ if ( ! isset( $order ) || $order == false ) {
22
+ return;
23
+ }
24
+ $order_id = trim( str_replace( '#', '', $order->get_order_number() ) );
25
+ // Get payment information for the order.
26
+ $payments = get_post_meta( $order_id, '_Mercado_Pago_Sub_Payment_IDs', true );
27
+ if ( isset( $payments ) && ! empty( $payments ) ) {
28
+ add_meta_box(
29
+ 'woocommerce-mp-order-action-refund',
30
+ __( 'Mercado Pago Subscription', 'woocommerce-mercadopago' ),
31
+ 'mp_subscription_order_refund_cancel_box',
32
+ 'shop_order',
33
+ 'side',
34
+ 'default'
35
+ );
36
+ }
37
+ }
38
+
39
+ function mp_subscription_order_refund_cancel_box() {
40
+ // Get order.
41
+ global $post;
42
+ $order = wc_get_order( $post->ID );
43
+ if ( ! isset( $order ) || $order == false ) {
44
+ return;
45
+ }
46
+ $order_id = trim( str_replace( '#', '', $order->get_order_number() ) );
47
+ // Get payment information for the order.
48
+ $payments = get_post_meta( $order_id, '_Mercado_Pago_Sub_Payment_IDs', true );
49
+ $options = '';
50
+ if ( ! empty( $payments ) ) {
51
+ $payment_structs = array();
52
+ $payment_ids = explode( ', ', $payments );
53
+ foreach ( $payment_ids as $p_id ) {
54
+ $options .= '<option value="' . $p_id . '">' . $p_id . '</option>';
55
+ }
56
+ }
57
+ if ( $options == '' ) {
58
+ return;
59
+ }
60
+ // Build javascript for the window.
61
+ $domain = get_site_url() . '/index.php' . '/woocommerce-mercadopago/';
62
+ $domain .= '?wc-api=WC_WooMercadoPago_SubscriptionGateway';
63
+ echo WC_Woo_Mercado_Pago_Module::generate_refund_cancel_subscription(
64
+ $domain,
65
+ __( 'Operation successfully completed.', 'woocommerce-mercadopago' ),
66
+ __( 'This operation could not be completed.', 'woocommerce-mercadopago' ),
67
+ $options,
68
+ __( 'Payment ID:', 'woocommerce-mercadopago' ),
69
+ __( 'Amount:', 'woocommerce-mercadopago' ),
70
+ __( 'Refund Payment', 'woocommerce-mercadopago' ),
71
+ __( 'Cancel Payment', 'woocommerce-mercadopago' )
72
+ );
73
+ }
74
+
75
+ // Makes the recurrent product individually sold
76
+ add_filter( 'woocommerce_is_sold_individually', 'default_no_quantities', 10, 2 );
77
+ function default_no_quantities( $individually, $product ) {
78
+ $product_id = ( method_exists( $product, 'get_id' ) ) ?
79
+ $product->get_id() :
80
+ $product->id;
81
+ $is_recurrent = get_post_meta( $product_id, '_mp_recurring_is_recurrent', true );
82
+ if ( $is_recurrent == 'yes' ) {
83
+ $individually = true;
84
+ }
85
+ return $individually;
86
+ }
87
+
88
+ // Prevent selling recurrent products together with other products
89
+ add_action( 'woocommerce_check_cart_items', 'check_recurrent_product_singularity' );
90
+ function check_recurrent_product_singularity() {
91
+ global $woocommerce;
92
+ $w_cart = $woocommerce->cart;
93
+ if ( ! isset( $w_cart ) ) {
94
+ return;
95
+ }
96
+ $items = $w_cart->get_cart();
97
+ if ( sizeof( $items ) > 1 ) {
98
+ foreach ( $items as $cart_item_key => $cart_item ) {
99
+ $is_recurrent = get_post_meta( $cart_item['product_id'], '_mp_recurring_is_recurrent', true );
100
+ if ( $is_recurrent == 'yes' ) {
101
+ wc_add_notice(
102
+ __( 'A recurrent product is a signature that should be bought isolated in your cart. Please, create separated orders.', 'woocommerce-mercadopago' ),
103
+ 'error'
104
+ );
105
+ }
106
+ }
107
+ }
108
+ }
109
+
110
+ // Validate product date availability.
111
+ add_filter( 'woocommerce_is_purchasable', 'filter_woocommerce_is_purchasable', 10, 2 );
112
+ function filter_woocommerce_is_purchasable( $purchasable, $product ) {
113
+ $product_id = ( method_exists( $product, 'get_id' ) ) ?
114
+ $product->get_id() :
115
+ $product->id;
116
+ // skip this check if product is not a subscription
117
+ $is_recurrent = get_post_meta( $product_id, '_mp_recurring_is_recurrent', true );
118
+ if ( $is_recurrent !== 'yes' ) {
119
+ return $purchasable;
120
+ }
121
+ $today_date = date( 'Y-m-d' );
122
+ $end_date = get_post_meta( $product_id, '_mp_recurring_end_date', true );
123
+ // If there is no date, we should just return the original value.
124
+ if ( ! isset( $end_date ) || empty( $end_date ) ) {
125
+ return $purchasable;
126
+ }
127
+ // If end date had passed, this product is no longer available.
128
+ $days_diff = ( strtotime( $today_date ) - strtotime( $end_date ) ) / 86400;
129
+ if ( $days_diff >= 0 ) {
130
+ return false;
131
+ }
132
+ return $purchasable;
133
+ }
134
+
135
+ // Add the settings under 'general' sub-menu.
136
+ add_action( 'woocommerce_product_options_general_product_data', 'mp_add_recurrent_settings' );
137
+ function mp_add_recurrent_settings() {
138
+ wp_nonce_field( 'woocommerce_save_data', 'woocommerce_meta_nonce' );
139
+ echo '<div class="options_group show_if_simple">';
140
+ woocommerce_wp_checkbox(
141
+ array(
142
+ 'id' => '_mp_recurring_is_recurrent',
143
+ 'label' => __( 'Recurrent Product', 'woocommerce-mercadopago' ),
144
+ 'description' => __( 'Make this product a subscription.', 'woocommerce-mercadopago' )
145
+ )
146
+ );
147
+ woocommerce_wp_text_input(
148
+ array(
149
+ 'id' => '_mp_recurring_frequency',
150
+ 'label' => __( 'Frequency', 'woocommerce-mercadopago' ),
151
+ 'placeholder' => '1',
152
+ 'desc_tip' => 'true',
153
+ 'description' => __( 'Amount of time (in days or months) for the execution of the next payment.', 'woocommerce-mercadopago' ),
154
+ 'type' => 'number'
155
+ )
156
+ );
157
+ woocommerce_wp_select(
158
+ array(
159
+ 'id' => '_mp_recurring_frequency_type',
160
+ 'label' => __( 'Frequency type', 'woocommerce-mercadopago' ),
161
+ 'desc_tip' => 'true',
162
+ 'description' => __( 'Indicates the period of time.', 'woocommerce-mercadopago' ),
163
+ 'options' => array(
164
+ 'days' => __( 'Days', 'woocommerce-mercadopago' ),
165
+ 'months' => __( 'Months', 'woocommerce-mercadopago' )
166
+ )
167
+ )
168
+ );
169
+ woocommerce_wp_text_input(
170
+ array(
171
+ 'id' => '_mp_recurring_end_date',
172
+ 'label' => __( 'End date', 'woocommerce-mercadopago' ),
173
+ 'placeholder' => _x( 'YYYY-MM-DD', 'placeholder', 'woocommerce-mercadopago' ),
174
+ 'desc_tip' => 'true',
175
+ 'description' => __( 'Deadline to generate new charges. Defaults to never if blank.', 'woocommerce-mercadopago' ),
176
+ 'class' => 'date-picker',
177
+ 'custom_attributes' => array( 'pattern' => "[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|1[0-9]|2[0-9]|3[01])" )
178
+ )
179
+ );
180
+ echo '</div>';
181
+ }
182
+
183
+ // Persists the options saved in product metadata.
184
+ add_action( 'woocommerce_process_product_meta', 'mp_save_recurrent_settings' );
185
+ function mp_save_recurrent_settings( $post_id ) {
186
+ $_mp_recurring_is_recurrent = $_POST['_mp_recurring_is_recurrent'];
187
+ if ( ! empty( $_mp_recurring_is_recurrent ) ) {
188
+ update_post_meta( $post_id, '_mp_recurring_is_recurrent', esc_attr( $_mp_recurring_is_recurrent ) );
189
+ } else {
190
+ update_post_meta( $post_id, '_mp_recurring_is_recurrent', esc_attr( null ) );
191
+ }
192
+ $_mp_recurring_frequency = $_POST['_mp_recurring_frequency'];
193
+ if ( ! empty( $_mp_recurring_frequency ) ) {
194
+ update_post_meta( $post_id, '_mp_recurring_frequency', esc_attr( $_mp_recurring_frequency ) );
195
+ } else {
196
+ update_post_meta( $post_id, '_mp_recurring_frequency', esc_attr( 1 ) );
197
+ }
198
+ $_mp_recurring_frequency_type = $_POST['_mp_recurring_frequency_type'];
199
+ if ( ! empty( $_mp_recurring_frequency_type ) ) {
200
+ update_post_meta( $post_id, '_mp_recurring_frequency_type', esc_attr( $_mp_recurring_frequency_type ) );
201
+ } else {
202
+ update_post_meta( $post_id, '_mp_recurring_frequency_type', esc_attr( 'days' ) );
203
+ }
204
+ $_mp_recurring_end_date = $_POST['_mp_recurring_end_date'];
205
+ if ( ! empty( $_mp_recurring_end_date ) ) {
206
+ update_post_meta( $post_id, '_mp_recurring_end_date', esc_attr( $_mp_recurring_end_date ) );
207
+ } else {
208
+ update_post_meta( $post_id, '_mp_recurring_end_date', esc_attr( null ) );
209
+ }
210
+ }
{mercadopago → includes}/sdk/lib/cacert.pem RENAMED
File without changes
includes/sdk/lib/mercadopago.php ADDED
@@ -0,0 +1,1245 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Part of Woo Mercado Pago Module - MercadoPago Integration Library, Access MercadoPago for payments integration
5
+ * Author - Mercado Pago
6
+ * Developer - hcasatti, Marcelo Tomio Hama / marcelo.hama@mercadolivre.com
7
+ * Copyright - Copyright(c) MercadoPago [https://www.mercadopago.com]
8
+ * License - https://www.gnu.org/licenses/gpl.html GPL version 2 or higher
9
+ */
10
+
11
+ $GLOBALS['LIB_LOCATION'] = dirname( __FILE__ );
12
+
13
+ class MP {
14
+
15
+ private $version = '3.0.5';
16
+ private $client_id;
17
+ private $client_secret;
18
+ private $ll_access_token;
19
+ private $sandbox = FALSE;
20
+
21
+ /**
22
+ * Summary: Constructor.
23
+ * Description: Build an object with module version and credentials.
24
+ */
25
+ function __construct() {
26
+
27
+ $i = func_num_args();
28
+
29
+ if ( $i > 3 || $i < 2 ) {
30
+ throw new MercadoPagoException(
31
+ 'Invalid arguments. Use CLIENT_ID and CLIENT SECRET, or ACCESS_TOKEN'
32
+ );
33
+ }
34
+
35
+ if ( $i == 2 ) {
36
+ $this->version = func_get_arg( 0 );
37
+ $this->ll_access_token = func_get_arg( 1 );
38
+ }
39
+
40
+ if ( $i == 3 ) {
41
+ $this->version = func_get_arg( 0 );
42
+ $this->client_id = func_get_arg( 1 );
43
+ $this->client_secret = func_get_arg( 2 );
44
+ }
45
+
46
+ }
47
+
48
+ public function set_email( $email ) {
49
+ MPRestClient::set_email( $email );
50
+ MeliRestClient::set_email( $email );
51
+ }
52
+
53
+ public function sandbox_mode( $enable = NULL ) {
54
+ if ( ! is_null( $enable ) ) {
55
+ $this->sandbox = $enable === TRUE;
56
+ }
57
+ return $this->sandbox;
58
+ }
59
+
60
+ /**
61
+ * Summary: Get Access Token for API use.
62
+ * Description: Get Access Token for API use.
63
+ * @return a string that identifies the access token.
64
+ */
65
+ public function get_access_token() {
66
+
67
+ if ( isset( $this->ll_access_token ) && ! is_null( $this->ll_access_token ) ) {
68
+ return $this->ll_access_token;
69
+ }
70
+
71
+ $app_client_values = array(
72
+ 'client_id' => $this->client_id,
73
+ 'client_secret' => $this->client_secret,
74
+ 'grant_type' => 'client_credentials'
75
+ );
76
+
77
+ $access_data = MPRestClient::post(
78
+ array(
79
+ 'uri' => '/oauth/token',
80
+ 'data' => $app_client_values,
81
+ 'headers' => array(
82
+ 'content-type' => 'application/x-www-form-urlencoded'
83
+ )
84
+ ),
85
+ $this->version
86
+ );
87
+
88
+ if ( $access_data['status'] != 200 ) {
89
+ return null;
90
+ }
91
+
92
+ $access_data = $access_data['response'];
93
+ return $access_data['access_token'];
94
+
95
+ }
96
+
97
+ /**
98
+ * Summary: Search for a payment given its id.
99
+ * Description: Search for a payment given its id.
100
+ * @param string $id
101
+ * @return array( json )
102
+ */
103
+ public function search_paymentV1( $id ) {
104
+
105
+ $request = array(
106
+ 'uri' => '/v1/payments/' . $id,
107
+ 'params' => array(
108
+ 'access_token' => $this->get_access_token()
109
+ )
110
+ );
111
+
112
+ $payment = MPRestClient::get( $request, $this->version );
113
+ return $payment;
114
+
115
+ }
116
+
117
+ //=== CUSTOMER CARDS FUNCTIONS ===
118
+
119
+ /**
120
+ * Summary: Trigger API to find a card owner and create him if dont find.
121
+ * Description: Trigger API to find a card owner and create him if dont find.
122
+ * @param string $payer_email
123
+ * @return array( json )
124
+ */
125
+ public function get_or_create_customer( $payer_email ) {
126
+
127
+ $customer = $this->search_customer( $payer_email );
128
+
129
+ if ( $customer['status'] == 200 && $customer['response']['paging']['total'] > 0 ) {
130
+ $customer = $customer['response']['results'][0];
131
+ } else {
132
+ $resp = $this->create_customer( $payer_email );
133
+ $customer = $resp['response'];
134
+ }
135
+
136
+ return $customer;
137
+
138
+ }
139
+
140
+ /**
141
+ * Summary: Create a card owner.
142
+ * Description: Create a card owner.
143
+ * @param string $payer_email
144
+ * @return array( json )
145
+ */
146
+ public function create_customer( $email ) {
147
+
148
+ $request = array(
149
+ 'uri' => '/v1/customers',
150
+ 'params' => array(
151
+ 'access_token' => $this->get_access_token()
152
+ ),
153
+ 'data' => array(
154
+ 'email' => $email
155
+ )
156
+ );
157
+
158
+ $customer = MPRestClient::post( $request, $this->version );
159
+ return $customer;
160
+
161
+ }
162
+
163
+ /**
164
+ * Summary: Try to find a card owner.
165
+ * Description: Try to find a card owner.
166
+ * @param string $payer_email
167
+ * @return array( json )
168
+ */
169
+ public function search_customer( $email ) {
170
+
171
+ $request = array(
172
+ 'uri' => '/v1/customers/search',
173
+ 'params' => array(
174
+ 'access_token' => $this->get_access_token(),
175
+ 'email' => $email
176
+ )
177
+ );
178
+
179
+ $customer = MPRestClient::get( $request, $this->version );
180
+ return $customer;
181
+
182
+ }
183
+
184
+ /**
185
+ * Summary: Given a customer, create a card for him.
186
+ * Description: Given a customer, create a card for him.
187
+ * @param string $customer_id
188
+ * @param string $token
189
+ * @param string $payment_method_id
190
+ * @param string $issuer_id
191
+ * @return array( json )
192
+ */
193
+ public function create_card_in_customer( $customer_id, $token, $payment_method_id = null,
194
+ $issuer_id = null ) {
195
+
196
+ $request = array(
197
+ 'uri' => '/v1/customers/' . $customer_id . '/cards',
198
+ 'params' => array(
199
+ 'access_token' => $this->get_access_token()
200
+ ),
201
+ 'data' => array(
202
+ 'token' => $token,
203
+ 'issuer_id' => $issuer_id,
204
+ 'payment_method_id' => $payment_method_id
205
+ )
206
+ );
207
+
208
+ $card = MPRestClient::post( $request, $this->version );
209
+ return $card;
210
+
211
+ }
212
+
213
+ /**
214
+ * Summary: Given a customer, find all of his cards.
215
+ * Description: Given a customer, find all of his cards.
216
+ * @param string $customer_id
217
+ * @param string $token
218
+ * @return array( json )
219
+ */
220
+ public function get_all_customer_cards( $customer_id, $token ) {
221
+
222
+ $request = array(
223
+ 'uri' => '/v1/customers/' . $customer_id . '/cards',
224
+ 'params' => array(
225
+ 'access_token' => $this->get_access_token()
226
+ )
227
+ );
228
+
229
+ $cards = MPRestClient::get( $request, $this->version );
230
+ return $cards;
231
+
232
+ }
233
+
234
+ //=== COUPOM AND DISCOUNTS FUNCTIONS ===
235
+
236
+ /**
237
+ * Summary: Check for discounts for a combination of amount, payer and coupm code.
238
+ * Description: Check for discounts for a combination of amount, payer and coupm code.
239
+ * @param string $transaction_amount
240
+ * @param string $payer_email
241
+ * @param string $coupon_code
242
+ * @return array( json )
243
+ */
244
+ public function check_discount_campaigns( $transaction_amount, $payer_email, $coupon_code ) {
245
+
246
+ $request = array(
247
+ 'uri' => '/discount_campaigns',
248
+ 'params' => array(
249
+ 'access_token' => $this->get_access_token(),
250
+ 'transaction_amount' => $transaction_amount,
251
+ 'payer_email' => $payer_email,
252
+ 'coupon_code' => $coupon_code
253
+ )
254
+ );
255
+
256
+ $discount_info = MPRestClient::get( $request, $this->version );
257
+ return $discount_info;
258
+
259
+ }
260
+
261
+ //=== ACCOUNT SETTINGS FUNCTIONS ===
262
+
263
+ /**
264
+ * Summary: Check the status of a account regarding its option to use two cards for pay.
265
+ * Description: Check the status of a account regarding its option to use two cards for pay.
266
+ * @return array( json )
267
+ */
268
+ public function check_two_cards() {
269
+
270
+ $request = array(
271
+ 'uri' => '/account/settings?access_token=' . $this->get_access_token()
272
+ );
273
+
274
+ $two_cards_info = MPRestClient::get( $request, $this->version );
275
+ if ( $two_cards_info['status'] == 200 )
276
+ return $two_cards_info['response']['two_cards'];
277
+ else {
278
+ return 'inactive';
279
+ }
280
+
281
+ }
282
+
283
+ /**
284
+ * Summary: Set paymennts with two cards for the merchant.
285
+ * Description: Set paymennts with two cards for the merchant.
286
+ * @param string $mode ( should be 'active' or 'inactive' string )
287
+ * @return array( json )
288
+ */
289
+ public function set_two_cards_mode( $mode ) {
290
+
291
+ $request = array(
292
+ 'uri' => '/account/settings?access_token=' . $this->get_access_token(),
293
+ 'data' => array(
294
+ 'two_cards' => $mode
295
+ ),
296
+ 'headers' => array(
297
+ 'content-type' => 'application/json'
298
+ )
299
+ );
300
+
301
+ $two_cards_info = MPRestClient::put( $request, $this->version );
302
+ return $two_cards_info;
303
+
304
+ }
305
+
306
+ //=== CHECKOUT AUXILIARY FUNCTIONS ===
307
+
308
+ /**
309
+ * Summary: Get information for specific payment.
310
+ * Description: Get information for specific payment.
311
+ * @param int $id
312
+ * @return array( json )
313
+ */
314
+ public function get_payment_info( $id ) {
315
+
316
+ $uri_prefix = $this->sandbox ? '/sandbox' : '';
317
+
318
+ $request = array(
319
+ 'uri' => $uri_prefix.'/collections/notifications/{$id}',
320
+ 'params' => array(
321
+ 'access_token' => $this->get_access_token()
322
+ )
323
+ );
324
+
325
+ $payment_info = MPRestClient::get( $request, $this->version );
326
+ return $payment_info;
327
+
328
+ }
329
+
330
+ /**
331
+ * Summary: Search payments according to filters, with pagination.
332
+ * Description: Search payments according to filters, with pagination.
333
+ * @param array $filters
334
+ * @param int $offset
335
+ * @param int $limit
336
+ * @return array( json )
337
+ */
338
+ public function search_payment( $filters, $offset = 0, $limit = 0 ) {
339
+
340
+ $filters['offset'] = $offset;
341
+ $filters['limit'] = $limit;
342
+
343
+ $uri_prefix = $this->sandbox ? '/sandbox' : '';
344
+
345
+ $request = array(
346
+ 'uri' => $uri_prefix . '/collections/search',
347
+ 'params' => array_merge ( $filters, array(
348
+ 'access_token' => $this->get_access_token()
349
+ ) )
350
+ );
351
+
352
+ $collection_result = MPRestClient::get( $request, $this->version );
353
+ return $collection_result;
354
+
355
+ }
356
+
357
+ /**
358
+ * Summary: Get information for specific authorized payment.
359
+ * Description: Get information for specific authorized payment.
360
+ * @param id
361
+ * @return array( json )
362
+ */
363
+ public function get_authorized_payment( $id ) {
364
+
365
+ $request = array(
366
+ 'uri' => '/authorized_payments/{$id}',
367
+ 'params' => array(
368
+ 'access_token' => $this->get_access_token()
369
+ )
370
+ );
371
+
372
+ $authorized_payment_info = MPRestClient::get( $request, $this->version );
373
+ return $authorized_payment_info;
374
+
375
+ }
376
+
377
+ /**
378
+ * Summary: Create a checkout preference.
379
+ * Description: Create a checkout preference.
380
+ * @param array $preference
381
+ * @return array( json )
382
+ */
383
+ public function create_preference( $preference ) {
384
+
385
+ $request = array(
386
+ 'uri' => '/checkout/preferences',
387
+ 'params' => array(
388
+ 'access_token' => $this->get_access_token()
389
+ ),
390
+ 'headers' => array(
391
+ 'user-agent' => 'platform:desktop,type:woocommerce,so:' . $this->version
392
+ ),
393
+ 'data' => $preference
394
+ );
395
+
396
+ $preference_result = MPRestClient::post( $request, $this->version );
397
+ return $preference_result;
398
+
399
+ }
400
+
401
+ /**
402
+ * Summary: Update a checkout preference.
403
+ * Description: Update a checkout preference.
404
+ * @param string $id
405
+ * @param array $preference
406
+ * @return array( json )
407
+ */
408
+ public function update_preference( $id, $preference ) {
409
+
410
+ $request = array(
411
+ 'uri' => '/checkout/preferences/{$id}',
412
+ 'params' => array(
413
+ 'access_token' => $this->get_access_token()
414
+ ),
415
+ 'data' => $preference
416
+ );
417
+
418
+ $preference_result = MPRestClient::put( $request, $this->version );
419
+ return $preference_result;
420
+
421
+ }
422
+
423
+ /**
424
+ * Summary: Get a checkout preference.
425
+ * Description: Get a checkout preference.
426
+ * @param string $id
427
+ * @return array( json )
428
+ */
429
+ public function get_preference( $id ) {
430
+
431
+ $request = array(
432
+ 'uri' => '/checkout/preferences/{$id}',
433
+ 'params' => array(
434
+ 'access_token' => $this->get_access_token()
435
+ )
436
+ );
437
+
438
+ $preference_result = MPRestClient::get( $request, $this->version );
439
+ return $preference_result;
440
+
441
+ }
442
+
443
+ /**
444
+ * Summary: Create a checkout preference.
445
+ * Description: Create a checkout preference.
446
+ * @param array $preference
447
+ * @return array( json )
448
+ */
449
+ public function create_payment( $preference ) {
450
+
451
+ $request = array(
452
+ 'uri' => '/v1/payments',
453
+ 'params' => array(
454
+ 'access_token' => $this->get_access_token()
455
+ ),
456
+ 'headers' => array(
457
+ 'X-Tracking-Id' => 'platform:v1-whitelabel,type:woocommerce,so:' . $this->version
458
+ ),
459
+ 'data' => $preference
460
+ );
461
+
462
+ $payment = MPRestClient::post( $request, $this->version );
463
+ return $payment;
464
+ }
465
+
466
+ /**
467
+ * Summary: Create a preapproval payment.
468
+ * Description: Create a preapproval payment.
469
+ * @param array $preapproval_payment
470
+ * @return array( json )
471
+ */
472
+ public function create_preapproval_payment( $preapproval_payment ) {
473
+
474
+ $request = array(
475
+ 'uri' => '/preapproval',
476
+ 'params' => array(
477
+ 'access_token' => $this->get_access_token()
478
+ ),
479
+ 'data' => $preapproval_payment
480
+ );
481
+
482
+ $preapproval_payment_result = MPRestClient::post( $request, $this->version );
483
+ return $preapproval_payment_result;
484
+
485
+ }
486
+
487
+ /**
488
+ * Summary: Get a preapproval payment.
489
+ * Description: Get a preapproval payment.
490
+ * @param string $id
491
+ * @return array( json )
492
+ */
493
+ public function get_preapproval_payment( $id ) {
494
+
495
+ $request = array(
496
+ 'uri' => '/preapproval/' . $id,
497
+ 'params' => array(
498
+ 'access_token' => $this->get_access_token()
499
+ )
500
+ );
501
+
502
+ $preapproval_payment_result = MPRestClient::get( $request, $this->version );
503
+ return $preapproval_payment_result;
504
+
505
+ }
506
+
507
+ /**
508
+ * Summary: Update a preapproval payment.
509
+ * Description: Update a preapproval payment.
510
+ * @param string $preapproval_payment, $id
511
+ * @return array( json )
512
+ */
513
+ public function update_preapproval_payment( $id, $preapproval_payment ) {
514
+
515
+ $request = array(
516
+ 'uri' => '/preapproval/' . $id,
517
+ 'params' => array(
518
+ 'access_token' => $this->get_access_token()
519
+ ),
520
+ 'data' => $preapproval_payment
521
+ );
522
+
523
+ $preapproval_payment_result = MPRestClient::put( $request, $this->version );
524
+ return $preapproval_payment_result;
525
+
526
+ }
527
+
528
+ /**
529
+ * Summary: Cancel preapproval payment.
530
+ * Description: Cancel preapproval payment.
531
+ * @param int $id
532
+ * @return array( json )
533
+ */
534
+ public function cancel_preapproval_payment( $id ) {
535
+
536
+ $request = array(
537
+ 'uri' => '/preapproval/' . $id,
538
+ 'params' => array(
539
+ 'access_token' => $this->get_access_token()
540
+ ),
541
+ 'data' => array(
542
+ 'status' => 'cancelled'
543
+ )
544
+ );
545
+
546
+ $response = MPRestClient::put( $request, $this->version );
547
+ return $response;
548
+
549
+ }
550
+
551
+ //=== REFUND AND CANCELING FLOW FUNCTIONS ===
552
+
553
+ /**
554
+ * Summary: Refund accredited payment.
555
+ * Description: Refund accredited payment.
556
+ * @param int $id
557
+ * @return array( json )
558
+ */
559
+ public function refund_payment( $id ) {
560
+
561
+ $request = array(
562
+ 'uri' => '/collections/' . $id,
563
+ 'params' => array(
564
+ 'access_token' => $this->get_access_token()
565
+ ),
566
+ 'data' => '{"status":"refunded"}'
567
+ );
568
+
569
+ $response = MPRestClient::put( $request, $this->version );
570
+ return $response;
571
+
572
+ }
573
+
574
+ /**
575
+ * Summary: Partially refund accredited payment.
576
+ * Description: Partially refund accredited payment.
577
+ * @param int $id
578
+ * @return array( json )
579
+ */
580
+ public function partial_refund_payment( $id, $amount, $reason, $external_reference ) {
581
+
582
+ $request = array(
583
+ 'uri' => '/collections/' . $id . '/refunds?access_token=' . $this->get_access_token(),
584
+ 'data' => array(
585
+ 'amount' => $amount,
586
+ 'metadata' => array(
587
+ 'metadata' => $reason,
588
+ 'external_reference' => $external_reference
589
+ )
590
+ )
591
+ );
592
+
593
+ $response = MPRestClient::post( $request, $this->version );
594
+ return $response;
595
+
596
+ }
597
+
598
+ /**
599
+ * Summary: Cancel pending payment.
600
+ * Description: Cancel pending payment.
601
+ * @param int $id
602
+ * @return array( json )
603
+ */
604
+ public function cancel_payment( $id ) {
605
+
606
+ $request = array(
607
+ 'uri' => '/collections/' . $id,
608
+ 'params' => array(
609
+ 'access_token' => $this->get_access_token()
610
+ ),
611
+ 'data' => '{"status":"cancelled"}'
612
+ );
613
+
614
+ $response = MPRestClient::put( $request, $this->version );
615
+ return $response;
616
+
617
+ }
618
+
619
+ //=== GENERIC RESOURCE CALL METHODS ===
620
+
621
+ /**
622
+ * Summary: Generic resource get.
623
+ * Description: Generic resource get.
624
+ * @param request
625
+ * @param params (deprecated)
626
+ * @param authenticate = true (deprecated)
627
+ */
628
+ public function get( $request, $params = null, $authenticate = true ) {
629
+
630
+ if ( is_string ( $request ) ) {
631
+ $request = array(
632
+ 'uri' => $request,
633
+ 'params' => $params,
634
+ 'authenticate' => $authenticate
635
+ );
636
+ }
637
+
638
+ $request['params'] = isset( $request['params'] ) && is_array( $request['params'] ) ?
639
+ $request['params'] :
640
+ array();
641
+
642
+ if ( ! isset( $request['authenticate'] ) || $request['authenticate'] !== false ) {
643
+ $request['params']['access_token'] = $this->get_access_token();
644
+ }
645
+
646
+ $result = MPRestClient::get( $request, $this->version );
647
+ return $result;
648
+
649
+ }
650
+
651
+ /**
652
+ * Summary: Generic resource post.
653
+ * Description: Generic resource get.
654
+ * @param request
655
+ * @param data (deprecated)
656
+ * @param params (deprecated)
657
+ */
658
+ public function post( $request, $data = null, $params = null ) {
659
+
660
+ if ( is_string ( $request ) ) {
661
+ $request = array(
662
+ 'uri' => $request,
663
+ 'data' => $data,
664
+ 'params' => $params
665
+ );
666
+ }
667
+
668
+ $request['params'] = isset( $request['params'] ) && is_array( $request['params'] ) ?
669
+ $request["params"] :
670
+ array();
671
+
672
+ if ( ! isset ( $request['authenticate'] ) || $request['authenticate'] !== false ) {
673
+ $request['params']['access_token'] = $this->get_access_token();
674
+ }
675
+
676
+ $result = MPRestClient::post( $request, $this->version );
677
+ return $result;
678
+
679
+ }
680
+
681
+ /**
682
+ * Summary: Generic resource put.
683
+ * Description: Generic resource put.
684
+ * @param request
685
+ * @param data (deprecated)
686
+ * @param params (deprecated)
687
+ */
688
+ public function put( $request, $data = null, $params = null ) {
689
+
690
+ if ( is_string ( $request ) ) {
691
+ $request = array(
692
+ 'uri' => $request,
693
+ 'data' => $data,
694
+ 'params' => $params
695
+ );
696
+ }
697
+
698
+ $request['params'] = isset( $request['params'] ) && is_array( $request['params'] ) ?
699
+ $request['params'] :
700
+ array();
701
+
702
+ if ( ! isset ( $request['authenticate'] ) || $request['authenticate'] !== false ) {
703
+ $request['params']['access_token'] = $this->get_access_token();
704
+ }
705
+
706
+ $result = MPRestClient::put( $request, $this->version );
707
+ return $result;
708
+
709
+ }
710
+
711
+ /**
712
+ * Summary: Generic resource delete.
713
+ * Description: Generic resource delete.
714
+ * @param request
715
+ * @param data (deprecated)
716
+ * @param params (deprecated)
717
+ */
718
+ public function delete( $request, $params = null ) {
719
+
720
+ if ( is_string ( $request ) ) {
721
+ $request = array(
722
+ 'uri' => $request,
723
+ 'params' => $params
724
+ );
725
+ }
726
+
727
+ $request['params'] = isset( $request['params'] ) && is_array( $request['params'] ) ?
728
+ $request['params'] :
729
+ array();
730
+
731
+ if ( ! isset( $request['authenticate'] ) || $request['authenticate'] !== false ) {
732
+ $request['params']['access_token'] = $this->get_access_token();
733
+ }
734
+
735
+ $result = MPRestClient::delete( $request, $this->version );
736
+ return $result;
737
+
738
+ }
739
+
740
+ //=== MODULE ANALYTICS FUNCTIONS ===
741
+
742
+ /**
743
+ * Summary: Save the settings of the module for analytics purposes.
744
+ * Description: Save the settings of the module for analytics purposes.
745
+ * @param array( json )
746
+ * @return array( json )
747
+ */
748
+ public function analytics_save_settings( $module_info ) {
749
+
750
+ $request = array(
751
+ 'uri' => '/modules/tracking/settings?access_token=' . $this->get_access_token(),
752
+ 'data' => $module_info
753
+ );
754
+
755
+ $result = MPRestClient::post( $request, $this->version );
756
+ return $result;
757
+
758
+ }
759
+
760
+ }
761
+
762
+ /**
763
+ * MercadoPago cURL RestClient
764
+ */
765
+ class MPRestClient {
766
+
767
+ const API_BASE_URL = 'https://api.mercadopago.com';
768
+ private static $email_admin = '';
769
+ private static $check_loop = 0;
770
+
771
+ private static function build_request( $request, $version ) {
772
+
773
+ if ( ! extension_loaded ( 'curl' ) ) {
774
+ throw new MercadoPagoException( 'cURL extension not found. You need to enable cURL in your php.ini or another configuration you have.' );
775
+ }
776
+
777
+ if ( ! isset( $request['method'] ) ) {
778
+ throw new MercadoPagoException( 'No HTTP METHOD specified' );
779
+ }
780
+
781
+ if ( ! isset( $request['uri'] ) ) {
782
+ throw new MercadoPagoException( 'No URI specified' );
783
+ }
784
+
785
+ // Set headers
786
+ $headers = array( 'accept: application/json' );
787
+ $json_content = true;
788
+ $form_content = false;
789
+ $default_content_type = true;
790
+
791
+ if ( isset( $request['headers'] ) && is_array( $request['headers'] ) ) {
792
+ foreach ( $request['headers'] as $h => $v ) {
793
+ $h = strtolower( $h );
794
+ $v = strtolower( $v );
795
+ if ( $h == 'content-type' ) {
796
+ $default_content_type = false;
797
+ $json_content = $v == 'application/json';
798
+ $form_content = $v == 'application/x-www-form-urlencoded';
799
+ }
800
+ array_push ( $headers, $h . ': ' . $v );
801
+ }
802
+ }
803
+ if ( $default_content_type ) {
804
+ array_push( $headers, 'content-type: application/json' );
805
+ }
806
+
807
+ // Build $connect
808
+ $connect = curl_init();
809
+
810
+ curl_setopt(
811
+ $connect,
812
+ CURLOPT_USERAGENT,
813
+ 'platform:v1-whitelabel,type:woocommerce,so:' . $version );
814
+ curl_setopt(
815
+ $connect,
816
+ CURLOPT_RETURNTRANSFER,
817
+ true );
818
+ curl_setopt(
819
+ $connect,
820
+ CURLOPT_SSL_VERIFYPEER,
821
+ true );
822
+ curl_setopt(
823
+ $connect,
824
+ CURLOPT_CAINFO,
825
+ $GLOBALS['LIB_LOCATION'] . '/cacert.pem' );
826
+ curl_setopt(
827
+ $connect,
828
+ CURLOPT_CUSTOMREQUEST,
829
+ $request['method'] );
830
+ curl_setopt(
831
+ $connect,
832
+ CURLOPT_HTTPHEADER,
833
+ $headers );
834
+
835
+ // Set parameters and url
836
+ if ( isset( $request['params'] ) && is_array( $request['params'] ) ) {
837
+ if ( count( $request['params'] > 0 ) ) {
838
+ $request['uri'] .= ( strpos( $request['uri'], '?' ) === false ) ? '?' : '&';
839
+ $request['uri'] .= self::build_query( $request['params'] );
840
+ }
841
+ }
842
+ curl_setopt( $connect, CURLOPT_URL, MPRestClient::API_BASE_URL . $request['uri'] );
843
+
844
+ // Set data
845
+ if ( isset( $request['data'] ) ) {
846
+ if ( $json_content ) {
847
+ if ( gettype( $request['data'] ) == 'string' ) {
848
+ json_decode( $request['data'], true );
849
+ } else {
850
+ $request['data'] = json_encode( $request['data'] );
851
+ }
852
+ if( function_exists( 'json_last_error' ) ) {
853
+ $json_error = json_last_error();
854
+ if ( $json_error != JSON_ERROR_NONE ) {
855
+ throw new MercadoPagoException(
856
+ "JSON Error [{$json_error}] - Data: " . $request['data']
857
+ );
858
+ }
859
+ }
860
+ } elseif ( $form_content ) {
861
+ $request['data'] = self::build_query( $request['data'] );
862
+ }
863
+ curl_setopt( $connect, CURLOPT_POSTFIELDS, $request['data'] );
864
+ }
865
+
866
+ return $connect;
867
+
868
+ }
869
+
870
+ private static function exec( $request, $version ) {
871
+
872
+ $response = null;
873
+ $connect = self::build_request( $request, $version );
874
+
875
+ $api_result = curl_exec( $connect );
876
+ $api_http_code = curl_getinfo( $connect, CURLINFO_HTTP_CODE );
877
+
878
+ if ( $api_result === FALSE ) {
879
+ throw new MercadoPagoException ( curl_error ( $connect ) );
880
+ }
881
+
882
+ if ( $api_http_code != null && $api_result != null ) {
883
+ // A common response without error.
884
+ $response = array (
885
+ 'status' => $api_http_code,
886
+ 'response' => json_decode( $api_result, true )
887
+ );
888
+ }
889
+
890
+ // Error log API.
891
+ if ( $response != null && $response['status'] >= 400 && self::$check_loop == 0 ) {
892
+ try {
893
+ self::$check_loop = 1;
894
+ $message = null;
895
+ $payloads = null;
896
+ $endpoint = null;
897
+ $errors = array();
898
+ if ( isset( $response['response'] ) ) {
899
+ if ( isset($response['response']['message'] ) ) {
900
+ $message = $response['response']['message'];
901
+ }
902
+ if ( isset( $response['response']['cause'] ) ) {
903
+ if ( isset( $response['response']['cause']['code'] ) && isset( $response['response']['cause']['description'] ) ) {
904
+ $message .= ' - ' . $response['response']['cause']['code'] . ': ' . $response['response']['cause']['description'];
905
+ } elseif ( is_array( $response['response']['cause'] ) ) {
906
+ foreach ( $response['response']['cause'] as $cause ) {
907
+ $message .= ' - ' . $cause['code'] . ': ' . $cause['description'];
908
+ }
909
+ }
910
+ }
911
+ }
912
+ if ( $request != null ) {
913
+ if ( isset( $request['data'] ) ) {
914
+ if ( $request['data'] != null ) {
915
+ $payloads = json_encode( $request['data'] );
916
+ }
917
+ }
918
+ if ( isset( $request['uri'] ) ) {
919
+ if ( $request['uri'] != null ) {
920
+ $endpoint = $request['uri'];
921
+ }
922
+ }
923
+ }
924
+ // Send error.
925
+ $errors[] = array(
926
+ 'endpoint' => $endpoint,
927
+ 'message' => $message,
928
+ 'payloads' => $payloads
929
+ );
930
+ self::sendErrorLog( $response['status'], $errors, $version );
931
+ } catch ( Exception $e ) {
932
+ throw new MercadoPagoException( 'error to call API LOGS' . $e );
933
+ }
934
+ }
935
+
936
+ self::$check_loop = 0;
937
+
938
+ curl_close( $connect );
939
+
940
+ return $response;
941
+ }
942
+
943
+ private static function sendErrorLog( $code, $errors, $version ) {
944
+ $data = array(
945
+ 'code' => $code,
946
+ 'module' => 'WooCommerce',
947
+ 'module_version' => $version,
948
+ 'url_store' => $_SERVER['HTTP_HOST'],
949
+ 'errors' => $errors,
950
+ 'email_admin' => self::$email_admin
951
+ );
952
+ $request = array(
953
+ 'uri' => '/modules/log',
954
+ 'data' => $data
955
+ );
956
+ $result_response = MPRestClient::post( $request, $version );
957
+ return $result_response;
958
+ }
959
+
960
+ private static function build_query( $params ) {
961
+
962
+ if ( function_exists( 'http_build_query' ) ) {
963
+ return http_build_query( $params, '', '&' );
964
+ } else {
965
+ foreach ( $params as $name => $value ) {
966
+ $elements[] = "{$name}=" . urlencode( $value );
967
+ }
968
+ return implode( '&', $elements );
969
+ }
970
+
971
+ }
972
+
973
+ public static function get( $request, $version ) {
974
+ $request['method'] = 'GET';
975
+
976
+ return self::exec( $request, $version );
977
+ }
978
+
979
+ public static function post( $request, $version ) {
980
+ $request['method'] = 'POST';
981
+
982
+ return self::exec( $request, $version );
983
+ }
984
+
985
+ public static function put( $request, $version ) {
986
+ $request['method'] = 'PUT';
987
+
988
+ return self::exec( $request, $version );
989
+ }
990
+
991
+ public static function delete( $request, $version ) {
992
+ $request['method'] = 'DELETE';
993
+
994
+ return self::exec( $request, $version );
995
+ }
996
+
997
+ public static function set_email( $email ) {
998
+ self::$email_admin = $email;
999
+ }
1000
+
1001
+ }
1002
+
1003
+ class MeliRestClient {
1004
+
1005
+ const API_BASE_URL = 'https://api.mercadolibre.com';
1006
+ private static $email_admin = '';
1007
+ private static $check_loop = 0;
1008
+
1009
+ private static function build_request( $request, $version ) {
1010
+
1011
+ if ( ! extension_loaded ( 'curl' ) ) {
1012
+ throw new MercadoPagoException( 'cURL extension not found. You need to enable cURL in your php.ini or another configuration you have.' );
1013
+ }
1014
+
1015
+ if ( ! isset( $request['method'] ) ) {
1016
+ throw new MercadoPagoException( 'No HTTP METHOD specified' );
1017
+ }
1018
+
1019
+ if ( ! isset( $request['uri'] ) ) {
1020
+ throw new MercadoPagoException( 'No URI specified' );
1021
+ }
1022
+
1023
+ // Set headers
1024
+ $headers = array( 'accept: application/json' );
1025
+ $json_content = true;
1026
+ $form_content = false;
1027
+ $default_content_type = true;
1028
+
1029
+ if ( isset( $request['headers'] ) && is_array( $request['headers'] ) ) {
1030
+ foreach ( $request['headers'] as $h => $v ) {
1031
+ $h = strtolower( $h );
1032
+ $v = strtolower( $v );
1033
+ if ( $h == 'content-type' ) {
1034
+ $default_content_type = false;
1035
+ $json_content = $v == 'application/json';
1036
+ $form_content = $v == 'application/x-www-form-urlencoded';
1037
+ }
1038
+ array_push ( $headers, $h . ': ' . $v );
1039
+ }
1040
+ }
1041
+ if ( $default_content_type ) {
1042
+ array_push( $headers, 'content-type: application/json' );
1043
+ }
1044
+
1045
+ // Build $connect
1046
+ $connect = curl_init();
1047
+
1048
+ curl_setopt(
1049
+ $connect,
1050
+ CURLOPT_USERAGENT,
1051
+ 'platform:v1-whitelabel,type:woocommerce,so:' . $version );
1052
+ curl_setopt(
1053
+ $connect,
1054
+ CURLOPT_RETURNTRANSFER,
1055
+ true );
1056
+ curl_setopt(
1057
+ $connect,
1058
+ CURLOPT_SSL_VERIFYPEER,
1059
+ true );
1060
+ curl_setopt(
1061
+ $connect,
1062
+ CURLOPT_CAINFO,
1063
+ $GLOBALS['LIB_LOCATION'] . '/cacert.pem' );
1064
+ curl_setopt(
1065
+ $connect,
1066
+ CURLOPT_CUSTOMREQUEST,
1067
+ $request['method'] );
1068
+ curl_setopt(
1069
+ $connect,
1070
+ CURLOPT_HTTPHEADER,
1071
+ $headers );
1072
+
1073
+ // Set parameters and url
1074
+ if ( isset( $request['params'] ) && is_array( $request['params'] ) ) {
1075
+ if ( count( $request['params'] > 0 ) ) {
1076
+ $request['uri'] .= ( strpos( $request['uri'], '?' ) === false ) ? '?' : '&';
1077
+ $request['uri'] .= self::build_query( $request['params'] );
1078
+ }
1079
+ }
1080
+ curl_setopt( $connect, CURLOPT_URL, MeliRestClient::API_BASE_URL . $request['uri'] );
1081
+
1082
+ // Set data
1083
+ if ( isset( $request['data'] ) ) {
1084
+ if ( $json_content ) {
1085
+ if ( gettype( $request['data'] ) == 'string' ) {
1086
+ json_decode( $request['data'], true );
1087
+ } else {
1088
+ $request['data'] = json_encode( $request['data'] );
1089
+ }
1090
+ if( function_exists( 'json_last_error' ) ) {
1091
+ $json_error = json_last_error();
1092
+ if ( $json_error != JSON_ERROR_NONE ) {
1093
+ throw new MercadoPagoException(
1094
+ "JSON Error [{$json_error}] - Data: " . $request['data']
1095
+ );
1096
+ }
1097
+ }
1098
+ } elseif ( $form_content ) {
1099
+ $request['data'] = self::build_query( $request['data'] );
1100
+ }
1101
+ curl_setopt( $connect, CURLOPT_POSTFIELDS, $request['data'] );
1102
+ }
1103
+
1104
+ return $connect;
1105
+ }
1106
+
1107
+ private static function exec( $request, $version ) {
1108
+
1109
+ $response = null;
1110
+ $connect = self::build_request( $request, $version );
1111
+
1112
+ $api_result = curl_exec( $connect );
1113
+ $api_http_code = curl_getinfo( $connect, CURLINFO_HTTP_CODE );
1114
+
1115
+ if ( $api_result === FALSE ) {
1116
+ throw new MercadoPagoException ( curl_error ( $connect ) );
1117
+ }
1118
+
1119
+ if ( $api_http_code != null && $api_result != null ) {
1120
+ // A common response without error.
1121
+ $response = array (
1122
+ 'status' => $api_http_code,
1123
+ 'response' => json_decode( $api_result, true ),
1124
+ );
1125
+ }
1126
+
1127
+ // Error log API.
1128
+ if ( $response != null && $response['status'] >= 400 && self::$check_loop == 0 ) {
1129
+ try {
1130
+ self::$check_loop = 1;
1131
+ $message = null;
1132
+ $payloads = null;
1133
+ $endpoint = null;
1134
+ $errors = array();
1135
+ if ( isset( $response['response'] ) ) {
1136
+ if ( isset($response['response']['message'] ) ) {
1137
+ $message = $response['response']['message'];
1138
+ }
1139
+ if ( isset( $response['response']['cause'] ) ) {
1140
+ if ( isset( $response['response']['cause']['code'] ) && isset( $response['response']['cause']['description'] ) ) {
1141
+ $message .= ' - ' . $response['response']['cause']['code'] . ': ' . $response['response']['cause']['description'];
1142
+ } elseif ( is_array( $response['response']['cause'] ) ) {
1143
+ foreach ( $response['response']['cause'] as $cause ) {
1144
+ $message .= ' - ' . $cause['code'] . ': ' . $cause['description'];
1145
+ }
1146
+ }
1147
+ }
1148
+ }
1149
+ if ( $request != null ) {
1150
+ if ( isset( $request['data'] ) ) {
1151
+ if ( $request['data'] != null ) {
1152
+ $payloads = json_encode( $request['data'] );
1153
+ }
1154
+ }
1155
+ if ( isset( $request['uri'] ) ) {
1156
+ if ( $request['uri'] != null ) {
1157
+ $endpoint = $request['uri'];
1158
+ }
1159
+ }
1160
+ }
1161
+ // Send error.
1162
+ $errors[] = array(
1163
+ 'endpoint' => $endpoint,
1164
+ 'message' => $message,
1165
+ 'payloads' => $payloads
1166
+ );
1167
+ self::sendErrorLog( $response['status'], $errors, $version );
1168
+ } catch ( Exception $e ) {
1169
+ throw new MercadoPagoException( 'error to call API LOGS' . $e );
1170
+ }
1171
+ }
1172
+
1173
+ self::$check_loop = 0;
1174
+
1175
+ curl_close( $connect );
1176
+
1177
+ return $response;
1178
+ }
1179
+
1180
+ private static function sendErrorLog( $code, $errors, $version ) {
1181
+ $data = array(
1182
+ 'code' => $code,
1183
+ 'module' => 'WooCommerce',
1184
+ 'module_version' => $version,
1185
+ 'url_store' => $_SERVER['HTTP_HOST'],
1186
+ 'errors' => $errors,
1187
+ 'email_admin' => self::$email_admin
1188
+ );
1189
+ $request = array(
1190
+ 'uri' => '/modules/log',
1191
+ 'data' => $data
1192
+ );
1193
+ $result_response = MeLiRestClient::post( $request, $version );
1194
+ return $result_response;
1195
+ }
1196
+
1197
+ private static function build_query( $params ) {
1198
+
1199
+ if ( function_exists( 'http_build_query' ) ) {
1200
+ return http_build_query( $params, '', '&' );
1201
+ } else {
1202
+ foreach ( $params as $name => $value ) {
1203
+ $elements[] = "{$name}=" . urlencode( $value );
1204
+ }
1205
+ return implode( '&', $elements );
1206
+ }
1207
+
1208
+ }
1209
+
1210
+ public static function get( $request, $version ) {
1211
+ $request['method'] = 'GET';
1212
+
1213
+ return self::exec( $request, $version );
1214
+ }
1215
+
1216
+ public static function post( $request, $version ) {
1217
+ $request['method'] = 'POST';
1218
+
1219
+ return self::exec( $request, $version );
1220
+ }
1221
+
1222
+ public static function put( $request, $version ) {
1223
+ $request['method'] = 'PUT';
1224
+
1225
+ return self::exec( $request, $version );
1226
+ }
1227
+
1228
+ public static function delete( $request, $version ) {
1229
+ $request['method'] = 'DELETE';
1230
+
1231
+ return self::exec( $request, $version );
1232
+ }
1233
+
1234
+ public static function set_email( $email ) {
1235
+ self::$email_admin = $email;
1236
+ }
1237
+
1238
+ }
1239
+
1240
+ class MercadoPagoException extends Exception {
1241
+ public function __construct( $message, $code = 500, Exception $previous = null ) {
1242
+ // Default code 500
1243
+ parent::__construct( $message, $code, $previous );
1244
+ }
1245
+ }
includes/shipment/abstract-wc-mercadoenvios-shipping.php ADDED
@@ -0,0 +1,355 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Text Domain: woocommerce-mercadopago
5
+ * Domain Path: /i18n/languages/
6
+ */
7
+
8
+ if ( ! defined( 'ABSPATH' ) ) {
9
+ exit;
10
+ }
11
+
12
+ /**
13
+ * Mercado Envios Shipping Method for Mercado Pago.
14
+ *
15
+ * A simple shipping method allowing free pickup as a shipping method for Mercado Pago.
16
+ *
17
+ * @class WC_MercadoPago_Shipping_MercadoEnvios
18
+ * @version 3.0.0
19
+ * @package WooCommerce/Classes/Shipping
20
+ * @author Mercado Pago
21
+ */
22
+
23
+ include_once dirname( __FILE__ ) . '/../sdk/lib/mercadopago.php';
24
+
25
+ abstract class WC_MercadoEnvios_Shipping extends WC_Shipping_Method {
26
+
27
+ protected $shipments_id = array();
28
+
29
+ /**
30
+ * Constructor.
31
+ */
32
+ public function __construct( $instance_id = 0 ) {
33
+
34
+ add_action( 'init', array( $this, 'load_plugin_textdomain' ) );
35
+
36
+ $this->instance_id = absint( $instance_id );
37
+ $this->method_description = __( 'Mercado Envios is a shipping method available only for payments with Mercado Pago.', 'woocommerce-mercadopago' );
38
+ $this->supports = array(
39
+ 'shipping-zones',
40
+ 'instance-settings',
41
+ 'instance-settings-modal',
42
+ );
43
+
44
+ // Logging and debug.
45
+ $_mp_debug_mode = get_option( '_mp_debug_mode', '' );
46
+ if ( ! empty ( $_mp_debug_mode ) ) {
47
+ if ( class_exists( 'WC_Logger' ) ) {
48
+ $this->log = new WC_Logger();
49
+ } else {
50
+ $this->log = WC_Woo_Mercado_Pago_Module::woocommerce_instance()->logger();
51
+ }
52
+ }
53
+
54
+ $this->init();
55
+
56
+ }
57
+
58
+ // Write log.
59
+ private function write_log( $function, $message ) {
60
+ $_mp_debug_mode = get_option( '_mp_debug_mode', '' );
61
+ if ( ! empty ( $_mp_debug_mode ) ) {
62
+ $this->log->add(
63
+ $this->id,
64
+ '[' . $function . ']: ' . $message
65
+ );
66
+ }
67
+ }
68
+
69
+ /**
70
+ * Initialize local pickup.
71
+ */
72
+ public function init() {
73
+ // Load the settings.
74
+ $this->init_form_fields();
75
+ $this->init_settings();
76
+ // Define user set variables.
77
+ $this->title = $this->get_option( 'title' );
78
+ $this->tax_status = $this->get_option( 'tax_status' );
79
+ $this->cost = $this->get_option( 'cost' );
80
+ $this->free_shipping = $this->get_option( 'free_shipping' );
81
+ $this->show_delivery_time = $this->get_option( 'show_delivery_time' );
82
+ // Actions.
83
+ add_action(
84
+ 'woocommerce_update_options_shipping_' . $this->id,
85
+ array( $this, 'process_admin_options' )
86
+ );
87
+ }
88
+
89
+ // Multi-language plugin.
90
+ public function load_plugin_textdomain() {
91
+ load_plugin_textdomain(
92
+ 'woocommerce-mercadopago',
93
+ false,
94
+ dirname( plugin_basename( __FILE__ ) ) . '/i18n/languages/'
95
+ );
96
+ }
97
+
98
+ /**
99
+ * Calculate shipping function.
100
+ */
101
+ public function calculate_shipping( $package = array() ) {
102
+
103
+ // Check if Basic Checkout is enabled.
104
+ $checkout_standard = new WC_WooMercadoPago_BasicGateway();
105
+ if ( $checkout_standard->get_option( 'enabled' ) != 'yes' ) {
106
+ $this->write_log( __FUNCTION__, 'mercado pago standard needs to be active... ' );
107
+ return;
108
+ }
109
+
110
+ // Some used variables and its validations.
111
+ $client_id = get_option( '_mp_client_id', '' );
112
+ $client_secret = get_option( '_mp_client_secret', '' );
113
+ $site_id = get_option( '_site_id_v0', '' );
114
+ if ( empty( $client_id ) || empty( $client_secret ) ) {
115
+ return;
116
+ }
117
+ if ( ! is_numeric( $client_id ) ) {
118
+ return;
119
+ }
120
+
121
+ $shipping_method_id = $this->get_shipping_method_id( $site_id );
122
+ $mp = new MP(
123
+ WC_Woo_Mercado_Pago_Module::get_module_version(),
124
+ $client_id,
125
+ $client_secret
126
+ );
127
+ $email = ( wp_get_current_user()->ID != 0 ) ? wp_get_current_user()->user_email : null;
128
+ $mp->set_email( $email );
129
+
130
+ // Object package and zipcode.
131
+ $me_package = new WC_MercadoEnvios_Package( $package );
132
+ $dimensions = $me_package->get_data();
133
+ $zip_code = $package['destination']['postcode'];
134
+
135
+ // Height x width x length (centimeters), weight (grams).
136
+ $params = array(
137
+ 'dimensions' => (int) $dimensions['height'] . 'x' . (int) $dimensions['width'] . 'x' .
138
+ (int) $dimensions['length'] . ',' . $dimensions['weight'] * 1000,
139
+ 'zip_code' => preg_replace( '([^0-9])', '', sanitize_text_field( $zip_code ) ),
140
+ 'item_price' => $package['contents_cost'],
141
+ 'access_token' => $mp->get_access_token()
142
+ );
143
+
144
+ if ( $this->get_option( 'free_shipping' ) == 'yes' ) {
145
+ $params['free_method'] = $shipping_method_id;
146
+ } else {
147
+ $list_shipping_methods = $this->get_shipping_methods_zone_by_shipping_id( $this->instance_id );
148
+ foreach ( $list_shipping_methods as $key => $shipping_object ) {
149
+ if ( $key == 'woo-mercado-pago-me-normal' || $key == 'woo-mercado-pago-me-express' ) {
150
+ // WTF?
151
+ $shipping_object = new $shipping_object( $shipping_object->instance_id );
152
+ if ( $shipping_object->get_option( 'free_shipping' ) == 'yes' ) {
153
+ $temp_shipping_method_id = $shipping_object->get_shipping_method_id( $site_id );
154
+ $params['free_method'] = $temp_shipping_method_id;
155
+ }
156
+ }
157
+ }
158
+ }
159
+
160
+ $response = $mp->get( '/shipping_options', $params );
161
+ $this->write_log( __FUNCTION__, 'params sent: ' . json_encode( $params, JSON_PRETTY_PRINT ) );
162
+ $this->write_log( __FUNCTION__, 'shipments response API: ' . json_encode( $response, JSON_PRETTY_PRINT ) );
163
+
164
+ if ( $response['status'] != 200 ) {
165
+ $this->write_log( __FUNCTION__, 'got response different of 200... returning false.' );
166
+ return false;
167
+ }
168
+
169
+ foreach ( $response['response']['options'] as $shipping ) {
170
+ if ( $shipping_method_id == $shipping['shipping_method_id'] ) {
171
+ $label_free_shipping = '';
172
+ if ( $this->get_option( 'free_shipping' ) == 'yes' || $shipping['cost'] == 0 ) {
173
+ $label_free_shipping = __( 'Free Shipping', 'woocommerce-mercadopago' );
174
+ }
175
+ $label_delivery_time = '';
176
+ if ( $this->get_option( 'show_delivery_time' ) == 'yes' ) {
177
+ $days = $shipping['estimated_delivery_time']['shipping'] / 24;
178
+ if ( $days <= 1 ) {
179
+ $label_delivery_time = $days . ' ' . __( 'Day', 'woocommerce-mercadopago' );
180
+ } else {
181
+ $label_delivery_time = $days . ' ' . __( 'Days', 'woocommerce-mercadopago' );
182
+ }
183
+ }
184
+ $separator = '';
185
+ if ( $label_free_shipping != '' && $label_delivery_time != '' ) {
186
+ $separator = ' - ';
187
+ }
188
+ $label_info = '';
189
+ if ( $label_free_shipping != '' || $label_delivery_time ) {
190
+ $label_info = ' (' . $label_delivery_time . $separator . $label_free_shipping . ')';
191
+ }
192
+ $option = array(
193
+ 'label' => 'Mercado Envios - ' . $shipping['name'] . $label_info,
194
+ 'package' => $package,
195
+ 'cost' => (float) $shipping['cost'],
196
+ 'meta_data' => array(
197
+ 'dimensions' => $params['dimensions'],
198
+ 'shipping_method_id' => $shipping_method_id,
199
+ 'free_shipping' => $this->get_option( 'free_shipping' )
200
+ )
201
+ );
202
+
203
+ $this->write_log( __FUNCTION__, 'optiond added: ' . json_encode( $option, JSON_PRETTY_PRINT ) );
204
+
205
+ $this->add_rate( $option );
206
+ }
207
+ }
208
+ }
209
+
210
+ /**
211
+ * Replace comma by dot.
212
+ * @param mixed $value Value to fix.
213
+ * @return mixed
214
+ */
215
+ private function fix_format( $value ) {
216
+ $value = str_replace( ',', '.', $value );
217
+ return $value;
218
+ }
219
+
220
+ /**
221
+ * Init form fields.
222
+ */
223
+ public function init_form_fields() {
224
+ // Force quit loop.
225
+ $mp = WC_Woo_Mercado_Pago_Module::init_mercado_pago_class();
226
+ if ( isset( $mp->mercado_envios_loop ) && $mp->mercado_envios_loop ) {
227
+ return false;
228
+ }
229
+ $warning_active_shipping_methods = '';
230
+ if ( $this->show_message_shipping_methods() ) {
231
+ $warning_active_shipping_methods = '<img width="14" height="14" src="' .
232
+ plugins_url( 'assets/images/warning.png', dirname( dirname( __FILE__ ) ) ) . '">' . ' ' .
233
+ __( 'Enable the two shipping methods the Mercado Envios (Express and Normal) for the proper functioning of the module.', 'woocommerce-mercadopago' );
234
+ }
235
+ $this->instance_form_fields = array(
236
+ 'mercado_envios_title' => array(
237
+ 'title' => __( 'Mercado Envios', 'woocommerce-mercadopago' ),
238
+ 'type' => 'title',
239
+ 'description' => sprintf( '%s', $warning_active_shipping_methods )
240
+ ),
241
+ 'title' => array(
242
+ 'title' => __( 'Mercado Envios', 'woocommerce-mercadopago' ),
243
+ 'type' => 'text',
244
+ 'description' => __( 'This controls the title which the user sees during checkout.', 'woocommerce-mercadopago' ),
245
+ 'default' => __( 'Mercado Envios', 'woocommerce-mercadopago' ),
246
+ 'desc_tip' => true,
247
+ ),
248
+ 'free_shipping' => array(
249
+ 'title' => __( 'Free Shipping', 'woocommerce-mercadopago' ),
250
+ 'type' => 'checkbox',
251
+ 'label' => __( 'Enable free shipping for this shipping method', 'woocommerce-mercadopago' ),
252
+ 'default' => 'no',
253
+ ),
254
+ 'show_delivery_time' => array(
255
+ 'title' => __( 'Delivery Time', 'woocommerce-mercadopago' ),
256
+ 'type' => 'checkbox',
257
+ 'label' => __( 'Show estimated delivery time', 'woocommerce-mercadopago' ),
258
+ 'description' => __( 'Display the estimated delivery time in working days.', 'woocommerce-mercadopago' ),
259
+ 'desc_tip' => true,
260
+ 'default' => 'no',
261
+ )
262
+ );
263
+
264
+ }
265
+ /**
266
+ * Return shipping methods by zone and shipping id.
267
+ */
268
+ public function get_shipping_methods_zone_by_shipping_id( $shipping_id ) {
269
+ $shipping_zone = WC_Shipping_Zones::get_zone_by( 'instance_id', $shipping_id );
270
+ // Set looping shipping methods.
271
+ $mp = WC_Woo_Mercado_Pago_Module::init_mercado_pago_class();
272
+ $mp->mercado_envios_loop = true;
273
+ $shipping_methods_list = array();
274
+ foreach ( $shipping_zone->get_shipping_methods() as $key => $shipping_object ) {
275
+ $shipping_methods_list[$shipping_object->id] = $shipping_object;
276
+ }
277
+ $mp->mercado_envios_loop = false;
278
+ return $shipping_methods_list;
279
+ }
280
+ /**
281
+ * Validate if it is necessary to enable message.
282
+ */
283
+ public function show_message_shipping_methods() {
284
+ // Check if is admin.
285
+ if ( is_admin() ) {
286
+ if ( $this->instance_id > 0 ) {
287
+ $shipping_methods_list = $this->get_shipping_methods_zone_by_shipping_id( $this->instance_id );
288
+ $shipping_methods = array();
289
+ foreach ( $shipping_methods_list as $key => $shipping_object ) {
290
+ $shipping_methods[$shipping_object->id] = $shipping_object->is_enabled();
291
+ }
292
+ if ( isset( $shipping_methods['woo-mercado-pago-me-normal'] ) && isset( $shipping_methods['woo-mercado-pago-me-express'] ) ) {
293
+ if ( $shipping_methods['woo-mercado-pago-me-normal'] === true && $shipping_methods['woo-mercado-pago-me-express'] === true ) {
294
+ // Add settings.
295
+ $this->update_settings_api( 'true' );
296
+ // Not display message.
297
+ return false;
298
+ } elseif ( $shipping_methods['woo-mercado-pago-me-normal'] === false && $shipping_methods['woo-mercado-pago-me-express'] === false ) {
299
+ // Remove settings.
300
+ $this->update_settings_api( 'false' );
301
+ // Not display message.
302
+ return false;
303
+ }
304
+ }
305
+ // Show message.
306
+ return true;
307
+ } else {
308
+ return false;
309
+ }
310
+ }
311
+ }
312
+
313
+ /**
314
+ * Return shipping method id Mercado Envios.
315
+ */
316
+ public function get_shipping_method_id( $site_id ) {
317
+ if ( array_key_exists( $site_id, $this->shipments_id ) ) {
318
+ return $this->shipments_id[$site_id];
319
+ } else {
320
+ return 0;
321
+ }
322
+ }
323
+
324
+ /**
325
+ * Update settings api.
326
+ */
327
+ public function update_settings_api( $status ) {
328
+
329
+ // Some used variables and its validations.
330
+ $client_id = get_option( '_mp_client_id', '' );
331
+ $client_secret = get_option( '_mp_client_secret', '' );
332
+ if ( empty( $client_id ) || empty( $client_secret ) ) {
333
+ return;
334
+ }
335
+ if ( ! is_numeric( $client_id ) ) {
336
+ return;
337
+ }
338
+ $mp = new MP(
339
+ WC_Woo_Mercado_Pago_Module::get_module_version(),
340
+ $client_id,
341
+ $client_secret
342
+ );
343
+ $email = ( wp_get_current_user()->ID != 0 ) ? wp_get_current_user()->user_email : null;
344
+ $mp->set_email( $email );
345
+
346
+ // Get default data.
347
+ $infra_data = WC_Woo_Mercado_Pago_Module::get_common_settings();
348
+ $infra_data['mercado_envios'] = $status;
349
+
350
+ // Request.
351
+ $response = $mp->analytics_save_settings( $infra_data );
352
+ $this->write_log( __FUNCTION__, 'analytics response: ' . json_encode( $response, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE ) );
353
+ }
354
+
355
+ }
includes/shipment/class-wc-mercadoenvios-package.php ADDED
@@ -0,0 +1,257 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Mercado Envios Package.
4
+ * @since 3.0.0
5
+ * @version 3.0.0
6
+ * @reference WooCommerce Correios
7
+ */
8
+
9
+ if ( ! defined( 'ABSPATH' ) ) {
10
+ exit; // Exit if accessed directly.
11
+ }
12
+
13
+ /**
14
+ * WC_Mercado_Envios_Package class.
15
+ */
16
+ class WC_MercadoEnvios_Package {
17
+
18
+ /**
19
+ * Order package.
20
+ *
21
+ * @var array
22
+ */
23
+ protected $package = array();
24
+
25
+ /**
26
+ * Sets the package.
27
+ *
28
+ * @param array $package Package to calcule.
29
+ *
30
+ * @return array
31
+ */
32
+ public function __construct( $package = array() ) {
33
+ $this->package = $package;
34
+ }
35
+
36
+ /**
37
+ * Replace comma by dot.
38
+ *
39
+ * @param mixed $value Value to fix.
40
+ *
41
+ * @return mixed
42
+ */
43
+ private function fix_format( $value ) {
44
+ $value = str_replace( ',', '.', $value );
45
+
46
+ return $value;
47
+ }
48
+
49
+ /**
50
+ * Extracts the weight and dimensions from the package.
51
+ *
52
+ * @return array
53
+ */
54
+ protected function get_package_data() {
55
+ $count = 0;
56
+ $height = array();
57
+ $width = array();
58
+ $length = array();
59
+ $weight = array();
60
+
61
+ // Shipping per item.
62
+ foreach ( $this->package['contents'] as $item_id => $values ) {
63
+ $product = $values['data'];
64
+ $qty = $values['quantity'];
65
+
66
+ if ( $qty > 0 && $product->needs_shipping() ) {
67
+
68
+ // WooCommerce 3.0 or later.
69
+ if ( method_exists( $product, 'get_height' ) ) {
70
+ $_height = wc_get_dimension( $this->fix_format( $product->get_height() ), 'cm' );
71
+ $_width = wc_get_dimension( $this->fix_format( $product->get_width() ), 'cm' );
72
+ $_length = wc_get_dimension( $this->fix_format( $product->get_length() ), 'cm' );
73
+ $_weight = wc_get_weight( $this->fix_format( $product->get_weight() ), 'kg' );
74
+ } else {
75
+ $_height = wc_get_dimension( $this->fix_format( $product->height ), 'cm' );
76
+ $_width = wc_get_dimension( $this->fix_format( $product->width ), 'cm' );
77
+ $_length = wc_get_dimension( $this->fix_format( $product->length ), 'cm' );
78
+ $_weight = wc_get_weight( $this->fix_format( $product->weight ), 'kg' );
79
+ }
80
+
81
+ $height[ $count ] = $_height;
82
+ $width[ $count ] = $_width;
83
+ $length[ $count ] = $_length;
84
+ $weight[ $count ] = $_weight;
85
+
86
+ if ( $qty > 1 ) {
87
+ $n = $count;
88
+ for ( $i = 0; $i < $qty; $i++ ) {
89
+ $height[ $n ] = $_height;
90
+ $width[ $n ] = $_width;
91
+ $length[ $n ] = $_length;
92
+ $weight[ $n ] = $_weight;
93
+ $n++;
94
+ }
95
+ $count = $n;
96
+ }
97
+
98
+ $count++;
99
+ }
100
+ }
101
+
102
+ return array(
103
+ 'height' => array_values( $height ),
104
+ 'length' => array_values( $length ),
105
+ 'width' => array_values( $width ),
106
+ 'weight' => array_sum( $weight ),
107
+ );
108
+ }
109
+
110
+ /**
111
+ * Calculates the cubage of all products.
112
+ *
113
+ * @param array $height Package height.
114
+ * @param array $width Package width.
115
+ * @param array $length Package length.
116
+ *
117
+ * @return int
118
+ */
119
+ protected function cubage_total( $height, $width, $length ) {
120
+ // Sets the cubage of all products.
121
+ $all = array();
122
+ $total = 0;
123
+ $total_items = count( $height );
124
+
125
+ for ( $i = 0; $i < $total_items; $i++ ) {
126
+ $all[ $i ] = $height[ $i ] * $width[ $i ] * $length[ $i ];
127
+ }
128
+
129
+ foreach ( $all as $value ) {
130
+ $total += $value;
131
+ }
132
+
133
+ return $total;
134
+ }
135
+
136
+ /**
137
+ * Get the max values.
138
+ *
139
+ * @param array $height Package height.
140
+ * @param array $width Package width.
141
+ * @param array $length Package length.
142
+ *
143
+ * @return array
144
+ */
145
+ protected function get_max_values( $height, $width, $length ) {
146
+ $find = array(
147
+ 'height' => max( $height ),
148
+ 'width' => max( $width ),
149
+ 'length' => max( $length ),
150
+ );
151
+
152
+ return $find;
153
+ }
154
+
155
+ /**
156
+ * Calculates the square root of the scaling of all products.
157
+ *
158
+ * @param array $height Package height.
159
+ * @param array $width Package width.
160
+ * @param array $length Package length.
161
+ * @param array $max_values Package bigger values.
162
+ *
163
+ * @return float
164
+ */
165
+ protected function calculate_root( $height, $width, $length, $max_values ) {
166
+ $cubage_total = $this->cubage_total( $height, $width, $length );
167
+ $root = 0;
168
+ $biggest = max( $max_values );
169
+
170
+ if ( 0 !== $cubage_total && 0 !== $biggest ) {
171
+ // Dividing the value of scaling of all products.
172
+ // With the measured value of greater.
173
+ $division = $cubage_total / $biggest;
174
+ // Total square root.
175
+ $root = round( sqrt( $division ), 1 );
176
+ }
177
+
178
+ return $root;
179
+ }
180
+
181
+ /**
182
+ * Sets the final cubage.
183
+ *
184
+ * @param array $height Package height.
185
+ * @param array $width Package width.
186
+ * @param array $length Package length.
187
+ *
188
+ * @return array
189
+ */
190
+ protected function get_cubage( $height, $width, $length ) {
191
+ $cubage = array();
192
+ $max_values = $this->get_max_values( $height, $width, $length );
193
+ $root = $this->calculate_root( $height, $width, $length, $max_values );
194
+ $greatest = array_search( max( $max_values ), $max_values, true );
195
+
196
+ switch ( $greatest ) {
197
+ case 'height' :
198
+ $cubage = array(
199
+ 'height' => max( $height ),
200
+ 'width' => $root,
201
+ 'length' => $root,
202
+ );
203
+ break;
204
+ case 'width' :
205
+ $cubage = array(
206
+ 'height' => $root,
207
+ 'width' => max( $width ),
208
+ 'length' => $root,
209
+ );
210
+ break;
211
+ case 'length' :
212
+ $cubage = array(
213
+ 'height' => $root,
214
+ 'width' => $root,
215
+ 'length' => max( $length ),
216
+ );
217
+ break;
218
+
219
+ default :
220
+ $cubage = array(
221
+ 'height' => 0,
222
+ 'width' => 0,
223
+ 'length' => 0,
224
+ );
225
+ break;
226
+ }
227
+
228
+ return $cubage;
229
+ }
230
+
231
+ /**
232
+ * Get the package data.
233
+ *
234
+ * @return array
235
+ */
236
+ public function get_data() {
237
+ // Get the package data.
238
+ $data = apply_filters( 'woocommerce_mercado_envios_default_package', $this->get_package_data() );
239
+
240
+ if ( ! empty( $data['height'] ) && ! empty( $data['width'] ) && ! empty( $data['length'] ) ) {
241
+ $cubage = $this->get_cubage( $data['height'], $data['width'], $data['length'] );
242
+ } else {
243
+ $cubage = array(
244
+ 'height' => 0,
245
+ 'width' => 0,
246
+ 'length' => 0,
247
+ );
248
+ }
249
+
250
+ return array(
251
+ 'height' => apply_filters( 'woocommerce_mercado_envios_package_height', $cubage['height'] ),
252
+ 'width' => apply_filters( 'woocommerce_mercado_envios_package_width', $cubage['width'] ),
253
+ 'length' => apply_filters( 'woocommerce_mercado_envios_package_length', $cubage['length'] ),
254
+ 'weight' => apply_filters( 'woocommerce_mercado_envios_package_weight', $data['weight'] ),
255
+ );
256
+ }
257
+ }
includes/shipment/class-wc-mercadoenvios-shipping-express.php ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ if ( ! defined( 'ABSPATH' ) ) {
4
+ exit;
5
+ }
6
+
7
+ /**
8
+ * Mercado Envios Shipping Method for Mercado Pago.
9
+ *
10
+ * A simple shipping method allowing free pickup as a shipping method for Mercado Pago.
11
+ *
12
+ * @class WC_MercadoEnvios_Shipping_Express
13
+ * @version 3.0.0
14
+ * @package WooCommerce/Classes/Shipping
15
+ * @author Mercado Pago
16
+ */
17
+
18
+ class WC_MercadoEnvios_Shipping_Express extends WC_MercadoEnvios_Shipping {
19
+
20
+ protected $shipments_id = array(
21
+ 'MLA' => 73330,
22
+ 'MLB' => 182,
23
+ 'MLM' => 501345
24
+ );
25
+
26
+ /**
27
+ * Constructor.
28
+ */
29
+ public function __construct( $instance_id = 0 ) {
30
+ $this->id = 'woo-mercado-pago-me-express';
31
+ $this->method_title = 'Mercado Envios - Express';
32
+ parent::__construct( $instance_id );
33
+ }
34
+
35
+ }
includes/shipment/class-wc-mercadoenvios-shipping-normal.php ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ if ( ! defined( 'ABSPATH' ) ) {
4
+ exit;
5
+ }
6
+
7
+ /**
8
+ * Mercado Envios Shipping Method for Mercado Pago.
9
+ *
10
+ * A simple shipping method allowing free pickup as a shipping method for Mercado Pago.
11
+ *
12
+ * @class WC_MercadoEnvios_Shipping_Normal
13
+ * @version 3.0.0
14
+ * @package WooCommerce/Classes/Shipping
15
+ * @author Mercado Pago
16
+ */
17
+
18
+ class WC_MercadoEnvios_Shipping_Normal extends WC_MercadoEnvios_Shipping {
19
+
20
+ protected $shipments_id = array(
21
+ 'MLA' => 73328,
22
+ 'MLB' => 100009,
23
+ 'MLM' => 501245
24
+ );
25
+
26
+ /**
27
+ * Constructor.
28
+ */
29
+ public function __construct( $instance_id = 0 ) {
30
+ $this->id = 'woo-mercado-pago-me-normal';
31
+ $this->method_title = 'Mercado Envios - Normal';
32
+ parent::__construct( $instance_id );
33
+ }
34
+
35
+ }
languages/woocommerce-mercadopago-module-es_AR.mo DELETED
Binary file
languages/woocommerce-mercadopago-module-es_AR.po DELETED
@@ -1,703 +0,0 @@
1
- # WordPress Blank Pot
2
- # Copyright (C) 2014 ...
3
- # This file is distributed under the GNU General Public License v2 or later.
4
- msgid ""
5
- msgstr ""
6
- "Project-Id-Version: WordPress Blank Pot v1.0.0\n"
7
- "POT-Creation-Date: 2016-05-23 14:52-0300\n"
8
- "PO-Revision-Date: \n"
9
- "Language-Team: Product Development <translations@example.com>\n"
10
- "Report-Msgid-Bugs-To: Translator Name <translations@example.com>\n"
11
- "MIME-Version: 1.0\n"
12
- "Content-Type: text/plain; charset=UTF-8\n"
13
- "Content-Transfer-Encoding: 8bit\n"
14
- "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
- "X-Textdomain-Support: yesX-Generator: Poedit 1.6.4\n"
16
- "X-Poedit-SourceCharset: UTF-8\n"
17
- "X-Poedit-KeywordsList: __;_e;esc_html_e;esc_html_x:1,2c;esc_html__;esc_attr_e;esc_attr_x:1,2c;esc_attr__;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_x:1,2c;_n:1,2;"
18
- "_n_noop:1,2;__ngettext:1,2;__ngettext_noop:1,2;_c,_nc:4c,1,2\n"
19
- "X-Poedit-Basepath: ../Documents/woocommerce (MAMP)/wp-content/plugins/woo-mercado-pago-module\n"
20
- "X-Generator: Poedit 1.8.7\n"
21
- "Last-Translator: \n"
22
- "Language: es_AR\n"
23
- "X-Poedit-SearchPath-0: .\n"
24
-
25
- #. Description of the plugin/theme
26
- msgid "This is the <strong>oficial</strong> module of Mercado Pago for WooCommerce plugin. This module enables WooCommerce to use Mercado Pago as a payment Gateway for purchases made in your e-commerce store."
27
- msgstr "Este es el módulo <strong>oficial</strong> de Mercado Pago para el plugin WooCommerce. Este módulo habilita el uso de Mercado Pago en WooCommerce como método de pago para compras realizadas en su tienda virtual."
28
-
29
- #: mercadopago-module.php:69
30
- #, php-format
31
- msgid "Woo Mercado Pago Module depends on the last version of %s to execute!"
32
- msgstr "Woo Mercado Pago Module depende de la última versión de %s para ejecutarse!"
33
-
34
- #: mercadopago-module.php:109
35
- msgid "Standard Checkout"
36
- msgstr "Checkout Estándar"
37
-
38
- #: mercadopago-module.php:113
39
- msgid "Custom Checkout"
40
- msgstr "Checkout Custom"
41
-
42
- #: mercadopago/mercadopago-custom-gateway.php:48
43
- msgid "Mercado Pago - Custom Checkout"
44
- msgstr "Mercado Pago - Checkout Custom"
45
-
46
- #: mercadopago/mercadopago-custom-gateway.php:51 mercadopago/mercadopago-gateway.php:54
47
- msgid "This module enables WooCommerce to use Mercado Pago as payment method for purchases made in your virtual store."
48
- msgstr "Este módulo habilita el uso de Mercado Pago en WooCommerce como método de pago para compras realizadas en su tienda virtual."
49
-
50
- #: mercadopago/mercadopago-custom-gateway.php:126 mercadopago/mercadopago-custom-gateway.php:791 mercadopago/mercadopago-gateway.php:125
51
- #: mercadopago/mercadopago-gateway.php:716
52
- msgid "Argentine"
53
- msgstr "Argentina"
54
-
55
- #: mercadopago/mercadopago-custom-gateway.php:127 mercadopago/mercadopago-custom-gateway.php:792 mercadopago/mercadopago-gateway.php:126
56
- #: mercadopago/mercadopago-gateway.php:717
57
- msgid "Brazil"
58
- msgstr "Brasil"
59
-
60
- #: mercadopago/mercadopago-custom-gateway.php:128 mercadopago/mercadopago-custom-gateway.php:794 mercadopago/mercadopago-gateway.php:127
61
- #: mercadopago/mercadopago-gateway.php:719
62
- msgid "Chile"
63
- msgstr "Chile"
64
-
65
- #: mercadopago/mercadopago-custom-gateway.php:129 mercadopago/mercadopago-custom-gateway.php:793 mercadopago/mercadopago-gateway.php:128
66
- #: mercadopago/mercadopago-gateway.php:718
67
- msgid "Colombia"
68
- msgstr "Colombia"
69
-
70
- #: mercadopago/mercadopago-custom-gateway.php:130 mercadopago/mercadopago-custom-gateway.php:795 mercadopago/mercadopago-gateway.php:129
71
- #: mercadopago/mercadopago-gateway.php:720
72
- msgid "Mexico"
73
- msgstr "México"
74
-
75
- #: mercadopago/mercadopago-custom-gateway.php:132 mercadopago/mercadopago-gateway.php:130
76
- msgid "or"
77
- msgstr "o"
78
-
79
- #: mercadopago/mercadopago-custom-gateway.php:133 mercadopago/mercadopago-custom-gateway.php:796 mercadopago/mercadopago-gateway.php:131
80
- #: mercadopago/mercadopago-gateway.php:721
81
- msgid "Venezuela"
82
- msgstr "Venezuela"
83
-
84
- #: mercadopago/mercadopago-custom-gateway.php:145 mercadopago/mercadopago-gateway.php:151
85
- msgid "Your credentials are <strong>valid</strong> for"
86
- msgstr "Sus credenciales <strong>son válidas</strong> para"
87
-
88
- #: mercadopago/mercadopago-custom-gateway.php:151 mercadopago/mercadopago-custom-gateway.php:156 mercadopago/mercadopago-gateway.php:161
89
- #: mercadopago/mercadopago-gateway.php:170
90
- msgid "Your credentials are <strong>not valid</strong>!"
91
- msgstr "Sus credenciales <strong>no son válidas</strong>!"
92
-
93
- #: mercadopago/mercadopago-custom-gateway.php:169 mercadopago/mercadopago-gateway.php:211
94
- msgid "Enable/Disable"
95
- msgstr "Habilitar/Deshabilitar"
96
-
97
- #: mercadopago/mercadopago-custom-gateway.php:171
98
- msgid "Enable Custom Checkout"
99
- msgstr "Habilitar Checkout Custom"
100
-
101
- #: mercadopago/mercadopago-custom-gateway.php:175 mercadopago/mercadopago-gateway.php:217
102
- msgid "Mercado Pago Credentials"
103
- msgstr "Credenciales de Mercado Pago"
104
-
105
- #: mercadopago/mercadopago-custom-gateway.php:177 mercadopago/mercadopago-gateway.php:219
106
- msgid "You can obtain your credentials for"
107
- msgstr "Puedes obtener tus credenciales para"
108
-
109
- #: mercadopago/mercadopago-custom-gateway.php:182
110
- msgid "Insert your Mercado Pago Public key."
111
- msgstr "Inserte su Public Key de Mercado Pago."
112
-
113
- #: mercadopago/mercadopago-custom-gateway.php:189
114
- msgid "Insert your Mercado Pago Access token."
115
- msgstr "Inserte su Access Token de Mercado Pago."
116
-
117
- #: mercadopago/mercadopago-custom-gateway.php:194 mercadopago/mercadopago-gateway.php:236
118
- msgid "Instant Payment Notification (IPN) URL"
119
- msgstr "URL da Notificación Instantanea de Pago (IPN)"
120
-
121
- #: mercadopago/mercadopago-custom-gateway.php:196 mercadopago/mercadopago-gateway.php:238
122
- msgid "Your IPN URL to receive instant payment notifications is"
123
- msgstr "Su URL de IPN para recibir notificaciones instantáneas de pago es"
124
-
125
- #: mercadopago/mercadopago-custom-gateway.php:199 mercadopago/mercadopago-gateway.php:241
126
- msgid "Checkout Options"
127
- msgstr "Opciones de Checkout"
128
-
129
- #: mercadopago/mercadopago-custom-gateway.php:204 mercadopago/mercadopago-gateway.php:246
130
- msgid "Title"
131
- msgstr "Título"
132
-
133
- #: mercadopago/mercadopago-custom-gateway.php:206 mercadopago/mercadopago-gateway.php:248
134
- msgid "Title shown to the client in the checkout."
135
- msgstr "Título mostrado al cliente en el checkout."
136
-
137
- #: mercadopago/mercadopago-custom-gateway.php:207 mercadopago/mercadopago-custom-gateway.php:219 mercadopago/mercadopago-gateway.php:249
138
- msgid "Mercado Pago"
139
- msgstr "Mercado Pago"
140
-
141
- #: mercadopago/mercadopago-custom-gateway.php:210 mercadopago/mercadopago-gateway.php:252
142
- msgid "Description"
143
- msgstr "Descripción"
144
-
145
- #: mercadopago/mercadopago-custom-gateway.php:212 mercadopago/mercadopago-gateway.php:254
146
- msgid "Description shown to the client in the checkout."
147
- msgstr "Descripción mostrada al cliente en el checkout."
148
-
149
- #: mercadopago/mercadopago-custom-gateway.php:213 mercadopago/mercadopago-gateway.php:255 mercadopago/mercadopago-gateway.php:432
150
- msgid "Pay with Mercado Pago"
151
- msgstr "Pagar con Mercado Pago"
152
-
153
- #: mercadopago/mercadopago-custom-gateway.php:216
154
- msgid "Statement Descriptor"
155
- msgstr "Descripción de la Factura"
156
-
157
- #: mercadopago/mercadopago-custom-gateway.php:218
158
- msgid "The description that will be shown in your customer's invoice."
159
- msgstr "La descripción que se muestra en la factura de su cliente."
160
-
161
- #: mercadopago/mercadopago-custom-gateway.php:222
162
- msgid "Binary Mode"
163
- msgstr "Modo binario"
164
-
165
- #: mercadopago/mercadopago-custom-gateway.php:224
166
- msgid "Enable binary mode for checkout status"
167
- msgstr "Activar el modo binario para el estado del checkout"
168
-
169
- #: mercadopago/mercadopago-custom-gateway.php:226
170
- msgid "When charging a credit card, only [approved] or [reject] status will be taken."
171
- msgstr "Al cargar una tarjeta de crédito, sólo los estados [aprobado] o [rechazar] seran tomados."
172
-
173
- #: mercadopago/mercadopago-custom-gateway.php:229
174
- msgid "Ticket"
175
- msgstr "Ticket"
176
-
177
- #: mercadopago/mercadopago-custom-gateway.php:231
178
- msgid "Enable Ticket for Custom Checkout"
179
- msgstr "Habilitar Ticket para Checkout Custom"
180
-
181
- #: mercadopago/mercadopago-custom-gateway.php:233
182
- msgid "Let your customer pay you with tickets"
183
- msgstr "Deje que su cliente le paga con tickets"
184
-
185
- #: mercadopago/mercadopago-custom-gateway.php:236 mercadopago/mercadopago-gateway.php:258
186
- msgid "Store Category"
187
- msgstr "Categoría de la tienda"
188
-
189
- #: mercadopago/mercadopago-custom-gateway.php:238 mercadopago/mercadopago-gateway.php:260
190
- msgid "Define which type of products your store sells."
191
- msgstr "Defina el tipo de productos que su tienda vende."
192
-
193
- #: mercadopago/mercadopago-custom-gateway.php:242 mercadopago/mercadopago-gateway.php:264
194
- msgid "Store Identificator"
195
- msgstr "Identificador de la tienda"
196
-
197
- #: mercadopago/mercadopago-custom-gateway.php:244 mercadopago/mercadopago-gateway.php:266
198
- msgid "Please, inform a prefix to your store."
199
- msgstr "Por favor, informe un prefijo para su tienda."
200
-
201
- #: mercadopago/mercadopago-custom-gateway.php:244 mercadopago/mercadopago-gateway.php:266
202
- msgid ""
203
- "If you use your Mercado Pago account on multiple stores you should make sure that this prefix is unique as Mercado Pago will not allow orders with same "
204
- "identificators."
205
- msgstr ""
206
- "Si esta utilizando su cuenta Mercado Pago para múltiples tiendas, asegúrese que este prefijo sea único para no generar pedidos con el mismo identificador."
207
-
208
- #: mercadopago/mercadopago-custom-gateway.php:248 mercadopago/mercadopago-gateway.php:318
209
- msgid "Test and Debug Options"
210
- msgstr "Opciones de Prueba y Debug"
211
-
212
- #: mercadopago/mercadopago-custom-gateway.php:253 mercadopago/mercadopago-gateway.php:323
213
- msgid "Mercado Pago Sandbox"
214
- msgstr "Sandbox Mercado Pago"
215
-
216
- #: mercadopago/mercadopago-custom-gateway.php:255 mercadopago/mercadopago-gateway.php:325
217
- msgid "Enable Mercado Pago Sandbox"
218
- msgstr "Habilitar el sandbox de Mercado Pago"
219
-
220
- #: mercadopago/mercadopago-custom-gateway.php:257 mercadopago/mercadopago-gateway.php:327
221
- msgid "This option allows you to test payments inside a sandbox environment."
222
- msgstr "Esta opción permite simular un flujo de pagos completo en nuestro entorno Sandbox."
223
-
224
- #: mercadopago/mercadopago-custom-gateway.php:260 mercadopago/mercadopago-gateway.php:330
225
- msgid "Debug and Log"
226
- msgstr "Debug y Log"
227
-
228
- #: mercadopago/mercadopago-custom-gateway.php:262 mercadopago/mercadopago-gateway.php:332
229
- msgid "Enable log"
230
- msgstr "Habilitar Log"
231
-
232
- #: mercadopago/mercadopago-custom-gateway.php:264 mercadopago/mercadopago-gateway.php:334
233
- msgid "Register event logs of Mercado Pago, such as API requests, in the file"
234
- msgstr "Registrar logs de eventos de Mercado Pago, como llamadas a la API, dentro del archivo"
235
-
236
- #: mercadopago/mercadopago-custom-gateway.php:265 mercadopago/mercadopago-gateway.php:335
237
- msgid "File location: "
238
- msgstr "Local del archivo: "
239
-
240
- #: mercadopago/mercadopago-custom-gateway.php:281 mercadopago/mercadopago-gateway.php:351
241
- #, php-format
242
- msgid "Please, rate us %s on WordPress.org and give your feedback to help improve this module!"
243
- msgstr "Por favor, da tu evaluación con %s en WordPress.org y da su feedback para ayudar a mejorar este módulo!"
244
-
245
- #: mercadopago/mercadopago-custom-gateway.php:332
246
- msgid "Payment Method"
247
- msgstr "Métodos de Pago"
248
-
249
- #: mercadopago/mercadopago-custom-gateway.php:333
250
- msgid "Credit card number"
251
- msgstr "Número de tarjeta de crédito"
252
-
253
- #: mercadopago/mercadopago-custom-gateway.php:334
254
- msgid "Expiration month"
255
- msgstr "Mes de expiración"
256
-
257
- #: mercadopago/mercadopago-custom-gateway.php:335
258
- msgid "Expiration year"
259
- msgstr "Año de expiración"
260
-
261
- #: mercadopago/mercadopago-custom-gateway.php:336
262
- msgid "Year"
263
- msgstr "Año"
264
-
265
- #: mercadopago/mercadopago-custom-gateway.php:337
266
- msgid "Month"
267
- msgstr "Mes"
268
-
269
- #: mercadopago/mercadopago-custom-gateway.php:338
270
- msgid "Card holder name"
271
- msgstr "Nombre del titular de la tarjeta"
272
-
273
- #: mercadopago/mercadopago-custom-gateway.php:339
274
- msgid "Security code"
275
- msgstr "Código de seguridad"
276
-
277
- #: mercadopago/mercadopago-custom-gateway.php:340
278
- msgid "Document Type"
279
- msgstr "Tipo de Documento"
280
-
281
- #: mercadopago/mercadopago-custom-gateway.php:341
282
- msgid "Document number"
283
- msgstr "Número del Documento"
284
-
285
- #: mercadopago/mercadopago-custom-gateway.php:342
286
- msgid "Issuer"
287
- msgstr "Emisor"
288
-
289
- #: mercadopago/mercadopago-custom-gateway.php:343
290
- msgid "Installments"
291
- msgstr "Cuotas"
292
-
293
- #: mercadopago/mercadopago-custom-gateway.php:347
294
- msgid "Parameter cardNumber can not be null/empty"
295
- msgstr "Parámetro [Numero de tarjeta] no puede ser nulo/vacío"
296
-
297
- #: mercadopago/mercadopago-custom-gateway.php:348
298
- msgid "Invalid Card Number"
299
- msgstr "Numero de tarjeta invalido"
300
-
301
- #: mercadopago/mercadopago-custom-gateway.php:350 mercadopago/mercadopago-custom-gateway.php:351 mercadopago/mercadopago-custom-gateway.php:352
302
- #: mercadopago/mercadopago-custom-gateway.php:353
303
- msgid "Invalid Expiration Date"
304
- msgstr "Fecha de vencimiento inválida"
305
-
306
- #: mercadopago/mercadopago-custom-gateway.php:355
307
- msgid "Parameter cardholderName can not be null/empty"
308
- msgstr "Parámetro [Nombre del titular] no puede ser nulo/vacío"
309
-
310
- #: mercadopago/mercadopago-custom-gateway.php:356
311
- msgid "Invalid Card Holder Name"
312
- msgstr "Nombre del titular de la tarjeta invalido"
313
-
314
- #: mercadopago/mercadopago-custom-gateway.php:358
315
- msgid "Parameter securityCode can not be null/empty"
316
- msgstr "Parámetro [Código de seguridad] no puede ser nulo/vacío"
317
-
318
- #: mercadopago/mercadopago-custom-gateway.php:359
319
- msgid "Invalid Security Code"
320
- msgstr "Código de seguridad invalido"
321
-
322
- #: mercadopago/mercadopago-custom-gateway.php:361
323
- msgid "Parameter docType can not be null/empty"
324
- msgstr "Parámetro [Tipo de Documento] no puede ser nulo/vacío"
325
-
326
- #: mercadopago/mercadopago-custom-gateway.php:362
327
- msgid "Invalid Document Type"
328
- msgstr "Tipo de Documento invalido"
329
-
330
- #: mercadopago/mercadopago-custom-gateway.php:364
331
- msgid "Parameter docNumber can not be null/empty"
332
- msgstr "Parámetro [Número del Documento] no puede ser nulo/vacío"
333
-
334
- #: mercadopago/mercadopago-custom-gateway.php:365
335
- msgid "Invalid Document Number"
336
- msgstr "Número del Documento invalido"
337
-
338
- #: mercadopago/mercadopago-custom-gateway.php:367
339
- msgid "The parameter cardholder.document.subtype can not be null or empty"
340
- msgstr "Parámetro [Subtipo del documento] no puede ser nulo/vacío"
341
-
342
- #: mercadopago/mercadopago-custom-gateway.php:368
343
- msgid "Invalid Document Sub Type"
344
- msgstr "Subtipo del documento invalido"
345
-
346
- #: mercadopago/mercadopago-custom-gateway.php:370
347
- msgid "Parameter cardIssuerId can not be null/empty"
348
- msgstr "Parámetro [Emisor] no puede ser nulo/vacío"
349
-
350
- #: mercadopago/mercadopago-custom-gateway.php:402 mercadopago/mercadopago-custom-gateway.php:943 mercadopago/mercadopago-gateway.php:869
351
- msgid "Payment approved."
352
- msgstr "Pago aprobado."
353
-
354
- #: mercadopago/mercadopago-custom-gateway.php:416 mercadopago/mercadopago-custom-gateway.php:805
355
- msgid "Your payment is under review. In less than 1h, you should be notified by email."
356
- msgstr "Su pago está en revisión. En menos de 1 hora, usted debe ser notificado por correo electrónico."
357
-
358
- #: mercadopago/mercadopago-custom-gateway.php:418
359
- msgid "Check your order resume"
360
- msgstr "Ver su hoja de pedido"
361
-
362
- #: mercadopago/mercadopago-custom-gateway.php:431
363
- msgid "Your payment was refused. You can try again."
364
- msgstr "Su pago fue rechazado. Puede intentarlo de nuevo."
365
-
366
- #: mercadopago/mercadopago-custom-gateway.php:435 mercadopago/mercadopago-custom-gateway.php:819 mercadopago/mercadopago-gateway.php:460
367
- msgid "Click to try again"
368
- msgstr "Haga clic para Inténtalo de nuevo"
369
-
370
- #: mercadopago/mercadopago-custom-gateway.php:455
371
- msgid "A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?"
372
- msgstr "Un problema se produjo al procesar su pago. Usted esta seguro de que ha rellenado correctamente toda la información en la forma de checkout?"
373
-
374
- #: mercadopago/mercadopago-custom-gateway.php:544
375
- msgid "Shipping"
376
- msgstr "Envío"
377
-
378
- #: mercadopago/mercadopago-custom-gateway.php:545
379
- msgid "Shipping service used by store"
380
- msgstr "Servicio de envío utilizado por el almacén"
381
-
382
- #: mercadopago/mercadopago-custom-gateway.php:721 mercadopago/mercadopago-gateway.php:649
383
- msgid "WooCommerce &gt; System Status &gt; Logs"
384
- msgstr "WooCommerce &gt; Estado del Sistema &gt; Logs"
385
-
386
- #: mercadopago/mercadopago-custom-gateway.php:766 mercadopago/mercadopago-custom-gateway.php:779 mercadopago/mercadopago-gateway.php:694
387
- #: mercadopago/mercadopago-gateway.php:705
388
- msgid "Mercado Pago is Inactive"
389
- msgstr "Mercado Pago Inactivo"
390
-
391
- #: mercadopago/mercadopago-custom-gateway.php:769
392
- msgid "Your Mercado Pago credentials Public Key/Access Token appears to be misconfigured."
393
- msgstr "Sus credenciales Client_id/Client_secret de Mercado Pago parecen no estar debidamente configuradas."
394
-
395
- #: mercadopago/mercadopago-custom-gateway.php:771 mercadopago/mercadopago-gateway.php:698
396
- msgid "Click here and configure!"
397
- msgstr "Haga click aquí y configure!"
398
-
399
- #: mercadopago/mercadopago-custom-gateway.php:782 mercadopago/mercadopago-gateway.php:708
400
- msgid "The currency"
401
- msgstr "La moneda"
402
-
403
- #: mercadopago/mercadopago-custom-gateway.php:783 mercadopago/mercadopago-gateway.php:708
404
- msgid "is not supported. Supported currencies are: ARS, BRL, CLP, COP, MXN, VEF."
405
- msgstr "no es soportada. Las monedas soportadas son: ARS, BRL, CLP, COP, MXN, VEF."
406
-
407
- #: mercadopago/mercadopago-custom-gateway.php:797
408
- msgid "Peru"
409
- msgstr "Peru"
410
-
411
- #: mercadopago/mercadopago-custom-gateway.php:809
412
- msgid "Click to check your order"
413
- msgstr "Haga clic para comprobar su pedido"
414
-
415
- #: mercadopago/mercadopago-custom-gateway.php:814 mercadopago/mercadopago-gateway.php:457
416
- msgid "An error occurred when proccessing your payment. Please try again or contact us for assistence."
417
- msgstr "Se ha producido un error en el procesamiento de su pago. Por favor, inténtelo de nuevo o póngase en contacto con nosotros para Asistencia."
418
-
419
- #: mercadopago/mercadopago-custom-gateway.php:816
420
- msgid "Reason is: "
421
- msgstr "La razón es:"
422
-
423
- #: mercadopago/mercadopago-custom-gateway.php:849 mercadopago/mercadopago-gateway.php:748
424
- msgid "Mercado Pago Request Failure"
425
- msgstr "La solicitud de Mercado Pago ha fallado."
426
-
427
- #: mercadopago/mercadopago-custom-gateway.php:918 mercadopago/mercadopago-gateway.php:822
428
- msgid "Payer email"
429
- msgstr "Email del comprador"
430
-
431
- #: mercadopago/mercadopago-custom-gateway.php:926 mercadopago/mercadopago-gateway.php:829
432
- msgid "Payment type"
433
- msgstr "Método de pago"
434
-
435
- #: mercadopago/mercadopago-custom-gateway.php:934 mercadopago/mercadopago-gateway.php:841
436
- msgid "Mercado Pago Payment ID"
437
- msgstr "ID de pago de Mercado Pago"
438
-
439
- #: mercadopago/mercadopago-custom-gateway.php:950 mercadopago/mercadopago-gateway.php:875
440
- msgid "Customer haven't paid yet."
441
- msgstr "El cliente todavía no efectuó el pago."
442
-
443
- #: mercadopago/mercadopago-custom-gateway.php:957 mercadopago/mercadopago-gateway.php:881
444
- msgid "Payment under review."
445
- msgstr "El pago está pendiente de revisión."
446
-
447
- #: mercadopago/mercadopago-custom-gateway.php:964 mercadopago/mercadopago-gateway.php:887
448
- msgid "The payment was refused. The customer can try again."
449
- msgstr "El pago fue rechazado. El cliente puede intentar nuevamente."
450
-
451
- #: mercadopago/mercadopago-custom-gateway.php:971 mercadopago/mercadopago-gateway.php:893
452
- msgid "The payment was refunded to the customer."
453
- msgstr "El pago fue devuelto al cliente."
454
-
455
- #: mercadopago/mercadopago-custom-gateway.php:978 mercadopago/mercadopago-gateway.php:899
456
- msgid "The payment was cancelled."
457
- msgstr "El pago fue cancelado."
458
-
459
- #: mercadopago/mercadopago-custom-gateway.php:984 mercadopago/mercadopago-custom-gateway.php:990 mercadopago/mercadopago-gateway.php:904
460
- #: mercadopago/mercadopago-gateway.php:909
461
- msgid "The payment is under mediation or it was charged-back."
462
- msgstr "El pago esta en mediación o la compra fue desconocida por el cliente."
463
-
464
- #: mercadopago/mercadopago-gateway.php:51
465
- msgid "Mercado Pago - Standard Checkout"
466
- msgstr "Mercado Pago - Checkout Estándar"
467
-
468
- #: mercadopago/mercadopago-gateway.php:148
469
- msgid "Select the payment methods that you <strong>don't</strong> want to receive with Mercado Pago."
470
- msgstr "Selecione los medios de pago que <strong>no</strong> desea aceptar con Mercado Pago."
471
-
472
- #: mercadopago/mercadopago-gateway.php:158 mercadopago/mercadopago-gateway.php:167
473
- msgid "Configure your Client_id and Client_secret to have access to more options."
474
- msgstr "Configure su Client_id y Client_secret para tener acceso a más opciones."
475
-
476
- #: mercadopago/mercadopago-gateway.php:184 mercadopago/mercadopago-gateway.php:192 mercadopago/mercadopago-gateway.php:202
477
- msgid "This field should be an integer."
478
- msgstr "Este campo debe ser un número."
479
-
480
- #: mercadopago/mercadopago-gateway.php:187
481
- msgid "If your integration method is iFrame, please inform the payment iFrame width."
482
- msgstr "Si su modo de apertura es iFrame, indique el ancho del iFrame."
483
-
484
- #: mercadopago/mercadopago-gateway.php:195
485
- msgid "If your integration method is iFrame, please inform the payment iFrame height."
486
- msgstr "Si su modo de apertura es iFrame, indique el alto del iFrame."
487
-
488
- #: mercadopago/mercadopago-gateway.php:205
489
- msgid "Select the max number of installments for your customers."
490
- msgstr "Seleccione el número máximo de cuotas posibles para sus clientes."
491
-
492
- #: mercadopago/mercadopago-gateway.php:213
493
- msgid "Enable Standard Checkout"
494
- msgstr "Habilitar el Checkout Estándar"
495
-
496
- #: mercadopago/mercadopago-gateway.php:224
497
- msgid "Insert your Mercado Pago Client_id."
498
- msgstr "Inserte su Client_id de Mercado Pago."
499
-
500
- #: mercadopago/mercadopago-gateway.php:231
501
- msgid "Insert your Mercado Pago Client_secret."
502
- msgstr "Inserte su Client_secret de Mercado Pago."
503
-
504
- #: mercadopago/mercadopago-gateway.php:270
505
- msgid "Integration Method"
506
- msgstr "Método de integración"
507
-
508
- #: mercadopago/mercadopago-gateway.php:272
509
- msgid ""
510
- "Select how your clients should interact with Mercado Pago. Modal Window (inside your store), Redirect (Client is redirected to Mercado Pago), or iFrame (an "
511
- "internal window is embedded to the page layout)."
512
- msgstr ""
513
- "Seleccione la forma en que sus clientes deben interactuar con Mercado Pago. Ventana Modal (Dentro de su tienda), Redireccionamiento (El cliente es "
514
- "redireccionado a Mercado Pago), o iFrame (Ventana de pago incorporada a su página)."
515
-
516
- #: mercadopago/mercadopago-gateway.php:275
517
- msgid "iFrame"
518
- msgstr "iFrame"
519
-
520
- #: mercadopago/mercadopago-gateway.php:276
521
- msgid "Modal Window"
522
- msgstr "Ventana modal"
523
-
524
- #: mercadopago/mercadopago-gateway.php:277
525
- msgid "Redirect"
526
- msgstr "Redireccionamiento"
527
-
528
- #: mercadopago/mercadopago-gateway.php:281
529
- msgid "iFrame Width"
530
- msgstr "Ancho del iFrame"
531
-
532
- #: mercadopago/mercadopago-gateway.php:287
533
- msgid "iFrame Height"
534
- msgstr "Alto del iFrame"
535
-
536
- #: mercadopago/mercadopago-gateway.php:293
537
- msgid "Auto Return"
538
- msgstr "Redirección automática"
539
-
540
- #: mercadopago/mercadopago-gateway.php:295
541
- msgid "Automatic Return After Payment"
542
- msgstr "Redirección Automática Luego del Pago"
543
-
544
- #: mercadopago/mercadopago-gateway.php:297
545
- msgid "After the payment, client is automatically redirected."
546
- msgstr "Después del pago, el cliente será redireccionado automáticamente."
547
-
548
- #: mercadopago/mercadopago-gateway.php:300
549
- msgid "Payment Options"
550
- msgstr "Opciones de Pago"
551
-
552
- #: mercadopago/mercadopago-gateway.php:305
553
- msgid "Max installments"
554
- msgstr "Número máximo de cuotas"
555
-
556
- #: mercadopago/mercadopago-gateway.php:311
557
- msgid "Exclude Payment Methods"
558
- msgstr "Excluir métodos de pago"
559
-
560
- #: mercadopago/mercadopago-gateway.php:428
561
- msgid "Thank you for your order. Please, proceed with your payment clicking in the bellow button."
562
- msgstr "Gracias por su compra. Por favor, prosiga a la página de pago haciendo click en el botón de abajo."
563
-
564
- #: mercadopago/mercadopago-gateway.php:436
565
- msgid "Cancel order &amp; Clear cart"
566
- msgstr "Cancelar &amp; Limpiar carrito"
567
-
568
- #: mercadopago/mercadopago-gateway.php:446
569
- msgid "Thank you for your order. Proceed with your payment completing the following information."
570
- msgstr "Gracias por su compra. Prosiga con su pago completando la información abajo."
571
-
572
- #: mercadopago/mercadopago-gateway.php:697
573
- msgid "Your Mercado Pago credentials Client_id/Client_secret appears to be misconfigured."
574
- msgstr "Sus credenciales Client_id/Client_secret de Mercado Pago parecen no estar debidamente configuradas."
575
-
576
- msgid " as it appears in your card ..."
577
- msgstr " tal como aparece en su tarjeta ..."
578
-
579
- msgid "Done, your payment was accredited!"
580
- msgstr "Listo, su pago ha sido aceptado!"
581
-
582
- msgid "We are processing the payment. In less than an hour we will e-mail you the results."
583
- msgstr "Estamos procesando su pago. En menos de una hora se le notificará por correo electrónico."
584
-
585
- msgid "We are processing the payment. In less than 2 business days we will tell you by e-mail whether it has accredited or we need more information."
586
- msgstr "Estamos procesando su pago. En menos de 2 días se le notificará por correo electrónico si se ha aprobado el pago o si se necesita información adicional."
587
-
588
- msgid "Check the card number."
589
- msgstr "Compruebe el número de tarjeta."
590
-
591
- msgid "Check the expiration date."
592
- msgstr "Compruebe la fecha de expiración."
593
-
594
- msgid "Check the information."
595
- msgstr "Compruebe la información informada."
596
-
597
- msgid "Check the security code."
598
- msgstr "Compruebe el código de seguridad informado."
599
-
600
- msgid "We could not process your payment."
601
- msgstr "No se puede procesar su pago."
602
-
603
- msgid "You must authorize the payment of your orders."
604
- msgstr "Usted debe autorizar pagos de sus órdenes."
605
-
606
- msgid "Call your card issuer to activate your card. The phone is on the back of your card."
607
- msgstr "Póngase en contacto con el emisor de su tarjeta para activarla. El teléfono se encuentra en la parte posterior de su tarjeta."
608
-
609
- msgid "You already made a payment for that amount. If you need to repay, use another card or other payment method."
610
- msgstr "Usted ya realizó el pago de esta cantidad. Si tiene que pagar de nuevo, utilizar otra tarjeta u otro método de pago."
611
-
612
- msgid "Your payment was rejected. Choose another payment method. We recommend cash."
613
- msgstr "Su pago fue rechazado. Por favor seleccione otro método de pago. Se recomienda dinero."
614
-
615
- msgid "Your payment do not have sufficient funds."
616
- msgstr "Su pago no tiene fondos suficientes."
617
-
618
- msgid "Your payment does not process payments with selected installments."
619
- msgstr "El pago no puede procesar la cuota seleccionada."
620
-
621
- msgid "You have reached the limit of allowed attempts. Choose another card or another payment method."
622
- msgstr "Has alcanzado el límite de intentos permitidos. Elija otra tarjeta u otro método de pago."
623
-
624
- msgid "This payment method did not process the payment."
625
- msgstr "Esta forma de pago no puede procesar su pago."
626
-
627
- msgid "Mercado Pago - Ticket"
628
- msgstr "Mercado Pago - Ticket"
629
-
630
- msgid "Mercado Pago - Credit Card"
631
- msgstr "Mercado Pago - Tarjeta de Crédito"
632
-
633
- msgid "Ticket Options"
634
- msgstr "Opciones de Ticket"
635
-
636
- msgid "Enable Ticket Payment Method"
637
- msgstr "Habilitar Pago con Ticket"
638
-
639
- msgid "Other Bank"
640
- msgstr "Otro Banco"
641
-
642
- msgid "Choose"
643
- msgstr "Escoger"
644
-
645
- msgid "A problem was occurred when processing your payment. Please, try again."
646
- msgstr "Un problema se produjo al procesar su pago. Por favor, inténtelo de nuevo."
647
-
648
- msgid "Thank you for your order. Please, pay the ticket to get your order approved."
649
- msgstr "Gracias por su orden. Por favor, pagar el ticket para tener su solicitud aprobada."
650
-
651
- msgid "Waiting for the ticket payment."
652
- msgstr "Esperando el pago del ticket."
653
-
654
- msgid "Print the Ticket"
655
- msgstr "Imprimir el ticket"
656
-
657
- msgid "To reprint the ticket click "
658
- msgstr "Para imprimir nuevamente el ticket hace clic "
659
-
660
- msgid "here"
661
- msgstr "aquí"
662
-
663
- msgid "Custom Checkout is Inactive"
664
- msgstr "Checkout Custom Inactivo"
665
-
666
- msgid "Standard Checkout is Inactive"
667
- msgstr "Checkout Estándar Inactivo"
668
-
669
- msgid "Ticket is Inactive"
670
- msgstr "Ticket Inactivo"
671
-
672
- msgid "Please, select the ticket issuer of your preference and then click "Place order" button. The ticket will be generated and you will be redirected to print it."
673
- msgstr "Por favor, seleccione el emisor de su elección y haga clic en el botón "PLACE ORDER". El ticket será generado y usted será redirigido a imprimirlo."
674
-
675
- msgid "Important: The order will be confirmed only after the payment approval."
676
- msgstr "Importante: La solicitud sólo será confirmada después de la aprobación del pago."
677
-
678
- msgid "Your Mercado Pago credential Access Token appears to be misconfigured."
679
- msgstr "Su credencial Access Token de Mercado de Pago parece estar desconfigurado."
680
-
681
- msgid "Your Card"
682
- msgstr "Sus Tarjetas"
683
-
684
- msgid "Other Cards"
685
- msgstr "Otras Tarjetas"
686
-
687
- msgid "Other Card"
688
- msgstr "Otra Tarjeta"
689
-
690
- msgid "ended in"
691
- msgstr "terminado en"
692
-
693
- msgid "Your site appears to not have SSL certification. SSL is a pre-requisite because the payment process is made in your server."
694
- msgstr "Su sitio parece no tener certificación SSL. SSL es un requisito previo porque la tramitación del pago se realiza en el servidor."
695
-
696
- msgid "<strong>ATTENTION: The currency"
697
- msgstr "<strong>ATENCIÓN: La moneda"
698
-
699
- msgid "defined in WooCommerce is different from the one used in your credentials country.<br>The currency for transactions in this payment method will be"
700
- msgstr "que se define en WooCommerce es diferente de la utilizada en el país de sus credenciales.<br>La moneda para las transacciones realizadas por este método de pago será"
701
-
702
- msgid "Currency conversions should be made outside this module.</strong><br><br>"
703
- msgstr "Conversiones de monedas se deben hacerse fuera de este módulo.</strong><br><br>"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
languages/woocommerce-mercadopago-module-es_CL.mo DELETED
Binary file
languages/woocommerce-mercadopago-module-es_CL.po DELETED
@@ -1,703 +0,0 @@
1
- # WordPress Blank Pot
2
- # Copyright (C) 2014 ...
3
- # This file is distributed under the GNU General Public License v2 or later.
4
- msgid ""
5
- msgstr ""
6
- "Project-Id-Version: WordPress Blank Pot v1.0.0\n"
7
- "POT-Creation-Date: 2016-05-23 14:52-0300\n"
8
- "PO-Revision-Date: \n"
9
- "Language-Team: Product Development <translations@example.com>\n"
10
- "Report-Msgid-Bugs-To: Translator Name <translations@example.com>\n"
11
- "MIME-Version: 1.0\n"
12
- "Content-Type: text/plain; charset=UTF-8\n"
13
- "Content-Transfer-Encoding: 8bit\n"
14
- "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
- "X-Textdomain-Support: yesX-Generator: Poedit 1.6.4\n"
16
- "X-Poedit-SourceCharset: UTF-8\n"
17
- "X-Poedit-KeywordsList: __;_e;esc_html_e;esc_html_x:1,2c;esc_html__;esc_attr_e;esc_attr_x:1,2c;esc_attr__;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_x:1,2c;_n:1,2;"
18
- "_n_noop:1,2;__ngettext:1,2;__ngettext_noop:1,2;_c,_nc:4c,1,2\n"
19
- "X-Poedit-Basepath: ../Documents/woocommerce (MAMP)/wp-content/plugins/woo-mercado-pago-module\n"
20
- "X-Generator: Poedit 1.8.7\n"
21
- "Last-Translator: \n"
22
- "Language: es_CL\n"
23
- "X-Poedit-SearchPath-0: .\n"
24
-
25
- #. Description of the plugin/theme
26
- msgid "This is the <strong>oficial</strong> module of Mercado Pago for WooCommerce plugin. This module enables WooCommerce to use Mercado Pago as a payment Gateway for purchases made in your e-commerce store."
27
- msgstr "Este es el módulo <strong>oficial</strong> de Mercado Pago para el plugin WooCommerce. Este módulo habilita el uso de Mercado Pago en WooCommerce como método de pago para compras realizadas en su tienda virtual."
28
-
29
- #: mercadopago-module.php:69
30
- #, php-format
31
- msgid "Woo Mercado Pago Module depends on the last version of %s to execute!"
32
- msgstr "Woo Mercado Pago Module depende de la última versión de %s para ejecutarse!"
33
-
34
- #: mercadopago-module.php:109
35
- msgid "Standard Checkout"
36
- msgstr "Checkout Estándar"
37
-
38
- #: mercadopago-module.php:113
39
- msgid "Custom Checkout"
40
- msgstr "Checkout Custom"
41
-
42
- #: mercadopago/mercadopago-custom-gateway.php:48
43
- msgid "Mercado Pago - Custom Checkout"
44
- msgstr "Mercado Pago - Checkout Custom"
45
-
46
- #: mercadopago/mercadopago-custom-gateway.php:51 mercadopago/mercadopago-gateway.php:54
47
- msgid "This module enables WooCommerce to use Mercado Pago as payment method for purchases made in your virtual store."
48
- msgstr "Este módulo habilita el uso de Mercado Pago en WooCommerce como método de pago para compras realizadas en su tienda virtual."
49
-
50
- #: mercadopago/mercadopago-custom-gateway.php:126 mercadopago/mercadopago-custom-gateway.php:791 mercadopago/mercadopago-gateway.php:125
51
- #: mercadopago/mercadopago-gateway.php:716
52
- msgid "Argentine"
53
- msgstr "Argentina"
54
-
55
- #: mercadopago/mercadopago-custom-gateway.php:127 mercadopago/mercadopago-custom-gateway.php:792 mercadopago/mercadopago-gateway.php:126
56
- #: mercadopago/mercadopago-gateway.php:717
57
- msgid "Brazil"
58
- msgstr "Brasil"
59
-
60
- #: mercadopago/mercadopago-custom-gateway.php:128 mercadopago/mercadopago-custom-gateway.php:794 mercadopago/mercadopago-gateway.php:127
61
- #: mercadopago/mercadopago-gateway.php:719
62
- msgid "Chile"
63
- msgstr "Chile"
64
-
65
- #: mercadopago/mercadopago-custom-gateway.php:129 mercadopago/mercadopago-custom-gateway.php:793 mercadopago/mercadopago-gateway.php:128
66
- #: mercadopago/mercadopago-gateway.php:718
67
- msgid "Colombia"
68
- msgstr "Colombia"
69
-
70
- #: mercadopago/mercadopago-custom-gateway.php:130 mercadopago/mercadopago-custom-gateway.php:795 mercadopago/mercadopago-gateway.php:129
71
- #: mercadopago/mercadopago-gateway.php:720
72
- msgid "Mexico"
73
- msgstr "México"
74
-
75
- #: mercadopago/mercadopago-custom-gateway.php:132 mercadopago/mercadopago-gateway.php:130
76
- msgid "or"
77
- msgstr "o"
78
-
79
- #: mercadopago/mercadopago-custom-gateway.php:133 mercadopago/mercadopago-custom-gateway.php:796 mercadopago/mercadopago-gateway.php:131
80
- #: mercadopago/mercadopago-gateway.php:721
81
- msgid "Venezuela"
82
- msgstr "Venezuela"
83
-
84
- #: mercadopago/mercadopago-custom-gateway.php:145 mercadopago/mercadopago-gateway.php:151
85
- msgid "Your credentials are <strong>valid</strong> for"
86
- msgstr "Sus credenciales <strong>son válidas</strong> para"
87
-
88
- #: mercadopago/mercadopago-custom-gateway.php:151 mercadopago/mercadopago-custom-gateway.php:156 mercadopago/mercadopago-gateway.php:161
89
- #: mercadopago/mercadopago-gateway.php:170
90
- msgid "Your credentials are <strong>not valid</strong>!"
91
- msgstr "Sus credenciales <strong>no son válidas</strong>!"
92
-
93
- #: mercadopago/mercadopago-custom-gateway.php:169 mercadopago/mercadopago-gateway.php:211
94
- msgid "Enable/Disable"
95
- msgstr "Habilitar/Deshabilitar"
96
-
97
- #: mercadopago/mercadopago-custom-gateway.php:171
98
- msgid "Enable Custom Checkout"
99
- msgstr "Habilitar Checkout Custom"
100
-
101
- #: mercadopago/mercadopago-custom-gateway.php:175 mercadopago/mercadopago-gateway.php:217
102
- msgid "Mercado Pago Credentials"
103
- msgstr "Credenciales de Mercado Pago"
104
-
105
- #: mercadopago/mercadopago-custom-gateway.php:177 mercadopago/mercadopago-gateway.php:219
106
- msgid "You can obtain your credentials for"
107
- msgstr "Puedes obtener tus credenciales para"
108
-
109
- #: mercadopago/mercadopago-custom-gateway.php:182
110
- msgid "Insert your Mercado Pago Public key."
111
- msgstr "Inserte su Public Key de Mercado Pago."
112
-
113
- #: mercadopago/mercadopago-custom-gateway.php:189
114
- msgid "Insert your Mercado Pago Access token."
115
- msgstr "Inserte su Access Token de Mercado Pago."
116
-
117
- #: mercadopago/mercadopago-custom-gateway.php:194 mercadopago/mercadopago-gateway.php:236
118
- msgid "Instant Payment Notification (IPN) URL"
119
- msgstr "URL da Notificación Instantanea de Pago (IPN)"
120
-
121
- #: mercadopago/mercadopago-custom-gateway.php:196 mercadopago/mercadopago-gateway.php:238
122
- msgid "Your IPN URL to receive instant payment notifications is"
123
- msgstr "Su URL de IPN para recibir notificaciones instantáneas de pago es"
124
-
125
- #: mercadopago/mercadopago-custom-gateway.php:199 mercadopago/mercadopago-gateway.php:241
126
- msgid "Checkout Options"
127
- msgstr "Opciones de Checkout"
128
-
129
- #: mercadopago/mercadopago-custom-gateway.php:204 mercadopago/mercadopago-gateway.php:246
130
- msgid "Title"
131
- msgstr "Título"
132
-
133
- #: mercadopago/mercadopago-custom-gateway.php:206 mercadopago/mercadopago-gateway.php:248
134
- msgid "Title shown to the client in the checkout."
135
- msgstr "Título mostrado al cliente en el checkout."
136
-
137
- #: mercadopago/mercadopago-custom-gateway.php:207 mercadopago/mercadopago-custom-gateway.php:219 mercadopago/mercadopago-gateway.php:249
138
- msgid "Mercado Pago"
139
- msgstr "Mercado Pago"
140
-
141
- #: mercadopago/mercadopago-custom-gateway.php:210 mercadopago/mercadopago-gateway.php:252
142
- msgid "Description"
143
- msgstr "Descripción"
144
-
145
- #: mercadopago/mercadopago-custom-gateway.php:212 mercadopago/mercadopago-gateway.php:254
146
- msgid "Description shown to the client in the checkout."
147
- msgstr "Descripción mostrada al cliente en el checkout."
148
-
149
- #: mercadopago/mercadopago-custom-gateway.php:213 mercadopago/mercadopago-gateway.php:255 mercadopago/mercadopago-gateway.php:432
150
- msgid "Pay with Mercado Pago"
151
- msgstr "Pagar con Mercado Pago"
152
-
153
- #: mercadopago/mercadopago-custom-gateway.php:216
154
- msgid "Statement Descriptor"
155
- msgstr "Descripción de la Factura"
156
-
157
- #: mercadopago/mercadopago-custom-gateway.php:218
158
- msgid "The description that will be shown in your customer's invoice."
159
- msgstr "La descripción que se muestra en la factura de su cliente."
160
-
161
- #: mercadopago/mercadopago-custom-gateway.php:222
162
- msgid "Binary Mode"
163
- msgstr "Modo binario"
164
-
165
- #: mercadopago/mercadopago-custom-gateway.php:224
166
- msgid "Enable binary mode for checkout status"
167
- msgstr "Activar el modo binario para el estado del checkout"
168
-
169
- #: mercadopago/mercadopago-custom-gateway.php:226
170
- msgid "When charging a credit card, only [approved] or [reject] status will be taken."
171
- msgstr "Al cargar una tarjeta de crédito, sólo los estados [aprobado] o [rechazar] seran tomados."
172
-
173
- #: mercadopago/mercadopago-custom-gateway.php:229
174
- msgid "Ticket"
175
- msgstr "Ticket"
176
-
177
- #: mercadopago/mercadopago-custom-gateway.php:231
178
- msgid "Enable Ticket for Custom Checkout"
179
- msgstr "Habilitar Ticket para Checkout Custom"
180
-
181
- #: mercadopago/mercadopago-custom-gateway.php:233
182
- msgid "Let your customer pay you with tickets"
183
- msgstr "Deje que su cliente le paga con tickets"
184
-
185
- #: mercadopago/mercadopago-custom-gateway.php:236 mercadopago/mercadopago-gateway.php:258
186
- msgid "Store Category"
187
- msgstr "Categoría de la tienda"
188
-
189
- #: mercadopago/mercadopago-custom-gateway.php:238 mercadopago/mercadopago-gateway.php:260
190
- msgid "Define which type of products your store sells."
191
- msgstr "Defina el tipo de productos que su tienda vende."
192
-
193
- #: mercadopago/mercadopago-custom-gateway.php:242 mercadopago/mercadopago-gateway.php:264
194
- msgid "Store Identificator"
195
- msgstr "Identificador de la tienda"
196
-
197
- #: mercadopago/mercadopago-custom-gateway.php:244 mercadopago/mercadopago-gateway.php:266
198
- msgid "Please, inform a prefix to your store."
199
- msgstr "Por favor, informe un prefijo para su tienda."
200
-
201
- #: mercadopago/mercadopago-custom-gateway.php:244 mercadopago/mercadopago-gateway.php:266
202
- msgid ""
203
- "If you use your Mercado Pago account on multiple stores you should make sure that this prefix is unique as Mercado Pago will not allow orders with same "
204
- "identificators."
205
- msgstr ""
206
- "Si esta utilizando su cuenta Mercado Pago para múltiples tiendas, asegúrese que este prefijo sea único para no generar pedidos con el mismo identificador."
207
-
208
- #: mercadopago/mercadopago-custom-gateway.php:248 mercadopago/mercadopago-gateway.php:318
209
- msgid "Test and Debug Options"
210
- msgstr "Opciones de Prueba y Debug"
211
-
212
- #: mercadopago/mercadopago-custom-gateway.php:253 mercadopago/mercadopago-gateway.php:323
213
- msgid "Mercado Pago Sandbox"
214
- msgstr "Sandbox Mercado Pago"
215
-
216
- #: mercadopago/mercadopago-custom-gateway.php:255 mercadopago/mercadopago-gateway.php:325
217
- msgid "Enable Mercado Pago Sandbox"
218
- msgstr "Habilitar el sandbox de Mercado Pago"
219
-
220
- #: mercadopago/mercadopago-custom-gateway.php:257 mercadopago/mercadopago-gateway.php:327
221
- msgid "This option allows you to test payments inside a sandbox environment."
222
- msgstr "Esta opción permite simular un flujo de pagos completo en nuestro entorno Sandbox."
223
-
224
- #: mercadopago/mercadopago-custom-gateway.php:260 mercadopago/mercadopago-gateway.php:330
225
- msgid "Debug and Log"
226
- msgstr "Debug y Log"
227
-
228
- #: mercadopago/mercadopago-custom-gateway.php:262 mercadopago/mercadopago-gateway.php:332
229
- msgid "Enable log"
230
- msgstr "Habilitar Log"
231
-
232
- #: mercadopago/mercadopago-custom-gateway.php:264 mercadopago/mercadopago-gateway.php:334
233
- msgid "Register event logs of Mercado Pago, such as API requests, in the file"
234
- msgstr "Registrar logs de eventos de Mercado Pago, como llamadas a la API, dentro del archivo"
235
-
236
- #: mercadopago/mercadopago-custom-gateway.php:265 mercadopago/mercadopago-gateway.php:335
237
- msgid "File location: "
238
- msgstr "Local del archivo: "
239
-
240
- #: mercadopago/mercadopago-custom-gateway.php:281 mercadopago/mercadopago-gateway.php:351
241
- #, php-format
242
- msgid "Please, rate us %s on WordPress.org and give your feedback to help improve this module!"
243
- msgstr "Por favor, da tu evaluación con %s en WordPress.org y da su feedback para ayudar a mejorar este módulo!"
244
-
245
- #: mercadopago/mercadopago-custom-gateway.php:332
246
- msgid "Payment Method"
247
- msgstr "Métodos de Pago"
248
-
249
- #: mercadopago/mercadopago-custom-gateway.php:333
250
- msgid "Credit card number"
251
- msgstr "Número de tarjeta de crédito"
252
-
253
- #: mercadopago/mercadopago-custom-gateway.php:334
254
- msgid "Expiration month"
255
- msgstr "Mes de expiración"
256
-
257
- #: mercadopago/mercadopago-custom-gateway.php:335
258
- msgid "Expiration year"
259
- msgstr "Año de expiración"
260
-
261
- #: mercadopago/mercadopago-custom-gateway.php:336
262
- msgid "Year"
263
- msgstr "Año"
264
-
265
- #: mercadopago/mercadopago-custom-gateway.php:337
266
- msgid "Month"
267
- msgstr "Mes"
268
-
269
- #: mercadopago/mercadopago-custom-gateway.php:338
270
- msgid "Card holder name"
271
- msgstr "Nombre del titular de la tarjeta"
272
-
273
- #: mercadopago/mercadopago-custom-gateway.php:339
274
- msgid "Security code"
275
- msgstr "Código de seguridad"
276
-
277
- #: mercadopago/mercadopago-custom-gateway.php:340
278
- msgid "Document Type"
279
- msgstr "Tipo de Documento"
280
-
281
- #: mercadopago/mercadopago-custom-gateway.php:341
282
- msgid "Document number"
283
- msgstr "Número del Documento"
284
-
285
- #: mercadopago/mercadopago-custom-gateway.php:342
286
- msgid "Issuer"
287
- msgstr "Emisor"
288
-
289
- #: mercadopago/mercadopago-custom-gateway.php:343
290
- msgid "Installments"
291
- msgstr "Cuotas"
292
-
293
- #: mercadopago/mercadopago-custom-gateway.php:347
294
- msgid "Parameter cardNumber can not be null/empty"
295
- msgstr "Parámetro [Numero de tarjeta] no puede ser nulo/vacío"
296
-
297
- #: mercadopago/mercadopago-custom-gateway.php:348
298
- msgid "Invalid Card Number"
299
- msgstr "Numero de tarjeta invalido"
300
-
301
- #: mercadopago/mercadopago-custom-gateway.php:350 mercadopago/mercadopago-custom-gateway.php:351 mercadopago/mercadopago-custom-gateway.php:352
302
- #: mercadopago/mercadopago-custom-gateway.php:353
303
- msgid "Invalid Expiration Date"
304
- msgstr "Fecha de vencimiento inválida"
305
-
306
- #: mercadopago/mercadopago-custom-gateway.php:355
307
- msgid "Parameter cardholderName can not be null/empty"
308
- msgstr "Parámetro [Nombre del titular] no puede ser nulo/vacío"
309
-
310
- #: mercadopago/mercadopago-custom-gateway.php:356
311
- msgid "Invalid Card Holder Name"
312
- msgstr "Nombre del titular de la tarjeta invalido"
313
-
314
- #: mercadopago/mercadopago-custom-gateway.php:358
315
- msgid "Parameter securityCode can not be null/empty"
316
- msgstr "Parámetro [Código de seguridad] no puede ser nulo/vacío"
317
-
318
- #: mercadopago/mercadopago-custom-gateway.php:359
319
- msgid "Invalid Security Code"
320
- msgstr "Código de seguridad invalido"
321
-
322
- #: mercadopago/mercadopago-custom-gateway.php:361
323
- msgid "Parameter docType can not be null/empty"
324
- msgstr "Parámetro [Tipo de Documento] no puede ser nulo/vacío"
325
-
326
- #: mercadopago/mercadopago-custom-gateway.php:362
327
- msgid "Invalid Document Type"
328
- msgstr "Tipo de Documento invalido"
329
-
330
- #: mercadopago/mercadopago-custom-gateway.php:364
331
- msgid "Parameter docNumber can not be null/empty"
332
- msgstr "Parámetro [Número del Documento] no puede ser nulo/vacío"
333
-
334
- #: mercadopago/mercadopago-custom-gateway.php:365
335
- msgid "Invalid Document Number"
336
- msgstr "Número del Documento invalido"
337
-
338
- #: mercadopago/mercadopago-custom-gateway.php:367
339
- msgid "The parameter cardholder.document.subtype can not be null or empty"
340
- msgstr "Parámetro [Subtipo del documento] no puede ser nulo/vacío"
341
-
342
- #: mercadopago/mercadopago-custom-gateway.php:368
343
- msgid "Invalid Document Sub Type"
344
- msgstr "Subtipo del documento invalido"
345
-
346
- #: mercadopago/mercadopago-custom-gateway.php:370
347
- msgid "Parameter cardIssuerId can not be null/empty"
348
- msgstr "Parámetro [Emisor] no puede ser nulo/vacío"
349
-
350
- #: mercadopago/mercadopago-custom-gateway.php:402 mercadopago/mercadopago-custom-gateway.php:943 mercadopago/mercadopago-gateway.php:869
351
- msgid "Payment approved."
352
- msgstr "Pago aprobado."
353
-
354
- #: mercadopago/mercadopago-custom-gateway.php:416 mercadopago/mercadopago-custom-gateway.php:805
355
- msgid "Your payment is under review. In less than 1h, you should be notified by email."
356
- msgstr "Su pago está en revisión. En menos de 1 hora, usted debe ser notificado por correo electrónico."
357
-
358
- #: mercadopago/mercadopago-custom-gateway.php:418
359
- msgid "Check your order resume"
360
- msgstr "Ver su hoja de pedido"
361
-
362
- #: mercadopago/mercadopago-custom-gateway.php:431
363
- msgid "Your payment was refused. You can try again."
364
- msgstr "Su pago fue rechazado. Puede intentarlo de nuevo."
365
-
366
- #: mercadopago/mercadopago-custom-gateway.php:435 mercadopago/mercadopago-custom-gateway.php:819 mercadopago/mercadopago-gateway.php:460
367
- msgid "Click to try again"
368
- msgstr "Haga clic para Inténtalo de nuevo"
369
-
370
- #: mercadopago/mercadopago-custom-gateway.php:455
371
- msgid "A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?"
372
- msgstr "Un problema se produjo al procesar su pago. Usted esta seguro de que ha rellenado correctamente toda la información en la forma de checkout?"
373
-
374
- #: mercadopago/mercadopago-custom-gateway.php:544
375
- msgid "Shipping"
376
- msgstr "Envío"
377
-
378
- #: mercadopago/mercadopago-custom-gateway.php:545
379
- msgid "Shipping service used by store"
380
- msgstr "Servicio de envío utilizado por el almacén"
381
-
382
- #: mercadopago/mercadopago-custom-gateway.php:721 mercadopago/mercadopago-gateway.php:649
383
- msgid "WooCommerce &gt; System Status &gt; Logs"
384
- msgstr "WooCommerce &gt; Estado del Sistema &gt; Logs"
385
-
386
- #: mercadopago/mercadopago-custom-gateway.php:766 mercadopago/mercadopago-custom-gateway.php:779 mercadopago/mercadopago-gateway.php:694
387
- #: mercadopago/mercadopago-gateway.php:705
388
- msgid "Mercado Pago is Inactive"
389
- msgstr "Mercado Pago Inactivo"
390
-
391
- #: mercadopago/mercadopago-custom-gateway.php:769
392
- msgid "Your Mercado Pago credentials Public Key/Access Token appears to be misconfigured."
393
- msgstr "Sus credenciales Client_id/Client_secret de Mercado Pago parecen no estar debidamente configuradas."
394
-
395
- #: mercadopago/mercadopago-custom-gateway.php:771 mercadopago/mercadopago-gateway.php:698
396
- msgid "Click here and configure!"
397
- msgstr "Haga click aquí y configure!"
398
-
399
- #: mercadopago/mercadopago-custom-gateway.php:782 mercadopago/mercadopago-gateway.php:708
400
- msgid "The currency"
401
- msgstr "La moneda"
402
-
403
- #: mercadopago/mercadopago-custom-gateway.php:783 mercadopago/mercadopago-gateway.php:708
404
- msgid "is not supported. Supported currencies are: ARS, BRL, CLP, COP, MXN, VEF."
405
- msgstr "no es soportada. Las monedas soportadas son: ARS, BRL, CLP, COP, MXN, VEF."
406
-
407
- #: mercadopago/mercadopago-custom-gateway.php:797
408
- msgid "Peru"
409
- msgstr "Peru"
410
-
411
- #: mercadopago/mercadopago-custom-gateway.php:809
412
- msgid "Click to check your order"
413
- msgstr "Haga clic para comprobar su pedido"
414
-
415
- #: mercadopago/mercadopago-custom-gateway.php:814 mercadopago/mercadopago-gateway.php:457
416
- msgid "An error occurred when proccessing your payment. Please try again or contact us for assistence."
417
- msgstr "Se ha producido un error en el procesamiento de su pago. Por favor, inténtelo de nuevo o póngase en contacto con nosotros para Asistencia."
418
-
419
- #: mercadopago/mercadopago-custom-gateway.php:816
420
- msgid "Reason is: "
421
- msgstr "La razón es:"
422
-
423
- #: mercadopago/mercadopago-custom-gateway.php:849 mercadopago/mercadopago-gateway.php:748
424
- msgid "Mercado Pago Request Failure"
425
- msgstr "La solicitud de Mercado Pago ha fallado."
426
-
427
- #: mercadopago/mercadopago-custom-gateway.php:918 mercadopago/mercadopago-gateway.php:822
428
- msgid "Payer email"
429
- msgstr "Email del comprador"
430
-
431
- #: mercadopago/mercadopago-custom-gateway.php:926 mercadopago/mercadopago-gateway.php:829
432
- msgid "Payment type"
433
- msgstr "Método de pago"
434
-
435
- #: mercadopago/mercadopago-custom-gateway.php:934 mercadopago/mercadopago-gateway.php:841
436
- msgid "Mercado Pago Payment ID"
437
- msgstr "ID de pago de Mercado Pago"
438
-
439
- #: mercadopago/mercadopago-custom-gateway.php:950 mercadopago/mercadopago-gateway.php:875
440
- msgid "Customer haven't paid yet."
441
- msgstr "El cliente todavía no efectuó el pago."
442
-
443
- #: mercadopago/mercadopago-custom-gateway.php:957 mercadopago/mercadopago-gateway.php:881
444
- msgid "Payment under review."
445
- msgstr "El pago está pendiente de revisión."
446
-
447
- #: mercadopago/mercadopago-custom-gateway.php:964 mercadopago/mercadopago-gateway.php:887
448
- msgid "The payment was refused. The customer can try again."
449
- msgstr "El pago fue rechazado. El cliente puede intentar nuevamente."
450
-
451
- #: mercadopago/mercadopago-custom-gateway.php:971 mercadopago/mercadopago-gateway.php:893
452
- msgid "The payment was refunded to the customer."
453
- msgstr "El pago fue devuelto al cliente."
454
-
455
- #: mercadopago/mercadopago-custom-gateway.php:978 mercadopago/mercadopago-gateway.php:899
456
- msgid "The payment was cancelled."
457
- msgstr "El pago fue cancelado."
458
-
459
- #: mercadopago/mercadopago-custom-gateway.php:984 mercadopago/mercadopago-custom-gateway.php:990 mercadopago/mercadopago-gateway.php:904
460
- #: mercadopago/mercadopago-gateway.php:909
461
- msgid "The payment is under mediation or it was charged-back."
462
- msgstr "El pago esta en mediación o la compra fue desconocida por el cliente."
463
-
464
- #: mercadopago/mercadopago-gateway.php:51
465
- msgid "Mercado Pago - Standard Checkout"
466
- msgstr "Mercado Pago - Checkout Estándar"
467
-
468
- #: mercadopago/mercadopago-gateway.php:148
469
- msgid "Select the payment methods that you <strong>don't</strong> want to receive with Mercado Pago."
470
- msgstr "Selecione los medios de pago que <strong>no</strong> desea aceptar con Mercado Pago."
471
-
472
- #: mercadopago/mercadopago-gateway.php:158 mercadopago/mercadopago-gateway.php:167
473
- msgid "Configure your Client_id and Client_secret to have access to more options."
474
- msgstr "Configure su Client_id y Client_secret para tener acceso a más opciones."
475
-
476
- #: mercadopago/mercadopago-gateway.php:184 mercadopago/mercadopago-gateway.php:192 mercadopago/mercadopago-gateway.php:202
477
- msgid "This field should be an integer."
478
- msgstr "Este campo debe ser un número."
479
-
480
- #: mercadopago/mercadopago-gateway.php:187
481
- msgid "If your integration method is iFrame, please inform the payment iFrame width."
482
- msgstr "Si su modo de apertura es iFrame, indique el ancho del iFrame."
483
-
484
- #: mercadopago/mercadopago-gateway.php:195
485
- msgid "If your integration method is iFrame, please inform the payment iFrame height."
486
- msgstr "Si su modo de apertura es iFrame, indique el alto del iFrame."
487
-
488
- #: mercadopago/mercadopago-gateway.php:205
489
- msgid "Select the max number of installments for your customers."
490
- msgstr "Seleccione el número máximo de cuotas posibles para sus clientes."
491
-
492
- #: mercadopago/mercadopago-gateway.php:213
493
- msgid "Enable Standard Checkout"
494
- msgstr "Habilitar el Checkout Estándar"
495
-
496
- #: mercadopago/mercadopago-gateway.php:224
497
- msgid "Insert your Mercado Pago Client_id."
498
- msgstr "Inserte su Client_id de Mercado Pago."
499
-
500
- #: mercadopago/mercadopago-gateway.php:231
501
- msgid "Insert your Mercado Pago Client_secret."
502
- msgstr "Inserte su Client_secret de Mercado Pago."
503
-
504
- #: mercadopago/mercadopago-gateway.php:270
505
- msgid "Integration Method"
506
- msgstr "Método de integración"
507
-
508
- #: mercadopago/mercadopago-gateway.php:272
509
- msgid ""
510
- "Select how your clients should interact with Mercado Pago. Modal Window (inside your store), Redirect (Client is redirected to Mercado Pago), or iFrame (an "
511
- "internal window is embedded to the page layout)."
512
- msgstr ""
513
- "Seleccione la forma en que sus clientes deben interactuar con Mercado Pago. Ventana Modal (Dentro de su tienda), Redireccionamiento (El cliente es "
514
- "redireccionado a Mercado Pago), o iFrame (Ventana de pago incorporada a su página)."
515
-
516
- #: mercadopago/mercadopago-gateway.php:275
517
- msgid "iFrame"
518
- msgstr "iFrame"
519
-
520
- #: mercadopago/mercadopago-gateway.php:276
521
- msgid "Modal Window"
522
- msgstr "Ventana modal"
523
-
524
- #: mercadopago/mercadopago-gateway.php:277
525
- msgid "Redirect"
526
- msgstr "Redireccionamiento"
527
-
528
- #: mercadopago/mercadopago-gateway.php:281
529
- msgid "iFrame Width"
530
- msgstr "Ancho del iFrame"
531
-
532
- #: mercadopago/mercadopago-gateway.php:287
533
- msgid "iFrame Height"
534
- msgstr "Alto del iFrame"
535
-
536
- #: mercadopago/mercadopago-gateway.php:293
537
- msgid "Auto Return"
538
- msgstr "Redirección automática"
539
-
540
- #: mercadopago/mercadopago-gateway.php:295
541
- msgid "Automatic Return After Payment"
542
- msgstr "Redirección Automática Luego del Pago"
543
-
544
- #: mercadopago/mercadopago-gateway.php:297
545
- msgid "After the payment, client is automatically redirected."
546
- msgstr "Después del pago, el cliente será redireccionado automáticamente."
547
-
548
- #: mercadopago/mercadopago-gateway.php:300
549
- msgid "Payment Options"
550
- msgstr "Opciones de Pago"
551
-
552
- #: mercadopago/mercadopago-gateway.php:305
553
- msgid "Max installments"
554
- msgstr "Número máximo de cuotas"
555
-
556
- #: mercadopago/mercadopago-gateway.php:311
557
- msgid "Exclude Payment Methods"
558
- msgstr "Excluir métodos de pago"
559
-
560
- #: mercadopago/mercadopago-gateway.php:428
561
- msgid "Thank you for your order. Please, proceed with your payment clicking in the bellow button."
562
- msgstr "Gracias por su compra. Por favor, prosiga a la página de pago haciendo click en el botón de abajo."
563
-
564
- #: mercadopago/mercadopago-gateway.php:436
565
- msgid "Cancel order &amp; Clear cart"
566
- msgstr "Cancelar &amp; Limpiar carrito"
567
-
568
- #: mercadopago/mercadopago-gateway.php:446
569
- msgid "Thank you for your order. Proceed with your payment completing the following information."
570
- msgstr "Gracias por su compra. Prosiga con su pago completando la información abajo."
571
-
572
- #: mercadopago/mercadopago-gateway.php:697
573
- msgid "Your Mercado Pago credentials Client_id/Client_secret appears to be misconfigured."
574
- msgstr "Sus credenciales Client_id/Client_secret de Mercado Pago parecen no estar debidamente configuradas."
575
-
576
- msgid " as it appears in your card ..."
577
- msgstr " tal como aparece en su tarjeta ..."
578
-
579
- msgid "Done, your payment was accredited!"
580
- msgstr "Listo, su pago ha sido aceptado!"
581
-
582
- msgid "We are processing the payment. In less than an hour we will e-mail you the results."
583
- msgstr "Estamos procesando su pago. En menos de una hora se le notificará por correo electrónico."
584
-
585
- msgid "We are processing the payment. In less than 2 business days we will tell you by e-mail whether it has accredited or we need more information."
586
- msgstr "Estamos procesando su pago. En menos de 2 días se le notificará por correo electrónico si se ha aprobado el pago o si se necesita información adicional."
587
-
588
- msgid "Check the card number."
589
- msgstr "Compruebe el número de tarjeta."
590
-
591
- msgid "Check the expiration date."
592
- msgstr "Compruebe la fecha de expiración."
593
-
594
- msgid "Check the information."
595
- msgstr "Compruebe la información informada."
596
-
597
- msgid "Check the security code."
598
- msgstr "Compruebe el código de seguridad informado."
599
-
600
- msgid "We could not process your payment."
601
- msgstr "No se puede procesar su pago."
602
-
603
- msgid "You must authorize the payment of your orders."
604
- msgstr "Usted debe autorizar pagos de sus órdenes."
605
-
606
- msgid "Call your card issuer to activate your card. The phone is on the back of your card."
607
- msgstr "Póngase en contacto con el emisor de su tarjeta para activarla. El teléfono se encuentra en la parte posterior de su tarjeta."
608
-
609
- msgid "You already made a payment for that amount. If you need to repay, use another card or other payment method."
610
- msgstr "Usted ya realizó el pago de esta cantidad. Si tiene que pagar de nuevo, utilizar otra tarjeta u otro método de pago."
611
-
612
- msgid "Your payment was rejected. Choose another payment method. We recommend cash."
613
- msgstr "Su pago fue rechazado. Por favor seleccione otro método de pago. Se recomienda dinero."
614
-
615
- msgid "Your payment do not have sufficient funds."
616
- msgstr "Su pago no tiene fondos suficientes."
617
-
618
- msgid "Your payment does not process payments with selected installments."
619
- msgstr "El pago no puede procesar la cuota seleccionada."
620
-
621
- msgid "You have reached the limit of allowed attempts. Choose another card or another payment method."
622
- msgstr "Has alcanzado el límite de intentos permitidos. Elija otra tarjeta u otro método de pago."
623
-
624
- msgid "This payment method did not process the payment."
625
- msgstr "Esta forma de pago no puede procesar su pago."
626
-
627
- msgid "Mercado Pago - Ticket"
628
- msgstr "Mercado Pago - Ticket"
629
-
630
- msgid "Mercado Pago - Credit Card"
631
- msgstr "Mercado Pago - Tarjeta de Crédito"
632
-
633
- msgid "Ticket Options"
634
- msgstr "Opciones de Ticket"
635
-
636
- msgid "Enable Ticket Payment Method"
637
- msgstr "Habilitar Pago con Ticket"
638
-
639
- msgid "Other Bank"
640
- msgstr "Otro Banco"
641
-
642
- msgid "Choose"
643
- msgstr "Escoger"
644
-
645
- msgid "A problem was occurred when processing your payment. Please, try again."
646
- msgstr "Un problema se produjo al procesar su pago. Por favor, inténtelo de nuevo."
647
-
648
- msgid "Thank you for your order. Please, pay the ticket to get your order approved."
649
- msgstr "Gracias por su orden. Por favor, pagar el ticket para tener su solicitud aprobada."
650
-
651
- msgid "Waiting for the ticket payment."
652
- msgstr "Esperando el pago del ticket."
653
-
654
- msgid "Print the Ticket"
655
- msgstr "Imprimir el ticket"
656
-
657
- msgid "To reprint the ticket click "
658
- msgstr "Para imprimir nuevamente el ticket hace clic "
659
-
660
- msgid "here"
661
- msgstr "aquí"
662
-
663
- msgid "Custom Checkout is Inactive"
664
- msgstr "Checkout Custom Inactivo"
665
-
666
- msgid "Standard Checkout is Inactive"
667
- msgstr "Checkout Estándar Inactivo"
668
-
669
- msgid "Ticket is Inactive"
670
- msgstr "Ticket Inactivo"
671
-
672
- msgid "Please, select the ticket issuer of your preference and then click "Place order" button. The ticket will be generated and you will be redirected to print it."
673
- msgstr "Por favor, seleccione el emisor de su elección y haga clic en el botón "PLACE ORDER". El ticket será generado y usted será redirigido a imprimirlo."
674
-
675
- msgid "Important: The order will be confirmed only after the payment approval."
676
- msgstr "Importante: La solicitud sólo será confirmada después de la aprobación del pago."
677
-
678
- msgid "Your Mercado Pago credential Access Token appears to be misconfigured."
679
- msgstr "Su credencial Access Token de Mercado de Pago parece estar desconfigurado."
680
-
681
- msgid "Your Card"
682
- msgstr "Sus Tarjetas"
683
-
684
- msgid "Other Cards"
685
- msgstr "Otras Tarjetas"
686
-
687
- msgid "Other Card"
688
- msgstr "Otra Tarjeta"
689
-
690
- msgid "ended in"
691
- msgstr "terminado en"
692
-
693
- msgid "Your site appears to not have SSL certification. SSL is a pre-requisite because the payment process is made in your server."
694
- msgstr "Su sitio parece no tener certificación SSL. SSL es un requisito previo porque la tramitación del pago se realiza en el servidor."
695
-
696
- msgid "<strong>ATTENTION: The currency"
697
- msgstr "<strong>ATENCIÓN: La moneda"
698
-
699
- msgid "defined in WooCommerce is different from the one used in your credentials country.<br>The currency for transactions in this payment method will be"
700
- msgstr "que se define en WooCommerce es diferente de la utilizada en el país de sus credenciales.<br>La moneda para las transacciones realizadas por este método de pago será"
701
-
702
- msgid "Currency conversions should be made outside this module.</strong><br><br>"
703
- msgstr "Conversiones de monedas se deben hacerse fuera de este módulo.</strong><br><br>"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
languages/woocommerce-mercadopago-module-es_CO.mo DELETED
Binary file
languages/woocommerce-mercadopago-module-es_CO.po DELETED
@@ -1,703 +0,0 @@
1
- # WordPress Blank Pot
2
- # Copyright (C) 2014 ...
3
- # This file is distributed under the GNU General Public License v2 or later.
4
- msgid ""
5
- msgstr ""
6
- "Project-Id-Version: WordPress Blank Pot v1.0.0\n"
7
- "POT-Creation-Date: 2016-05-23 14:52-0300\n"
8
- "PO-Revision-Date: \n"
9
- "Language-Team: Product Development <translations@example.com>\n"
10
- "Report-Msgid-Bugs-To: Translator Name <translations@example.com>\n"
11
- "MIME-Version: 1.0\n"
12
- "Content-Type: text/plain; charset=UTF-8\n"
13
- "Content-Transfer-Encoding: 8bit\n"
14
- "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
- "X-Textdomain-Support: yesX-Generator: Poedit 1.6.4\n"
16
- "X-Poedit-SourceCharset: UTF-8\n"
17
- "X-Poedit-KeywordsList: __;_e;esc_html_e;esc_html_x:1,2c;esc_html__;esc_attr_e;esc_attr_x:1,2c;esc_attr__;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_x:1,2c;_n:1,2;"
18
- "_n_noop:1,2;__ngettext:1,2;__ngettext_noop:1,2;_c,_nc:4c,1,2\n"
19
- "X-Poedit-Basepath: ../Documents/woocommerce (MAMP)/wp-content/plugins/woo-mercado-pago-module\n"
20
- "X-Generator: Poedit 1.8.7\n"
21
- "Last-Translator: \n"
22
- "Language: es_CO\n"
23
- "X-Poedit-SearchPath-0: .\n"
24
-
25
- #. Description of the plugin/theme
26
- msgid "This is the <strong>oficial</strong> module of Mercado Pago for WooCommerce plugin. This module enables WooCommerce to use Mercado Pago as a payment Gateway for purchases made in your e-commerce store."
27
- msgstr "Este es el módulo <strong>oficial</strong> de Mercado Pago para el plugin WooCommerce. Este módulo habilita el uso de Mercado Pago en WooCommerce como método de pago para compras realizadas en su tienda virtual."
28
-
29
- #: mercadopago-module.php:69
30
- #, php-format
31
- msgid "Woo Mercado Pago Module depends on the last version of %s to execute!"
32
- msgstr "Woo Mercado Pago Module depende de la última versión de %s para ejecutarse!"
33
-
34
- #: mercadopago-module.php:109
35
- msgid "Standard Checkout"
36
- msgstr "Checkout Estándar"
37
-
38
- #: mercadopago-module.php:113
39
- msgid "Custom Checkout"
40
- msgstr "Checkout Custom"
41
-
42
- #: mercadopago/mercadopago-custom-gateway.php:48
43
- msgid "Mercado Pago - Custom Checkout"
44
- msgstr "Mercado Pago - Checkout Custom"
45
-
46
- #: mercadopago/mercadopago-custom-gateway.php:51 mercadopago/mercadopago-gateway.php:54
47
- msgid "This module enables WooCommerce to use Mercado Pago as payment method for purchases made in your virtual store."
48
- msgstr "Este módulo habilita el uso de Mercado Pago en WooCommerce como método de pago para compras realizadas en su tienda virtual."
49
-
50
- #: mercadopago/mercadopago-custom-gateway.php:126 mercadopago/mercadopago-custom-gateway.php:791 mercadopago/mercadopago-gateway.php:125
51
- #: mercadopago/mercadopago-gateway.php:716
52
- msgid "Argentine"
53
- msgstr "Argentina"
54
-
55
- #: mercadopago/mercadopago-custom-gateway.php:127 mercadopago/mercadopago-custom-gateway.php:792 mercadopago/mercadopago-gateway.php:126
56
- #: mercadopago/mercadopago-gateway.php:717
57
- msgid "Brazil"
58
- msgstr "Brasil"
59
-
60
- #: mercadopago/mercadopago-custom-gateway.php:128 mercadopago/mercadopago-custom-gateway.php:794 mercadopago/mercadopago-gateway.php:127
61
- #: mercadopago/mercadopago-gateway.php:719
62
- msgid "Chile"
63
- msgstr "Chile"
64
-
65
- #: mercadopago/mercadopago-custom-gateway.php:129 mercadopago/mercadopago-custom-gateway.php:793 mercadopago/mercadopago-gateway.php:128
66
- #: mercadopago/mercadopago-gateway.php:718
67
- msgid "Colombia"
68
- msgstr "Colombia"
69
-
70
- #: mercadopago/mercadopago-custom-gateway.php:130 mercadopago/mercadopago-custom-gateway.php:795 mercadopago/mercadopago-gateway.php:129
71
- #: mercadopago/mercadopago-gateway.php:720
72
- msgid "Mexico"
73
- msgstr "México"
74
-
75
- #: mercadopago/mercadopago-custom-gateway.php:132 mercadopago/mercadopago-gateway.php:130
76
- msgid "or"
77
- msgstr "o"
78
-
79
- #: mercadopago/mercadopago-custom-gateway.php:133 mercadopago/mercadopago-custom-gateway.php:796 mercadopago/mercadopago-gateway.php:131
80
- #: mercadopago/mercadopago-gateway.php:721
81
- msgid "Venezuela"
82
- msgstr "Venezuela"
83
-
84
- #: mercadopago/mercadopago-custom-gateway.php:145 mercadopago/mercadopago-gateway.php:151
85
- msgid "Your credentials are <strong>valid</strong> for"
86
- msgstr "Sus credenciales <strong>son válidas</strong> para"
87
-
88
- #: mercadopago/mercadopago-custom-gateway.php:151 mercadopago/mercadopago-custom-gateway.php:156 mercadopago/mercadopago-gateway.php:161
89
- #: mercadopago/mercadopago-gateway.php:170
90
- msgid "Your credentials are <strong>not valid</strong>!"
91
- msgstr "Sus credenciales <strong>no son válidas</strong>!"
92
-
93
- #: mercadopago/mercadopago-custom-gateway.php:169 mercadopago/mercadopago-gateway.php:211
94
- msgid "Enable/Disable"
95
- msgstr "Habilitar/Deshabilitar"
96
-
97
- #: mercadopago/mercadopago-custom-gateway.php:171
98
- msgid "Enable Custom Checkout"
99
- msgstr "Habilitar Checkout Custom"
100
-
101
- #: mercadopago/mercadopago-custom-gateway.php:175 mercadopago/mercadopago-gateway.php:217
102
- msgid "Mercado Pago Credentials"
103
- msgstr "Credenciales de Mercado Pago"
104
-
105
- #: mercadopago/mercadopago-custom-gateway.php:177 mercadopago/mercadopago-gateway.php:219
106
- msgid "You can obtain your credentials for"
107
- msgstr "Puedes obtener tus credenciales para"
108
-
109
- #: mercadopago/mercadopago-custom-gateway.php:182
110
- msgid "Insert your Mercado Pago Public key."
111
- msgstr "Inserte su Public Key de Mercado Pago."
112
-
113
- #: mercadopago/mercadopago-custom-gateway.php:189
114
- msgid "Insert your Mercado Pago Access token."
115
- msgstr "Inserte su Access Token de Mercado Pago."
116
-
117
- #: mercadopago/mercadopago-custom-gateway.php:194 mercadopago/mercadopago-gateway.php:236
118
- msgid "Instant Payment Notification (IPN) URL"
119
- msgstr "URL da Notificación Instantanea de Pago (IPN)"
120
-
121
- #: mercadopago/mercadopago-custom-gateway.php:196 mercadopago/mercadopago-gateway.php:238
122
- msgid "Your IPN URL to receive instant payment notifications is"
123
- msgstr "Su URL de IPN para recibir notificaciones instantáneas de pago es"
124
-
125
- #: mercadopago/mercadopago-custom-gateway.php:199 mercadopago/mercadopago-gateway.php:241
126
- msgid "Checkout Options"
127
- msgstr "Opciones de Checkout"
128
-
129
- #: mercadopago/mercadopago-custom-gateway.php:204 mercadopago/mercadopago-gateway.php:246
130
- msgid "Title"
131
- msgstr "Título"
132
-
133
- #: mercadopago/mercadopago-custom-gateway.php:206 mercadopago/mercadopago-gateway.php:248
134
- msgid "Title shown to the client in the checkout."
135
- msgstr "Título mostrado al cliente en el checkout."
136
-
137
- #: mercadopago/mercadopago-custom-gateway.php:207 mercadopago/mercadopago-custom-gateway.php:219 mercadopago/mercadopago-gateway.php:249
138
- msgid "Mercado Pago"
139
- msgstr "Mercado Pago"
140
-
141
- #: mercadopago/mercadopago-custom-gateway.php:210 mercadopago/mercadopago-gateway.php:252
142
- msgid "Description"
143
- msgstr "Descripción"
144
-
145
- #: mercadopago/mercadopago-custom-gateway.php:212 mercadopago/mercadopago-gateway.php:254
146
- msgid "Description shown to the client in the checkout."
147
- msgstr "Descripción mostrada al cliente en el checkout."
148
-
149
- #: mercadopago/mercadopago-custom-gateway.php:213 mercadopago/mercadopago-gateway.php:255 mercadopago/mercadopago-gateway.php:432
150
- msgid "Pay with Mercado Pago"
151
- msgstr "Pagar con Mercado Pago"
152
-
153
- #: mercadopago/mercadopago-custom-gateway.php:216
154
- msgid "Statement Descriptor"
155
- msgstr "Descripción de la Factura"
156
-
157
- #: mercadopago/mercadopago-custom-gateway.php:218
158
- msgid "The description that will be shown in your customer's invoice."
159
- msgstr "La descripción que se muestra en la factura de su cliente."
160
-
161
- #: mercadopago/mercadopago-custom-gateway.php:222
162
- msgid "Binary Mode"
163
- msgstr "Modo binario"
164
-
165
- #: mercadopago/mercadopago-custom-gateway.php:224
166
- msgid "Enable binary mode for checkout status"
167
- msgstr "Activar el modo binario para el estado del checkout"
168
-
169
- #: mercadopago/mercadopago-custom-gateway.php:226
170
- msgid "When charging a credit card, only [approved] or [reject] status will be taken."
171
- msgstr "Al cargar una tarjeta de crédito, sólo los estados [aprobado] o [rechazar] seran tomados."
172
-
173
- #: mercadopago/mercadopago-custom-gateway.php:229
174
- msgid "Ticket"
175
- msgstr "Ticket"
176
-
177
- #: mercadopago/mercadopago-custom-gateway.php:231
178
- msgid "Enable Ticket for Custom Checkout"
179
- msgstr "Habilitar Ticket para Checkout Custom"
180
-
181
- #: mercadopago/mercadopago-custom-gateway.php:233
182
- msgid "Let your customer pay you with tickets"
183
- msgstr "Deje que su cliente le paga con tickets"
184
-
185
- #: mercadopago/mercadopago-custom-gateway.php:236 mercadopago/mercadopago-gateway.php:258
186
- msgid "Store Category"
187
- msgstr "Categoría de la tienda"
188
-
189
- #: mercadopago/mercadopago-custom-gateway.php:238 mercadopago/mercadopago-gateway.php:260
190
- msgid "Define which type of products your store sells."
191
- msgstr "Defina el tipo de productos que su tienda vende."
192
-
193
- #: mercadopago/mercadopago-custom-gateway.php:242 mercadopago/mercadopago-gateway.php:264
194
- msgid "Store Identificator"
195
- msgstr "Identificador de la tienda"
196
-
197
- #: mercadopago/mercadopago-custom-gateway.php:244 mercadopago/mercadopago-gateway.php:266
198
- msgid "Please, inform a prefix to your store."
199
- msgstr "Por favor, informe un prefijo para su tienda."
200
-
201
- #: mercadopago/mercadopago-custom-gateway.php:244 mercadopago/mercadopago-gateway.php:266
202
- msgid ""
203
- "If you use your Mercado Pago account on multiple stores you should make sure that this prefix is unique as Mercado Pago will not allow orders with same "
204
- "identificators."
205
- msgstr ""
206
- "Si esta utilizando su cuenta Mercado Pago para múltiples tiendas, asegúrese que este prefijo sea único para no generar pedidos con el mismo identificador."
207
-
208
- #: mercadopago/mercadopago-custom-gateway.php:248 mercadopago/mercadopago-gateway.php:318
209
- msgid "Test and Debug Options"
210
- msgstr "Opciones de Prueba y Debug"
211
-
212
- #: mercadopago/mercadopago-custom-gateway.php:253 mercadopago/mercadopago-gateway.php:323
213
- msgid "Mercado Pago Sandbox"
214
- msgstr "Sandbox Mercado Pago"
215
-
216
- #: mercadopago/mercadopago-custom-gateway.php:255 mercadopago/mercadopago-gateway.php:325
217
- msgid "Enable Mercado Pago Sandbox"
218
- msgstr "Habilitar el sandbox de Mercado Pago"
219
-
220
- #: mercadopago/mercadopago-custom-gateway.php:257 mercadopago/mercadopago-gateway.php:327
221
- msgid "This option allows you to test payments inside a sandbox environment."
222
- msgstr "Esta opción permite simular un flujo de pagos completo en nuestro entorno Sandbox."
223
-
224
- #: mercadopago/mercadopago-custom-gateway.php:260 mercadopago/mercadopago-gateway.php:330
225
- msgid "Debug and Log"
226
- msgstr "Debug y Log"
227
-
228
- #: mercadopago/mercadopago-custom-gateway.php:262 mercadopago/mercadopago-gateway.php:332
229
- msgid "Enable log"
230
- msgstr "Habilitar Log"
231
-
232
- #: mercadopago/mercadopago-custom-gateway.php:264 mercadopago/mercadopago-gateway.php:334
233
- msgid "Register event logs of Mercado Pago, such as API requests, in the file"
234
- msgstr "Registrar logs de eventos de Mercado Pago, como llamadas a la API, dentro del archivo"
235
-
236
- #: mercadopago/mercadopago-custom-gateway.php:265 mercadopago/mercadopago-gateway.php:335
237
- msgid "File location: "
238
- msgstr "Local del archivo: "
239
-
240
- #: mercadopago/mercadopago-custom-gateway.php:281 mercadopago/mercadopago-gateway.php:351
241
- #, php-format
242
- msgid "Please, rate us %s on WordPress.org and give your feedback to help improve this module!"
243
- msgstr "Por favor, da tu evaluación con %s en WordPress.org y da su feedback para ayudar a mejorar este módulo!"
244
-
245
- #: mercadopago/mercadopago-custom-gateway.php:332
246
- msgid "Payment Method"
247
- msgstr "Métodos de Pago"
248
-
249
- #: mercadopago/mercadopago-custom-gateway.php:333
250
- msgid "Credit card number"
251
- msgstr "Número de tarjeta de crédito"
252
-
253
- #: mercadopago/mercadopago-custom-gateway.php:334
254
- msgid "Expiration month"
255
- msgstr "Mes de expiración"
256
-
257
- #: mercadopago/mercadopago-custom-gateway.php:335
258
- msgid "Expiration year"
259
- msgstr "Año de expiración"
260
-
261
- #: mercadopago/mercadopago-custom-gateway.php:336
262
- msgid "Year"
263
- msgstr "Año"
264
-
265
- #: mercadopago/mercadopago-custom-gateway.php:337
266
- msgid "Month"
267
- msgstr "Mes"
268
-
269
- #: mercadopago/mercadopago-custom-gateway.php:338
270
- msgid "Card holder name"
271
- msgstr "Nombre del titular de la tarjeta"
272
-
273
- #: mercadopago/mercadopago-custom-gateway.php:339
274
- msgid "Security code"
275
- msgstr "Código de seguridad"
276
-
277
- #: mercadopago/mercadopago-custom-gateway.php:340
278
- msgid "Document Type"
279
- msgstr "Tipo de Documento"
280
-
281
- #: mercadopago/mercadopago-custom-gateway.php:341
282
- msgid "Document number"
283
- msgstr "Número del Documento"
284
-
285
- #: mercadopago/mercadopago-custom-gateway.php:342
286
- msgid "Issuer"
287
- msgstr "Emisor"
288
-
289
- #: mercadopago/mercadopago-custom-gateway.php:343
290
- msgid "Installments"
291
- msgstr "Cuotas"
292
-
293
- #: mercadopago/mercadopago-custom-gateway.php:347
294
- msgid "Parameter cardNumber can not be null/empty"
295
- msgstr "Parámetro [Numero de tarjeta] no puede ser nulo/vacío"
296
-
297
- #: mercadopago/mercadopago-custom-gateway.php:348
298
- msgid "Invalid Card Number"
299
- msgstr "Numero de tarjeta invalido"
300
-
301
- #: mercadopago/mercadopago-custom-gateway.php:350 mercadopago/mercadopago-custom-gateway.php:351 mercadopago/mercadopago-custom-gateway.php:352
302
- #: mercadopago/mercadopago-custom-gateway.php:353
303
- msgid "Invalid Expiration Date"
304
- msgstr "Fecha de vencimiento inválida"
305
-
306
- #: mercadopago/mercadopago-custom-gateway.php:355
307
- msgid "Parameter cardholderName can not be null/empty"
308
- msgstr "Parámetro [Nombre del titular] no puede ser nulo/vacío"
309
-
310
- #: mercadopago/mercadopago-custom-gateway.php:356
311
- msgid "Invalid Card Holder Name"
312
- msgstr "Nombre del titular de la tarjeta invalido"
313
-
314
- #: mercadopago/mercadopago-custom-gateway.php:358
315
- msgid "Parameter securityCode can not be null/empty"
316
- msgstr "Parámetro [Código de seguridad] no puede ser nulo/vacío"
317
-
318
- #: mercadopago/mercadopago-custom-gateway.php:359
319
- msgid "Invalid Security Code"
320
- msgstr "Código de seguridad invalido"
321
-
322
- #: mercadopago/mercadopago-custom-gateway.php:361
323
- msgid "Parameter docType can not be null/empty"
324
- msgstr "Parámetro [Tipo de Documento] no puede ser nulo/vacío"
325
-
326
- #: mercadopago/mercadopago-custom-gateway.php:362
327
- msgid "Invalid Document Type"
328
- msgstr "Tipo de Documento invalido"
329
-
330
- #: mercadopago/mercadopago-custom-gateway.php:364
331
- msgid "Parameter docNumber can not be null/empty"
332
- msgstr "Parámetro [Número del Documento] no puede ser nulo/vacío"
333
-
334
- #: mercadopago/mercadopago-custom-gateway.php:365
335
- msgid "Invalid Document Number"
336
- msgstr "Número del Documento invalido"
337
-
338
- #: mercadopago/mercadopago-custom-gateway.php:367
339
- msgid "The parameter cardholder.document.subtype can not be null or empty"
340
- msgstr "Parámetro [Subtipo del documento] no puede ser nulo/vacío"
341
-
342
- #: mercadopago/mercadopago-custom-gateway.php:368
343
- msgid "Invalid Document Sub Type"
344
- msgstr "Subtipo del documento invalido"
345
-
346
- #: mercadopago/mercadopago-custom-gateway.php:370
347
- msgid "Parameter cardIssuerId can not be null/empty"
348
- msgstr "Parámetro [Emisor] no puede ser nulo/vacío"
349
-
350
- #: mercadopago/mercadopago-custom-gateway.php:402 mercadopago/mercadopago-custom-gateway.php:943 mercadopago/mercadopago-gateway.php:869
351
- msgid "Payment approved."
352
- msgstr "Pago aprobado."
353
-
354
- #: mercadopago/mercadopago-custom-gateway.php:416 mercadopago/mercadopago-custom-gateway.php:805
355
- msgid "Your payment is under review. In less than 1h, you should be notified by email."
356
- msgstr "Su pago está en revisión. En menos de 1 hora, usted debe ser notificado por correo electrónico."
357
-
358
- #: mercadopago/mercadopago-custom-gateway.php:418
359
- msgid "Check your order resume"
360
- msgstr "Ver su hoja de pedido"
361
-
362
- #: mercadopago/mercadopago-custom-gateway.php:431
363
- msgid "Your payment was refused. You can try again."
364
- msgstr "Su pago fue rechazado. Puede intentarlo de nuevo."
365
-
366
- #: mercadopago/mercadopago-custom-gateway.php:435 mercadopago/mercadopago-custom-gateway.php:819 mercadopago/mercadopago-gateway.php:460
367
- msgid "Click to try again"
368
- msgstr "Haga clic para Inténtalo de nuevo"
369
-
370
- #: mercadopago/mercadopago-custom-gateway.php:455
371
- msgid "A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?"
372
- msgstr "Un problema se produjo al procesar su pago. Usted esta seguro de que ha rellenado correctamente toda la información en la forma de checkout?"
373
-
374
- #: mercadopago/mercadopago-custom-gateway.php:544
375
- msgid "Shipping"
376
- msgstr "Envío"
377
-
378
- #: mercadopago/mercadopago-custom-gateway.php:545
379
- msgid "Shipping service used by store"
380
- msgstr "Servicio de envío utilizado por el almacén"
381
-
382
- #: mercadopago/mercadopago-custom-gateway.php:721 mercadopago/mercadopago-gateway.php:649
383
- msgid "WooCommerce &gt; System Status &gt; Logs"
384
- msgstr "WooCommerce &gt; Estado del Sistema &gt; Logs"
385
-
386
- #: mercadopago/mercadopago-custom-gateway.php:766 mercadopago/mercadopago-custom-gateway.php:779 mercadopago/mercadopago-gateway.php:694
387
- #: mercadopago/mercadopago-gateway.php:705
388
- msgid "Mercado Pago is Inactive"
389
- msgstr "Mercado Pago Inactivo"
390
-
391
- #: mercadopago/mercadopago-custom-gateway.php:769
392
- msgid "Your Mercado Pago credentials Public Key/Access Token appears to be misconfigured."
393
- msgstr "Sus credenciales Client_id/Client_secret de Mercado Pago parecen no estar debidamente configuradas."
394
-
395
- #: mercadopago/mercadopago-custom-gateway.php:771 mercadopago/mercadopago-gateway.php:698
396
- msgid "Click here and configure!"
397
- msgstr "Haga click aquí y configure!"
398
-
399
- #: mercadopago/mercadopago-custom-gateway.php:782 mercadopago/mercadopago-gateway.php:708
400
- msgid "The currency"
401
- msgstr "La moneda"
402
-
403
- #: mercadopago/mercadopago-custom-gateway.php:783 mercadopago/mercadopago-gateway.php:708
404
- msgid "is not supported. Supported currencies are: ARS, BRL, CLP, COP, MXN, VEF."
405
- msgstr "no es soportada. Las monedas soportadas son: ARS, BRL, CLP, COP, MXN, VEF."
406
-
407
- #: mercadopago/mercadopago-custom-gateway.php:797
408
- msgid "Peru"
409
- msgstr "Peru"
410
-
411
- #: mercadopago/mercadopago-custom-gateway.php:809
412
- msgid "Click to check your order"
413
- msgstr "Haga clic para comprobar su pedido"
414
-
415
- #: mercadopago/mercadopago-custom-gateway.php:814 mercadopago/mercadopago-gateway.php:457
416
- msgid "An error occurred when proccessing your payment. Please try again or contact us for assistence."
417
- msgstr "Se ha producido un error en el procesamiento de su pago. Por favor, inténtelo de nuevo o póngase en contacto con nosotros para Asistencia."
418
-
419
- #: mercadopago/mercadopago-custom-gateway.php:816
420
- msgid "Reason is: "
421
- msgstr "La razón es:"
422
-
423
- #: mercadopago/mercadopago-custom-gateway.php:849 mercadopago/mercadopago-gateway.php:748
424
- msgid "Mercado Pago Request Failure"
425
- msgstr "La solicitud de Mercado Pago ha fallado."
426
-
427
- #: mercadopago/mercadopago-custom-gateway.php:918 mercadopago/mercadopago-gateway.php:822
428
- msgid "Payer email"
429
- msgstr "Email del comprador"
430
-
431
- #: mercadopago/mercadopago-custom-gateway.php:926 mercadopago/mercadopago-gateway.php:829
432
- msgid "Payment type"
433
- msgstr "Método de pago"
434
-
435
- #: mercadopago/mercadopago-custom-gateway.php:934 mercadopago/mercadopago-gateway.php:841
436
- msgid "Mercado Pago Payment ID"
437
- msgstr "ID de pago de Mercado Pago"
438
-
439
- #: mercadopago/mercadopago-custom-gateway.php:950 mercadopago/mercadopago-gateway.php:875
440
- msgid "Customer haven't paid yet."
441
- msgstr "El cliente todavía no efectuó el pago."
442
-
443
- #: mercadopago/mercadopago-custom-gateway.php:957 mercadopago/mercadopago-gateway.php:881
444
- msgid "Payment under review."
445
- msgstr "El pago está pendiente de revisión."
446
-
447
- #: mercadopago/mercadopago-custom-gateway.php:964 mercadopago/mercadopago-gateway.php:887
448
- msgid "The payment was refused. The customer can try again."
449
- msgstr "El pago fue rechazado. El cliente puede intentar nuevamente."
450
-
451
- #: mercadopago/mercadopago-custom-gateway.php:971 mercadopago/mercadopago-gateway.php:893
452
- msgid "The payment was refunded to the customer."
453
- msgstr "El pago fue devuelto al cliente."
454
-
455
- #: mercadopago/mercadopago-custom-gateway.php:978 mercadopago/mercadopago-gateway.php:899
456
- msgid "The payment was cancelled."
457
- msgstr "El pago fue cancelado."
458
-
459
- #: mercadopago/mercadopago-custom-gateway.php:984 mercadopago/mercadopago-custom-gateway.php:990 mercadopago/mercadopago-gateway.php:904
460
- #: mercadopago/mercadopago-gateway.php:909
461
- msgid "The payment is under mediation or it was charged-back."
462
- msgstr "El pago esta en mediación o la compra fue desconocida por el cliente."
463
-
464
- #: mercadopago/mercadopago-gateway.php:51
465
- msgid "Mercado Pago - Standard Checkout"
466
- msgstr "Mercado Pago - Checkout Estándar"
467
-
468
- #: mercadopago/mercadopago-gateway.php:148
469
- msgid "Select the payment methods that you <strong>don't</strong> want to receive with Mercado Pago."
470
- msgstr "Selecione los medios de pago que <strong>no</strong> desea aceptar con Mercado Pago."
471
-
472
- #: mercadopago/mercadopago-gateway.php:158 mercadopago/mercadopago-gateway.php:167
473
- msgid "Configure your Client_id and Client_secret to have access to more options."
474
- msgstr "Configure su Client_id y Client_secret para tener acceso a más opciones."
475
-
476
- #: mercadopago/mercadopago-gateway.php:184 mercadopago/mercadopago-gateway.php:192 mercadopago/mercadopago-gateway.php:202
477
- msgid "This field should be an integer."
478
- msgstr "Este campo debe ser un número."
479
-
480
- #: mercadopago/mercadopago-gateway.php:187
481
- msgid "If your integration method is iFrame, please inform the payment iFrame width."
482
- msgstr "Si su modo de apertura es iFrame, indique el ancho del iFrame."
483
-
484
- #: mercadopago/mercadopago-gateway.php:195
485
- msgid "If your integration method is iFrame, please inform the payment iFrame height."
486
- msgstr "Si su modo de apertura es iFrame, indique el alto del iFrame."
487
-
488
- #: mercadopago/mercadopago-gateway.php:205
489
- msgid "Select the max number of installments for your customers."
490
- msgstr "Seleccione el número máximo de cuotas posibles para sus clientes."
491
-
492
- #: mercadopago/mercadopago-gateway.php:213
493
- msgid "Enable Standard Checkout"
494
- msgstr "Habilitar el Checkout Estándar"
495
-
496
- #: mercadopago/mercadopago-gateway.php:224
497
- msgid "Insert your Mercado Pago Client_id."
498
- msgstr "Inserte su Client_id de Mercado Pago."
499
-
500
- #: mercadopago/mercadopago-gateway.php:231
501
- msgid "Insert your Mercado Pago Client_secret."
502
- msgstr "Inserte su Client_secret de Mercado Pago."
503
-
504
- #: mercadopago/mercadopago-gateway.php:270
505
- msgid "Integration Method"
506
- msgstr "Método de integración"
507
-
508
- #: mercadopago/mercadopago-gateway.php:272
509
- msgid ""
510
- "Select how your clients should interact with Mercado Pago. Modal Window (inside your store), Redirect (Client is redirected to Mercado Pago), or iFrame (an "
511
- "internal window is embedded to the page layout)."
512
- msgstr ""
513
- "Seleccione la forma en que sus clientes deben interactuar con Mercado Pago. Ventana Modal (Dentro de su tienda), Redireccionamiento (El cliente es "
514
- "redireccionado a Mercado Pago), o iFrame (Ventana de pago incorporada a su página)."
515
-
516
- #: mercadopago/mercadopago-gateway.php:275
517
- msgid "iFrame"
518
- msgstr "iFrame"
519
-
520
- #: mercadopago/mercadopago-gateway.php:276
521
- msgid "Modal Window"
522
- msgstr "Ventana modal"
523
-
524
- #: mercadopago/mercadopago-gateway.php:277
525
- msgid "Redirect"
526
- msgstr "Redireccionamiento"
527
-
528
- #: mercadopago/mercadopago-gateway.php:281
529
- msgid "iFrame Width"
530
- msgstr "Ancho del iFrame"
531
-
532
- #: mercadopago/mercadopago-gateway.php:287
533
- msgid "iFrame Height"
534
- msgstr "Alto del iFrame"
535
-
536
- #: mercadopago/mercadopago-gateway.php:293
537
- msgid "Auto Return"
538
- msgstr "Redirección automática"
539
-
540
- #: mercadopago/mercadopago-gateway.php:295
541
- msgid "Automatic Return After Payment"
542
- msgstr "Redirección Automática Luego del Pago"
543
-
544
- #: mercadopago/mercadopago-gateway.php:297
545
- msgid "After the payment, client is automatically redirected."
546
- msgstr "Después del pago, el cliente será redireccionado automáticamente."
547
-
548
- #: mercadopago/mercadopago-gateway.php:300
549
- msgid "Payment Options"
550
- msgstr "Opciones de Pago"
551
-
552
- #: mercadopago/mercadopago-gateway.php:305
553
- msgid "Max installments"
554
- msgstr "Número máximo de cuotas"
555
-
556
- #: mercadopago/mercadopago-gateway.php:311
557
- msgid "Exclude Payment Methods"
558
- msgstr "Excluir métodos de pago"
559
-
560
- #: mercadopago/mercadopago-gateway.php:428
561
- msgid "Thank you for your order. Please, proceed with your payment clicking in the bellow button."
562
- msgstr "Gracias por su compra. Por favor, prosiga a la página de pago haciendo click en el botón de abajo."
563
-
564
- #: mercadopago/mercadopago-gateway.php:436
565
- msgid "Cancel order &amp; Clear cart"
566
- msgstr "Cancelar &amp; Limpiar carrito"
567
-
568
- #: mercadopago/mercadopago-gateway.php:446
569
- msgid "Thank you for your order. Proceed with your payment completing the following information."
570
- msgstr "Gracias por su compra. Prosiga con su pago completando la información abajo."
571
-
572
- #: mercadopago/mercadopago-gateway.php:697
573
- msgid "Your Mercado Pago credentials Client_id/Client_secret appears to be misconfigured."
574
- msgstr "Sus credenciales Client_id/Client_secret de Mercado Pago parecen no estar debidamente configuradas."
575
-
576
- msgid " as it appears in your card ..."
577
- msgstr " tal como aparece en su tarjeta ..."
578
-
579
- msgid "Done, your payment was accredited!"
580
- msgstr "Listo, su pago ha sido aceptado!"
581
-
582
- msgid "We are processing the payment. In less than an hour we will e-mail you the results."
583
- msgstr "Estamos procesando su pago. En menos de una hora se le notificará por correo electrónico."
584
-
585
- msgid "We are processing the payment. In less than 2 business days we will tell you by e-mail whether it has accredited or we need more information."
586
- msgstr "Estamos procesando su pago. En menos de 2 días se le notificará por correo electrónico si se ha aprobado el pago o si se necesita información adicional."
587
-
588
- msgid "Check the card number."
589
- msgstr "Compruebe el número de tarjeta."
590
-
591
- msgid "Check the expiration date."
592
- msgstr "Compruebe la fecha de expiración."
593
-
594
- msgid "Check the information."
595
- msgstr "Compruebe la información informada."
596
-
597
- msgid "Check the security code."
598
- msgstr "Compruebe el código de seguridad informado."
599
-
600
- msgid "We could not process your payment."
601
- msgstr "No se puede procesar su pago."
602
-
603
- msgid "You must authorize the payment of your orders."
604
- msgstr "Usted debe autorizar pagos de sus órdenes."
605
-
606
- msgid "Call your card issuer to activate your card. The phone is on the back of your card."
607
- msgstr "Póngase en contacto con el emisor de su tarjeta para activarla. El teléfono se encuentra en la parte posterior de su tarjeta."
608
-
609
- msgid "You already made a payment for that amount. If you need to repay, use another card or other payment method."
610
- msgstr "Usted ya realizó el pago de esta cantidad. Si tiene que pagar de nuevo, utilizar otra tarjeta u otro método de pago."
611
-
612
- msgid "Your payment was rejected. Choose another payment method. We recommend cash."
613
- msgstr "Su pago fue rechazado. Por favor seleccione otro método de pago. Se recomienda dinero."
614
-
615
- msgid "Your payment do not have sufficient funds."
616
- msgstr "Su pago no tiene fondos suficientes."
617
-
618
- msgid "Your payment does not process payments with selected installments."
619
- msgstr "El pago no puede procesar la cuota seleccionada."
620
-
621
- msgid "You have reached the limit of allowed attempts. Choose another card or another payment method."
622
- msgstr "Has alcanzado el límite de intentos permitidos. Elija otra tarjeta u otro método de pago."
623
-
624
- msgid "This payment method did not process the payment."
625
- msgstr "Esta forma de pago no puede procesar su pago."
626
-
627
- msgid "Mercado Pago - Ticket"
628
- msgstr "Mercado Pago - Ticket"
629
-
630
- msgid "Mercado Pago - Credit Card"
631
- msgstr "Mercado Pago - Tarjeta de Crédito"
632
-
633
- msgid "Ticket Options"
634
- msgstr "Opciones de Ticket"
635
-
636
- msgid "Enable Ticket Payment Method"
637
- msgstr "Habilitar Pago con Ticket"
638
-
639
- msgid "Other Bank"
640
- msgstr "Otro Banco"
641
-
642
- msgid "Choose"
643
- msgstr "Escoger"
644
-
645
- msgid "A problem was occurred when processing your payment. Please, try again."
646
- msgstr "Un problema se produjo al procesar su pago. Por favor, inténtelo de nuevo."
647
-
648
- msgid "Thank you for your order. Please, pay the ticket to get your order approved."
649
- msgstr "Gracias por su orden. Por favor, pagar el ticket para tener su solicitud aprobada."
650
-
651
- msgid "Waiting for the ticket payment."
652
- msgstr "Esperando el pago del ticket."
653
-
654
- msgid "Print the Ticket"
655
- msgstr "Imprimir el ticket"
656
-
657
- msgid "To reprint the ticket click "
658
- msgstr "Para imprimir nuevamente el ticket hace clic "
659
-
660
- msgid "here"
661
- msgstr "aquí"
662
-
663
- msgid "Custom Checkout is Inactive"
664
- msgstr "Checkout Custom Inactivo"
665
-
666
- msgid "Standard Checkout is Inactive"
667
- msgstr "Checkout Estándar Inactivo"
668
-
669
- msgid "Ticket is Inactive"
670
- msgstr "Ticket Inactivo"
671
-
672
- msgid "Please, select the ticket issuer of your preference and then click "Place order" button. The ticket will be generated and you will be redirected to print it."
673
- msgstr "Por favor, seleccione el emisor de su elección y haga clic en el botón "PLACE ORDER". El ticket será generado y usted será redirigido a imprimirlo."
674
-
675
- msgid "Important: The order will be confirmed only after the payment approval."
676
- msgstr "Importante: La solicitud sólo será confirmada después de la aprobación del pago."
677
-
678
- msgid "Your Mercado Pago credential Access Token appears to be misconfigured."
679
- msgstr "Su credencial Access Token de Mercado de Pago parece estar desconfigurado."
680
-
681
- msgid "Your Card"
682
- msgstr "Sus Tarjetas"
683
-
684
- msgid "Other Cards"
685
- msgstr "Otras Tarjetas"
686
-
687
- msgid "Other Card"
688
- msgstr "Otra Tarjeta"
689
-
690
- msgid "ended in"
691
- msgstr "terminado en"
692
-
693
- msgid "Your site appears to not have SSL certification. SSL is a pre-requisite because the payment process is made in your server."
694
- msgstr "Su sitio parece no tener certificación SSL. SSL es un requisito previo porque la tramitación del pago se realiza en el servidor."
695
-
696
- msgid "<strong>ATTENTION: The currency"
697
- msgstr "<strong>ATENCIÓN: La moneda"
698
-
699
- msgid "defined in WooCommerce is different from the one used in your credentials country.<br>The currency for transactions in this payment method will be"
700
- msgstr "que se define en WooCommerce es diferente de la utilizada en el país de sus credenciales.<br>La moneda para las transacciones realizadas por este método de pago será"
701
-
702
- msgid "Currency conversions should be made outside this module.</strong><br><br>"
703
- msgstr "Conversiones de monedas se deben hacerse fuera de este módulo.</strong><br><br>"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
languages/woocommerce-mercadopago-module-es_ES.mo DELETED
Binary file
languages/woocommerce-mercadopago-module-es_ES.po DELETED
@@ -1,703 +0,0 @@
1
- # WordPress Blank Pot
2
- # Copyright (C) 2014 ...
3
- # This file is distributed under the GNU General Public License v2 or later.
4
- msgid ""
5
- msgstr ""
6
- "Project-Id-Version: WordPress Blank Pot v1.0.0\n"
7
- "POT-Creation-Date: 2016-05-23 14:52-0300\n"
8
- "PO-Revision-Date: \n"
9
- "Language-Team: Product Development <translations@example.com>\n"
10
- "Report-Msgid-Bugs-To: Translator Name <translations@example.com>\n"
11
- "MIME-Version: 1.0\n"
12
- "Content-Type: text/plain; charset=UTF-8\n"
13
- "Content-Transfer-Encoding: 8bit\n"
14
- "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
- "X-Textdomain-Support: yesX-Generator: Poedit 1.6.4\n"
16
- "X-Poedit-SourceCharset: UTF-8\n"
17
- "X-Poedit-KeywordsList: __;_e;esc_html_e;esc_html_x:1,2c;esc_html__;esc_attr_e;esc_attr_x:1,2c;esc_attr__;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_x:1,2c;_n:1,2;"
18
- "_n_noop:1,2;__ngettext:1,2;__ngettext_noop:1,2;_c,_nc:4c,1,2\n"
19
- "X-Poedit-Basepath: ../Documents/woocommerce (MAMP)/wp-content/plugins/woo-mercado-pago-module\n"
20
- "X-Generator: Poedit 1.8.7\n"
21
- "Last-Translator: \n"
22
- "Language: es_ES\n"
23
- "X-Poedit-SearchPath-0: .\n"
24
-
25
- #. Description of the plugin/theme
26
- msgid "This is the <strong>oficial</strong> module of Mercado Pago for WooCommerce plugin. This module enables WooCommerce to use Mercado Pago as a payment Gateway for purchases made in your e-commerce store."
27
- msgstr "Este es el módulo <strong>oficial</strong> de Mercado Pago para el plugin WooCommerce. Este módulo habilita el uso de Mercado Pago en WooCommerce como método de pago para compras realizadas en su tienda virtual."
28
-
29
- #: mercadopago-module.php:69
30
- #, php-format
31
- msgid "Woo Mercado Pago Module depends on the last version of %s to execute!"
32
- msgstr "Woo Mercado Pago Module depende de la última versión de %s para ejecutarse!"
33
-
34
- #: mercadopago-module.php:109
35
- msgid "Standard Checkout"
36
- msgstr "Checkout Estándar"
37
-
38
- #: mercadopago-module.php:113
39
- msgid "Custom Checkout"
40
- msgstr "Checkout Custom"
41
-
42
- #: mercadopago/mercadopago-custom-gateway.php:48
43
- msgid "Mercado Pago - Custom Checkout"
44
- msgstr "Mercado Pago - Checkout Custom"
45
-
46
- #: mercadopago/mercadopago-custom-gateway.php:51 mercadopago/mercadopago-gateway.php:54
47
- msgid "This module enables WooCommerce to use Mercado Pago as payment method for purchases made in your virtual store."
48
- msgstr "Este módulo habilita el uso de Mercado Pago en WooCommerce como método de pago para compras realizadas en su tienda virtual."
49
-
50
- #: mercadopago/mercadopago-custom-gateway.php:126 mercadopago/mercadopago-custom-gateway.php:791 mercadopago/mercadopago-gateway.php:125
51
- #: mercadopago/mercadopago-gateway.php:716
52
- msgid "Argentine"
53
- msgstr "Argentina"
54
-
55
- #: mercadopago/mercadopago-custom-gateway.php:127 mercadopago/mercadopago-custom-gateway.php:792 mercadopago/mercadopago-gateway.php:126
56
- #: mercadopago/mercadopago-gateway.php:717
57
- msgid "Brazil"
58
- msgstr "Brasil"
59
-
60
- #: mercadopago/mercadopago-custom-gateway.php:128 mercadopago/mercadopago-custom-gateway.php:794 mercadopago/mercadopago-gateway.php:127
61
- #: mercadopago/mercadopago-gateway.php:719
62
- msgid "Chile"
63
- msgstr "Chile"
64
-
65
- #: mercadopago/mercadopago-custom-gateway.php:129 mercadopago/mercadopago-custom-gateway.php:793 mercadopago/mercadopago-gateway.php:128
66
- #: mercadopago/mercadopago-gateway.php:718
67
- msgid "Colombia"
68
- msgstr "Colombia"
69
-
70
- #: mercadopago/mercadopago-custom-gateway.php:130 mercadopago/mercadopago-custom-gateway.php:795 mercadopago/mercadopago-gateway.php:129
71
- #: mercadopago/mercadopago-gateway.php:720
72
- msgid "Mexico"
73
- msgstr "México"
74
-
75
- #: mercadopago/mercadopago-custom-gateway.php:132 mercadopago/mercadopago-gateway.php:130
76
- msgid "or"
77
- msgstr "o"
78
-
79
- #: mercadopago/mercadopago-custom-gateway.php:133 mercadopago/mercadopago-custom-gateway.php:796 mercadopago/mercadopago-gateway.php:131
80
- #: mercadopago/mercadopago-gateway.php:721
81
- msgid "Venezuela"
82
- msgstr "Venezuela"
83
-
84
- #: mercadopago/mercadopago-custom-gateway.php:145 mercadopago/mercadopago-gateway.php:151
85
- msgid "Your credentials are <strong>valid</strong> for"
86
- msgstr "Sus credenciales <strong>son válidas</strong> para"
87
-
88
- #: mercadopago/mercadopago-custom-gateway.php:151 mercadopago/mercadopago-custom-gateway.php:156 mercadopago/mercadopago-gateway.php:161
89
- #: mercadopago/mercadopago-gateway.php:170
90
- msgid "Your credentials are <strong>not valid</strong>!"
91
- msgstr "Sus credenciales <strong>no son válidas</strong>!"
92
-
93
- #: mercadopago/mercadopago-custom-gateway.php:169 mercadopago/mercadopago-gateway.php:211
94
- msgid "Enable/Disable"
95
- msgstr "Habilitar/Deshabilitar"
96
-
97
- #: mercadopago/mercadopago-custom-gateway.php:171
98
- msgid "Enable Custom Checkout"
99
- msgstr "Habilitar Checkout Custom"
100
-
101
- #: mercadopago/mercadopago-custom-gateway.php:175 mercadopago/mercadopago-gateway.php:217
102
- msgid "Mercado Pago Credentials"
103
- msgstr "Credenciales de Mercado Pago"
104
-
105
- #: mercadopago/mercadopago-custom-gateway.php:177 mercadopago/mercadopago-gateway.php:219
106
- msgid "You can obtain your credentials for"
107
- msgstr "Puedes obtener tus credenciales para"
108
-
109
- #: mercadopago/mercadopago-custom-gateway.php:182
110
- msgid "Insert your Mercado Pago Public key."
111
- msgstr "Inserte su Public Key de Mercado Pago."
112
-
113
- #: mercadopago/mercadopago-custom-gateway.php:189
114
- msgid "Insert your Mercado Pago Access token."
115
- msgstr "Inserte su Access Token de Mercado Pago."
116
-
117
- #: mercadopago/mercadopago-custom-gateway.php:194 mercadopago/mercadopago-gateway.php:236
118
- msgid "Instant Payment Notification (IPN) URL"
119
- msgstr "URL da Notificación Instantanea de Pago (IPN)"
120
-
121
- #: mercadopago/mercadopago-custom-gateway.php:196 mercadopago/mercadopago-gateway.php:238
122
- msgid "Your IPN URL to receive instant payment notifications is"
123
- msgstr "Su URL de IPN para recibir notificaciones instantáneas de pago es"
124
-
125
- #: mercadopago/mercadopago-custom-gateway.php:199 mercadopago/mercadopago-gateway.php:241
126
- msgid "Checkout Options"
127
- msgstr "Opciones de Checkout"
128
-
129
- #: mercadopago/mercadopago-custom-gateway.php:204 mercadopago/mercadopago-gateway.php:246
130
- msgid "Title"
131
- msgstr "Título"
132
-
133
- #: mercadopago/mercadopago-custom-gateway.php:206 mercadopago/mercadopago-gateway.php:248
134
- msgid "Title shown to the client in the checkout."
135
- msgstr "Título mostrado al cliente en el checkout."
136
-
137
- #: mercadopago/mercadopago-custom-gateway.php:207 mercadopago/mercadopago-custom-gateway.php:219 mercadopago/mercadopago-gateway.php:249
138
- msgid "Mercado Pago"
139
- msgstr "Mercado Pago"
140
-
141
- #: mercadopago/mercadopago-custom-gateway.php:210 mercadopago/mercadopago-gateway.php:252
142
- msgid "Description"
143
- msgstr "Descripción"
144
-
145
- #: mercadopago/mercadopago-custom-gateway.php:212 mercadopago/mercadopago-gateway.php:254
146
- msgid "Description shown to the client in the checkout."
147
- msgstr "Descripción mostrada al cliente en el checkout."
148
-
149
- #: mercadopago/mercadopago-custom-gateway.php:213 mercadopago/mercadopago-gateway.php:255 mercadopago/mercadopago-gateway.php:432
150
- msgid "Pay with Mercado Pago"
151
- msgstr "Pagar con Mercado Pago"
152
-
153
- #: mercadopago/mercadopago-custom-gateway.php:216
154
- msgid "Statement Descriptor"
155
- msgstr "Descripción de la Factura"
156
-
157
- #: mercadopago/mercadopago-custom-gateway.php:218
158
- msgid "The description that will be shown in your customer's invoice."
159
- msgstr "La descripción que se muestra en la factura de su cliente."
160
-
161
- #: mercadopago/mercadopago-custom-gateway.php:222
162
- msgid "Binary Mode"
163
- msgstr "Modo binario"
164
-
165
- #: mercadopago/mercadopago-custom-gateway.php:224
166
- msgid "Enable binary mode for checkout status"
167
- msgstr "Activar el modo binario para el estado del checkout"
168
-
169
- #: mercadopago/mercadopago-custom-gateway.php:226
170
- msgid "When charging a credit card, only [approved] or [reject] status will be taken."
171
- msgstr "Al cargar una tarjeta de crédito, sólo los estados [aprobado] o [rechazar] seran tomados."
172
-
173
- #: mercadopago/mercadopago-custom-gateway.php:229
174
- msgid "Ticket"
175
- msgstr "Ticket"
176
-
177
- #: mercadopago/mercadopago-custom-gateway.php:231
178
- msgid "Enable Ticket for Custom Checkout"
179
- msgstr "Habilitar Ticket para Checkout Custom"
180
-
181
- #: mercadopago/mercadopago-custom-gateway.php:233
182
- msgid "Let your customer pay you with tickets"
183
- msgstr "Deje que su cliente le paga con tickets"
184
-
185
- #: mercadopago/mercadopago-custom-gateway.php:236 mercadopago/mercadopago-gateway.php:258
186
- msgid "Store Category"
187
- msgstr "Categoría de la tienda"
188
-
189
- #: mercadopago/mercadopago-custom-gateway.php:238 mercadopago/mercadopago-gateway.php:260
190
- msgid "Define which type of products your store sells."
191
- msgstr "Defina el tipo de productos que su tienda vende."
192
-
193
- #: mercadopago/mercadopago-custom-gateway.php:242 mercadopago/mercadopago-gateway.php:264
194
- msgid "Store Identificator"
195
- msgstr "Identificador de la tienda"
196
-
197
- #: mercadopago/mercadopago-custom-gateway.php:244 mercadopago/mercadopago-gateway.php:266
198
- msgid "Please, inform a prefix to your store."
199
- msgstr "Por favor, informe un prefijo para su tienda."
200
-
201
- #: mercadopago/mercadopago-custom-gateway.php:244 mercadopago/mercadopago-gateway.php:266
202
- msgid ""
203
- "If you use your Mercado Pago account on multiple stores you should make sure that this prefix is unique as Mercado Pago will not allow orders with same "
204
- "identificators."
205
- msgstr ""
206
- "Si esta utilizando su cuenta Mercado Pago para múltiples tiendas, asegúrese que este prefijo sea único para no generar pedidos con el mismo identificador."
207
-
208
- #: mercadopago/mercadopago-custom-gateway.php:248 mercadopago/mercadopago-gateway.php:318
209
- msgid "Test and Debug Options"
210
- msgstr "Opciones de Prueba y Debug"
211
-
212
- #: mercadopago/mercadopago-custom-gateway.php:253 mercadopago/mercadopago-gateway.php:323
213
- msgid "Mercado Pago Sandbox"
214
- msgstr "Sandbox Mercado Pago"
215
-
216
- #: mercadopago/mercadopago-custom-gateway.php:255 mercadopago/mercadopago-gateway.php:325
217
- msgid "Enable Mercado Pago Sandbox"
218
- msgstr "Habilitar el sandbox de Mercado Pago"
219
-
220
- #: mercadopago/mercadopago-custom-gateway.php:257 mercadopago/mercadopago-gateway.php:327
221
- msgid "This option allows you to test payments inside a sandbox environment."
222
- msgstr "Esta opción permite simular un flujo de pagos completo en nuestro entorno Sandbox."
223
-
224
- #: mercadopago/mercadopago-custom-gateway.php:260 mercadopago/mercadopago-gateway.php:330
225
- msgid "Debug and Log"
226
- msgstr "Debug y Log"
227
-
228
- #: mercadopago/mercadopago-custom-gateway.php:262 mercadopago/mercadopago-gateway.php:332
229
- msgid "Enable log"
230
- msgstr "Habilitar Log"
231
-
232
- #: mercadopago/mercadopago-custom-gateway.php:264 mercadopago/mercadopago-gateway.php:334
233
- msgid "Register event logs of Mercado Pago, such as API requests, in the file"
234
- msgstr "Registrar logs de eventos de Mercado Pago, como llamadas a la API, dentro del archivo"
235
-
236
- #: mercadopago/mercadopago-custom-gateway.php:265 mercadopago/mercadopago-gateway.php:335
237
- msgid "File location: "
238
- msgstr "Local del archivo: "
239
-
240
- #: mercadopago/mercadopago-custom-gateway.php:281 mercadopago/mercadopago-gateway.php:351
241
- #, php-format
242
- msgid "Please, rate us %s on WordPress.org and give your feedback to help improve this module!"
243
- msgstr "Por favor, da tu evaluación con %s en WordPress.org y da su feedback para ayudar a mejorar este módulo!"
244
-
245
- #: mercadopago/mercadopago-custom-gateway.php:332
246
- msgid "Payment Method"
247
- msgstr "Métodos de Pago"
248
-
249
- #: mercadopago/mercadopago-custom-gateway.php:333
250
- msgid "Credit card number"
251
- msgstr "Número de tarjeta de crédito"
252
-
253
- #: mercadopago/mercadopago-custom-gateway.php:334
254
- msgid "Expiration month"
255
- msgstr "Mes de expiración"
256
-
257
- #: mercadopago/mercadopago-custom-gateway.php:335
258
- msgid "Expiration year"
259
- msgstr "Año de expiración"
260
-
261
- #: mercadopago/mercadopago-custom-gateway.php:336
262
- msgid "Year"
263
- msgstr "Año"
264
-
265
- #: mercadopago/mercadopago-custom-gateway.php:337
266
- msgid "Month"
267
- msgstr "Mes"
268
-
269
- #: mercadopago/mercadopago-custom-gateway.php:338
270
- msgid "Card holder name"
271
- msgstr "Nombre del titular de la tarjeta"
272
-
273
- #: mercadopago/mercadopago-custom-gateway.php:339
274
- msgid "Security code"
275
- msgstr "Código de seguridad"
276
-
277
- #: mercadopago/mercadopago-custom-gateway.php:340
278
- msgid "Document Type"
279
- msgstr "Tipo de Documento"
280
-
281
- #: mercadopago/mercadopago-custom-gateway.php:341
282
- msgid "Document number"
283
- msgstr "Número del Documento"
284
-
285
- #: mercadopago/mercadopago-custom-gateway.php:342
286
- msgid "Issuer"
287
- msgstr "Emisor"
288
-
289
- #: mercadopago/mercadopago-custom-gateway.php:343
290
- msgid "Installments"
291
- msgstr "Cuotas"
292
-
293
- #: mercadopago/mercadopago-custom-gateway.php:347
294
- msgid "Parameter cardNumber can not be null/empty"
295
- msgstr "Parámetro [Numero de tarjeta] no puede ser nulo/vacío"
296
-
297
- #: mercadopago/mercadopago-custom-gateway.php:348
298
- msgid "Invalid Card Number"
299
- msgstr "Numero de tarjeta invalido"
300
-
301
- #: mercadopago/mercadopago-custom-gateway.php:350 mercadopago/mercadopago-custom-gateway.php:351 mercadopago/mercadopago-custom-gateway.php:352
302
- #: mercadopago/mercadopago-custom-gateway.php:353
303
- msgid "Invalid Expiration Date"
304
- msgstr "Fecha de vencimiento inválida"
305
-
306
- #: mercadopago/mercadopago-custom-gateway.php:355
307
- msgid "Parameter cardholderName can not be null/empty"
308
- msgstr "Parámetro [Nombre del titular] no puede ser nulo/vacío"
309
-
310
- #: mercadopago/mercadopago-custom-gateway.php:356
311
- msgid "Invalid Card Holder Name"
312
- msgstr "Nombre del titular de la tarjeta invalido"
313
-
314
- #: mercadopago/mercadopago-custom-gateway.php:358
315
- msgid "Parameter securityCode can not be null/empty"
316
- msgstr "Parámetro [Código de seguridad] no puede ser nulo/vacío"
317
-
318
- #: mercadopago/mercadopago-custom-gateway.php:359
319
- msgid "Invalid Security Code"
320
- msgstr "Código de seguridad invalido"
321
-
322
- #: mercadopago/mercadopago-custom-gateway.php:361
323
- msgid "Parameter docType can not be null/empty"
324
- msgstr "Parámetro [Tipo de Documento] no puede ser nulo/vacío"
325
-
326
- #: mercadopago/mercadopago-custom-gateway.php:362
327
- msgid "Invalid Document Type"
328
- msgstr "Tipo de Documento invalido"
329
-
330
- #: mercadopago/mercadopago-custom-gateway.php:364
331
- msgid "Parameter docNumber can not be null/empty"
332
- msgstr "Parámetro [Número del Documento] no puede ser nulo/vacío"
333
-
334
- #: mercadopago/mercadopago-custom-gateway.php:365
335
- msgid "Invalid Document Number"
336
- msgstr "Número del Documento invalido"
337
-
338
- #: mercadopago/mercadopago-custom-gateway.php:367
339
- msgid "The parameter cardholder.document.subtype can not be null or empty"
340
- msgstr "Parámetro [Subtipo del documento] no puede ser nulo/vacío"
341
-
342
- #: mercadopago/mercadopago-custom-gateway.php:368
343
- msgid "Invalid Document Sub Type"
344
- msgstr "Subtipo del documento invalido"
345
-
346
- #: mercadopago/mercadopago-custom-gateway.php:370
347
- msgid "Parameter cardIssuerId can not be null/empty"
348
- msgstr "Parámetro [Emisor] no puede ser nulo/vacío"
349
-
350
- #: mercadopago/mercadopago-custom-gateway.php:402 mercadopago/mercadopago-custom-gateway.php:943 mercadopago/mercadopago-gateway.php:869
351
- msgid "Payment approved."
352
- msgstr "Pago aprobado."
353
-
354
- #: mercadopago/mercadopago-custom-gateway.php:416 mercadopago/mercadopago-custom-gateway.php:805
355
- msgid "Your payment is under review. In less than 1h, you should be notified by email."
356
- msgstr "Su pago está en revisión. En menos de 1 hora, usted debe ser notificado por correo electrónico."
357
-
358
- #: mercadopago/mercadopago-custom-gateway.php:418
359
- msgid "Check your order resume"
360
- msgstr "Ver su hoja de pedido"
361
-
362
- #: mercadopago/mercadopago-custom-gateway.php:431
363
- msgid "Your payment was refused. You can try again."
364
- msgstr "Su pago fue rechazado. Puede intentarlo de nuevo."
365
-
366
- #: mercadopago/mercadopago-custom-gateway.php:435 mercadopago/mercadopago-custom-gateway.php:819 mercadopago/mercadopago-gateway.php:460
367
- msgid "Click to try again"
368
- msgstr "Haga clic para Inténtalo de nuevo"
369
-
370
- #: mercadopago/mercadopago-custom-gateway.php:455
371
- msgid "A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?"
372
- msgstr "Un problema se produjo al procesar su pago. Usted esta seguro de que ha rellenado correctamente toda la información en la forma de checkout?"
373
-
374
- #: mercadopago/mercadopago-custom-gateway.php:544
375
- msgid "Shipping"
376
- msgstr "Envío"
377
-
378
- #: mercadopago/mercadopago-custom-gateway.php:545
379
- msgid "Shipping service used by store"
380
- msgstr "Servicio de envío utilizado por el almacén"
381
-
382
- #: mercadopago/mercadopago-custom-gateway.php:721 mercadopago/mercadopago-gateway.php:649
383
- msgid "WooCommerce &gt; System Status &gt; Logs"
384
- msgstr "WooCommerce &gt; Estado del Sistema &gt; Logs"
385
-
386
- #: mercadopago/mercadopago-custom-gateway.php:766 mercadopago/mercadopago-custom-gateway.php:779 mercadopago/mercadopago-gateway.php:694
387
- #: mercadopago/mercadopago-gateway.php:705
388
- msgid "Mercado Pago is Inactive"
389
- msgstr "Mercado Pago Inactivo"
390
-
391
- #: mercadopago/mercadopago-custom-gateway.php:769
392
- msgid "Your Mercado Pago credentials Public Key/Access Token appears to be misconfigured."
393
- msgstr "Sus credenciales Client_id/Client_secret de Mercado Pago parecen no estar debidamente configuradas."
394
-
395
- #: mercadopago/mercadopago-custom-gateway.php:771 mercadopago/mercadopago-gateway.php:698
396
- msgid "Click here and configure!"
397
- msgstr "Haga click aquí y configure!"
398
-
399
- #: mercadopago/mercadopago-custom-gateway.php:782 mercadopago/mercadopago-gateway.php:708
400
- msgid "The currency"
401
- msgstr "La moneda"
402
-
403
- #: mercadopago/mercadopago-custom-gateway.php:783 mercadopago/mercadopago-gateway.php:708
404
- msgid "is not supported. Supported currencies are: ARS, BRL, CLP, COP, MXN, VEF."
405
- msgstr "no es soportada. Las monedas soportadas son: ARS, BRL, CLP, COP, MXN, VEF."
406
-
407
- #: mercadopago/mercadopago-custom-gateway.php:797
408
- msgid "Peru"
409
- msgstr "Peru"
410
-
411
- #: mercadopago/mercadopago-custom-gateway.php:809
412
- msgid "Click to check your order"
413
- msgstr "Haga clic para comprobar su pedido"
414
-
415
- #: mercadopago/mercadopago-custom-gateway.php:814 mercadopago/mercadopago-gateway.php:457
416
- msgid "An error occurred when proccessing your payment. Please try again or contact us for assistence."
417
- msgstr "Se ha producido un error en el procesamiento de su pago. Por favor, inténtelo de nuevo o póngase en contacto con nosotros para Asistencia."
418
-
419
- #: mercadopago/mercadopago-custom-gateway.php:816
420
- msgid "Reason is: "
421
- msgstr "La razón es:"
422
-
423
- #: mercadopago/mercadopago-custom-gateway.php:849 mercadopago/mercadopago-gateway.php:748
424
- msgid "Mercado Pago Request Failure"
425
- msgstr "La solicitud de Mercado Pago ha fallado."
426
-
427
- #: mercadopago/mercadopago-custom-gateway.php:918 mercadopago/mercadopago-gateway.php:822
428
- msgid "Payer email"
429
- msgstr "Email del comprador"
430
-
431
- #: mercadopago/mercadopago-custom-gateway.php:926 mercadopago/mercadopago-gateway.php:829
432
- msgid "Payment type"
433
- msgstr "Método de pago"
434
-
435
- #: mercadopago/mercadopago-custom-gateway.php:934 mercadopago/mercadopago-gateway.php:841
436
- msgid "Mercado Pago Payment ID"
437
- msgstr "ID de pago de Mercado Pago"
438
-
439
- #: mercadopago/mercadopago-custom-gateway.php:950 mercadopago/mercadopago-gateway.php:875
440
- msgid "Customer haven't paid yet."
441
- msgstr "El cliente todavía no efectuó el pago."
442
-
443
- #: mercadopago/mercadopago-custom-gateway.php:957 mercadopago/mercadopago-gateway.php:881
444
- msgid "Payment under review."
445
- msgstr "El pago está pendiente de revisión."
446
-
447
- #: mercadopago/mercadopago-custom-gateway.php:964 mercadopago/mercadopago-gateway.php:887
448
- msgid "The payment was refused. The customer can try again."
449
- msgstr "El pago fue rechazado. El cliente puede intentar nuevamente."
450
-
451
- #: mercadopago/mercadopago-custom-gateway.php:971 mercadopago/mercadopago-gateway.php:893
452
- msgid "The payment was refunded to the customer."
453
- msgstr "El pago fue devuelto al cliente."
454
-
455
- #: mercadopago/mercadopago-custom-gateway.php:978 mercadopago/mercadopago-gateway.php:899
456
- msgid "The payment was cancelled."
457
- msgstr "El pago fue cancelado."
458
-
459
- #: mercadopago/mercadopago-custom-gateway.php:984 mercadopago/mercadopago-custom-gateway.php:990 mercadopago/mercadopago-gateway.php:904
460
- #: mercadopago/mercadopago-gateway.php:909
461
- msgid "The payment is under mediation or it was charged-back."
462
- msgstr "El pago esta en mediación o la compra fue desconocida por el cliente."
463
-
464
- #: mercadopago/mercadopago-gateway.php:51
465
- msgid "Mercado Pago - Standard Checkout"
466
- msgstr "Mercado Pago - Checkout Estándar"
467
-
468
- #: mercadopago/mercadopago-gateway.php:148
469
- msgid "Select the payment methods that you <strong>don't</strong> want to receive with Mercado Pago."
470
- msgstr "Selecione los medios de pago que <strong>no</strong> desea aceptar con Mercado Pago."
471
-
472
- #: mercadopago/mercadopago-gateway.php:158 mercadopago/mercadopago-gateway.php:167
473
- msgid "Configure your Client_id and Client_secret to have access to more options."
474
- msgstr "Configure su Client_id y Client_secret para tener acceso a más opciones."
475
-
476
- #: mercadopago/mercadopago-gateway.php:184 mercadopago/mercadopago-gateway.php:192 mercadopago/mercadopago-gateway.php:202
477
- msgid "This field should be an integer."
478
- msgstr "Este campo debe ser un número."
479
-
480
- #: mercadopago/mercadopago-gateway.php:187
481
- msgid "If your integration method is iFrame, please inform the payment iFrame width."
482
- msgstr "Si su modo de apertura es iFrame, indique el ancho del iFrame."
483
-
484
- #: mercadopago/mercadopago-gateway.php:195
485
- msgid "If your integration method is iFrame, please inform the payment iFrame height."
486
- msgstr "Si su modo de apertura es iFrame, indique el alto del iFrame."
487
-
488
- #: mercadopago/mercadopago-gateway.php:205
489
- msgid "Select the max number of installments for your customers."
490
- msgstr "Seleccione el número máximo de cuotas posibles para sus clientes."
491
-
492
- #: mercadopago/mercadopago-gateway.php:213
493
- msgid "Enable Standard Checkout"
494
- msgstr "Habilitar el Checkout Estándar"
495
-
496
- #: mercadopago/mercadopago-gateway.php:224
497
- msgid "Insert your Mercado Pago Client_id."
498
- msgstr "Inserte su Client_id de Mercado Pago."
499
-
500
- #: mercadopago/mercadopago-gateway.php:231
501
- msgid "Insert your Mercado Pago Client_secret."
502
- msgstr "Inserte su Client_secret de Mercado Pago."
503
-
504
- #: mercadopago/mercadopago-gateway.php:270
505
- msgid "Integration Method"
506
- msgstr "Método de integración"
507
-
508
- #: mercadopago/mercadopago-gateway.php:272
509
- msgid ""
510
- "Select how your clients should interact with Mercado Pago. Modal Window (inside your store), Redirect (Client is redirected to Mercado Pago), or iFrame (an "
511
- "internal window is embedded to the page layout)."
512
- msgstr ""
513
- "Seleccione la forma en que sus clientes deben interactuar con Mercado Pago. Ventana Modal (Dentro de su tienda), Redireccionamiento (El cliente es "
514
- "redireccionado a Mercado Pago), o iFrame (Ventana de pago incorporada a su página)."
515
-
516
- #: mercadopago/mercadopago-gateway.php:275
517
- msgid "iFrame"
518
- msgstr "iFrame"
519
-
520
- #: mercadopago/mercadopago-gateway.php:276
521
- msgid "Modal Window"
522
- msgstr "Ventana modal"
523
-
524
- #: mercadopago/mercadopago-gateway.php:277
525
- msgid "Redirect"
526
- msgstr "Redireccionamiento"
527
-
528
- #: mercadopago/mercadopago-gateway.php:281
529
- msgid "iFrame Width"
530
- msgstr "Ancho del iFrame"
531
-
532
- #: mercadopago/mercadopago-gateway.php:287
533
- msgid "iFrame Height"
534
- msgstr "Alto del iFrame"
535
-
536
- #: mercadopago/mercadopago-gateway.php:293
537
- msgid "Auto Return"
538
- msgstr "Redirección automática"
539
-
540
- #: mercadopago/mercadopago-gateway.php:295
541
- msgid "Automatic Return After Payment"
542
- msgstr "Redirección Automática Luego del Pago"
543
-
544
- #: mercadopago/mercadopago-gateway.php:297
545
- msgid "After the payment, client is automatically redirected."
546
- msgstr "Después del pago, el cliente será redireccionado automáticamente."
547
-
548
- #: mercadopago/mercadopago-gateway.php:300
549
- msgid "Payment Options"
550
- msgstr "Opciones de Pago"
551
-
552
- #: mercadopago/mercadopago-gateway.php:305
553
- msgid "Max installments"
554
- msgstr "Número máximo de cuotas"
555
-
556
- #: mercadopago/mercadopago-gateway.php:311
557
- msgid "Exclude Payment Methods"
558
- msgstr "Excluir métodos de pago"
559
-
560
- #: mercadopago/mercadopago-gateway.php:428
561
- msgid "Thank you for your order. Please, proceed with your payment clicking in the bellow button."
562
- msgstr "Gracias por su compra. Por favor, prosiga a la página de pago haciendo click en el botón de abajo."
563
-
564
- #: mercadopago/mercadopago-gateway.php:436
565
- msgid "Cancel order &amp; Clear cart"
566
- msgstr "Cancelar &amp; Limpiar carrito"
567
-
568
- #: mercadopago/mercadopago-gateway.php:446
569
- msgid "Thank you for your order. Proceed with your payment completing the following information."
570
- msgstr "Gracias por su compra. Prosiga con su pago completando la información abajo."
571
-
572
- #: mercadopago/mercadopago-gateway.php:697
573
- msgid "Your Mercado Pago credentials Client_id/Client_secret appears to be misconfigured."
574
- msgstr "Sus credenciales Client_id/Client_secret de Mercado Pago parecen no estar debidamente configuradas."
575
-
576
- msgid " as it appears in your card ..."
577
- msgstr " tal como aparece en su tarjeta ..."
578
-
579
- msgid "Done, your payment was accredited!"
580
- msgstr "Listo, su pago ha sido aceptado!"
581
-
582
- msgid "We are processing the payment. In less than an hour we will e-mail you the results."
583
- msgstr "Estamos procesando su pago. En menos de una hora se le notificará por correo electrónico."
584
-
585
- msgid "We are processing the payment. In less than 2 business days we will tell you by e-mail whether it has accredited or we need more information."
586
- msgstr "Estamos procesando su pago. En menos de 2 días se le notificará por correo electrónico si se ha aprobado el pago o si se necesita información adicional."
587
-
588
- msgid "Check the card number."
589
- msgstr "Compruebe el número de tarjeta."
590
-
591
- msgid "Check the expiration date."
592
- msgstr "Compruebe la fecha de expiración."
593
-
594
- msgid "Check the information."
595
- msgstr "Compruebe la información informada."
596
-
597
- msgid "Check the security code."
598
- msgstr "Compruebe el código de seguridad informado."
599
-
600
- msgid "We could not process your payment."
601
- msgstr "No se puede procesar su pago."
602
-
603
- msgid "You must authorize the payment of your orders."
604
- msgstr "Usted debe autorizar pagos de sus órdenes."
605
-
606
- msgid "Call your card issuer to activate your card. The phone is on the back of your card."
607
- msgstr "Póngase en contacto con el emisor de su tarjeta para activarla. El teléfono se encuentra en la parte posterior de su tarjeta."
608
-
609
- msgid "You already made a payment for that amount. If you need to repay, use another card or other payment method."
610
- msgstr "Usted ya realizó el pago de esta cantidad. Si tiene que pagar de nuevo, utilizar otra tarjeta u otro método de pago."
611
-
612
- msgid "Your payment was rejected. Choose another payment method. We recommend cash."
613
- msgstr "Su pago fue rechazado. Por favor seleccione otro método de pago. Se recomienda dinero."
614
-
615
- msgid "Your payment do not have sufficient funds."
616
- msgstr "Su pago no tiene fondos suficientes."
617
-
618
- msgid "Your payment does not process payments with selected installments."
619
- msgstr "El pago no puede procesar la cuota seleccionada."
620
-
621
- msgid "You have reached the limit of allowed attempts. Choose another card or another payment method."
622
- msgstr "Has alcanzado el límite de intentos permitidos. Elija otra tarjeta u otro método de pago."
623
-
624
- msgid "This payment method did not process the payment."
625
- msgstr "Esta forma de pago no puede procesar su pago."
626
-
627
- msgid "Mercado Pago - Ticket"
628
- msgstr "Mercado Pago - Ticket"
629
-
630
- msgid "Mercado Pago - Credit Card"
631
- msgstr "Mercado Pago - Tarjeta de Crédito"
632
-
633
- msgid "Ticket Options"
634
- msgstr "Opciones de Ticket"
635
-
636
- msgid "Enable Ticket Payment Method"
637
- msgstr "Habilitar Pago con Ticket"
638
-
639
- msgid "Other Bank"
640
- msgstr "Otro Banco"
641
-
642
- msgid "Choose"
643
- msgstr "Escoger"
644
-
645
- msgid "A problem was occurred when processing your payment. Please, try again."
646
- msgstr "Un problema se produjo al procesar su pago. Por favor, inténtelo de nuevo."
647
-
648
- msgid "Thank you for your order. Please, pay the ticket to get your order approved."
649
- msgstr "Gracias por su orden. Por favor, pagar el ticket para tener su solicitud aprobada."
650
-
651
- msgid "Waiting for the ticket payment."
652
- msgstr "Esperando el pago del ticket."
653
-
654
- msgid "Print the Ticket"
655
- msgstr "Imprimir el ticket"
656
-
657
- msgid "To reprint the ticket click "
658
- msgstr "Para imprimir nuevamente el ticket hace clic "
659
-
660
- msgid "here"
661
- msgstr "aquí"
662
-
663
- msgid "Custom Checkout is Inactive"
664
- msgstr "Checkout Custom Inactivo"
665
-
666
- msgid "Standard Checkout is Inactive"
667
- msgstr "Checkout Estándar Inactivo"
668
-
669
- msgid "Ticket is Inactive"
670
- msgstr "Ticket Inactivo"
671
-
672
- msgid "Please, select the ticket issuer of your preference and then click "Place order" button. The ticket will be generated and you will be redirected to print it."
673
- msgstr "Por favor, seleccione el emisor de su elección y haga clic en el botón "PLACE ORDER". El ticket será generado y usted será redirigido a imprimirlo."
674
-
675
- msgid "Important: The order will be confirmed only after the payment approval."
676
- msgstr "Importante: La solicitud sólo será confirmada después de la aprobación del pago."
677
-
678
- msgid "Your Mercado Pago credential Access Token appears to be misconfigured."
679
- msgstr "Su credencial Access Token de Mercado de Pago parece estar desconfigurado."
680
-
681
- msgid "Your Card"
682
- msgstr "Sus Tarjetas"
683
-
684
- msgid "Other Cards"
685
- msgstr "Otras Tarjetas"
686
-
687
- msgid "Other Card"
688
- msgstr "Otra Tarjeta"
689
-
690
- msgid "ended in"
691
- msgstr "terminado en"
692
-
693
- msgid "Your site appears to not have SSL certification. SSL is a pre-requisite because the payment process is made in your server."
694
- msgstr "Su sitio parece no tener certificación SSL. SSL es un requisito previo porque la tramitación del pago se realiza en el servidor."
695
-
696
- msgid "<strong>ATTENTION: The currency"
697
- msgstr "<strong>ATENCIÓN: La moneda"
698
-
699
- msgid "defined in WooCommerce is different from the one used in your credentials country.<br>The currency for transactions in this payment method will be"
700
- msgstr "que se define en WooCommerce es diferente de la utilizada en el país de sus credenciales.<br>La moneda para las transacciones realizadas por este método de pago será"
701
-
702
- msgid "Currency conversions should be made outside this module.</strong><br><br>"
703
- msgstr "Conversiones de monedas se deben hacerse fuera de este módulo.</strong><br><br>"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
languages/woocommerce-mercadopago-module-es_MX.mo DELETED
Binary file
languages/woocommerce-mercadopago-module-es_MX.po DELETED
@@ -1,703 +0,0 @@
1
- # WordPress Blank Pot
2
- # Copyright (C) 2014 ...
3
- # This file is distributed under the GNU General Public License v2 or later.
4
- msgid ""
5
- msgstr ""
6
- "Project-Id-Version: WordPress Blank Pot v1.0.0\n"
7
- "POT-Creation-Date: 2016-05-23 14:52-0300\n"
8
- "PO-Revision-Date: \n"
9
- "Language-Team: Product Development <translations@example.com>\n"
10
- "Report-Msgid-Bugs-To: Translator Name <translations@example.com>\n"
11
- "MIME-Version: 1.0\n"
12
- "Content-Type: text/plain; charset=UTF-8\n"
13
- "Content-Transfer-Encoding: 8bit\n"
14
- "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
- "X-Textdomain-Support: yesX-Generator: Poedit 1.6.4\n"
16
- "X-Poedit-SourceCharset: UTF-8\n"
17
- "X-Poedit-KeywordsList: __;_e;esc_html_e;esc_html_x:1,2c;esc_html__;esc_attr_e;esc_attr_x:1,2c;esc_attr__;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_x:1,2c;_n:1,2;"
18
- "_n_noop:1,2;__ngettext:1,2;__ngettext_noop:1,2;_c,_nc:4c,1,2\n"
19
- "X-Poedit-Basepath: ../Documents/woocommerce (MAMP)/wp-content/plugins/woo-mercado-pago-module\n"
20
- "X-Generator: Poedit 1.8.7\n"
21
- "Last-Translator: \n"
22
- "Language: es_MX\n"
23
- "X-Poedit-SearchPath-0: .\n"
24
-
25
- #. Description of the plugin/theme
26
- msgid "This is the <strong>oficial</strong> module of Mercado Pago for WooCommerce plugin. This module enables WooCommerce to use Mercado Pago as a payment Gateway for purchases made in your e-commerce store."
27
- msgstr "Este es el módulo <strong>oficial</strong> de Mercado Pago para el plugin WooCommerce. Este módulo habilita el uso de Mercado Pago en WooCommerce como método de pago para compras realizadas en su tienda virtual."
28
-
29
- #: mercadopago-module.php:69
30
- #, php-format
31
- msgid "Woo Mercado Pago Module depends on the last version of %s to execute!"
32
- msgstr "Woo Mercado Pago Module depende de la última versión de %s para ejecutarse!"
33
-
34
- #: mercadopago-module.php:109
35
- msgid "Standard Checkout"
36
- msgstr "Checkout Estándar"
37
-
38
- #: mercadopago-module.php:113
39
- msgid "Custom Checkout"
40
- msgstr "Checkout Custom"
41
-
42
- #: mercadopago/mercadopago-custom-gateway.php:48
43
- msgid "Mercado Pago - Custom Checkout"
44
- msgstr "Mercado Pago - Checkout Custom"
45
-
46
- #: mercadopago/mercadopago-custom-gateway.php:51 mercadopago/mercadopago-gateway.php:54
47
- msgid "This module enables WooCommerce to use Mercado Pago as payment method for purchases made in your virtual store."
48
- msgstr "Este módulo habilita el uso de Mercado Pago en WooCommerce como método de pago para compras realizadas en su tienda virtual."
49
-
50
- #: mercadopago/mercadopago-custom-gateway.php:126 mercadopago/mercadopago-custom-gateway.php:791 mercadopago/mercadopago-gateway.php:125
51
- #: mercadopago/mercadopago-gateway.php:716
52
- msgid "Argentine"
53
- msgstr "Argentina"
54
-
55
- #: mercadopago/mercadopago-custom-gateway.php:127 mercadopago/mercadopago-custom-gateway.php:792 mercadopago/mercadopago-gateway.php:126
56
- #: mercadopago/mercadopago-gateway.php:717
57
- msgid "Brazil"
58
- msgstr "Brasil"
59
-
60
- #: mercadopago/mercadopago-custom-gateway.php:128 mercadopago/mercadopago-custom-gateway.php:794 mercadopago/mercadopago-gateway.php:127
61
- #: mercadopago/mercadopago-gateway.php:719
62
- msgid "Chile"
63
- msgstr "Chile"
64
-
65
- #: mercadopago/mercadopago-custom-gateway.php:129 mercadopago/mercadopago-custom-gateway.php:793 mercadopago/mercadopago-gateway.php:128
66
- #: mercadopago/mercadopago-gateway.php:718
67
- msgid "Colombia"
68
- msgstr "Colombia"
69
-
70
- #: mercadopago/mercadopago-custom-gateway.php:130 mercadopago/mercadopago-custom-gateway.php:795 mercadopago/mercadopago-gateway.php:129
71
- #: mercadopago/mercadopago-gateway.php:720
72
- msgid "Mexico"
73
- msgstr "México"
74
-
75
- #: mercadopago/mercadopago-custom-gateway.php:132 mercadopago/mercadopago-gateway.php:130
76
- msgid "or"
77
- msgstr "o"
78
-
79
- #: mercadopago/mercadopago-custom-gateway.php:133 mercadopago/mercadopago-custom-gateway.php:796 mercadopago/mercadopago-gateway.php:131
80
- #: mercadopago/mercadopago-gateway.php:721
81
- msgid "Venezuela"
82
- msgstr "Venezuela"
83
-
84
- #: mercadopago/mercadopago-custom-gateway.php:145 mercadopago/mercadopago-gateway.php:151
85
- msgid "Your credentials are <strong>valid</strong> for"
86
- msgstr "Sus credenciales <strong>son válidas</strong> para"
87
-
88
- #: mercadopago/mercadopago-custom-gateway.php:151 mercadopago/mercadopago-custom-gateway.php:156 mercadopago/mercadopago-gateway.php:161
89
- #: mercadopago/mercadopago-gateway.php:170
90
- msgid "Your credentials are <strong>not valid</strong>!"
91
- msgstr "Sus credenciales <strong>no son válidas</strong>!"
92
-
93
- #: mercadopago/mercadopago-custom-gateway.php:169 mercadopago/mercadopago-gateway.php:211
94
- msgid "Enable/Disable"
95
- msgstr "Habilitar/Deshabilitar"
96
-
97
- #: mercadopago/mercadopago-custom-gateway.php:171
98
- msgid "Enable Custom Checkout"
99
- msgstr "Habilitar Checkout Custom"
100
-
101
- #: mercadopago/mercadopago-custom-gateway.php:175 mercadopago/mercadopago-gateway.php:217
102
- msgid "Mercado Pago Credentials"
103
- msgstr "Credenciales de Mercado Pago"
104
-
105
- #: mercadopago/mercadopago-custom-gateway.php:177 mercadopago/mercadopago-gateway.php:219
106
- msgid "You can obtain your credentials for"
107
- msgstr "Puedes obtener tus credenciales para"
108
-
109
- #: mercadopago/mercadopago-custom-gateway.php:182
110
- msgid "Insert your Mercado Pago Public key."
111
- msgstr "Inserte su Public Key de Mercado Pago."
112
-
113
- #: mercadopago/mercadopago-custom-gateway.php:189
114
- msgid "Insert your Mercado Pago Access token."
115
- msgstr "Inserte su Access Token de Mercado Pago."
116
-
117
- #: mercadopago/mercadopago-custom-gateway.php:194 mercadopago/mercadopago-gateway.php:236
118
- msgid "Instant Payment Notification (IPN) URL"
119
- msgstr "URL da Notificación Instantanea de Pago (IPN)"
120
-
121
- #: mercadopago/mercadopago-custom-gateway.php:196 mercadopago/mercadopago-gateway.php:238
122
- msgid "Your IPN URL to receive instant payment notifications is"
123
- msgstr "Su URL de IPN para recibir notificaciones instantáneas de pago es"
124
-
125
- #: mercadopago/mercadopago-custom-gateway.php:199 mercadopago/mercadopago-gateway.php:241
126
- msgid "Checkout Options"
127
- msgstr "Opciones de Checkout"
128
-
129
- #: mercadopago/mercadopago-custom-gateway.php:204 mercadopago/mercadopago-gateway.php:246
130
- msgid "Title"
131
- msgstr "Título"
132
-
133
- #: mercadopago/mercadopago-custom-gateway.php:206 mercadopago/mercadopago-gateway.php:248
134
- msgid "Title shown to the client in the checkout."
135
- msgstr "Título mostrado al cliente en el checkout."
136
-
137
- #: mercadopago/mercadopago-custom-gateway.php:207 mercadopago/mercadopago-custom-gateway.php:219 mercadopago/mercadopago-gateway.php:249
138
- msgid "Mercado Pago"
139
- msgstr "Mercado Pago"
140
-
141
- #: mercadopago/mercadopago-custom-gateway.php:210 mercadopago/mercadopago-gateway.php:252
142
- msgid "Description"
143
- msgstr "Descripción"
144
-
145
- #: mercadopago/mercadopago-custom-gateway.php:212 mercadopago/mercadopago-gateway.php:254
146
- msgid "Description shown to the client in the checkout."
147
- msgstr "Descripción mostrada al cliente en el checkout."
148
-
149
- #: mercadopago/mercadopago-custom-gateway.php:213 mercadopago/mercadopago-gateway.php:255 mercadopago/mercadopago-gateway.php:432
150
- msgid "Pay with Mercado Pago"
151
- msgstr "Pagar con Mercado Pago"
152
-
153
- #: mercadopago/mercadopago-custom-gateway.php:216
154
- msgid "Statement Descriptor"
155
- msgstr "Descripción de la Factura"
156
-
157
- #: mercadopago/mercadopago-custom-gateway.php:218
158
- msgid "The description that will be shown in your customer's invoice."
159
- msgstr "La descripción que se muestra en la factura de su cliente."
160
-
161
- #: mercadopago/mercadopago-custom-gateway.php:222
162
- msgid "Binary Mode"
163
- msgstr "Modo binario"
164
-
165
- #: mercadopago/mercadopago-custom-gateway.php:224
166
- msgid "Enable binary mode for checkout status"
167
- msgstr "Activar el modo binario para el estado del checkout"
168
-
169
- #: mercadopago/mercadopago-custom-gateway.php:226
170
- msgid "When charging a credit card, only [approved] or [reject] status will be taken."
171
- msgstr "Al cargar una tarjeta de crédito, sólo los estados [aprobado] o [rechazar] seran tomados."
172
-
173
- #: mercadopago/mercadopago-custom-gateway.php:229
174
- msgid "Ticket"
175
- msgstr "Ticket"
176
-
177
- #: mercadopago/mercadopago-custom-gateway.php:231
178
- msgid "Enable Ticket for Custom Checkout"
179
- msgstr "Habilitar Ticket para Checkout Custom"
180
-
181
- #: mercadopago/mercadopago-custom-gateway.php:233
182
- msgid "Let your customer pay you with tickets"
183
- msgstr "Deje que su cliente le paga con tickets"
184
-
185
- #: mercadopago/mercadopago-custom-gateway.php:236 mercadopago/mercadopago-gateway.php:258
186
- msgid "Store Category"
187
- msgstr "Categoría de la tienda"
188
-
189
- #: mercadopago/mercadopago-custom-gateway.php:238 mercadopago/mercadopago-gateway.php:260
190
- msgid "Define which type of products your store sells."
191
- msgstr "Defina el tipo de productos que su tienda vende."
192
-
193
- #: mercadopago/mercadopago-custom-gateway.php:242 mercadopago/mercadopago-gateway.php:264
194
- msgid "Store Identificator"
195
- msgstr "Identificador de la tienda"
196
-
197
- #: mercadopago/mercadopago-custom-gateway.php:244 mercadopago/mercadopago-gateway.php:266
198
- msgid "Please, inform a prefix to your store."
199
- msgstr "Por favor, informe un prefijo para su tienda."
200
-
201
- #: mercadopago/mercadopago-custom-gateway.php:244 mercadopago/mercadopago-gateway.php:266
202
- msgid ""
203
- "If you use your Mercado Pago account on multiple stores you should make sure that this prefix is unique as Mercado Pago will not allow orders with same "
204
- "identificators."
205
- msgstr ""
206
- "Si esta utilizando su cuenta Mercado Pago para múltiples tiendas, asegúrese que este prefijo sea único para no generar pedidos con el mismo identificador."
207
-
208
- #: mercadopago/mercadopago-custom-gateway.php:248 mercadopago/mercadopago-gateway.php:318
209
- msgid "Test and Debug Options"
210
- msgstr "Opciones de Prueba y Debug"
211
-
212
- #: mercadopago/mercadopago-custom-gateway.php:253 mercadopago/mercadopago-gateway.php:323
213
- msgid "Mercado Pago Sandbox"
214
- msgstr "Sandbox Mercado Pago"
215
-
216
- #: mercadopago/mercadopago-custom-gateway.php:255 mercadopago/mercadopago-gateway.php:325
217
- msgid "Enable Mercado Pago Sandbox"
218
- msgstr "Habilitar el sandbox de Mercado Pago"
219
-
220
- #: mercadopago/mercadopago-custom-gateway.php:257 mercadopago/mercadopago-gateway.php:327
221
- msgid "This option allows you to test payments inside a sandbox environment."
222
- msgstr "Esta opción permite simular un flujo de pagos completo en nuestro entorno Sandbox."
223
-
224
- #: mercadopago/mercadopago-custom-gateway.php:260 mercadopago/mercadopago-gateway.php:330
225
- msgid "Debug and Log"
226
- msgstr "Debug y Log"
227
-
228
- #: mercadopago/mercadopago-custom-gateway.php:262 mercadopago/mercadopago-gateway.php:332
229
- msgid "Enable log"
230
- msgstr "Habilitar Log"
231
-
232
- #: mercadopago/mercadopago-custom-gateway.php:264 mercadopago/mercadopago-gateway.php:334
233
- msgid "Register event logs of Mercado Pago, such as API requests, in the file"
234
- msgstr "Registrar logs de eventos de Mercado Pago, como llamadas a la API, dentro del archivo"
235
-
236
- #: mercadopago/mercadopago-custom-gateway.php:265 mercadopago/mercadopago-gateway.php:335
237
- msgid "File location: "
238
- msgstr "Local del archivo: "
239
-
240
- #: mercadopago/mercadopago-custom-gateway.php:281 mercadopago/mercadopago-gateway.php:351
241
- #, php-format
242
- msgid "Please, rate us %s on WordPress.org and give your feedback to help improve this module!"
243
- msgstr "Por favor, da tu evaluación con %s en WordPress.org y da su feedback para ayudar a mejorar este módulo!"
244
-
245
- #: mercadopago/mercadopago-custom-gateway.php:332
246
- msgid "Payment Method"
247
- msgstr "Métodos de Pago"
248
-
249
- #: mercadopago/mercadopago-custom-gateway.php:333
250
- msgid "Credit card number"
251
- msgstr "Número de tarjeta de crédito"
252
-
253
- #: mercadopago/mercadopago-custom-gateway.php:334
254
- msgid "Expiration month"
255
- msgstr "Mes de expiración"
256
-
257
- #: mercadopago/mercadopago-custom-gateway.php:335
258
- msgid "Expiration year"
259
- msgstr "Año de expiración"
260
-
261
- #: mercadopago/mercadopago-custom-gateway.php:336
262
- msgid "Year"
263
- msgstr "Año"
264
-
265
- #: mercadopago/mercadopago-custom-gateway.php:337
266
- msgid "Month"
267
- msgstr "Mes"
268
-
269
- #: mercadopago/mercadopago-custom-gateway.php:338
270
- msgid "Card holder name"
271
- msgstr "Nombre del titular de la tarjeta"
272
-
273
- #: mercadopago/mercadopago-custom-gateway.php:339
274
- msgid "Security code"
275
- msgstr "Código de seguridad"
276
-
277
- #: mercadopago/mercadopago-custom-gateway.php:340
278
- msgid "Document Type"
279
- msgstr "Tipo de Documento"
280
-
281
- #: mercadopago/mercadopago-custom-gateway.php:341
282
- msgid "Document number"
283
- msgstr "Número del Documento"
284
-
285
- #: mercadopago/mercadopago-custom-gateway.php:342
286
- msgid "Issuer"
287
- msgstr "Emisor"
288
-
289
- #: mercadopago/mercadopago-custom-gateway.php:343
290
- msgid "Installments"
291
- msgstr "Mensualidades"
292
-
293
- #: mercadopago/mercadopago-custom-gateway.php:347
294
- msgid "Parameter cardNumber can not be null/empty"
295
- msgstr "Parámetro [Numero de tarjeta] no puede ser nulo/vacío"
296
-
297
- #: mercadopago/mercadopago-custom-gateway.php:348
298
- msgid "Invalid Card Number"
299
- msgstr "Numero de tarjeta invalido"
300
-
301
- #: mercadopago/mercadopago-custom-gateway.php:350 mercadopago/mercadopago-custom-gateway.php:351 mercadopago/mercadopago-custom-gateway.php:352
302
- #: mercadopago/mercadopago-custom-gateway.php:353
303
- msgid "Invalid Expiration Date"
304
- msgstr "Fecha de vencimiento inválida"
305
-
306
- #: mercadopago/mercadopago-custom-gateway.php:355
307
- msgid "Parameter cardholderName can not be null/empty"
308
- msgstr "Parámetro [Nombre del titular] no puede ser nulo/vacío"
309
-
310
- #: mercadopago/mercadopago-custom-gateway.php:356
311
- msgid "Invalid Card Holder Name"
312
- msgstr "Nombre del titular de la tarjeta invalido"
313
-
314
- #: mercadopago/mercadopago-custom-gateway.php:358
315
- msgid "Parameter securityCode can not be null/empty"
316
- msgstr "Parámetro [Código de seguridad] no puede ser nulo/vacío"
317
-
318
- #: mercadopago/mercadopago-custom-gateway.php:359
319
- msgid "Invalid Security Code"
320
- msgstr "Código de seguridad invalido"
321
-
322
- #: mercadopago/mercadopago-custom-gateway.php:361
323
- msgid "Parameter docType can not be null/empty"
324
- msgstr "Parámetro [Tipo de Documento] no puede ser nulo/vacío"
325
-
326
- #: mercadopago/mercadopago-custom-gateway.php:362
327
- msgid "Invalid Document Type"
328
- msgstr "Tipo de Documento invalido"
329
-
330
- #: mercadopago/mercadopago-custom-gateway.php:364
331
- msgid "Parameter docNumber can not be null/empty"
332
- msgstr "Parámetro [Número del Documento] no puede ser nulo/vacío"
333
-
334
- #: mercadopago/mercadopago-custom-gateway.php:365
335
- msgid "Invalid Document Number"
336
- msgstr "Número del Documento invalido"
337
-
338
- #: mercadopago/mercadopago-custom-gateway.php:367
339
- msgid "The parameter cardholder.document.subtype can not be null or empty"
340
- msgstr "Parámetro [Subtipo del documento] no puede ser nulo/vacío"
341
-
342
- #: mercadopago/mercadopago-custom-gateway.php:368
343
- msgid "Invalid Document Sub Type"
344
- msgstr "Subtipo del documento invalido"
345
-
346
- #: mercadopago/mercadopago-custom-gateway.php:370
347
- msgid "Parameter cardIssuerId can not be null/empty"
348
- msgstr "Parámetro [Emisor] no puede ser nulo/vacío"
349
-
350
- #: mercadopago/mercadopago-custom-gateway.php:402 mercadopago/mercadopago-custom-gateway.php:943 mercadopago/mercadopago-gateway.php:869
351
- msgid "Payment approved."
352
- msgstr "Pago aprobado."
353
-
354
- #: mercadopago/mercadopago-custom-gateway.php:416 mercadopago/mercadopago-custom-gateway.php:805
355
- msgid "Your payment is under review. In less than 1h, you should be notified by email."
356
- msgstr "Su pago está en revisión. En menos de 1 hora, usted debe ser notificado por correo electrónico."
357
-
358
- #: mercadopago/mercadopago-custom-gateway.php:418
359
- msgid "Check your order resume"
360
- msgstr "Ver su hoja de pedido"
361
-
362
- #: mercadopago/mercadopago-custom-gateway.php:431
363
- msgid "Your payment was refused. You can try again."
364
- msgstr "Su pago fue rechazado. Puede intentarlo de nuevo."
365
-
366
- #: mercadopago/mercadopago-custom-gateway.php:435 mercadopago/mercadopago-custom-gateway.php:819 mercadopago/mercadopago-gateway.php:460
367
- msgid "Click to try again"
368
- msgstr "Haga clic para Inténtalo de nuevo"
369
-
370
- #: mercadopago/mercadopago-custom-gateway.php:455
371
- msgid "A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?"
372
- msgstr "Un problema se produjo al procesar su pago. Usted esta seguro de que ha rellenado correctamente toda la información en la forma de checkout?"
373
-
374
- #: mercadopago/mercadopago-custom-gateway.php:544
375
- msgid "Shipping"
376
- msgstr "Envío"
377
-
378
- #: mercadopago/mercadopago-custom-gateway.php:545
379
- msgid "Shipping service used by store"
380
- msgstr "Servicio de envío utilizado por el almacén"
381
-
382
- #: mercadopago/mercadopago-custom-gateway.php:721 mercadopago/mercadopago-gateway.php:649
383
- msgid "WooCommerce &gt; System Status &gt; Logs"
384
- msgstr "WooCommerce &gt; Estado del Sistema &gt; Logs"
385
-
386
- #: mercadopago/mercadopago-custom-gateway.php:766 mercadopago/mercadopago-custom-gateway.php:779 mercadopago/mercadopago-gateway.php:694
387
- #: mercadopago/mercadopago-gateway.php:705
388
- msgid "Mercado Pago is Inactive"
389
- msgstr "Mercado Pago Inactivo"
390
-
391
- #: mercadopago/mercadopago-custom-gateway.php:769
392
- msgid "Your Mercado Pago credentials Public Key/Access Token appears to be misconfigured."
393
- msgstr "Sus credenciales Client_id/Client_secret de Mercado Pago parecen no estar debidamente configuradas."
394
-
395
- #: mercadopago/mercadopago-custom-gateway.php:771 mercadopago/mercadopago-gateway.php:698
396
- msgid "Click here and configure!"
397
- msgstr "Haga click aquí y configure!"
398
-
399
- #: mercadopago/mercadopago-custom-gateway.php:782 mercadopago/mercadopago-gateway.php:708
400
- msgid "The currency"
401
- msgstr "La moneda"
402
-
403
- #: mercadopago/mercadopago-custom-gateway.php:783 mercadopago/mercadopago-gateway.php:708
404
- msgid "is not supported. Supported currencies are: ARS, BRL, CLP, COP, MXN, VEF."
405
- msgstr "no es soportada. Las monedas soportadas son: ARS, BRL, CLP, COP, MXN, VEF."
406
-
407
- #: mercadopago/mercadopago-custom-gateway.php:797
408
- msgid "Peru"
409
- msgstr "Peru"
410
-
411
- #: mercadopago/mercadopago-custom-gateway.php:809
412
- msgid "Click to check your order"
413
- msgstr "Haga clic para comprobar su pedido"
414
-
415
- #: mercadopago/mercadopago-custom-gateway.php:814 mercadopago/mercadopago-gateway.php:457
416
- msgid "An error occurred when proccessing your payment. Please try again or contact us for assistence."
417
- msgstr "Se ha producido un error en el procesamiento de su pago. Por favor, inténtelo de nuevo o póngase en contacto con nosotros para Asistencia."
418
-
419
- #: mercadopago/mercadopago-custom-gateway.php:816
420
- msgid "Reason is: "
421
- msgstr "La razón es:"
422
-
423
- #: mercadopago/mercadopago-custom-gateway.php:849 mercadopago/mercadopago-gateway.php:748
424
- msgid "Mercado Pago Request Failure"
425
- msgstr "La solicitud de Mercado Pago ha fallado."
426
-
427
- #: mercadopago/mercadopago-custom-gateway.php:918 mercadopago/mercadopago-gateway.php:822
428
- msgid "Payer email"
429
- msgstr "Email del comprador"
430
-
431
- #: mercadopago/mercadopago-custom-gateway.php:926 mercadopago/mercadopago-gateway.php:829
432
- msgid "Payment type"
433
- msgstr "Método de pago"
434
-
435
- #: mercadopago/mercadopago-custom-gateway.php:934 mercadopago/mercadopago-gateway.php:841
436
- msgid "Mercado Pago Payment ID"
437
- msgstr "ID de pago de Mercado Pago"
438
-
439
- #: mercadopago/mercadopago-custom-gateway.php:950 mercadopago/mercadopago-gateway.php:875
440
- msgid "Customer haven't paid yet."
441
- msgstr "El cliente todavía no efectuó el pago."
442
-
443
- #: mercadopago/mercadopago-custom-gateway.php:957 mercadopago/mercadopago-gateway.php:881
444
- msgid "Payment under review."
445
- msgstr "El pago está pendiente de revisión."
446
-
447
- #: mercadopago/mercadopago-custom-gateway.php:964 mercadopago/mercadopago-gateway.php:887
448
- msgid "The payment was refused. The customer can try again."
449
- msgstr "El pago fue rechazado. El cliente puede intentar nuevamente."
450
-
451
- #: mercadopago/mercadopago-custom-gateway.php:971 mercadopago/mercadopago-gateway.php:893
452
- msgid "The payment was refunded to the customer."
453
- msgstr "El pago fue devuelto al cliente."
454
-
455
- #: mercadopago/mercadopago-custom-gateway.php:978 mercadopago/mercadopago-gateway.php:899
456
- msgid "The payment was cancelled."
457
- msgstr "El pago fue cancelado."
458
-
459
- #: mercadopago/mercadopago-custom-gateway.php:984 mercadopago/mercadopago-custom-gateway.php:990 mercadopago/mercadopago-gateway.php:904
460
- #: mercadopago/mercadopago-gateway.php:909
461
- msgid "The payment is under mediation or it was charged-back."
462
- msgstr "El pago esta en mediación o la compra fue desconocida por el cliente."
463
-
464
- #: mercadopago/mercadopago-gateway.php:51
465
- msgid "Mercado Pago - Standard Checkout"
466
- msgstr "Mercado Pago - Checkout Estándar"
467
-
468
- #: mercadopago/mercadopago-gateway.php:148
469
- msgid "Select the payment methods that you <strong>don't</strong> want to receive with Mercado Pago."
470
- msgstr "Selecione los medios de pago que <strong>no</strong> desea aceptar con Mercado Pago."
471
-
472
- #: mercadopago/mercadopago-gateway.php:158 mercadopago/mercadopago-gateway.php:167
473
- msgid "Configure your Client_id and Client_secret to have access to more options."
474
- msgstr "Configure su Client_id y Client_secret para tener acceso a más opciones."
475
-
476
- #: mercadopago/mercadopago-gateway.php:184 mercadopago/mercadopago-gateway.php:192 mercadopago/mercadopago-gateway.php:202
477
- msgid "This field should be an integer."
478
- msgstr "Este campo debe ser un número."
479
-
480
- #: mercadopago/mercadopago-gateway.php:187
481
- msgid "If your integration method is iFrame, please inform the payment iFrame width."
482
- msgstr "Si su modo de apertura es iFrame, indique el ancho del iFrame."
483
-
484
- #: mercadopago/mercadopago-gateway.php:195
485
- msgid "If your integration method is iFrame, please inform the payment iFrame height."
486
- msgstr "Si su modo de apertura es iFrame, indique el alto del iFrame."
487
-
488
- #: mercadopago/mercadopago-gateway.php:205
489
- msgid "Select the max number of installments for your customers."
490
- msgstr "Seleccione el número máximo de mensualidades posibles para sus clientes."
491
-
492
- #: mercadopago/mercadopago-gateway.php:213
493
- msgid "Enable Standard Checkout"
494
- msgstr "Habilitar el Checkout Estándar"
495
-
496
- #: mercadopago/mercadopago-gateway.php:224
497
- msgid "Insert your Mercado Pago Client_id."
498
- msgstr "Inserte su Client_id de Mercado Pago."
499
-
500
- #: mercadopago/mercadopago-gateway.php:231
501
- msgid "Insert your Mercado Pago Client_secret."
502
- msgstr "Inserte su Client_secret de Mercado Pago."
503
-
504
- #: mercadopago/mercadopago-gateway.php:270
505
- msgid "Integration Method"
506
- msgstr "Método de integración"
507
-
508
- #: mercadopago/mercadopago-gateway.php:272
509
- msgid ""
510
- "Select how your clients should interact with Mercado Pago. Modal Window (inside your store), Redirect (Client is redirected to Mercado Pago), or iFrame (an "
511
- "internal window is embedded to the page layout)."
512
- msgstr ""
513
- "Seleccione la forma en que sus clientes deben interactuar con Mercado Pago. Ventana Modal (Dentro de su tienda), Redireccionamiento (El cliente es "
514
- "redireccionado a Mercado Pago), o iFrame (Ventana de pago incorporada a su página)."
515
-
516
- #: mercadopago/mercadopago-gateway.php:275
517
- msgid "iFrame"
518
- msgstr "iFrame"
519
-
520
- #: mercadopago/mercadopago-gateway.php:276
521
- msgid "Modal Window"
522
- msgstr "Ventana modal"
523
-
524
- #: mercadopago/mercadopago-gateway.php:277
525
- msgid "Redirect"
526
- msgstr "Redireccionamiento"
527
-
528
- #: mercadopago/mercadopago-gateway.php:281
529
- msgid "iFrame Width"
530
- msgstr "Ancho del iFrame"
531
-
532
- #: mercadopago/mercadopago-gateway.php:287
533
- msgid "iFrame Height"
534
- msgstr "Alto del iFrame"
535
-
536
- #: mercadopago/mercadopago-gateway.php:293
537
- msgid "Auto Return"
538
- msgstr "Redirección automática"
539
-
540
- #: mercadopago/mercadopago-gateway.php:295
541
- msgid "Automatic Return After Payment"
542
- msgstr "Redirección Automática Luego del Pago"
543
-
544
- #: mercadopago/mercadopago-gateway.php:297
545
- msgid "After the payment, client is automatically redirected."
546
- msgstr "Después del pago, el cliente será redireccionado automáticamente."
547
-
548
- #: mercadopago/mercadopago-gateway.php:300
549
- msgid "Payment Options"
550
- msgstr "Opciones de Pago"
551
-
552
- #: mercadopago/mercadopago-gateway.php:305
553
- msgid "Max installments"
554
- msgstr "Número máximo de mensualidades"
555
-
556
- #: mercadopago/mercadopago-gateway.php:311
557
- msgid "Exclude Payment Methods"
558
- msgstr "Excluir métodos de pago"
559
-
560
- #: mercadopago/mercadopago-gateway.php:428
561
- msgid "Thank you for your order. Please, proceed with your payment clicking in the bellow button."
562
- msgstr "Gracias por su compra. Por favor, prosiga a la página de pago haciendo click en el botón de abajo."
563
-
564
- #: mercadopago/mercadopago-gateway.php:436
565
- msgid "Cancel order &amp; Clear cart"
566
- msgstr "Cancelar &amp; Limpiar carrito"
567
-
568
- #: mercadopago/mercadopago-gateway.php:446
569
- msgid "Thank you for your order. Proceed with your payment completing the following information."
570
- msgstr "Gracias por su compra. Prosiga con su pago completando la información abajo."
571
-
572
- #: mercadopago/mercadopago-gateway.php:697
573
- msgid "Your Mercado Pago credentials Client_id/Client_secret appears to be misconfigured."
574
- msgstr "Sus credenciales Client_id/Client_secret de Mercado Pago parecen no estar debidamente configuradas."
575
-
576
- msgid " as it appears in your card ..."
577
- msgstr " tal como aparece en su tarjeta ..."
578
-
579
- msgid "Done, your payment was accredited!"
580
- msgstr "Listo, su pago ha sido aceptado!"
581
-
582
- msgid "We are processing the payment. In less than an hour we will e-mail you the results."
583
- msgstr "Estamos procesando su pago. En menos de una hora se le notificará por correo electrónico."
584
-
585
- msgid "We are processing the payment. In less than 2 business days we will tell you by e-mail whether it has accredited or we need more information."
586
- msgstr "Estamos procesando su pago. En menos de 2 días se le notificará por correo electrónico si se ha aprobado el pago o si se necesita información adicional."
587
-
588
- msgid "Check the card number."
589
- msgstr "Compruebe el número de tarjeta."
590
-
591
- msgid "Check the expiration date."
592
- msgstr "Compruebe la fecha de expiración."
593
-
594
- msgid "Check the information."
595
- msgstr "Compruebe la información informada."
596
-
597
- msgid "Check the security code."
598
- msgstr "Compruebe el código de seguridad informado."
599
-
600
- msgid "We could not process your payment."
601
- msgstr "No se puede procesar su pago."
602
-
603
- msgid "You must authorize the payment of your orders."
604
- msgstr "Usted debe autorizar pagos de sus órdenes."
605
-
606
- msgid "Call your card issuer to activate your card. The phone is on the back of your card."
607
- msgstr "Póngase en contacto con el emisor de su tarjeta para activarla. El teléfono se encuentra en la parte posterior de su tarjeta."
608
-
609
- msgid "You already made a payment for that amount. If you need to repay, use another card or other payment method."
610
- msgstr "Usted ya realizó el pago de esta cantidad. Si tiene que pagar de nuevo, utilizar otra tarjeta u otro método de pago."
611
-
612
- msgid "Your payment was rejected. Choose another payment method. We recommend cash."
613
- msgstr "Su pago fue rechazado. Por favor seleccione otro método de pago. Se recomienda dinero."
614
-
615
- msgid "Your payment do not have sufficient funds."
616
- msgstr "Su pago no tiene fondos suficientes."
617
-
618
- msgid "Your payment does not process payments with selected installments."
619
- msgstr "El pago no puede procesar la mensualidade seleccionada."
620
-
621
- msgid "You have reached the limit of allowed attempts. Choose another card or another payment method."
622
- msgstr "Has alcanzado el límite de intentos permitidos. Elija otra tarjeta u otro método de pago."
623
-
624
- msgid "This payment method did not process the payment."
625
- msgstr "Esta forma de pago no puede procesar su pago."
626
-
627
- msgid "Mercado Pago - Ticket"
628
- msgstr "Mercado Pago - Ticket"
629
-
630
- msgid "Mercado Pago - Credit Card"
631
- msgstr "Mercado Pago - Tarjeta de Crédito"
632
-
633
- msgid "Ticket Options"
634
- msgstr "Opciones de Ticket"
635
-
636
- msgid "Enable Ticket Payment Method"
637
- msgstr "Habilitar Pago con Ticket"
638
-
639
- msgid "Other Bank"
640
- msgstr "Otro Banco"
641
-
642
- msgid "Choose"
643
- msgstr "Escoger"
644
-
645
- msgid "A problem was occurred when processing your payment. Please, try again."
646
- msgstr "Un problema se produjo al procesar su pago. Por favor, inténtelo de nuevo."
647
-
648
- msgid "Thank you for your order. Please, pay the ticket to get your order approved."
649
- msgstr "Gracias por su orden. Por favor, pagar el ticket para tener su solicitud aprobada."
650
-
651
- msgid "Waiting for the ticket payment."
652
- msgstr "Esperando el pago del ticket."
653
-
654
- msgid "Print the Ticket"
655
- msgstr "Imprimir el ticket"
656
-
657
- msgid "To reprint the ticket click "
658
- msgstr "Para imprimir nuevamente el ticket hace clic "
659
-
660
- msgid "here"
661
- msgstr "aquí"
662
-
663
- msgid "Custom Checkout is Inactive"
664
- msgstr "Checkout Custom Inactivo"
665
-
666
- msgid "Standard Checkout is Inactive"
667
- msgstr "Checkout Estándar Inactivo"
668
-
669
- msgid "Ticket is Inactive"
670
- msgstr "Ticket Inactivo"
671
-
672
- msgid "Please, select the ticket issuer of your preference and then click "Place order" button. The ticket will be generated and you will be redirected to print it."
673
- msgstr "Por favor, seleccione el emisor de su elección y haga clic en el botón "PLACE ORDER". El ticket será generado y usted será redirigido a imprimirlo."
674
-
675
- msgid "Important: The order will be confirmed only after the payment approval."
676
- msgstr "Importante: La solicitud sólo será confirmada después de la aprobación del pago."
677
-
678
- msgid "Your Mercado Pago credential Access Token appears to be misconfigured."
679
- msgstr "Su credencial Access Token de Mercado de Pago parece estar desconfigurado."
680
-
681
- msgid "Your Card"
682
- msgstr "Sus Tarjetas"
683
-
684
- msgid "Other Cards"
685
- msgstr "Otras Tarjetas"
686
-
687
- msgid "Other Card"
688
- msgstr "Otra Tarjeta"
689
-
690
- msgid "ended in"
691
- msgstr "terminado en"
692
-
693
- msgid "Your site appears to not have SSL certification. SSL is a pre-requisite because the payment process is made in your server."
694
- msgstr "Su sitio parece no tener certificación SSL. SSL es un requisito previo porque la tramitación del pago se realiza en el servidor."
695
-
696
- msgid "<strong>ATTENTION: The currency"
697
- msgstr "<strong>ATENCIÓN: La moneda"
698
-
699
- msgid "defined in WooCommerce is different from the one used in your credentials country.<br>The currency for transactions in this payment method will be"
700
- msgstr "que se define en WooCommerce es diferente de la utilizada en el país de sus credenciales.<br>La moneda para las transacciones realizadas por este método de pago será"
701
-
702
- msgid "Currency conversions should be made outside this module.</strong><br><br>"
703
- msgstr "Conversiones de monedas se deben hacerse fuera de este módulo.</strong><br><br>"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
languages/woocommerce-mercadopago-module-es_PE.mo DELETED
Binary file
languages/woocommerce-mercadopago-module-es_PE.po DELETED
@@ -1,703 +0,0 @@
1
- # WordPress Blank Pot
2
- # Copyright (C) 2014 ...
3
- # This file is distributed under the GNU General Public License v2 or later.
4
- msgid ""
5
- msgstr ""
6
- "Project-Id-Version: WordPress Blank Pot v1.0.0\n"
7
- "POT-Creation-Date: 2016-05-23 14:52-0300\n"
8
- "PO-Revision-Date: \n"
9
- "Language-Team: Product Development <translations@example.com>\n"
10
- "Report-Msgid-Bugs-To: Translator Name <translations@example.com>\n"
11
- "MIME-Version: 1.0\n"
12
- "Content-Type: text/plain; charset=UTF-8\n"
13
- "Content-Transfer-Encoding: 8bit\n"
14
- "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
- "X-Textdomain-Support: yesX-Generator: Poedit 1.6.4\n"
16
- "X-Poedit-SourceCharset: UTF-8\n"
17
- "X-Poedit-KeywordsList: __;_e;esc_html_e;esc_html_x:1,2c;esc_html__;esc_attr_e;esc_attr_x:1,2c;esc_attr__;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_x:1,2c;_n:1,2;"
18
- "_n_noop:1,2;__ngettext:1,2;__ngettext_noop:1,2;_c,_nc:4c,1,2\n"
19
- "X-Poedit-Basepath: ../Documents/woocommerce (MAMP)/wp-content/plugins/woo-mercado-pago-module\n"
20
- "X-Generator: Poedit 1.8.7\n"
21
- "Last-Translator: \n"
22
- "Language: es_PE\n"
23
- "X-Poedit-SearchPath-0: .\n"
24
-
25
- #. Description of the plugin/theme
26
- msgid "This is the <strong>oficial</strong> module of Mercado Pago for WooCommerce plugin. This module enables WooCommerce to use Mercado Pago as a payment Gateway for purchases made in your e-commerce store."
27
- msgstr "Este es el módulo <strong>oficial</strong> de Mercado Pago para el plugin WooCommerce. Este módulo habilita el uso de Mercado Pago en WooCommerce como método de pago para compras realizadas en su tienda virtual."
28
-
29
- #: mercadopago-module.php:69
30
- #, php-format
31
- msgid "Woo Mercado Pago Module depends on the last version of %s to execute!"
32
- msgstr "Woo Mercado Pago Module depende de la última versión de %s para ejecutarse!"
33
-
34
- #: mercadopago-module.php:109
35
- msgid "Standard Checkout"
36
- msgstr "Checkout Estándar"
37
-
38
- #: mercadopago-module.php:113
39
- msgid "Custom Checkout"
40
- msgstr "Checkout Custom"
41
-
42
- #: mercadopago/mercadopago-custom-gateway.php:48
43
- msgid "Mercado Pago - Custom Checkout"
44
- msgstr "Mercado Pago - Checkout Custom"
45
-
46
- #: mercadopago/mercadopago-custom-gateway.php:51 mercadopago/mercadopago-gateway.php:54
47
- msgid "This module enables WooCommerce to use Mercado Pago as payment method for purchases made in your virtual store."
48
- msgstr "Este módulo habilita el uso de Mercado Pago en WooCommerce como método de pago para compras realizadas en su tienda virtual."
49
-
50
- #: mercadopago/mercadopago-custom-gateway.php:126 mercadopago/mercadopago-custom-gateway.php:791 mercadopago/mercadopago-gateway.php:125
51
- #: mercadopago/mercadopago-gateway.php:716
52
- msgid "Argentine"
53
- msgstr "Argentina"
54
-
55
- #: mercadopago/mercadopago-custom-gateway.php:127 mercadopago/mercadopago-custom-gateway.php:792 mercadopago/mercadopago-gateway.php:126
56
- #: mercadopago/mercadopago-gateway.php:717
57
- msgid "Brazil"
58
- msgstr "Brasil"
59
-
60
- #: mercadopago/mercadopago-custom-gateway.php:128 mercadopago/mercadopago-custom-gateway.php:794 mercadopago/mercadopago-gateway.php:127
61
- #: mercadopago/mercadopago-gateway.php:719
62
- msgid "Chile"
63
- msgstr "Chile"
64
-
65
- #: mercadopago/mercadopago-custom-gateway.php:129 mercadopago/mercadopago-custom-gateway.php:793 mercadopago/mercadopago-gateway.php:128
66
- #: mercadopago/mercadopago-gateway.php:718
67
- msgid "Colombia"
68
- msgstr "Colombia"
69
-
70
- #: mercadopago/mercadopago-custom-gateway.php:130 mercadopago/mercadopago-custom-gateway.php:795 mercadopago/mercadopago-gateway.php:129
71
- #: mercadopago/mercadopago-gateway.php:720
72
- msgid "Mexico"
73
- msgstr "México"
74
-
75
- #: mercadopago/mercadopago-custom-gateway.php:132 mercadopago/mercadopago-gateway.php:130
76
- msgid "or"
77
- msgstr "o"
78
-
79
- #: mercadopago/mercadopago-custom-gateway.php:133 mercadopago/mercadopago-custom-gateway.php:796 mercadopago/mercadopago-gateway.php:131
80
- #: mercadopago/mercadopago-gateway.php:721
81
- msgid "Venezuela"
82
- msgstr "Venezuela"
83
-
84
- #: mercadopago/mercadopago-custom-gateway.php:145 mercadopago/mercadopago-gateway.php:151
85
- msgid "Your credentials are <strong>valid</strong> for"
86
- msgstr "Sus credenciales <strong>son válidas</strong> para"
87
-
88
- #: mercadopago/mercadopago-custom-gateway.php:151 mercadopago/mercadopago-custom-gateway.php:156 mercadopago/mercadopago-gateway.php:161
89
- #: mercadopago/mercadopago-gateway.php:170
90
- msgid "Your credentials are <strong>not valid</strong>!"
91
- msgstr "Sus credenciales <strong>no son válidas</strong>!"
92
-
93
- #: mercadopago/mercadopago-custom-gateway.php:169 mercadopago/mercadopago-gateway.php:211
94
- msgid "Enable/Disable"
95
- msgstr "Habilitar/Deshabilitar"
96
-
97
- #: mercadopago/mercadopago-custom-gateway.php:171
98
- msgid "Enable Custom Checkout"
99
- msgstr "Habilitar Checkout Custom"
100
-
101
- #: mercadopago/mercadopago-custom-gateway.php:175 mercadopago/mercadopago-gateway.php:217
102
- msgid "Mercado Pago Credentials"
103
- msgstr "Credenciales de Mercado Pago"
104
-
105
- #: mercadopago/mercadopago-custom-gateway.php:177 mercadopago/mercadopago-gateway.php:219
106
- msgid "You can obtain your credentials for"
107
- msgstr "Puedes obtener tus credenciales para"
108
-
109
- #: mercadopago/mercadopago-custom-gateway.php:182
110
- msgid "Insert your Mercado Pago Public key."
111
- msgstr "Inserte su Public Key de Mercado Pago."
112
-
113
- #: mercadopago/mercadopago-custom-gateway.php:189
114
- msgid "Insert your Mercado Pago Access token."
115
- msgstr "Inserte su Access Token de Mercado Pago."
116
-
117
- #: mercadopago/mercadopago-custom-gateway.php:194 mercadopago/mercadopago-gateway.php:236
118
- msgid "Instant Payment Notification (IPN) URL"
119
- msgstr "URL da Notificación Instantanea de Pago (IPN)"
120
-
121
- #: mercadopago/mercadopago-custom-gateway.php:196 mercadopago/mercadopago-gateway.php:238
122
- msgid "Your IPN URL to receive instant payment notifications is"
123
- msgstr "Su URL de IPN para recibir notificaciones instantáneas de pago es"
124
-
125
- #: mercadopago/mercadopago-custom-gateway.php:199 mercadopago/mercadopago-gateway.php:241
126
- msgid "Checkout Options"
127
- msgstr "Opciones de Checkout"
128
-
129
- #: mercadopago/mercadopago-custom-gateway.php:204 mercadopago/mercadopago-gateway.php:246
130
- msgid "Title"
131
- msgstr "Título"
132
-
133
- #: mercadopago/mercadopago-custom-gateway.php:206 mercadopago/mercadopago-gateway.php:248
134
- msgid "Title shown to the client in the checkout."
135
- msgstr "Título mostrado al cliente en el checkout."
136
-
137
- #: mercadopago/mercadopago-custom-gateway.php:207 mercadopago/mercadopago-custom-gateway.php:219 mercadopago/mercadopago-gateway.php:249
138
- msgid "Mercado Pago"
139
- msgstr "Mercado Pago"
140
-
141
- #: mercadopago/mercadopago-custom-gateway.php:210 mercadopago/mercadopago-gateway.php:252
142
- msgid "Description"
143
- msgstr "Descripción"
144
-
145
- #: mercadopago/mercadopago-custom-gateway.php:212 mercadopago/mercadopago-gateway.php:254
146
- msgid "Description shown to the client in the checkout."
147
- msgstr "Descripción mostrada al cliente en el checkout."
148
-
149
- #: mercadopago/mercadopago-custom-gateway.php:213 mercadopago/mercadopago-gateway.php:255 mercadopago/mercadopago-gateway.php:432
150
- msgid "Pay with Mercado Pago"
151
- msgstr "Pagar con Mercado Pago"
152
-
153
- #: mercadopago/mercadopago-custom-gateway.php:216
154
- msgid "Statement Descriptor"
155
- msgstr "Descripción de la Factura"
156
-
157
- #: mercadopago/mercadopago-custom-gateway.php:218
158
- msgid "The description that will be shown in your customer's invoice."
159
- msgstr "La descripción que se muestra en la factura de su cliente."
160
-
161
- #: mercadopago/mercadopago-custom-gateway.php:222
162
- msgid "Binary Mode"
163
- msgstr "Modo binario"
164
-
165
- #: mercadopago/mercadopago-custom-gateway.php:224
166
- msgid "Enable binary mode for checkout status"
167
- msgstr "Activar el modo binario para el estado del checkout"
168
-
169
- #: mercadopago/mercadopago-custom-gateway.php:226
170
- msgid "When charging a credit card, only [approved] or [reject] status will be taken."
171
- msgstr "Al cargar una tarjeta de crédito, sólo los estados [aprobado] o [rechazar] seran tomados."
172
-
173
- #: mercadopago/mercadopago-custom-gateway.php:229
174
- msgid "Ticket"
175
- msgstr "Ticket"
176
-
177
- #: mercadopago/mercadopago-custom-gateway.php:231
178
- msgid "Enable Ticket for Custom Checkout"
179
- msgstr "Habilitar Ticket para Checkout Custom"
180
-
181
- #: mercadopago/mercadopago-custom-gateway.php:233
182
- msgid "Let your customer pay you with tickets"
183
- msgstr "Deje que su cliente le paga con tickets"
184
-
185
- #: mercadopago/mercadopago-custom-gateway.php:236 mercadopago/mercadopago-gateway.php:258
186
- msgid "Store Category"
187
- msgstr "Categoría de la tienda"
188
-
189
- #: mercadopago/mercadopago-custom-gateway.php:238 mercadopago/mercadopago-gateway.php:260
190
- msgid "Define which type of products your store sells."
191
- msgstr "Defina el tipo de productos que su tienda vende."
192
-
193
- #: mercadopago/mercadopago-custom-gateway.php:242 mercadopago/mercadopago-gateway.php:264
194
- msgid "Store Identificator"
195
- msgstr "Identificador de la tienda"
196
-
197
- #: mercadopago/mercadopago-custom-gateway.php:244 mercadopago/mercadopago-gateway.php:266
198
- msgid "Please, inform a prefix to your store."
199
- msgstr "Por favor, informe un prefijo para su tienda."
200
-
201
- #: mercadopago/mercadopago-custom-gateway.php:244 mercadopago/mercadopago-gateway.php:266
202
- msgid ""
203
- "If you use your Mercado Pago account on multiple stores you should make sure that this prefix is unique as Mercado Pago will not allow orders with same "
204
- "identificators."
205
- msgstr ""
206
- "Si esta utilizando su cuenta Mercado Pago para múltiples tiendas, asegúrese que este prefijo sea único para no generar pedidos con el mismo identificador."
207
-
208
- #: mercadopago/mercadopago-custom-gateway.php:248 mercadopago/mercadopago-gateway.php:318
209
- msgid "Test and Debug Options"
210
- msgstr "Opciones de Prueba y Debug"
211
-
212
- #: mercadopago/mercadopago-custom-gateway.php:253 mercadopago/mercadopago-gateway.php:323
213
- msgid "Mercado Pago Sandbox"
214
- msgstr "Sandbox Mercado Pago"
215
-
216
- #: mercadopago/mercadopago-custom-gateway.php:255 mercadopago/mercadopago-gateway.php:325
217
- msgid "Enable Mercado Pago Sandbox"
218
- msgstr "Habilitar el sandbox de Mercado Pago"
219
-
220
- #: mercadopago/mercadopago-custom-gateway.php:257 mercadopago/mercadopago-gateway.php:327
221
- msgid "This option allows you to test payments inside a sandbox environment."
222
- msgstr "Esta opción permite simular un flujo de pagos completo en nuestro entorno Sandbox."
223
-
224
- #: mercadopago/mercadopago-custom-gateway.php:260 mercadopago/mercadopago-gateway.php:330
225
- msgid "Debug and Log"
226
- msgstr "Debug y Log"
227
-
228
- #: mercadopago/mercadopago-custom-gateway.php:262 mercadopago/mercadopago-gateway.php:332
229
- msgid "Enable log"
230
- msgstr "Habilitar Log"
231
-
232
- #: mercadopago/mercadopago-custom-gateway.php:264 mercadopago/mercadopago-gateway.php:334
233
- msgid "Register event logs of Mercado Pago, such as API requests, in the file"
234
- msgstr "Registrar logs de eventos de Mercado Pago, como llamadas a la API, dentro del archivo"
235
-
236
- #: mercadopago/mercadopago-custom-gateway.php:265 mercadopago/mercadopago-gateway.php:335
237
- msgid "File location: "
238
- msgstr "Local del archivo: "
239
-
240
- #: mercadopago/mercadopago-custom-gateway.php:281 mercadopago/mercadopago-gateway.php:351
241
- #, php-format
242
- msgid "Please, rate us %s on WordPress.org and give your feedback to help improve this module!"
243
- msgstr "Por favor, da tu evaluación con %s en WordPress.org y da su feedback para ayudar a mejorar este módulo!"
244
-
245
- #: mercadopago/mercadopago-custom-gateway.php:332
246
- msgid "Payment Method"
247
- msgstr "Métodos de Pago"
248
-
249
- #: mercadopago/mercadopago-custom-gateway.php:333
250
- msgid "Credit card number"
251
- msgstr "Número de tarjeta de crédito"
252
-
253
- #: mercadopago/mercadopago-custom-gateway.php:334
254
- msgid "Expiration month"
255
- msgstr "Mes de expiración"
256
-
257
- #: mercadopago/mercadopago-custom-gateway.php:335
258
- msgid "Expiration year"
259
- msgstr "Año de expiración"
260
-
261
- #: mercadopago/mercadopago-custom-gateway.php:336
262
- msgid "Year"
263
- msgstr "Año"
264
-
265
- #: mercadopago/mercadopago-custom-gateway.php:337
266
- msgid "Month"
267
- msgstr "Mes"
268
-
269
- #: mercadopago/mercadopago-custom-gateway.php:338
270
- msgid "Card holder name"
271
- msgstr "Nombre del titular de la tarjeta"
272
-
273
- #: mercadopago/mercadopago-custom-gateway.php:339
274
- msgid "Security code"
275
- msgstr "Código de seguridad"
276
-
277
- #: mercadopago/mercadopago-custom-gateway.php:340
278
- msgid "Document Type"
279
- msgstr "Tipo de Documento"
280
-
281
- #: mercadopago/mercadopago-custom-gateway.php:341
282
- msgid "Document number"
283
- msgstr "Número del Documento"
284
-
285
- #: mercadopago/mercadopago-custom-gateway.php:342
286
- msgid "Issuer"
287
- msgstr "Emisor"
288
-
289
- #: mercadopago/mercadopago-custom-gateway.php:343
290
- msgid "Installments"
291
- msgstr "Cuotas"
292
-
293
- #: mercadopago/mercadopago-custom-gateway.php:347
294
- msgid "Parameter cardNumber can not be null/empty"
295
- msgstr "Parámetro [Numero de tarjeta] no puede ser nulo/vacío"
296
-
297
- #: mercadopago/mercadopago-custom-gateway.php:348
298
- msgid "Invalid Card Number"
299
- msgstr "Numero de tarjeta invalido"
300
-
301
- #: mercadopago/mercadopago-custom-gateway.php:350 mercadopago/mercadopago-custom-gateway.php:351 mercadopago/mercadopago-custom-gateway.php:352
302
- #: mercadopago/mercadopago-custom-gateway.php:353
303
- msgid "Invalid Expiration Date"
304
- msgstr "Fecha de vencimiento inválida"
305
-
306
- #: mercadopago/mercadopago-custom-gateway.php:355
307
- msgid "Parameter cardholderName can not be null/empty"
308
- msgstr "Parámetro [Nombre del titular] no puede ser nulo/vacío"
309
-
310
- #: mercadopago/mercadopago-custom-gateway.php:356
311
- msgid "Invalid Card Holder Name"
312
- msgstr "Nombre del titular de la tarjeta invalido"
313
-
314
- #: mercadopago/mercadopago-custom-gateway.php:358
315
- msgid "Parameter securityCode can not be null/empty"
316
- msgstr "Parámetro [Código de seguridad] no puede ser nulo/vacío"
317
-
318
- #: mercadopago/mercadopago-custom-gateway.php:359
319
- msgid "Invalid Security Code"
320
- msgstr "Código de seguridad invalido"
321
-
322
- #: mercadopago/mercadopago-custom-gateway.php:361
323
- msgid "Parameter docType can not be null/empty"
324
- msgstr "Parámetro [Tipo de Documento] no puede ser nulo/vacío"
325
-
326
- #: mercadopago/mercadopago-custom-gateway.php:362
327
- msgid "Invalid Document Type"
328
- msgstr "Tipo de Documento invalido"
329
-
330
- #: mercadopago/mercadopago-custom-gateway.php:364
331
- msgid "Parameter docNumber can not be null/empty"
332
- msgstr "Parámetro [Número del Documento] no puede ser nulo/vacío"
333
-
334
- #: mercadopago/mercadopago-custom-gateway.php:365
335
- msgid "Invalid Document Number"
336
- msgstr "Número del Documento invalido"
337
-
338
- #: mercadopago/mercadopago-custom-gateway.php:367
339
- msgid "The parameter cardholder.document.subtype can not be null or empty"
340
- msgstr "Parámetro [Subtipo del documento] no puede ser nulo/vacío"
341
-
342
- #: mercadopago/mercadopago-custom-gateway.php:368
343
- msgid "Invalid Document Sub Type"
344
- msgstr "Subtipo del documento invalido"
345
-
346
- #: mercadopago/mercadopago-custom-gateway.php:370
347
- msgid "Parameter cardIssuerId can not be null/empty"
348
- msgstr "Parámetro [Emisor] no puede ser nulo/vacío"
349
-
350
- #: mercadopago/mercadopago-custom-gateway.php:402 mercadopago/mercadopago-custom-gateway.php:943 mercadopago/mercadopago-gateway.php:869
351
- msgid "Payment approved."
352
- msgstr "Pago aprobado."
353
-
354
- #: mercadopago/mercadopago-custom-gateway.php:416 mercadopago/mercadopago-custom-gateway.php:805
355
- msgid "Your payment is under review. In less than 1h, you should be notified by email."
356
- msgstr "Su pago está en revisión. En menos de 1 hora, usted debe ser notificado por correo electrónico."
357
-
358
- #: mercadopago/mercadopago-custom-gateway.php:418
359
- msgid "Check your order resume"
360
- msgstr "Ver su hoja de pedido"
361
-
362
- #: mercadopago/mercadopago-custom-gateway.php:431
363
- msgid "Your payment was refused. You can try again."
364
- msgstr "Su pago fue rechazado. Puede intentarlo de nuevo."
365
-
366
- #: mercadopago/mercadopago-custom-gateway.php:435 mercadopago/mercadopago-custom-gateway.php:819 mercadopago/mercadopago-gateway.php:460
367
- msgid "Click to try again"
368
- msgstr "Haga clic para Inténtalo de nuevo"
369
-
370
- #: mercadopago/mercadopago-custom-gateway.php:455
371
- msgid "A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?"
372
- msgstr "Un problema se produjo al procesar su pago. Usted esta seguro de que ha rellenado correctamente toda la información en la forma de checkout?"
373
-
374
- #: mercadopago/mercadopago-custom-gateway.php:544
375
- msgid "Shipping"
376
- msgstr "Envío"
377
-
378
- #: mercadopago/mercadopago-custom-gateway.php:545
379
- msgid "Shipping service used by store"
380
- msgstr "Servicio de envío utilizado por el almacén"
381
-
382
- #: mercadopago/mercadopago-custom-gateway.php:721 mercadopago/mercadopago-gateway.php:649
383
- msgid "WooCommerce &gt; System Status &gt; Logs"
384
- msgstr "WooCommerce &gt; Estado del Sistema &gt; Logs"
385
-
386
- #: mercadopago/mercadopago-custom-gateway.php:766 mercadopago/mercadopago-custom-gateway.php:779 mercadopago/mercadopago-gateway.php:694
387
- #: mercadopago/mercadopago-gateway.php:705
388
- msgid "Mercado Pago is Inactive"
389
- msgstr "Mercado Pago Inactivo"
390
-
391
- #: mercadopago/mercadopago-custom-gateway.php:769
392
- msgid "Your Mercado Pago credentials Public Key/Access Token appears to be misconfigured."
393
- msgstr "Sus credenciales Client_id/Client_secret de Mercado Pago parecen no estar debidamente configuradas."
394
-
395
- #: mercadopago/mercadopago-custom-gateway.php:771 mercadopago/mercadopago-gateway.php:698
396
- msgid "Click here and configure!"
397
- msgstr "Haga click aquí y configure!"
398
-
399
- #: mercadopago/mercadopago-custom-gateway.php:782 mercadopago/mercadopago-gateway.php:708
400
- msgid "The currency"
401
- msgstr "La moneda"
402
-
403
- #: mercadopago/mercadopago-custom-gateway.php:783 mercadopago/mercadopago-gateway.php:708
404
- msgid "is not supported. Supported currencies are: ARS, BRL, CLP, COP, MXN, VEF."
405
- msgstr "no es soportada. Las monedas soportadas son: ARS, BRL, CLP, COP, MXN, VEF."
406
-
407
- #: mercadopago/mercadopago-custom-gateway.php:797
408
- msgid "Peru"
409
- msgstr "Peru"
410
-
411
- #: mercadopago/mercadopago-custom-gateway.php:809
412
- msgid "Click to check your order"
413
- msgstr "Haga clic para comprobar su pedido"
414
-
415
- #: mercadopago/mercadopago-custom-gateway.php:814 mercadopago/mercadopago-gateway.php:457
416
- msgid "An error occurred when proccessing your payment. Please try again or contact us for assistence."
417
- msgstr "Se ha producido un error en el procesamiento de su pago. Por favor, inténtelo de nuevo o póngase en contacto con nosotros para Asistencia."
418
-
419
- #: mercadopago/mercadopago-custom-gateway.php:816
420
- msgid "Reason is: "
421
- msgstr "La razón es:"
422
-
423
- #: mercadopago/mercadopago-custom-gateway.php:849 mercadopago/mercadopago-gateway.php:748
424
- msgid "Mercado Pago Request Failure"
425
- msgstr "La solicitud de Mercado Pago ha fallado."
426
-
427
- #: mercadopago/mercadopago-custom-gateway.php:918 mercadopago/mercadopago-gateway.php:822
428
- msgid "Payer email"
429
- msgstr "Email del comprador"
430
-
431
- #: mercadopago/mercadopago-custom-gateway.php:926 mercadopago/mercadopago-gateway.php:829
432
- msgid "Payment type"
433
- msgstr "Método de pago"
434
-
435
- #: mercadopago/mercadopago-custom-gateway.php:934 mercadopago/mercadopago-gateway.php:841
436
- msgid "Mercado Pago Payment ID"
437
- msgstr "ID de pago de Mercado Pago"
438
-
439
- #: mercadopago/mercadopago-custom-gateway.php:950 mercadopago/mercadopago-gateway.php:875
440
- msgid "Customer haven't paid yet."
441
- msgstr "El cliente todavía no efectuó el pago."
442
-
443
- #: mercadopago/mercadopago-custom-gateway.php:957 mercadopago/mercadopago-gateway.php:881
444
- msgid "Payment under review."
445
- msgstr "El pago está pendiente de revisión."
446
-
447
- #: mercadopago/mercadopago-custom-gateway.php:964 mercadopago/mercadopago-gateway.php:887
448
- msgid "The payment was refused. The customer can try again."
449
- msgstr "El pago fue rechazado. El cliente puede intentar nuevamente."
450
-
451
- #: mercadopago/mercadopago-custom-gateway.php:971 mercadopago/mercadopago-gateway.php:893
452
- msgid "The payment was refunded to the customer."
453
- msgstr "El pago fue devuelto al cliente."
454
-
455
- #: mercadopago/mercadopago-custom-gateway.php:978 mercadopago/mercadopago-gateway.php:899
456
- msgid "The payment was cancelled."
457
- msgstr "El pago fue cancelado."
458
-
459
- #: mercadopago/mercadopago-custom-gateway.php:984 mercadopago/mercadopago-custom-gateway.php:990 mercadopago/mercadopago-gateway.php:904
460
- #: mercadopago/mercadopago-gateway.php:909
461
- msgid "The payment is under mediation or it was charged-back."
462
- msgstr "El pago esta en mediación o la compra fue desconocida por el cliente."
463
-
464
- #: mercadopago/mercadopago-gateway.php:51
465
- msgid "Mercado Pago - Standard Checkout"
466
- msgstr "Mercado Pago - Checkout Estándar"
467
-
468
- #: mercadopago/mercadopago-gateway.php:148
469
- msgid "Select the payment methods that you <strong>don't</strong> want to receive with Mercado Pago."
470
- msgstr "Selecione los medios de pago que <strong>no</strong> desea aceptar con Mercado Pago."
471
-
472
- #: mercadopago/mercadopago-gateway.php:158 mercadopago/mercadopago-gateway.php:167
473
- msgid "Configure your Client_id and Client_secret to have access to more options."
474
- msgstr "Configure su Client_id y Client_secret para tener acceso a más opciones."
475
-
476
- #: mercadopago/mercadopago-gateway.php:184 mercadopago/mercadopago-gateway.php:192 mercadopago/mercadopago-gateway.php:202
477
- msgid "This field should be an integer."
478
- msgstr "Este campo debe ser un número."
479
-
480
- #: mercadopago/mercadopago-gateway.php:187
481
- msgid "If your integration method is iFrame, please inform the payment iFrame width."
482
- msgstr "Si su modo de apertura es iFrame, indique el ancho del iFrame."
483
-
484
- #: mercadopago/mercadopago-gateway.php:195
485
- msgid "If your integration method is iFrame, please inform the payment iFrame height."
486
- msgstr "Si su modo de apertura es iFrame, indique el alto del iFrame."
487
-
488
- #: mercadopago/mercadopago-gateway.php:205
489
- msgid "Select the max number of installments for your customers."
490
- msgstr "Seleccione el número máximo de cuotas posibles para sus clientes."
491
-
492
- #: mercadopago/mercadopago-gateway.php:213
493
- msgid "Enable Standard Checkout"
494
- msgstr "Habilitar el Checkout Estándar"
495
-
496
- #: mercadopago/mercadopago-gateway.php:224
497
- msgid "Insert your Mercado Pago Client_id."
498
- msgstr "Inserte su Client_id de Mercado Pago."
499
-
500
- #: mercadopago/mercadopago-gateway.php:231
501
- msgid "Insert your Mercado Pago Client_secret."
502
- msgstr "Inserte su Client_secret de Mercado Pago."
503
-
504
- #: mercadopago/mercadopago-gateway.php:270
505
- msgid "Integration Method"
506
- msgstr "Método de integración"
507
-
508
- #: mercadopago/mercadopago-gateway.php:272
509
- msgid ""
510
- "Select how your clients should interact with Mercado Pago. Modal Window (inside your store), Redirect (Client is redirected to Mercado Pago), or iFrame (an "
511
- "internal window is embedded to the page layout)."
512
- msgstr ""
513
- "Seleccione la forma en que sus clientes deben interactuar con Mercado Pago. Ventana Modal (Dentro de su tienda), Redireccionamiento (El cliente es "
514
- "redireccionado a Mercado Pago), o iFrame (Ventana de pago incorporada a su página)."
515
-
516
- #: mercadopago/mercadopago-gateway.php:275
517
- msgid "iFrame"
518
- msgstr "iFrame"
519
-
520
- #: mercadopago/mercadopago-gateway.php:276
521
- msgid "Modal Window"
522
- msgstr "Ventana modal"
523
-
524
- #: mercadopago/mercadopago-gateway.php:277
525
- msgid "Redirect"
526
- msgstr "Redireccionamiento"
527
-
528
- #: mercadopago/mercadopago-gateway.php:281
529
- msgid "iFrame Width"
530
- msgstr "Ancho del iFrame"
531
-
532
- #: mercadopago/mercadopago-gateway.php:287
533
- msgid "iFrame Height"
534
- msgstr "Alto del iFrame"
535
-
536
- #: mercadopago/mercadopago-gateway.php:293
537
- msgid "Auto Return"
538
- msgstr "Redirección automática"
539
-
540
- #: mercadopago/mercadopago-gateway.php:295
541
- msgid "Automatic Return After Payment"
542
- msgstr "Redirección Automática Luego del Pago"
543
-
544
- #: mercadopago/mercadopago-gateway.php:297
545
- msgid "After the payment, client is automatically redirected."
546
- msgstr "Después del pago, el cliente será redireccionado automáticamente."
547
-
548
- #: mercadopago/mercadopago-gateway.php:300
549
- msgid "Payment Options"
550
- msgstr "Opciones de Pago"
551
-
552
- #: mercadopago/mercadopago-gateway.php:305
553
- msgid "Max installments"
554
- msgstr "Número máximo de cuotas"
555
-
556
- #: mercadopago/mercadopago-gateway.php:311
557
- msgid "Exclude Payment Methods"
558
- msgstr "Excluir métodos de pago"
559
-
560
- #: mercadopago/mercadopago-gateway.php:428
561
- msgid "Thank you for your order. Please, proceed with your payment clicking in the bellow button."
562
- msgstr "Gracias por su compra. Por favor, prosiga a la página de pago haciendo click en el botón de abajo."
563
-
564
- #: mercadopago/mercadopago-gateway.php:436
565
- msgid "Cancel order &amp; Clear cart"
566
- msgstr "Cancelar &amp; Limpiar carrito"
567
-
568
- #: mercadopago/mercadopago-gateway.php:446
569
- msgid "Thank you for your order. Proceed with your payment completing the following information."
570
- msgstr "Gracias por su compra. Prosiga con su pago completando la información abajo."
571
-
572
- #: mercadopago/mercadopago-gateway.php:697
573
- msgid "Your Mercado Pago credentials Client_id/Client_secret appears to be misconfigured."
574
- msgstr "Sus credenciales Client_id/Client_secret de Mercado Pago parecen no estar debidamente configuradas."
575
-
576
- msgid " as it appears in your card ..."
577
- msgstr " tal como aparece en su tarjeta ..."
578
-
579
- msgid "Done, your payment was accredited!"
580
- msgstr "Listo, su pago ha sido aceptado!"
581
-
582
- msgid "We are processing the payment. In less than an hour we will e-mail you the results."
583
- msgstr "Estamos procesando su pago. En menos de una hora se le notificará por correo electrónico."
584
-
585
- msgid "We are processing the payment. In less than 2 business days we will tell you by e-mail whether it has accredited or we need more information."
586
- msgstr "Estamos procesando su pago. En menos de 2 días se le notificará por correo electrónico si se ha aprobado el pago o si se necesita información adicional."
587
-
588
- msgid "Check the card number."
589
- msgstr "Compruebe el número de tarjeta."
590
-
591
- msgid "Check the expiration date."
592
- msgstr "Compruebe la fecha de expiración."
593
-
594
- msgid "Check the information."
595
- msgstr "Compruebe la información informada."
596
-
597
- msgid "Check the security code."
598
- msgstr "Compruebe el código de seguridad informado."
599
-
600
- msgid "We could not process your payment."
601
- msgstr "No se puede procesar su pago."
602
-
603
- msgid "You must authorize the payment of your orders."
604
- msgstr "Usted debe autorizar pagos de sus órdenes."
605
-
606
- msgid "Call your card issuer to activate your card. The phone is on the back of your card."
607
- msgstr "Póngase en contacto con el emisor de su tarjeta para activarla. El teléfono se encuentra en la parte posterior de su tarjeta."
608
-
609
- msgid "You already made a payment for that amount. If you need to repay, use another card or other payment method."
610
- msgstr "Usted ya realizó el pago de esta cantidad. Si tiene que pagar de nuevo, utilizar otra tarjeta u otro método de pago."
611
-
612
- msgid "Your payment was rejected. Choose another payment method. We recommend cash."
613
- msgstr "Su pago fue rechazado. Por favor seleccione otro método de pago. Se recomienda dinero."
614
-
615
- msgid "Your payment do not have sufficient funds."
616
- msgstr "Su pago no tiene fondos suficientes."
617
-
618
- msgid "Your payment does not process payments with selected installments."
619
- msgstr "El pago no puede procesar la cuota seleccionada."
620
-
621
- msgid "You have reached the limit of allowed attempts. Choose another card or another payment method."
622
- msgstr "Has alcanzado el límite de intentos permitidos. Elija otra tarjeta u otro método de pago."
623
-
624
- msgid "This payment method did not process the payment."
625
- msgstr "Esta forma de pago no puede procesar su pago."
626
-
627
- msgid "Mercado Pago - Ticket"
628
- msgstr "Mercado Pago - Ticket"
629
-
630
- msgid "Mercado Pago - Credit Card"
631
- msgstr "Mercado Pago - Tarjeta de Crédito"
632
-
633
- msgid "Ticket Options"
634
- msgstr "Opciones de Ticket"
635
-
636
- msgid "Enable Ticket Payment Method"
637
- msgstr "Habilitar Pago con Ticket"
638
-
639
- msgid "Other Bank"
640
- msgstr "Otro Banco"
641
-
642
- msgid "Choose"
643
- msgstr "Escoger"
644
-
645
- msgid "A problem was occurred when processing your payment. Please, try again."
646
- msgstr "Un problema se produjo al procesar su pago. Por favor, inténtelo de nuevo."
647
-
648
- msgid "Thank you for your order. Please, pay the ticket to get your order approved."
649
- msgstr "Gracias por su orden. Por favor, pagar el ticket para tener su solicitud aprobada."
650
-
651
- msgid "Waiting for the ticket payment."
652
- msgstr "Esperando el pago del ticket."
653
-
654
- msgid "Print the Ticket"
655
- msgstr "Imprimir el ticket"
656
-
657
- msgid "To reprint the ticket click "
658
- msgstr "Para imprimir nuevamente el ticket hace clic "
659
-
660
- msgid "here"
661
- msgstr "aquí"
662
-
663
- msgid "Custom Checkout is Inactive"
664
- msgstr "Checkout Custom Inactivo"
665
-
666
- msgid "Standard Checkout is Inactive"
667
- msgstr "Checkout Estándar Inactivo"
668
-
669
- msgid "Ticket is Inactive"
670
- msgstr "Ticket Inactivo"
671
-
672
- msgid "Please, select the ticket issuer of your preference and then click "Place order" button. The ticket will be generated and you will be redirected to print it."
673
- msgstr "Por favor, seleccione el emisor de su elección y haga clic en el botón "PLACE ORDER". El ticket será generado y usted será redirigido a imprimirlo."
674
-
675
- msgid "Important: The order will be confirmed only after the payment approval."
676
- msgstr "Importante: La solicitud sólo será confirmada después de la aprobación del pago."
677
-
678
- msgid "Your Mercado Pago credential Access Token appears to be misconfigured."
679
- msgstr "Su credencial Access Token de Mercado de Pago parece estar desconfigurado."
680
-
681
- msgid "Your Card"
682
- msgstr "Sus Tarjetas"
683
-
684
- msgid "Other Cards"
685
- msgstr "Otras Tarjetas"
686
-
687
- msgid "Other Card"
688
- msgstr "Otra Tarjeta"
689
-
690
- msgid "ended in"
691
- msgstr "terminado en"
692
-
693
- msgid "Your site appears to not have SSL certification. SSL is a pre-requisite because the payment process is made in your server."
694
- msgstr "Su sitio parece no tener certificación SSL. SSL es un requisito previo porque la tramitación del pago se realiza en el servidor."
695
-
696
- msgid "<strong>ATTENTION: The currency"
697
- msgstr "<strong>ATENCIÓN: La moneda"
698
-
699
- msgid "defined in WooCommerce is different from the one used in your credentials country.<br>The currency for transactions in this payment method will be"
700
- msgstr "que se define en WooCommerce es diferente de la utilizada en el país de sus credenciales.<br>La moneda para las transacciones realizadas por este método de pago será"
701
-
702
- msgid "Currency conversions should be made outside this module.</strong><br><br>"
703
- msgstr "Conversiones de monedas se deben hacerse fuera de este módulo.</strong><br><br>"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
languages/woocommerce-mercadopago-module-es_VE.mo DELETED
Binary file
languages/woocommerce-mercadopago-module-es_VE.po DELETED
@@ -1,703 +0,0 @@
1
- # WordPress Blank Pot
2
- # Copyright (C) 2014 ...
3
- # This file is distributed under the GNU General Public License v2 or later.
4
- msgid ""
5
- msgstr ""
6
- "Project-Id-Version: WordPress Blank Pot v1.0.0\n"
7
- "POT-Creation-Date: 2016-05-23 14:52-0300\n"
8
- "PO-Revision-Date: \n"
9
- "Language-Team: Product Development <translations@example.com>\n"
10
- "Report-Msgid-Bugs-To: Translator Name <translations@example.com>\n"
11
- "MIME-Version: 1.0\n"
12
- "Content-Type: text/plain; charset=UTF-8\n"
13
- "Content-Transfer-Encoding: 8bit\n"
14
- "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
- "X-Textdomain-Support: yesX-Generator: Poedit 1.6.4\n"
16
- "X-Poedit-SourceCharset: UTF-8\n"
17
- "X-Poedit-KeywordsList: __;_e;esc_html_e;esc_html_x:1,2c;esc_html__;esc_attr_e;esc_attr_x:1,2c;esc_attr__;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_x:1,2c;_n:1,2;"
18
- "_n_noop:1,2;__ngettext:1,2;__ngettext_noop:1,2;_c,_nc:4c,1,2\n"
19
- "X-Poedit-Basepath: ../Documents/woocommerce (MAMP)/wp-content/plugins/woo-mercado-pago-module\n"
20
- "X-Generator: Poedit 1.8.7\n"
21
- "Last-Translator: \n"
22
- "Language: es_VE\n"
23
- "X-Poedit-SearchPath-0: .\n"
24
-
25
- #. Description of the plugin/theme
26
- msgid "This is the <strong>oficial</strong> module of Mercado Pago for WooCommerce plugin. This module enables WooCommerce to use Mercado Pago as a payment Gateway for purchases made in your e-commerce store."
27
- msgstr "Este es el módulo <strong>oficial</strong> de Mercado Pago para el plugin WooCommerce. Este módulo habilita el uso de Mercado Pago en WooCommerce como método de pago para compras realizadas en su tienda virtual."
28
-
29
- #: mercadopago-module.php:69
30
- #, php-format
31
- msgid "Woo Mercado Pago Module depends on the last version of %s to execute!"
32
- msgstr "Woo Mercado Pago Module depende de la última versión de %s para ejecutarse!"
33
-
34
- #: mercadopago-module.php:109
35
- msgid "Standard Checkout"
36
- msgstr "Checkout Estándar"
37
-
38
- #: mercadopago-module.php:113
39
- msgid "Custom Checkout"
40
- msgstr "Checkout Custom"
41
-
42
- #: mercadopago/mercadopago-custom-gateway.php:48
43
- msgid "Mercado Pago - Custom Checkout"
44
- msgstr "Mercado Pago - Checkout Custom"
45
-
46
- #: mercadopago/mercadopago-custom-gateway.php:51 mercadopago/mercadopago-gateway.php:54
47
- msgid "This module enables WooCommerce to use Mercado Pago as payment method for purchases made in your virtual store."
48
- msgstr "Este módulo habilita el uso de Mercado Pago en WooCommerce como método de pago para compras realizadas en su tienda virtual."
49
-
50
- #: mercadopago/mercadopago-custom-gateway.php:126 mercadopago/mercadopago-custom-gateway.php:791 mercadopago/mercadopago-gateway.php:125
51
- #: mercadopago/mercadopago-gateway.php:716
52
- msgid "Argentine"
53
- msgstr "Argentina"
54
-
55
- #: mercadopago/mercadopago-custom-gateway.php:127 mercadopago/mercadopago-custom-gateway.php:792 mercadopago/mercadopago-gateway.php:126
56
- #: mercadopago/mercadopago-gateway.php:717
57
- msgid "Brazil"
58
- msgstr "Brasil"
59
-
60
- #: mercadopago/mercadopago-custom-gateway.php:128 mercadopago/mercadopago-custom-gateway.php:794 mercadopago/mercadopago-gateway.php:127
61
- #: mercadopago/mercadopago-gateway.php:719
62
- msgid "Chile"
63
- msgstr "Chile"
64
-
65
- #: mercadopago/mercadopago-custom-gateway.php:129 mercadopago/mercadopago-custom-gateway.php:793 mercadopago/mercadopago-gateway.php:128
66
- #: mercadopago/mercadopago-gateway.php:718
67
- msgid "Colombia"
68
- msgstr "Colombia"
69
-
70
- #: mercadopago/mercadopago-custom-gateway.php:130 mercadopago/mercadopago-custom-gateway.php:795 mercadopago/mercadopago-gateway.php:129
71
- #: mercadopago/mercadopago-gateway.php:720
72
- msgid "Mexico"
73
- msgstr "México"
74
-
75
- #: mercadopago/mercadopago-custom-gateway.php:132 mercadopago/mercadopago-gateway.php:130
76
- msgid "or"
77
- msgstr "o"
78
-
79
- #: mercadopago/mercadopago-custom-gateway.php:133 mercadopago/mercadopago-custom-gateway.php:796 mercadopago/mercadopago-gateway.php:131
80
- #: mercadopago/mercadopago-gateway.php:721
81
- msgid "Venezuela"
82
- msgstr "Venezuela"
83
-
84
- #: mercadopago/mercadopago-custom-gateway.php:145 mercadopago/mercadopago-gateway.php:151
85
- msgid "Your credentials are <strong>valid</strong> for"
86
- msgstr "Sus credenciales <strong>son válidas</strong> para"
87
-
88
- #: mercadopago/mercadopago-custom-gateway.php:151 mercadopago/mercadopago-custom-gateway.php:156 mercadopago/mercadopago-gateway.php:161
89
- #: mercadopago/mercadopago-gateway.php:170
90
- msgid "Your credentials are <strong>not valid</strong>!"
91
- msgstr "Sus credenciales <strong>no son válidas</strong>!"
92
-
93
- #: mercadopago/mercadopago-custom-gateway.php:169 mercadopago/mercadopago-gateway.php:211
94
- msgid "Enable/Disable"
95
- msgstr "Habilitar/Deshabilitar"
96
-
97
- #: mercadopago/mercadopago-custom-gateway.php:171
98
- msgid "Enable Custom Checkout"
99
- msgstr "Habilitar Checkout Custom"
100
-
101
- #: mercadopago/mercadopago-custom-gateway.php:175 mercadopago/mercadopago-gateway.php:217
102
- msgid "Mercado Pago Credentials"
103
- msgstr "Credenciales de Mercado Pago"
104
-
105
- #: mercadopago/mercadopago-custom-gateway.php:177 mercadopago/mercadopago-gateway.php:219
106
- msgid "You can obtain your credentials for"
107
- msgstr "Puedes obtener tus credenciales para"
108
-
109
- #: mercadopago/mercadopago-custom-gateway.php:182
110
- msgid "Insert your Mercado Pago Public key."
111
- msgstr "Inserte su Public Key de Mercado Pago."
112
-
113
- #: mercadopago/mercadopago-custom-gateway.php:189
114
- msgid "Insert your Mercado Pago Access token."
115
- msgstr "Inserte su Access Token de Mercado Pago."
116
-
117
- #: mercadopago/mercadopago-custom-gateway.php:194 mercadopago/mercadopago-gateway.php:236
118
- msgid "Instant Payment Notification (IPN) URL"
119
- msgstr "URL da Notificación Instantanea de Pago (IPN)"
120
-
121
- #: mercadopago/mercadopago-custom-gateway.php:196 mercadopago/mercadopago-gateway.php:238
122
- msgid "Your IPN URL to receive instant payment notifications is"
123
- msgstr "Su URL de IPN para recibir notificaciones instantáneas de pago es"
124
-
125
- #: mercadopago/mercadopago-custom-gateway.php:199 mercadopago/mercadopago-gateway.php:241
126
- msgid "Checkout Options"
127
- msgstr "Opciones de Checkout"
128
-
129
- #: mercadopago/mercadopago-custom-gateway.php:204 mercadopago/mercadopago-gateway.php:246
130
- msgid "Title"
131
- msgstr "Título"
132
-
133
- #: mercadopago/mercadopago-custom-gateway.php:206 mercadopago/mercadopago-gateway.php:248
134
- msgid "Title shown to the client in the checkout."
135
- msgstr "Título mostrado al cliente en el checkout."
136
-
137
- #: mercadopago/mercadopago-custom-gateway.php:207 mercadopago/mercadopago-custom-gateway.php:219 mercadopago/mercadopago-gateway.php:249
138
- msgid "Mercado Pago"
139
- msgstr "Mercado Pago"
140
-
141
- #: mercadopago/mercadopago-custom-gateway.php:210 mercadopago/mercadopago-gateway.php:252
142
- msgid "Description"
143
- msgstr "Descripción"
144
-
145
- #: mercadopago/mercadopago-custom-gateway.php:212 mercadopago/mercadopago-gateway.php:254
146
- msgid "Description shown to the client in the checkout."
147
- msgstr "Descripción mostrada al cliente en el checkout."
148
-
149
- #: mercadopago/mercadopago-custom-gateway.php:213 mercadopago/mercadopago-gateway.php:255 mercadopago/mercadopago-gateway.php:432
150
- msgid "Pay with Mercado Pago"
151
- msgstr "Pagar con Mercado Pago"
152
-
153
- #: mercadopago/mercadopago-custom-gateway.php:216
154
- msgid "Statement Descriptor"
155
- msgstr "Descripción de la Factura"
156
-
157
- #: mercadopago/mercadopago-custom-gateway.php:218
158
- msgid "The description that will be shown in your customer's invoice."
159
- msgstr "La descripción que se muestra en la factura de su cliente."
160
-
161
- #: mercadopago/mercadopago-custom-gateway.php:222
162
- msgid "Binary Mode"
163
- msgstr "Modo binario"
164
-
165
- #: mercadopago/mercadopago-custom-gateway.php:224
166
- msgid "Enable binary mode for checkout status"
167
- msgstr "Activar el modo binario para el estado del checkout"
168
-
169
- #: mercadopago/mercadopago-custom-gateway.php:226
170
- msgid "When charging a credit card, only [approved] or [reject] status will be taken."
171
- msgstr "Al cargar una tarjeta de crédito, sólo los estados [aprobado] o [rechazar] seran tomados."
172
-
173
- #: mercadopago/mercadopago-custom-gateway.php:229
174
- msgid "Ticket"
175
- msgstr "Ticket"
176
-
177
- #: mercadopago/mercadopago-custom-gateway.php:231
178
- msgid "Enable Ticket for Custom Checkout"
179
- msgstr "Habilitar Ticket para Checkout Custom"
180
-
181
- #: mercadopago/mercadopago-custom-gateway.php:233
182
- msgid "Let your customer pay you with tickets"
183
- msgstr "Deje que su cliente le paga con tickets"
184
-
185
- #: mercadopago/mercadopago-custom-gateway.php:236 mercadopago/mercadopago-gateway.php:258
186
- msgid "Store Category"
187
- msgstr "Categoría de la tienda"
188
-
189
- #: mercadopago/mercadopago-custom-gateway.php:238 mercadopago/mercadopago-gateway.php:260
190
- msgid "Define which type of products your store sells."
191
- msgstr "Defina el tipo de productos que su tienda vende."
192
-
193
- #: mercadopago/mercadopago-custom-gateway.php:242 mercadopago/mercadopago-gateway.php:264
194
- msgid "Store Identificator"
195
- msgstr "Identificador de la tienda"
196
-
197
- #: mercadopago/mercadopago-custom-gateway.php:244 mercadopago/mercadopago-gateway.php:266
198
- msgid "Please, inform a prefix to your store."
199
- msgstr "Por favor, informe un prefijo para su tienda."
200
-
201
- #: mercadopago/mercadopago-custom-gateway.php:244 mercadopago/mercadopago-gateway.php:266
202
- msgid ""
203
- "If you use your Mercado Pago account on multiple stores you should make sure that this prefix is unique as Mercado Pago will not allow orders with same "
204
- "identificators."
205
- msgstr ""
206
- "Si esta utilizando su cuenta Mercado Pago para múltiples tiendas, asegúrese que este prefijo sea único para no generar pedidos con el mismo identificador."
207
-
208
- #: mercadopago/mercadopago-custom-gateway.php:248 mercadopago/mercadopago-gateway.php:318
209
- msgid "Test and Debug Options"
210
- msgstr "Opciones de Prueba y Debug"
211
-
212
- #: mercadopago/mercadopago-custom-gateway.php:253 mercadopago/mercadopago-gateway.php:323
213
- msgid "Mercado Pago Sandbox"
214
- msgstr "Sandbox Mercado Pago"
215
-
216
- #: mercadopago/mercadopago-custom-gateway.php:255 mercadopago/mercadopago-gateway.php:325
217
- msgid "Enable Mercado Pago Sandbox"
218
- msgstr "Habilitar el sandbox de Mercado Pago"
219
-
220
- #: mercadopago/mercadopago-custom-gateway.php:257 mercadopago/mercadopago-gateway.php:327
221
- msgid "This option allows you to test payments inside a sandbox environment."
222
- msgstr "Esta opción permite simular un flujo de pagos completo en nuestro entorno Sandbox."
223
-
224
- #: mercadopago/mercadopago-custom-gateway.php:260 mercadopago/mercadopago-gateway.php:330
225
- msgid "Debug and Log"
226
- msgstr "Debug y Log"
227
-
228
- #: mercadopago/mercadopago-custom-gateway.php:262 mercadopago/mercadopago-gateway.php:332
229
- msgid "Enable log"
230
- msgstr "Habilitar Log"
231
-
232
- #: mercadopago/mercadopago-custom-gateway.php:264 mercadopago/mercadopago-gateway.php:334
233
- msgid "Register event logs of Mercado Pago, such as API requests, in the file"
234
- msgstr "Registrar logs de eventos de Mercado Pago, como llamadas a la API, dentro del archivo"
235
-
236
- #: mercadopago/mercadopago-custom-gateway.php:265 mercadopago/mercadopago-gateway.php:335
237
- msgid "File location: "
238
- msgstr "Local del archivo: "
239
-
240
- #: mercadopago/mercadopago-custom-gateway.php:281 mercadopago/mercadopago-gateway.php:351
241
- #, php-format
242
- msgid "Please, rate us %s on WordPress.org and give your feedback to help improve this module!"
243
- msgstr "Por favor, da tu evaluación con %s en WordPress.org y da su feedback para ayudar a mejorar este módulo!"
244
-
245
- #: mercadopago/mercadopago-custom-gateway.php:332
246
- msgid "Payment Method"
247
- msgstr "Métodos de Pago"
248
-
249
- #: mercadopago/mercadopago-custom-gateway.php:333
250
- msgid "Credit card number"
251
- msgstr "Número de tarjeta de crédito"
252
-
253
- #: mercadopago/mercadopago-custom-gateway.php:334
254
- msgid "Expiration month"
255
- msgstr "Mes de expiración"
256
-
257
- #: mercadopago/mercadopago-custom-gateway.php:335
258
- msgid "Expiration year"
259
- msgstr "Año de expiración"
260
-
261
- #: mercadopago/mercadopago-custom-gateway.php:336
262
- msgid "Year"
263
- msgstr "Año"
264
-
265
- #: mercadopago/mercadopago-custom-gateway.php:337
266
- msgid "Month"
267
- msgstr "Mes"
268
-
269
- #: mercadopago/mercadopago-custom-gateway.php:338
270
- msgid "Card holder name"
271
- msgstr "Nombre del titular de la tarjeta"
272
-
273
- #: mercadopago/mercadopago-custom-gateway.php:339
274
- msgid "Security code"
275
- msgstr "Código de seguridad"
276
-
277
- #: mercadopago/mercadopago-custom-gateway.php:340
278
- msgid "Document Type"
279
- msgstr "Tipo de Documento"
280
-
281
- #: mercadopago/mercadopago-custom-gateway.php:341
282
- msgid "Document number"
283
- msgstr "Número del Documento"
284
-
285
- #: mercadopago/mercadopago-custom-gateway.php:342
286
- msgid "Issuer"
287
- msgstr "Emisor"
288
-
289
- #: mercadopago/mercadopago-custom-gateway.php:343
290
- msgid "Installments"
291
- msgstr "Cuotas"
292
-
293
- #: mercadopago/mercadopago-custom-gateway.php:347
294
- msgid "Parameter cardNumber can not be null/empty"
295
- msgstr "Parámetro [Numero de tarjeta] no puede ser nulo/vacío"
296
-
297
- #: mercadopago/mercadopago-custom-gateway.php:348
298
- msgid "Invalid Card Number"
299
- msgstr "Numero de tarjeta invalido"
300
-
301
- #: mercadopago/mercadopago-custom-gateway.php:350 mercadopago/mercadopago-custom-gateway.php:351 mercadopago/mercadopago-custom-gateway.php:352
302
- #: mercadopago/mercadopago-custom-gateway.php:353
303
- msgid "Invalid Expiration Date"
304
- msgstr "Fecha de vencimiento inválida"
305
-
306
- #: mercadopago/mercadopago-custom-gateway.php:355
307
- msgid "Parameter cardholderName can not be null/empty"
308
- msgstr "Parámetro [Nombre del titular] no puede ser nulo/vacío"
309
-
310
- #: mercadopago/mercadopago-custom-gateway.php:356
311
- msgid "Invalid Card Holder Name"
312
- msgstr "Nombre del titular de la tarjeta invalido"
313
-
314
- #: mercadopago/mercadopago-custom-gateway.php:358
315
- msgid "Parameter securityCode can not be null/empty"
316
- msgstr "Parámetro [Código de seguridad] no puede ser nulo/vacío"
317
-
318
- #: mercadopago/mercadopago-custom-gateway.php:359
319
- msgid "Invalid Security Code"
320
- msgstr "Código de seguridad invalido"
321
-
322
- #: mercadopago/mercadopago-custom-gateway.php:361
323
- msgid "Parameter docType can not be null/empty"
324
- msgstr "Parámetro [Tipo de Documento] no puede ser nulo/vacío"
325
-
326
- #: mercadopago/mercadopago-custom-gateway.php:362
327
- msgid "Invalid Document Type"
328
- msgstr "Tipo de Documento invalido"
329
-
330
- #: mercadopago/mercadopago-custom-gateway.php:364
331
- msgid "Parameter docNumber can not be null/empty"
332
- msgstr "Parámetro [Número del Documento] no puede ser nulo/vacío"
333
-
334
- #: mercadopago/mercadopago-custom-gateway.php:365
335
- msgid "Invalid Document Number"
336
- msgstr "Número del Documento invalido"
337
-
338
- #: mercadopago/mercadopago-custom-gateway.php:367
339
- msgid "The parameter cardholder.document.subtype can not be null or empty"
340
- msgstr "Parámetro [Subtipo del documento] no puede ser nulo/vacío"
341
-
342
- #: mercadopago/mercadopago-custom-gateway.php:368
343
- msgid "Invalid Document Sub Type"
344
- msgstr "Subtipo del documento invalido"
345
-
346
- #: mercadopago/mercadopago-custom-gateway.php:370
347
- msgid "Parameter cardIssuerId can not be null/empty"
348
- msgstr "Parámetro [Emisor] no puede ser nulo/vacío"
349
-
350
- #: mercadopago/mercadopago-custom-gateway.php:402 mercadopago/mercadopago-custom-gateway.php:943 mercadopago/mercadopago-gateway.php:869
351
- msgid "Payment approved."
352
- msgstr "Pago aprobado."
353
-
354
- #: mercadopago/mercadopago-custom-gateway.php:416 mercadopago/mercadopago-custom-gateway.php:805
355
- msgid "Your payment is under review. In less than 1h, you should be notified by email."
356
- msgstr "Su pago está en revisión. En menos de 1 hora, usted debe ser notificado por correo electrónico."
357
-
358
- #: mercadopago/mercadopago-custom-gateway.php:418
359
- msgid "Check your order resume"
360
- msgstr "Ver su hoja de pedido"
361
-
362
- #: mercadopago/mercadopago-custom-gateway.php:431
363
- msgid "Your payment was refused. You can try again."
364
- msgstr "Su pago fue rechazado. Puede intentarlo de nuevo."
365
-
366
- #: mercadopago/mercadopago-custom-gateway.php:435 mercadopago/mercadopago-custom-gateway.php:819 mercadopago/mercadopago-gateway.php:460
367
- msgid "Click to try again"
368
- msgstr "Haga clic para Inténtalo de nuevo"
369
-
370
- #: mercadopago/mercadopago-custom-gateway.php:455
371
- msgid "A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?"
372
- msgstr "Un problema se produjo al procesar su pago. Usted esta seguro de que ha rellenado correctamente toda la información en la forma de checkout?"
373
-
374
- #: mercadopago/mercadopago-custom-gateway.php:544
375
- msgid "Shipping"
376
- msgstr "Envío"
377
-
378
- #: mercadopago/mercadopago-custom-gateway.php:545
379
- msgid "Shipping service used by store"
380
- msgstr "Servicio de envío utilizado por el almacén"
381
-
382
- #: mercadopago/mercadopago-custom-gateway.php:721 mercadopago/mercadopago-gateway.php:649
383
- msgid "WooCommerce &gt; System Status &gt; Logs"
384
- msgstr "WooCommerce &gt; Estado del Sistema &gt; Logs"
385
-
386
- #: mercadopago/mercadopago-custom-gateway.php:766 mercadopago/mercadopago-custom-gateway.php:779 mercadopago/mercadopago-gateway.php:694
387
- #: mercadopago/mercadopago-gateway.php:705
388
- msgid "Mercado Pago is Inactive"
389
- msgstr "Mercado Pago Inactivo"
390
-
391
- #: mercadopago/mercadopago-custom-gateway.php:769
392
- msgid "Your Mercado Pago credentials Public Key/Access Token appears to be misconfigured."
393
- msgstr "Sus credenciales Client_id/Client_secret de Mercado Pago parecen no estar debidamente configuradas."
394
-
395
- #: mercadopago/mercadopago-custom-gateway.php:771 mercadopago/mercadopago-gateway.php:698
396
- msgid "Click here and configure!"
397
- msgstr "Haga click aquí y configure!"
398
-
399
- #: mercadopago/mercadopago-custom-gateway.php:782 mercadopago/mercadopago-gateway.php:708
400
- msgid "The currency"
401
- msgstr "La moneda"
402
-
403
- #: mercadopago/mercadopago-custom-gateway.php:783 mercadopago/mercadopago-gateway.php:708
404
- msgid "is not supported. Supported currencies are: ARS, BRL, CLP, COP, MXN, VEF."
405
- msgstr "no es soportada. Las monedas soportadas son: ARS, BRL, CLP, COP, MXN, VEF."
406
-
407
- #: mercadopago/mercadopago-custom-gateway.php:797
408
- msgid "Peru"
409
- msgstr "Peru"
410
-
411
- #: mercadopago/mercadopago-custom-gateway.php:809
412
- msgid "Click to check your order"
413
- msgstr "Haga clic para comprobar su pedido"
414
-
415
- #: mercadopago/mercadopago-custom-gateway.php:814 mercadopago/mercadopago-gateway.php:457
416
- msgid "An error occurred when proccessing your payment. Please try again or contact us for assistence."
417
- msgstr "Se ha producido un error en el procesamiento de su pago. Por favor, inténtelo de nuevo o póngase en contacto con nosotros para Asistencia."
418
-
419
- #: mercadopago/mercadopago-custom-gateway.php:816
420
- msgid "Reason is: "
421
- msgstr "La razón es:"
422
-
423
- #: mercadopago/mercadopago-custom-gateway.php:849 mercadopago/mercadopago-gateway.php:748
424
- msgid "Mercado Pago Request Failure"
425
- msgstr "La solicitud de Mercado Pago ha fallado."
426
-
427
- #: mercadopago/mercadopago-custom-gateway.php:918 mercadopago/mercadopago-gateway.php:822
428
- msgid "Payer email"
429
- msgstr "Email del comprador"
430
-
431
- #: mercadopago/mercadopago-custom-gateway.php:926 mercadopago/mercadopago-gateway.php:829
432
- msgid "Payment type"
433
- msgstr "Método de pago"
434
-
435
- #: mercadopago/mercadopago-custom-gateway.php:934 mercadopago/mercadopago-gateway.php:841
436
- msgid "Mercado Pago Payment ID"
437
- msgstr "ID de pago de Mercado Pago"
438
-
439
- #: mercadopago/mercadopago-custom-gateway.php:950 mercadopago/mercadopago-gateway.php:875
440
- msgid "Customer haven't paid yet."
441
- msgstr "El cliente todavía no efectuó el pago."
442
-
443
- #: mercadopago/mercadopago-custom-gateway.php:957 mercadopago/mercadopago-gateway.php:881
444
- msgid "Payment under review."
445
- msgstr "El pago está pendiente de revisión."
446
-
447
- #: mercadopago/mercadopago-custom-gateway.php:964 mercadopago/mercadopago-gateway.php:887
448
- msgid "The payment was refused. The customer can try again."
449
- msgstr "El pago fue rechazado. El cliente puede intentar nuevamente."
450
-
451
- #: mercadopago/mercadopago-custom-gateway.php:971 mercadopago/mercadopago-gateway.php:893
452
- msgid "The payment was refunded to the customer."
453
- msgstr "El pago fue devuelto al cliente."
454
-
455
- #: mercadopago/mercadopago-custom-gateway.php:978 mercadopago/mercadopago-gateway.php:899
456
- msgid "The payment was cancelled."
457
- msgstr "El pago fue cancelado."
458
-
459
- #: mercadopago/mercadopago-custom-gateway.php:984 mercadopago/mercadopago-custom-gateway.php:990 mercadopago/mercadopago-gateway.php:904
460
- #: mercadopago/mercadopago-gateway.php:909
461
- msgid "The payment is under mediation or it was charged-back."
462
- msgstr "El pago esta en mediación o la compra fue desconocida por el cliente."
463
-
464
- #: mercadopago/mercadopago-gateway.php:51
465
- msgid "Mercado Pago - Standard Checkout"
466
- msgstr "Mercado Pago - Checkout Estándar"
467
-
468
- #: mercadopago/mercadopago-gateway.php:148
469
- msgid "Select the payment methods that you <strong>don't</strong> want to receive with Mercado Pago."
470
- msgstr "Selecione los medios de pago que <strong>no</strong> desea aceptar con Mercado Pago."
471
-
472
- #: mercadopago/mercadopago-gateway.php:158 mercadopago/mercadopago-gateway.php:167
473
- msgid "Configure your Client_id and Client_secret to have access to more options."
474
- msgstr "Configure su Client_id y Client_secret para tener acceso a más opciones."
475
-
476
- #: mercadopago/mercadopago-gateway.php:184 mercadopago/mercadopago-gateway.php:192 mercadopago/mercadopago-gateway.php:202
477
- msgid "This field should be an integer."
478
- msgstr "Este campo debe ser un número."
479
-
480
- #: mercadopago/mercadopago-gateway.php:187
481
- msgid "If your integration method is iFrame, please inform the payment iFrame width."
482
- msgstr "Si su modo de apertura es iFrame, indique el ancho del iFrame."
483
-
484
- #: mercadopago/mercadopago-gateway.php:195
485
- msgid "If your integration method is iFrame, please inform the payment iFrame height."
486
- msgstr "Si su modo de apertura es iFrame, indique el alto del iFrame."
487
-
488
- #: mercadopago/mercadopago-gateway.php:205
489
- msgid "Select the max number of installments for your customers."
490
- msgstr "Seleccione el número máximo de cuotas posibles para sus clientes."
491
-
492
- #: mercadopago/mercadopago-gateway.php:213
493
- msgid "Enable Standard Checkout"
494
- msgstr "Habilitar el Checkout Estándar"
495
-
496
- #: mercadopago/mercadopago-gateway.php:224
497
- msgid "Insert your Mercado Pago Client_id."
498
- msgstr "Inserte su Client_id de Mercado Pago."
499
-
500
- #: mercadopago/mercadopago-gateway.php:231
501
- msgid "Insert your Mercado Pago Client_secret."
502
- msgstr "Inserte su Client_secret de Mercado Pago."
503
-
504
- #: mercadopago/mercadopago-gateway.php:270
505
- msgid "Integration Method"
506
- msgstr "Método de integración"
507
-
508
- #: mercadopago/mercadopago-gateway.php:272
509
- msgid ""
510
- "Select how your clients should interact with Mercado Pago. Modal Window (inside your store), Redirect (Client is redirected to Mercado Pago), or iFrame (an "
511
- "internal window is embedded to the page layout)."
512
- msgstr ""
513
- "Seleccione la forma en que sus clientes deben interactuar con Mercado Pago. Ventana Modal (Dentro de su tienda), Redireccionamiento (El cliente es "
514
- "redireccionado a Mercado Pago), o iFrame (Ventana de pago incorporada a su página)."
515
-
516
- #: mercadopago/mercadopago-gateway.php:275
517
- msgid "iFrame"
518
- msgstr "iFrame"
519
-
520
- #: mercadopago/mercadopago-gateway.php:276
521
- msgid "Modal Window"
522
- msgstr "Ventana modal"
523
-
524
- #: mercadopago/mercadopago-gateway.php:277
525
- msgid "Redirect"
526
- msgstr "Redireccionamiento"
527
-
528
- #: mercadopago/mercadopago-gateway.php:281
529
- msgid "iFrame Width"
530
- msgstr "Ancho del iFrame"
531
-
532
- #: mercadopago/mercadopago-gateway.php:287
533
- msgid "iFrame Height"
534
- msgstr "Alto del iFrame"
535
-
536
- #: mercadopago/mercadopago-gateway.php:293
537
- msgid "Auto Return"
538
- msgstr "Redirección automática"
539
-
540
- #: mercadopago/mercadopago-gateway.php:295
541
- msgid "Automatic Return After Payment"
542
- msgstr "Redirección Automática Luego del Pago"
543
-
544
- #: mercadopago/mercadopago-gateway.php:297
545
- msgid "After the payment, client is automatically redirected."
546
- msgstr "Después del pago, el cliente será redireccionado automáticamente."
547
-
548
- #: mercadopago/mercadopago-gateway.php:300
549
- msgid "Payment Options"
550
- msgstr "Opciones de Pago"
551
-
552
- #: mercadopago/mercadopago-gateway.php:305
553
- msgid "Max installments"
554
- msgstr "Número máximo de cuotas"
555
-
556
- #: mercadopago/mercadopago-gateway.php:311
557
- msgid "Exclude Payment Methods"
558
- msgstr "Excluir métodos de pago"
559
-
560
- #: mercadopago/mercadopago-gateway.php:428
561
- msgid "Thank you for your order. Please, proceed with your payment clicking in the bellow button."
562
- msgstr "Gracias por su compra. Por favor, prosiga a la página de pago haciendo click en el botón de abajo."
563
-
564
- #: mercadopago/mercadopago-gateway.php:436
565
- msgid "Cancel order &amp; Clear cart"
566
- msgstr "Cancelar &amp; Limpiar carrito"
567
-
568
- #: mercadopago/mercadopago-gateway.php:446
569
- msgid "Thank you for your order. Proceed with your payment completing the following information."
570
- msgstr "Gracias por su compra. Prosiga con su pago completando la información abajo."
571
-
572
- #: mercadopago/mercadopago-gateway.php:697
573
- msgid "Your Mercado Pago credentials Client_id/Client_secret appears to be misconfigured."
574
- msgstr "Sus credenciales Client_id/Client_secret de Mercado Pago parecen no estar debidamente configuradas."
575
-
576
- msgid " as it appears in your card ..."
577
- msgstr " tal como aparece en su tarjeta ..."
578
-
579
- msgid "Done, your payment was accredited!"
580
- msgstr "Listo, su pago ha sido aceptado!"
581
-
582
- msgid "We are processing the payment. In less than an hour we will e-mail you the results."
583
- msgstr "Estamos procesando su pago. En menos de una hora se le notificará por correo electrónico."
584
-
585
- msgid "We are processing the payment. In less than 2 business days we will tell you by e-mail whether it has accredited or we need more information."
586
- msgstr "Estamos procesando su pago. En menos de 2 días se le notificará por correo electrónico si se ha aprobado el pago o si se necesita información adicional."
587
-
588
- msgid "Check the card number."
589
- msgstr "Compruebe el número de tarjeta."
590
-
591
- msgid "Check the expiration date."
592
- msgstr "Compruebe la fecha de expiración."
593
-
594
- msgid "Check the information."
595
- msgstr "Compruebe la información informada."
596
-
597
- msgid "Check the security code."
598
- msgstr "Compruebe el código de seguridad informado."
599
-
600
- msgid "We could not process your payment."
601
- msgstr "No se puede procesar su pago."
602
-
603
- msgid "You must authorize the payment of your orders."
604
- msgstr "Usted debe autorizar pagos de sus órdenes."
605
-
606
- msgid "Call your card issuer to activate your card. The phone is on the back of your card."
607
- msgstr "Póngase en contacto con el emisor de su tarjeta para activarla. El teléfono se encuentra en la parte posterior de su tarjeta."
608
-
609
- msgid "You already made a payment for that amount. If you need to repay, use another card or other payment method."
610
- msgstr "Usted ya realizó el pago de esta cantidad. Si tiene que pagar de nuevo, utilizar otra tarjeta u otro método de pago."
611
-
612
- msgid "Your payment was rejected. Choose another payment method. We recommend cash."
613
- msgstr "Su pago fue rechazado. Por favor seleccione otro método de pago. Se recomienda dinero."
614
-
615
- msgid "Your payment do not have sufficient funds."
616
- msgstr "Su pago no tiene fondos suficientes."
617
-
618
- msgid "Your payment does not process payments with selected installments."
619
- msgstr "El pago no puede procesar la cuota seleccionada."
620
-
621
- msgid "You have reached the limit of allowed attempts. Choose another card or another payment method."
622
- msgstr "Has alcanzado el límite de intentos permitidos. Elija otra tarjeta u otro método de pago."
623
-
624
- msgid "This payment method did not process the payment."
625
- msgstr "Esta forma de pago no puede procesar su pago."
626
-
627
- msgid "Mercado Pago - Ticket"
628
- msgstr "Mercado Pago - Ticket"
629
-
630
- msgid "Mercado Pago - Credit Card"
631
- msgstr "Mercado Pago - Tarjeta de Crédito"
632
-
633
- msgid "Ticket Options"
634
- msgstr "Opciones de Ticket"
635
-
636
- msgid "Enable Ticket Payment Method"
637
- msgstr "Habilitar Pago con Ticket"
638
-
639
- msgid "Other Bank"
640
- msgstr "Otro Banco"
641
-
642
- msgid "Choose"
643
- msgstr "Escoger"
644
-
645
- msgid "A problem was occurred when processing your payment. Please, try again."
646
- msgstr "Un problema se produjo al procesar su pago. Por favor, inténtelo de nuevo."
647
-
648
- msgid "Thank you for your order. Please, pay the ticket to get your order approved."
649
- msgstr "Gracias por su orden. Por favor, pagar el ticket para tener su solicitud aprobada."
650
-
651
- msgid "Waiting for the ticket payment."
652
- msgstr "Esperando el pago del ticket."
653
-
654
- msgid "Print the Ticket"
655
- msgstr "Imprimir el Ticket"
656
-
657
- msgid "To reprint the ticket click "
658
- msgstr "Para imprimir nuevamente el ticket hace clic "
659
-
660
- msgid "here"
661
- msgstr "aquí"
662
-
663
- msgid "Custom Checkout is Inactive"
664
- msgstr "Checkout Custom Inactivo"
665
-
666
- msgid "Standard Checkout is Inactive"
667
- msgstr "Checkout Estándar Inactivo"
668
-
669
- msgid "Ticket is Inactive"
670
- msgstr "Ticket Inactivo"
671
-
672
- msgid "Please, select the ticket issuer of your preference and then click "Place order" button. The ticket will be generated and you will be redirected to print it."
673
- msgstr "Por favor, seleccione el emisor de su elección y haga clic en el botón "PLACE ORDER". El ticket será generado y usted será redirigido a imprimirlo."
674
-
675
- msgid "Important: The order will be confirmed only after the payment approval."
676
- msgstr "Importante: La solicitud sólo será confirmada después de la aprobación del pago."
677
-
678
- msgid "Your Mercado Pago credential Access Token appears to be misconfigured."
679
- msgstr "Su credencial Access Token de Mercado de Pago parece estar desconfigurado."
680
-
681
- msgid "Your Card"
682
- msgstr "Sus Tarjetas"
683
-
684
- msgid "Other Cards"
685
- msgstr "Otras Tarjetas"
686
-
687
- msgid "Other Card"
688
- msgstr "Otra Tarjeta"
689
-
690
- msgid "ended in"
691
- msgstr "terminado en"
692
-
693
- msgid "Your site appears to not have SSL certification. SSL is a pre-requisite because the payment process is made in your server."
694
- msgstr "Su sitio parece no tener certificación SSL. SSL es un requisito previo porque la tramitación del pago se realiza en el servidor."
695
-
696
- msgid "<strong>ATTENTION: The currency"
697
- msgstr "<strong>ATENCIÓN: La moneda"
698
-
699
- msgid "defined in WooCommerce is different from the one used in your credentials country.<br>The currency for transactions in this payment method will be"
700
- msgstr "que se define en WooCommerce es diferente de la utilizada en el país de sus credenciales.<br>La moneda para las transacciones realizadas por este método de pago será"
701
-
702
- msgid "Currency conversions should be made outside this module.</strong><br><br>"
703
- msgstr "Conversiones de monedas se deben hacerse fuera de este módulo.</strong><br><br>"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
languages/woocommerce-mercadopago-module-pt_BR.mo DELETED
Binary file
languages/woocommerce-mercadopago-module-pt_BR.po DELETED
@@ -1,695 +0,0 @@
1
- # WordPress Blank Pot
2
- # Copyright (C) 2014 ...
3
- # This file is distributed under the GNU General Public License v2 or later.
4
- msgid ""
5
- msgstr ""
6
- "Project-Id-Version: WordPress Blank Pot v1.0.0\n"
7
- "POT-Creation-Date: 2016-05-23 14:12-0300\n"
8
- "PO-Revision-Date: \n"
9
- "Language-Team: Product Development <translations@example.com>\n"
10
- "Report-Msgid-Bugs-To: Translator Name <translations@example.com>\n"
11
- "MIME-Version: 1.0\n"
12
- "Content-Type: text/plain; charset=UTF-8\n"
13
- "Content-Transfer-Encoding: 8bit\n"
14
- "Plural-Forms: nplurals=2; plural=(n > 1);\n"
15
- "X-Textdomain-Support: yesX-Generator: Poedit 1.6.4\n"
16
- "X-Poedit-SourceCharset: UTF-8\n"
17
- "X-Poedit-KeywordsList: __;_e;esc_html_e;esc_html_x:1,2c;esc_html__;esc_attr_e;esc_attr_x:1,2c;esc_attr__;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_x:1,2c;_n:1,2;_n_noop:1,2;__ngettext:1,2;__ngettext_noop:1,2;_c,_nc:4c,1,2\n"
18
- "X-Poedit-Basepath: ../Documents/woocommerce (MAMP)/wp-content/plugins/woo-mercado-pago-module\n"
19
- "X-Generator: Poedit 1.8.7\n"
20
- "Last-Translator: \n"
21
- "Language: pt_BR\n"
22
- "X-Poedit-SearchPath-0: .\n"
23
-
24
- #. Description of the plugin/theme
25
- msgid "This is the <strong>oficial</strong> module of Mercado Pago for WooCommerce plugin. This module enables WooCommerce to use Mercado Pago as a payment Gateway for purchases made in your e-commerce store."
26
- msgstr "Este é o módulo <strong>oficial</strong> do Mercado Pago para o plugin WooCommerce. Este módulo habilita o WooCommerce a usar o Mercado Pago como meio de pagamento para compras realizadas em sua loja virtual."
27
-
28
- #: mercadopago-module.php:69
29
- #, php-format
30
- msgid "Woo Mercado Pago Module depends on the last version of %s to execute!"
31
- msgstr "Woo Mercado Pago Module depends on the last version of %s to execute!"
32
-
33
- #: mercadopago-module.php:109
34
- msgid "Standard Checkout"
35
- msgstr "Checkout Padrão"
36
-
37
- #: mercadopago-module.php:113
38
- msgid "Custom Checkout"
39
- msgstr "Checkout Customizado"
40
-
41
- #: mercadopago/mercadopago-custom-gateway.php:48
42
- msgid "Mercado Pago - Custom Checkout"
43
- msgstr "Mercado Pago - Checkout Customizado"
44
-
45
- #: mercadopago/mercadopago-custom-gateway.php:51 mercadopago/mercadopago-gateway.php:54
46
- msgid "This module enables WooCommerce to use Mercado Pago as payment method for purchases made in your virtual store."
47
- msgstr "Este módulo habilita o WooCommerce a usar o Mercado Pago como meio de pagamento para compras realizadas em sua loja virtual."
48
-
49
- #: mercadopago/mercadopago-custom-gateway.php:126 mercadopago/mercadopago-custom-gateway.php:791 mercadopago/mercadopago-gateway.php:125
50
- #: mercadopago/mercadopago-gateway.php:716
51
- msgid "Argentine"
52
- msgstr "Argentina"
53
-
54
- #: mercadopago/mercadopago-custom-gateway.php:127 mercadopago/mercadopago-custom-gateway.php:792 mercadopago/mercadopago-gateway.php:126
55
- #: mercadopago/mercadopago-gateway.php:717
56
- msgid "Brazil"
57
- msgstr "Brasil"
58
-
59
- #: mercadopago/mercadopago-custom-gateway.php:128 mercadopago/mercadopago-custom-gateway.php:794 mercadopago/mercadopago-gateway.php:127
60
- #: mercadopago/mercadopago-gateway.php:719
61
- msgid "Chile"
62
- msgstr "Chile"
63
-
64
- #: mercadopago/mercadopago-custom-gateway.php:129 mercadopago/mercadopago-custom-gateway.php:793 mercadopago/mercadopago-gateway.php:128
65
- #: mercadopago/mercadopago-gateway.php:718
66
- msgid "Colombia"
67
- msgstr "Colômbia"
68
-
69
- #: mercadopago/mercadopago-custom-gateway.php:130 mercadopago/mercadopago-custom-gateway.php:795 mercadopago/mercadopago-gateway.php:129
70
- #: mercadopago/mercadopago-gateway.php:720
71
- msgid "Mexico"
72
- msgstr "México"
73
-
74
- #: mercadopago/mercadopago-custom-gateway.php:132 mercadopago/mercadopago-gateway.php:130
75
- msgid "or"
76
- msgstr "ou"
77
-
78
- #: mercadopago/mercadopago-custom-gateway.php:133 mercadopago/mercadopago-custom-gateway.php:796 mercadopago/mercadopago-gateway.php:131
79
- #: mercadopago/mercadopago-gateway.php:721
80
- msgid "Venezuela"
81
- msgstr "Venezuela"
82
-
83
- #: mercadopago/mercadopago-custom-gateway.php:145 mercadopago/mercadopago-gateway.php:151
84
- msgid "Your credentials are <strong>valid</strong> for"
85
- msgstr "Suas credenciais <strong>são válidas</strong> para"
86
-
87
- #: mercadopago/mercadopago-custom-gateway.php:151 mercadopago/mercadopago-custom-gateway.php:156 mercadopago/mercadopago-gateway.php:161
88
- #: mercadopago/mercadopago-gateway.php:170
89
- msgid "Your credentials are <strong>not valid</strong>!"
90
- msgstr "Suas credenciais <strong>não são válidas</strong>!"
91
-
92
- #: mercadopago/mercadopago-custom-gateway.php:169 mercadopago/mercadopago-gateway.php:211
93
- msgid "Enable/Disable"
94
- msgstr "Habilitar/Desabilitar"
95
-
96
- #: mercadopago/mercadopago-custom-gateway.php:171
97
- msgid "Enable Custom Checkout"
98
- msgstr "Habilitar o Checkout Customizado"
99
-
100
- #: mercadopago/mercadopago-custom-gateway.php:175 mercadopago/mercadopago-gateway.php:217
101
- msgid "Mercado Pago Credentials"
102
- msgstr "Credenciais do Mercado Pago"
103
-
104
- #: mercadopago/mercadopago-custom-gateway.php:177 mercadopago/mercadopago-gateway.php:219
105
- msgid "You can obtain your credentials for"
106
- msgstr "Você pode obter suas credenciais para"
107
-
108
- #: mercadopago/mercadopago-custom-gateway.php:182
109
- msgid "Insert your Mercado Pago Public key."
110
- msgstr "Insira sua Public Key do Mercado Pago."
111
-
112
- #: mercadopago/mercadopago-custom-gateway.php:189
113
- msgid "Insert your Mercado Pago Access token."
114
- msgstr "Insira seu Access Token do Mercado Pago."
115
-
116
- #: mercadopago/mercadopago-custom-gateway.php:194 mercadopago/mercadopago-gateway.php:236
117
- msgid "Instant Payment Notification (IPN) URL"
118
- msgstr "URL de Notificações Instantâneas de Pagamento (IPN)"
119
-
120
- #: mercadopago/mercadopago-custom-gateway.php:196 mercadopago/mercadopago-gateway.php:238
121
- msgid "Your IPN URL to receive instant payment notifications is"
122
- msgstr "Sua URL de IPN para receber notificações instantâneas de pagamentos é"
123
-
124
- #: mercadopago/mercadopago-custom-gateway.php:199 mercadopago/mercadopago-gateway.php:241
125
- msgid "Checkout Options"
126
- msgstr "Opções de Checkout"
127
-
128
- #: mercadopago/mercadopago-custom-gateway.php:204 mercadopago/mercadopago-gateway.php:246
129
- msgid "Title"
130
- msgstr "Título"
131
-
132
- #: mercadopago/mercadopago-custom-gateway.php:206 mercadopago/mercadopago-gateway.php:248
133
- msgid "Title shown to the client in the checkout."
134
- msgstr "Título mostrado ao cliente durante o checkout."
135
-
136
- #: mercadopago/mercadopago-custom-gateway.php:207 mercadopago/mercadopago-custom-gateway.php:219 mercadopago/mercadopago-gateway.php:249
137
- msgid "Mercado Pago"
138
- msgstr "Mercado Pago"
139
-
140
- #: mercadopago/mercadopago-custom-gateway.php:210 mercadopago/mercadopago-gateway.php:252
141
- msgid "Description"
142
- msgstr "Descrição"
143
-
144
- #: mercadopago/mercadopago-custom-gateway.php:212 mercadopago/mercadopago-gateway.php:254
145
- msgid "Description shown to the client in the checkout."
146
- msgstr "Descrição mostrada ao cliente durante o checkout."
147
-
148
- #: mercadopago/mercadopago-custom-gateway.php:213 mercadopago/mercadopago-gateway.php:255 mercadopago/mercadopago-gateway.php:432
149
- msgid "Pay with Mercado Pago"
150
- msgstr "Pagar com Mercado Pago"
151
-
152
- #: mercadopago/mercadopago-custom-gateway.php:216
153
- msgid "Statement Descriptor"
154
- msgstr "Descritor da Nota Fiscal"
155
-
156
- #: mercadopago/mercadopago-custom-gateway.php:218
157
- msgid "The description that will be shown in your customer's invoice."
158
- msgstr "A descrição que será mostrada na nota fiscal de seu cliente."
159
-
160
- #: mercadopago/mercadopago-custom-gateway.php:222
161
- msgid "Binary Mode"
162
- msgstr "Modo Binário"
163
-
164
- #: mercadopago/mercadopago-custom-gateway.php:224
165
- msgid "Enable binary mode for checkout status"
166
- msgstr "Habilita o modo binário para o status do checkout"
167
-
168
- #: mercadopago/mercadopago-custom-gateway.php:226
169
- msgid "When charging a credit card, only [approved] or [reject] status will be taken."
170
- msgstr "Ao realizar a cobrança no cartão, apenas os status [aprovado] ou [rejeitado] serão considerados."
171
-
172
- #: mercadopago/mercadopago-custom-gateway.php:229
173
- msgid "Ticket"
174
- msgstr "Boleto"
175
-
176
- #: mercadopago/mercadopago-custom-gateway.php:231
177
- msgid "Enable Ticket for Custom Checkout"
178
- msgstr "Habilitar Boleto para o Checkout Customizado"
179
-
180
- #: mercadopago/mercadopago-custom-gateway.php:233
181
- msgid "Let your customer pay you with tickets"
182
- msgstr "Permitir que seus clientes façam pagamentos por boletos"
183
-
184
- #: mercadopago/mercadopago-custom-gateway.php:236 mercadopago/mercadopago-gateway.php:258
185
- msgid "Store Category"
186
- msgstr "Categoria da loja"
187
-
188
- #: mercadopago/mercadopago-custom-gateway.php:238 mercadopago/mercadopago-gateway.php:260
189
- msgid "Define which type of products your store sells."
190
- msgstr "Defina qual o tipo dos produtos que sua loja vende."
191
-
192
- #: mercadopago/mercadopago-custom-gateway.php:242 mercadopago/mercadopago-gateway.php:264
193
- msgid "Store Identificator"
194
- msgstr "Identificador da Loja"
195
-
196
- #: mercadopago/mercadopago-custom-gateway.php:244 mercadopago/mercadopago-gateway.php:266
197
- msgid "Please, inform a prefix to your store."
198
- msgstr "Por favor, informe um prefixo para sua loja."
199
-
200
- #: mercadopago/mercadopago-custom-gateway.php:244 mercadopago/mercadopago-gateway.php:266
201
- msgid "If you use your Mercado Pago account on multiple stores you should make sure that this prefix is unique as Mercado Pago will not allow orders with same identificators."
202
- msgstr "Se estiver usando sua conta Mercado Pago para múltiplas lojas então você deverá assegurar-se que este prefixo seja único pois o Mercado Pago não permitirá pedidos com um mesmo identificador."
203
-
204
- #: mercadopago/mercadopago-custom-gateway.php:248 mercadopago/mercadopago-gateway.php:318
205
- msgid "Test and Debug Options"
206
- msgstr "Opções de Teste e Debug"
207
-
208
- #: mercadopago/mercadopago-custom-gateway.php:253 mercadopago/mercadopago-gateway.php:323
209
- msgid "Mercado Pago Sandbox"
210
- msgstr "Sandbox Mercado Pago"
211
-
212
- #: mercadopago/mercadopago-custom-gateway.php:255 mercadopago/mercadopago-gateway.php:325
213
- msgid "Enable Mercado Pago Sandbox"
214
- msgstr "Habilitar o sandbox do Mercado Pago"
215
-
216
- #: mercadopago/mercadopago-custom-gateway.php:257 mercadopago/mercadopago-gateway.php:327
217
- msgid "This option allows you to test payments inside a sandbox environment."
218
- msgstr "Esta opção permite a você testar pagamentos em um ambiente sandbox."
219
-
220
- #: mercadopago/mercadopago-custom-gateway.php:260 mercadopago/mercadopago-gateway.php:330
221
- msgid "Debug and Log"
222
- msgstr "Debug e Log"
223
-
224
- #: mercadopago/mercadopago-custom-gateway.php:262 mercadopago/mercadopago-gateway.php:332
225
- msgid "Enable log"
226
- msgstr "Habilitar Log"
227
-
228
- #: mercadopago/mercadopago-custom-gateway.php:264 mercadopago/mercadopago-gateway.php:334
229
- msgid "Register event logs of Mercado Pago, such as API requests, in the file"
230
- msgstr "Registrar logs de eventos do Mercado Pago, como requisições à API, dentro do arquivo"
231
-
232
- #: mercadopago/mercadopago-custom-gateway.php:265 mercadopago/mercadopago-gateway.php:335
233
- msgid "File location: "
234
- msgstr "Local do arquivo: "
235
-
236
- #: mercadopago/mercadopago-custom-gateway.php:281 mercadopago/mercadopago-gateway.php:351
237
- #, php-format
238
- msgid "Please, rate us %s on WordPress.org and give your feedback to help improve this module!"
239
- msgstr "Por favor, avalie-nos com %s na WordPress.org e dê seu feedback para ajudar a melhorar este módulo!"
240
-
241
- #: mercadopago/mercadopago-custom-gateway.php:332
242
- msgid "Payment Method"
243
- msgstr "Método de Pagamento"
244
-
245
- #: mercadopago/mercadopago-custom-gateway.php:333
246
- msgid "Credit card number"
247
- msgstr "Número do cartão de crédito"
248
-
249
- #: mercadopago/mercadopago-custom-gateway.php:334
250
- msgid "Expiration month"
251
- msgstr "Mês de expiração"
252
-
253
- #: mercadopago/mercadopago-custom-gateway.php:335
254
- msgid "Expiration year"
255
- msgstr "Ano de expiração"
256
-
257
- #: mercadopago/mercadopago-custom-gateway.php:336
258
- msgid "Year"
259
- msgstr "Ano"
260
-
261
- #: mercadopago/mercadopago-custom-gateway.php:337
262
- msgid "Month"
263
- msgstr "Mês"
264
-
265
- #: mercadopago/mercadopago-custom-gateway.php:338
266
- msgid "Card holder name"
267
- msgstr "Nome do dono do cartão"
268
-
269
- #: mercadopago/mercadopago-custom-gateway.php:339
270
- msgid "Security code"
271
- msgstr "Código de segurança"
272
-
273
- #: mercadopago/mercadopago-custom-gateway.php:340
274
- msgid "Document Type"
275
- msgstr "Tipo de documento"
276
-
277
- #: mercadopago/mercadopago-custom-gateway.php:341
278
- msgid "Document number"
279
- msgstr "Número do documento"
280
-
281
- #: mercadopago/mercadopago-custom-gateway.php:342
282
- msgid "Issuer"
283
- msgstr "Emitente"
284
-
285
- #: mercadopago/mercadopago-custom-gateway.php:343
286
- msgid "Installments"
287
- msgstr "Parcelas"
288
-
289
- #: mercadopago/mercadopago-custom-gateway.php:347
290
- msgid "Parameter cardNumber can not be null/empty"
291
- msgstr "O campo [Número do cartão] não pode ser nulo/vazio"
292
-
293
- #: mercadopago/mercadopago-custom-gateway.php:348
294
- msgid "Invalid Card Number"
295
- msgstr "Número do cartão inválido"
296
-
297
- #: mercadopago/mercadopago-custom-gateway.php:350 mercadopago/mercadopago-custom-gateway.php:351 mercadopago/mercadopago-custom-gateway.php:352
298
- #: mercadopago/mercadopago-custom-gateway.php:353
299
- msgid "Invalid Expiration Date"
300
- msgstr "Data de expiração inválida"
301
-
302
- #: mercadopago/mercadopago-custom-gateway.php:355
303
- msgid "Parameter cardholderName can not be null/empty"
304
- msgstr "O campo [Nome do dono do cartão] não pode ser nulo/vazio"
305
-
306
- #: mercadopago/mercadopago-custom-gateway.php:356
307
- msgid "Invalid Card Holder Name"
308
- msgstr "Nome do dono do cartão inválido"
309
-
310
- #: mercadopago/mercadopago-custom-gateway.php:358
311
- msgid "Parameter securityCode can not be null/empty"
312
- msgstr "O campo [Código de segurança] não pode ser nulo/vazio"
313
-
314
- #: mercadopago/mercadopago-custom-gateway.php:359
315
- msgid "Invalid Security Code"
316
- msgstr "Código de segurança inválido"
317
-
318
- #: mercadopago/mercadopago-custom-gateway.php:361
319
- msgid "Parameter docType can not be null/empty"
320
- msgstr "O campo [Tipo do documento] não pode ser nulo/vazio"
321
-
322
- #: mercadopago/mercadopago-custom-gateway.php:362
323
- msgid "Invalid Document Type"
324
- msgstr "Tipo do documento inválido"
325
-
326
- #: mercadopago/mercadopago-custom-gateway.php:364
327
- msgid "Parameter docNumber can not be null/empty"
328
- msgstr "O campo [Número do documento] não pode ser nulo/vazio"
329
-
330
- #: mercadopago/mercadopago-custom-gateway.php:365
331
- msgid "Invalid Document Number"
332
- msgstr "Número do documento inválido"
333
-
334
- #: mercadopago/mercadopago-custom-gateway.php:367
335
- msgid "The parameter cardholder.document.subtype can not be null or empty"
336
- msgstr "O campo [Subtipo do documento] não pode ser nulo/vazio"
337
-
338
- #: mercadopago/mercadopago-custom-gateway.php:368
339
- msgid "Invalid Document Sub Type"
340
- msgstr "Subtipo do documento inválido"
341
-
342
- #: mercadopago/mercadopago-custom-gateway.php:370
343
- msgid "Parameter cardIssuerId can not be null/empty"
344
- msgstr "O campo [Emitente do cartão] não pode ser nulo/vazio"
345
-
346
- #: mercadopago/mercadopago-custom-gateway.php:402 mercadopago/mercadopago-custom-gateway.php:943 mercadopago/mercadopago-gateway.php:869
347
- msgid "Payment approved."
348
- msgstr "Pagamento aprovado."
349
-
350
- #: mercadopago/mercadopago-custom-gateway.php:416 mercadopago/mercadopago-custom-gateway.php:805
351
- msgid "Your payment is under review. In less than 1h, you should be notified by email."
352
- msgstr "Seu pagamento está sob análise. Em menos de 1h, você deverá ser notificado por email."
353
-
354
- #: mercadopago/mercadopago-custom-gateway.php:418
355
- msgid "Check your order resume"
356
- msgstr "Ver o resumo do pedido"
357
-
358
- #: mercadopago/mercadopago-custom-gateway.php:431
359
- msgid "Your payment was refused. You can try again."
360
- msgstr "Seu pagamento foi rejeitado. Você pode tentar novamente."
361
-
362
- #: mercadopago/mercadopago-custom-gateway.php:435 mercadopago/mercadopago-custom-gateway.php:819 mercadopago/mercadopago-gateway.php:460
363
- msgid "Click to try again"
364
- msgstr "Clique para tentar novamente"
365
-
366
- #: mercadopago/mercadopago-custom-gateway.php:455
367
- msgid "A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?"
368
- msgstr "Um problema ocorreu ao processar seu pagamento. Você tem certeza que preencheu corretamente todos os campos do formulário do checkout?"
369
-
370
- #: mercadopago/mercadopago-custom-gateway.php:544
371
- msgid "Shipping"
372
- msgstr "Método de envio"
373
-
374
- #: mercadopago/mercadopago-custom-gateway.php:545
375
- msgid "Shipping service used by store"
376
- msgstr "Serviço de envio usado pela loja"
377
-
378
- #: mercadopago/mercadopago-custom-gateway.php:721 mercadopago/mercadopago-gateway.php:649
379
- msgid "WooCommerce &gt; System Status &gt; Logs"
380
- msgstr "WooCommerce &gt; Status de Sistema &gt; Logs"
381
-
382
- #: mercadopago/mercadopago-custom-gateway.php:766 mercadopago/mercadopago-custom-gateway.php:779 mercadopago/mercadopago-gateway.php:694
383
- #: mercadopago/mercadopago-gateway.php:705
384
- msgid "Mercado Pago is Inactive"
385
- msgstr "O Mercado Pago está inativo"
386
-
387
- #: mercadopago/mercadopago-custom-gateway.php:769
388
- msgid "Your Mercado Pago credentials Public Key/Access Token appears to be misconfigured."
389
- msgstr "Suas credenciais Public Key/Access Token do Mercado Pago parecem estar desconfiguradas."
390
-
391
- #: mercadopago/mercadopago-custom-gateway.php:771 mercadopago/mercadopago-gateway.php:698
392
- msgid "Click here and configure!"
393
- msgstr "Clique aqui e configure!"
394
-
395
- #: mercadopago/mercadopago-custom-gateway.php:782 mercadopago/mercadopago-gateway.php:708
396
- msgid "The currency"
397
- msgstr "As moedas"
398
-
399
- #: mercadopago/mercadopago-custom-gateway.php:783 mercadopago/mercadopago-gateway.php:708
400
- msgid "is not supported. Supported currencies are: ARS, BRL, CLP, COP, MXN, VEF."
401
- msgstr "não são suportadas. As moedas suportadas são: ARS, BRL, CLP, COP, MXN, VEF."
402
-
403
- #: mercadopago/mercadopago-custom-gateway.php:797
404
- msgid "Peru"
405
- msgstr "Peru"
406
-
407
- #: mercadopago/mercadopago-custom-gateway.php:809
408
- msgid "Click to check your order"
409
- msgstr "Clique para ver o resumo do seu pedido"
410
-
411
- #: mercadopago/mercadopago-custom-gateway.php:814 mercadopago/mercadopago-gateway.php:457
412
- msgid "An error occurred when proccessing your payment. Please try again or contact us for assistence."
413
- msgstr "Um erro ocorreu ao processar seu pagamento. Por favor tente novamente ou nos contacte para assistência."
414
-
415
- #: mercadopago/mercadopago-custom-gateway.php:816
416
- msgid "Reason is: "
417
- msgstr "Causa: "
418
-
419
- #: mercadopago/mercadopago-custom-gateway.php:849 mercadopago/mercadopago-gateway.php:748
420
- msgid "Mercado Pago Request Failure"
421
- msgstr "Falha na Requisição do Mercado Pago"
422
-
423
- #: mercadopago/mercadopago-custom-gateway.php:918 mercadopago/mercadopago-gateway.php:822
424
- msgid "Payer email"
425
- msgstr "Email do pagador"
426
-
427
- #: mercadopago/mercadopago-custom-gateway.php:926 mercadopago/mercadopago-gateway.php:829
428
- msgid "Payment type"
429
- msgstr "Tipo de pagamento"
430
-
431
- #: mercadopago/mercadopago-custom-gateway.php:934 mercadopago/mercadopago-gateway.php:841
432
- msgid "Mercado Pago Payment ID"
433
- msgstr "ID de Pagamento do Mercado Pago"
434
-
435
- #: mercadopago/mercadopago-custom-gateway.php:950 mercadopago/mercadopago-gateway.php:875
436
- msgid "Customer haven't paid yet."
437
- msgstr "O cliente ainda não realizou o pagamento."
438
-
439
- #: mercadopago/mercadopago-custom-gateway.php:957 mercadopago/mercadopago-gateway.php:881
440
- msgid "Payment under review."
441
- msgstr "O pagamento está em revisão."
442
-
443
- #: mercadopago/mercadopago-custom-gateway.php:964 mercadopago/mercadopago-gateway.php:887
444
- msgid "The payment was refused. The customer can try again."
445
- msgstr "O pagamento foi recusado. O cliente pode tentar novamente."
446
-
447
- #: mercadopago/mercadopago-custom-gateway.php:971 mercadopago/mercadopago-gateway.php:893
448
- msgid "The payment was refunded to the customer."
449
- msgstr "O pagamento foi estornado ao cliente."
450
-
451
- #: mercadopago/mercadopago-custom-gateway.php:978 mercadopago/mercadopago-gateway.php:899
452
- msgid "The payment was cancelled."
453
- msgstr "O pagamento foi cancelado."
454
-
455
- #: mercadopago/mercadopago-custom-gateway.php:984 mercadopago/mercadopago-custom-gateway.php:990 mercadopago/mercadopago-gateway.php:904
456
- #: mercadopago/mercadopago-gateway.php:909
457
- msgid "The payment is under mediation or it was charged-back."
458
- msgstr "O pagamento está em mediação ou a compra não foi reconhecida pelo cliente."
459
-
460
- #: mercadopago/mercadopago-gateway.php:51
461
- msgid "Mercado Pago - Standard Checkout"
462
- msgstr "Mercado Pago - Checkout Padrão"
463
-
464
- #: mercadopago/mercadopago-gateway.php:148
465
- msgid "Select the payment methods that you <strong>don't</strong> want to receive with Mercado Pago."
466
- msgstr "Selecione os meios de pagamento que <strong>não</strong> gostaria de receber com o Mercado Pago."
467
-
468
- #: mercadopago/mercadopago-gateway.php:158 mercadopago/mercadopago-gateway.php:167
469
- msgid "Configure your Client_id and Client_secret to have access to more options."
470
- msgstr "Configure seu Client_id e Client_secret para ter acesso a mais opções."
471
-
472
- #: mercadopago/mercadopago-gateway.php:184 mercadopago/mercadopago-gateway.php:192 mercadopago/mercadopago-gateway.php:202
473
- msgid "This field should be an integer."
474
- msgstr "Este campo deve ser um número inteiro."
475
-
476
- #: mercadopago/mercadopago-gateway.php:187
477
- msgid "If your integration method is iFrame, please inform the payment iFrame width."
478
- msgstr "Se o seu método de integração é por iFrame, por favor informe a largura do layout."
479
-
480
- #: mercadopago/mercadopago-gateway.php:195
481
- msgid "If your integration method is iFrame, please inform the payment iFrame height."
482
- msgstr "Se o seu método de integração é por iFrame, por favor informe a altura do layout."
483
-
484
- #: mercadopago/mercadopago-gateway.php:205
485
- msgid "Select the max number of installments for your customers."
486
- msgstr "Selecione o número máximo de parcelas que sua loja oferece a seus clientes."
487
-
488
- #: mercadopago/mercadopago-gateway.php:213
489
- msgid "Enable Standard Checkout"
490
- msgstr "Habilitar o Checkout Padrão"
491
-
492
- #: mercadopago/mercadopago-gateway.php:224
493
- msgid "Insert your Mercado Pago Client_id."
494
- msgstr "Insira seu Client_id do Mercado Pago."
495
-
496
- #: mercadopago/mercadopago-gateway.php:231
497
- msgid "Insert your Mercado Pago Client_secret."
498
- msgstr "Insira seu Client_secret do Mercado Pago."
499
-
500
- #: mercadopago/mercadopago-gateway.php:270
501
- msgid "Integration Method"
502
- msgstr "Método de Integração"
503
-
504
- #: mercadopago/mercadopago-gateway.php:272
505
- msgid "Select how your clients should interact with Mercado Pago. Modal Window (inside your store), Redirect (Client is redirected to Mercado Pago), or iFrame (an internal window is embedded to the page layout)."
506
- msgstr "Selecione como seus clientes irão interagir com o Mercado Pago. Janela Modal (Dentro de sua loja), Redirecionamento (O cliente é redirecionado ao Mercado Pago), ou iFrame (Uma janela de pagamento é incorporada ao layout da página)."
507
-
508
- #: mercadopago/mercadopago-gateway.php:275
509
- msgid "iFrame"
510
- msgstr "iFrame"
511
-
512
- #: mercadopago/mercadopago-gateway.php:276
513
- msgid "Modal Window"
514
- msgstr "Janela Modal"
515
-
516
- #: mercadopago/mercadopago-gateway.php:277
517
- msgid "Redirect"
518
- msgstr "Redirecionamento"
519
-
520
- #: mercadopago/mercadopago-gateway.php:281
521
- msgid "iFrame Width"
522
- msgstr "Largura do iFrame"
523
-
524
- #: mercadopago/mercadopago-gateway.php:287
525
- msgid "iFrame Height"
526
- msgstr "Altura do iFrame"
527
-
528
- #: mercadopago/mercadopago-gateway.php:293
529
- msgid "Auto Return"
530
- msgstr "Auto Retorno"
531
-
532
- #: mercadopago/mercadopago-gateway.php:295
533
- msgid "Automatic Return After Payment"
534
- msgstr "Retorno com Redirecionamento Automático"
535
-
536
- #: mercadopago/mercadopago-gateway.php:297
537
- msgid "After the payment, client is automatically redirected."
538
- msgstr "Após a compra, o cliente é redirecionado automaticamente."
539
-
540
- #: mercadopago/mercadopago-gateway.php:300
541
- msgid "Payment Options"
542
- msgstr "Opções de Pagamento"
543
-
544
- #: mercadopago/mercadopago-gateway.php:305
545
- msgid "Max installments"
546
- msgstr "Número Máximo de Parcelamentos"
547
-
548
- #: mercadopago/mercadopago-gateway.php:311
549
- msgid "Exclude Payment Methods"
550
- msgstr "Excluir Métodos de Pagamento"
551
-
552
- #: mercadopago/mercadopago-gateway.php:428
553
- msgid "Thank you for your order. Please, proceed with your payment clicking in the bellow button."
554
- msgstr "Obrigado pela sua compra. Por favor, prossiga para a página de pagamento clicando no botão abaixo."
555
-
556
- #: mercadopago/mercadopago-gateway.php:436
557
- msgid "Cancel order &amp; Clear cart"
558
- msgstr "Cancelar &amp; Limpar carrinho"
559
-
560
- #: mercadopago/mercadopago-gateway.php:446
561
- msgid "Thank you for your order. Proceed with your payment completing the following information."
562
- msgstr "Obrigado pela sua compra. Prossiga com seu pagamento completando as informações abaixo."
563
-
564
- #: mercadopago/mercadopago-gateway.php:697
565
- msgid "Your Mercado Pago credentials Client_id/Client_secret appears to be misconfigured."
566
- msgstr "Suas credenciais Client_id/Client_secret do Mercado Pago parecem estar desconfiguradas."
567
-
568
- msgid " as it appears in your card ..."
569
- msgstr " como aparece no seu cartão ..."
570
-
571
- msgid "Done, your payment was accredited!"
572
- msgstr "Pronto, seu pagamento foi aprovado!"
573
-
574
- msgid "We are processing the payment. In less than an hour we will e-mail you the results."
575
- msgstr "Estamos processando seu pagamento. Em menos de uma hora você será notificado por email."
576
-
577
- msgid "We are processing the payment. In less than 2 business days we will tell you by e-mail whether it has accredited or we need more information."
578
- msgstr "Estamos processando seu pagamento. Em menos de 2 dias úteis você será notificado por email se o pagamento foi aprovado ou se são necessárias informações adicionais."
579
-
580
- msgid "Check the card number."
581
- msgstr "Verifique o número do cartão."
582
-
583
- msgid "Check the expiration date."
584
- msgstr "Verifique a data de expiração."
585
-
586
- msgid "Check the information."
587
- msgstr "Verifique as informações preenchidas."
588
-
589
- msgid "Check the security code."
590
- msgstr "Verifique o código de segurança informado."
591
-
592
- msgid "We could not process your payment."
593
- msgstr "Não foi possível processar seu pagamento."
594
-
595
- msgid "You must authorize the payment of your orders."
596
- msgstr "Você precisa autorizar o pagamento de seus pedidos."
597
-
598
- msgid "Call your card issuer to activate your card. The phone is on the back of your card."
599
- msgstr "Contacte o emissor de seu cartão para ativá-lo. O telefone está no verso do seu cartão."
600
-
601
- msgid "You already made a payment for that amount. If you need to repay, use another card or other payment method."
602
- msgstr "Você já realizou o pagamento para esse valor. Se precisa pagar novamente, use outro cartão ou outro método de pagamento."
603
-
604
- msgid "Your payment was rejected. Choose another payment method. We recommend cash."
605
- msgstr "Seu pagamento foi rejeitado. Escolha outro método de pagamento. Recomenda-se dinheiro."
606
-
607
- msgid "Your payment do not have sufficient funds."
608
- msgstr "Seu pagamento não possui fundos suficientes."
609
-
610
- msgid "Your payment does not process payments with selected installments."
611
- msgstr "Seu pagamento não pode processar o parcelamento selecionado."
612
-
613
- msgid "You have reached the limit of allowed attempts. Choose another card or another payment method."
614
- msgstr "Você atingiu o limite de tentativas permitidas. Escolha outro cartão ou outro método de pagamento."
615
-
616
- msgid "This payment method did not process the payment."
617
- msgstr "Este método de pagamento não pôde processar o seu pagamento."
618
-
619
- msgid "Mercado Pago - Ticket"
620
- msgstr "Mercado Pago - Boleto"
621
-
622
- msgid "Mercado Pago - Credit Card"
623
- msgstr "Mercado Pago - Cartão de Crédito"
624
-
625
- msgid "Ticket Options"
626
- msgstr "Opções do Boleto"
627
-
628
- msgid "Enable Ticket Payment Method"
629
- msgstr "Habilitar o Método de Pagamento por Boleto"
630
-
631
- msgid "Other Bank"
632
- msgstr "Outro Banco"
633
-
634
- msgid "Choose"
635
- msgstr "Escolha"
636
-
637
- msgid "A problem was occurred when processing your payment. Please, try again."
638
- msgstr "Um problema ocorreu ao processar seu pagamento. Por favor, tente novamente."
639
-
640
- msgid "Thank you for your order. Please, pay the ticket to get your order approved."
641
- msgstr "Obrigado pelo seu pedido. Por favor, pague o boleto para ter seu pedido aprovado."
642
-
643
- msgid "Waiting for the ticket payment."
644
- msgstr "Aguardando o pagamento do boleto."
645
-
646
- msgid "Print the Ticket"
647
- msgstr "Imprimir o boleto"
648
-
649
- msgid "To reprint the ticket click "
650
- msgstr "Para reimprimir o boleto clique "
651
-
652
- msgid "here"
653
- msgstr "aqui"
654
-
655
- msgid "Custom Checkout is Inactive"
656
- msgstr "O Checkout Customizado está Inativo"
657
-
658
- msgid "Standard Checkout is Inactive"
659
- msgstr "O Checkout Padrão está Inativo"
660
-
661
- msgid "Ticket is Inactive"
662
- msgstr "O Boleto está Inativo"
663
-
664
- msgid "Please, select the ticket issuer of your preference and then click "Place order" button. The ticket will be generated and you will be redirected to print it."
665
- msgstr "Por favor, selecione o emissor de sua preferência e clique no botão "FINALIZAR COMPRA". O boleto será gerado e você será redirecionado para imprimí-lo."
666
-
667
- msgid "Important: The order will be confirmed only after the payment approval."
668
- msgstr "Importante: O pedido só será confirmado após a aprovação do pagamento."
669
-
670
- msgid "Your Mercado Pago credential Access Token appears to be misconfigured."
671
- msgstr "Sua credencial Access Token do Mercado Pago parece estar desconfigurada."
672
-
673
- msgid "Your Card"
674
- msgstr "Seus Cartões"
675
-
676
- msgid "Other Cards"
677
- msgstr "Outros Cartões"
678
-
679
- msgid "Other Card"
680
- msgstr "Outro Cartão"
681
-
682
- msgid "ended in"
683
- msgstr "terminado em"
684
-
685
- msgid "Your site appears to not have SSL certification. SSL is a pre-requisite because the payment process is made in your server."
686
- msgstr "Seu site parece não possuir certificação SSL. SSL é um pré-requisito pois o processamento dos pagamentos é feito em seu servidor."
687
-
688
- msgid "<strong>ATTENTION: The currency"
689
- msgstr "<strong>ATENÇÃO: A moeda"
690
-
691
- msgid "defined in WooCommerce is different from the one used in your credentials country.<br>The currency for transactions in this payment method will be"
692
- msgstr "definida no WooCommerce é diferente da usada no país de suas credenciais.<br>A moeda para transações feitas por este meio de pagamento será"
693
-
694
- msgid "Currency conversions should be made outside this module.</strong><br><br>"
695
- msgstr "Conversões devem ser feitas fora deste módulo.</strong><br><br>"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
languages/woocommerce-mercadopago-module.pot DELETED
@@ -1,701 +0,0 @@
1
- # WordPress Blank Pot
2
- # Copyright (C) 2014 ...
3
- # This file is distributed under the GNU General Public License v2 or later.
4
- #, fuzzy
5
- msgid ""
6
- msgstr ""
7
- "Project-Id-Version: "
8
- "WordPress Blank Pot "
9
- "v1.0.0\n"
10
- "POT-Creation-Date: "
11
- "2016-03-04 17:44-0300\n"
12
- "PO-Revision-Date: \n"
13
- "Last-Translator: Your "
14
- "Name <you@example.com>\n"
15
- "Language-Team: Your Team "
16
- "<translations@example."
17
- "com>\n"
18
- "Report-Msgid-Bugs-To: "
19
- "Translator Name "
20
- "<translations@example."
21
- "com>\n"
22
- "MIME-Version: 1.0\n"
23
- "Content-Type: text/"
24
- "plain; charset=UTF-8\n"
25
- "Content-Transfer-"
26
- "Encoding: 8bit\n"
27
- "Plural-Forms: "
28
- "nplurals=2; plural=n != "
29
- "1;\n"
30
- "X-Textdomain-Support: "
31
- "yesX-Generator: Poedit "
32
- "1.6.4\n"
33
- "X-Poedit-SourceCharset: "
34
- "UTF-8\n"
35
- "X-Poedit-KeywordsList: "
36
- "__;_e;esc_html_e;"
37
- "esc_html_x:1,2c;"
38
- "esc_html__;esc_attr_e;"
39
- "esc_attr_x:1,2c;"
40
- "esc_attr__;_ex:1,2c;"
41
- "_nx:4c,1,2;"
42
- "_nx_noop:4c,1,2;_x:1,2c;"
43
- "_n:1,2;_n_noop:1,2;"
44
- "__ngettext:1,2;"
45
- "__ngettext_noop:1,2;_c,"
46
- "_nc:4c,1,2\n"
47
- "X-Poedit-Basepath: ..\n"
48
- "Language: en_US\n"
49
- "X-Generator: Poedit "
50
- "1.8.7\n"
51
- "X-Poedit-"
52
- "SearchPath-0: .\n"
53
-
54
- #. Description of the plugin/theme
55
- msgid "This is the <strong>oficial</strong> module of Mercado Pago for WooCommerce plugin. This module enables WooCommerce to use Mercado Pago as a payment Gateway for purchases made in your e-commerce store."
56
- msgstr ""
57
-
58
- #: mercadopago-module.php:66
59
- #, php-format
60
- msgid ""
61
- "Woo Mercado Pago Module "
62
- "depends on the "
63
- "last version of %s to "
64
- "execute!"
65
- msgstr ""
66
-
67
- #: mercadopago-module.php:110
68
- msgid "Settings"
69
- msgstr ""
70
-
71
- #: mercadopago/mercadopago-gateway.php:63
72
- msgid ""
73
- "This module enables "
74
- "WooCommerce to use "
75
- "Mercado Pago as payment "
76
- "method for purchases "
77
- "made in your virtual "
78
- "store."
79
- msgstr ""
80
-
81
- #: mercadopago/mercadopago-gateway.php:133
82
- msgid "Argentine"
83
- msgstr ""
84
-
85
- #: mercadopago/mercadopago-gateway.php:134
86
- msgid "Brazil"
87
- msgstr ""
88
-
89
- #: mercadopago/mercadopago-gateway.php:135
90
- msgid "Chile"
91
- msgstr ""
92
-
93
- #: mercadopago/mercadopago-gateway.php:136
94
- msgid "Colombia"
95
- msgstr ""
96
-
97
- #: mercadopago/mercadopago-gateway.php:137
98
- msgid "Mexico"
99
- msgstr ""
100
-
101
- #: mercadopago/mercadopago-gateway.php:138
102
- msgid "or"
103
- msgstr ""
104
-
105
- #: mercadopago/mercadopago-gateway.php:139
106
- msgid "Venezuela"
107
- msgstr ""
108
-
109
- #: mercadopago/mercadopago-gateway.php:154
110
- msgid ""
111
- "Select the payment "
112
- "methods that you "
113
- "<strong>don't</strong> "
114
- "want to receive with "
115
- "Mercado Pago."
116
- msgstr ""
117
-
118
- #: mercadopago/mercadopago-gateway.php:157
119
- msgid ""
120
- "Your credentials are "
121
- "<strong>valid</strong> "
122
- "for"
123
- msgstr ""
124
-
125
- #: mercadopago/mercadopago-gateway.php:164
126
- #: mercadopago/mercadopago-gateway.php:173
127
- msgid ""
128
- "Configure your Client_id "
129
- "and Client_secret to "
130
- "have access to more "
131
- "options."
132
- msgstr ""
133
-
134
- #: mercadopago/mercadopago-gateway.php:167
135
- #: mercadopago/mercadopago-gateway.php:176
136
- msgid ""
137
- "Your credentials are "
138
- "<strong>not valid</"
139
- "strong>!"
140
- msgstr ""
141
-
142
- #: mercadopago/mercadopago-gateway.php:190
143
- #: mercadopago/mercadopago-gateway.php:198
144
- #: mercadopago/mercadopago-gateway.php:208
145
- msgid ""
146
- "This field should be an "
147
- "integer."
148
- msgstr ""
149
-
150
- #: mercadopago/mercadopago-gateway.php:193
151
- msgid ""
152
- "If your integration "
153
- "method is iFrame, please "
154
- "inform the payment "
155
- "iFrame width."
156
- msgstr ""
157
-
158
- #: mercadopago/mercadopago-gateway.php:201
159
- msgid ""
160
- "If your integration "
161
- "method is iFrame, please "
162
- "inform the payment "
163
- "iFrame height."
164
- msgstr ""
165
-
166
- #: mercadopago/mercadopago-gateway.php:211
167
- msgid ""
168
- "Select the max number of "
169
- "installments for your "
170
- "customers."
171
- msgstr ""
172
-
173
- #: mercadopago/mercadopago-gateway.php:217
174
- msgid "Enable/Disable"
175
- msgstr ""
176
-
177
- #: mercadopago/mercadopago-gateway.php:219
178
- msgid ""
179
- "Enable Mercado Pago "
180
- "Module"
181
- msgstr ""
182
-
183
- #: mercadopago/mercadopago-gateway.php:223
184
- msgid ""
185
- "Mercado Pago Credentials"
186
- msgstr ""
187
-
188
- #: mercadopago/mercadopago-gateway.php:225
189
- msgid ""
190
- "You can obtain your "
191
- "credentials for"
192
- msgstr ""
193
-
194
- #: mercadopago/mercadopago-gateway.php:228
195
- msgid ""
196
- "Mercado Pago Client_id"
197
- msgstr ""
198
-
199
- #: mercadopago/mercadopago-gateway.php:230
200
- msgid ""
201
- "Insert your Mercado Pago "
202
- "Client_id."
203
- msgstr ""
204
-
205
- #: mercadopago/mercadopago-gateway.php:235
206
- msgid ""
207
- "Mercado Pago "
208
- "Client_secret"
209
- msgstr ""
210
-
211
- #: mercadopago/mercadopago-gateway.php:237
212
- msgid ""
213
- "Insert your Mercado Pago "
214
- "Client_secret."
215
- msgstr ""
216
-
217
- #: mercadopago/mercadopago-gateway.php:265
218
- msgid "Custom Checkout"
219
- msgstr ""
220
-
221
- #: mercadopago/mercadopago-gateway.php:267
222
- msgid "Enable Custom Checkout"
223
- msgstr ""
224
-
225
- #: mercadopago/mercadopago-gateway.php:269
226
- msgid "This option allows your store to present the custom/transparent checkout to your customers."
227
- msgstr ""
228
-
229
- #: mercadopago/mercadopago-gateway.php:242
230
- msgid ""
231
- "Instant Payment "
232
- "Notification (IPN) URL"
233
- msgstr ""
234
-
235
- #: mercadopago/mercadopago-gateway.php:244
236
- msgid ""
237
- "Your IPN URL to receive "
238
- "instant payment "
239
- "notifications is"
240
- msgstr ""
241
-
242
- #: mercadopago/mercadopago-gateway.php:247
243
- msgid "Checkout Options"
244
- msgstr ""
245
-
246
- #: mercadopago/mercadopago-gateway.php:252
247
- msgid "Title"
248
- msgstr ""
249
-
250
- #: mercadopago/mercadopago-gateway.php:254
251
- msgid ""
252
- "Title shown to the "
253
- "client in the checkout."
254
- msgstr ""
255
-
256
- #: mercadopago/mercadopago-gateway.php:258
257
- msgid "Description"
258
- msgstr ""
259
-
260
- #: mercadopago/mercadopago-gateway.php:260
261
- msgid ""
262
- "Description shown to the "
263
- "client in the checkout."
264
- msgstr ""
265
-
266
- #: mercadopago/mercadopago-gateway.php:261
267
- #: mercadopago/mercadopago-gateway.php:406
268
- msgid ""
269
- "Pay with Mercado Pago"
270
- msgstr ""
271
-
272
- #: mercadopago/mercadopago-gateway.php:264
273
- msgid "Store Category"
274
- msgstr ""
275
-
276
- #: mercadopago/mercadopago-gateway.php:266
277
- msgid ""
278
- "Define which type of "
279
- "products your store "
280
- "sells."
281
- msgstr ""
282
-
283
- #: mercadopago/mercadopago-gateway.php:270
284
- msgid "Store Identificator"
285
- msgstr ""
286
-
287
- #: mercadopago/mercadopago-gateway.php:272
288
- msgid ""
289
- "Please, inform a prefix "
290
- "to your store."
291
- msgstr ""
292
-
293
- #: mercadopago/mercadopago-gateway.php:272
294
- msgid ""
295
- "If you use your Mercado "
296
- "Pago account on multiple "
297
- "stores you should make "
298
- "sure that this prefix is "
299
- "unique as Mercado Pago "
300
- "will not allow orders "
301
- "with same identificators."
302
- msgstr ""
303
-
304
- #: mercadopago/mercadopago-gateway.php:276
305
- msgid "Integration Method"
306
- msgstr ""
307
-
308
- #: mercadopago/mercadopago-gateway.php:278
309
- msgid ""
310
- "Select how your clients "
311
- "should interact with "
312
- "Mercado Pago. Modal "
313
- "Window (inside your "
314
- "store), Redirect (Client "
315
- "is redirected to Mercado "
316
- "Pago), or iFrame (an "
317
- "internal window is "
318
- "embedded to the page "
319
- "layout)."
320
- msgstr ""
321
-
322
- #: mercadopago/mercadopago-gateway.php:281
323
- msgid "iFrame"
324
- msgstr ""
325
-
326
- #: mercadopago/mercadopago-gateway.php:282
327
- msgid "Modal Window"
328
- msgstr ""
329
-
330
- #: mercadopago/mercadopago-gateway.php:283
331
- msgid "Redirect"
332
- msgstr ""
333
-
334
- #: mercadopago/mercadopago-gateway.php:287
335
- msgid "iFrame Width"
336
- msgstr ""
337
-
338
- #: mercadopago/mercadopago-gateway.php:293
339
- msgid "iFrame Height"
340
- msgstr ""
341
-
342
- #: mercadopago/mercadopago-gateway.php:299
343
- msgid "Auto Return"
344
- msgstr ""
345
-
346
- #: mercadopago/mercadopago-gateway.php:301
347
- msgid ""
348
- "Automatic Return After "
349
- "Payment"
350
- msgstr ""
351
-
352
- #: mercadopago/mercadopago-gateway.php:303
353
- msgid ""
354
- "After the payment, "
355
- "client is automatically "
356
- "redirected."
357
- msgstr ""
358
-
359
- #: mercadopago/mercadopago-gateway.php:306
360
- msgid "Payment Options"
361
- msgstr ""
362
-
363
- #: mercadopago/mercadopago-gateway.php:311
364
- msgid "Max installments"
365
- msgstr ""
366
-
367
- #: mercadopago/mercadopago-gateway.php:339
368
- msgid "Payment with 2 Credit Card"
369
- msgstr ""
370
-
371
- #: mercadopago/mercadopago-gateway.php:341
372
- msgid "Enable payments with 2 credit cards"
373
- msgstr ""
374
-
375
- #: mercadopago/mercadopago-gateway.php:343
376
- msgid "Enable this option to let your customers use 2 credit cards to pay orders."
377
- msgstr ""
378
-
379
- #: mercadopago/mercadopago-gateway.php:317
380
- msgid ""
381
- "Exclude Payment Methods"
382
- msgstr ""
383
-
384
- #: mercadopago/mercadopago-gateway.php:324
385
- msgid ""
386
- "Test and Debug Options"
387
- msgstr ""
388
-
389
- #: mercadopago/mercadopago-gateway.php:329
390
- msgid ""
391
- "Mercado Pago Sandbox"
392
- msgstr ""
393
-
394
- #: mercadopago/mercadopago-gateway.php:331
395
- msgid ""
396
- "Enable Mercado Pago "
397
- "Sandbox"
398
- msgstr ""
399
-
400
- #: mercadopago/mercadopago-gateway.php:333
401
- msgid ""
402
- "This option allows you "
403
- "to test payments inside "
404
- "a sandbox environment."
405
- msgstr ""
406
-
407
- #: mercadopago/mercadopago-gateway.php:336
408
- msgid "Debug and Log"
409
- msgstr ""
410
-
411
- #: mercadopago/mercadopago-gateway.php:338
412
- msgid "Enable log"
413
- msgstr ""
414
-
415
- #: mercadopago/mercadopago-gateway.php:340
416
- #, php-format
417
- msgid ""
418
- "Register event logs of "
419
- "Mercado Pago, such as "
420
- "API requests, in the "
421
- "file"
422
- msgstr ""
423
-
424
- #: mercadopago/mercadopago-gateway.php:380
425
- #, php-format
426
- msgid "File location: "
427
- msgstr ""
428
-
429
- #: mercadopago/mercadopago-gateway.php:398
430
- #, php-format
431
- msgid "Please, rate us %s on WordPress.org and give your feedback to help improve this module!"
432
- msgstr ""
433
-
434
- #: mercadopago/mercadopago-gateway.php:402
435
- msgid ""
436
- "Thank you for your "
437
- "order. Please, proceed "
438
- "with your payment "
439
- "clicking in the bellow "
440
- "button."
441
- msgstr ""
442
-
443
- #: mercadopago/mercadopago-gateway.php:410
444
- msgid ""
445
- "Cancel order &amp; Clear "
446
- "cart"
447
- msgstr ""
448
-
449
- #: mercadopago/mercadopago-gateway.php:420
450
- msgid ""
451
- "Thank you for your "
452
- "order. Proceed with your "
453
- "payment completing the "
454
- "following information."
455
- msgstr ""
456
-
457
- #: mercadopago/mercadopago-gateway.php:431
458
- msgid ""
459
- "An error occurred when "
460
- "proccessing your "
461
- "payment. Please try "
462
- "again or contact us for "
463
- "assistence."
464
- msgstr ""
465
-
466
- #: mercadopago/mercadopago-gateway.php:434
467
- msgid "Click to try again"
468
- msgstr ""
469
-
470
- #: mercadopago/mercadopago-gateway.php:675
471
- #: mercadopago/mercadopago-gateway.php:686
472
- msgid ""
473
- "Mercado Pago is Inactive"
474
- msgstr ""
475
-
476
- #: mercadopago/mercadopago-gateway.php:678
477
- msgid ""
478
- "Your Mercado Pago "
479
- "credentials Client_id/"
480
- "Client_secret appears to "
481
- "be misconfigured."
482
- msgstr ""
483
-
484
- #: mercadopago/mercadopago-gateway.php:679
485
- msgid ""
486
- "Click here and configure!"
487
- msgstr ""
488
-
489
- #: mercadopago/mercadopago-gateway.php:689
490
- msgid "The currency"
491
- msgstr ""
492
-
493
- #: mercadopago/mercadopago-gateway.php:689
494
- msgid ""
495
- "is not supported. "
496
- "Supported currencies "
497
- "are: ARS, BRL, CLP, COP, "
498
- "MXN, USD, VEF."
499
- msgstr ""
500
-
501
- #: mercadopago/mercadopago-gateway.php:712
502
- msgid "WooCommerce &gt; System Status &gt; Logs"
503
- msgstr ""
504
-
505
- #: mercadopago/mercadopago-gateway.php:714
506
- msgid ""
507
- "Mercado Pago Request "
508
- "Failure"
509
- msgstr ""
510
-
511
- #: mercadopago/mercadopago-gateway.php:791
512
- msgid ""
513
- "Mercado Pago Transaction "
514
- "ID"
515
- msgstr ""
516
-
517
- #: mercadopago/mercadopago-gateway.php:798
518
- msgid "Payer email"
519
- msgstr ""
520
-
521
- #: mercadopago/mercadopago-gateway.php:805
522
- msgid "Payment type"
523
- msgstr ""
524
-
525
- #: mercadopago/mercadopago-gateway.php:810
526
- msgid "Payment approved."
527
- msgstr ""
528
-
529
- #: mercadopago/mercadopago-gateway.php:816
530
- msgid ""
531
- "Customer haven't paid "
532
- "yet."
533
- msgstr ""
534
-
535
- #: mercadopago/mercadopago-gateway.php:821
536
- msgid ""
537
- "Payment under review."
538
- msgstr ""
539
-
540
- #: mercadopago/mercadopago-gateway.php:826
541
- msgid ""
542
- "The payment was refused. "
543
- "The customer can try "
544
- "again."
545
- msgstr ""
546
-
547
- #: mercadopago/mercadopago-gateway.php:832
548
- msgid ""
549
- "The payment was refunded "
550
- "to the customer."
551
- msgstr ""
552
-
553
- #: mercadopago/mercadopago-gateway.php:838
554
- msgid ""
555
- "The payment was "
556
- "cancelled."
557
- msgstr ""
558
-
559
- #: mercadopago/mercadopago-gateway.php:843
560
- msgid "Mercado Pago Payment ID"
561
- msgstr ""
562
-
563
- #: mercadopago/mercadopago-gateway.php:843
564
- #: mercadopago/mercadopago-gateway.php:848
565
- msgid ""
566
- "The payment is under "
567
- "mediation or it was "
568
- "charged-back."
569
- msgstr ""
570
-
571
- msgid " as it appears in your card ..."
572
- msgstr ""
573
-
574
- msgid "Done, your payment was accredited!"
575
- msgstr ""
576
-
577
- msgid "We are processing the payment. In less than an hour we will e-mail you the results."
578
- msgstr ""
579
-
580
- msgid "We are processing the payment. In less than 2 business days we will tell you by e-mail whether it has accredited or we need more information."
581
- msgstr ""
582
-
583
- msgid "Check the card number."
584
- msgstr ""
585
-
586
- msgid "Check the expiration date."
587
- msgstr ""
588
-
589
- msgid "Check the information."
590
- msgstr ""
591
-
592
- msgid "Check the security code."
593
- msgstr ""
594
-
595
- msgid "We could not process your payment."
596
- msgstr ""
597
-
598
- msgid "You must authorize the payment of your orders."
599
- msgstr ""
600
-
601
- msgid "Call your card issuer to activate your card. The phone is on the back of your card."
602
- msgstr ""
603
-
604
- msgid "You already made a payment for that amount. If you need to repay, use another card or other payment method."
605
- msgstr ""
606
-
607
- msgid "Your payment was rejected. Choose another payment method. We recommend cash."
608
- msgstr ""
609
-
610
- msgid "Your payment do not have sufficient funds."
611
- msgstr ""
612
-
613
- msgid "Your payment does not process payments with selected installments."
614
- msgstr ""
615
-
616
- msgid "You have reached the limit of allowed attempts. Choose another card or another payment method."
617
- msgstr ""
618
-
619
- msgid "This payment method did not process the payment."
620
- msgstr ""
621
-
622
- msgid "Ticket"
623
- msgstr ""
624
-
625
- msgid "Mercado Pago - Ticket"
626
- msgstr ""
627
-
628
- msgid "Mercado Pago - Credit Card"
629
- msgstr ""
630
-
631
- msgid "Ticket Options"
632
- msgstr ""
633
-
634
- msgid "Enable Ticket Payment Method"
635
- msgstr ""
636
-
637
- msgid "Other Bank"
638
- msgstr ""
639
-
640
- msgid "Choose"
641
- msgstr ""
642
-
643
- msgid "A problem was occurred when processing your payment. Please, try again."
644
- msgstr ""
645
-
646
- msgid "Thank you for your order. Please, pay the ticket to get your order approved."
647
- msgstr ""
648
-
649
- msgid "Waiting for the ticket payment."
650
- msgstr ""
651
-
652
- msgid "Print the Ticket"
653
- msgstr ""
654
-
655
- msgid "To reprint the ticket click "
656
- msgstr ""
657
-
658
- msgid "here"
659
- msgstr ""
660
-
661
- msgid "Custom Checkout is Inactive"
662
- msgstr ""
663
-
664
- msgid "Standard Checkout is Inactive"
665
- msgstr ""
666
-
667
- msgid "Ticket is Inactive"
668
- msgstr ""
669
-
670
- msgid "Please, select the ticket issuer of your preference and then click "Place order" button. The ticket will be generated and you will be redirected to print it."
671
- msgstr ""
672
-
673
- msgid "Important: The order will be confirmed only after the payment approval."
674
- msgstr ""
675
-
676
- msgid "Your Mercado Pago credential Access Token appears to be misconfigured."
677
- msgstr ""
678
-
679
- msgid "Your Card"
680
- msgstr ""
681
-
682
- msgid "Other Cards"
683
- msgstr ""
684
-
685
- msgid "Other Card"
686
- msgstr ""
687
-
688
- msgid "ended in"
689
- msgstr ""
690
-
691
- msgid "Your site appears to not have SSL certification. SSL is a pre-requisite because the payment process is made in your server."
692
- msgstr ""
693
-
694
- msgid "<strong>ATTENTION: The currency"
695
- msgstr ""
696
-
697
- msgid "defined in WooCommerce is different from the one used in your credentials country.<br>The currency for transactions in this payment method will be"
698
- msgstr ""
699
-
700
- msgid "Currency conversions should be made outside this module.</strong><br><br>"
701
- msgstr ""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
mercadopago-module.php DELETED
@@ -1,128 +0,0 @@
1
- <?php
2
- /**
3
- * Plugin Name: Woo Mercado Pago Module
4
- * Plugin URI: https://github.com/mercadopago/cart-woocommerce
5
- * Description: This is the <strong>oficial</strong> module of Mercado Pago for WooCommerce plugin. This module enables WooCommerce to use Mercado Pago as a payment Gateway for purchases made in your e-commerce store.
6
- * Author: Mercado Pago
7
- * Author URI: https://www.mercadopago.com.br/developers/
8
- * Developer: Marcelo Tomio Hama / marcelo.hama@mercadolivre.com
9
- * Copyright: Copyright(c) MercadoPago [http://www.mercadopago.com]
10
- * Version: 2.0.4
11
- * License: http://www.gnu.org/licenses/gpl.html GPL version 2 or higher
12
- * Text Domain: woocommerce-mercadopago-module
13
- * Domain Path: /languages/
14
- */
15
-
16
- /**
17
- * Implementation references:
18
- * 1. https://docs.woothemes.com/document/payment-gateway-api/
19
- * 2. https://www.mercadopago.com.br/developers/en/api-docs/
20
- */
21
-
22
- // Exit if accessed directly
23
- if ( !defined( 'ABSPATH' ) ) {
24
- exit;
25
- }
26
-
27
- // Check if class is already loaded
28
- if ( !class_exists( 'WC_WooMercadoPago_Module' ) ) :
29
-
30
- // WooCommerce MercadoPago Module main class
31
- class WC_WooMercadoPago_Module {
32
-
33
- // Singleton design pattern
34
- protected static $instance = null;
35
- public static function initMercadoPagoGatewayClass() {
36
- if ( null == self::$instance ) {
37
- self::$instance = new self;
38
- }
39
- return self::$instance;
40
- }
41
-
42
- // Class constructor
43
- private function __construct() {
44
- // load plugin text domain
45
- add_action( 'init', array( $this, 'load_plugin_textdomain' ) );
46
- // verify if WooCommerce is already installed
47
- if ( class_exists( 'WC_Payment_Gateway' ) ) {
48
- include_once 'mercadopago/mercadopago-gateway.php';
49
- include_once 'mercadopago/mercadopago-custom-gateway.php';
50
- include_once 'mercadopago/mercadopago-ticket-gateway.php';
51
- add_filter( 'woocommerce_payment_gateways', array( $this, 'addGateway' ) );
52
- add_filter( 'woomercadopago_settings_link_' . plugin_basename( __FILE__ ), array( $this, 'woomercadopago_settings_link' ) );
53
- } else {
54
- add_action( 'admin_notices', array( $this, 'notifyWooCommerceMiss' ) );
55
- }
56
- }
57
-
58
- // As well as defining your class, you need to also tell WooCommerce (WC) that
59
- // it exists. Do this by filtering woocommerce_payment_gateways.
60
- public function addGateway( $methods ) {
61
- $methods[] = 'WC_WooMercadoPago_Gateway';
62
- $methods[] = 'WC_WooMercadoPagoCustom_Gateway';
63
- $methods[] = 'WC_WooMercadoPagoTicket_Gateway';
64
- return $methods;
65
- }
66
-
67
- // Places a warning error to notify user that WooCommerce is missing
68
- public function notifyWooCommerceMiss() {
69
- echo
70
- '<div class="error"><p>' . sprintf(
71
- __( 'Woo Mercado Pago Module depends on the last version of %s to execute!', 'woocommerce-mercadopago-module' ),
72
- '<a href="http://wordpress.org/extend/plugins/woocommerce/">' . 'WooCommerce' . '</a>'
73
- ) .
74
- '</p></div>';
75
- }
76
-
77
- // Multi-language plugin
78
- public function load_plugin_textdomain() {
79
- $locale = apply_filters( 'plugin_locale', get_locale(), 'woocommerce-mercadopago-module' );
80
- load_textdomain(
81
- 'woocommerce-mercadopago-module',
82
- trailingslashit(WP_LANG_DIR ) . 'woocommerce-mercadopago-module/woocommerce-mercadopago-module-' . $locale . '.mo'
83
- );
84
- load_plugin_textdomain( 'woocommerce-mercadopago-module', false, dirname( plugin_basename( __FILE__ ) ) . '/languages/' );
85
- }
86
-
87
- public static function woocommerceInstance() {
88
- if ( function_exists( 'WC' ) ) {
89
- return WC();
90
- } else {
91
- global $woocommerce;
92
- return $woocommerce;
93
- }
94
- }
95
-
96
- public static function getTemplatesPath() {
97
- return plugin_dir_path( __FILE__ ) . 'templates/';
98
- }
99
-
100
- }
101
-
102
- // Payment gateways should be created as additional plugins that hook into WooCommerce.
103
- // Inside the plugin, you need to create a class after plugins are loaded
104
- add_action( 'plugins_loaded', array( 'WC_WooMercadoPago_Module', 'initMercadoPagoGatewayClass' ), 0 );
105
-
106
- // Add settings link on plugin page
107
- function woomercadopago_settings_link( $links ) {
108
- $plugin_links = array();
109
- $plugin_links[] = '<a href="' . esc_url( admin_url(
110
- 'admin.php?page=wc-settings&tab=checkout&section=WC_WooMercadoPago_Gateway' ) ) . '">' .
111
- __( 'Standard Checkout', 'woocommerce-mercadopago-module' ) .
112
- '</a>';
113
- $plugin_links[] = '<a href="' . esc_url( admin_url(
114
- 'admin.php?page=wc-settings&tab=checkout&section=WC_WooMercadoPagoCustom_Gateway' ) ) . '">' .
115
- __( 'Custom Checkout', 'woocommerce-mercadopago-module' ) .
116
- '</a>';
117
- $plugin_links[] = '<a href="' . esc_url( admin_url(
118
- 'admin.php?page=wc-settings&tab=checkout&section=WC_WooMercadoPagoTicket_Gateway' ) ) . '">' .
119
- __( 'Ticket', 'woocommerce-mercadopago-module' ) .
120
- '</a>';
121
- return array_merge( $plugin_links, $links );
122
- }
123
- $plugin = plugin_basename( __FILE__ );
124
- add_filter( "plugin_action_links_$plugin", 'woomercadopago_settings_link' );
125
-
126
- endif;
127
-
128
- ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
mercadopago/css/woo-mercadopago-module.css DELETED
@@ -1,14 +0,0 @@
1
- .mp-btn, .ch-btn {
2
- background-color: #009ee3;
3
- border: 1px solid #009ee3;
4
- border-radius: 4px;
5
- color: #fff;
6
- display: inline-block;
7
- font-family: Arial,sans-serif;
8
- font-size: 18px;
9
- font-weight: normal;
10
- margin: 0;
11
- padding: 10px;
12
- text-align: center;
13
- width: 100%;
14
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
mercadopago/mercadopago-custom-gateway.php DELETED
@@ -1,1089 +0,0 @@
1
- <?php
2
- /**
3
- * Part of Woo Mercado Pago Module
4
- * Author - Mercado Pago
5
- * Developer - Marcelo Tomio Hama / marcelo.hama@mercadolivre.com
6
- * Copyright - Copyright(c) MercadoPago [http://www.mercadopago.com]
7
- * License - http://www.gnu.org/licenses/gpl.html GPL version 2 or higher
8
- */
9
-
10
- // This include Mercado Pago library SDK
11
- require_once "sdk/lib/mercadopago.php";
12
-
13
- // Extending from WooCommerce Payment Gateway class.
14
- // This extension implements the custom checkout.
15
- class WC_WooMercadoPagoCustom_Gateway extends WC_Payment_Gateway {
16
-
17
- // This array stores each banner image, depending on the country it belongs to or on
18
- // the type of checkout we use.
19
- private $banners_mercadopago_credit = array(
20
- "MLA" => 'MLA/credit_card.png',
21
- "MLB" => 'MLB/credit_card.png',
22
- "MCO" => 'MCO/credit_card.png',
23
- "MLC" => 'MLC/credit_card.png',
24
- "MPE" => 'MPE/credit_card.png',
25
- "MLV" => 'MLV/credit_card.png',
26
- "MLM" => 'MLM/credit_card.png'
27
- );
28
-
29
- // Sponsor ID array by country
30
- private $sponsor_id = array(
31
- "MLA" => '208682286',
32
- "MLB" => '208686191',
33
- "MCO" => '208687643',
34
- "MLC" => '208690789',
35
- "MPE" => '216998692',
36
- "MLV" => '208692735',
37
- "MLM" => '208692380'
38
- );
39
-
40
- // Required inherited method from WC_Payment_Gateway class: __construct.
41
- // Please check:
42
- // [https://docs.woothemes.com/wc-apidocs/class-WC_Payment_Gateway.html]
43
- // for documentation and further information.
44
- public function __construct() {
45
-
46
- // These fields are declared because we use them dinamically in our gateway class.
47
- $this->domain = get_site_url() . '/index.php';
48
- $this->site_id = null;
49
- $this->isTestUser = false;
50
- $this->store_categories_id = array();
51
- $this->store_categories_description = array();
52
-
53
- // Within your constructor, you should define the following variables.
54
- $this->id = 'woocommerce-mercadopago-custom-module';
55
- $this->method_title = __( 'Mercado Pago - Custom Checkout', 'woocommerce-mercadopago-module' );
56
- $this->method_description = '<img width="200" height="52" src="' .
57
- plugins_url( 'images/mplogo.png', plugin_dir_path( __FILE__ ) ) . '"><br><br>' . '<strong>' .
58
- wordwrap( __( 'This module enables WooCommerce to use Mercado Pago as payment method for purchases made in your virtual store.', 'woocommerce-mercadopago-module' ), 80, "\n" ) .
59
- '</strong>';
60
-
61
- // These fields are used in our Mercado Pago Module configuration page.
62
- $this->public_key = $this->get_option( 'public_key' );
63
- $this->access_token = $this->get_option( 'access_token' );
64
- $this->title = $this->get_option( 'title' );
65
- $this->description = $this->get_option( 'description' );
66
- $this->statement_descriptor = $this->get_option( 'statement_descriptor' );
67
- $this->binary_mode = $this->get_option( 'binary_mode' );
68
- $this->category_id = $this->get_option( 'category_id' );
69
- $this->invoice_prefix = $this->get_option( 'invoice_prefix', 'WC-' );
70
- $this->sandbox = $this->get_option( 'sandbox', false );
71
- $this->debug = $this->get_option( 'debug', false );
72
-
73
- // Render our configuration page and init/load fields.
74
- $this->init_form_fields();
75
- $this->init_settings();
76
-
77
- // Hook actions for WordPress.
78
- add_action( // Used by IPN to receive IPN incomings.
79
- 'woocommerce_api_wc_woomercadopagocustom_gateway',
80
- array($this, 'check_ipn_response')
81
- );
82
- add_action( // Used by IPN to process valid incomings.
83
- 'valid_mercadopagocustom_ipn_request',
84
- array($this, 'successful_request')
85
- );
86
- add_action( // Used in settings page to hook "save settings" action.
87
- 'woocommerce_update_options_payment_gateways_' . $this->id,
88
- array( $this, 'process_admin_options' )
89
- );
90
- add_action( // Scripts for custom checkout
91
- 'wp_enqueue_scripts',
92
- array( $this, 'customCheckoutScripts' )
93
- );
94
-
95
- // Verify if public_key or client_secret is empty.
96
- if ( ( empty( $this->public_key ) || empty( $this->access_token ) ) && $this->enabled == 'yes' ) {
97
- add_action( 'admin_notices', array( $this, 'credentialsMissingMessage' ) );
98
- }
99
-
100
- add_action( // Verify if SSL is supported.
101
- 'admin_notices', array( $this, 'checkSSLAbsence' )
102
- );
103
-
104
- // Logging and debug.
105
- if ( 'yes' == $this->debug ) {
106
- if ( class_exists( 'WC_Logger' ) ) {
107
- $this->log = new WC_Logger();
108
- } else {
109
- $this->log = WC_MercadoPago_Module::woocommerce_instance()->logger();
110
- }
111
- }
112
-
113
- }
114
-
115
- // Required inherited method from WC_Payment_Gateway class: init_form_fields.
116
- // Initialise Gateway settings form fields with a customized page.
117
- public function init_form_fields() {
118
-
119
- $api_secret_locale = sprintf(
120
- '<a href="https://www.mercadopago.com/mla/account/credentials?type=custom" target="_blank">%s</a>, ' .
121
- '<a href="https://www.mercadopago.com/mlb/account/credentials?type=custom" target="_blank">%s</a>, ' .
122
- '<a href="https://www.mercadopago.com/mlc/account/credentials?type=custom" target="_blank">%s</a>, ' .
123
- '<a href="https://www.mercadopago.com/mco/account/credentials?type=custom" target="_blank">%s</a>, ' .
124
- '<a href="https://www.mercadopago.com/mlm/account/credentials?type=custom" target="_blank">%s</a>, ' .
125
- '<a href="https://www.mercadopago.com/mpe/account/credentials?type=custom" target="_blank">%s</a> %s ' .
126
- '<a href="https://www.mercadopago.com/mlv/account/credentials?type=custom" target="_blank">%s</a>',
127
- __( 'Argentine', 'woocommerce-mercadopago-module' ),
128
- __( 'Brazil', 'woocommerce-mercadopago-module' ),
129
- __( 'Chile', 'woocommerce-mercadopago-module' ),
130
- __( 'Colombia', 'woocommerce-mercadopago-module' ),
131
- __( 'Mexico', 'woocommerce-mercadopago-module' ),
132
- __( 'Peru', 'woocommerce-mercadopago-module' ),
133
- __( 'or', 'woocommerce-mercadopago-module' ),
134
- __( 'Venezuela', 'woocommerce-mercadopago-module' )
135
- );
136
-
137
- // Trigger API to get payment methods and site_id, also validates public_key/access_token.
138
- if ( $this->validateCredentials() ) {
139
- try {
140
- $mp = new MP( $this->access_token );
141
- $get_request = $mp->get( "/users/me?access_token=" . $this->access_token );
142
- $this->isTestUser = in_array( 'test_user', $get_request[ 'response' ][ 'tags' ] );
143
- $this->site_id = $get_request[ 'response' ][ 'site_id' ];
144
- // checking the currency
145
- $this->credentials_message = "";
146
- if ( !$this->isSupportedCurrency() && 'yes' == $this->settings[ 'enabled' ] ) {
147
- $this->credentials_message .= '<img width="12" height="12" src="' .
148
- plugins_url( 'images/warning.png', plugin_dir_path( __FILE__ ) ) . '">' .
149
- ' ' . __( '<strong>ATTENTION: The currency', 'woocommerce-mercadopago-module' ) . ' ' . get_woocommerce_currency() .
150
- ' ' . __( 'defined in WooCommerce is different from the one used in your credentials country.<br>The currency for transactions in this payment method will be', 'woocommerce-mercadopago-module' ) .
151
- ' ' . $this->getCurrencyId( $this->site_id ) . ' (' . $this->getCountryName( $this->site_id ) . ').' .
152
- ' ' . __( 'Currency conversions should be made outside this module.</strong><br><br>', 'woocommerce-mercadopago-module' );
153
- }
154
- $this->credentials_message .= '<img width="12" height="12" src="' .
155
- plugins_url( 'images/check.png', plugin_dir_path( __FILE__ ) ) . '">' .
156
- ' ' . __( 'Your credentials are <strong>valid</strong> for', 'woocommerce-mercadopago-module' ) .
157
- ': ' . $this->getCountryName( $this->site_id ) . ' <img width="18.6" height="12" src="' .
158
- plugins_url( 'images/' . $this->site_id . '/' . $this->site_id . '.png', plugin_dir_path( __FILE__ ) ) . '"> ';
159
- } catch ( MercadoPagoException $e ) {
160
- $this->credentials_message = '<img width="12" height="12" src="' .
161
- plugins_url( 'images/error.png', plugin_dir_path( __FILE__ ) ) . '">' .
162
- ' ' . __( 'Your credentials are <strong>not valid</strong>!', 'woocommerce-mercadopago-module' );
163
- }
164
- } else {
165
- $this->credentials_message = '<img width="12" height="12" src="' .
166
- plugins_url( 'images/error.png', plugin_dir_path( __FILE__ ) ) . '">' .
167
- ' ' . __( 'Your credentials are <strong>not valid</strong>!', 'woocommerce-mercadopago-module' );
168
- }
169
-
170
- // Fills categoy selector. We do not need credentials to make this call.
171
- $categories = MPRestClient::get( array( "uri" => "/item_categories" ) );
172
- foreach ( $categories[ "response" ] as $category ) {
173
- array_push( $this->store_categories_id, str_replace( "_", " ", $category[ 'id' ] ) );
174
- array_push( $this->store_categories_description, str_replace( "_", " ", $category[ 'description' ] ) );
175
- }
176
-
177
- // This array draws each UI (text, selector, checkbox, label, etc).
178
- $this->form_fields = array(
179
- 'enabled' => array(
180
- 'title' => __( 'Enable/Disable', 'woocommerce-mercadopago-module' ),
181
- 'type' => 'checkbox',
182
- 'label' => __( 'Enable Custom Checkout', 'woocommerce-mercadopago-module' ),
183
- 'default' => 'yes'
184
- ),
185
- 'credentials_title' => array(
186
- 'title' => __( 'Mercado Pago Credentials', 'woocommerce-mercadopago-module' ),
187
- 'type' => 'title',
188
- 'description' => sprintf( '%s', $this->credentials_message ) . '<br>' . sprintf( __( 'You can obtain your credentials for', 'woocommerce-mercadopago-module' ) . ' %s.', $api_secret_locale )
189
- ),
190
- 'public_key' => array(
191
- 'title' => 'Public key',
192
- 'type' => 'text',
193
- 'description' => __( 'Insert your Mercado Pago Public key.', 'woocommerce-mercadopago-module' ),
194
- 'default' => '',
195
- 'required' => true
196
- ),
197
- 'access_token' => array(
198
- 'title' => 'Access token',
199
- 'type' => 'text',
200
- 'description' => __( 'Insert your Mercado Pago Access token.', 'woocommerce-mercadopago-module' ),
201
- 'default' => '',
202
- 'required' => true
203
- ),
204
- 'ipn_url' => array(
205
- 'title' => __( 'Instant Payment Notification (IPN) URL', 'woocommerce-mercadopago-module' ),
206
- 'type' => 'title',
207
- 'description' => sprintf( __( 'Your IPN URL to receive instant payment notifications is', 'woocommerce-mercadopago-module' ) . '<br>%s', '<code>' . $this->domain . '/woocommerce-mercadopago-module/?wc-api=WC_WooMercadoPagoCustom_Gateway' . '</code>.' )
208
- ),
209
- 'checkout_options_title' => array(
210
- 'title' => __( 'Checkout Options', 'woocommerce-mercadopago-module' ),
211
- 'type' => 'title',
212
- 'description' => ''
213
- ),
214
- 'title' => array(
215
- 'title' => __( 'Title', 'woocommerce-mercadopago-module' ),
216
- 'type' => 'text',
217
- 'description' => __( 'Title shown to the client in the checkout.', 'woocommerce-mercadopago-module' ),
218
- 'default' => __( 'Mercado Pago - Credit Card', 'woocommerce-mercadopago-module' )
219
- ),
220
- 'description' => array(
221
- 'title' => __( 'Description', 'woocommerce-mercadopago-module' ),
222
- 'type' => 'textarea',
223
- 'description' => __( 'Description shown to the client in the checkout.', 'woocommerce-mercadopago-module' ),
224
- 'default' => __( 'Pay with Mercado Pago', 'woocommerce-mercadopago-module' )
225
- ),
226
- 'statement_descriptor' => array(
227
- 'title' => __( 'Statement Descriptor', 'woocommerce-mercadopago-module' ),
228
- 'type' => 'text',
229
- 'description' => __( 'The description that will be shown in your customer\'s invoice.', 'woocommerce-mercadopago-module' ),
230
- 'default' => __( 'Mercado Pago', 'woocommerce-mercadopago-module' )
231
- ),
232
- 'binary_mode' => array(
233
- 'title' => __( 'Binary Mode', 'woocommerce-mercadopago-module' ),
234
- 'type' => 'checkbox',
235
- 'label' => __( 'Enable binary mode for checkout status', 'woocommerce-mercadopago-module' ),
236
- 'default' => 'no',
237
- 'description' => __( 'When charging a credit card, only [approved] or [reject] status will be taken.', 'woocommerce-mercadopago-module' )
238
- ),
239
- 'category_id' => array(
240
- 'title' => __( 'Store Category', 'woocommerce-mercadopago-module' ),
241
- 'type' => 'select',
242
- 'description' => __( 'Define which type of products your store sells.', 'woocommerce-mercadopago-module' ),
243
- 'options' => $this->store_categories_id
244
- ),
245
- 'invoice_prefix' => array(
246
- 'title' => __( 'Store Identificator', 'woocommerce-mercadopago-module' ),
247
- 'type' => 'text',
248
- 'description' => __( 'Please, inform a prefix to your store.', 'woocommerce-mercadopago-module' ) . ' ' . __( 'If you use your Mercado Pago account on multiple stores you should make sure that this prefix is unique as Mercado Pago will not allow orders with same identificators.', 'woocommerce-mercadopago-module' ),
249
- 'default' => 'WC-'
250
- ),
251
- 'testing' => array(
252
- 'title' => __( 'Test and Debug Options', 'woocommerce-mercadopago-module' ),
253
- 'type' => 'title',
254
- 'description' => ''
255
- ),
256
- 'sandbox' => array(
257
- 'title' => __( 'Mercado Pago Sandbox', 'woocommerce-mercadopago-module' ),
258
- 'type' => 'checkbox',
259
- 'label' => __( 'Enable Mercado Pago Sandbox', 'woocommerce-mercadopago-module' ),
260
- 'default' => 'no',
261
- 'description' => __( 'This option allows you to test payments inside a sandbox environment.', 'woocommerce-mercadopago-module' ),
262
- ),
263
- 'debug' => array(
264
- 'title' => __( 'Debug and Log', 'woocommerce-mercadopago-module' ),
265
- 'type' => 'checkbox',
266
- 'label' => __( 'Enable log', 'woocommerce-mercadopago-module' ),
267
- 'default' => 'no',
268
- 'description' => sprintf( __( 'Register event logs of Mercado Pago, such as API requests, in the file', 'woocommerce-mercadopago-module' ) .
269
- ' %s.', $this->buildLogPathString() . '.<br>' . __( 'File location: ', 'woocommerce-mercadopago-module' ) .
270
- '<code>wordpress/wp-content/uploads/wc-logs/' . $this->id . '-' . sanitize_file_name( wp_hash( $this->id ) ) . '.log</code>')
271
- )
272
- );
273
-
274
- }
275
-
276
- public function admin_options() {
277
- $this->validate_settings_fields();
278
- if ( count( $this->errors ) > 0 ) {
279
- $this->display_errors();
280
- return false;
281
- } else {
282
- echo wpautop( $this->method_description );
283
- ?>
284
- <p><a href="https://wordpress.org/support/view/plugin-reviews/woo-mercado-pago-module?filter=5#postform" target="_blank" class="button button-primary">
285
- <?php esc_html_e( sprintf( __( 'Please, rate us %s on WordPress.org and give your feedback to help improve this module!', 'woocommerce-mercadopago-module' ), '&#9733;&#9733;&#9733;&#9733;&#9733;' ) ); ?>
286
- </a></p>
287
- <table class="form-table">
288
- <?php $this->generate_settings_html(); ?>
289
- </table>
290
- <?php
291
- return true;
292
- }
293
- }
294
-
295
- /*
296
- * ========================================================================
297
- * CHECKOUT BUSINESS RULES
298
- * ========================================================================
299
- */
300
-
301
- public function customCheckoutScripts() {
302
- if ( is_checkout() && $this->is_available() ) {
303
- if ( !get_query_var( 'order-received' ) ) {
304
- wp_enqueue_style(
305
- 'woocommerce-mercadopago-style', plugins_url(
306
- 'assets/css/custom_checkout_mercadopago.css',
307
- plugin_dir_path( __FILE__ ) ) );
308
- wp_enqueue_script(
309
- 'woocommerce-mercadopago-v1',
310
- 'https://secure.mlstatic.com/sdk/javascript/v1/mercadopago.js' );
311
- }
312
- }
313
- }
314
-
315
- public function payment_fields() {
316
- $amount = $this->get_order_total();
317
-
318
- $parameters = array(
319
- 'public_key' => $this->public_key,
320
- 'site_id' => $this->site_id,
321
- 'images_path' => plugins_url( 'images/', plugin_dir_path( __FILE__ ) ),
322
- 'banner_path' => plugins_url( 'images/' .
323
- $this->banners_mercadopago_credit[ $this->site_id ], plugin_dir_path( __FILE__ ) ),
324
- 'amount' => $amount,
325
- 'form_labels' => array(
326
- "form" => array(
327
- 'label_other_bank' => __( "Other Bank", "woocommerce-mercadopago-module" ),
328
- 'label_choose' => __( "Choose", "woocommerce-mercadopago-module" ),
329
- "your_card" => __( "Your Card", 'woocommerce-mercadopago-module' ),
330
- "other_cards" => __( "Other Cards", 'woocommerce-mercadopago-module' ),
331
- "other_card" => __( "Other Card", 'woocommerce-mercadopago-module' ),
332
- "ended_in" => __( "ended in", 'woocommerce-mercadopago-module' ),
333
- "card_holder_placeholder" => __( " as it appears in your card ...", 'woocommerce-mercadopago-module' ),
334
- "payment_method" => __( "Payment Method", 'woocommerce-mercadopago-module' ),
335
- "credit_card_number" => __( "Credit card number", 'woocommerce-mercadopago-module' ),
336
- "expiration_month" => __( "Expiration month", 'woocommerce-mercadopago-module' ),
337
- "expiration_year" => __( "Expiration year", 'woocommerce-mercadopago-module' ),
338
- "year" => __( "Year", 'woocommerce-mercadopago-module' ),
339
- "month" => __( "Month", 'woocommerce-mercadopago-module' ),
340
- "card_holder_name" => __( "Card holder name", 'woocommerce-mercadopago-module' ),
341
- "security_code" => __( "Security code", 'woocommerce-mercadopago-module' ),
342
- "document_type" => __( "Document Type", 'woocommerce-mercadopago-module' ),
343
- "document_number" => __( "Document number", 'woocommerce-mercadopago-module' ),
344
- "issuer" => __( "Issuer", 'woocommerce-mercadopago-module' ),
345
- "installments" => __( "Installments", 'woocommerce-mercadopago-module' )
346
- ),
347
- "error" => array(
348
- //card number
349
- "205" => __( "Parameter cardNumber can not be null/empty", 'woocommerce-mercadopago-module' ),
350
- "E301" => __( "Invalid Card Number", 'woocommerce-mercadopago-module' ),
351
- //expiration date
352
- "208" => __( "Invalid Expiration Date", 'woocommerce-mercadopago-module' ),
353
- "209" => __( "Invalid Expiration Date", 'woocommerce-mercadopago-module' ),
354
- "325" => __( "Invalid Expiration Date", 'woocommerce-mercadopago-module' ),
355
- "326" => __( "Invalid Expiration Date", 'woocommerce-mercadopago-module' ),
356
- //card holder name
357
- "221" => __( "Parameter cardholderName can not be null/empty", 'woocommerce-mercadopago-module' ),
358
- "316" => __( "Invalid Card Holder Name", 'woocommerce-mercadopago-module' ),
359
- //security code
360
- "224" => __( "Parameter securityCode can not be null/empty", 'woocommerce-mercadopago-module' ),
361
- "E302" => __( "Invalid Security Code", 'woocommerce-mercadopago-module' ),
362
- //doc type
363
- "212" => __( "Parameter docType can not be null/empty", 'woocommerce-mercadopago-module' ),
364
- "322" => __( "Invalid Document Type", 'woocommerce-mercadopago-module' ),
365
- //doc number
366
- "214" => __( "Parameter docNumber can not be null/empty", 'woocommerce-mercadopago-module' ),
367
- "324" => __( "Invalid Document Number", 'woocommerce-mercadopago-module' ),
368
- //doc sub type
369
- "213" => __( "The parameter cardholder.document.subtype can not be null or empty", 'woocommerce-mercadopago-module' ),
370
- "323" => __( "Invalid Document Sub Type", 'woocommerce-mercadopago-module' ),
371
- //issuer
372
- "220" => __( "Parameter cardIssuerId can not be null/empty", 'woocommerce-mercadopago-module' )
373
- )
374
- )
375
- );
376
-
377
- try {
378
- if ( wp_get_current_user()->ID != 0 ) {
379
- $mp = new MP( $this->access_token );
380
- $logged_user_email = wp_get_current_user()->user_email;
381
- $customer = $mp->get_or_create_customer( $logged_user_email );
382
- $customer_cards = $customer[ 'cards' ];
383
- if ( 'yes' == $this->debug ) {
384
- $this->log->add( $this->id, $this->id .
385
- ': @[process_fields] - Logged user ' . $logged_user_email . ' cards: ' .
386
- json_encode( $customer_cards, JSON_PRETTY_PRINT ) );
387
- }
388
- $parameters[ 'customerId' ] = $customer[ 'id' ];
389
- $parameters[ 'customer_cards' ] = $customer_cards;
390
- } else {
391
- if ( 'yes' == $this->debug ) {
392
- $this->log->add( $this->id, $this->id .
393
- ': @[process_fields] - Logged user cards: user is not logged in' );
394
- }
395
- }
396
- } catch (Exception $e) {
397
- if ( 'yes' == $this->debug ) {
398
- $this->log->add( $this->id, $this->id .
399
- ': @[process_fields] - There is a problem when retrieving information for cards: ' .
400
- json_encode( array( "status" => $e->getCode(), "message" => $e->getMessage() ) )
401
- );
402
- }
403
- }
404
-
405
- wc_get_template(
406
- 'credit-card/payment-form.php',
407
- $parameters,
408
- 'woocommerce/mercadopago/',
409
- WC_WooMercadoPago_Module::getTemplatesPath()
410
- );
411
- }
412
-
413
- // This function is called after we clock on [place_order] button, and each field is passed to this
414
- // function through $_POST variable.
415
- public function process_payment( $order_id ) {
416
- $order = new WC_Order( $order_id );
417
- // we have got parameters from checkout page, now its time to charge the card
418
- if ( 'yes' == $this->debug ) {
419
- $this->log->add( $this->id, $this->id .
420
- ': @[process_payment] - Received [$_POST] from customer front-end page: ' .
421
- json_encode( $_POST, JSON_PRETTY_PRINT ) );
422
- }
423
- // Mexico country case
424
- if ( $_POST[ 'mercadopago_custom' ][ 'paymentMethodId' ] == "" || empty( $_POST[ 'mercadopago_custom' ][ 'paymentMethodId' ] ) ) {
425
- $_POST[ 'mercadopago_custom' ][ 'paymentMethodId' ] = $_POST[ 'mercadopago_custom' ][ 'paymentMethodSelector' ];
426
- }
427
- if ( isset( $_POST[ 'mercadopago_custom' ][ 'amount' ] ) && !empty( $_POST[ 'mercadopago_custom' ][ 'amount' ] ) &&
428
- isset( $_POST[ 'mercadopago_custom' ][ 'token' ] ) && !empty( $_POST[ 'mercadopago_custom' ][ 'token' ] ) &&
429
- isset( $_POST[ 'mercadopago_custom' ][ 'paymentMethodId' ] ) && !empty( $_POST[ 'mercadopago_custom' ][ 'paymentMethodId' ] ) &&
430
- isset( $_POST[ 'mercadopago_custom' ][ 'installments' ] ) && !empty( $_POST[ 'mercadopago_custom' ][ 'installments' ] ) && $_POST[ 'mercadopago_custom' ][ 'installments' ] != -1 ) {
431
- $post = $_POST;
432
- $response = $this->createUrl( $order, $post );
433
- if ( array_key_exists( 'status', $response ) ) {
434
- switch ( $response[ 'status' ] ) {
435
- case 'approved':
436
- WC()->cart->empty_cart();
437
- wc_add_notice(
438
- '<p>' . __( $this->getOrderStatus( 'accredited' ), 'woocommerce-mercadopago-module') . '</p>',
439
- 'notice'
440
- );
441
- $order->add_order_note(
442
- 'Mercado Pago: ' .
443
- __( 'Payment approved.', 'woocommerce-mercadopago-module' )
444
- );
445
- return array(
446
- 'result' => 'success',
447
- 'redirect' => $order->get_checkout_order_received_url()
448
- );
449
- break;
450
- case 'pending':
451
- // order approved/pending, we just redirect to the thankyou page
452
- return array(
453
- 'result' => 'success',
454
- 'redirect' => $order->get_checkout_order_received_url()
455
- );
456
- break;
457
- case 'in_process':
458
- // for pending, we don't know if the purchase will be made, so we must inform this status
459
- WC()->cart->empty_cart();
460
- wc_add_notice(
461
- '<p>' . __( $this->getOrderStatus( $response[ 'status_detail' ] ), 'woocommerce-mercadopago-module') . '</p>' .
462
- '<p><a class="button" href="' . esc_url( $order->get_checkout_order_received_url() ) . '">' .
463
- __( 'Check your order resume', 'woocommerce-mercadopago-module' ) .
464
- '</a></p>',
465
- 'notice'
466
- );
467
- return array(
468
- 'result' => 'success',
469
- 'redirect' => $order->get_checkout_payment_url( true )
470
- );
471
- break;
472
- case 'rejected':
473
- // if rejected is received, the order will not proceed until another payment try,
474
- // so we must inform this status
475
- wc_add_notice(
476
- '<p>' . __( 'Your payment was refused. You can try again.', 'woocommerce-mercadopago-module' ) .
477
- '<br>' . __( $this->getOrderStatus( $response[ 'status_detail' ] ), 'woocommerce-mercadopago-module') . '</p>' .
478
- '<p><a class="button" href="' . esc_url( $order->get_checkout_payment_url() ) . '">' .
479
- __( 'Click to try again', 'woocommerce-mercadopago-module' ) .
480
- '</a></p>',
481
- 'error'
482
- );
483
- return array(
484
- 'result' => 'success',
485
- 'redirect' => $order->get_checkout_payment_url( true )
486
- );
487
- break;
488
- case 'cancelled':
489
- case 'in_mediation':
490
- case 'charged-back':
491
- break;
492
- default:
493
- break;
494
- }
495
- }
496
- } else {
497
- // process when fields are imcomplete
498
- wc_add_notice(
499
- '<p>' . __( 'A problem was occurred when processing your payment. Are you sure you have correctly filled all information in the checkout form?', 'woocommerce-mercadopago-module' ) . '</p>',
500
- 'error'
501
- );
502
- }
503
- }
504
-
505
- protected function createUrl( $order, $post_from_form ) {
506
-
507
- $mp = new MP( $this->access_token );
508
- // Checks for sandbox mode
509
- if ( 'yes' == $this->sandbox ) {
510
- $mp->sandbox_mode( true );
511
- if ( 'yes' == $this->debug ) {
512
- $this->log->add( $this->id, $this->id . ': @[createUrl] - sandbox mode is enabled' );
513
- }
514
- } else {
515
- $mp->sandbox_mode( false );
516
- }
517
-
518
- // Creates the order parameters by checking the cart configuration
519
- $preferences = $this->createPreferences( $order, $post_from_form );
520
- try {
521
- // Create order preferences with Mercado Pago API request
522
- $checkout_info = $mp->post( "/v1/payments", json_encode( $preferences ) );
523
- if ( 'yes' == $this->debug ) {
524
- $this->log->add( $this->id, $this->id .
525
- ': @[createUrl] - Received [$checkout_info] from Mercado Pago API: ' .
526
- json_encode( $checkout_info, JSON_PRETTY_PRINT ) );
527
- }
528
- if ( is_wp_error( $checkout_info ) ||
529
- $checkout_info[ 'status' ] < 200 || $checkout_info[ 'status' ] >= 300 ) {
530
- if ( 'yes' == $this->debug ) {
531
- $this->log->add( $this->id, $this->id .
532
- ': @[createUrl] - payment creation failed with error: ' .
533
- $checkout_info[ 'response' ][ 'status' ] );
534
- }
535
- return false;
536
- } else {
537
- return $checkout_info[ 'response' ];
538
- }
539
- } catch ( MercadoPagoException $e ) {
540
- if ( 'yes' == $this->debug ) {
541
- $this->log->add( $this->id, $this->id .
542
- ': @[createUrl] - payment creation failed with exception: ' .
543
- json_encode( array( "status" => $e->getCode(), "message" => $e->getMessage() ) ) );
544
- }
545
- return false;
546
- }
547
-
548
- }
549
-
550
- private function createPreferences( $order, $post_from_form ) {
551
-
552
- // Here we build the array that contains ordered itens, from customer cart
553
- $items = array();
554
- $purchase_description = "";
555
- if ( sizeof( $order->get_items() ) > 0 ) {
556
- foreach ( $order->get_items() as $item ) {
557
- if ( $item['qty'] ) {
558
- $product = new WC_product( $item[ 'product_id' ] );
559
- $purchase_description =
560
- $purchase_description . ' ' .
561
- ( $product->post->post_title . ' x ' . $item[ 'qty' ] );
562
- array_push( $items, array(
563
- 'id' => $item[ 'product_id' ],
564
- 'title' => ( $product->post->post_title . ' x ' . $item[ 'qty' ] ),
565
- 'description' => (
566
- // This handles description width limit of Mercado Pago
567
- strlen( $product->post->post_content ) > 230 ?
568
- substr( $product->post->post_content, 0, 230 ) . "..." :
569
- $product->post->post_content
570
- ),
571
- 'picture_url' => $product->get_image(),
572
- 'category_id' => $this->store_categories_id[ $this->category_id ],
573
- 'quantity' => 1,
574
- 'unit_price' => (float) $item[ 'line_total' ] + (float) $item[ 'line_tax' ],
575
- ));
576
- }
577
- }
578
- }
579
-
580
- // Creates the shipment cost structure
581
- $shipping_cost = (float) $order->get_total_shipping();
582
- if ( $shipping_cost > 0 ) {
583
- $item = array(
584
- 'title' => $this->workaroundAmperSandBug( $this->workaroundAmperSandBug( $order->get_shipping_to_display() ) ),
585
- 'description' => __( 'Shipping service used by store', 'woocommerce-mercadopago-module' ),
586
- 'quantity' => 1,
587
- 'category_id' => $this->store_categories_id[ $this->category_id ],
588
- 'unit_price' => $shipping_cost
589
- );
590
- $items[] = $item;
591
- }
592
-
593
- // Discounts features
594
- /*
595
- $discounts = (double) $cart->getOrderTotal( true, Cart::ONLY_DISCOUNTS );
596
- if ( $discounts > 0 ) {
597
- $item = array(
598
- 'title' => 'Discount',
599
- 'description' => 'Discount provided by store',
600
- 'quantity' => 1,
601
- 'category_id' => Configuration::get( 'MERCADOPAGO_CATEGORY' ),
602
- 'unit_price' => - $discounts
603
- );
604
- $items[] = $item;
605
- }
606
- */
607
-
608
- // Build additional information from the customer data
609
- $payer_additional_info = array(
610
- 'first_name' => $order->billing_first_name,
611
- 'last_name' => $order->billing_last_name,
612
- //'registration_date' =>
613
- 'phone' => array(
614
- //'area_code' =>
615
- 'number' => $order->billing_phone
616
- ),
617
- 'address' => array(
618
- 'zip_code' => $order->billing_postcode,
619
- //'street_number' =>
620
- 'street_name' => $order->billing_address_1 . ' / ' .
621
- $order->billing_city . ' ' .
622
- $order->billing_state . ' ' .
623
- $order->billing_country
624
- )
625
- );
626
-
627
- // Create the shipment address information set
628
- $shipments = array(
629
- 'receiver_address' => array(
630
- 'zip_code' => $order->shipping_postcode,
631
- //'street_number' =>
632
- 'street_name' => $order->shipping_address_1 . ' ' .
633
- $order->shipping_address_2 . ' ' .
634
- $order->shipping_city . ' ' .
635
- $order->shipping_state . ' ' .
636
- $order->shipping_country,
637
- //'floor' =>
638
- 'apartment' => $order->shipping_address_2
639
- )
640
- );
641
-
642
- // The payment preference
643
- $payment_preference = array (
644
- 'transaction_amount' => (float) $post_from_form[ 'mercadopago_custom' ][ 'amount' ],
645
- 'token' => $post_from_form[ 'mercadopago_custom' ][ 'token' ],
646
- 'description' => $purchase_description,
647
- 'installments' => (int) $post_from_form[ 'mercadopago_custom' ][ 'installments' ],
648
- 'payment_method_id' => $post_from_form[ 'mercadopago_custom' ][ 'paymentMethodId' ],
649
- 'payer' => array(
650
- 'email' => $order->billing_email
651
- ),
652
- 'external_reference' => $this->invoice_prefix . $order->id,
653
- 'statement_descriptor' => $this->statement_descriptor,
654
- 'binary_mode' => ($this->binary_mode == "yes"),
655
- 'additional_info' => array(
656
- 'items' => $items,
657
- 'payer' => $payer_additional_info,
658
- 'shipments' => $shipments
659
- )
660
- );
661
-
662
- // Customer's Card Feature, add only it has issuer id
663
- if ( array_key_exists( 'token', $post_from_form[ 'mercadopago_custom' ] ) ) {
664
- $payment_preference[ 'metadata' ][ 'token' ] = $post_from_form[ 'mercadopago_custom' ][ 'token' ];
665
- if ( array_key_exists( 'issuer', $post_from_form[ 'mercadopago_custom' ] ) ) {
666
- if ( !empty( $post_from_form[ 'mercadopago_custom' ][ 'issuer' ] ) ) {
667
- $payment_preference[ 'issuer_id' ] = (integer) $post_from_form[ 'mercadopago_custom' ][ 'issuer' ];
668
- }
669
- }
670
- if ( !empty( $post_from_form[ 'mercadopago_custom' ][ 'CustomerId' ] ) ) {
671
- $payment_preference[ 'payer' ][ 'id' ] = $post_from_form[ 'mercadopago_custom' ][ 'CustomerId' ];
672
- }
673
- }
674
-
675
- // Do not set IPN url if it is a localhost!
676
- $notification_url = $this->domain . '/woocommerce-mercadopago-module/?wc-api=WC_WooMercadoPagoCustom_Gateway';
677
- if ( !strrpos( $notification_url, "localhost" ) ) {
678
- $payment_preference['notification_url'] = $this->workaroundAmperSandBug( $notification_url );
679
- }
680
-
681
- // Coupon Feature
682
- /*
683
- $mercadopago_coupon = isset( $post[ 'mercadopago_coupon' ] ) ? $post[ 'mercadopago_coupon' ] : "";
684
- if ( $mercadopago_coupon != "" ) {
685
- $coupon = $this->validCoupon( $mercadopago_coupon );
686
- if ( $coupon[ 'status' ] == 200 ) {
687
- $payment_preference[ 'campaign_id' ] = $coupon[ 'response' ][ 'id' ];
688
- $payment_preference[ 'coupon_amount' ] = (float) $coupon[ 'response' ][ 'coupon_amount' ];
689
- $payment_preference[ 'coupon_code' ] = strtoupper( $mercadopago_coupon );
690
- } else {
691
- PrestaShopLogger::addLog ( $coupon['response']['error'] . Tools::jsonEncode($coupon), MP_SDK::ERROR, 0 );
692
- $this->context->smarty->assign( array(
693
- 'message_error' => $coupon[ 'response' ][ 'error' ],
694
- 'version' => $this->getPrestashopVersion()
695
- ) );
696
- return $this->display ( __file__, '/views/templates/front/error_admin.tpl' );
697
- }
698
- }
699
- */
700
-
701
- if ( !$this->isTestUser ) {
702
- $preferences[ 'sponsor_id' ] = (int) ( $this->sponsor_id[ $this->site_id ] );
703
- }
704
-
705
- if ( 'yes' == $this->debug ) {
706
- $this->log->add( $this->id, $this->id .
707
- ': @[createPreferences] - Returning just created [$payment_preference] structure: ' .
708
- json_encode( $payment_preference, JSON_PRETTY_PRINT ) );
709
- }
710
-
711
- $payment_preference = apply_filters(
712
- 'woocommerce_mercadopago_module_custom_preferences',
713
- $payment_preference, $order
714
- );
715
- return $payment_preference;
716
-
717
- }
718
-
719
- public function checkAndSaveCustomerCard( $checkout_info ) {
720
- if ( 'yes' == $this->debug ) {
721
- $this->log->add( $this->id, $this->id .
722
- ': @[checkAndSaveCustomerCard] - Checking info to create card: ' .
723
- json_encode( $checkout_info, JSON_PRETTY_PRINT ) );
724
- }
725
- $custId = null;
726
- $token = null;
727
- $issuer_id = null;
728
- $payment_method_id = null;
729
- if ( isset( $checkout_info[ 'payer' ][ 'id' ] ) && !empty( $checkout_info[ 'payer' ][ 'id' ] ) ) {
730
- $custId = $checkout_info[ 'payer' ][ 'id' ];
731
- } else {
732
- return;
733
- }
734
- if ( isset( $checkout_info[ 'metadata' ][ 'token' ] ) && !empty( $checkout_info[ 'metadata' ][ 'token' ] ) ) {
735
- $token = $checkout_info[ 'metadata' ][ 'token' ];
736
- } else {
737
- return;
738
- }
739
- if ( isset( $checkout_info[ 'issuer_id' ] ) && !empty( $checkout_info[ 'issuer_id' ] ) ) {
740
- $issuer_id = (integer)( $checkout_info[ 'issuer_id' ] );
741
- }
742
- if ( isset( $checkout_info[ 'payment_method_id' ] ) && !empty( $checkout_info[ 'payment_method_id' ] ) ) {
743
- $payment_method_id = $checkout_info[ 'payment_method_id' ];
744
- }
745
- try {
746
- $mp = new MP( $this->access_token );
747
- $mp->create_card_in_customer( $custId, $token, $payment_method_id, $issuer_id );
748
- } catch ( MercadoPagoException $e ) {
749
- if ( 'yes' == $this->debug ) {
750
- $this->log->add( $this->id, $this->id .
751
- ': @[checkAndSaveCustomerCard] - card creation failed: ' .
752
- json_encode( array( "status" => $e->getCode(), "message" => $e->getMessage() ) ) );
753
- }
754
- }
755
- }
756
-
757
- /*
758
- * ========================================================================
759
- * AUXILIARY AND FEEDBACK METHODS
760
- * ========================================================================
761
- */
762
-
763
- // Fix to URL Problem : #038; replaces & and breaks the navigation
764
- function workaroundAmperSandBug( $link ) {
765
- return str_replace('&#038;', '&', $link);
766
- }
767
-
768
- // Check if we have valid credentials.
769
- public function validateCredentials() {
770
- if ( empty( $this->public_key ) ) return false;
771
- if ( empty( $this->access_token ) ) return false;
772
- if ( strlen( $this->public_key ) > 0 && strlen( $this->access_token ) > 0 ) {
773
- try {
774
- $mp = new MP( $this->access_token );
775
- return true;
776
- } catch ( MercadoPagoException $e ) {
777
- return false;
778
- }
779
- }
780
- return false;
781
- }
782
-
783
- // Build the string representing the path to the log file
784
- protected function buildLogPathString() {
785
- return '<a href="' . esc_url( admin_url( 'admin.php?page=wc-status&tab=logs&log_file=' .
786
- esc_attr( $this->id ) . '-' . sanitize_file_name( wp_hash( $this->id ) ) . '.log' ) ) . '">' .
787
- __( 'WooCommerce &gt; System Status &gt; Logs', 'woocommerce-mercadopago-module' ) . '</a>';
788
- }
789
-
790
- // Return boolean indicating if currency is supported.
791
- protected function isSupportedCurrency() {
792
- return get_woocommerce_currency() == $this->getCurrencyId( $this->site_id );
793
- }
794
-
795
- // Get currency id for a country
796
- protected function getCurrencyId( $site_id ) {
797
- switch ( $site_id ) {
798
- case 'MLA': return 'ARS';
799
- case 'MLB': return 'BRL';
800
- case 'MCO': return 'COP';
801
- case 'MLC': return 'CLP';
802
- case 'MLM': return 'MXN';
803
- case 'MLV': return 'VEF';
804
- case 'MPE': return 'PEN';
805
- default: return '';
806
- }
807
- }
808
-
809
- public function checkSSLAbsence() {
810
- if ( empty( $_SERVER[ 'HTTPS' ] ) || $_SERVER[ 'HTTPS' ] == 'off' ) {
811
- if ( 'yes' == $this->settings[ 'enabled' ] ) {
812
- echo '<div class="error"><p><strong>' .
813
- __( 'Custom Checkout is Inactive', 'woocommerce-mercadopago-module' ) .
814
- '</strong>: ' .
815
- sprintf(
816
- __( 'Your site appears to not have SSL certification. SSL is a pre-requisite because the payment process is made in your server.', 'woocommerce-mercadopago-module' )
817
- ) . '</p></div>';
818
- }
819
- }
820
- }
821
-
822
- // Called automatically by WooCommerce, verify if Module is available to use.
823
- public function is_available() {
824
- // check SSL connection, as we can't use normal http in custom checkout
825
- if ( empty( $_SERVER[ 'HTTPS' ] ) || $_SERVER[ 'HTTPS' ] == 'off' ) {
826
- return false;
827
- }
828
- $available = ( 'yes' == $this->settings[ 'enabled' ] ) &&
829
- !empty( $this->public_key ) &&
830
- !empty( $this->access_token );
831
- return $available;
832
- }
833
-
834
- // Get the URL to admin page.
835
- protected function admin_url() {
836
- if ( defined( 'WC_VERSION' ) && version_compare( WC_VERSION, '2.1', '>=' ) ) {
837
- return admin_url(
838
- 'admin.php?page=wc-settings&tab=checkout&section=wc_woomercadopagocustom_gateway'
839
- );
840
- }
841
- return admin_url(
842
- 'admin.php?page=woocommerce_settings&tab=payment_gateways&section=WC_WooMercadoPagoCustom_Gateway'
843
- );
844
- }
845
-
846
- // Notify that public_key and/or access_token are not valid.
847
- public function credentialsMissingMessage() {
848
- echo '<div class="error"><p><strong>' .
849
- __( 'Custom Checkout is Inactive', 'woocommerce-mercadopago-module' ) .
850
- '</strong>: ' .
851
- sprintf(
852
- __( 'Your Mercado Pago credentials Public Key/Access Token appears to be misconfigured.', 'woocommerce-mercadopago-module' ) . ' %s',
853
- '<a href="' . $this->admin_url() . '">' .
854
- __( 'Click here and configure!', 'woocommerce-mercadopago-module' ) . '</a>' ) .
855
- '</p></div>';
856
- }
857
-
858
- public function getCountryName( $site_id ) {
859
- $country = $site_id;
860
- switch ( $site_id ) {
861
- case 'MLA': return __( 'Argentine', 'woocommerce-mercadopago-module' );
862
- case 'MLB': return __( 'Brazil', 'woocommerce-mercadopago-module' );
863
- case 'MCO': return __( 'Colombia', 'woocommerce-mercadopago-module' );
864
- case 'MLC': return __( 'Chile', 'woocommerce-mercadopago-module' );
865
- case 'MLM': return __( 'Mexico', 'woocommerce-mercadopago-module' );
866
- case 'MLV': return __( 'Venezuela', 'woocommerce-mercadopago-module' );
867
- case 'MPE': return __( 'Peru', 'woocommerce-mercadopago-module' );
868
- }
869
- }
870
-
871
- public function getOrderStatus( $status_detail ) {
872
- switch ( $status_detail ) {
873
- case 'accredited':
874
- return __( 'Done, your payment was accredited!', 'woocommerce-mercadopago-module' );
875
- case 'pending_contingency':
876
- return __( 'We are processing the payment. In less than an hour we will e-mail you the results.', 'woocommerce-mercadopago-module' );
877
- case 'pending_review_manual':
878
- return __( 'We are processing the payment. In less than 2 business days we will tell you by e-mail whether it has accredited or we need more information.', 'woocommerce-mercadopago-module' );
879
- case 'cc_rejected_bad_filled_card_number':
880
- return __( 'Check the card number.', 'woocommerce-mercadopago-module' );
881
- case 'cc_rejected_bad_filled_date':
882
- return __( 'Check the expiration date.', 'woocommerce-mercadopago-module' );
883
- case 'cc_rejected_bad_filled_other':
884
- return __( 'Check the information.', 'woocommerce-mercadopago-module' );
885
- case 'cc_rejected_bad_filled_security_code':
886
- return __( 'Check the security code.', 'woocommerce-mercadopago-module' );
887
- case 'cc_rejected_blacklist':
888
- return __( 'We could not process your payment.', 'woocommerce-mercadopago-module' );
889
- case 'cc_rejected_call_for_authorize':
890
- return __( 'You must authorize the payment of your orders.', 'woocommerce-mercadopago-module' );
891
- case 'cc_rejected_card_disabled':
892
- return __( 'Call your card issuer to activate your card. The phone is on the back of your card.', 'woocommerce-mercadopago-module' );
893
- case 'cc_rejected_card_error':
894
- return __( 'We could not process your payment.', 'woocommerce-mercadopago-module' );
895
- case 'cc_rejected_duplicated_payment':
896
- return __( 'You already made a payment for that amount. If you need to repay, use another card or other payment method.', 'woocommerce-mercadopago-module' );
897
- case 'cc_rejected_high_risk':
898
- return __( 'Your payment was rejected. Choose another payment method. We recommend cash.', 'woocommerce-mercadopago-module' );
899
- case 'cc_rejected_insufficient_amount':
900
- return __( 'Your payment do not have sufficient funds.', 'woocommerce-mercadopago-module' );
901
- case 'cc_rejected_invalid_installments':
902
- return __( 'Your payment does not process payments with selected installments.', 'woocommerce-mercadopago-module' );
903
- case 'cc_rejected_max_attempts':
904
- return __( 'You have reached the limit of allowed attempts. Choose another card or another payment method.', 'woocommerce-mercadopago-module' );
905
- case 'cc_rejected_other_reason':
906
- return __( 'This payment method did not process the payment.', 'woocommerce-mercadopago-module' );
907
- default:
908
- return __( 'This payment method did not process the payment.', 'woocommerce-mercadopago-module' );
909
- }
910
- }
911
-
912
- /*
913
- * ========================================================================
914
- * IPN MECHANICS
915
- * ========================================================================
916
- */
917
-
918
- // This call checks any incoming notifications from Mercado Pago server.
919
- public function check_ipn_response() {
920
- @ob_clean();
921
- if ( 'yes' == $this->debug ) {
922
- $this->log->add( $this->id, $this->id .
923
- ': @[check_ipn_response] - Received _get content: ' .
924
- json_encode( $_GET, JSON_PRETTY_PRINT ) );
925
- }
926
- $data = $this->check_ipn_request_is_valid( $_GET );
927
- if ( $data ) {
928
- header( 'HTTP/1.1 200 OK' );
929
- do_action( 'valid_mercadopagocustom_ipn_request', $data );
930
- } else {
931
- if ( 'yes' == $this->debug ) {
932
- $this->log->add( $this->id, $this->id .
933
- ': @[check_ipn_response] - Mercado Pago Request Failure: ' .
934
- json_encode( $_GET, JSON_PRETTY_PRINT ) );
935
- }
936
- wp_die( __( 'Mercado Pago Request Failure', 'woocommerce-mercadopago-module' ) );
937
- }
938
- }
939
-
940
- // Get received data from IPN and checks if we have an associated
941
- // payment. If we have these information, we return data to be
942
- // processed by successful_request function.
943
- public function check_ipn_request_is_valid( $data ) {
944
- if ( !isset( $data[ 'data_id' ] ) || !isset( $data[ 'type' ] ) ) {
945
- if ( 'yes' == $this->debug ) {
946
- $this->log->add( $this->id, $this->id .
947
- ': @[check_ipn_request_is_valid] - data_id or type not set: ' .
948
- json_encode( $data, JSON_PRETTY_PRINT ) );
949
- }
950
- return false; // No ID? No process!
951
- }
952
- $mp = new MP( $this->access_token );
953
- if ( 'yes' == $this->sandbox )
954
- $mp->sandbox_mode( true );
955
- else
956
- $mp->sandbox_mode( false );
957
- try {
958
- $access_token = array( "access_token" => $mp->get_access_token() );
959
- if ( $data[ "type" ] == 'payment' ) {
960
- $payment_info = $mp->get( "/v1/payments/" . $data[ "data_id" ], $access_token, false );
961
- if ( !is_wp_error( $payment_info ) &&
962
- ( $payment_info[ "status" ] == 200 || $payment_info[ "status" ] == 201 ) ) {
963
- return $payment_info[ 'response' ];
964
- } else {
965
- if ( 'yes' == $this->debug ) {
966
- $this->log->add( $this->id, $this->id .
967
- ': @[check_ipn_request_is_valid] - error when processing received data: ' .
968
- json_encode( $payment_info, JSON_PRETTY_PRINT ) );
969
- }
970
- return false;
971
- }
972
- }
973
- } catch ( MercadoPagoException $e ) {
974
- if ( 'yes' == $this->debug ) {
975
- $this->log->add( $this->id, $this->id .
976
- ': @[check_ipn_request_is_valid] - MercadoPagoException: ' .
977
- json_encode( array( "status" => $e->getCode(), "message" => $e->getMessage() ) ) );
978
- }
979
- return false;
980
- }
981
- return true;
982
- }
983
-
984
- // Properly handles each case of notification, based in payment status.
985
- public function successful_request( $data ) {
986
- if ( 'yes' == $this->debug ) {
987
- $this->log->add( $this->id, $this->id .
988
- ': @[successful_request] - starting to process ipn update...' );
989
- }
990
- $order_key = $data[ 'external_reference' ];
991
- if ( !empty( $order_key ) ) {
992
- $order_id = (int) str_replace( $this->invoice_prefix, '', $order_key );
993
- $order = new WC_Order( $order_id );
994
- // Checks whether the invoice number matches the order, if true processes the payment
995
- if ( $order->id === $order_id ) {
996
- if ( 'yes' == $this->debug ) {
997
- $this->log->add( $this->id, $this->id .
998
- ': @[successful_request] - got order with ID ' . $order->id .
999
- ' and status ' . $data[ 'status' ] );
1000
- }
1001
- // Order details.
1002
- if ( !empty( $data[ 'payer' ][ 'email' ] ) ) {
1003
- update_post_meta(
1004
- $order_id,
1005
- __( 'Payer email',
1006
- 'woocommerce-mercadopago-module' ),
1007
- $data[ 'payer' ][ 'email' ]
1008
- );
1009
- }
1010
- if ( !empty( $data[ 'payment_type_id' ] ) ) {
1011
- update_post_meta(
1012
- $order_id,
1013
- __( 'Payment type',
1014
- 'woocommerce-mercadopago-module' ),
1015
- $data[ 'payment_type_id' ]
1016
- );
1017
- }
1018
- if ( !empty( $data ) ) {
1019
- update_post_meta(
1020
- $order_id,
1021
- __( 'Mercado Pago Payment ID',
1022
- 'woocommerce-mercadopago-module' ),
1023
- $data[ 'id' ]
1024
- );
1025
- }
1026
- // Switch the status and update in WooCommerce
1027
- switch ( $data[ 'status' ] ) {
1028
- case 'approved':
1029
- $order->add_order_note(
1030
- 'Mercado Pago: ' . __( 'Payment approved.',
1031
- 'woocommerce-mercadopago-module' )
1032
- );
1033
- $this->checkAndSaveCustomerCard( $data );
1034
- $order->payment_complete();
1035
- break;
1036
- case 'pending':
1037
- $order->add_order_note(
1038
- 'Mercado Pago: ' . __( 'Customer haven\'t paid yet.',
1039
- 'woocommerce-mercadopago-module' )
1040
- );
1041
- break;
1042
- case 'in_process':
1043
- $order->update_status(
1044
- 'on-hold',
1045
- 'Mercado Pago: ' . __( 'Payment under review.',
1046
- 'woocommerce-mercadopago-module' )
1047
- );
1048
- break;
1049
- case 'rejected':
1050
- $order->update_status(
1051
- 'failed',
1052
- 'Mercado Pago: ' . __( 'The payment was refused. The customer can try again.',
1053
- 'woocommerce-mercadopago-module' )
1054
- );
1055
- break;
1056
- case 'refunded':
1057
- $order->update_status(
1058
- 'refunded',
1059
- 'Mercado Pago: ' . __( 'The payment was refunded to the customer.',
1060
- 'woocommerce-mercadopago-module' )
1061
- );
1062
- break;
1063
- case 'cancelled':
1064
- $order->update_status(
1065
- 'cancelled',
1066
- 'Mercado Pago: ' . __( 'The payment was cancelled.',
1067
- 'woocommerce-mercadopago-module' )
1068
- );
1069
- break;
1070
- case 'in_mediation':
1071
- $order->add_order_note(
1072
- 'Mercado Pago: ' . __( 'The payment is under mediation or it was charged-back.',
1073
- 'woocommerce-mercadopago-module' )
1074
- );
1075
- break;
1076
- case 'charged-back':
1077
- $order->add_order_note(
1078
- 'Mercado Pago: ' . __( 'The payment is under mediation or it was charged-back.',
1079
- 'woocommerce-mercadopago-module' )
1080
- );
1081
- break;
1082
- default:
1083
- break;
1084
- }
1085
- }
1086
- }
1087
- }
1088
-
1089
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
mercadopago/mercadopago-gateway.php DELETED
@@ -1,981 +0,0 @@
1
- <?php
2
- /**
3
- * Part of Woo Mercado Pago Module
4
- * Author - Mercado Pago
5
- * Developer - Marcelo Tomio Hama / marcelo.hama@mercadolivre.com
6
- * Copyright - Copyright(c) MercadoPago [http://www.mercadopago.com]
7
- * License - http://www.gnu.org/licenses/gpl.html GPL version 2 or higher
8
- */
9
-
10
- // This include Mercado Pago library SDK
11
- require_once "sdk/lib/mercadopago.php";
12
-
13
- // Extending from WooCommerce Payment Gateway class.
14
- // This class implements Mercado Pago standard checkout.
15
- class WC_WooMercadoPago_Gateway extends WC_Payment_Gateway {
16
-
17
- // This array stores each banner image, depending on the country it belongs to or on
18
- // the type of checkout we use.
19
- private $banners_mercadopago_standard = array(
20
- "MLA" => 'MLA/standard_mla.jpg',
21
- "MLB" => 'MLB/standard_mlb.jpg',
22
- "MCO" => 'MCO/standard_mco.jpg',
23
- "MLC" => 'MLC/standard_mlc.gif',
24
- "MPE" => 'MPE/standard_mpe.png',
25
- "MLV" => 'MLV/standard_mlv.jpg',
26
- "MLM" => 'MLM/standard_mlm.jpg'
27
- );
28
-
29
- // Sponsor ID array by country
30
- private $sponsor_id = array(
31
- "MLA" => '208682286',
32
- "MLB" => '208686191',
33
- "MCO" => '208687643',
34
- "MLC" => '208690789',
35
- "MPE" => '216998692',
36
- "MLV" => '208692735',
37
- "MLM" => '208692380'
38
- );
39
-
40
- // Required inherited method from WC_Payment_Gateway class: __construct.
41
- // Please check:
42
- // [https://docs.woothemes.com/wc-apidocs/class-WC_Payment_Gateway.html]
43
- // for documentation and further information.
44
- public function __construct() {
45
-
46
- // These fields are declared because we use them dinamically in our gateway class.
47
- $this->domain = get_site_url() . '/index.php';
48
- $this->site_id = null;
49
- $this->isTestUser = false;
50
- $this->payment_methods = array();
51
- $this->store_categories_id = array();
52
- $this->store_categories_description = array();
53
-
54
- // Within your constructor, you should define the following variables.
55
- $this->id = 'woocommerce-mercadopago-module';
56
- $this->icon = apply_filters(
57
- 'woocommerce_mercadopago_icon',
58
- plugins_url( 'images/mercadopago.png', plugin_dir_path( __FILE__ ) )
59
- );
60
- $this->method_title = __( 'Mercado Pago - Standard Checkout', 'woocommerce-mercadopago-module' );
61
- $this->method_description = '<img width="200" height="52" src="' .
62
- plugins_url( 'images/mplogo.png', plugin_dir_path( __FILE__ ) ) . '"><br><br>' . '<strong>' .
63
- wordwrap( __( 'This module enables WooCommerce to use Mercado Pago as payment method for purchases made in your virtual store.', 'woocommerce-mercadopago-module' ), 80, "\n" ) .
64
- '</strong>';
65
-
66
- // These fields are used in our Mercado Pago Module configuration page.
67
- $this->client_id = $this->get_option( 'client_id' );
68
- $this->client_secret = $this->get_option( 'client_secret' );
69
- $this->title = $this->get_option( 'title' );
70
- $this->description = $this->get_option( 'description' );
71
- $this->category_id = $this->get_option( 'category_id' );
72
- $this->invoice_prefix = $this->get_option( 'invoice_prefix', 'WC-' );
73
- $this->method = $this->get_option( 'method', 'modal' );
74
- $this->iframe_width = $this->get_option( 'iframe_width', 640 );
75
- $this->iframe_height = $this->get_option( 'iframe_height', 800 );
76
- $this->auto_return = $this->get_option( 'auto_return', true );
77
- $this->installments = $this->get_option( 'installments', '24' );
78
- $this->ex_payments = $this->get_option( 'ex_payments', 'n/d' );
79
- $this->sandbox = $this->get_option('sandbox', false);
80
- $this->debug = $this->get_option('debug');
81
-
82
- // Render our configuration page and init/load fields.
83
- $this->init_form_fields();
84
- $this->init_settings();
85
-
86
- // Hook actions for WordPress.
87
- add_action( // Used by IPN to receive IPN incomings.
88
- 'woocommerce_api_wc_woomercadopago_gateway',
89
- array( $this, 'check_ipn_response' )
90
- );
91
- add_action( // Used by IPN to process valid incomings.
92
- 'valid_mercadopago_ipn_request',
93
- array( $this, 'successful_request' )
94
- );
95
- add_action( // Used by WordPress to render the custom checkout page.
96
- 'woocommerce_receipt_' . $this->id,
97
- array( $this, 'receipt_page' )
98
- );
99
- add_action( // Used to fix CSS in some older WordPress/WooCommerce versions.
100
- 'wp_head',
101
- array( $this, 'css' )
102
- );
103
- add_action( // Used in settings page to hook "save settings" action.
104
- 'woocommerce_update_options_payment_gateways_' . $this->id,
105
- array( $this, 'process_admin_options' )
106
- );
107
-
108
- // Verify if client_id or client_secret is empty.
109
- if ( empty( $this->client_id ) || empty( $this->client_secret ) ) {
110
- add_action( 'admin_notices', array( $this, 'clientIdOrSecretMissingMessage' ) );
111
- }
112
-
113
- // Logging and debug.
114
- if ( 'yes' == $this->debug ) {
115
- if ( class_exists( 'WC_Logger' ) ) {
116
- $this->log = new WC_Logger();
117
- } else {
118
- $this->log = WC_MercadoPago_Module::woocommerceInstance()->logger();
119
- }
120
- }
121
-
122
- }
123
-
124
- // Required inherited method from WC_Payment_Gateway class: init_form_fields.
125
- // Initialise Gateway settings form fields with a customized page.
126
- public function init_form_fields() {
127
-
128
- $api_secret_locale = sprintf(
129
- '<a href="https://www.mercadopago.com/mla/account/credentials?type=basic" target="_blank">%s</a>, ' .
130
- '<a href="https://www.mercadopago.com/mlb/account/credentials?type=basic" target="_blank">%s</a>, ' .
131
- '<a href="https://www.mercadopago.com/mlc/account/credentials?type=basic" target="_blank">%s</a>, ' .
132
- '<a href="https://www.mercadopago.com/mco/account/credentials?type=basic" target="_blank">%s</a>, ' .
133
- '<a href="https://www.mercadopago.com/mlm/account/credentials?type=basic" target="_blank">%s</a>, ' .
134
- '<a href="https://www.mercadopago.com/mpe/account/credentials?type=basic" target="_blank">%s</a> %s ' .
135
- '<a href="https://www.mercadopago.com/mlv/account/credentials?type=basic" target="_blank">%s</a>',
136
- __( 'Argentine', 'woocommerce-mercadopago-module' ),
137
- __( 'Brazil', 'woocommerce-mercadopago-module' ),
138
- __( 'Chile', 'woocommerce-mercadopago-module' ),
139
- __( 'Colombia', 'woocommerce-mercadopago-module' ),
140
- __( 'Mexico', 'woocommerce-mercadopago-module' ),
141
- __( 'Peru', 'woocommerce-mercadopago-module' ),
142
- __( 'or', 'woocommerce-mercadopago-module' ),
143
- __( 'Venezuela', 'woocommerce-mercadopago-module' )
144
- );
145
-
146
- // Trigger API to get payment methods and site_id, also validates Client_id/Client_secret.
147
- if ( $this->validateCredentials() ) {
148
- try {
149
- $mp = new MP( $this->client_id, $this->client_secret );
150
- $access_token = $mp->get_access_token();
151
- $get_request = $mp->get( "/users/me?access_token=" . $access_token );
152
- $this->isTestUser = in_array( 'test_user', $get_request[ 'response' ][ 'tags' ] );
153
- $this->site_id = $get_request[ 'response' ][ 'site_id' ];
154
- $payments = $mp->get( "/v1/payment_methods/?access_token=" . $access_token );
155
- array_push( $this->payment_methods, "n/d" );
156
- foreach ( $payments[ "response" ] as $payment ) {
157
- array_push( $this->payment_methods, str_replace( "_", " ", $payment[ 'id' ] ) );
158
- }
159
- $this->payment_desc =
160
- __( 'Select the payment methods that you <strong>don\'t</strong> want to receive with Mercado Pago.', 'woocommerce-mercadopago-module' );
161
- // checking the currency
162
- $this->credentials_message = "";
163
- if ( !$this->isSupportedCurrency() && 'yes' == $this->settings[ 'enabled' ] ) {
164
- $this->credentials_message .= '<img width="12" height="12" src="' .
165
- plugins_url( 'images/warning.png', plugin_dir_path( __FILE__ ) ) . '">' .
166
- ' ' . __( '<strong>ATTENTION: The currency', 'woocommerce-mercadopago-module' ) . ' ' . get_woocommerce_currency() .
167
- ' ' . __( 'defined in WooCommerce is different from the one used in your credentials country.<br>The currency for transactions in this payment method will be', 'woocommerce-mercadopago-module' ) .
168
- ' ' . $this->getCurrencyId( $this->site_id ) . ' (' . $this->getCountryName( $this->site_id ) . ').' .
169
- ' ' . __( 'Currency conversions should be made outside this module.</strong><br><br>', 'woocommerce-mercadopago-module' );
170
- }
171
- $this->credentials_message .= '<img width="12" height="12" src="' .
172
- plugins_url( 'images/check.png', plugin_dir_path( __FILE__ ) ) . '">' .
173
- ' ' . __( 'Your credentials are <strong>valid</strong> for', 'woocommerce-mercadopago-module' ) .
174
- ': ' . $this->getCountryName( $this->site_id ) . ' <img width="18.6" height="12" src="' .
175
- plugins_url( 'images/' . $this->site_id . '/' . $this->site_id . '.png', plugin_dir_path( __FILE__ ) ) . '"> ';
176
- } catch ( MercadoPagoException $e ) {
177
- array_push( $this->payment_methods, "n/d" );
178
- $this->payment_desc = '<img width="12" height="12" src="' .
179
- plugins_url( 'images/warning.png', plugin_dir_path( __FILE__ ) ) . '">' .
180
- ' ' . __( 'Configure your Client_id and Client_secret to have access to more options.', 'woocommerce-mercadopago-module' );
181
- $this->credentials_message = '<img width="12" height="12" src="' .
182
- plugins_url( 'images/error.png', plugin_dir_path( __FILE__ ) ) . '">' .
183
- ' ' . __( 'Your credentials are <strong>not valid</strong>!', 'woocommerce-mercadopago-module' );
184
- }
185
- } else {
186
- array_push( $this->payment_methods, "n/d" );
187
- $this->payment_desc = '<img width="12" height="12" src="' .
188
- plugins_url( 'images/warning.png', plugin_dir_path( __FILE__ ) ) . '">' .
189
- ' ' . __( 'Configure your Client_id and Client_secret to have access to more options.', 'woocommerce-mercadopago-module' );
190
- $this->credentials_message = '<img width="12" height="12" src="' .
191
- plugins_url( 'images/error.png', plugin_dir_path( __FILE__ ) ) . '">' .
192
- ' ' . __( 'Your credentials are <strong>not valid</strong>!', 'woocommerce-mercadopago-module' );
193
- }
194
-
195
- // Fills categoy selector. We do not need credentials to make this call.
196
- $categories = MPRestClient::get( array( "uri" => "/item_categories" ) );
197
- foreach ( $categories[ "response" ] as $category ) {
198
- array_push( $this->store_categories_id, str_replace( "_", " ", $category[ 'id' ] ) );
199
- array_push( $this->store_categories_description, str_replace( "_", " ", $category[ 'description' ] ) );
200
- }
201
-
202
- // Checks validity of iFrame width/height fields.
203
- if ( !is_numeric( $this->iframe_width ) ) {
204
- $this->iframe_width_desc = '<img width="12" height="12" src="' .
205
- plugins_url( 'images/warning.png', plugin_dir_path( __FILE__ ) ) . '">' .
206
- ' ' . __( 'This field should be an integer.', 'woocommerce-mercadopago-module' );
207
- } else {
208
- $this->iframe_width_desc =
209
- __( 'If your integration method is iFrame, please inform the payment iFrame width.', 'woocommerce-mercadopago-module' );
210
- }
211
- if ( !is_numeric( $this->iframe_height ) ) {
212
- $this->iframe_height_desc = '<img width="12" height="12" src="' .
213
- plugins_url( 'images/warning.png', plugin_dir_path( __FILE__ ) ) . '">' .
214
- ' ' . __( 'This field should be an integer.', 'woocommerce-mercadopago-module' );
215
- } else {
216
- $this->iframe_height_desc =
217
- __( 'If your integration method is iFrame, please inform the payment iFrame height.', 'woocommerce-mercadopago-module' );
218
- }
219
-
220
- // Checks if max installments is a number.
221
- if ( !is_numeric( $this->installments ) ) {
222
- $this->installments_desc = '<img width="12" height="12" src="' .
223
- plugins_url( 'images/warning.png', plugin_dir_path( __FILE__ ) ) . '">' .
224
- ' ' . __( 'This field should be an integer.', 'woocommerce-mercadopago-module' );
225
- } else {
226
- $this->installments_desc =
227
- __( 'Select the max number of installments for your customers.', 'woocommerce-mercadopago-module' );
228
- }
229
-
230
- // This array draws each UI (text, selector, checkbox, label, etc).
231
- $this->form_fields = array(
232
- 'enabled' => array(
233
- 'title' => __( 'Enable/Disable', 'woocommerce-mercadopago-module' ),
234
- 'type' => 'checkbox',
235
- 'label' => __( 'Enable Standard Checkout', 'woocommerce-mercadopago-module' ),
236
- 'default' => 'no'
237
- ),
238
- 'credentials_title' => array(
239
- 'title' => __( 'Mercado Pago Credentials', 'woocommerce-mercadopago-module' ),
240
- 'type' => 'title',
241
- 'description' => sprintf( '%s', $this->credentials_message ) . '<br>' . sprintf( __( 'You can obtain your credentials for', 'woocommerce-mercadopago-module' ) . ' %s.', $api_secret_locale )
242
- ),
243
- 'client_id' => array(
244
- 'title' => 'Client_id',
245
- 'type' => 'text',
246
- 'description' => __( 'Insert your Mercado Pago Client_id.', 'woocommerce-mercadopago-module' ),
247
- 'default' => '',
248
- 'required' => true
249
- ),
250
- 'client_secret' => array(
251
- 'title' => 'Client_secret',
252
- 'type' => 'text',
253
- 'description' => __( 'Insert your Mercado Pago Client_secret.', 'woocommerce-mercadopago-module' ),
254
- 'default' => '',
255
- 'required' => true
256
- ),
257
- 'ipn_url' => array(
258
- 'title' => __( 'Instant Payment Notification (IPN) URL', 'woocommerce-mercadopago-module' ),
259
- 'type' => 'title',
260
- 'description' => sprintf( __( 'Your IPN URL to receive instant payment notifications is', 'woocommerce-mercadopago-module' ) . '<br>%s', '<code>' . $this->domain . '/' . $this->id . '/?wc-api=WC_WooMercadoPago_Gateway' . '</code>.' )
261
- ),
262
- 'checkout_options_title' => array(
263
- 'title' => __( 'Checkout Options', 'woocommerce-mercadopago-module' ),
264
- 'type' => 'title',
265
- 'description' => ''
266
- ),
267
- 'title' => array(
268
- 'title' => __( 'Title', 'woocommerce-mercadopago-module' ),
269
- 'type' => 'text',
270
- 'description' => __( 'Title shown to the client in the checkout.', 'woocommerce-mercadopago-module' ),
271
- 'default' => __( 'Mercado Pago', 'woocommerce-mercadopago-module' )
272
- ),
273
- 'description' => array(
274
- 'title' => __( 'Description', 'woocommerce-mercadopago-module' ),
275
- 'type' => 'textarea',
276
- 'description' => __( 'Description shown to the client in the checkout.', 'woocommerce-mercadopago-module' ),
277
- 'default' => __( 'Pay with Mercado Pago', 'woocommerce-mercadopago-module' )
278
- ),
279
- 'category_id' => array(
280
- 'title' => __( 'Store Category', 'woocommerce-mercadopago-module' ),
281
- 'type' => 'select',
282
- 'description' => __( 'Define which type of products your store sells.', 'woocommerce-mercadopago-module' ),
283
- 'options' => $this->store_categories_id
284
- ),
285
- 'invoice_prefix' => array(
286
- 'title' => __( 'Store Identificator', 'woocommerce-mercadopago-module' ),
287
- 'type' => 'text',
288
- 'description' => __( 'Please, inform a prefix to your store.', 'woocommerce-mercadopago-module' ) . ' ' . __( 'If you use your Mercado Pago account on multiple stores you should make sure that this prefix is unique as Mercado Pago will not allow orders with same identificators.', 'woocommerce-mercadopago-module' ),
289
- 'default' => 'WC-'
290
- ),
291
- 'method' => array(
292
- 'title' => __( 'Integration Method', 'woocommerce-mercadopago-module' ),
293
- 'type' => 'select',
294
- 'description' => __( 'Select how your clients should interact with Mercado Pago. Modal Window (inside your store), Redirect (Client is redirected to Mercado Pago), or iFrame (an internal window is embedded to the page layout).', 'woocommerce-mercadopago-module' ),
295
- 'default' => 'iframe',
296
- 'options' => array(
297
- 'iframe' => __( 'iFrame', 'woocommerce-mercadopago-module' ),
298
- 'modal' => __( 'Modal Window', 'woocommerce-mercadopago-module' ),
299
- 'redirect' => __( 'Redirect', 'woocommerce-mercadopago-module' )
300
- )
301
- ),
302
- 'iframe_width' => array(
303
- 'title' => __( 'iFrame Width', 'woocommerce-mercadopago-module' ),
304
- 'type' => 'text',
305
- 'description' => $this->iframe_width_desc,
306
- 'default' => '640'
307
- ),
308
- 'iframe_height' => array(
309
- 'title' => __( 'iFrame Height', 'woocommerce-mercadopago-module' ),
310
- 'type' => 'text',
311
- 'description' => $this->iframe_height_desc,
312
- 'default' => '800'
313
- ),
314
- 'auto_return' => array(
315
- 'title' => __( 'Auto Return', 'woocommerce-mercadopago-module' ),
316
- 'type' => 'checkbox',
317
- 'label' => __( 'Automatic Return After Payment', 'woocommerce-mercadopago-module' ),
318
- 'default' => 'yes',
319
- 'description' => __( 'After the payment, client is automatically redirected.', 'woocommerce-mercadopago-module' ),
320
- ),
321
- 'testing_title' => array(
322
- 'title' => __( 'Payment Options', 'woocommerce-mercadopago-module' ),
323
- 'type' => 'title',
324
- 'description' => ''
325
- ),
326
- 'installments' => array(
327
- 'title' => __( 'Max installments', 'woocommerce-mercadopago-module' ),
328
- 'type' => 'text',
329
- 'description' => $this->installments_desc,
330
- 'default' => '24'
331
- ),
332
- 'ex_payments' => array(
333
- 'title' => __( 'Exclude Payment Methods', 'woocommerce-mercadopago-module' ),
334
- 'description' => $this->payment_desc,
335
- 'type' => 'multiselect',
336
- 'options' => $this->payment_methods,
337
- 'default' => ''
338
- ),
339
- 'testing' => array(
340
- 'title' => __( 'Test and Debug Options', 'woocommerce-mercadopago-module' ),
341
- 'type' => 'title',
342
- 'description' => ''
343
- ),
344
- 'sandbox' => array(
345
- 'title' => __( 'Mercado Pago Sandbox', 'woocommerce-mercadopago-module' ),
346
- 'type' => 'checkbox',
347
- 'label' => __( 'Enable Mercado Pago Sandbox', 'woocommerce-mercadopago-module' ),
348
- 'default' => 'no',
349
- 'description' => __( 'This option allows you to test payments inside a sandbox environment.', 'woocommerce-mercadopago-module' ),
350
- ),
351
- 'debug' => array(
352
- 'title' => __( 'Debug and Log', 'woocommerce-mercadopago-module' ),
353
- 'type' => 'checkbox',
354
- 'label' => __( 'Enable log', 'woocommerce-mercadopago-module' ),
355
- 'default' => 'no',
356
- 'description' => sprintf( __( 'Register event logs of Mercado Pago, such as API requests, in the file', 'woocommerce-mercadopago-module' ) .
357
- ' %s.', $this->buildLogPathString() . '.<br>' . __( 'File location: ', 'woocommerce-mercadopago-module' ) .
358
- '<code>wordpress/wp-content/uploads/wc-logs/' . $this->id . '-' . sanitize_file_name( wp_hash( $this->id ) ) . '.log</code>')
359
- )
360
- );
361
-
362
- }
363
-
364
- public function admin_options() {
365
- $this->validate_settings_fields();
366
- if ( count( $this->errors ) > 0 ) {
367
- $this->display_errors();
368
- return false;
369
- } else {
370
- echo wpautop( $this->method_description );
371
- ?>
372
- <p><a href="https://wordpress.org/support/view/plugin-reviews/woo-mercado-pago-module?filter=5#postform" target="_blank" class="button button-primary">
373
- <?php esc_html_e( sprintf( __( 'Please, rate us %s on WordPress.org and give your feedback to help improve this module!', 'woocommerce-mercadopago-module' ), '&#9733;&#9733;&#9733;&#9733;&#9733;' ) ); ?>
374
- </a></p>
375
- <table class="form-table">
376
- <?php $this->generate_settings_html(); ?>
377
- </table>
378
- <?php
379
- return true;
380
- }
381
- }
382
-
383
- /*
384
- * ========================================================================
385
- * CHECKOUT BUSINESS RULES
386
- * ========================================================================
387
- */
388
-
389
- public function payment_fields() {
390
- // standard checkout
391
- if ($description = $this->get_description() ) {
392
- echo wpautop( wptexturize( $description ) );
393
- }
394
- if ( $this->supports( 'default_credit_card_form' ) ) {
395
- $this->credit_card_form();
396
- }
397
- }
398
-
399
- // 1. First step occurs when the customer selects Mercado Pago and proceed to
400
- // checkout. This method verify which integration method was selected and
401
- // makes the build for the checkout URL.
402
- public function process_payment( $order_id ) {
403
- $order = new WC_Order( $order_id );
404
- // Check for the type of integration.
405
- if ( 'redirect' == $this->method ) {
406
- if ( 'yes' == $this->debug ) {
407
- $this->log->add( $this->id, $this->id . ': @[process_payment] - customer being redirected to Mercado Pago environment.' );
408
- }
409
- return array(
410
- 'result' => 'success',
411
- 'redirect' => $this->createUrl( $order )
412
- );
413
- } else if ( 'modal' == $this->method || 'iframe' == $this->method ) {
414
- if ( 'yes' == $this->debug ) {
415
- $this->log->add( $this->id, $this->id . ': @[process_payment] - preparing to render Mercado Pago checkout view.' );
416
- }
417
- if ( defined( 'WC_VERSION' ) && version_compare( WC_VERSION, '2.1', '>=' ) ) {
418
- return array(
419
- 'result' => 'success',
420
- 'redirect' => $order->get_checkout_payment_url( true )
421
- );
422
- } else {
423
- return array(
424
- 'result' => 'success',
425
- 'redirect' => add_query_arg( 'order', $order->id, add_query_arg( 'key', $order->order_key, get_permalink( woocommerce_get_page_id( 'pay' ) ) ) )
426
- );
427
- }
428
- }
429
- }
430
-
431
- // 2. Order page and this generates the form that shows the pay button. This step
432
- // generates the form to proceed to checkout.
433
- public function receipt_page( $order ) {
434
- echo $this->renderOrderForm( $order );
435
- }
436
- // --------------------------------------------------
437
- public function renderOrderForm( $order_id ) {
438
- $order = new WC_Order( $order_id );
439
- $url = $this->createUrl( $order );
440
- if ( $url ) {
441
- // Display checkout.
442
- $html =
443
- $this->iframe_width_desc = '<img width="468" height="60" src="' .
444
- plugins_url( 'images/' . $this->banners_mercadopago_standard[ $this->site_id ], plugin_dir_path( __FILE__ ) ) . '">';
445
- if ( 'iframe' != $this->method ) {
446
- if ( 'yes' == $this->debug ) {
447
- $this->log->add( $this->id, $this->id . ': @[renderOrderForm] - rendering Mercado Pago lightbox (modal window).' );
448
- }
449
- $html .= '<p></p><p>' . wordwrap(
450
- __( 'Thank you for your order. Please, proceed with your payment clicking in the bellow button.', 'woocommerce-mercadopago-module' ),
451
- 60, '<br>') . '</p>';
452
- $html .=
453
- '<a id="submit-payment" href="' . $url . '" name="MP-Checkout" class="button alt" mp-mode="modal">' .
454
- __( 'Pay with Mercado Pago', 'woocommerce-mercadopago-module' ) .
455
- '</a> ';
456
- $html .=
457
- '<a class="button cancel" href="' . esc_url( $order->get_cancel_order_url() ) . '">' .
458
- __( 'Cancel order &amp; Clear cart', 'woocommerce-mercadopago-module' ) .
459
- '</a><style type="text/css">#MP-Checkout-dialog #MP-Checkout-IFrame { bottom: -28px !important; height: 590px !important; }</style>';
460
- // Includes javascript.
461
- $html .=
462
- '<script type="text/javascript">(function(){function $MPBR_load(){window.$MPBR_loaded !== true && (function(){var s = document.createElement("script");s.type = "text/javascript";s.async = true;s.src = ("https:"==document.location.protocol?"https://www.mercadopago.com/org-img/jsapi/mptools/buttons/":"http://mp-tools.mlstatic.com/buttons/")+"render.js";var x = document.getElementsByTagName("script")[0];x.parentNode.insertBefore(s, x);window.$MPBR_loaded = true;})();}window.$MPBR_loaded !== true ? (window.attachEvent ? window.attachEvent("onload", $MPBR_load) : window.addEventListener("load", $MPBR_load, false)) : null;})();</script>';
463
- } else {
464
- if ( 'yes' == $this->debug ) {
465
- $this->log->add( $this->id, $this->id . ': @[renderOrderForm] - embedding Mercado Pago iFrame.' );
466
- }
467
- $html .= '<p></p><p>' . wordwrap(
468
- __( 'Thank you for your order. Proceed with your payment completing the following information.', 'woocommerce-mercadopago-module' ),
469
- 60, '<br>' ) . '</p>';
470
- $html .=
471
- '<iframe src="' . $url . '" name="MP-Checkout" ' .
472
- 'width="' . ( is_numeric( (int) $this->iframe_width ) ? $this->iframe_width : 640 ) . '" ' .
473
- 'height="' . ( is_numeric( (int) $this->iframe_height ) ? $this->iframe_height : 800 ) . '" ' .
474
- 'frameborder="0" scrolling="no" id="checkout_mercadopago"></iframe>';
475
- }
476
- return $html;
477
- } else {
478
- $html =
479
- '<p>' . __( 'An error occurred when proccessing your payment. Please try again or contact us for assistence.', 'woocommerce-mercadopago-module' ) . '</p>';
480
- $html .=
481
- '<a class="button" href="' . esc_url( $order->get_checkout_payment_url() ) . '">' .
482
- __( 'Click to try again', 'woocommerce-mercadopago-module' ) .
483
- '</a>';
484
- return $html;
485
- }
486
- }
487
-
488
- // 3. Create Mercado Pago preference and get init_point URL based in the
489
- // order options from the cart.
490
- public function buildPaymentPreference( $order ) {
491
-
492
- // Here we build the array that contains ordered itens, from customer cart
493
- $items = array();
494
- if ( sizeof( $order->get_items() ) > 0 ) {
495
- foreach ( $order->get_items() as $item ) {
496
- if ( $item['qty'] ) {
497
- $product = new WC_product( $item[ 'product_id' ] );
498
- array_push( $items, array(
499
- 'id' => $item[ 'product_id' ],
500
- 'title' => ( $product->post->post_title . ' x ' . $item[ 'qty' ] ),
501
- 'description' => (
502
- // This handles description width limit of Mercado Pago.
503
- strlen( $product->post->post_content ) > 230 ?
504
- substr( $product->post->post_content, 0, 230 ) . "..." :
505
- $product->post->post_content
506
- ),
507
- 'picture_url' => $product->get_image(),
508
- 'category_id' => $this->store_categories_id[ $this->category_id ],
509
- 'quantity' => 1,
510
- 'unit_price' => (float) $item[ 'line_total' ] + (float) $item[ 'line_tax' ],
511
- 'currency_id' => $this->getCurrencyId($this->site_id)
512
- ));
513
- }
514
- }
515
- // shipment cost as an item (workaround to prevent API showing shipment setup again)
516
- array_push($items, array(
517
- 'title' => $this->workaroundAmperSandBug( $this->workaroundAmperSandBug( $order->get_shipping_to_display() ) ),
518
- 'description' => __( 'Shipping service used by store', 'woocommerce-mercadopago-module' ),
519
- 'category_id' => $this->store_categories_id[$this->category_id],
520
- 'quantity' => 1,
521
- 'unit_price' => (float)$order->get_total_shipping(),
522
- 'currency_id' => $this->getCurrencyId($this->site_id)
523
- ));
524
- }
525
-
526
- // Find excluded payment methods. If 'n/d' is in array index, we should
527
- // disconsider the remaining values.
528
- $excluded_payment_methods = array();
529
- if ( is_array( $this->ex_payments ) || is_object( $this->ex_payments ) ) {
530
- try { // in some PHP versions, $this->ex_payments is interpreted as a not iterable object
531
- foreach ( $this->ex_payments as $excluded ) {
532
- if ( $excluded == 0 ) // if "n/d" is selected, we just not add any items to the array
533
- break;
534
- array_push( $excluded_payment_methods, array(
535
- "id" => $this->payment_methods[ $excluded ]
536
- ));
537
- }
538
- } catch ( MercadoPagoException $e ) {
539
- if ( 'yes' == $this->debug ) {
540
- $this->log->add(
541
- $this->id, $this->id .
542
- ': @[DEBUG] - excluded payments: exception caught: ' .
543
- json_encode( array( "status" => $e->getCode(), "message" => $e->getMessage() ) ) );
544
- }
545
- }
546
- }
547
- $payment_methods = array(
548
- 'installments' => ( is_numeric( (int) $this->installments) ? (int) $this->installments : 24 ),
549
- 'default_installments' => 1
550
- );
551
- // Set excluded payment methods.
552
- if ( count( $excluded_payment_methods ) > 0 ) {
553
- $payment_methods[ 'excluded_payment_methods' ] = $excluded_payment_methods;
554
- }
555
-
556
- // Create Mercado Pago preference.
557
- $preferences = array(
558
- 'items' => $items,
559
- // Payer should be filled with billing info because orders can be made with non-logged customers.
560
- 'payer' => array(
561
- 'name' => $order->billing_first_name,
562
- 'surname' => $order->billing_last_name,
563
- 'email' => $order->billing_email,
564
- 'phone' => array(
565
- 'number' => $order->billing_phone
566
- ),
567
- 'address' => array(
568
- 'street_name' => $order->billing_address_1 . ' / ' .
569
- $order->billing_city . ' ' .
570
- $order->billing_state . ' ' .
571
- $order->billing_country,
572
- 'zip_code' => $order->billing_postcode
573
- )
574
- ),
575
- 'back_urls' => array(
576
- 'success' => esc_url( $this->get_return_url( $order ) ),
577
- 'failure' => $this->workaroundAmperSandBug( str_replace( '&amp;', '&', $order->get_cancel_order_url() ) ),
578
- 'pending' => esc_url( $this->get_return_url( $order ) )
579
- ),
580
- //'marketplace' =>
581
- //'marketplace_fee' =>
582
- 'shipments' => array(
583
- //'cost' => (float) $order->get_total_shipping(),
584
- //'mode' =>
585
- 'receiver_address' => array(
586
- 'zip_code' => $order->shipping_postcode,
587
- //'street_number' =>
588
- 'street_name' => $order->shipping_address_1 . ' ' .
589
- $order->shipping_city . ' ' .
590
- $order->shipping_state . ' ' .
591
- $order->shipping_country,
592
- //'floor' =>
593
- 'apartment' => $order->shipping_address_2
594
- )
595
- ),
596
- 'payment_methods' => $payment_methods,
597
- 'notification_url' => $this->domain . '/' . $this->id . '/?wc-api=WC_WooMercadoPago_Gateway',
598
- 'external_reference' => $this->invoice_prefix . $order->id
599
- //'additional_info' => $order->customer_message
600
- //'expires' =>
601
- //'expiration_date_from' =>
602
- //'expiration_date_to' =>
603
- );
604
- // Set sponsor ID
605
- if ( !$this->isTestUser ) {
606
- $preferences[ 'sponsor_id' ] = (int) ( $this->sponsor_id[ $this->site_id ] );
607
- }
608
- // Auto return options.
609
- if ( 'yes' == $this->auto_return ) {
610
- $preferences[ 'auto_return' ] = "approved";
611
- }
612
- if ( 'yes' == $this->debug ) {
613
- $this->log->add(
614
- $this->id, $this->id .
615
- ': @[buildPaymentPreference] - requesting mercado pago preference creation with following structure: ' .
616
- json_encode( $preferences, JSON_PRETTY_PRINT ) );
617
- }
618
- $preferences = apply_filters( 'woocommerce_mercadopago_module_preferences', $preferences, $order );
619
- return $preferences;
620
- }
621
- // --------------------------------------------------
622
- protected function createUrl( $order ) {
623
- // Creates the order parameters by checking the cart configuration.
624
- $preferences = $this->buildPaymentPreference( $order );
625
- $mp = new MP( $this->client_id, $this->client_secret );
626
- // Checks for sandbox mode.
627
- if ( 'yes' == $this->sandbox ) {
628
- $mp->sandbox_mode( true );
629
- if ( 'yes' == $this->debug ) {
630
- $this->log->add( $this->id, $this->id . ': @[createUrl] - sandbox mode is enabled' );
631
- }
632
- } else {
633
- $mp->sandbox_mode( false );
634
- }
635
- // Create order preferences with Mercado Pago API request.
636
- try {
637
- $checkout_info = $mp->create_preference( json_encode( $preferences ) );
638
- if ( is_wp_error( $checkout_info ) || $checkout_info[ 'status' ] < 200 || $checkout_info[ 'status' ] >= 300 ) {
639
- if ( 'yes' == $this->debug ) {
640
- $this->log->add( $this->id, $this->id . ': @[createUrl] - payment creation failed with error: ' . $checkout_info[ 'response' ][ 'status' ] );
641
- }
642
- return false;
643
- } else {
644
- if ( 'yes' == $this->debug ) {
645
- $this->log->add( $this->id, $this->id .
646
- ': @[createUrl] - payment link generated with success from mercado pago, with structure as follow: ' .
647
- json_encode( $checkout_info, JSON_PRETTY_PRINT ) );
648
- }
649
- if ( 'yes' == $this->sandbox ) {
650
- return $checkout_info[ 'response' ][ 'sandbox_init_point' ];
651
- } else {
652
- return $checkout_info[ 'response' ][ 'init_point' ];
653
- }
654
- }
655
- } catch ( MercadoPagoException $e ) {
656
- if ( 'yes' == $this->debug ) {
657
- $this->log->add(
658
- $this->id, $this->id .
659
- ': @[createUrl] - payment creation failed with exception: ' .
660
- json_encode( array( "status" => $e->getCode(), "message" => $e->getMessage() ) ) );
661
- }
662
- return false;
663
- }
664
- }
665
-
666
- /*
667
- * ========================================================================
668
- * AUXILIARY AND FEEDBACK METHODS
669
- * ========================================================================
670
- */
671
-
672
- // Fix to URL Problem : #038; replaces & and breaks the navigation
673
- function workaroundAmperSandBug( $link ) {
674
- return str_replace('&#038;', '&', $link);
675
- }
676
-
677
- // Check if we have valid credentials.
678
- public function validateCredentials() {
679
- if ( empty( $this->client_id ) ) return false;
680
- if ( empty( $this->client_secret ) ) return false;
681
- if ( strlen( $this->client_id ) > 0 && strlen( $this->client_secret ) > 0 ) {
682
- try {
683
- $mp = new MP( $this->client_id, $this->client_secret );
684
- return true;
685
- } catch ( MercadoPagoException $e ) {
686
- return false;
687
- }
688
- }
689
- return false;
690
- }
691
-
692
- // Build the string representing the path to the log file
693
- protected function buildLogPathString() {
694
- return '<a href="' . esc_url( admin_url( 'admin.php?page=wc-status&tab=logs&log_file=' .
695
- esc_attr( $this->id ) . '-' . sanitize_file_name( wp_hash( $this->id ) ) . '.log' ) ) . '">' .
696
- __( 'WooCommerce &gt; System Status &gt; Logs', 'woocommerce-mercadopago-module' ) . '</a>';
697
- }
698
-
699
- // Return boolean indicating if currency is supported.
700
- protected function isSupportedCurrency() {
701
- return get_woocommerce_currency() == $this->getCurrencyId( $this->site_id );
702
- }
703
-
704
- // Get currency id for a country
705
- protected function getCurrencyId( $site_id ) {
706
- switch ( $site_id ) {
707
- case 'MLA': return 'ARS';
708
- case 'MLB': return 'BRL';
709
- case 'MCO': return 'COP';
710
- case 'MLC': return 'CLP';
711
- case 'MLM': return 'MXN';
712
- case 'MLV': return 'VEF';
713
- case 'MPE': return 'PEN';
714
- default: return '';
715
- }
716
- }
717
-
718
- // Called automatically by WooCommerce, verify if Module is available to use.
719
- public function is_available() {
720
- // Test if is valid for use.
721
- $available = ( 'yes' == $this->settings[ 'enabled' ] ) &&
722
- ! empty( $this->client_id ) &&
723
- ! empty( $this->client_secret );
724
- return $available;
725
- }
726
-
727
- // Fix css for Mercado Pago in specific cases.
728
- public function css() {
729
- if ( defined( 'WC_VERSION' ) && version_compare( WC_VERSION, '2.1', '>=' ) ) {
730
- $page_id = wc_get_page_id( 'checkout' );
731
- } else {
732
- $page_id = woocommerce_get_page_id( 'checkout' );
733
- }
734
- if ( is_page($page_id ) ) {
735
- echo '<style type="text/css">#MP-Checkout-dialog { z-index: 9999 !important; }</style>' . PHP_EOL;
736
- }
737
- }
738
-
739
- // Get the URL to admin page.
740
- protected function admin_url() {
741
- if ( defined( 'WC_VERSION' ) && version_compare( WC_VERSION, '2.1', '>=' ) ) {
742
- return admin_url(
743
- 'admin.php?page=wc-settings&tab=checkout&section=wc_woomercadopago_gateway'
744
- );
745
- }
746
- return admin_url(
747
- 'admin.php?page=woocommerce_settings&tab=payment_gateways&section=WC_WooMercadoPago_Gateway'
748
- );
749
- }
750
-
751
- // Notify that Client_id and/or Client_secret are not valid.
752
- public function clientIdOrSecretMissingMessage() {
753
- echo '<div class="error"><p><strong>' .
754
- __( 'Standard Checkout is Inactive', 'woocommerce-mercadopago-module' ) .
755
- '</strong>: ' .
756
- sprintf(
757
- __( 'Your Mercado Pago credentials Client_id/Client_secret appears to be misconfigured.', 'woocommerce-mercadopago-module' ) . ' %s',
758
- '<a href="' . $this->admin_url() . '">' . __( 'Click here and configure!', 'woocommerce-mercadopago-module' ) . '</a>' ) .
759
- '</p></div>';
760
- }
761
-
762
- public function getCountryName( $site_id ) {
763
- switch ( $site_id ) {
764
- case 'MLA': return __( 'Argentine', 'woocommerce-mercadopago-module' );
765
- case 'MLB': return __( 'Brazil', 'woocommerce-mercadopago-module' );
766
- case 'MCO': return __( 'Colombia', 'woocommerce-mercadopago-module' );
767
- case 'MLC': return __( 'Chile', 'woocommerce-mercadopago-module' );
768
- case 'MLM': return __( 'Mexico', 'woocommerce-mercadopago-module' );
769
- case 'MLV': return __( 'Venezuela', 'woocommerce-mercadopago-module' );
770
- case 'MPE': return __( 'Peru', 'woocommerce-mercadopago-module' );
771
- }
772
- }
773
-
774
- /*
775
- * ========================================================================
776
- * IPN MECHANICS
777
- * ========================================================================
778
- */
779
-
780
- // This call checks any incoming notifications from Mercado Pago server.
781
- public function check_ipn_response() {
782
- if ( 'yes' == $this->debug ) {
783
- $this->log->add( $this->id, $this->id . ': @[check_ipn_response] - got a call from mercado pago ipn' );
784
- }
785
- @ob_clean();
786
- $data = $this->check_ipn_request_is_valid( $_GET );
787
- if ( $data ) {
788
- header( 'HTTP/1.1 200 OK' );
789
- if ( 'yes' == $this->debug ) {
790
- $this->log->add(
791
- $this->id, $this->id .
792
- ': @[check_ipn_response] - received _get call with following content: ' .
793
- json_encode( $data, JSON_PRETTY_PRINT ) );
794
- }
795
- do_action( 'valid_mercadopago_ipn_request', $data );
796
- } else {
797
- if ( 'yes' == $this->debug ) {
798
- $this->log->add(
799
- $this->id, $this->id .
800
- ': @[check_ipn_response] - Mercado Pago Request Failure: ' .
801
- json_encode( $_GET, JSON_PRETTY_PRINT ) );
802
- }
803
- wp_die( __( 'Mercado Pago Request Failure', 'woocommerce-mercadopago-module' ) );
804
- }
805
- }
806
-
807
- // Get received data from IPN and checks if we have a merchant_order or
808
- // payment associated. If we have these information, we return data to be
809
- // processed by successful_request function.
810
- public function check_ipn_request_is_valid( $data ) {
811
- if ( 'yes' == $this->debug ) {
812
- $this->log->add(
813
- $this->id, $this->id .
814
- ': @[check_ipn_request_is_valid] - received ipn message from mercado pago, checking validity with $data containing: ' .
815
- json_encode( $data, JSON_PRETTY_PRINT ) );
816
- }
817
- if ( !isset( $data[ 'id' ] ) ) {
818
- if ( 'yes' == $this->debug ) {
819
- $this->log->add(
820
- $this->id, $this->id .
821
- ': @[check_ipn_request_is_valid] - failing due to ID absent' );
822
- }
823
- return false; // No ID? No process!
824
- }
825
- // Create MP object and setup sandbox mode.
826
- $mp = new MP( $this->client_id, $this->client_secret );
827
- if ( 'yes' == $this->sandbox ) {
828
- $mp->sandbox_mode( true );
829
- } else {
830
- $mp->sandbox_mode( false );
831
- }
832
- try { // Get the merchant_order reported by the IPN. Glossary of attributes response in https://developers.mercadopago.com
833
- $params = array( "access_token" => $mp->get_access_token() );
834
- if ( $data[ "topic" ] == 'merchant_order' ) {
835
- $merchant_order_info = $mp->get( "/merchant_orders/" . $_GET[ "id" ], $params, false );
836
- // If the payment's transaction amount is equal (or bigger) than the merchant order's amount you can release your items
837
- if ( !is_wp_error( $merchant_order_info ) && ($merchant_order_info[ "status" ] == 200 ) ) {
838
- $payments = $merchant_order_info[ "response" ][ "payments" ];
839
- // check if we have more than one payment method
840
- if ( sizeof( $payments ) >= 1 ) { // We have payments
841
- return $merchant_order_info[ 'response' ];
842
- } else { // We have no payments?
843
- if ( 'yes' == $this->debug ) {
844
- $this->log->add( $this->id, $this->id . ': @[check_ipn_request_is_valid] - order received but has no payment' );
845
- }
846
- return false;
847
- }
848
- } else {
849
- if ( 'yes' == $this->debug ) {
850
- $this->log->add( $this->id, $this->id . ': @[check_ipn_request_is_valid] - got status not equal 200 or some error' );
851
- }
852
- return false;
853
- }
854
- }
855
- } catch ( MercadoPagoException $e ) {
856
- if ( 'yes' == $this->debug ) {
857
- $this->log->add( $this->id, $this->id .
858
- ': @[check_ipn_request_is_valid] - GOT EXCEPTION: ' .
859
- json_encode( array( "status" => $e->getCode(), "message" => $e->getMessage() ) ) );
860
- }
861
- return false;
862
- }
863
- return true;
864
- }
865
-
866
- // Properly handles each case of notification, based in payment status.
867
- public function successful_request( $data ) {
868
- if ( 'yes' == $this->debug ) {
869
- $this->log->add( $this->id, $this->id . ': @[successful_request] - starting to process ipn update...' );
870
- }
871
- $order_key = $data[ 'external_reference' ];
872
- if ( !empty( $order_key ) ) {
873
- $order_id = (int) str_replace( $this->invoice_prefix, '', $order_key );
874
- $order = new WC_Order( $order_id );
875
- // Checks whether the invoice number matches the order. If true processes the payment.
876
- if ( $order->id === $order_id ) {
877
- if ( 'yes' == $this->debug ) {
878
- $this->log->add( $this->id, $this->id . ': @[successful_request] - got order with ID ' . $order->id . ' and status ' . $data[ 'payments' ][ 0 ][ 'status' ] );
879
- }
880
- // Order details.
881
- if ( !empty( $data[ 'payer' ][ 'email' ] ) ) {
882
- update_post_meta(
883
- $order_id,
884
- __( 'Payer email', 'woocommerce-mercadopago-module' ),
885
- $data[ 'payer' ][ 'email' ]
886
- );
887
- }
888
- if ( !empty( $data[ 'payment_type' ] ) ) {
889
- update_post_meta(
890
- $order_id,
891
- __( 'Payment type', 'woocommerce-mercadopago-module' ),
892
- $data[ 'payment_type' ]
893
- );
894
- }
895
- if ( !empty( $data[ 'payments' ] ) ) {
896
- $payment_ids = array();
897
- foreach ( $data[ 'payments' ] as $payment ) {
898
- $payment_ids[] = $payment[ 'id' ];
899
- }
900
- if ( sizeof( $payment_ids ) > 0 ) {
901
- update_post_meta(
902
- $order_id,
903
- __( 'Mercado Pago Payment ID', 'woocommerce-mercadopago-module' ),
904
- implode( ', ', $payment_ids )
905
- );
906
- }
907
- }
908
- // Here, we process the status...
909
- $status = 'pending';
910
- if ( sizeof( $data[ 'payments' ] ) == 1 ) {
911
- // if there's only one payment, then we get its status
912
- $status = $data[ 'payments' ][ 0 ][ 'status' ];
913
- } else if ( sizeof( $data[ 'payments' ] ) > 1 ) {
914
- // otherwise, we check payment sum
915
- $total_paid = 0.00;
916
- foreach ( $data[ 'payments' ] as $payment ) {
917
- if ( $payment[ 'status' ] === 'approved' ) {
918
- $total_paid = $total_paid + (float) $payment[ 'total_paid_amount' ];
919
- }
920
- }
921
- $total = $data[ 'shipping_cost' ] + $data[ 'total_amount' ];
922
- if ( $total_paid >= $total ) {
923
- // At this point, the sum of approved payments are above or equal than the total order amount, so it is approved
924
- $status = 'approved';
925
- }
926
- }
927
- // Switch the status and update in