{"id":51546874,"url":"https://github.com/paypal/PayPal-Ruby-Server-SDK","last_synced_at":"2026-07-12T19:00:52.175Z","repository":{"id":256261059,"uuid":"847885514","full_name":"paypal/PayPal-Ruby-Server-SDK","owner":"paypal","description":null,"archived":false,"fork":false,"pushed_at":"2026-06-04T21:23:19.000Z","size":1655,"stargazers_count":6,"open_issues_count":1,"forks_count":2,"subscribers_count":7,"default_branch":"main","last_synced_at":"2026-06-04T23:10:03.335Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/paypal.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-08-26T18:23:44.000Z","updated_at":"2026-03-23T12:16:52.000Z","dependencies_parsed_at":"2024-11-21T18:27:47.373Z","dependency_job_id":"3783462f-e995-47e3-bdb0-dd39b6bad986","html_url":"https://github.com/paypal/PayPal-Ruby-Server-SDK","commit_stats":null,"previous_names":["paypal/paypal-ruby-server-sdk"],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/paypal/PayPal-Ruby-Server-SDK","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paypal%2FPayPal-Ruby-Server-SDK","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paypal%2FPayPal-Ruby-Server-SDK/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paypal%2FPayPal-Ruby-Server-SDK/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paypal%2FPayPal-Ruby-Server-SDK/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/paypal","download_url":"https://codeload.github.com/paypal/PayPal-Ruby-Server-SDK/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paypal%2FPayPal-Ruby-Server-SDK/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35400291,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-12T02:00:06.386Z","response_time":87,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-07-09T19:00:30.616Z","updated_at":"2026-07-12T19:00:52.170Z","avatar_url":"https://github.com/paypal.png","language":"Ruby","funding_links":["https://developer.paypal.com/docs/api/orders/v2/","https://developer.paypal.com/docs/api/payments/v2","https://developer.paypal.com/docs/api/payment-tokens/v3/","https://developer.paypal.com/docs/api/transaction-search/v1/","https://developer.paypal.com/docs/api/subscriptions/v1/"],"categories":["E-Commerce and Payments"],"sub_categories":[],"readme":"\n# Getting Started with PayPal Server SDK\n\n## Introduction\n\n### Important Notes\n\n- **Available Features:** This SDK currently contains only 5 of PayPal's API endpoints. Additional endpoints and functionality will be added in the future.\n\n### Information\n\nThe PayPal Server SDK provides integration access to the PayPal REST APIs. The API endpoints are divided into distinct controllers:\n\n- Orders Controller: [Orders API v2](https://developer.paypal.com/docs/api/orders/v2/)\n- Payments Controller: [Payments API v2](https://developer.paypal.com/docs/api/payments/v2)\n- Vault Controller: [Payment Method Tokens API v3](https://developer.paypal.com/docs/api/payment-tokens/v3/) *Available in the US only.*\n- Transaction Search Controller: [Transaction Search API v1](https://developer.paypal.com/docs/api/transaction-search/v1/)\n- Subscriptions Controller: [Subscriptions API v1](https://developer.paypal.com/docs/api/subscriptions/v1/)\n\n## Install the Package\n\nInstall the gem from the command line:\n\n```bash\ngem install paypal-server-sdk -v 2.3.0\n```\n\nOr add the gem to your Gemfile and run `bundle`:\n\n```ruby\ngem 'paypal-server-sdk', '2.3.0'\n```\n\nFor additional gem details, see the [RubyGems page for the paypal-server-sdk gem](https://rubygems.org/gems/paypal-server-sdk/versions/2.3.0).\n\n## IRB Console Usage\n\nYou can explore the SDK interactively using IRB in two ways\n\n### 1. Use IRB with Installed Gem\n\nOpen your system terminal (Command Prompt, Git Bash or macOS Terminal) and type the following command to start the irb console.\n\n```bash\nirb\n```\n\nNow you can load the SDK in the IRB\n\n```ruby\nrequire 'paypal_server_sdk'\ninclude PaypalServerSdk\n```\n\n### 2. Use IRB within SDK\n\nOpen your system terminal (Command Prompt, Git Bash or macOS Terminal) and navigate to the root folder of SDK.\n\n```\ncd path/to/paypal_server_sdk\n```\n\nNow you can start the preconfigured irb console by running the following command\n\n```bash\nruby bin/console\n```\n\n**_Note:_** This automatically loads the SDK from lib/\n\n## Initialize the API Client\n\n**_Note:_** Documentation for the client can be found [here.](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/doc/client.md)\n\nThe following parameters are configurable for the API Client:\n\n| Parameter | Type | Description |\n|  --- | --- | --- |\n| environment | [`Environment`](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/README.md#environments) | The API environment. \u003cbr\u003e **Default: `Environment.SANDBOX`** |\n| connection | `Faraday::Connection` | The Faraday connection object passed by the SDK user for making requests |\n| adapter | `Faraday::Adapter` | The Faraday adapter object passed by the SDK user for performing http requests |\n| timeout | `Float` | The value to use for connection timeout. \u003cbr\u003e **Default: 60** |\n| max_retries | `Integer` | The number of times to retry an endpoint call if it fails. \u003cbr\u003e **Default: 0** |\n| retry_interval | `Float` | Pause in seconds between retries. \u003cbr\u003e **Default: 1** |\n| backoff_factor | `Float` | The amount to multiply each successive retry's interval amount by in order to provide backoff. \u003cbr\u003e **Default: 2** |\n| retry_statuses | `Array` | A list of HTTP statuses to retry. \u003cbr\u003e **Default: [408, 413, 429, 500, 502, 503, 504, 521, 522, 524]** |\n| retry_methods | `Array` | A list of HTTP methods to retry. \u003cbr\u003e **Default: %i[get put]** |\n| http_callback | `HttpCallBack` | The Http CallBack allows defining callables for pre and post API calls. |\n| proxy_settings | [`ProxySettings`](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/doc/proxy-settings.md) | Optional proxy configuration to route HTTP requests through a proxy server. |\n| logging_configuration | [`LoggingConfiguration`](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/doc/logging-configuration.md) | The SDK logging configuration for API calls |\n| client_credentials_auth_credentials | [`ClientCredentialsAuthCredentials`](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/doc/auth/oauth-2-client-credentials-grant.md) | The credential object for OAuth 2 Client Credentials Grant |\n\nThe API client can be initialized as follows:\n\n### Code-Based Client Initialization\n\n```ruby\nrequire 'paypal_server_sdk'\ninclude PaypalServerSdk\n\nclient = Client.new(\n  client_credentials_auth_credentials: ClientCredentialsAuthCredentials.new(\n    o_auth_client_id: 'OAuthClientId',\n    o_auth_client_secret: 'OAuthClientSecret'\n  ),\n  environment: Environment::SANDBOX,\n  logging_configuration: LoggingConfiguration.new(\n    log_level: Logger::INFO,\n    request_logging_config: RequestLoggingConfiguration.new(\n      log_body: true\n    ),\n    response_logging_config: ResponseLoggingConfiguration.new(\n      log_headers: true\n    )\n  )\n)\n```\n\n### Environment-Based Client Initialization\n\n```ruby\nrequire 'paypal_server_sdk'\ninclude PaypalServerSdk\n\n# Create client from environment\nclient = Client.from_env\n```\n\nSee the [`Environment-Based Client Initialization`](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/doc/environment-based-client-initialization.md) section for details.\n\n## Environments\n\nThe SDK can be configured to use a different environment for making API calls. Available environments are:\n\n### Fields\n\n| Name | Description |\n|  --- | --- |\n| PRODUCTION | PayPal Live Environment |\n| SANDBOX | **Default** PayPal Sandbox Environment |\n\n## Authorization\n\nThis API uses the following authentication schemes.\n\n* [`Oauth2 (OAuth 2 Client Credentials Grant)`](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/doc/auth/oauth-2-client-credentials-grant.md)\n\n## List of APIs\n\n* [Orders](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/doc/controllers/orders.md)\n* [Payments](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/doc/controllers/payments.md)\n* [Vault](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/doc/controllers/vault.md)\n* [Transaction Search](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/doc/controllers/transaction-search.md)\n* [Subscriptions](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/doc/controllers/subscriptions.md)\n\n## SDK Infrastructure\n\n### Configuration\n\n* [ProxySettings](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/doc/proxy-settings.md)\n* [Environment-Based Client Initialization](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/doc/environment-based-client-initialization.md)\n* [AbstractLogger](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/doc/abstract-logger.md)\n* [LoggingConfiguration](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/doc/logging-configuration.md)\n* [RequestLoggingConfiguration](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/doc/request-logging-configuration.md)\n* [ResponseLoggingConfiguration](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/doc/response-logging-configuration.md)\n\n### HTTP\n\n* [HttpResponse](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/doc/http-response.md)\n* [HttpRequest](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/doc/http-request.md)\n\n### Utilities\n\n* [ApiResponse](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/doc/api-response.md)\n* [ApiHelper](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/doc/api-helper.md)\n* [DateTimeHelper](https://www.github.com/paypal/PayPal-Ruby-Server-SDK/tree/2.3.0/doc/date-time-helper.md)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpaypal%2FPayPal-Ruby-Server-SDK","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpaypal%2FPayPal-Ruby-Server-SDK","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpaypal%2FPayPal-Ruby-Server-SDK/lists"}