> ## Documentation Index
> Fetch the complete documentation index at: https://dialnexa.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# OneSignal REST API

> Connect DialNexa calls to OneSignal REST API for charge, invoice, customer balance, subscription, refund, receipt, or finance approval workflows.

The OneSignal REST API enables developers to programmatically send push notifications, emails, and SMS, manage users and subscriptions, and configure apps.

<Note>
  Use OneSignal REST API with DialNexa when the call involves money, billing trust, refunds, payment status, subscriptions, taxes, or invoice documents.
</Note>

## Where OneSignal REST API fits in a DialNexa workflow

OneSignal REST API should receive DialNexa output when the conversation affects a charge, invoice, customer balance, subscription, refund, receipt, or finance approval. The handoff should explain what the caller asked for, what DialNexa learned, which record or object is affected, and who owns the next step.

<CardGroup cols={2}>
  <Card title="Resolve billing questions" icon="check-circle">
    Identify the invoice, charge, customer, amount, due date, and what the caller believes is wrong.
  </Card>

  <Card title="Route refunds and disputes" icon="check-circle">
    Capture reason, policy context, amount, order or subscription link, and approval requirement.
  </Card>

  <Card title="Send documents safely" icon="check-circle">
    Verify the recipient before resending invoices, receipts, statements, tax forms, or payment links.
  </Card>

  <Card title="Protect revenue workflows" icon="check-circle">
    Escalate VIP payment blockers, failed renewals, duplicate charges, and collections-sensitive calls.
  </Card>
</CardGroup>

## What DialNexa should capture for OneSignal REST API

* Customer, account, email, phone, invoice number, payment ID, subscription ID, and tax region
* Amount, currency, due date, payment status, refund reason, dispute reason, and credit request
* Approval threshold, finance owner, escalation reason, promised next step, and follow-up deadline
* Transcript link, recording link, DialNexa call ID, CRM link, support ticket, and payment platform link
* Suppression flag for card numbers, bank details, tax identifiers, and private billing documents

## High-value OneSignal REST API workflows

<AccordionGroup>
  <Accordion title="Caller disputes a charge">
    Use OneSignal REST API to keep the money-related context precise: reference number, amount if mentioned, customer claim, policy or approval need, and the safe follow-up path. Do not put private payment details into broad-access notes.
  </Accordion>

  <Accordion title="Customer asks for an invoice resend">
    Use OneSignal REST API to keep the money-related context precise: reference number, amount if mentioned, customer claim, policy or approval need, and the safe follow-up path. Do not put private payment details into broad-access notes.
  </Accordion>

  <Accordion title="Subscription renewal fails">
    Use OneSignal REST API to keep the money-related context precise: reference number, amount if mentioned, customer claim, policy or approval need, and the safe follow-up path. Do not put private payment details into broad-access notes.
  </Accordion>

  <Accordion title="Refund request needs approval">
    Use OneSignal REST API to keep the money-related context precise: reference number, amount if mentioned, customer claim, policy or approval need, and the safe follow-up path. Do not put private payment details into broad-access notes.
  </Accordion>

  <Accordion title="Tax or billing address must be corrected">
    Use OneSignal REST API to keep the money-related context precise: reference number, amount if mentioned, customer claim, policy or approval need, and the safe follow-up path. Do not put private payment details into broad-access notes.
  </Accordion>

  <Accordion title="Use create user">
    Use create user only when DialNexa has a matched caller, a clear destination object, and enough call context to justify opening a new finance record. If the caller is unclear, route to review instead of creating noise.
  </Accordion>

  <Accordion title="Use update subscription">
    Use update subscription when the caller changes a field, status, owner, date, priority, note, consent choice, or next step on an existing OneSignal REST API record. Include the old value, new value, and reason from the call.
  </Accordion>
</AccordionGroup>

## Workflows that pair OneSignal REST API with other integrations

* [OneSignal REST API](/integrations/onesignal_rest_api) + [Stripe](/integrations/stripe): Stripe for payment and subscription status.
* [OneSignal REST API](/integrations/onesignal_rest_api) + [QuickBooks](/integrations/quickbooks): QuickBooks for accounting records.
* [OneSignal REST API](/integrations/onesignal_rest_api) + [HubSpot](/integrations/hubspot): HubSpot for account owner and renewal context.
* [OneSignal REST API](/integrations/onesignal_rest_api) + [Gmail](/integrations/gmail): Gmail for approved billing follow-up.
* [OneSignal REST API](/integrations/onesignal_rest_api) + [Slack](/integrations/slack): Slack for urgent finance approvals.
* [OneSignal REST API](/integrations/onesignal_rest_api) + [Zendesk](/integrations/zendesk): Zendesk for customer-facing billing tickets.
* [OneSignal REST API](/integrations/onesignal_rest_api) + [Google Drive](/integrations/googledrive): Google Drive for storing invoices and credit notes.
* [OneSignal REST API](/integrations/onesignal_rest_api) + [Google Sheets](/integrations/googlesheets): Google Sheets for exception review queues.

## Implementation notes

* Use the DialNexa call ID as the idempotency key before running OneSignal REST API actions.
* Write a short operational summary into OneSignal REST API and link to the full transcript or recording for audit.
* Map required fields before launch: destination object, owner, status, urgency, next step, and record URL.
* Create review paths for low-confidence matches, sensitive requests, high-value customers, and actions that change money, access, legal terms, or customer commitments.

## FAQs

<AccordionGroup>
  <Accordion title="When should Slack alert finance?">
    Alert finance for VIP payment blockers, duplicate charges, chargebacks, urgent renewal failures, or exceptions needing approval.
  </Accordion>

  <Accordion title="How should collections calls be logged?">
    Keep tone factual, note promises made, avoid sensitive payment details, and link the call to the account balance or invoice.
  </Accordion>

  <Accordion title="Should DialNexa collect payment details?">
    No. Do not capture full card numbers, bank details, or private tax identifiers in notes. Route customers to secure payment flows.
  </Accordion>

  <Accordion title="When can refunds be automated?">
    Only when identity, policy, amount, and approval rules are clear. Route exceptions, high-value refunds, and disputes to finance review.
  </Accordion>

  <Accordion title="What should a billing note include?">
    Invoice or charge reference, amount if mentioned, customer claim, policy context, owner, deadline, and safe evidence links.
  </Accordion>

  <Accordion title="How should invoice resends work?">
    Verify the recipient and customer identity first. Log what was sent, where it was sent, and why the caller requested it.
  </Accordion>

  <Accordion title="How are disputes handled?">
    Capture dispute reason, transaction reference, subscription or order link, urgency, and whether the caller expects a callback.
  </Accordion>

  <Accordion title="Where should tax details live?">
    Use the billing or accounting system with the right access controls, not broad CRM or support notes.
  </Accordion>
</AccordionGroup>
