TCC · Retail Network

TCC API

Team Cuban Card — unfunded retail pharmacy network. Returns pricing, dispensing fees, and optionally nearby TCC pharmacies when a patient address is provided.

Overview

TCC (Team Cuban Card) is an unfunded retail pharmacy network. Patients fill their prescriptions at participating local pharmacies at Cost Plus Drugs prices. Unlike CPD, there is no mail-order fulfillment — the patient picks up at a pharmacy.

TCC channel data lives in the tcc_channel field on each PriceListEntry. When an address is provided during a search, the tcc_channel.pharmacies array is populated with nearby pharmacies sorted by distance. If no address is provided, pharmacies is omitted.

Base URL https://api.costplusdrugs.com
Channel field tcc_channel
Fulfillment Retail pharmacy pick-up
Pharmacy radius Default 30 miles · max 100 miles · capped at 20 results per drug
Currency USD
ℹ️ Only TCC network pharmacies are returned. Chains that participate only in the funded network (e.g., Walgreens) appear in CPDAPN results, never TCC. If a TCC product is excluded by a pharmacy chain, that chain's locations will not appear in the pharmacy results for that product, even if they are within the search radius.

GET /pricelist/tcc

Returns the full TCC price list. Only tcc_channel is populated on each entry. The pharmacies array is omitted — use /pricelist/tcc/search with an address to include pharmacy locations.

GET /pricelist/tcc
200 OK — PriceListEntry[] (tcc_channel only, no pharmacies)

Supports the exclude_fields and treatment_category parameters. See Exclude Fields and Treatment Category Filter.

cURL
curl -s https://api.costplusdrugs.com/pricelist/tcc

Schema: TCC Channel

The tcc_channel object returned on each PriceListEntry. All monetary values are in USD. pharmacies is only present when an address is supplied to search.

FieldTypeDescription
price_per_unit string USD per unit inclusive of CPD markup, formatted to 5 decimal places (e.g., "0.06667").
pharmacy_dispensing_fee number Standard TCC dispensing fee (USD). Pharmacy-specific fees, when present, are in pharmacies[].pharmacy_dispensing_fee.
currency "USD" Always "USD".
admin_fee number Admin fee (USD). Included in sample_pack_price_w_dispensing. Not present on the CPDAPN channel.
sample_pack_price number price_per_unit × pack_size × ndc_count
sample_pack_price_w_dispensing number sample_pack_price + pharmacy_dispensing_fee + admin_fee
pharmacies Pharmacy[] | omitted Nearby TCC network pharmacies. Only present when address is provided. The nearest 20 within the search radius, sorted by ascending distance. Pharmacies outside the TCC network, or that exclude this specific TCC product, are filtered out before the 20 are selected.

Schema: Pharmacy

One entry per participating pharmacy within the search radius, nested under tcc_channel.pharmacies (and cpdapn_channel.pharmacies on CPDAPN searches). /pharmacies/tcc and /pharmacies/cpdapn return the same fields except the drug-specific pharmacy_dispensing_fee and sample_pack_price_w_dispensing, and include distance only when an address is given.

FieldTypeRequiredDescription
name string Yes Pharmacy name (e.g., Osco Pharmacy, Printer's Row Pharmacy).
npi string Yes National Provider Identifier.
chain_code string | null No Numeric chain code (e.g., "156") if the pharmacy is part of a chain; null for independents.
address string Yes Full pharmacy address.
distance string Yes Approximate miles from the search address, formatted to 2 decimal places (e.g., "0.60").
pharmacy_dispensing_fee number Yes Pharmacy-specific dispensing fee. For most pharmacies this equals the channel's pharmacy_dispensing_fee; some chains differ (e.g., Walgreens on the CPDAPN network).
sample_pack_price_w_dispensing number Yes Total cost at this specific pharmacy using its own dispensing fee. Always use this field for patient-facing price display.
address_obj object Yes Structured address. Fields: line, line2, city, state, postal_code.
chain string Yes Chain name identifier (e.g., "Albertsons", "Kroger", "Independent"; "WAG" for Walgreens, CPDAPN only).
phone_number string | null No Pharmacy phone number, when available.
effective_date string Yes Network effective date for this pharmacy location.

Example: Full TCC Response

Sample entry as returned from /pricelist/tcc/search?ndc=67877-0511-10 (Atorvastatin 10mg; no address provided, so pharmacies is omitted). equivalent_ndcs is shortened here.

JSON
{
  "external_sku": "d0b9ba0ae3ab9143200cfbce6ecb7a6a",
  "medication_name": "Atorvastatin",
  "brand_generic": "Generic",
  "form": "Tablet",
  "strength": "10mg",
  "treatment_categories": ["Heart Health", "High Cholesterol"],
  "brand_name": "Lipitor",
  "pack_size": 1000,
  "quantity": 1,
  "splittable": true,
  "unit": "ea",
  "equivalent_ndcs": ["67877-0511-10", "00904-6290-61", "68084-0097-01"],
  "rxnorm_id": "617312",
  "special_handling": null,
  "sample_pack_size": 30,
  "sample_volume": "30 count",
  "tcc_channel": {
    "price_per_unit": "0.01090",
    "pharmacy_dispensing_fee": 12,
    "currency": "USD",
    "admin_fee": 1,
    "sample_pack_price": 0.33,
    "sample_pack_price_w_dispensing": 13.33
  }
}

Example: With Nearby Pharmacies

Same drug when an address is provided to /pricelist/tcc/search (the request shown above). The pharmacies array is now populated and sorted by distance; the first 2 of 20 are shown.

JSON — tcc_channel (with pharmacies)
"tcc_channel": {
  "price_per_unit": "0.01090",
  "pharmacy_dispensing_fee": 12,
  "currency": "USD",
  "admin_fee": 1,
  "sample_pack_price": 0.33,
  "sample_pack_price_w_dispensing": 13.33,
  "pharmacies": [
    {
      "name": "Printer's Row Pharmacy",
      "address": "701 South Clark Street, Chicago, IL, 60605",
      "address_obj": { "line": "701 South Clark Street", "line2": "", "city": "Chicago", "state": "IL", "postal_code": "60605" },
      "distance": "0.45",
      "pharmacy_dispensing_fee": 12,
      "chain": "Independent",
      "chain_code": null,
      "phone_number": "773-200-2616",
      "npi": "1992551188",
      "effective_date": "2024-12-02 00:00:00",
      "sample_pack_price_w_dispensing": 13.33
    },
    {
      "name": "Osco Pharmacy",
      "address": "370 N DESPLAINES ST, Chicago, IL, 60661",
      "address_obj": { "line": "370 N DESPLAINES ST", "line2": "", "city": "Chicago", "state": "IL", "postal_code": "60661" },
      "distance": "0.84",
      "pharmacy_dispensing_fee": 12,
      "chain": "Albertsons",
      "chain_code": "156",
      "phone_number": "(312) 243-2714",
      "npi": "1669636601",
      "effective_date": "2024-03-04 00:00:00",
      "sample_pack_price_w_dispensing": 13.33
    }
  ]
}
⚠️ Always use pharmacies[].sample_pack_price_w_dispensing — not tcc_channel.sample_pack_price_w_dispensing — for pharmacy-specific pricing displayed to a patient. A pharmacy's dispensing fee can differ from the standard TCC rate.

Pricing Formulas

Standard TCC Total

Formula
patient_total = (sample_pack_size × price_per_unit)
              + pharmacy_dispensing_fee
              + admin_fee

Chain-Specific Total

When displaying pricing at a specific pharmacy, substitute that pharmacy's fee:

Formula
patient_total_at_chain = (sample_pack_size × price_per_unit)
                        + pharmacies[i].pharmacy_dispensing_fee
                        + admin_fee

# Or use the pre-computed field directly:
patient_total_at_chain = pharmacies[i].sample_pack_price_w_dispensing