Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.imprint.co/llms.txt

Use this file to discover all available pages before exploring further.

Event Notifications contain
  • an object field which designates the type of event notification, e.g. APPLICATION, PAYMENT_METHOD, and TRANSACTION.
  • a data field that includes details about the event

Application Event

Receive a notification regarding a credit card application. object equals APPLICATION data field structure
PROPERTY NAMEREQUIREDTYPEDESCRIPTION
customer_idTRUEStringUnique identifier of the customer
partner_customer_idFALSEStringPartner’s unique identifier of the customer
statusTRUEStringCurrent status of the application
created_atTRUETimestampRFC-3339 date application was created
updated_atFALSETimestampRFC-3339 date application was updated
Example:
{
  "object": "APPLICATION",
  "data": {
    "customer_id": "2EE24580-B97B-4949-A65C-929CCB9B9B8D",
    "partner_customer_id": "PARTNER_USER_456",
    "status": "OFFER_ACCEPTED",
    "created_at": "2025-02-13T19:08:07.000Z",
    "updated_at": "2025-02-13T19:08:07.000Z"
  }
}
Application status values include:
  • REJECTED - Application has been rejected by Imprint.
  • OFFER_ACCEPTED - Credit offer has been accepted by the customer. This is terminal.

Payment Method Event

Receive a notification when a payment method is created (e.g. new credit card account) or updated (e.g. virtual card reissued) object equals PAYMENT_METHOD data field structure
PROPERTY NAMEREQUIREDTYPEDESCRIPTION
payment_method_idTRUEStringUnique identifier of the payment method
customer_idTRUEStringUnique identifier of the customer
partner_customer_idFALSEStringPartner’s unique identifier of the customer
card_design_idFALSEStringUnique identifier of the card design
card_typeTRUEStringType of card, e.g. VIRTUAL or PHYSICAL
previous_statusFALSEStringOld status of the payment method
new_statusFALSEStringNew status of the payment method
tokensFALSEArrayList of tokens associated with the payment method. Only present if the card is tokenized (see below)
created_atTRUETimestampRFC-3339 date payment method was created
updated_atFALSETimestampRFC-3339 date payment method was updated
tokens field structure
PROPERTY NAMEREQUIREDTYPEDESCRIPTION
tokenTRUEStringThe token value
created_atTRUETimestampRFC-3339 date token was created
updated_atTRUETimestampRFC-3339 date token was updated
pan_reference_idTRUEStringPAN reference identifier
Example:
{
  "object": "PAYMENT_METHOD",
  "data": {
    "payment_method_id": "DCBFC736-2286-42DD-897D-160DCA80AED2",
    "customer_id": "2EE24580-B97B-4949-A65C-929CCB9B9B8D",
    "partner_customer_id": "PARTNER_USER_456",
    "card_design_id": "3b9c1f3e-52a0-44c1-b131-a7ab0099a214",
    "card_type": "VIRTUAL",
    "new_status": "ACTIVE",
    "tokens": [
      {
        "token": "<string>",
        "created_at": "2025-02-13T19:08:07.000Z",
        "updated_at": "2025-02-13T19:08:07.000Z",
        "pan_reference_id": "<string>"
      }
    ],
    "created_at": "2025-02-13T19:08:07.000Z",
    "updated_at": "2025-02-13T19:08:07.000Z"
  }
}
Payment method status values include:
  • ACTIVE - Payment method is active and available for use.
  • INACTIVE - Payment method is paused or has not yet been activated by the customer.
  • CANCELED - Payment method has been permanently canceled due to customer request or account closure.

Status Transitions By Card Type

Virtual Cards Virtual cards are always created in ACTIVE status.
  • ACTIVEINACTIVE — Customer pauses their card.
  • ACTIVECANCELED — Customer cancels their card or closes their account.
  • INACTIVECANCELED — Customer cancels their card or closes their account.
Physical Cards Physical cards are always created in INACTIVE status and transition to ACTIVE when the customer initiates activation.
  • INACTIVEACTIVE — Customer activates their physical card.
  • ACTIVEINACTIVE — Customer pauses their card.
  • ACTIVECANCELED — Customer cancels their card or closes their account.
  • INACTIVECANCELED — Customer cancels their card or closes their account.
Reissued Cards When a card is reissued (virtual or physical), you will receive:
  1. A CANCELED webhook for the old card.
  2. A new payment method webhook for the replacement card (ACTIVE for virtual, INACTIVE for physical).

Transaction Event

Receive a notification when a transaction is created or transitions statuses. object equals TRANSACTION data field structure
PROPERTY NAMEREQUIREDTYPEDESCRIPTION
transaction_idTRUEStringUnique identifier of the transaction
event_idTRUEStringUnique identifier of the event
intent_idFALSEStringUnique identifier of the transaction intent
payment_method_idTRUEStringUnique identifier of the payment method
customer_idTRUEStringUnique identifier of the customer
partner_customer_idFALSEStringPartner’s unique identifier of the customer
statusTRUEStringNew status of the transaction
created_atTRUETimestampRFC-3339 date transaction was first approved
updated_atFALSETimestampRFC-3339 date of the event
amountTRUEIntegerAmount of the transaction, all positive values
authorization_codeFALSEStringCode used to authorize the transaction
network_transaction_idFALSEStringUnique identifier of the transaction, assigned by the payment network, e.g. Visa, Mastercard, Amex
purchase_methodFALSEStringHow the purchase was completed
currencyTRUEStringCurrency of the transaction, e.g. “USD”
merchantFALSEObjectMerchant information. Contains nested fields (see below).
merchant field structure
Property NameRequiredTypeDescription
network_idTRUEStringUnique identifier of the merchant, assigned by the payment network (e.g., Visa, Mastercard, Amex).
nameTRUEStringName of the merchant where the transaction occurred.
addressFALSEObjectMerchant address details (see below).
categoryFALSEStringName of the merchant category (e.g., "Grocery Stores").
category_codeFALSEStringCode associated with the merchant category (e.g., "5411").
address Field Structure
Property NameRequiredTypeDescription
street_line1FALSEStringFirst line of the merchant’s address.
street_line2FALSEStringSecond line of the merchant’s address.
cityFALSEStringCity in the merchant’s address.
stateFALSEStringState in the merchant’s address.
postal_codeFALSEStringPostal code in the merchant’s address.
countryFALSEStringCountry in the merchant’s address.
Example:
{
  "object": "TRANSACTION",
  "data": {
    "transaction_id": "e2806932-5f1b-4518-8b15-156d773e9496",
    "event_id": "e2806932-5f1b-4518-8b15-156d773e9496",
    "intent_id": "intent-12345",
    "payment_method_id": "7f754378-dd84-4a9a-b1ce-0646bb769c29",
    "customer_id": "e0549550-90e9-4acb-b7e9-2e4738b7def2",
    "partner_customer_id": "PARTNER_USER_456",
    "status": "APPROVED",
    "created_at": "2025-02-27T18:11:32.358Z",
    "updated_at": "2025-02-27T18:15:00.000Z",
    "amount": 5000,
    "currency": "USD",
    "authorization_code": "645432",
    "network_transaction_id": "txn-789456",
    "purchase_method": "CHIP",
    "merchant": {
      "network_id": "234923454545",
      "name": "Target",
      "category": "Grocery Stores",
      "category_code": "5411",
      "address": {
        "street_line1": "123 Main St",
        "street_line2": "Apt 4B",
        "city": "San Francisco",
        "state": "CA",
        "postal_code": "94105",
        "country": "USA"
      }
    }
  }
}
Transaction purchase_method values include:
  • CHIP
  • CONTACTLESS
  • KEYEDIN
  • ONLINE
  • SWIPE
  • QRCODE
  • OCR
Transactionstatus values include:
  • APPROVED - Authorization request was received from the merchant and approved by Imprint. This creates a pending transaction on the customer’s statement.
  • UPDATED - Authorization request was updated by the merchant. The pending transaction was updated.
  • VOIDED - Approved authorization has been cancelled by the merchant or expired by Imprint, resulting in the pending transaction being removed from the customer’s statement.
  • CAPTURED - Approved authorization has been captured, or a force capture has been created (bypassing the authorization step). This creates a confirmed purchase transaction on the customer’s statement.
  • REFUNDED - Refund has been created by the merchant, either related to a previous capture or standalone (e.g. blind return). This results in a confirmed refund transaction on the customer’s statement.

Transaction Event Examples

Webhook 1: Customer’s successfully authorized a $50 transaction at Shell
{
  "object": "TRANSACTION",
  "data": {
    "amount": 5000,
    "authorization_code": "645432",
    "created_at": "2025-02-27T18:11:32.358Z",
    "currency": "USD",
    "customer_id": "e0549550-90e9-4acb-b7e9-2e4738b7def2",
    "event_id": "e2806932-5f1b-4518-8b15-156d773e9496",
    "merchant": {
      "address": {
        "city": "New York",
        "country": "USA",
        "postal_code": "10002",
        "state": "NY",
        "street_line1": "",
        "street_line2": ""
      },
      "category": "Gas Station",
      "category_code": "5541",
      "network_id": "234923454545",
      "name": "Shell Gas"
    },
    "object": "TRANSACTION",
    "payment_method_id": "7f754378-dd84-4a9a-b1ce-0646bb769c29",
    "purchase_method": "CHIP",
    "status": "APPROVED",
    "transaction_id": "e2806932-5f1b-4518-8b15-156d773e9496",
    "updated_at": "2025-02-27T18:11:32.358Z"
  }
}
Webhook 2: Customer’s authorization was updated to $34.51
{
  "object": "TRANSACTION",
  "data": {
    "amount": 3451,
    "authorization_code": "645432",
    "created_at": "2025-02-27T18:11:32.358Z",
    "currency": "USD",
    "customer_id": "e0549550-90e9-4acb-b7e9-2e4738b7def2",
    "event_id": "8a13cc75-0432-4255-91d1-ac7e8e0db1b0",
    "merchant": {
      "address": {
        "city": "New York",
        "country": "USA",
        "postal_code": "10002",
        "state": "NY",
        "street_line1": "",
        "street_line2": ""
      },
      "category": "Gas Station",
      "category_code": "5541",
      "network_id": "234923454545",
      "name": "Shell Gas"
    },
    "object": "TRANSACTION",
    "payment_method_id": "7f754378-dd84-4a9a-b1ce-0646bb769c29",
    "purchase_method": "CHIP",
    "status": "UPDATED",
    "transaction_id": "e2806932-5f1b-4518-8b15-156d773e9496",
    "updated_at": "2025-02-28T01:11:32.358Z"
  }
}
Webhook 3: Transaction was captured
{
  "object": "TRANSACTION",
  "data": {
    "amount": 3451,
    "authorization_code": "645432",
    "created_at": "2025-02-27T18:11:32.358Z",
    "currency": "USD",
    "customer_id": "e0549550-90e9-4acb-b7e9-2e4738b7def2",
    "event_id": "8b272a5c-0e40-4144-81e8-b9b1f5d0b6e1",
    "merchant": {
      "address": {
        "city": "New York",
        "country": "USA",
        "postal_code": "10002",
        "state": "NY",
        "street_line1": "",
        "street_line2": ""
      },
      "category": "Gas Station",
      "category_code": "5541",
      "network_id": "234923454545",
      "name": "Shell Gas"
    },
    "object": "TRANSACTION",
    "payment_method_id": "7f754378-dd84-4a9a-b1ce-0646bb769c29",
    "purchase_method": "CHIP",
    "status": "CAPTURED",
    "transaction_id": "e2806932-5f1b-4518-8b15-156d773e9496",
    "updated_at": "2025-02-30T01:11:32.358Z"
  }
}
Webhook 4: Customer requested a refund for the transaction and was issued the refund
{
  "object": "TRANSACTION",
  "data": {
    "amount": 3451,
    "authorization_code": "645432",
    "created_at": "2025-02-27T18:11:32.358Z",
    "currency": "USD",
    "customer_id": "e0549550-90e9-4acb-b7e9-2e4738b7def2",
    "event_id": "202dce63-57a1-48c0-b623-6d9295afd7a9",
    "merchant": {
      "address": {
        "city": "New York",
        "country": "USA",
        "postal_code": "10002",
        "state": "NY",
        "street_line1": "",
        "street_line2": ""
      },
      "category": "Gas Station",
      "category_code": "5541",
      "network_id": "234923454545",
      "name": "Shell Gas"
    },
    "object": "TRANSACTION",
    "payment_method_id": "7f754378-dd84-4a9a-b1ce-0646bb769c29",
    "purchase_method": "CHIP",
    "status": "REFUNDED",
    "transaction_id": "e2806932-5f1b-4518-8b15-156d773e9496",
    "updated_at": "2025-03-01T01:11:32.358Z"
  }
}
Receive a notification when a customer linked their partner account. object equals CUSTOMER_LINK data field structure
PROPERTY NAMEREQUIREDTYPEDESCRIPTION
customer_idTRUEStringUnique identifier of the customer
partner_customer_idTRUEStringPartner’s unique identifier of the customer
statusTRUEStringStatus of the customer link
created_atTRUETimestampRFC-3339 date customer link was created
updated_atFALSETimestampRFC-3339 date customer link was updated
Example:
{
  "object": "CUSTOMER_LINK",
  "data": {
    "customer_id": "2EE24580-B97B-4949-A65C-929CCB9B9B8D",
    "partner_customer_id": "PARTNER_USER_456",
    "status": "ACTIVE",
    "created_at": "2025-02-13T19:08:07Z",
    "updated_at": "2025-02-13T19:08:07Z"
  }
}
Customer link status values include:
  • ACTIVE - Customer link is active.