Payers

Manage payer entities representing the billing party for advertiser spend

Payers

Payers represent the entities responsible for billing — the party invoiced for advertiser spend. A payer may bill for one or more advertisers.

Overview

A Payer entity contains:

  • Identification - Name, description
  • Provider Mappings - Identifiers linking the payer to external systems (e.g. a billing/CRM system)

Query Payers

Basic Query

query GetPayers {
  dream_adserver {
    payers(limit: 10) {
      edges {
        payer_id
        payer_name
        payer_desc
      }
      total_count
    }
  }
}

Filtered Query

query GetFilteredPayers($filter: JSON, $sort: JSON) {
  dream_adserver {
    payers(
      filter: $filter
      sort: $sort
      limit: 25
      offset: 0
    ) {
      edges {
        payer_id
        payer_name
        payer_desc
        payer_ext_id
        payer_ext_ids
        payer_modification_date
        payer_modification_user
      }
      total_count
    }
  }
}

Variables:

{
  "filter": {
    "payer_name": {"like": "%Corp%"}
  },
  "sort": {
    "payer_name": "asc"
  }
}

Available Fields

🚧

Breaking change: payer_modification_time has been renamed to payer_modification_date. Update any query that selects payer_modification_time on DASPayer — the old field name no longer exists in the schema.

FieldTypeDescription
payer_idInt!Unique identifier
payer_nameString!Payer name
payer_descStringDescriptive information about the payer
payer_ext_idStringPayer identifier in an external database
payer_ext_idsJSONJSON string containing pairs of data sources and IDs
payer_modification_dateStringLast modification time (format: yyyy-mm-ddThh:mm:ss.s+zzzzzz)
payer_modification_userStringLogin of the user who last modified the payer data

Mutations

Create/Update Payer

mutation SetPayer($payer: DASPayerInput!) {
  dream_adserver {
    set_payer(payer: $payer) {
      status
      hit {
        payer_id
        payer_name
      }
    }
  }
}

Variables (create, with provider mappings):

{
  "payer": {
    "payer_name": "Example Corp Billing",
    "payer_desc": "Central billing entity",
    "payer_provider_mappings": [
      { "provider_name": "CRM", "external_id": "PAY-9931" }
    ]
  }
}

Variables (edit an existing payer — pass payer_id):

{
  "payer": {
    "payer_id": 3301,
    "payer_name": "Example Corp Billing",
    "payer_provider_mappings": [
      { "provider_name": "CRM", "external_id": "PAY-9931" }
    ]
  }
}
ℹ️

Required field: payer_name. Omit payer_id to create a new payer, provide it to edit an existing one. payer_provider_mappings is the full desired set of external-system mappings, reconciled on every call (add/update/remove) — an empty list clears all mappings, omitting the field leaves existing mappings untouched. The mutation returns hit (the saved DASPayer) alongside status, kept for backward compatibility.

🚧

Legacy shape (still supported): payer_external_id + payer_provider_name — a single external id, applied as an additive upsert rather than a full reconcile. Prefer payer_provider_mappings for new integrations.

Next Steps

Related