Messaging - Pricing

Pay-as-you-go pricing

MATTR uses a pay-as-you-go pricing model.

Each chargeable activity is represented by a SKU. A SKU will be charged on one of the following bases:

  1. Usage-based charges are determined by the volume of an activity x price per activity – SKUs charged on this basis may or may not be the direct result of your invocation of an API
  2. Variable recurring charges are calculated based on the quantity of a particular entity managed across time (such as the number of credentials stored in a given month x price per each credential stored)
  3. Fixed recurring charges are charged as a fixed monthly fee (often as a result of provisioning an Add-On)

MATTR pricing is tiered based on the volume of use of each SKU. If your usage volumes are likely to fall outside the published tiers, please contact us to discuss our high-volume discounts.

All prices presented are exclusive of any taxes that may apply.

Pricing for Messaging

SKU: Generate JWS

A Generate JWS SKU is charged for each successful request to the Sign a Message API endpoint to sign and create a JWS message.

MONTHLY VOLUME RANGE (Price per JWS generated)
SKU0–10,00010,001+
Generate JWS
(all signature schemes)
0.0035 USD per each
(3.50 USD per 1,000)
Contact us for volume pricing

SKU: Verify JWS

When presenting a JWS to the Verify JWS API endpoint for verification, the signature contained within the JWS will be verified.

MONTHLY VOLUME RANGE (Price per JWS verified)
SKU0–10,00010,001+
Verify JWS
(all signature schemes)
0.0035 USD per each
(3.50 USD per 1,000)
Contact us for volume pricing

Verification has taken place, and a Verify JWS SKU will be charged, regardless of if the JWS is deemed to be verified or not.

The Resolve a DID SKU and is not additionally charged as a result of the DID resolution necessary within the context of the Verify JWS API endpoint invocation.

SKU: Generate Encrypted JWM

When presenting a message to the Encrypt a message API endpoint for encryption, one or more Generate JWM SKUs will be charged.

The values provided within the recipientDidUrls collection determine the number of nested encrypted JWMs to be generated and thus the number of Generate JWM SKUs that will be charged.

The maximum permitted payload input size is 4096 bytes.

MONTHLY VOLUME RANGE (Price per encrypted JWM generated)
SKU0–10,00010,001+
Generate Encrypted JWM
(all encryption algorithms)
0.0055 USD per each
(5.50 USD per 1,000)
Contact us for volume pricing

The Resolve a DID SKU and is not additionally charged as a result of the DID resolution necessary within the context of the Encrypt a message API endpoint invocation.

SKU: Decrypt JWM

When presenting an encrypted JWM to the Decrypt a message endpoint for decryption, a single Decrypt JWM SKU will be charged.

The maximum permitted jwe input size is 4096 bytes.

MONTHLY VOLUME RANGE (Price per JWM decrypted)
SKU0–10,00010,001+
Decrypt JWM
(all encryption algorithms)
0.0055 USD per each
(5.50 USD per 1,000)
Contact us for volume pricing

SKU: Send Message

A Send Message SKU will be charged when a message is presented to the Send a message endpoint to send a DIDComm message to a DID’s inbox.

MONTHLY VOLUME RANGE (Price per send message)
SKU0–10,00010,001+
Send Message0.005 USD per each
(5 USD per 1,000)
Contact us for volume pricing

The Send Message SKU will be charged when delivery is attempted and does not indicate the intended recipient’s actual receipt or read of the message.

Sample Usage

Sample Message Send

In order to construct and send a message, one might first call the Sign a Message API endpoint with the raw message and obtain a JWS in response.

If the message, for example, is to be transitted to one intermediary party en route to the intended eventual recipient, one might then call the Encrypt a message API endpoint with the JWS output above, supplying two DIDs within the recipientDidUrls collection. A JWM is returned in response to this call.

Finally, the Send a message endpoint is called with the resultant JWM to transmit it to the intermediary DID’s service endpoint (from which we anticipate it is on sent by the intermediary to the intended recipient).

In this example the following SKUs will be charged:

Sample Message Receipt

Upon receipt of an encrypted message and signed message, one might first seek to decrypt the it using the Decrypt a message endpoint.

Subsequently, upon recognition of the contents as being a JWS, the contents of the message can then be passed to the Verify JWS API endpoint to verify the integrity of the message.

In this example the following SKUs will be charged: