Golang client for PayPal REST API
Go to file
2021-01-20 09:31:54 +01:00
.github remove workflows 2020-05-31 18:18:05 +02:00
.gitignore Add verify webhook signature response (#117) 2019-09-19 08:03:42 -07:00
.travis.yml add context support 2021-01-03 10:49:14 +01:00
authorization.go add context support 2021-01-03 10:49:14 +01:00
billing.go deprecate a few inconsistently named things and but keep aliases. 2021-01-20 09:31:54 +01:00
client.go add context support 2021-01-03 10:49:14 +01:00
const.go Order should include payments & purchase_units (#179) 2020-11-17 10:59:42 +01:00
doc.go Update package name 2019-08-21 15:50:20 +02:00
example_test.go deprecate a few inconsistently named things and but keep aliases. 2021-01-20 09:31:54 +01:00
filter_test.go Update package name 2019-08-21 15:50:20 +02:00
filter.go Update package name 2019-08-21 15:50:20 +02:00
go.mod add context support 2021-01-03 10:49:14 +01:00
go.sum Subscriptions, Subscription plans and Products API (#151) 2020-05-30 22:14:19 -07:00
identity.go add context support 2021-01-03 10:49:14 +01:00
integration_test.go deprecate a few inconsistently named things and but keep aliases. 2021-01-20 09:31:54 +01:00
LICENSE.md Update year in LICENSE.md 2019-03-27 18:13:18 +01:00
order.go add context support 2021-01-03 10:49:14 +01:00
patch.go Subscriptions, Subscription plans and Products API (#151) 2020-05-30 22:14:19 -07:00
payout.go deprecate a few inconsistently named things and but keep aliases. 2021-01-20 09:31:54 +01:00
products.go add context support 2021-01-03 10:49:14 +01:00
README.md add context support 2021-01-03 10:49:14 +01:00
sale.go add context support 2021-01-03 10:49:14 +01:00
subscription_plan.go add context support 2021-01-03 10:49:14 +01:00
subscription.go add context support 2021-01-03 10:49:14 +01:00
transaction_search.go add context support 2021-01-03 10:49:14 +01:00
types.go add GetWebhookEventTypes 2021-01-03 21:20:12 +01:00
unit_test.go add context support 2021-01-03 10:49:14 +01:00
vault.go add context support 2021-01-03 10:49:14 +01:00
webhooks.go add GetWebhookEventTypes 2021-01-03 21:20:12 +01:00
webprofile.go add context support 2021-01-03 10:49:14 +01:00

Go Report Card Build Status Godoc

Go client for PayPal REST API

Coverage

  • POST /v1/oauth2/token
  • POST /v1/identity/openidconnect/tokenservice
  • GET /v1/identity/openidconnect/userinfo/?schema=SCHEMA
  • POST /v1/payments/payouts
  • GET /v1/payments/payouts/ID
  • GET /v1/payments/payouts-item/ID
  • POST /v1/payments/payouts-item/ID/cancel
  • GET /v1/payment-experience/web-profiles
  • POST /v1/payment-experience/web-profiles
  • GET /v1/payment-experience/web-profiles/ID
  • PUT /v1/payment-experience/web-profiles/ID
  • DELETE /v1/payment-experience/web-profiles/ID
  • GET /v2/payments/authorizations/ID
  • POST /v2/payments/authorizations/ID/capture
  • POST /v2/payments/authorizations/ID/void
  • POST /v2/payments/authorizations/ID/reauthorize
  • GET /v1/payments/sale/ID
  • POST /v1/payments/sale/ID/refund
  • GET /v2/payments/refund/ID
  • POST /v1/reporting/transactions #Vault
  • POST /v1/vault/credit-cards
  • DELETE /v1/vault/credit-cards/ID
  • PATCH /v1/vault/credit-cards/ID
  • GET /v1/vault/credit-cards/ID
  • GET /v1/vault/credit-cards #Checkout
  • POST /v2/checkout/orders
  • GET /v2/checkout/orders/ID
  • PATCH /v2/checkout/orders/ID
  • POST /v2/checkout/orders/ID/authorize
  • POST /v2/checkout/orders/ID/capture #Billing plans (payments)
  • GET /v1/payments/billing-plans
  • POST /v1/payments/billing-plans
  • PATCH /v1/payments/billing-plans/ID
  • POST /v1/payments/billing-agreements
  • POST /v1/payments/billing-agreements/TOKEN/agreement-execute #Notifications
  • POST /v1/notifications/webhooks
  • GET /v1/notifications/webhooks
  • GET /v1/notifications/webhooks/ID
  • PATCH /v1/notifications/webhooks/ID
  • DELETE /v1/notifications/webhooks/ID
  • POST /v1/notifications/verify-webhook-signature #Products (Catalog)
  • POST /v1/catalogs/products
  • PATCH /v1/catalogs/products/ID
  • GET /v1/catalogs/products/ID
  • GET /v1/catalogs/products #Billing Plans (Subscriptions)
  • POST /v1/billing/plans
  • PATCH /v1/billing/plans/ID
  • GET /v1/billing/plans/ID
  • GET /v1/billing/plans
  • POST /v1/billing/plans/ID/activate
  • POST /v1/billing/plans/ID/deactivate
  • POST /v1/billing/plans/ID/update-pricing-schemes #Subscriptions
  • POST /v1/billing/subscriptions
  • PATCH /v1/billing/subscriptions/ID
  • GET /v1/billing/subscriptions/ID
  • POST /v1/billing/subscriptions/ID/activate
  • POST /v1/billing/subscriptions/ID/cancel
  • POST /v1/billing/subscriptions/ID/revise
  • POST /v1/billing/subscriptions/ID/capture
  • POST /v1/billing/subscriptions/ID/suspend
  • GET /v1/billing/subscriptions/ID/transactions

Missing endpoints

It is possible that some endpoints are missing in this SDK Client, but you can use built-in paypal functions to perform a request: NewClient -> NewRequest -> SendWithAuth

Usage

// If using Go Modules
// import "github.com/plutov/paypal/v4" 
import "github.com/plutov/paypal"

// Create a client instance
c, err := paypal.NewClient("clientID", "secretID", paypal.APIBaseSandBox)
c.SetLog(os.Stdout) // Set log to terminal stdout

accessToken, err := c.GetAccessToken(context.Background())

How to Contribute

  • Fork a repository
  • Add/Fix something
  • Check that tests are passing
  • Create PR

Current contributors:

Tests

  • Unit tests: go test -v ./...
  • Integration tests: go test -tags=integration