Update a Transaction

PATCH https://api.chartmogul.com/v1/transactions/{TRANSACTION_UUID}

Updates a transaction identified by its UUID.

curl -X PATCH "https://api.chartmogul.com/v1/transactions/tr_c9e3f5ff-a091-4232-a7b9-234632fb1754" \
     -u YOUR_API_KEY: \
     -H "Content-Type: application/json" \
     -d '{
              "amount_in_cents": 10000
          }'
{
  "uuid": "tr_c9e3f5ff-a091-4232-a7b9-234632fb1754",
  "external_id": null,
  "type": "refund",
  "date": "2022-12-25T18:10:00.000Z",
  "result": "successful",
  "amount_in_cents": 10000,
  "transaction_fees_in_cents": 0,
  "transaction_fees_currency": null,
  "disabled": false,
  "disabled_at": null,
  "disabled_by": null,
  "user_created": false
}

Behavior with different types of sources. For automatic sources like Stripe, Chargebee, Recurly and Braintree (the latest version of the integration), we now permanently store all records added, edited or disabled using the API. Such edits are preserved after customer re-syncs and automatic updates.

For these sources, use the include_edit_histories query parameter when retrieving transactions to fetch both the original values imported from the billing system and the edited values. The with_disabled query parameter allows you to include disabled records in the response.

For other automatic sources, edits done via the API may be overwritten during customer re-syncs or automatic updates.

For custom sources, edits are not stored separately from the original data.

Path parameters

transaction_uuid string required
The ChartMogul UUID of the transaction to be updated.

Body parameters

type string required
Either payment or refund.
date string required
The timestamp of when the transaction was attempted. Must be an ISO 8601-formatted time. The timezone defaults to UTC unless otherwise specified. The time defaults to 00:00:00 unless specified otherwise.
result string required
Either successful or failed depending on the result of this attempted transaction.
amount_in_cents int32 optional
The partial amount in cents (or pence for GBP, etc.) paid/refunded for this invoice. Defaults to the full amount. The sum of the partial payments/refunds should not exceed the invoiced amount.
transaction_fees_in_cents int32 optional default: 0
The amount of transaction fees in cents (or pence for GBP, etc.). Defaults to zero.
transaction_fees_currency string optional
The three-letter currency code for transaction_fees_in_cents, e.g. USD, EUR, GBP. Refer to the full list of supported currencies.

Response

The response object contains the following data:

uuid
The UUID of the transaction object generated by ChartMogul.
external_id
The unique external identifier for this transaction, as specified by you.
type
One of payment or refund, as specified by you.
date
The timestamp of when the transaction was attempted, as specified by you.
result
The result of the transaction attempt. One of successful or failed, as specified by you.
amount_in_cents
The amount partially paid/refunded for this transaction.
transaction_fees_in_cents
The final total transaction fees paid to a billing provider and/or payment processor for this transaction. Expressed in cents (or pence for GBP, etc.).
transaction_fees_currency
The three-letter currency code for transaction_fees_in_cents. Refer to the full list of supported currencies.
disabled
A boolean stating whether or not the transaction was disabled.
disabled_by
The email address of the user who disabled the transaction (null for non-disabled records).
disabled_at
The date and time when the transaction was disabled (null for non-disabled records).
user_created
A boolean stating whether or not the transaction was created by the user for sources like Stripe, Chargebee, Recurly and Braintree (the latest version of the integration).