Create a payment record for a specific account

POST /accounts/{account_id}/line_items/payments/payment_record

Canopy will simply record the payment details in the system of record without attempting to leverage the payment processing configuration to initiate the actual transaction.

Path parameters

Body Required

Body of request to create payment.

  • line_item_id string Required

    The ID to be associated with the line item for future requests.

    Format should match the following pattern: ^(?!can_).*$.

  • original_amount_cents integer Required

    The payment amount in cents.

    Default value is 0.

  • The new status which you would like to set for the line item

    Values are VALID, INVALID, PENDING, or AUTHORIZED. Default value is VALID.

  • effective_at string(date-time)

    The Date-Time that the payment is applicable to the account. This field should not be used for back-dating payments in VALID status, but may be used to back-date payments in other statuses (eg. PENDING). Valid payment records should be back-dated only for the purposes of testing or if a data migration is being performed with migration_mode enabled.

  • external_fields array[object] | null

    External fields can be used to relate payments created in Canopy to entities in your or any external system.

    Not more than 10 elements.

    • key string

      Key - i.e. Name of the External Party

    • value string

      Value - i.e. External Account ID


POST /accounts/{account_id}/line_items/payments/payment_record
curl \
 -X POST https://<your_environment_name> \
 -H "Authorization: Bearer $ACCESS_TOKEN" \
 -H "Content-Type: application/json" \
 -d '{"line_item_id":"0x1234","original_amount_cents":200,"line_item_status":"VALID","effective_at":"2020-07-20T09:11:28+00:00","external_fields":[{"key":"Globex Card Processing Account ID","value":"22445702-a389-431f-927d-07b8d0750787"}]}'
Request example
  "line_item_id": "0x1234",
  "original_amount_cents": 200,
  "line_item_status": "VALID",
  "effective_at": "2020-07-20T09:11:28+00:00",
  "external_fields": [
      "key": "Globex Card Processing Account ID",
      "value": "22445702-a389-431f-927d-07b8d0750787"
Response example (200)
  "account_id": 4,
  "line_item_id": 2,
  "effective_at": "2018-07-20T09:12:30+00:00",
  "created_at": "2018-06-20T09:12:30+00:00",
  "product_id": 1,
  "line_item_summary": {
    "original_amount_cents": 2484,
    "balance_cents": 3600,
    "principal_cents": 2400,
    "interest_balance_cents": 1100,
    "am_interest_balance_cents": 0,
    "deferred_interest_balance_cents": 200,
    "am_deferred_interest_balance_cents": 0,
    "total_interest_paid_to_date_cents": -16
  "merchant_data": {
    "name": "string",
    "id": "string",
    "mcc_code": 42.0,
    "phone_number": "string"
  "issuer_processor_details": {
    "lithic": {
      "last_four": 3324,
      "transaction_token": "33xd08bc-d100-488y-bb93-f8a1f081ff0e",
      "card_token": "c6cd08bc-c524-48f5-b64d-f79ec0810df4"
  "external_fields": [
      "key": "Globex Card Processing Account ID",
      "value": "22445702-a389-431f-927d-07b8d0750787"
  "line_item_overview": {
    "line_item_status": "VALID",
    "line_item_type": "PAYMENT",
    "description": "Payment against the account"