Sign inSign up

versa/client-receiver

By versa

Updated about 1 year ago

A client implementation for receiving receipts on the Versa network

Image
API management
Web servers
1

1.7K

versa/client-receiver repository overview

Versa Client Receiver

This is an open-source client implementation for receiving receipts over the Versa network. It should be deployed to a public webhook target, where it will then:

  • perform HMAC verification of incoming events
  • checkout the key from the registry and decrypt the payload
  • forward the decrypted receipt to your local service

The URL of the webhook target (e.g. https://my-versa-client.my-domain.com/receiver/target) should be configured as your Receiver Address in the Versa Client Portal.

As a final integration step, you'll need to map our schema to yours, or store the raw data to be displayed with our front-end libraries.

Getting Started

Run the image with the necessary environment variables:

docker run \
    -e VERSA_CLIENT_ID=versa_cid_xxxxxxxxxxxxx \
    -e VERSA_CLIENT_SECRET=versa_csk_xxxxxxxxx \
    -e VERSA_RECEIVER_SECRET=versa_rsk_xxxxxxxxx \
    -e LOCAL_TARGET_URL=https://my-receipt-endpoint.my-domain.com \
    -p 8080:8080 \
    87c6faff1243

Handling Data

You should configure an endpoint in your native cloud to handle the decrypted payload from the Docker service. The JSON will be delivered in the following format:

{
    "handles": {
      "customer_email_domain": "acme.co"
    },
    "receipt_id": "rct_b87e1f4d3a8f4f2aa5e91fb9afab53ea",
    "receipt": { ... },
    "receiver_client_id": "versa_cid_aa351d18fc074bb2a2f1d70c0d3eccdb",
    "schema_version": "1.7.0",
    "sender_client_id": "versa_cid_bc751d18fc074bb2a2f1d70c0d3ec1de",
    "sender": {
      "brand_color": "#812264",
      "name": "RocketCo",
      ...
    },
    "transaction_id": "txn_88351d18fc074bb2a2f1d70c0d3eccd8"
  }

Tag summary

Content type

Image

Digest

sha256:f6941c5ab

Size

49 MB

Last updated

about 1 year ago

docker pull versa/client-receiver