Skip to the page
Chapters

Claims

Void a claim

POST/api/v1/claims/{id}/void

A claim the payer has not seen (a draft, validated, needing attention, queued, or rejected without a payer claim number) becomes voided at once. For a claim the payer has (a payer claim number, or a correction of one, whatever its state), a void transaction is validated and queued: a new claim linked to it (void_transaction), and the original becomes voided when the payer accepts the void. A replacement queued to go out is a conflict until it is sent or its correction cancelled. A predetermination is voided the same way, a returned one included (the way to withdraw it); a converted one is a conflict: void the claim made from it. Send an empty JSON object as the body. Needs an Idempotency-Key header and a key with the submit permission.

Needs a key with submit permission.

Request

Headers

Headers
NameTypeRequiredDescription
Idempotency-KeystringrequiredMakes the request safe to repeat: a request with the same key and body returns the first answer (the reply has an idempotent-replayed header), and the same key with a different request is refused. 1 to 255 printable characters; a UUID is a good choice.At least 1 character.At most 255 characters.Matches `^[\x21-\x7e]{1,255}$`.

Path parameters

Path parameters
NameTypeRequiredDescription
idstringrequiredA claim ID (clm_...).

Response

The claim, and the void transaction when one was queued. Status 200.

Response fields
NameTypeDescription
objectstringAlways `claim_void`.
claimobjectThe claim as it is now: voided when it was never sent; unchanged (until the payer accepts the void) when it was.
claim.idstringAn ID that starts with clm_.
claim.objectstringAlways `claim`.
claim.kindstringclaim, or predetermination (sent before treatment; its answer is an estimate). Set when it was made.One of: `claim`, `predetermination`.
claim.statestringOne of: `draft`, `validated`, `needs_attention`, `queued`, `submitted`, `accepted_clearinghouse`, `accepted_payer`, `rejected`, `voided`, `paid`, `denied`, `reconciled`, `returned`.
claim.next_stepstringOne sentence saying what happens next, or what you must do.
claim.frequencystringoriginal; replacement for a resubmission of a claim the payer has; void for a void transaction.One of: `original`, `replacement`, `void`.
claim.parent_idstring or nullThe claim a void transaction voids.
claim.patient_control_numberstringYour identifier for the claim, or the one we made: unique in your organization, sent on the claim and returned on its status.
claim.officeobject
claim.office.idstringAn ID that starts with off_.
claim.office.namestring
claim.payerobject
claim.payer.idstringAn ID that starts with pyr_.
claim.payer.payer_idstringThe payer's own payer ID.
claim.payer.namestring
claim.rendering_providerobject
claim.rendering_provider.idstringAn ID that starts with prv_.
claim.rendering_provider.first_namestring
claim.rendering_provider.last_namestring
claim.rendering_provider.npistring
claim.patient_nameobjectThe patient: the dependent when there is one, else the subscriber.
claim.patient_name.first_namestring
claim.patient_name.last_namestring
claim.patient_idstring or nullThe patient this is about (pat_...) in the patient directory: the dependent when there is one, else the subscriber. Set by Claim House when a check completes or a claim's patient is written; null while a check is pending, and when the patient has no date of birth or a name with no letters or digits to compare.
claim.service_datesobject
claim.service_dates.firststring (date) or null
claim.service_dates.laststring (date) or null
claim.totalsobject
claim.totals.chargestringThe sum of the line fees, in dollars, as a decimal string.Matches `^-?\d+\.\d{2}$`.
claim.totals.linesintegerAt least -9007199254740991.
claim.paymentobject or nullWhat the payer paid (states paid, denied and reconciled), from its remittances; null before one arrives, when every payment was reversed, and always on a predetermination.
claim.payment.outcomestringpaid or denied: the outcome of the claim's current payment (the latest one no reversal cancelled). A reconciled claim keeps it.One of: `paid`, `denied`.
claim.payment.era_idstringThe ERA of the claim's current payment (era_...): the latest one, when that is not certain.
claim.payment.paidstringWhat the payer paid in all: the sum of every payment applied, reversals subtracted.Matches `^-?\d+\.\d{2}$`.
claim.payment.allowedstring or nullThe amount the current payment allowed, when it said.Matches `^-?\d+\.\d{2}$`.
claim.payment.patient_responsibilitystringWhat the patient owes, as the payer says (deductible, coinsurance and the like).Matches `^-?\d+\.\d{2}$`.
claim.payment.payment_datestring (date) or nullThe payment date of the ERA.
claim.payment.reconciled_atstring (date-time) or nullWhen you confirmed you posted the payment (state reconciled); null until then.
claim.estimateobject or nullA predetermination's estimate (state returned); null before it arrives, and always on a claim.
claim.estimate.era_idstringThe ERA that carried the estimate (era_...).
claim.estimate.allowedstring or nullWhat the payer would allow, when it said.Matches `^-?\d+\.\d{2}$`.
claim.estimate.paystringWhat the payer would pay once the treatment is done.Matches `^-?\d+\.\d{2}$`.
claim.estimate.patientstringThe patient's estimated share.Matches `^-?\d+\.\d{2}$`.
claim.estimate.returned_atstring (date-time)When the estimate arrived.
claim.estimate.linesarray of objectThe estimate per line, where the payer said (line_number is the predetermination's).
claim.estimate.lines[].line_numberintegerAt least 1.
claim.estimate.lines[].allowedstring or nullAn amount in dollars, as a decimal string with two places (such as "113.60").Matches `^-?\d+\.\d{2}$`.
claim.estimate.lines[].paystringAn amount in dollars, as a decimal string with two places (such as "113.60").Matches `^-?\d+\.\d{2}$`.
claim.estimate.lines[].patientstringAn amount in dollars, as a decimal string with two places (such as "113.60").Matches `^-?\d+\.\d{2}$`.
claim.converted_fromstring or nullOn a claim made from a predetermination: the predetermination.
claim.converted_tostring or nullOn a converted predetermination: the claim made from it.
claim.request_idstring or nullThe API request that made the claim (the x-request-id of its response); null for a claim made in the dashboard.
claim.created_atstring (date-time)
claim.updated_atstring (date-time)
claim.subscriberobject
claim.subscriber.first_namestring
claim.subscriber.last_namestring
claim.subscriber.date_of_birthstring (date) or null
claim.subscriber.genderstring or nullOne of: `F`, `M`, `U`.
claim.subscriber.member_idstring
claim.subscriber.group_numbervalue
claim.subscriber.addressobject or null
claim.subscriber.address.line1string
claim.subscriber.address.line2value
claim.subscriber.address.citystring
claim.subscriber.address.statestring
claim.subscriber.address.postal_codestring
claim.patientobject or nullThe patient, when not the subscriber.
claim.patient.first_namestring
claim.patient.last_namestring
claim.patient.date_of_birthstring (date) or null
claim.patient.genderstring or nullOne of: `F`, `M`, `U`.
claim.patient.relationshipstringOne of: `spouse`, `child`, `other`.
claim.patient.addressobject or null
claim.patient.address.line1string
claim.patient.address.line2value
claim.patient.address.citystring
claim.patient.address.statestring
claim.patient.address.postal_codestring
claim.place_of_servicestring
claim.linesarray of object
claim.lines[].line_numberintegerAt least 1.
claim.lines[].cdtstring
claim.lines[].descriptionvalueThe description you sent, or our short description of the code when you sent none and it is a common one.
claim.lines[].service_datestring (date) or nullThe date of service. Null on a predetermination (it has none), and on a claim made from one until you add it.
claim.lines[].feestringThe charge for the whole line, in dollars, as a decimal string (never multiplied by the quantity).Matches `^-?\d+\.\d{2}$`.
claim.lines[].quantityintegerHow many units the line is for: a count sent with the line (SV306).At least -9007199254740991.
claim.lines[].toothvalue
claim.lines[].surfacesvalue
claim.lines[].areavalueThe oral cavity code: a quadrant (10, 20, 30, 40), an arch (01, 02) or 00.
claim.remarksvalue
claim.metadataobject
claim.attachmentsarray of stringThe attachments the claim carries, in the order the claim file writes them (a PWK and a note for each).Each item matches `^att_[0-9A-HJKMNP-TV-Z]{26}$`.
claim.validationobject or nullThe result of the last validation; null while the claim has not been validated.
claim.validation.validated_atstring (date-time)
claim.validation.errorsintegerAt least -9007199254740991.
claim.validation.warningsintegerAt least -9007199254740991.
claim.validation.findingsarray of object
claim.validation.findings[].fieldvalueThe request field the finding is about, as a dotted path (lines[0].tooth), or null for the claim as a whole.
claim.validation.findings[].codestringA stable code for the finding.
claim.validation.findings[].messagestring
claim.validation.findings[].severitystringAn error keeps the claim from being sent; a warning does not.One of: `error`, `warning`.
claim.networkobject
claim.network.submitted_atstring (date-time) or null
claim.network.clearinghouse_claim_idvalue
claim.network.payer_claim_numbervalueThe payer's own number for the claim, once it has accepted it.
claim.network.rejectionobject or null
claim.network.rejection.sourcestringOne of: `clearinghouse`, `payer`.
claim.network.rejection.categoryvalueThe status category code from the 277 (such as A7).
claim.network.rejection.codevalueThe status code from the 277 (such as 33).
claim.network.rejection.messagestringWhy, in plain words.
claim.network.rejection.fixvalueWhat to change, when it is known.
claim.idempotency_keyvalueThe Idempotency-Key the claim was sent with.
void_transactionobject or nullThe void transaction queued for a claim the payer has, or null.
void_transaction.idstringAn ID that starts with clm_.
void_transaction.objectstringAlways `claim`.
void_transaction.kindstringclaim, or predetermination (sent before treatment; its answer is an estimate). Set when it was made.One of: `claim`, `predetermination`.
void_transaction.statestringOne of: `draft`, `validated`, `needs_attention`, `queued`, `submitted`, `accepted_clearinghouse`, `accepted_payer`, `rejected`, `voided`, `paid`, `denied`, `reconciled`, `returned`.
void_transaction.next_stepstringOne sentence saying what happens next, or what you must do.
void_transaction.frequencystringoriginal; replacement for a resubmission of a claim the payer has; void for a void transaction.One of: `original`, `replacement`, `void`.
void_transaction.parent_idstring or nullThe claim a void transaction voids.
void_transaction.patient_control_numberstringYour identifier for the claim, or the one we made: unique in your organization, sent on the claim and returned on its status.
void_transaction.officeobject
void_transaction.office.idstringAn ID that starts with off_.
void_transaction.office.namestring
void_transaction.payerobject
void_transaction.payer.idstringAn ID that starts with pyr_.
void_transaction.payer.payer_idstringThe payer's own payer ID.
void_transaction.payer.namestring
void_transaction.rendering_providerobject
void_transaction.rendering_provider.idstringAn ID that starts with prv_.
void_transaction.rendering_provider.first_namestring
void_transaction.rendering_provider.last_namestring
void_transaction.rendering_provider.npistring
void_transaction.patient_nameobjectThe patient: the dependent when there is one, else the subscriber.
void_transaction.patient_name.first_namestring
void_transaction.patient_name.last_namestring
void_transaction.patient_idstring or nullThe patient this is about (pat_...) in the patient directory: the dependent when there is one, else the subscriber. Set by Claim House when a check completes or a claim's patient is written; null while a check is pending, and when the patient has no date of birth or a name with no letters or digits to compare.
void_transaction.service_datesobject
void_transaction.service_dates.firststring (date) or null
void_transaction.service_dates.laststring (date) or null
void_transaction.totalsobject
void_transaction.totals.chargestringThe sum of the line fees, in dollars, as a decimal string.Matches `^-?\d+\.\d{2}$`.
void_transaction.totals.linesintegerAt least -9007199254740991.
void_transaction.paymentobject or nullWhat the payer paid (states paid, denied and reconciled), from its remittances; null before one arrives, when every payment was reversed, and always on a predetermination.
void_transaction.payment.outcomestringpaid or denied: the outcome of the claim's current payment (the latest one no reversal cancelled). A reconciled claim keeps it.One of: `paid`, `denied`.
void_transaction.payment.era_idstringThe ERA of the claim's current payment (era_...): the latest one, when that is not certain.
void_transaction.payment.paidstringWhat the payer paid in all: the sum of every payment applied, reversals subtracted.Matches `^-?\d+\.\d{2}$`.
void_transaction.payment.allowedstring or nullThe amount the current payment allowed, when it said.Matches `^-?\d+\.\d{2}$`.
void_transaction.payment.patient_responsibilitystringWhat the patient owes, as the payer says (deductible, coinsurance and the like).Matches `^-?\d+\.\d{2}$`.
void_transaction.payment.payment_datestring (date) or nullThe payment date of the ERA.
void_transaction.payment.reconciled_atstring (date-time) or nullWhen you confirmed you posted the payment (state reconciled); null until then.
void_transaction.estimateobject or nullA predetermination's estimate (state returned); null before it arrives, and always on a claim.
void_transaction.estimate.era_idstringThe ERA that carried the estimate (era_...).
void_transaction.estimate.allowedstring or nullWhat the payer would allow, when it said.Matches `^-?\d+\.\d{2}$`.
void_transaction.estimate.paystringWhat the payer would pay once the treatment is done.Matches `^-?\d+\.\d{2}$`.
void_transaction.estimate.patientstringThe patient's estimated share.Matches `^-?\d+\.\d{2}$`.
void_transaction.estimate.returned_atstring (date-time)When the estimate arrived.
void_transaction.estimate.linesarray of objectThe estimate per line, where the payer said (line_number is the predetermination's).
void_transaction.estimate.lines[].line_numberintegerAt least 1.
void_transaction.estimate.lines[].allowedstring or nullAn amount in dollars, as a decimal string with two places (such as "113.60").Matches `^-?\d+\.\d{2}$`.
void_transaction.estimate.lines[].paystringAn amount in dollars, as a decimal string with two places (such as "113.60").Matches `^-?\d+\.\d{2}$`.
void_transaction.estimate.lines[].patientstringAn amount in dollars, as a decimal string with two places (such as "113.60").Matches `^-?\d+\.\d{2}$`.
void_transaction.converted_fromstring or nullOn a claim made from a predetermination: the predetermination.
void_transaction.converted_tostring or nullOn a converted predetermination: the claim made from it.
void_transaction.request_idstring or nullThe API request that made the claim (the x-request-id of its response); null for a claim made in the dashboard.
void_transaction.created_atstring (date-time)
void_transaction.updated_atstring (date-time)
void_transaction.subscriberobject
void_transaction.subscriber.first_namestring
void_transaction.subscriber.last_namestring
void_transaction.subscriber.date_of_birthstring (date) or null
void_transaction.subscriber.genderstring or nullOne of: `F`, `M`, `U`.
void_transaction.subscriber.member_idstring
void_transaction.subscriber.group_numbervalue
void_transaction.subscriber.addressobject or null
void_transaction.subscriber.address.line1string
void_transaction.subscriber.address.line2value
void_transaction.subscriber.address.citystring
void_transaction.subscriber.address.statestring
void_transaction.subscriber.address.postal_codestring
void_transaction.patientobject or nullThe patient, when not the subscriber.
void_transaction.patient.first_namestring
void_transaction.patient.last_namestring
void_transaction.patient.date_of_birthstring (date) or null
void_transaction.patient.genderstring or nullOne of: `F`, `M`, `U`.
void_transaction.patient.relationshipstringOne of: `spouse`, `child`, `other`.
void_transaction.patient.addressobject or null
void_transaction.patient.address.line1string
void_transaction.patient.address.line2value
void_transaction.patient.address.citystring
void_transaction.patient.address.statestring
void_transaction.patient.address.postal_codestring
void_transaction.place_of_servicestring
void_transaction.linesarray of object
void_transaction.lines[].line_numberintegerAt least 1.
void_transaction.lines[].cdtstring
void_transaction.lines[].descriptionvalueThe description you sent, or our short description of the code when you sent none and it is a common one.
void_transaction.lines[].service_datestring (date) or nullThe date of service. Null on a predetermination (it has none), and on a claim made from one until you add it.
void_transaction.lines[].feestringThe charge for the whole line, in dollars, as a decimal string (never multiplied by the quantity).Matches `^-?\d+\.\d{2}$`.
void_transaction.lines[].quantityintegerHow many units the line is for: a count sent with the line (SV306).At least -9007199254740991.
void_transaction.lines[].toothvalue
void_transaction.lines[].surfacesvalue
void_transaction.lines[].areavalueThe oral cavity code: a quadrant (10, 20, 30, 40), an arch (01, 02) or 00.
void_transaction.remarksvalue
void_transaction.metadataobject
void_transaction.attachmentsarray of stringThe attachments the claim carries, in the order the claim file writes them (a PWK and a note for each).Each item matches `^att_[0-9A-HJKMNP-TV-Z]{26}$`.
void_transaction.validationobject or nullThe result of the last validation; null while the claim has not been validated.
void_transaction.validation.validated_atstring (date-time)
void_transaction.validation.errorsintegerAt least -9007199254740991.
void_transaction.validation.warningsintegerAt least -9007199254740991.
void_transaction.validation.findingsarray of object
void_transaction.validation.findings[].fieldvalueThe request field the finding is about, as a dotted path (lines[0].tooth), or null for the claim as a whole.
void_transaction.validation.findings[].codestringA stable code for the finding.
void_transaction.validation.findings[].messagestring
void_transaction.validation.findings[].severitystringAn error keeps the claim from being sent; a warning does not.One of: `error`, `warning`.
void_transaction.networkobject
void_transaction.network.submitted_atstring (date-time) or null
void_transaction.network.clearinghouse_claim_idvalue
void_transaction.network.payer_claim_numbervalueThe payer's own number for the claim, once it has accepted it.
void_transaction.network.rejectionobject or null
void_transaction.network.rejection.sourcestringOne of: `clearinghouse`, `payer`.
void_transaction.network.rejection.categoryvalueThe status category code from the 277 (such as A7).
void_transaction.network.rejection.codevalueThe status code from the 277 (such as 33).
void_transaction.network.rejection.messagestringWhy, in plain words.
void_transaction.network.rejection.fixvalueWhat to change, when it is known.
void_transaction.idempotency_keyvalueThe Idempotency-Key the claim was sent with.

Errors

Errors
HTTP statusCodeWhat it means
401UNAUTHORIZEDA valid API key is required. Send it as "Authorization: Bearer <key>".
403PERMISSION_DENIEDThis API key is not allowed to do that.
404NOT_FOUNDNot found.
422INVALID_REQUESTThe request is not valid.
400IDEMPOTENCY_KEY_REQUIREDPOST and PATCH requests need an Idempotency-Key header.
422IDEMPOTENCY_KEY_REUSEDThat Idempotency-Key was already used with a different request.
409IDEMPOTENCY_KEY_IN_USEA request with that Idempotency-Key is still running. Retry shortly.
413PAYLOAD_TOO_LARGEThe request body is larger than 1 MB.
504TIMEOUTThe request took too long to finish. It may still have taken effect: look it up before sending it again with a new Idempotency-Key. What it made is found with GET /api/v1/eligibility?request_id=<this request_id>, and the same filter on /api/v1/claims and /api/v1/attachments (a key with read permission).
503CLAIMS_UNAVAILABLEClaims are not available in live mode yet. Use a test key.
409CONFLICTThe resource is not in a state that allows this, or it changed while the request was handled. Read it, then decide whether to send the request again.
500INTERNALSomething went wrong on our side. Quote the request ID if you contact us.

Example

Example request

Shell
curl -X POST "https://sandbox.myclaimhouse.com/api/v1/claims/clm_01JM000000E00800000000002G/void" \
  -H "Authorization: Bearer $CLAIMHOUSE_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{}'

Example response: 200

JSON
{
  "object": "claim_void",
  "claim": {
    "id": "clm_01JM000000E00800000000002G",
    "object": "claim",
    "kind": "claim",
    "state": "accepted_payer",
    "next_step": "The payer accepted the claim. Nothing is needed from you while it is processed.",
    "frequency": "original",
    "parent_id": null,
    "patient_control_number": "CH4Q7M2K9TRB",
    "office": {
      "id": "off_01JM000000E008000000000003",
      "name": "Example Family Dental"
    },
    "payer": {
      "id": "pyr_01JM000000E008000000000004",
      "payer_id": "00000",
      "name": "Example Dental Plan"
    },
    "rendering_provider": {
      "id": "prv_01JM000000E008000000000005",
      "first_name": "Riley",
      "last_name": "Example",
      "npi": "1999990017"
    },
    "patient_name": {
      "first_name": "Alex",
      "last_name": "Example"
    },
    "service_dates": {
      "first": "2026-09-24",
      "last": "2026-09-24"
    },
    "totals": {
      "charge": "1140.00",
      "lines": 1
    },
    "payment": null,
    "estimate": null,
    "converted_from": null,
    "converted_to": null,
    "patient_id": "pat_01JM000000E00800000000004K",
    "request_id": "req_01JM000000E00800000000002J",
    "created_at": "2026-09-24T21:00:00.120000+00:00",
    "updated_at": "2026-09-24T21:00:00.310000+00:00",
    "subscriber": {
      "first_name": "Alex",
      "last_name": "Example",
      "date_of_birth": "1985-04-12",
      "gender": "F",
      "member_id": "CH-ACTIVE-FULL",
      "group_number": null,
      "address": {
        "line1": "1 Example Street",
        "line2": null,
        "city": "Exampleville",
        "state": "GA",
        "postal_code": "30000"
      }
    },
    "patient": null,
    "place_of_service": "11",
    "lines": [
      {
        "line_number": 1,
        "cdt": "D2740",
        "description": "Porcelain or ceramic crown",
        "service_date": "2026-09-24",
        "fee": "1140.00",
        "quantity": 1,
        "tooth": "3",
        "surfaces": null,
        "area": null
      }
    ],
    "remarks": null,
    "metadata": {
      "pms_claim_number": "PMS-1042"
    },
    "attachments": [
      "att_01JM000000E00800000000003G"
    ],
    "validation": {
      "validated_at": "2026-09-24T21:00:00.300000+00:00",
      "errors": 0,
      "warnings": 0,
      "findings": []
    },
    "network": {
      "submitted_at": "2026-09-24T21:00:30.000000+00:00",
      "clearinghouse_claim_id": "SBX4K7Q2M9TB",
      "payer_claim_number": "990000001042",
      "rejection": null
    },
    "idempotency_key": "pms-1042"
  },
  "void_transaction": {
    "id": "clm_01JM000000E00800000000002H",
    "object": "claim",
    "kind": "claim",
    "state": "queued",
    "next_step": "This claim is queued and goes out in the next batch.",
    "frequency": "void",
    "parent_id": "clm_01JM000000E00800000000002G",
    "patient_control_number": "CH0001043",
    "office": {
      "id": "off_01JM000000E008000000000003",
      "name": "Example Family Dental"
    },
    "payer": {
      "id": "pyr_01JM000000E008000000000004",
      "payer_id": "00000",
      "name": "Example Dental Plan"
    },
    "rendering_provider": {
      "id": "prv_01JM000000E008000000000005",
      "first_name": "Riley",
      "last_name": "Example",
      "npi": "1999990017"
    },
    "patient_name": {
      "first_name": "Alex",
      "last_name": "Example"
    },
    "service_dates": {
      "first": "2026-09-24",
      "last": "2026-09-24"
    },
    "totals": {
      "charge": "1140.00",
      "lines": 1
    },
    "payment": null,
    "estimate": null,
    "converted_from": null,
    "converted_to": null,
    "patient_id": "pat_01JM000000E00800000000004K",
    "request_id": "req_01JM000000E00800000000002K",
    "created_at": "2026-09-24T21:00:00.120000+00:00",
    "updated_at": "2026-09-24T21:00:00.310000+00:00",
    "subscriber": {
      "first_name": "Alex",
      "last_name": "Example",
      "date_of_birth": "1985-04-12",
      "gender": "F",
      "member_id": "CH-ACTIVE-FULL",
      "group_number": null,
      "address": {
        "line1": "1 Example Street",
        "line2": null,
        "city": "Exampleville",
        "state": "GA",
        "postal_code": "30000"
      }
    },
    "patient": null,
    "place_of_service": "11",
    "lines": [
      {
        "line_number": 1,
        "cdt": "D2740",
        "description": "Porcelain or ceramic crown",
        "service_date": "2026-09-24",
        "fee": "1140.00",
        "quantity": 1,
        "tooth": "3",
        "surfaces": null,
        "area": null
      }
    ],
    "remarks": null,
    "metadata": {
      "pms_claim_number": "PMS-1042"
    },
    "attachments": [
      "att_01JM000000E00800000000003G"
    ],
    "validation": {
      "validated_at": "2026-09-24T21:00:00.300000+00:00",
      "errors": 0,
      "warnings": 0,
      "findings": []
    },
    "network": {
      "submitted_at": null,
      "clearinghouse_claim_id": null,
      "payer_claim_number": null,
      "rejection": null
    },
    "idempotency_key": "void-1042"
  }
}