Skip to main content

Docusign Django Wrapper for integrating DocuSign with Django Application

Project description

Django-DocuSign

Django wrapper app for DocuSign functionalities

pip install django-docusign

Running Tests

We have a unit test defined for testing the los application. This can be executed using the below command.

python manage.py test

Usage

In order to use the system you must add los_docusign.apps.LosDocusignConfig to your installed apps in your settings.py file.

INSTALLED_APPS = [
    'los_docusign'
]

Test file has the sample implementation of the test_app

Functions in client.py

  1. generate_docusign_preview_url(dict)

    Params required in dict:

    • "envelope_id"
    • "authentication_method"
    • "email"
    • "user_name"
    • "client_user_id"
    • "return_url"
  2. create_envelope(payload)

    Params required:

    • DocuSign payload in JSON format
  3. download_docusign_document(dict)

    Params required in dict:

    • "envelope_id"
    • "doc_download_option"
      • Valid Values:
        1. archive - If the document to be downloaded in zip format.
        2. combined - If the document to be downloaded as a combined document.
  4. process_docusign_webhook(xml_string)

    Params required:

    • Webhook XML string received from Docusign.

    Response dict: { "envelopeId": "c57ec066-c5fa-4aa0-873d-6f285d70242a", "envelope_status": "sent", "recipients": [ { "recipient_id": "a7f73f21-c4ff-4bcb-97c4-b03c91b8528a", "email": "test@test.com", "name": "John Nash", "status": "autoresponded" }, { "recipient_id": "511b2ad3-6650-4773-a6b4-47f64a0ccdaf", "email": "jerry@test.com", "name": "Jerry Tunes", "status": "created" }, { "recipient_id": "0851505f-5af2-42df-bce4-9e0ebe8bd2e2", "email": "tom@test.com", "name": "Tom Tunes", "status": "created" } ] }

  5. update_envelope_and_resend(envelope_id, signers_data) This function is used to update the email/phone number of the signer. This is also used to resend the same envelope to the signers. For resending, recipientId and email are mandatory.

    Params required:

    • envelope_id - The envelope id for which we need to update the signers information or send the same envelope to the signers.
    • signers_data - The signer array which has the information about the signers that needs to be updated. Params required in signers_data:
    • email - The email of the signer.
    • recipientId - The recipient id of the signer
    • phone - The phone number of the signer (optional)

    signers_data example: [ { "recipientId":"123456", "email":"test@test.com", "phone":"1234567890" } ]

  6. update_envelope_status(status_info): This function is used to update the status of the envelope.

    Params required:

    • status_info - The dictionary variale which has the following parameters.
      • envelope_id - The envelope id for which the status needs to be updated
      • status - The status in which we need to set the envelope
      • reason - The reason (if applicable) to be set for the status change. This will be visible to the signer

    status_info example: { "envelope_id":"b1435c5d-3d67-46e8-ab6a-54789f42924e", "status":"voided", "reason":"Voiding an envelope" }

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

los_docusign-0.6.7.tar.gz (26.2 kB view hashes)

Uploaded Source

Built Distribution

los_docusign-0.6.7-py3-none-any.whl (34.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page