yesod-paypal-rest alternatives and similar packages
Based on the "yesod" category.
Alternatively, view yesod-paypal-rest alternatives based on common mentions on social networks and blogs.
-
yesod-persistent
A RESTful Haskell web framework built on WAI. -
yesod-fay
Utilities for using the Fay Haskell-to-JS compiler with Yesod. -
yesod-dsl
A domain specific language and a code generator desined to create RESTful services for managing an RDBMS with Yesod web framework and Persistent. -
yesod-job-queue
Background job queue library for Yesod. -
yesod-crud
Generic administrative CRUD operations as a Yesod subsite -
yesod-auth-hashdb
Yesod.Auth.HashDB plugin, now moved out of main yesod-auth package -
yesod-routes-typescript
generate TypeScript routes for Yesod -
yesod-text-markdown
Yesod support for Text.Markdown -
yesod-auth-fb
Authentication backend for Yesod using Facebook. -
yesod-comments
Drop-in comments module for a Yesod application -
yesod-recaptcha
Dead simple support for reCAPTCHA on Yesod applications. -
yesod-content-pdf
Library for serving PDF content from a Yesod Application -
yesod-goodies
Small utilities useful in any yesod web app -
yesod-form-bootstrap4
yesod-form for bootstrap version 4 -
yesod-worker
Drop-in(ish) background worker system for Yesod applications -
yesod-raml
Generate Yesod framework route definitions, documentaiton, mock-handler, and more from your RAML spec. -
yesod-transloadit
A resuable widget for the Transloadit service & Yesod -
yesod-crud-persist
Easy CRUD subsites for yesod with persistent -
yesod-auth-account-fork
Fork of yesod-auth-account with a few additions -
yesod-auth-kerberos
Kerberos support for Yesod Auth -
yesod-auth-smbclient
Authentication plugin for Yesod using smbclient -
yesod-datatables
Routines for implementing server-side processing for DataTables (jQuery grid) in Haskell -
yesod-auth-bcrypt
BCrypt salted and hashed passwords in a database as auth for yesod -
yesod-auth-ldap-native
Yesod LDAP authentication plugin using native Haskell Ldap.Client -
yesod-test-json
Utility functions for testing JSON web services written in Yesod -
yesod-auth-hmac-keccak
An account authentication plugin for yesod with encrypted token transfer. -
yesod-fb
Useful glue functions between the fb library and Yesod. -
yesod-auth-zendesk
Zendesk remote authentication support for Yesod apps. -
yesod-pnotify
yet another getMessage/setMessage using pnotify jquery plugins -
yesod-auth-deskcom
Desk.com Multipass support for Yesod apps. -
yesod-articles
Automatically generate article previews for a yesod site -
yesod-tls
Provides main functions using warp-tls for yesod projects
WorkOS - The modern identity platform for B2B SaaS
Do you think we are missing an alternative of yesod-paypal-rest or a related project?
README
PayPal Client for Yesod
Integration of paypal-rest-client with Yesod.
Build Status
Warning Regarding Stability
The paypal-rest-client library is an experimental package which asks the user to specify an exact version. It is not expected that experimental release changes in that package will affect this package, so we currently only require a version lower than 1.0.0. Please specify an exact version of paypal-rest-client in your application.
Example Usage
The following code demonstrates how to use this package with an example site. It assumes a module named Config exists.
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE QuasiQuotes #-}
{-# LANGUAGE OverloadedStrings #-}
import qualified Config as Config
import Network.Payments.PayPal
import Network.Payments.PayPal.Environment
import Network.Payments.PayPal.Payments
import Yesod
import Yesod.Payments.PayPal
-- Create site.
data Example = Example YesodPayPalState
-- Create routes.
mkYesod "Example" [parseRoutes|
/ HomeR GET
|]
-- Site is instance of Yesod.
instance Yesod Example where
approot = ApprootStatic "http://localhost:3000"
-- Site will use PayPal.
instance YesodPayPal Example where
yesodPayPalCredentials _ = credentials
yesodPayPalState (Example ppState) = ppState
-- Home page displays information about all transactions.
getHomeR :: Handler Html
getHomeR = do
listResult <- yesodExecPayPal $ listPayments Nothing
case listResult of
Left err -> defaultLayout [whamlet|Error: #{show err}|]
Right result -> defaultLayout [whamlet|Amount of payments: #{show result}|]
-- Start PayPal and start server.
main :: IO ()
main = do
-- Get new PayPal state, including token.
ppStateOrErr <- mkYesodPayPalState credentials
case ppStateOrErr of
Just ppState -> warp 3000 $ Example ppState
Nothing -> error "Could not start server due to missing PayPal token."
-- PayPal credentials.
credentials :: PayPalCredentials
credentials = (sandboxUrl, Config.clientId, Config.secret)