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.
- checksums.yaml +7 -0
- data/.github/.gitignore +204 -0
- data/.github/ISSUE_TEMPLATE/relatorio-de-bug.md +29 -0
- data/.github/workflows/codacy-analysis.yml +46 -0
- data/.gitignore +28 -0
- data/.rspec +1 -0
- data/.travis.yml +13 -0
- data/CHANGELOG.md +95 -0
- data/CONTRIBUTING.md +39 -0
- data/Dockerfile +20 -0
- data/Gemfile +2 -0
- data/LICENSE-2.0.txt +177 -0
- data/README.md +436 -0
- data/Rakefile +5 -0
- data/docker-compose.yml +5 -0
- data/docs/transparent_checkout.md +201 -0
- data/examples/authorization/create_authorization.rb +32 -0
- data/examples/authorization/create_authorization_with_account.rb +56 -0
- data/examples/authorization/search/search_authorization_by_code.rb +29 -0
- data/examples/authorization/search/search_authorization_by_date.rb +35 -0
- data/examples/authorization/search/search_authorization_by_notification_code.rb +29 -0
- data/examples/authorization/search/search_authorization_by_reference.rb +31 -0
- data/examples/boot.rb +26 -0
- data/examples/checkout/create_payment_request.rb +63 -0
- data/examples/checkout/search/search_abandoned_transactions.rb +41 -0
- data/examples/checkout/search/search_transaction_by_code.rb +76 -0
- data/examples/checkout/search/search_transaction_by_notification_code.rb +76 -0
- data/examples/checkout/search/search_transaction_by_reference.rb +36 -0
- data/examples/checkout/search/search_transactions_by_date.rb +45 -0
- data/examples/create_session.rb +19 -0
- data/examples/direct/create_transaction_using_boleto.rb +100 -0
- data/examples/direct/create_transaction_using_credit_card.rb +128 -0
- data/examples/direct/create_transaction_using_online_debit.rb +104 -0
- data/examples/get_installments.rb +40 -0
- data/examples/preapproval/cancel_preapproval.rb +26 -0
- data/examples/preapproval/change_preapproval_payment.rb +50 -0
- data/examples/preapproval/change_preapproval_status.rb +29 -0
- data/examples/preapproval/charge_preapproval.rb +36 -0
- data/examples/preapproval/create_preapproval.rb +68 -0
- data/examples/preapproval/create_preapproval_auto.rb +53 -0
- data/examples/preapproval/create_preapproval_discount.rb +30 -0
- data/examples/preapproval/create_preapproval_manual.rb +58 -0
- data/examples/preapproval/create_preapproval_transparent.rb +41 -0
- data/examples/preapproval/preapproval_retry.rb +29 -0
- data/examples/preapproval/search/search_by_date_interval.rb +45 -0
- data/examples/preapproval/search/search_by_days_interval.rb +46 -0
- data/examples/preapproval/search/search_by_notification_code.rb +50 -0
- data/examples/preapproval/search/search_by_subscription_code.rb +50 -0
- data/examples/preapproval/search/search_subscription_payment_orders.rb +53 -0
- data/examples/request_transaction_cancellation.rb +19 -0
- data/examples/split_payment/create_authorization.rb +32 -0
- data/examples/split_payment/create_payment_request.rb +71 -0
- data/examples/split_payment/create_transaction_using_boleto.rb +118 -0
- data/examples/split_payment/create_transaction_using_credit_card.rb +152 -0
- data/lib/pagseguro-oficial.rb +1 -0
- data/lib/pagseguro.rb +221 -0
- data/lib/pagseguro/account.rb +29 -0
- data/lib/pagseguro/account_credentials.rb +14 -0
- data/lib/pagseguro/address.rb +40 -0
- data/lib/pagseguro/application_credentials.rb +18 -0
- data/lib/pagseguro/authorization.rb +61 -0
- data/lib/pagseguro/authorization/collection.rb +28 -0
- data/lib/pagseguro/authorization/request_serializer.rb +24 -0
- data/lib/pagseguro/authorization/response.rb +49 -0
- data/lib/pagseguro/authorization/response_serializer.rb +40 -0
- data/lib/pagseguro/authorization_request.rb +84 -0
- data/lib/pagseguro/authorization_request/request_serializer.rb +142 -0
- data/lib/pagseguro/authorization_request/response.rb +26 -0
- data/lib/pagseguro/authorization_request/response_serializer.rb +18 -0
- data/lib/pagseguro/bank.rb +8 -0
- data/lib/pagseguro/boleto_transaction_request.rb +8 -0
- data/lib/pagseguro/company.rb +41 -0
- data/lib/pagseguro/config.rb +34 -0
- data/lib/pagseguro/credit_card_transaction_request.rb +39 -0
- data/lib/pagseguro/creditor_fee.rb +23 -0
- data/lib/pagseguro/document.rb +23 -0
- data/lib/pagseguro/documents.rb +5 -0
- data/lib/pagseguro/errors.rb +57 -0
- data/lib/pagseguro/exceptions.rb +3 -0
- data/lib/pagseguro/extensions/collection_object.rb +34 -0
- data/lib/pagseguro/extensions/credentiable.rb +17 -0
- data/lib/pagseguro/extensions/ensure_type.rb +9 -0
- data/lib/pagseguro/extensions/mass_assignment.rb +11 -0
- data/lib/pagseguro/holder.rb +36 -0
- data/lib/pagseguro/installment.rb +57 -0
- data/lib/pagseguro/installment/collection.rb +25 -0
- data/lib/pagseguro/installment/request_serializer.rb +24 -0
- data/lib/pagseguro/installment/response.rb +37 -0
- data/lib/pagseguro/installment/response_serializer.rb +22 -0
- data/lib/pagseguro/item.rb +34 -0
- data/lib/pagseguro/items.rb +23 -0
- data/lib/pagseguro/manual_subscription_charger.rb +59 -0
- data/lib/pagseguro/manual_subscription_charger/request_serializer.rb +50 -0
- data/lib/pagseguro/manual_subscription_charger/response.rb +36 -0
- data/lib/pagseguro/manual_subscription_charger/response_serializer.rb +17 -0
- data/lib/pagseguro/notification.rb +11 -0
- data/lib/pagseguro/notification/authorization.rb +15 -0
- data/lib/pagseguro/notification/transaction.rb +15 -0
- data/lib/pagseguro/online_debit_transaction_request.rb +17 -0
- data/lib/pagseguro/partner.rb +20 -0
- data/lib/pagseguro/payment_method.rb +39 -0
- data/lib/pagseguro/payment_release.rb +21 -0
- data/lib/pagseguro/payment_releases.rb +28 -0
- data/lib/pagseguro/payment_request.rb +117 -0
- data/lib/pagseguro/payment_request/request_serializer.rb +203 -0
- data/lib/pagseguro/payment_request/response.rb +35 -0
- data/lib/pagseguro/payment_status.rb +39 -0
- data/lib/pagseguro/permission.rb +13 -0
- data/lib/pagseguro/person.rb +40 -0
- data/lib/pagseguro/phone.rb +20 -0
- data/lib/pagseguro/phones.rb +5 -0
- data/lib/pagseguro/receiver.rb +20 -0
- data/lib/pagseguro/receiver_split.rb +15 -0
- data/lib/pagseguro/request.rb +170 -0
- data/lib/pagseguro/sender.rb +53 -0
- data/lib/pagseguro/session.rb +34 -0
- data/lib/pagseguro/session/response.rb +32 -0
- data/lib/pagseguro/session/response_serializer.rb +18 -0
- data/lib/pagseguro/shipping.rb +57 -0
- data/lib/pagseguro/subscription.rb +132 -0
- data/lib/pagseguro/subscription/request_serializer.rb +129 -0
- data/lib/pagseguro/subscription/response.rb +49 -0
- data/lib/pagseguro/subscription/response_serializer.rb +62 -0
- data/lib/pagseguro/subscription/subscription_search.rb +135 -0
- data/lib/pagseguro/subscription_canceller.rb +30 -0
- data/lib/pagseguro/subscription_canceller/response.rb +34 -0
- data/lib/pagseguro/subscription_change_payment.rb +46 -0
- data/lib/pagseguro/subscription_change_payment/request_serializer.rb +80 -0
- data/lib/pagseguro/subscription_change_payment/response.rb +26 -0
- data/lib/pagseguro/subscription_change_status.rb +50 -0
- data/lib/pagseguro/subscription_change_status/request_serializer.rb +28 -0
- data/lib/pagseguro/subscription_change_status/response.rb +26 -0
- data/lib/pagseguro/subscription_discount.rb +41 -0
- data/lib/pagseguro/subscription_discount/request_serializer.rb +34 -0
- data/lib/pagseguro/subscription_discount/response.rb +34 -0
- data/lib/pagseguro/subscription_payment_method.rb +21 -0
- data/lib/pagseguro/subscription_payment_order.rb +57 -0
- data/lib/pagseguro/subscription_payment_order/response.rb +37 -0
- data/lib/pagseguro/subscription_payment_order/response_serializer.rb +51 -0
- data/lib/pagseguro/subscription_plan.rb +69 -0
- data/lib/pagseguro/subscription_plan/request_serializer.rb +81 -0
- data/lib/pagseguro/subscription_plan/response.rb +36 -0
- data/lib/pagseguro/subscription_plan/response_serializer.rb +17 -0
- data/lib/pagseguro/subscription_retry.rb +35 -0
- data/lib/pagseguro/subscription_retry/response.rb +34 -0
- data/lib/pagseguro/subscription_search_payment_orders.rb +131 -0
- data/lib/pagseguro/subscription_transaction.rb +29 -0
- data/lib/pagseguro/subscription_transactions.rb +5 -0
- data/lib/pagseguro/transaction.rb +215 -0
- data/lib/pagseguro/transaction/collection.rb +20 -0
- data/lib/pagseguro/transaction/response.rb +45 -0
- data/lib/pagseguro/transaction/search.rb +121 -0
- data/lib/pagseguro/transaction/search/search_abandoned.rb +20 -0
- data/lib/pagseguro/transaction/search/search_by_date.rb +16 -0
- data/lib/pagseguro/transaction/search/search_by_reference.rb +13 -0
- data/lib/pagseguro/transaction/serializer.rb +181 -0
- data/lib/pagseguro/transaction_cancellation.rb +37 -0
- data/lib/pagseguro/transaction_cancellation/request_serializer.rb +18 -0
- data/lib/pagseguro/transaction_cancellation/response.rb +33 -0
- data/lib/pagseguro/transaction_cancellation/response_serializer.rb +17 -0
- data/lib/pagseguro/transaction_installment.rb +11 -0
- data/lib/pagseguro/transaction_refund.rb +44 -0
- data/lib/pagseguro/transaction_refund/request_serializer.rb +24 -0
- data/lib/pagseguro/transaction_refund/response.rb +33 -0
- data/lib/pagseguro/transaction_refund/response_serializer.rb +17 -0
- data/lib/pagseguro/transaction_request.rb +165 -0
- data/lib/pagseguro/transaction_request/request_serializer.rb +311 -0
- data/lib/pagseguro/transaction_request/response.rb +33 -0
- data/lib/pagseguro/transaction_request/response_serializer.rb +117 -0
- data/lib/pagseguro/transaction_status.rb +14 -0
- data/lib/pagseguro/version.rb +3 -0
- data/locales/pt-BR.yml +130 -0
- data/pagseguro-oficial.gemspec +31 -0
- data/spec/fixtures/authorization/find_authorization.xml +17 -0
- data/spec/fixtures/authorization/search_authorization.xml +47 -0
- data/spec/fixtures/authorization_request/authorization_request.xml +11 -0
- data/spec/fixtures/authorization_request/authorization_request_with_account.xml +47 -0
- data/spec/fixtures/authorization_request/success.xml +4 -0
- data/spec/fixtures/by_date/success.xml +85 -0
- data/spec/fixtures/installment/success.xml +24 -0
- data/spec/fixtures/invalid_code.xml +7 -0
- data/spec/fixtures/manual_subscription_charger/fail.xml +6 -0
- data/spec/fixtures/manual_subscription_charger/success.xml +4 -0
- data/spec/fixtures/payment_request/failure.xml +7 -0
- data/spec/fixtures/payment_request/success.xml +5 -0
- data/spec/fixtures/refund/success.xml +2 -0
- data/spec/fixtures/session/success.xml +4 -0
- data/spec/fixtures/subscription/fail.xml +6 -0
- data/spec/fixtures/subscription/find_success.xml +28 -0
- data/spec/fixtures/subscription/search_success.xml +18 -0
- data/spec/fixtures/subscription/success.xml +4 -0
- data/spec/fixtures/subscription_canceller/fail.xml +6 -0
- data/spec/fixtures/subscription_change_payment/fail.xml +7 -0
- data/spec/fixtures/subscription_change_status/fail.xml +7 -0
- data/spec/fixtures/subscription_discount/fail.xml +6 -0
- data/spec/fixtures/subscription_payment_order/success.xml +18 -0
- data/spec/fixtures/subscription_plan/fail.xml +6 -0
- data/spec/fixtures/subscription_plan/success.xml +4 -0
- data/spec/fixtures/subscription_retry/fail.xml +7 -0
- data/spec/fixtures/subscription_search_payment_orders/success.xml +43 -0
- data/spec/fixtures/transaction_cancellation/success.xml +2 -0
- data/spec/fixtures/transaction_request/success.xml +58 -0
- data/spec/fixtures/transactions/additional.xml +53 -0
- data/spec/fixtures/transactions/search.xml +40 -0
- data/spec/fixtures/transactions/success.xml +75 -0
- data/spec/fixtures/transactions/without_status_and_type.xml +71 -0
- data/spec/pagseguro/account_credentials_spec.rb +10 -0
- data/spec/pagseguro/account_spec.rb +27 -0
- data/spec/pagseguro/address_spec.rb +17 -0
- data/spec/pagseguro/application_credentials_spec.rb +11 -0
- data/spec/pagseguro/authorization/collection_spec.rb +49 -0
- data/spec/pagseguro/authorization/request_serializer_spec.rb +10 -0
- data/spec/pagseguro/authorization/response_serializer_spec.rb +19 -0
- data/spec/pagseguro/authorization/response_spec.rb +90 -0
- data/spec/pagseguro/authorization_request/request_serializer_spec.rb +323 -0
- data/spec/pagseguro/authorization_request/response_serializer_spec.rb +15 -0
- data/spec/pagseguro/authorization_request/response_spec.rb +36 -0
- data/spec/pagseguro/authorization_request_spec.rb +127 -0
- data/spec/pagseguro/authorization_spec.rb +111 -0
- data/spec/pagseguro/bank_spec.rb +5 -0
- data/spec/pagseguro/boleto_transaction_request_spec.rb +9 -0
- data/spec/pagseguro/company_spec.rb +12 -0
- data/spec/pagseguro/config_spec.rb +5 -0
- data/spec/pagseguro/credit_card_transaction_request_spec.rb +36 -0
- data/spec/pagseguro/creditor_fee_spec.rb +10 -0
- data/spec/pagseguro/document_spec.rb +21 -0
- data/spec/pagseguro/documents_spec.rb +37 -0
- data/spec/pagseguro/errors_spec.rb +145 -0
- data/spec/pagseguro/extensions/collection_object_spec.rb +77 -0
- data/spec/pagseguro/features/create_session_spec.rb +52 -0
- data/spec/pagseguro/features/create_transaction_request_spec.rb +58 -0
- data/spec/pagseguro/holder_spec.rb +10 -0
- data/spec/pagseguro/installment/collection_spec.rb +43 -0
- data/spec/pagseguro/installment/request_serializer_spec.rb +16 -0
- data/spec/pagseguro/installment/response_serializer_spec.rb +33 -0
- data/spec/pagseguro/installment/response_spec.rb +56 -0
- data/spec/pagseguro/installment_spec.rb +50 -0
- data/spec/pagseguro/item_spec.rb +20 -0
- data/spec/pagseguro/items_spec.rb +148 -0
- data/spec/pagseguro/manual_subscription_charger/request_serializer_spec.rb +79 -0
- data/spec/pagseguro/manual_subscription_charger/response_serializer_spec.rb +10 -0
- data/spec/pagseguro/manual_subscription_charger/response_spec.rb +65 -0
- data/spec/pagseguro/manual_subscription_charger_spec.rb +68 -0
- data/spec/pagseguro/notification_spec.rb +6 -0
- data/spec/pagseguro/online_debit_transaction_request_spec.rb +18 -0
- data/spec/pagseguro/pagseguro_spec.rb +82 -0
- data/spec/pagseguro/partner_spec.rb +8 -0
- data/spec/pagseguro/payment_method_spec.rb +42 -0
- data/spec/pagseguro/payment_release_spec.rb +9 -0
- data/spec/pagseguro/payment_releases_spec.rb +34 -0
- data/spec/pagseguro/payment_request/request_serializer_spec.rb +283 -0
- data/spec/pagseguro/payment_request/response_spec.rb +13 -0
- data/spec/pagseguro/payment_request_spec.rb +148 -0
- data/spec/pagseguro/payment_status_spec.rb +33 -0
- data/spec/pagseguro/permission_spec.rb +7 -0
- data/spec/pagseguro/person_spec.rb +10 -0
- data/spec/pagseguro/phone_spec.rb +6 -0
- data/spec/pagseguro/phones_spec.rb +38 -0
- data/spec/pagseguro/receiver_spec.rb +7 -0
- data/spec/pagseguro/receiver_split_spec.rb +7 -0
- data/spec/pagseguro/request_spec.rb +114 -0
- data/spec/pagseguro/sender_spec.rb +25 -0
- data/spec/pagseguro/session/response_serializer_spec.rb +12 -0
- data/spec/pagseguro/session/response_spec.rb +57 -0
- data/spec/pagseguro/session_spec.rb +45 -0
- data/spec/pagseguro/shipping_spec.rb +40 -0
- data/spec/pagseguro/subscription/request_serializer_spec.rb +233 -0
- data/spec/pagseguro/subscription/response_serializer_spec.rb +46 -0
- data/spec/pagseguro/subscription/response_spec.rb +79 -0
- data/spec/pagseguro/subscription/subscription_search_spec.rb +154 -0
- data/spec/pagseguro/subscription_canceller/response_spec.rb +58 -0
- data/spec/pagseguro/subscription_canceller_spec.rb +57 -0
- data/spec/pagseguro/subscription_change_payment/request_serializer_spec.rb +150 -0
- data/spec/pagseguro/subscription_change_payment/response_spec.rb +41 -0
- data/spec/pagseguro/subscription_change_payment_spec.rb +60 -0
- data/spec/pagseguro/subscription_change_status/request_serializer_spec.rb +19 -0
- data/spec/pagseguro/subscription_change_status/response_spec.rb +41 -0
- data/spec/pagseguro/subscription_change_status_spec.rb +53 -0
- data/spec/pagseguro/subscription_discount/request_serializer_spec.rb +27 -0
- data/spec/pagseguro/subscription_discount/response_spec.rb +58 -0
- data/spec/pagseguro/subscription_discount_spec.rb +60 -0
- data/spec/pagseguro/subscription_payment_method_spec.rb +10 -0
- data/spec/pagseguro/subscription_payment_order/response_serializer_spec.rb +24 -0
- data/spec/pagseguro/subscription_payment_order/response_spec.rb +55 -0
- data/spec/pagseguro/subscription_payment_order_spec.rb +27 -0
- data/spec/pagseguro/subscription_plan/request_serializer_spec.rb +253 -0
- data/spec/pagseguro/subscription_plan/response_serializer_spec.rb +10 -0
- data/spec/pagseguro/subscription_plan/response_spec.rb +65 -0
- data/spec/pagseguro/subscription_plan_spec.rb +118 -0
- data/spec/pagseguro/subscription_retry/response_spec.rb +58 -0
- data/spec/pagseguro/subscription_retry_spec.rb +62 -0
- data/spec/pagseguro/subscription_search_payment_order_spec.rb +129 -0
- data/spec/pagseguro/subscription_spec.rb +137 -0
- data/spec/pagseguro/subscription_transaction_spec.rb +24 -0
- data/spec/pagseguro/subscription_transactions_spec.rb +37 -0
- data/spec/pagseguro/transaction/collection_spec.rb +43 -0
- data/spec/pagseguro/transaction/response_spec.rb +60 -0
- data/spec/pagseguro/transaction/search/search_abandoned_spec.rb +55 -0
- data/spec/pagseguro/transaction/search/search_by_date_spec.rb +28 -0
- data/spec/pagseguro/transaction/search/search_by_reference_spec.rb +21 -0
- data/spec/pagseguro/transaction/search_spec.rb +133 -0
- data/spec/pagseguro/transaction/serializer_spec.rb +86 -0
- data/spec/pagseguro/transaction_cancellation/request_serializer_spec.rb +13 -0
- data/spec/pagseguro/transaction_cancellation/response_serializer_spec.rb +9 -0
- data/spec/pagseguro/transaction_cancellation/response_spec.rb +45 -0
- data/spec/pagseguro/transaction_cancellation_spec.rb +60 -0
- data/spec/pagseguro/transaction_installment_spec.rb +6 -0
- data/spec/pagseguro/transaction_refund/request_serializer_spec.rb +15 -0
- data/spec/pagseguro/transaction_refund/response_serializer_spec.rb +12 -0
- data/spec/pagseguro/transaction_refund/response_spec.rb +39 -0
- data/spec/pagseguro/transaction_refund_spec.rb +71 -0
- data/spec/pagseguro/transaction_request/request_serializer_spec.rb +677 -0
- data/spec/pagseguro/transaction_request/response_serializer_spec.rb +52 -0
- data/spec/pagseguro/transaction_request/response_spec.rb +63 -0
- data/spec/pagseguro/transaction_request_spec.rb +156 -0
- data/spec/pagseguro/transaction_spec.rb +265 -0
- data/spec/pagseguro/transaction_status_spec.rb +7 -0
- data/spec/spec_helper.rb +35 -0
- data/spec/support/ensure_type_macro.rb +35 -0
- data/spec/support/helpers.rb +14 -0
- data/spec/support/mass_assignment_macro.rb +11 -0
- data/spec/support/shared_examples_for_configuration.rb +10 -0
- data/transaction/transaction_refund.rb +25 -0
- metadata +641 -0
@@ -0,0 +1,19 @@
|
|
1
|
+
require_relative "boot"
|
2
|
+
|
3
|
+
# Request Transaction Cancellation
|
4
|
+
#
|
5
|
+
# You need:
|
6
|
+
# - give TRANSACTION CODE to TransactionCancellation#transaction_code
|
7
|
+
# - set your AccountCredentials (EMAIL, TOKEN) in the application config (P.S.: See the boot file example)
|
8
|
+
|
9
|
+
cancellation = PagSeguro::TransactionCancellation.new
|
10
|
+
cancellation.transaction_code = "AFB8FCF29496401681257C1ECE3A98FF"
|
11
|
+
|
12
|
+
cancellation.register
|
13
|
+
|
14
|
+
if cancellation.errors.any?
|
15
|
+
puts cancellation.errors.join("\n")
|
16
|
+
else
|
17
|
+
puts "=> CANCELLATION RESPONSE"
|
18
|
+
puts cancellation.result
|
19
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
require_relative "../boot"
|
2
|
+
|
3
|
+
# Create Authorization
|
4
|
+
#
|
5
|
+
# You need to give:
|
6
|
+
# - notification_url
|
7
|
+
# - redirect_url
|
8
|
+
# - permissions defaults to all permissions
|
9
|
+
# - applications credentials (APP_ID, APP_KEY)
|
10
|
+
#
|
11
|
+
# You can pass these parameters to PagSeguro::AuthorizationRequest#new
|
12
|
+
#
|
13
|
+
# PS: For more details look the class PagSeguro::AuthorizationRequest
|
14
|
+
|
15
|
+
credentials = PagSeguro::ApplicationCredentials.new('APP_ID', 'APP_KEY')
|
16
|
+
|
17
|
+
options = {
|
18
|
+
credentials: credentials, # Unnecessary if you set in application config
|
19
|
+
permissions: [:checkouts],
|
20
|
+
notification_url: 'http://example.com/',
|
21
|
+
redirect_url: 'http://example.com/',
|
22
|
+
reference: 'REF4321' # optional
|
23
|
+
}
|
24
|
+
|
25
|
+
authorization_request = PagSeguro::AuthorizationRequest.new(options)
|
26
|
+
|
27
|
+
if authorization_request.create
|
28
|
+
print "Use this link to confirm authorizations: "
|
29
|
+
puts authorization_request.url
|
30
|
+
else
|
31
|
+
puts authorization_request.errors.join("\n")
|
32
|
+
end
|
@@ -0,0 +1,71 @@
|
|
1
|
+
require_relative "../boot"
|
2
|
+
|
3
|
+
# Create Split Payment.
|
4
|
+
#
|
5
|
+
# You need to set your ApplicationCredentials (EMAIL, TOKEN) in the application
|
6
|
+
# config.
|
7
|
+
#
|
8
|
+
# P.S: See the boot file example for more details.
|
9
|
+
|
10
|
+
payment = PagSeguro::PaymentRequest.new
|
11
|
+
payment.abandon_url = "http://example.com/?abandoned"
|
12
|
+
payment.notification_url = "http://example.com/?notification"
|
13
|
+
payment.redirect_url = "http://example.com/?redirect"
|
14
|
+
|
15
|
+
# If you don't want to use the application config, you can give your credentials
|
16
|
+
# object to payment request.
|
17
|
+
|
18
|
+
payment.credentials = PagSeguro::ApplicationCredentials.new('APP_ID', 'APP_KEY')
|
19
|
+
|
20
|
+
payment.items << {
|
21
|
+
id: 1234,
|
22
|
+
description: %[Televisão 19" Sony],
|
23
|
+
quantity: 1,
|
24
|
+
amount: 459.50,
|
25
|
+
shipping_cost: 0.0,
|
26
|
+
weight: 0
|
27
|
+
}
|
28
|
+
|
29
|
+
payment.primary_receiver = 'primary.receiver@example.com'
|
30
|
+
|
31
|
+
payment.receivers = [
|
32
|
+
{
|
33
|
+
email: 'other.receiver@example.com',
|
34
|
+
split: { amount: '400.00', },
|
35
|
+
}
|
36
|
+
]
|
37
|
+
|
38
|
+
payment.reference = "REF1234"
|
39
|
+
payment.sender = {
|
40
|
+
name: "Sender One",
|
41
|
+
email: "sender@example.com",
|
42
|
+
document: { type: "CPF", value: "75073461100" },
|
43
|
+
phone: {
|
44
|
+
area_code: 11,
|
45
|
+
number: "12345678"
|
46
|
+
}
|
47
|
+
}
|
48
|
+
|
49
|
+
payment.shipping = {
|
50
|
+
type_name: "sedex",
|
51
|
+
address: {
|
52
|
+
street: "R. Vergueiro",
|
53
|
+
number: 1421,
|
54
|
+
complement: "Sala 213",
|
55
|
+
city: "São Paulo",
|
56
|
+
state: "SP",
|
57
|
+
district: "Vila Mariana"
|
58
|
+
}
|
59
|
+
}
|
60
|
+
|
61
|
+
puts "=> REQUEST"
|
62
|
+
puts PagSeguro::PaymentRequest::RequestSerializer.new(payment).to_xml_params
|
63
|
+
|
64
|
+
response = payment.register
|
65
|
+
|
66
|
+
puts
|
67
|
+
puts "=> RESPONSE"
|
68
|
+
puts response.url
|
69
|
+
puts response.code
|
70
|
+
puts response.created_at
|
71
|
+
puts response.errors.to_a
|
@@ -0,0 +1,118 @@
|
|
1
|
+
require_relative "../boot"
|
2
|
+
|
3
|
+
# Create Transaction Using Boleto and Split Payment
|
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.example.com/notification"
|
11
|
+
payment.payment_mode = "default"
|
12
|
+
payment.credentials = PagSeguro::ApplicationCredentials.new("APP_ID", "APP_KEY")
|
13
|
+
|
14
|
+
payment.items << {
|
15
|
+
id: 1234,
|
16
|
+
description: %[Televisão 19" Sony],
|
17
|
+
amount: 50.0,
|
18
|
+
weight: 0
|
19
|
+
}
|
20
|
+
|
21
|
+
payment.reference = "REF1234-boleto"
|
22
|
+
payment.sender = {
|
23
|
+
hash: "32fb09327a27b0a09a194a21d00be6d922fba5cfcdba03f15b3408029b56d41a",
|
24
|
+
name: "Joao Comprador",
|
25
|
+
email: "joao.comprador@sandbox.pagseguro.com.br",
|
26
|
+
document: { type: "CPF", value: "75073461100" },
|
27
|
+
phone: {
|
28
|
+
area_code: 11,
|
29
|
+
number: "12345678"
|
30
|
+
}
|
31
|
+
}
|
32
|
+
|
33
|
+
payment.shipping = {
|
34
|
+
type_name: "sedex",
|
35
|
+
address: {
|
36
|
+
street: "Av. Brig. Faria Lima",
|
37
|
+
number: "1384",
|
38
|
+
complement: "5º andar",
|
39
|
+
city: "São Paulo",
|
40
|
+
state: "SP",
|
41
|
+
district: "Jardim Paulistano",
|
42
|
+
postal_code: "01452002"
|
43
|
+
}
|
44
|
+
}
|
45
|
+
|
46
|
+
payment.receivers = [
|
47
|
+
{
|
48
|
+
public_key: 'PUBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA',
|
49
|
+
split: {
|
50
|
+
amount: 20.0,
|
51
|
+
rate_percent: 50.0,
|
52
|
+
fee_percent: 50.0
|
53
|
+
}
|
54
|
+
}
|
55
|
+
]
|
56
|
+
|
57
|
+
# Add extras params to request
|
58
|
+
# payment.extra_params << { paramName: 'paramValue' }
|
59
|
+
# payment.extra_params << { senderBirthDate: '07/05/1981' }
|
60
|
+
|
61
|
+
puts "=> REQUEST"
|
62
|
+
puts PagSeguro::TransactionRequest::RequestSerializer.new(payment).to_params
|
63
|
+
puts
|
64
|
+
|
65
|
+
payment.create
|
66
|
+
|
67
|
+
if payment.errors.any?
|
68
|
+
puts "=> ERRORS"
|
69
|
+
puts payment.errors.join("\n")
|
70
|
+
else
|
71
|
+
puts "=> Transaction"
|
72
|
+
puts " code: #{payment.code}"
|
73
|
+
puts " reference: #{payment.reference}"
|
74
|
+
puts " type: #{payment.type_id}"
|
75
|
+
puts " payment link: #{payment.payment_link}"
|
76
|
+
puts " status: #{payment.status}"
|
77
|
+
puts " payment method type: #{payment.payment_method}"
|
78
|
+
puts " created at: #{payment.created_at}"
|
79
|
+
puts " updated at: #{payment.updated_at}"
|
80
|
+
puts " gross amount: #{payment.gross_amount.to_f}"
|
81
|
+
puts " discount amount: #{payment.discount_amount.to_f}"
|
82
|
+
puts " net amount: #{payment.net_amount.to_f}"
|
83
|
+
puts " extra amount: #{payment.extra_amount.to_f}"
|
84
|
+
puts " installment count: #{payment.installment_count}"
|
85
|
+
|
86
|
+
puts " => Items"
|
87
|
+
puts " items count: #{payment.items.size}"
|
88
|
+
payment.items.each do |item|
|
89
|
+
puts " item id: #{item.id}"
|
90
|
+
puts " description: #{item.description}"
|
91
|
+
puts " quantity: #{item.quantity}"
|
92
|
+
puts " amount: #{item.amount.to_f}"
|
93
|
+
end
|
94
|
+
|
95
|
+
puts " => Receivers"
|
96
|
+
puts " receivers count: #{payment.receivers.size}"
|
97
|
+
payment.receivers.each do |receiver|
|
98
|
+
puts " email: #{receiver.email}"
|
99
|
+
puts " amount: #{receiver.split.amount}"
|
100
|
+
end
|
101
|
+
|
102
|
+
puts " => Sender"
|
103
|
+
puts " name: #{payment.sender.name}"
|
104
|
+
puts " email: #{payment.sender.email}"
|
105
|
+
puts " phone: (#{payment.sender.phone.area_code}) #{payment.sender.phone.number}"
|
106
|
+
puts " document: #{payment.sender.document}"
|
107
|
+
|
108
|
+
puts " => Shipping"
|
109
|
+
puts " street: #{payment.shipping.address.street}, #{payment.shipping.address.number}"
|
110
|
+
puts " complement: #{payment.shipping.address.complement}"
|
111
|
+
puts " postal code: #{payment.shipping.address.postal_code}"
|
112
|
+
puts " district: #{payment.shipping.address.district}"
|
113
|
+
puts " city: #{payment.shipping.address.city}"
|
114
|
+
puts " state: #{payment.shipping.address.state}"
|
115
|
+
puts " country: #{payment.shipping.address.country}"
|
116
|
+
puts " type: #{payment.shipping.type_name}"
|
117
|
+
puts " cost: #{payment.shipping.cost}"
|
118
|
+
end
|
@@ -0,0 +1,152 @@
|
|
1
|
+
require_relative "../boot"
|
2
|
+
|
3
|
+
# Create Transaction Using Credit Card
|
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
|
+
app_id = 'APP_ID'
|
10
|
+
app_key = 'APP_KEY'
|
11
|
+
|
12
|
+
payment = PagSeguro::CreditCardTransactionRequest.new
|
13
|
+
payment.notification_url = "http://www.lojateste.com.br/notification"
|
14
|
+
payment.payment_mode = "default"
|
15
|
+
payment.credentials = PagSeguro::ApplicationCredentials.new(app_id, app_key)
|
16
|
+
|
17
|
+
payment.items << {
|
18
|
+
id: 1234,
|
19
|
+
description: %[Televisão 19" Sony],
|
20
|
+
amount: 100.0,
|
21
|
+
weight: 0
|
22
|
+
}
|
23
|
+
|
24
|
+
payment.reference = "REF1234-credit-card"
|
25
|
+
payment.sender = {
|
26
|
+
hash: "9aff5821b4a6f5a1dc9e15d3a3b02ac666a1629fcb90e2bbf6b7da661b344094",
|
27
|
+
name: "Joao Comprador",
|
28
|
+
email: "EMAIL_FROM@sandbox.pagseguro.com.br",
|
29
|
+
document: { type: "CPF", value: "75073461100" },
|
30
|
+
phone: {
|
31
|
+
area_code: 11,
|
32
|
+
number: "12345678"
|
33
|
+
}
|
34
|
+
}
|
35
|
+
|
36
|
+
payment.shipping = {
|
37
|
+
type_name: "sedex",
|
38
|
+
address: {
|
39
|
+
street: "Av. Brig. Faria Lima",
|
40
|
+
number: "1384",
|
41
|
+
complement: "5º andar",
|
42
|
+
city: "São Paulo",
|
43
|
+
state: "SP",
|
44
|
+
district: "Jardim Paulistano",
|
45
|
+
postal_code: "01452002"
|
46
|
+
}
|
47
|
+
}
|
48
|
+
|
49
|
+
payment.receivers = [
|
50
|
+
{
|
51
|
+
public_key: 'PUBLIC_KEY',
|
52
|
+
split: {
|
53
|
+
amount: 20.0,
|
54
|
+
rate_percent: 50.0,
|
55
|
+
fee_percent: 50.0
|
56
|
+
}
|
57
|
+
}
|
58
|
+
]
|
59
|
+
|
60
|
+
payment.billing_address = {
|
61
|
+
street: "Av. Brig. Faria Lima",
|
62
|
+
number: "1384",
|
63
|
+
complement: "5º andar",
|
64
|
+
city: "São Paulo",
|
65
|
+
state: "SP",
|
66
|
+
district: "Jardim Paulistano",
|
67
|
+
postal_code: "01452002"
|
68
|
+
}
|
69
|
+
|
70
|
+
payment.credit_card_token = "CREDIT_CARD_TOKEN"
|
71
|
+
payment.holder = {
|
72
|
+
name: "João Comprador",
|
73
|
+
birth_date: "07/05/1981",
|
74
|
+
document: {
|
75
|
+
type: "CPF",
|
76
|
+
value: "00000000191"
|
77
|
+
},
|
78
|
+
phone: {
|
79
|
+
area_code: 11,
|
80
|
+
number: "123456789"
|
81
|
+
}
|
82
|
+
}
|
83
|
+
|
84
|
+
payment.installment = {
|
85
|
+
value: 100.0,
|
86
|
+
quantity: 1
|
87
|
+
}
|
88
|
+
|
89
|
+
# Add extras params to request
|
90
|
+
# payment.extra_params << { paramName: 'paramValue' }
|
91
|
+
# payment.extra_params << { senderBirthDate: '07/05/1981' }
|
92
|
+
|
93
|
+
# Edit the lines above.
|
94
|
+
|
95
|
+
puts "=> REQUEST"
|
96
|
+
puts PagSeguro::TransactionRequest::RequestSerializer.new(payment).to_params
|
97
|
+
puts
|
98
|
+
|
99
|
+
payment.create
|
100
|
+
|
101
|
+
if payment.errors.any?
|
102
|
+
puts "=> ERRORS"
|
103
|
+
puts payment.errors.join("\n")
|
104
|
+
else
|
105
|
+
puts "=> Transaction"
|
106
|
+
puts " code: #{payment.code}"
|
107
|
+
puts " reference: #{payment.reference}"
|
108
|
+
puts " type: #{payment.type_id}"
|
109
|
+
puts " payment link: #{payment.payment_link}"
|
110
|
+
puts " status: #{payment.status}"
|
111
|
+
puts " payment method type: #{payment.payment_method}"
|
112
|
+
puts " created at: #{payment.created_at}"
|
113
|
+
puts " updated at: #{payment.updated_at}"
|
114
|
+
puts " gross amount: #{payment.gross_amount.to_f}"
|
115
|
+
puts " discount amount: #{payment.discount_amount.to_f}"
|
116
|
+
puts " net amount: #{payment.net_amount.to_f}"
|
117
|
+
puts " extra amount: #{payment.extra_amount.to_f}"
|
118
|
+
puts " installment count: #{payment.installment_count}"
|
119
|
+
|
120
|
+
puts " => Items"
|
121
|
+
puts " items count: #{payment.items.size}"
|
122
|
+
payment.items.each do |item|
|
123
|
+
puts " item id: #{item.id}"
|
124
|
+
puts " description: #{item.description}"
|
125
|
+
puts " quantity: #{item.quantity}"
|
126
|
+
puts " amount: #{item.amount.to_f}"
|
127
|
+
end
|
128
|
+
|
129
|
+
puts " => Receivers"
|
130
|
+
puts " receivers count: #{payment.receivers.size}"
|
131
|
+
payment.receivers.each do |receiver|
|
132
|
+
puts " email: #{receiver.email}"
|
133
|
+
puts " amount: #{receiver.split.amount}"
|
134
|
+
end
|
135
|
+
|
136
|
+
puts " => Sender"
|
137
|
+
puts " name: #{payment.sender.name}"
|
138
|
+
puts " email: #{payment.sender.email}"
|
139
|
+
puts " phone: (#{payment.sender.phone.area_code}) #{payment.sender.phone.number}"
|
140
|
+
puts " document: #{payment.sender.document}: #{payment.sender.document}"
|
141
|
+
|
142
|
+
puts " => Shipping"
|
143
|
+
puts " street: #{payment.shipping.address.street}, #{payment.shipping.address.number}"
|
144
|
+
puts " complement: #{payment.shipping.address.complement}"
|
145
|
+
puts " postal code: #{payment.shipping.address.postal_code}"
|
146
|
+
puts " district: #{payment.shipping.address.district}"
|
147
|
+
puts " city: #{payment.shipping.address.city}"
|
148
|
+
puts " state: #{payment.shipping.address.state}"
|
149
|
+
puts " country: #{payment.shipping.address.country}"
|
150
|
+
puts " type: #{payment.shipping.type_name}"
|
151
|
+
puts " cost: #{payment.shipping.cost}"
|
152
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
require "pagseguro"
|
data/lib/pagseguro.rb
ADDED
@@ -0,0 +1,221 @@
|
|
1
|
+
require "bigdecimal"
|
2
|
+
require "forwardable"
|
3
|
+
require "time"
|
4
|
+
|
5
|
+
require "nokogiri"
|
6
|
+
require "aitch"
|
7
|
+
require "i18n"
|
8
|
+
|
9
|
+
require "pagseguro/extensions/mass_assignment"
|
10
|
+
require "pagseguro/extensions/ensure_type"
|
11
|
+
require "pagseguro/extensions/credentiable"
|
12
|
+
require "pagseguro/extensions/collection_object"
|
13
|
+
|
14
|
+
require "pagseguro/version"
|
15
|
+
require "pagseguro/config"
|
16
|
+
|
17
|
+
require "pagseguro/account_credentials"
|
18
|
+
require "pagseguro/application_credentials"
|
19
|
+
require "pagseguro/authorization"
|
20
|
+
require "pagseguro/authorization/collection"
|
21
|
+
require "pagseguro/authorization/request_serializer"
|
22
|
+
require "pagseguro/authorization/response_serializer"
|
23
|
+
require "pagseguro/authorization/response"
|
24
|
+
require "pagseguro/authorization_request"
|
25
|
+
require "pagseguro/authorization_request/request_serializer"
|
26
|
+
require "pagseguro/authorization_request/response_serializer"
|
27
|
+
require "pagseguro/authorization_request/response"
|
28
|
+
require "pagseguro/creditor_fee"
|
29
|
+
require "pagseguro/errors"
|
30
|
+
require "pagseguro/exceptions"
|
31
|
+
require "pagseguro/address"
|
32
|
+
require "pagseguro/document"
|
33
|
+
require "pagseguro/documents"
|
34
|
+
require "pagseguro/shipping"
|
35
|
+
require "pagseguro/phone"
|
36
|
+
require "pagseguro/phones"
|
37
|
+
require "pagseguro/person"
|
38
|
+
require "pagseguro/partner"
|
39
|
+
require "pagseguro/company"
|
40
|
+
require "pagseguro/account"
|
41
|
+
require "pagseguro/installment"
|
42
|
+
require "pagseguro/installment/collection"
|
43
|
+
require "pagseguro/installment/response"
|
44
|
+
require "pagseguro/installment/response_serializer"
|
45
|
+
require "pagseguro/installment/request_serializer"
|
46
|
+
require "pagseguro/item"
|
47
|
+
require "pagseguro/items"
|
48
|
+
require "pagseguro/bank"
|
49
|
+
require "pagseguro/holder"
|
50
|
+
require "pagseguro/manual_subscription_charger"
|
51
|
+
require "pagseguro/manual_subscription_charger/request_serializer"
|
52
|
+
require "pagseguro/manual_subscription_charger/response"
|
53
|
+
require "pagseguro/manual_subscription_charger/response_serializer"
|
54
|
+
require "pagseguro/payment_method"
|
55
|
+
require "pagseguro/payment_release"
|
56
|
+
require "pagseguro/payment_releases"
|
57
|
+
require "pagseguro/payment_request"
|
58
|
+
require "pagseguro/payment_request/request_serializer"
|
59
|
+
require "pagseguro/payment_request/response"
|
60
|
+
require "pagseguro/payment_status"
|
61
|
+
require "pagseguro/permission"
|
62
|
+
require "pagseguro/request"
|
63
|
+
require "pagseguro/transaction_refund"
|
64
|
+
require "pagseguro/transaction_refund/request_serializer"
|
65
|
+
require "pagseguro/transaction_refund/response"
|
66
|
+
require "pagseguro/transaction_refund/response_serializer"
|
67
|
+
require "pagseguro/receiver"
|
68
|
+
require "pagseguro/receiver_split"
|
69
|
+
require "pagseguro/sender"
|
70
|
+
require "pagseguro/session"
|
71
|
+
require "pagseguro/session/response"
|
72
|
+
require "pagseguro/session/response_serializer"
|
73
|
+
require "pagseguro/subscription_discount"
|
74
|
+
require "pagseguro/subscription_discount/request_serializer"
|
75
|
+
require "pagseguro/subscription_discount/response"
|
76
|
+
require "pagseguro/notification"
|
77
|
+
require "pagseguro/notification/authorization"
|
78
|
+
require "pagseguro/notification/transaction"
|
79
|
+
require "pagseguro/subscription_canceller"
|
80
|
+
require "pagseguro/subscription_canceller/response"
|
81
|
+
require "pagseguro/subscription_plan"
|
82
|
+
require "pagseguro/subscription_plan/request_serializer"
|
83
|
+
require "pagseguro/subscription_plan/response"
|
84
|
+
require "pagseguro/subscription_plan/response_serializer"
|
85
|
+
require "pagseguro/subscription_retry"
|
86
|
+
require "pagseguro/subscription_retry/response"
|
87
|
+
require "pagseguro/transaction"
|
88
|
+
require "pagseguro/transaction_status"
|
89
|
+
require "pagseguro/transaction/response"
|
90
|
+
require "pagseguro/transaction/serializer"
|
91
|
+
require "pagseguro/transaction/collection"
|
92
|
+
require "pagseguro/transaction_cancellation"
|
93
|
+
require "pagseguro/transaction_cancellation/request_serializer"
|
94
|
+
require "pagseguro/transaction_cancellation/response"
|
95
|
+
require "pagseguro/transaction_cancellation/response_serializer"
|
96
|
+
require "pagseguro/transaction/search"
|
97
|
+
require "pagseguro/transaction/search/search_by_date"
|
98
|
+
require "pagseguro/transaction/search/search_by_reference"
|
99
|
+
require "pagseguro/transaction/search/search_abandoned"
|
100
|
+
require "pagseguro/transaction_installment"
|
101
|
+
require "pagseguro/transaction_request"
|
102
|
+
require "pagseguro/transaction_request/response"
|
103
|
+
require "pagseguro/transaction_request/response_serializer"
|
104
|
+
require "pagseguro/transaction_request/request_serializer"
|
105
|
+
require "pagseguro/boleto_transaction_request"
|
106
|
+
require "pagseguro/online_debit_transaction_request"
|
107
|
+
require "pagseguro/credit_card_transaction_request"
|
108
|
+
require "pagseguro/subscription_payment_method"
|
109
|
+
require "pagseguro/subscription"
|
110
|
+
require "pagseguro/subscription/request_serializer"
|
111
|
+
require "pagseguro/subscription/response_serializer"
|
112
|
+
require "pagseguro/subscription/response"
|
113
|
+
require "pagseguro/subscription/subscription_search"
|
114
|
+
require "pagseguro/subscription_change_payment"
|
115
|
+
require "pagseguro/subscription_change_payment/request_serializer"
|
116
|
+
require "pagseguro/subscription_change_payment/response"
|
117
|
+
require "pagseguro/subscription_change_status/request_serializer"
|
118
|
+
require "pagseguro/subscription_change_status/response"
|
119
|
+
require "pagseguro/subscription_change_status"
|
120
|
+
require "pagseguro/subscription_transaction"
|
121
|
+
require "pagseguro/subscription_transactions"
|
122
|
+
require "pagseguro/subscription_payment_order"
|
123
|
+
require "pagseguro/subscription_payment_order/response_serializer"
|
124
|
+
require "pagseguro/subscription_payment_order/response"
|
125
|
+
require "pagseguro/subscription_search_payment_orders"
|
126
|
+
|
127
|
+
I18n.load_path += Dir[File.expand_path("../../locales/*.yml", __FILE__)]
|
128
|
+
|
129
|
+
module PagSeguro
|
130
|
+
class << self
|
131
|
+
# Delegates some calls to the config object
|
132
|
+
extend Forwardable
|
133
|
+
def_delegators :configuration, :email, :receiver_email, :token,
|
134
|
+
:environment, :encoding, :app_id, :app_key
|
135
|
+
|
136
|
+
def email=(email)
|
137
|
+
warn "[DEPRECATION] `email=` is deprecated and will be removed. Please use configuration block instead."
|
138
|
+
configuration.email = email
|
139
|
+
end
|
140
|
+
|
141
|
+
def receiver_email=(receiver_email)
|
142
|
+
warn "[DEPRECATION] `receiver_email=` is deprecated and will be removed. Please use configuration block instead."
|
143
|
+
configuration.receiver_email = receiver_email
|
144
|
+
end
|
145
|
+
|
146
|
+
def token=(token)
|
147
|
+
warn "[DEPRECATION] `token=` is deprecated and will be removed. Please use configuration block instead."
|
148
|
+
configuration.token = token
|
149
|
+
end
|
150
|
+
|
151
|
+
def environment=(environment)
|
152
|
+
warn "[DEPRECATION] `environment=` is deprecated and will be removed. Please use configuration block instead."
|
153
|
+
configuration.environment = environment
|
154
|
+
end
|
155
|
+
|
156
|
+
def encoding=(encoding)
|
157
|
+
warn "[DEPRECATION] `encoding=` is deprecated and will be removed. Please use configuration block instead."
|
158
|
+
configuration.encoding = encoding
|
159
|
+
end
|
160
|
+
end
|
161
|
+
|
162
|
+
# Returns an object with the configured account credentials
|
163
|
+
def self.account_credentials
|
164
|
+
PagSeguro::AccountCredentials.new(PagSeguro.email, PagSeguro.token)
|
165
|
+
end
|
166
|
+
|
167
|
+
# Returns an object with the configured application credentials
|
168
|
+
def self.application_credentials
|
169
|
+
PagSeguro::ApplicationCredentials.new(PagSeguro.app_id, PagSeguro.app_key)
|
170
|
+
end
|
171
|
+
|
172
|
+
# Register endpoints by environment.
|
173
|
+
def self.uris
|
174
|
+
@uris ||= {
|
175
|
+
production: {
|
176
|
+
api: "https://ws.pagseguro.uol.com.br/",
|
177
|
+
site: "https://pagseguro.uol.com.br/"
|
178
|
+
},
|
179
|
+
sandbox: {
|
180
|
+
site: 'https://sandbox.pagseguro.uol.com.br/',
|
181
|
+
api: 'https://ws.sandbox.pagseguro.uol.com.br/'
|
182
|
+
}
|
183
|
+
}
|
184
|
+
end
|
185
|
+
|
186
|
+
# Return the root uri based on its type.
|
187
|
+
# Current types are <tt>:api</tt> or <tt>:site</tt>
|
188
|
+
def self.root_uri(type)
|
189
|
+
root = uris.fetch(environment.to_sym) { raise InvalidEnvironmentError }
|
190
|
+
root[type.to_sym]
|
191
|
+
end
|
192
|
+
|
193
|
+
# The configuration instance
|
194
|
+
def self.configuration
|
195
|
+
@configuration ||= PagSeguro::Config.new
|
196
|
+
end
|
197
|
+
|
198
|
+
# Set the global configuration.
|
199
|
+
#
|
200
|
+
# PagSeguro.configure do |config|
|
201
|
+
# config.email = "john@example.com"
|
202
|
+
# config.token = "abc"
|
203
|
+
# config.app_id = "app12345"
|
204
|
+
# config.app_key = "adju3cmADc52C"
|
205
|
+
# config.environment = :sandbox
|
206
|
+
# end
|
207
|
+
#
|
208
|
+
def self.configure(&block)
|
209
|
+
yield configuration
|
210
|
+
end
|
211
|
+
|
212
|
+
# The API endpoint.
|
213
|
+
def self.api_url(path)
|
214
|
+
File.join(root_uri(:api), path)
|
215
|
+
end
|
216
|
+
|
217
|
+
# The site url.
|
218
|
+
def self.site_url(path)
|
219
|
+
File.join(root_uri(:site), path)
|
220
|
+
end
|
221
|
+
end
|