Metadata-Version: 2.1
Name: hyperwallet-sdk
Version: 1.7.2
Summary: A Python wrapper around the Hyperwallet API
Home-page: https://github.com/hyperwallet/python-sdk
Author: The Hyperwallet Developers
Author-email: devsupport@hyperwallet.com
Maintainer: The Hyperwallet Developers
Maintainer-email: devsupport@hyperwallet.com
License: MIT
Keywords: hyperwallet api
Classifier: Development Status :: 4 - Beta
Classifier: Framework :: Sphinx
Classifier: Intended Audience :: Developers
Classifier: Natural Language :: English
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Internet
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Description-Content-Type: text/x-rst
License-File: LICENSE

.. image:: https://travis-ci.org/hyperwallet/python-sdk.svg?branch=master
  :target: https://travis-ci.org/hyperwallet/python-sdk/builds
.. image:: https://coveralls.io/repos/github/hyperwallet/python-sdk/badge.svg?branch=master
  :target: https://coveralls.io/github/hyperwallet/python-sdk?branch=master

====================
Hyperwallet REST SDK 
====================

A library to manage users, transfer methods and payments through the Hyperwallet Rest V3 API

Prerequisites
-------------

Hyperwallet's Python server SDK requires at minimum Python 3.5 and above.

Installation
------------

.. code::

    $ pip install hyperwallet-sdk

Documentation
-------------

Documentation is available at http://hyperwallet.github.io/python-sdk

API Overview
------------

To write an app using the SDK

* Register for a sandbox account and get your username, password and program
  token at the `Hyperwallet Program Portal <https://portal.hyperwallet.com>`_.
* Import the Hyperwallet module

.. code::

    import hyperwallet

* Create an instance of the Hyperwallet Client (with username, password and
  program token)

.. code::

    api = hyperwallet.Api(
        "test-user",
        "test-pass",
        "prg-12345"
    )

* Start making API calls (e.g. create a user)

.. code::

    data = {
        clientUserId: "test-client-id-1",
        profileType: "INDIVIDUAL",
        firstName: "Daffy",
        lastName: "Duck",
        email: "testmail-1@hyperwallet.com",
        addressLine1: "123 Main Street",
        city: "Austin",
        stateProvince: "TX",
        country: "US",
        postalCode: "78701",
        programToken: "[PROGRAM TOKEN]"
    }

    response = api.createUser(data)

Development
-----------

Set up a virtual environment:

.. code::

    $ virtualenv venv
    $ source venv/bin/activate

Install development dependencies:

.. code::

    $ make dev

Run the tests:

.. code::

    $ make test

Compile the documentation:

.. code::

    $ make docs

Requirements
------------

The Hyperwallet API uses TLS 1.2. Please ensure that your SSL library
supports TLS 1.2.

Reference
---------

`REST API Reference <https://portal.hyperwallet.com/docs>`_

License
-------

`MIT <https://raw.githubusercontent.com/hyperwallet/python-sdk/master/LICENSE>`_


Changelog
=========
1.7.2
-------------------
- Added field 'accountId' to PayPal.
- PayPal account creation allowed using field 'accountId' which accepts Email, Phone Number, PayPal PayerID.
- Venmo account creation allowed using field 'accountId' which accepts Email, Phone Number, Venmo Handle, Venmo External ID.

1.7.1
-------------------
- Added attribute 'isDefaultTransferMethod' to identify default accounts.

1.7.0
-------------------
- Added missing webhook groups
- Added webhooks for Transfers
- Added taxVerificationStatus to User
- Added Document and RejectReason models
- Updated filters for list endpoints

1.6.0
-------------------
- Added custom headers
- Added filters
- Added status transitions for Transfers, TransferRefunds

1.5.1
-------------------
- Added field 'processingTime' to BankCards
- Added field 'expiresOn' to Payments

1.5.0
-------------------
- Added Venmo accounts
- Added User status transitions
- Added Transfer refunds
- Added upload multipart documents feature

1.4.0
-------------------
- Fix TypeError thrown when response status is 204 No content
- Fix tests for python 3
- Add updatePayPalAccount()
- Python uses os path join url causing issues on windows
- Add CVV field to the sdk
- Remove Relationship field from Server SDK
- Add Business Operating Name Field to User
- Add PayPal account status transitions

1.3.0 (2019-01-28)
-------------------
- Added field "VerificationStatus" to User
- Client-token endpoint renamed to authentication-token

1.2.1 (2019-01-17)
------------------

- FIX: Resolved issue with restricted "Accept" & "Content-Type" headers to support only "application/json" or "application/jose+json"

1.2.0 (2018-12-20)
------------------

- Restricted “Accept” & “Content-Type” headers to support only “application/json” or “application/jose+json”
- Related resources “relatedResources” in error representation is added
- Added Authentication token endpoint

1.1.4 (2018-12-04)
------------------

- Added PayPal account endpoint

1.1.3 (2018-07-05)
------------------

- Added transfer endpoint

1.1.2 (2018-03-20)
------------------

- Added bank card endpoint

1.1.1 (2017-10-11)
------------------

- Bumped version and first public release!

1.1.0 (2017-09-29)
------------------

- Completed coverage of all endpoints
- 100% code coverage
- Audited available attributes for each model

1.0.0 (2017-08-04)
------------------

- Added support for resource types as models

0.2.0 (2016-12-22)
------------------

- Added support for all API endpoints
- Created package structure for distribution on PyPi
- Added tests

0.1.0 (2016-09-06)
------------------

- Repository creation
- Added license
- Added readme
