pagseguro-sdk 2.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (324) hide show
  1. checksums.yaml +7 -0
  2. data/.github/.gitignore +204 -0
  3. data/.github/ISSUE_TEMPLATE/relatorio-de-bug.md +29 -0
  4. data/.github/workflows/codacy-analysis.yml +46 -0
  5. data/.gitignore +28 -0
  6. data/.rspec +1 -0
  7. data/.travis.yml +13 -0
  8. data/CHANGELOG.md +95 -0
  9. data/CONTRIBUTING.md +39 -0
  10. data/Dockerfile +20 -0
  11. data/Gemfile +2 -0
  12. data/LICENSE-2.0.txt +177 -0
  13. data/README.md +436 -0
  14. data/Rakefile +5 -0
  15. data/docker-compose.yml +5 -0
  16. data/docs/transparent_checkout.md +201 -0
  17. data/examples/authorization/create_authorization.rb +32 -0
  18. data/examples/authorization/create_authorization_with_account.rb +56 -0
  19. data/examples/authorization/search/search_authorization_by_code.rb +29 -0
  20. data/examples/authorization/search/search_authorization_by_date.rb +35 -0
  21. data/examples/authorization/search/search_authorization_by_notification_code.rb +29 -0
  22. data/examples/authorization/search/search_authorization_by_reference.rb +31 -0
  23. data/examples/boot.rb +26 -0
  24. data/examples/checkout/create_payment_request.rb +63 -0
  25. data/examples/checkout/search/search_abandoned_transactions.rb +41 -0
  26. data/examples/checkout/search/search_transaction_by_code.rb +76 -0
  27. data/examples/checkout/search/search_transaction_by_notification_code.rb +76 -0
  28. data/examples/checkout/search/search_transaction_by_reference.rb +36 -0
  29. data/examples/checkout/search/search_transactions_by_date.rb +45 -0
  30. data/examples/create_session.rb +19 -0
  31. data/examples/direct/create_transaction_using_boleto.rb +100 -0
  32. data/examples/direct/create_transaction_using_credit_card.rb +128 -0
  33. data/examples/direct/create_transaction_using_online_debit.rb +104 -0
  34. data/examples/get_installments.rb +40 -0
  35. data/examples/preapproval/cancel_preapproval.rb +26 -0
  36. data/examples/preapproval/change_preapproval_payment.rb +50 -0
  37. data/examples/preapproval/change_preapproval_status.rb +29 -0
  38. data/examples/preapproval/charge_preapproval.rb +36 -0
  39. data/examples/preapproval/create_preapproval.rb +68 -0
  40. data/examples/preapproval/create_preapproval_auto.rb +53 -0
  41. data/examples/preapproval/create_preapproval_discount.rb +30 -0
  42. data/examples/preapproval/create_preapproval_manual.rb +58 -0
  43. data/examples/preapproval/create_preapproval_transparent.rb +41 -0
  44. data/examples/preapproval/preapproval_retry.rb +29 -0
  45. data/examples/preapproval/search/search_by_date_interval.rb +45 -0
  46. data/examples/preapproval/search/search_by_days_interval.rb +46 -0
  47. data/examples/preapproval/search/search_by_notification_code.rb +50 -0
  48. data/examples/preapproval/search/search_by_subscription_code.rb +50 -0
  49. data/examples/preapproval/search/search_subscription_payment_orders.rb +53 -0
  50. data/examples/request_transaction_cancellation.rb +19 -0
  51. data/examples/split_payment/create_authorization.rb +32 -0
  52. data/examples/split_payment/create_payment_request.rb +71 -0
  53. data/examples/split_payment/create_transaction_using_boleto.rb +118 -0
  54. data/examples/split_payment/create_transaction_using_credit_card.rb +152 -0
  55. data/lib/pagseguro-oficial.rb +1 -0
  56. data/lib/pagseguro.rb +221 -0
  57. data/lib/pagseguro/account.rb +29 -0
  58. data/lib/pagseguro/account_credentials.rb +14 -0
  59. data/lib/pagseguro/address.rb +40 -0
  60. data/lib/pagseguro/application_credentials.rb +18 -0
  61. data/lib/pagseguro/authorization.rb +61 -0
  62. data/lib/pagseguro/authorization/collection.rb +28 -0
  63. data/lib/pagseguro/authorization/request_serializer.rb +24 -0
  64. data/lib/pagseguro/authorization/response.rb +49 -0
  65. data/lib/pagseguro/authorization/response_serializer.rb +40 -0
  66. data/lib/pagseguro/authorization_request.rb +84 -0
  67. data/lib/pagseguro/authorization_request/request_serializer.rb +142 -0
  68. data/lib/pagseguro/authorization_request/response.rb +26 -0
  69. data/lib/pagseguro/authorization_request/response_serializer.rb +18 -0
  70. data/lib/pagseguro/bank.rb +8 -0
  71. data/lib/pagseguro/boleto_transaction_request.rb +8 -0
  72. data/lib/pagseguro/company.rb +41 -0
  73. data/lib/pagseguro/config.rb +34 -0
  74. data/lib/pagseguro/credit_card_transaction_request.rb +39 -0
  75. data/lib/pagseguro/creditor_fee.rb +23 -0
  76. data/lib/pagseguro/document.rb +23 -0
  77. data/lib/pagseguro/documents.rb +5 -0
  78. data/lib/pagseguro/errors.rb +57 -0
  79. data/lib/pagseguro/exceptions.rb +3 -0
  80. data/lib/pagseguro/extensions/collection_object.rb +34 -0
  81. data/lib/pagseguro/extensions/credentiable.rb +17 -0
  82. data/lib/pagseguro/extensions/ensure_type.rb +9 -0
  83. data/lib/pagseguro/extensions/mass_assignment.rb +11 -0
  84. data/lib/pagseguro/holder.rb +36 -0
  85. data/lib/pagseguro/installment.rb +57 -0
  86. data/lib/pagseguro/installment/collection.rb +25 -0
  87. data/lib/pagseguro/installment/request_serializer.rb +24 -0
  88. data/lib/pagseguro/installment/response.rb +37 -0
  89. data/lib/pagseguro/installment/response_serializer.rb +22 -0
  90. data/lib/pagseguro/item.rb +34 -0
  91. data/lib/pagseguro/items.rb +23 -0
  92. data/lib/pagseguro/manual_subscription_charger.rb +59 -0
  93. data/lib/pagseguro/manual_subscription_charger/request_serializer.rb +50 -0
  94. data/lib/pagseguro/manual_subscription_charger/response.rb +36 -0
  95. data/lib/pagseguro/manual_subscription_charger/response_serializer.rb +17 -0
  96. data/lib/pagseguro/notification.rb +11 -0
  97. data/lib/pagseguro/notification/authorization.rb +15 -0
  98. data/lib/pagseguro/notification/transaction.rb +15 -0
  99. data/lib/pagseguro/online_debit_transaction_request.rb +17 -0
  100. data/lib/pagseguro/partner.rb +20 -0
  101. data/lib/pagseguro/payment_method.rb +39 -0
  102. data/lib/pagseguro/payment_release.rb +21 -0
  103. data/lib/pagseguro/payment_releases.rb +28 -0
  104. data/lib/pagseguro/payment_request.rb +117 -0
  105. data/lib/pagseguro/payment_request/request_serializer.rb +203 -0
  106. data/lib/pagseguro/payment_request/response.rb +35 -0
  107. data/lib/pagseguro/payment_status.rb +39 -0
  108. data/lib/pagseguro/permission.rb +13 -0
  109. data/lib/pagseguro/person.rb +40 -0
  110. data/lib/pagseguro/phone.rb +20 -0
  111. data/lib/pagseguro/phones.rb +5 -0
  112. data/lib/pagseguro/receiver.rb +20 -0
  113. data/lib/pagseguro/receiver_split.rb +15 -0
  114. data/lib/pagseguro/request.rb +170 -0
  115. data/lib/pagseguro/sender.rb +53 -0
  116. data/lib/pagseguro/session.rb +34 -0
  117. data/lib/pagseguro/session/response.rb +32 -0
  118. data/lib/pagseguro/session/response_serializer.rb +18 -0
  119. data/lib/pagseguro/shipping.rb +57 -0
  120. data/lib/pagseguro/subscription.rb +132 -0
  121. data/lib/pagseguro/subscription/request_serializer.rb +129 -0
  122. data/lib/pagseguro/subscription/response.rb +49 -0
  123. data/lib/pagseguro/subscription/response_serializer.rb +62 -0
  124. data/lib/pagseguro/subscription/subscription_search.rb +135 -0
  125. data/lib/pagseguro/subscription_canceller.rb +30 -0
  126. data/lib/pagseguro/subscription_canceller/response.rb +34 -0
  127. data/lib/pagseguro/subscription_change_payment.rb +46 -0
  128. data/lib/pagseguro/subscription_change_payment/request_serializer.rb +80 -0
  129. data/lib/pagseguro/subscription_change_payment/response.rb +26 -0
  130. data/lib/pagseguro/subscription_change_status.rb +50 -0
  131. data/lib/pagseguro/subscription_change_status/request_serializer.rb +28 -0
  132. data/lib/pagseguro/subscription_change_status/response.rb +26 -0
  133. data/lib/pagseguro/subscription_discount.rb +41 -0
  134. data/lib/pagseguro/subscription_discount/request_serializer.rb +34 -0
  135. data/lib/pagseguro/subscription_discount/response.rb +34 -0
  136. data/lib/pagseguro/subscription_payment_method.rb +21 -0
  137. data/lib/pagseguro/subscription_payment_order.rb +57 -0
  138. data/lib/pagseguro/subscription_payment_order/response.rb +37 -0
  139. data/lib/pagseguro/subscription_payment_order/response_serializer.rb +51 -0
  140. data/lib/pagseguro/subscription_plan.rb +69 -0
  141. data/lib/pagseguro/subscription_plan/request_serializer.rb +81 -0
  142. data/lib/pagseguro/subscription_plan/response.rb +36 -0
  143. data/lib/pagseguro/subscription_plan/response_serializer.rb +17 -0
  144. data/lib/pagseguro/subscription_retry.rb +35 -0
  145. data/lib/pagseguro/subscription_retry/response.rb +34 -0
  146. data/lib/pagseguro/subscription_search_payment_orders.rb +131 -0
  147. data/lib/pagseguro/subscription_transaction.rb +29 -0
  148. data/lib/pagseguro/subscription_transactions.rb +5 -0
  149. data/lib/pagseguro/transaction.rb +215 -0
  150. data/lib/pagseguro/transaction/collection.rb +20 -0
  151. data/lib/pagseguro/transaction/response.rb +45 -0
  152. data/lib/pagseguro/transaction/search.rb +121 -0
  153. data/lib/pagseguro/transaction/search/search_abandoned.rb +20 -0
  154. data/lib/pagseguro/transaction/search/search_by_date.rb +16 -0
  155. data/lib/pagseguro/transaction/search/search_by_reference.rb +13 -0
  156. data/lib/pagseguro/transaction/serializer.rb +181 -0
  157. data/lib/pagseguro/transaction_cancellation.rb +37 -0
  158. data/lib/pagseguro/transaction_cancellation/request_serializer.rb +18 -0
  159. data/lib/pagseguro/transaction_cancellation/response.rb +33 -0
  160. data/lib/pagseguro/transaction_cancellation/response_serializer.rb +17 -0
  161. data/lib/pagseguro/transaction_installment.rb +11 -0
  162. data/lib/pagseguro/transaction_refund.rb +44 -0
  163. data/lib/pagseguro/transaction_refund/request_serializer.rb +24 -0
  164. data/lib/pagseguro/transaction_refund/response.rb +33 -0
  165. data/lib/pagseguro/transaction_refund/response_serializer.rb +17 -0
  166. data/lib/pagseguro/transaction_request.rb +165 -0
  167. data/lib/pagseguro/transaction_request/request_serializer.rb +311 -0
  168. data/lib/pagseguro/transaction_request/response.rb +33 -0
  169. data/lib/pagseguro/transaction_request/response_serializer.rb +117 -0
  170. data/lib/pagseguro/transaction_status.rb +14 -0
  171. data/lib/pagseguro/version.rb +3 -0
  172. data/locales/pt-BR.yml +130 -0
  173. data/pagseguro-oficial.gemspec +31 -0
  174. data/spec/fixtures/authorization/find_authorization.xml +17 -0
  175. data/spec/fixtures/authorization/search_authorization.xml +47 -0
  176. data/spec/fixtures/authorization_request/authorization_request.xml +11 -0
  177. data/spec/fixtures/authorization_request/authorization_request_with_account.xml +47 -0
  178. data/spec/fixtures/authorization_request/success.xml +4 -0
  179. data/spec/fixtures/by_date/success.xml +85 -0
  180. data/spec/fixtures/installment/success.xml +24 -0
  181. data/spec/fixtures/invalid_code.xml +7 -0
  182. data/spec/fixtures/manual_subscription_charger/fail.xml +6 -0
  183. data/spec/fixtures/manual_subscription_charger/success.xml +4 -0
  184. data/spec/fixtures/payment_request/failure.xml +7 -0
  185. data/spec/fixtures/payment_request/success.xml +5 -0
  186. data/spec/fixtures/refund/success.xml +2 -0
  187. data/spec/fixtures/session/success.xml +4 -0
  188. data/spec/fixtures/subscription/fail.xml +6 -0
  189. data/spec/fixtures/subscription/find_success.xml +28 -0
  190. data/spec/fixtures/subscription/search_success.xml +18 -0
  191. data/spec/fixtures/subscription/success.xml +4 -0
  192. data/spec/fixtures/subscription_canceller/fail.xml +6 -0
  193. data/spec/fixtures/subscription_change_payment/fail.xml +7 -0
  194. data/spec/fixtures/subscription_change_status/fail.xml +7 -0
  195. data/spec/fixtures/subscription_discount/fail.xml +6 -0
  196. data/spec/fixtures/subscription_payment_order/success.xml +18 -0
  197. data/spec/fixtures/subscription_plan/fail.xml +6 -0
  198. data/spec/fixtures/subscription_plan/success.xml +4 -0
  199. data/spec/fixtures/subscription_retry/fail.xml +7 -0
  200. data/spec/fixtures/subscription_search_payment_orders/success.xml +43 -0
  201. data/spec/fixtures/transaction_cancellation/success.xml +2 -0
  202. data/spec/fixtures/transaction_request/success.xml +58 -0
  203. data/spec/fixtures/transactions/additional.xml +53 -0
  204. data/spec/fixtures/transactions/search.xml +40 -0
  205. data/spec/fixtures/transactions/success.xml +75 -0
  206. data/spec/fixtures/transactions/without_status_and_type.xml +71 -0
  207. data/spec/pagseguro/account_credentials_spec.rb +10 -0
  208. data/spec/pagseguro/account_spec.rb +27 -0
  209. data/spec/pagseguro/address_spec.rb +17 -0
  210. data/spec/pagseguro/application_credentials_spec.rb +11 -0
  211. data/spec/pagseguro/authorization/collection_spec.rb +49 -0
  212. data/spec/pagseguro/authorization/request_serializer_spec.rb +10 -0
  213. data/spec/pagseguro/authorization/response_serializer_spec.rb +19 -0
  214. data/spec/pagseguro/authorization/response_spec.rb +90 -0
  215. data/spec/pagseguro/authorization_request/request_serializer_spec.rb +323 -0
  216. data/spec/pagseguro/authorization_request/response_serializer_spec.rb +15 -0
  217. data/spec/pagseguro/authorization_request/response_spec.rb +36 -0
  218. data/spec/pagseguro/authorization_request_spec.rb +127 -0
  219. data/spec/pagseguro/authorization_spec.rb +111 -0
  220. data/spec/pagseguro/bank_spec.rb +5 -0
  221. data/spec/pagseguro/boleto_transaction_request_spec.rb +9 -0
  222. data/spec/pagseguro/company_spec.rb +12 -0
  223. data/spec/pagseguro/config_spec.rb +5 -0
  224. data/spec/pagseguro/credit_card_transaction_request_spec.rb +36 -0
  225. data/spec/pagseguro/creditor_fee_spec.rb +10 -0
  226. data/spec/pagseguro/document_spec.rb +21 -0
  227. data/spec/pagseguro/documents_spec.rb +37 -0
  228. data/spec/pagseguro/errors_spec.rb +145 -0
  229. data/spec/pagseguro/extensions/collection_object_spec.rb +77 -0
  230. data/spec/pagseguro/features/create_session_spec.rb +52 -0
  231. data/spec/pagseguro/features/create_transaction_request_spec.rb +58 -0
  232. data/spec/pagseguro/holder_spec.rb +10 -0
  233. data/spec/pagseguro/installment/collection_spec.rb +43 -0
  234. data/spec/pagseguro/installment/request_serializer_spec.rb +16 -0
  235. data/spec/pagseguro/installment/response_serializer_spec.rb +33 -0
  236. data/spec/pagseguro/installment/response_spec.rb +56 -0
  237. data/spec/pagseguro/installment_spec.rb +50 -0
  238. data/spec/pagseguro/item_spec.rb +20 -0
  239. data/spec/pagseguro/items_spec.rb +148 -0
  240. data/spec/pagseguro/manual_subscription_charger/request_serializer_spec.rb +79 -0
  241. data/spec/pagseguro/manual_subscription_charger/response_serializer_spec.rb +10 -0
  242. data/spec/pagseguro/manual_subscription_charger/response_spec.rb +65 -0
  243. data/spec/pagseguro/manual_subscription_charger_spec.rb +68 -0
  244. data/spec/pagseguro/notification_spec.rb +6 -0
  245. data/spec/pagseguro/online_debit_transaction_request_spec.rb +18 -0
  246. data/spec/pagseguro/pagseguro_spec.rb +82 -0
  247. data/spec/pagseguro/partner_spec.rb +8 -0
  248. data/spec/pagseguro/payment_method_spec.rb +42 -0
  249. data/spec/pagseguro/payment_release_spec.rb +9 -0
  250. data/spec/pagseguro/payment_releases_spec.rb +34 -0
  251. data/spec/pagseguro/payment_request/request_serializer_spec.rb +283 -0
  252. data/spec/pagseguro/payment_request/response_spec.rb +13 -0
  253. data/spec/pagseguro/payment_request_spec.rb +148 -0
  254. data/spec/pagseguro/payment_status_spec.rb +33 -0
  255. data/spec/pagseguro/permission_spec.rb +7 -0
  256. data/spec/pagseguro/person_spec.rb +10 -0
  257. data/spec/pagseguro/phone_spec.rb +6 -0
  258. data/spec/pagseguro/phones_spec.rb +38 -0
  259. data/spec/pagseguro/receiver_spec.rb +7 -0
  260. data/spec/pagseguro/receiver_split_spec.rb +7 -0
  261. data/spec/pagseguro/request_spec.rb +114 -0
  262. data/spec/pagseguro/sender_spec.rb +25 -0
  263. data/spec/pagseguro/session/response_serializer_spec.rb +12 -0
  264. data/spec/pagseguro/session/response_spec.rb +57 -0
  265. data/spec/pagseguro/session_spec.rb +45 -0
  266. data/spec/pagseguro/shipping_spec.rb +40 -0
  267. data/spec/pagseguro/subscription/request_serializer_spec.rb +233 -0
  268. data/spec/pagseguro/subscription/response_serializer_spec.rb +46 -0
  269. data/spec/pagseguro/subscription/response_spec.rb +79 -0
  270. data/spec/pagseguro/subscription/subscription_search_spec.rb +154 -0
  271. data/spec/pagseguro/subscription_canceller/response_spec.rb +58 -0
  272. data/spec/pagseguro/subscription_canceller_spec.rb +57 -0
  273. data/spec/pagseguro/subscription_change_payment/request_serializer_spec.rb +150 -0
  274. data/spec/pagseguro/subscription_change_payment/response_spec.rb +41 -0
  275. data/spec/pagseguro/subscription_change_payment_spec.rb +60 -0
  276. data/spec/pagseguro/subscription_change_status/request_serializer_spec.rb +19 -0
  277. data/spec/pagseguro/subscription_change_status/response_spec.rb +41 -0
  278. data/spec/pagseguro/subscription_change_status_spec.rb +53 -0
  279. data/spec/pagseguro/subscription_discount/request_serializer_spec.rb +27 -0
  280. data/spec/pagseguro/subscription_discount/response_spec.rb +58 -0
  281. data/spec/pagseguro/subscription_discount_spec.rb +60 -0
  282. data/spec/pagseguro/subscription_payment_method_spec.rb +10 -0
  283. data/spec/pagseguro/subscription_payment_order/response_serializer_spec.rb +24 -0
  284. data/spec/pagseguro/subscription_payment_order/response_spec.rb +55 -0
  285. data/spec/pagseguro/subscription_payment_order_spec.rb +27 -0
  286. data/spec/pagseguro/subscription_plan/request_serializer_spec.rb +253 -0
  287. data/spec/pagseguro/subscription_plan/response_serializer_spec.rb +10 -0
  288. data/spec/pagseguro/subscription_plan/response_spec.rb +65 -0
  289. data/spec/pagseguro/subscription_plan_spec.rb +118 -0
  290. data/spec/pagseguro/subscription_retry/response_spec.rb +58 -0
  291. data/spec/pagseguro/subscription_retry_spec.rb +62 -0
  292. data/spec/pagseguro/subscription_search_payment_order_spec.rb +129 -0
  293. data/spec/pagseguro/subscription_spec.rb +137 -0
  294. data/spec/pagseguro/subscription_transaction_spec.rb +24 -0
  295. data/spec/pagseguro/subscription_transactions_spec.rb +37 -0
  296. data/spec/pagseguro/transaction/collection_spec.rb +43 -0
  297. data/spec/pagseguro/transaction/response_spec.rb +60 -0
  298. data/spec/pagseguro/transaction/search/search_abandoned_spec.rb +55 -0
  299. data/spec/pagseguro/transaction/search/search_by_date_spec.rb +28 -0
  300. data/spec/pagseguro/transaction/search/search_by_reference_spec.rb +21 -0
  301. data/spec/pagseguro/transaction/search_spec.rb +133 -0
  302. data/spec/pagseguro/transaction/serializer_spec.rb +86 -0
  303. data/spec/pagseguro/transaction_cancellation/request_serializer_spec.rb +13 -0
  304. data/spec/pagseguro/transaction_cancellation/response_serializer_spec.rb +9 -0
  305. data/spec/pagseguro/transaction_cancellation/response_spec.rb +45 -0
  306. data/spec/pagseguro/transaction_cancellation_spec.rb +60 -0
  307. data/spec/pagseguro/transaction_installment_spec.rb +6 -0
  308. data/spec/pagseguro/transaction_refund/request_serializer_spec.rb +15 -0
  309. data/spec/pagseguro/transaction_refund/response_serializer_spec.rb +12 -0
  310. data/spec/pagseguro/transaction_refund/response_spec.rb +39 -0
  311. data/spec/pagseguro/transaction_refund_spec.rb +71 -0
  312. data/spec/pagseguro/transaction_request/request_serializer_spec.rb +677 -0
  313. data/spec/pagseguro/transaction_request/response_serializer_spec.rb +52 -0
  314. data/spec/pagseguro/transaction_request/response_spec.rb +63 -0
  315. data/spec/pagseguro/transaction_request_spec.rb +156 -0
  316. data/spec/pagseguro/transaction_spec.rb +265 -0
  317. data/spec/pagseguro/transaction_status_spec.rb +7 -0
  318. data/spec/spec_helper.rb +35 -0
  319. data/spec/support/ensure_type_macro.rb +35 -0
  320. data/spec/support/helpers.rb +14 -0
  321. data/spec/support/mass_assignment_macro.rb +11 -0
  322. data/spec/support/shared_examples_for_configuration.rb +10 -0
  323. data/transaction/transaction_refund.rb +25 -0
  324. metadata +641 -0
@@ -0,0 +1,63 @@
1
+ # -*- encoding : utf-8 -*-
2
+ require_relative "../boot"
3
+
4
+ # Create Payment Request
5
+ #
6
+ # You need to set your AccountCredentials (EMAIL, TOKEN) in the application config
7
+ #
8
+ # P.S: See the boot file example for more details.
9
+
10
+ payment = PagSeguro::PaymentRequest.new
11
+ payment.abandon_url = "http://dev.simplesideias.com.br/?abandoned"
12
+ payment.notification_url = "http://dev.simplesideias.com.br/?notification"
13
+ payment.redirect_url = "http://dev.simplesideias.com.br/?redirect"
14
+
15
+ # If you don't want to use payment request credentials you can use application config
16
+ payment.credentials = PagSeguro::AccountCredentials.new('EMAIL', 'TOKEN')
17
+
18
+ payment.items << {
19
+ id: 1234,
20
+ description: %[Televisão 19" Sony],
21
+ amount: 459.50,
22
+ weight: 0
23
+ }
24
+
25
+ payment.reference = "REF1234"
26
+ payment.sender = {
27
+ name: "Nando Vieira",
28
+ email: "fnando.vieira@gmail.com",
29
+ document: { type: "CPF", value: "21639716866" },
30
+ phone: {
31
+ area_code: 11,
32
+ number: "12345678"
33
+ }
34
+ }
35
+
36
+ payment.shipping = {
37
+ type_name: "sedex",
38
+ address: {
39
+ street: "R. Vergueiro",
40
+ number: 1421,
41
+ complement: "Sala 213",
42
+ city: "São Paulo",
43
+ state: "SP",
44
+ district: "Vila Mariana"
45
+ }
46
+ }
47
+
48
+ # Add extras params to request
49
+ # payment.extra_params << { paramName: 'paramValue' }
50
+ # payment.extra_params << { senderBirthDate: '07/05/1981' }
51
+ # payment.extra_params << { extraAmount: '-15.00' }
52
+
53
+ puts "=> REQUEST"
54
+ puts PagSeguro::PaymentRequest::RequestSerializer.new(payment).to_params
55
+
56
+ response = payment.register
57
+
58
+ puts
59
+ puts "=> RESPONSE"
60
+ puts response.url
61
+ puts response.code
62
+ puts response.created_at
63
+ puts response.errors.to_a
@@ -0,0 +1,41 @@
1
+ require "active_support/all"
2
+ require_relative "../../boot"
3
+
4
+ # Search Abandoned Transactions
5
+ #
6
+ # The acount credentials (EMAIL, TOKEN) are required
7
+ #
8
+ # You can pass the credentials parameters to PagSeguro::Transaction#find_abandoned
9
+
10
+ options = {
11
+ credentials: PagSeguro::AccountCredentials.new('EMAIL', 'TOKEN'),
12
+ starts_at: Time.new(2016, 2, 10, 14, 0),
13
+ ends_at: Time.new(2016, 2, 11, 14, 0),
14
+ per_page: 50
15
+ # You can pass more arguments by params, look (/lib/pagseguro/transaction.rb)
16
+ }
17
+
18
+ report = PagSeguro::Transaction.find_abandoned(options)
19
+
20
+ # OR through the application settings like the boot file example (/examples/boot.rb)
21
+ #
22
+ # report = PagSeguro::Transaction.find_abandoned
23
+
24
+ while report.next_page?
25
+ report.next_page!
26
+ puts "=> Fetching page #{report.page}"
27
+
28
+ abort "=> Errors: #{report.errors.join("\n")}" unless report.valid?
29
+
30
+ puts "=> Report was created at: #{report.created_at}"
31
+ puts
32
+
33
+ report.transactions.each do |transaction|
34
+ puts "=> Abandoned transaction"
35
+ puts " created at: #{transaction.created_at}"
36
+ puts " code: #{transaction.code}"
37
+ puts " type_id: #{transaction.type_id}"
38
+ puts " gross amount: #{transaction.gross_amount.to_f}"
39
+ puts
40
+ end
41
+ end
@@ -0,0 +1,76 @@
1
+ require_relative "../../boot"
2
+
3
+ # Search Transaction by Code
4
+ #
5
+ # You need to give:
6
+ # - transaction code
7
+ # - account credentials (EMAIL, TOKEN) OR application credentials (APP_ID, APP_KEY)
8
+ #
9
+ # You can pass these parameters to PagSeguro::Transaction#find_by_code
10
+
11
+ # credentials = PagSeguro::ApplicationCredentials.new('APP_ID', 'APP_KEY')
12
+ credentials = PagSeguro::AccountCredentials.new('EMAIL', 'TOKEN')
13
+
14
+ options = { credentials: credentials } # Unnecessary if you set in application config
15
+
16
+ transaction = PagSeguro::Transaction.find_by_code("TRANSACTION_CODE", options)
17
+
18
+ if transaction.errors.any?
19
+ puts transaction.errors.join("\n")
20
+ else
21
+ puts "=> Transaction"
22
+ puts " code: #{transaction.code}"
23
+ puts " type: #{transaction.type_id}"
24
+ puts " status: #{transaction.status.status}"
25
+ puts " cancellation source: #{transaction.cancellation_source}"
26
+ puts " escrow end date: #{transaction.escrow_end_date}"
27
+ puts " payment method type: #{transaction.payment_method.type}"
28
+ puts " gross amount: #{transaction.gross_amount.to_f}"
29
+ puts " discount amount: #{transaction.discount_amount.to_f}"
30
+ puts " operational fee amount: #{transaction.creditor_fees.operational_fee_amount.to_f}"
31
+ puts " installment fee amount: #{transaction.creditor_fees.installment_fee_amount.to_f}"
32
+ puts " intermediation rate amount: #{transaction.creditor_fees.intermediation_rate_amount.to_f}"
33
+ puts " intermediation fee amount: #{transaction.creditor_fees.intermediation_fee_amount.to_f}"
34
+ puts " commission fee amount: #{transaction.creditor_fees.commission_fee_amount.to_f}"
35
+ puts " commission fee amount: #{transaction.creditor_fees.commission_fee_amount.to_f}"
36
+ puts " efrete: #{transaction.creditor_fees.efrete.to_f}"
37
+ puts " net amount: #{transaction.net_amount.to_f}"
38
+ puts " extra amount: #{transaction.extra_amount.to_f}"
39
+
40
+ puts " => Payments"
41
+ puts " installment count: #{transaction.installments}"
42
+ transaction.payment_releases.each do |release|
43
+ puts " current installment: #{release.installment}"
44
+ puts " total amount: #{release.total_amount.to_f}"
45
+ puts " release amount: #{release.release_amount.to_f}"
46
+ puts " status: #{release.status}"
47
+ puts " release date: #{release.release_date}"
48
+ end
49
+
50
+ puts " => Items"
51
+ puts " items count: #{transaction.items.size}"
52
+ transaction.items.each do |item|
53
+ puts " item id: #{item.id}"
54
+ puts " description: #{item.description}"
55
+ puts " quantity: #{item.quantity}"
56
+ puts " amount: #{item.amount.to_f}"
57
+ puts " weight: #{item.weight}g"
58
+ end
59
+
60
+ puts " => Sender"
61
+ puts " name: #{transaction.sender.name}"
62
+ puts " email: #{transaction.sender.email}"
63
+ puts " phone: (#{transaction.sender.phone.area_code}) #{transaction.sender.phone.number}"
64
+ puts " document: #{transaction.sender.document.type}: #{transaction.sender.document.value}"
65
+
66
+ puts " => Shipping"
67
+ puts " street: #{transaction.shipping.address.street}, #{transaction.shipping.address.number}"
68
+ puts " complement: #{transaction.shipping.address.complement}"
69
+ puts " postal code: #{transaction.shipping.address.postal_code}"
70
+ puts " district: #{transaction.shipping.address.district}"
71
+ puts " city: #{transaction.shipping.address.city}"
72
+ puts " state: #{transaction.shipping.address.state}"
73
+ puts " country: #{transaction.shipping.address.country}"
74
+ puts " type: #{transaction.shipping.type_name}"
75
+ puts " cost: #{transaction.shipping.cost}"
76
+ end
@@ -0,0 +1,76 @@
1
+ require_relative "../../boot"
2
+
3
+ # Search Transaction by Notification Code
4
+ #
5
+ # You need to give:
6
+ # - transaction notification code
7
+ # - account credentials (EMAIL, TOKEN) OR application credentials (APP_ID, APP_KEY)
8
+ #
9
+ # You can pass these parameters to PagSeguro::Transaction#find_by_code
10
+
11
+ # credentials = PagSeguro::ApplicationCredentials.new('APP_ID', 'APP_KEY')
12
+ credentials = PagSeguro::AccountCredentials.new('EMAIL', 'TOKEN')
13
+
14
+ options = { credentials: credentials } # Unnecessary if you set in application config
15
+
16
+ transaction = PagSeguro::Transaction.find_by_notification_code("NOTIFICATION_CODE", options)
17
+
18
+ if transaction.errors.any?
19
+ puts transaction.errors.join("\n")
20
+ else
21
+ puts "=> Transaction"
22
+ puts " code: #{transaction.code}"
23
+ puts " type: #{transaction.type_id}"
24
+ puts " status: #{transaction.status.status}"
25
+ puts " cancellation source: #{transaction.cancellation_source}"
26
+ puts " escrow end date: #{transaction.escrow_end_date}"
27
+ puts " payment method type: #{transaction.payment_method.type}"
28
+ puts " gross amount: #{transaction.gross_amount.to_f}"
29
+ puts " discount amount: #{transaction.discount_amount.to_f}"
30
+ puts " operational fee amount: #{transaction.creditor_fees.operational_fee_amount.to_f}"
31
+ puts " installment fee amount: #{transaction.creditor_fees.installment_fee_amount.to_f}"
32
+ puts " intermediation rate amount: #{transaction.creditor_fees.intermediation_rate_amount.to_f}"
33
+ puts " intermediation fee amount: #{transaction.creditor_fees.intermediation_fee_amount.to_f}"
34
+ puts " commission fee amount: #{transaction.creditor_fees.commission_fee_amount.to_f}"
35
+ puts " commission fee amount: #{transaction.creditor_fees.commission_fee_amount.to_f}"
36
+ puts " efrete: #{transaction.creditor_fees.efrete.to_f}"
37
+ puts " net amount: #{transaction.net_amount.to_f}"
38
+ puts " extra amount: #{transaction.extra_amount.to_f}"
39
+
40
+ puts " => Payments"
41
+ puts " installment count: #{transaction.installments}"
42
+ transaction.payment_releases.each do |release|
43
+ puts " current installment: #{release.installment}"
44
+ puts " total amount: #{release.total_amount.to_f}"
45
+ puts " release amount: #{release.release_amount.to_f}"
46
+ puts " status: #{release.status}"
47
+ puts " release date: #{release.release_date}"
48
+ end
49
+
50
+ puts " => Items"
51
+ puts " items count: #{transaction.items.size}"
52
+ transaction.items.each do |item|
53
+ puts " item id: #{item.id}"
54
+ puts " description: #{item.description}"
55
+ puts " quantity: #{item.quantity}"
56
+ puts " amount: #{item.amount.to_f}"
57
+ puts " weight: #{item.weight}g"
58
+ end
59
+
60
+ puts " => Sender"
61
+ puts " name: #{transaction.sender.name}"
62
+ puts " email: #{transaction.sender.email}"
63
+ puts " phone: (#{transaction.sender.phone.area_code}) #{transaction.sender.phone.number}"
64
+ puts " document: #{transaction.sender.document.type}: #{transaction.sender.document.value}"
65
+
66
+ puts " => Shipping"
67
+ puts " street: #{transaction.shipping.address.street}, #{transaction.shipping.address.number}"
68
+ puts " complement: #{transaction.shipping.address.complement}"
69
+ puts " postal code: #{transaction.shipping.address.postal_code}"
70
+ puts " district: #{transaction.shipping.address.district}"
71
+ puts " city: #{transaction.shipping.address.city}"
72
+ puts " state: #{transaction.shipping.address.state}"
73
+ puts " country: #{transaction.shipping.address.country}"
74
+ puts " type: #{transaction.shipping.type_name}"
75
+ puts " cost: #{transaction.shipping.cost}"
76
+ end
@@ -0,0 +1,36 @@
1
+ require_relative "../../boot"
2
+
3
+ # Search Transaction by Reference
4
+ #
5
+ # You need to give:
6
+ # - reference code
7
+ # - account credentials (EMAIL, TOKEN)
8
+ #
9
+ # You can pass these parameters to PagSeguro::Transaction#find_by_reference
10
+
11
+ credentials = PagSeguro::AccountCredentials.new('EMAIL', 'TOKEN')
12
+
13
+ options = { credentials: credentials } # Unnecessary if you set in application config
14
+
15
+ transaction = PagSeguro::Transaction.find_by_reference("REFERENCE_CODE", options)
16
+
17
+ while transaction.next_page?
18
+ transaction.next_page!
19
+ puts "== Page #{transaction.page}"
20
+ abort "=> Errors: #{transaction.errors.join("\n")}" unless transaction.valid?
21
+ puts "Report created on #{transaction.created_at}"
22
+ puts
23
+
24
+ transaction.transactions.each do |transaction|
25
+ puts "=> Transaction"
26
+ puts " created_at: #{transaction.created_at}"
27
+ puts " code: #{transaction.code}"
28
+ puts " cancellation_source: #{transaction.cancellation_source}"
29
+ puts " payment method: #{transaction.payment_method.type}"
30
+ puts " gross amount: #{transaction.gross_amount.to_f}"
31
+ puts " updated at: #{transaction.updated_at}"
32
+ puts " status: #{transaction.status.status}"
33
+ puts
34
+ end
35
+ end
36
+
@@ -0,0 +1,45 @@
1
+ require_relative "../../boot"
2
+ require "active_support/all"
3
+
4
+ # Search Transactions by Date
5
+ #
6
+ # You need to give:
7
+ # - reference code
8
+ # - account credentials (EMAIL, TOKEN)
9
+ #
10
+ # You can pass these parameters to PagSeguro::Transaction#find_by_date
11
+
12
+ credentials = PagSeguro::AccountCredentials.new('EMAIL', 'TOKEN')
13
+
14
+ options = {
15
+ starts_at: 29.days.ago,
16
+ per_page: 1,
17
+ credentials: credentials # Unnecessary if you set in application config
18
+ }
19
+
20
+ report = PagSeguro::Transaction.find_by_date(options)
21
+
22
+ while report.next_page?
23
+ report.next_page!
24
+ puts "== Page #{report.page}"
25
+ abort "=> Errors: #{report.errors.join("\n")}" unless report.valid?
26
+ puts "Report created on #{report.created_at}"
27
+ puts
28
+
29
+ report.transactions.each do |transaction|
30
+ puts "=> Transaction"
31
+ puts " created_at: #{transaction.created_at}"
32
+ puts " code: #{transaction.code}"
33
+ puts " cancellation_source: #{transaction.cancellation_source}"
34
+ puts " type: #{transaction.type_id}"
35
+ puts " status: #{transaction.status.status}"
36
+ puts " payment method: #{transaction.payment_method.type}"
37
+ puts " gross amount: #{transaction.gross_amount.to_f}"
38
+ puts " discount amount: #{transaction.discount_amount.to_f}"
39
+ puts " net amount: #{transaction.net_amount.to_f}"
40
+ puts " extra amount: #{transaction.extra_amount.to_f}"
41
+ puts " updated at: #{transaction.updated_at}"
42
+ puts " status: #{transaction.status.status}"
43
+ puts
44
+ end
45
+ end
@@ -0,0 +1,19 @@
1
+ require_relative "boot"
2
+
3
+ # Create Session
4
+ #
5
+ # You need to set your AccountCredentials (EMAIL, TOKEN) in the application config
6
+ #
7
+ # P.S: See the boot file example for more details.
8
+
9
+ session = PagSeguro::Session.create
10
+
11
+ if session.errors.any?
12
+ puts "=> ERRORS"
13
+ puts session.errors.join("\n")
14
+ puts session.inspect
15
+ else
16
+ puts "=> SESSION"
17
+ puts session.id
18
+ puts session.inspect
19
+ end
@@ -0,0 +1,100 @@
1
+ require_relative "../boot"
2
+
3
+ # Create Transaction Using Boleto
4
+ #
5
+ # You need to set your AccountCredentials (EMAIL, TOKEN) in the application config
6
+ #
7
+ # P.S: See the boot file example for more details
8
+
9
+ payment = PagSeguro::BoletoTransactionRequest.new
10
+ payment.notification_url = "http://www.meusite.com.br/notification"
11
+ payment.payment_mode = "default"
12
+
13
+ payment.items << {
14
+ id: 1234,
15
+ description: %[Televisão 19" Sony],
16
+ amount: 459.50,
17
+ weight: 0
18
+ }
19
+
20
+ payment.reference = "REF1234-boleto"
21
+ payment.sender = {
22
+ hash: "7e215170790948f45e26175c2192c77e88c0e4c361a5860b99d2e9a97af982e6",
23
+ name: "Joao Comprador",
24
+ email: "joao@sandbox.pagseguro.com.br",
25
+ document: { type: "CPF", value: "75073461100" },
26
+ phone: {
27
+ area_code: 11,
28
+ number: "12345678"
29
+ }
30
+ }
31
+
32
+ payment.shipping = {
33
+ type_name: "sedex",
34
+ address: {
35
+ street: "Av. Brig. Faria Lima",
36
+ number: "1384",
37
+ complement: "5º andar",
38
+ city: "São Paulo",
39
+ state: "SP",
40
+ district: "Jardim Paulistano",
41
+ postal_code: "01452002"
42
+ }
43
+ }
44
+
45
+
46
+ # Add extras params to request
47
+ # payment.extra_params << { paramName: 'paramValue' }
48
+ # payment.extra_params << { senderBirthDate: '07/05/1981' }
49
+
50
+ puts "=> REQUEST"
51
+ puts PagSeguro::TransactionRequest::RequestSerializer.new(payment).to_params
52
+ puts
53
+
54
+ payment.create
55
+
56
+ if payment.errors.any?
57
+ puts "=> ERRORS"
58
+ puts payment.errors.join("\n")
59
+ else
60
+ puts "=> Transaction"
61
+ puts " code: #{payment.code}"
62
+ puts " reference: #{payment.reference}"
63
+ puts " type: #{payment.type_id}"
64
+ puts " payment link: #{payment.payment_link}"
65
+ puts " status: #{payment.status}"
66
+ puts " payment method type: #{payment.payment_method}"
67
+ puts " created at: #{payment.created_at}"
68
+ puts " updated at: #{payment.updated_at}"
69
+ puts " gross amount: #{payment.gross_amount.to_f}"
70
+ puts " discount amount: #{payment.discount_amount.to_f}"
71
+ puts " net amount: #{payment.net_amount.to_f}"
72
+ puts " extra amount: #{payment.extra_amount.to_f}"
73
+ puts " installment count: #{payment.installment_count}"
74
+
75
+ puts " => Items"
76
+ puts " items count: #{payment.items.size}"
77
+ payment.items.each do |item|
78
+ puts " item id: #{item.id}"
79
+ puts " description: #{item.description}"
80
+ puts " quantity: #{item.quantity}"
81
+ puts " amount: #{item.amount.to_f}"
82
+ end
83
+
84
+ puts " => Sender"
85
+ puts " name: #{payment.sender.name}"
86
+ puts " email: #{payment.sender.email}"
87
+ puts " phone: (#{payment.sender.phone.area_code}) #{payment.sender.phone.number}"
88
+ puts " document: #{payment.sender.document}"
89
+
90
+ puts " => Shipping"
91
+ puts " street: #{payment.shipping.address.street}, #{payment.shipping.address.number}"
92
+ puts " complement: #{payment.shipping.address.complement}"
93
+ puts " postal code: #{payment.shipping.address.postal_code}"
94
+ puts " district: #{payment.shipping.address.district}"
95
+ puts " city: #{payment.shipping.address.city}"
96
+ puts " state: #{payment.shipping.address.state}"
97
+ puts " country: #{payment.shipping.address.country}"
98
+ puts " type: #{payment.shipping.type_name}"
99
+ puts " cost: #{payment.shipping.cost}"
100
+ end