FS-DOC-03Operations
Process Runbook / SOP
Proposal Creation
[YourCompany.com] · Sales Department · Prepared by FullSpec · [Today's Date]
This runbook is the day-to-day operating guide for the Proposal Creation automation. It tells your sales team exactly what the automation handles on their behalf, what the one remaining human step looks like, and what to do when something does not go as expected. FullSpec has built and tested the full end-to-end flow. Your team's responsibility is limited to responding to Slack approval messages, keeping HubSpot deal records accurate, and following the exception steps below when they are needed.
01Process overview
When a deal in HubSpot is moved to the 'Proposal Requested' stage, the automation takes over immediately. The Proposal Assembly Agent reads all relevant deal properties, resolves the correct pricing tier and discount rules, and generates a fully populated PandaDoc proposal in under two minutes. The Approval and Delivery Agent then posts a structured message to the designated Slack channel so the sales manager can approve or request changes with a single click. Once approved, the proposal is sent to the prospect via Gmail and HubSpot is updated automatically. The only step that requires a person is the manager's approval decision in Slack.
Process name
Proposal Creation
Trigger
A HubSpot deal is moved to the 'Proposal Requested' stage
Final output
A personalised PandaDoc proposal sent to the prospect via Gmail, with the HubSpot deal updated to 'Proposal Sent' and the activity logged
Agents running
Proposal Assembly Agent; Approval and Delivery Agent
Tools involved
HubSpot, PandaDoc, Slack, Gmail, Google Docs
Weekly volume
Approximately 5 proposals per week (around 20 per month)
Human checkpoint
Sales manager clicks Approve or Request Changes in Slack after reviewing the proposal draft
Process owner
[Your name] — fill in once confirmed
Process Runbook / SOPPage 1 of 4
FS-DOC-03Operations
02Step-by-step: what happens and who acts
What you actually need to do: There is one human step in this entire process. When the Approval and Delivery Agent posts an approval request to Slack, the sales manager must click either 'Approve' or 'Request Changes' directly inside the Slack message. That single click either sends the proposal to the prospect or routes it back to the rep with the manager's comments. Everything else is handled automatically by the automation.
Step
What happens
Who acts
Type
1
A HubSpot deal is moved to the 'Proposal Requested' stage by the sales rep. This action fires the automation trigger immediately and starts the Proposal Assembly Agent.
Sales Rep
Automated
2
The Proposal Assembly Agent reads the deal record in HubSpot, pulling contact details, company name, deal value, product selections, and any stored discount rules. It checks that all required fields are present before proceeding.
Proposal Assembly Agent
Automated
3
The agent maps the deal data to the correct pricing tier, applies any applicable discounts, and structures the complete pricing block ready for the proposal template.
Proposal Assembly Agent
Automated
4
A new PandaDoc document is created from the master proposal template. All variable fields including prospect name, company, pricing rows, scope description, expiry date, and contact details are populated automatically. No manual typing is involved.
Proposal Assembly Agent
Automated
5
The Approval and Delivery Agent posts a structured Slack message to the sales manager. The message includes a summary of the deal, the total proposal value, a preview link to the PandaDoc document, and two inline action buttons: Approve and Request Changes.
Approval and Delivery Agent
Automated
6
The sales manager opens the Slack message, reviews the PandaDoc preview link, and clicks either Approve or Request Changes. This is the only step that requires a human decision.
Sales Manager
Human
7
If the manager clicks Request Changes, the automation flags the document back to the rep in Slack with the manager's comment. The rep makes the edits in PandaDoc and updates the deal stage to re-trigger the approval. If the manager clicks Approve, the flow continues immediately to delivery.
Sales Rep (if changes) / Automated (if approved)
Automated
8
The Approval and Delivery Agent sends the approved PandaDoc link to the prospect via Gmail using a pre-approved email template, personalised with the prospect's name, company name, and a one-line solution summary.
Approval and Delivery Agent
Automated
9
HubSpot is updated automatically. The deal stage moves to 'Proposal Sent', a timestamped activity is logged on the deal record, and the PandaDoc document ID is stored so that open and view events from the prospect sync back to HubSpot automatically.
Approval and Delivery Agent
Automated
Process Runbook / SOPPage 2 of 4
FS-DOC-03Operations
03Handling exceptions
Situation
What the system does
What you do
Required HubSpot fields are missing when the deal reaches 'Proposal Requested'
The Proposal Assembly Agent halts before generating the document. It sends a Slack notification to the rep listing the specific fields that are empty or incomplete.
Open the HubSpot deal record, fill in the missing fields, and move the deal stage away from and back to 'Proposal Requested' to re-trigger the automation.
A duplicate proposal is triggered because the deal stage is toggled more than once
The automation checks for an existing PandaDoc document linked to the deal record. If one is found that was created in the last 30 minutes, the run is skipped and the rep is notified in Slack.
No action needed in most cases. If a genuinely new proposal is required, archive the existing PandaDoc document on the deal record first, then re-trigger the stage change.
The product or pricing tier selected in HubSpot does not match any entry in the configured pricing rules
The Proposal Assembly Agent flags the deal as unresolvable and sends a Slack alert to the rep and process owner. The proposal is not generated until the mismatch is resolved.
Check the product line and tier selection on the HubSpot deal record. Correct any typo or select the right option from the dropdown. If the pricing rule itself needs to be added, contact FullSpec at support@gofullspec.com.
The sales manager does not respond to the Slack approval message within 4 hours
The Approval and Delivery Agent sends a single automated reminder to the manager in Slack. If there is still no response after a further 2 hours, the rep receives a Slack alert advising them to follow up directly.
Contact the manager directly via Slack or phone to prompt a decision. Once they click Approve or Request Changes in the original Slack message, the automation continues normally.
The manager requests changes but the rep does not update the proposal within 24 hours
The automation does not send any further reminders on the rep's behalf after the initial change-request notification. The deal stage remains at 'Proposal Requested' and no proposal is delivered.
Make the requested edits in PandaDoc, then move the HubSpot deal stage away from and back to 'Proposal Requested' to re-trigger the full flow, including a fresh Slack approval request.
PandaDoc or Gmail is unavailable due to a service outage
The automation platform retries the failed step up to three times over 15 minutes. If all retries fail, the run is paused and a Slack alert is sent to the process owner with the error details and the deal reference.
Check the PandaDoc or Gmail status page for an active outage. Once the service recovers, re-trigger the automation by toggling the deal stage in HubSpot. If the issue persists beyond 30 minutes, email support@gofullspec.com with the deal name and the error message from the Slack alert.
04Who to contact and when
Fill in the rows below once your team is confirmed. Keep this table up to date whenever a role changes, especially the process owner and the designated Slack approver, as the automation routes messages to specific individuals.
Role
Name
How to reach them
Process owner (day-to-day accountability)
[Your name]
[Your email or Slack handle]
Sales manager (Slack approver)
[Rep name]
[Rep email or Slack handle]
Sales rep (primary user)
[Rep name]
[Rep email or Slack handle]
FullSpec builder (build and configuration changes)
FullSpec team
support@gofullspec.com
FullSpec support (errors, outages, urgent issues)
FullSpec support
support@gofullspec.com
For any change to the automation itself, such as adding a new pricing tier, updating the PandaDoc template variables, changing the Slack approval channel, or adding a new HubSpot field, contact FullSpec at support@gofullspec.com rather than attempting to edit the automation platform directly. Uncoordinated changes to connected workflows can break the proposal generation or delivery steps.
Process Runbook / SOPPage 3 of 4
FS-DOC-03Operations
05Ongoing maintenance
Whenever pricing tiers, discount rules, or product lines change
Notify FullSpec at support@gofullspec.com with the updated pricing documentation before the change goes live. The agent's pricing resolution logic must be updated before any new deal type reaches 'Proposal Requested', or the automation will flag an unresolvable pricing error.
Process owner, with FullSpec making the configuration change
Whenever the PandaDoc proposal template is redesigned or variable names are changed
Share the updated template and a full list of any renamed or added variables with FullSpec before the new template is set as the master. A variable name mismatch between HubSpot fields and PandaDoc template variables is the single most common cause of blank fields in generated proposals.
Process owner, with FullSpec validating and updating field mappings
Monthly spot-check (first working day of each month)
Pull two or three recently sent proposals from HubSpot and verify that the contact details, pricing rows, and deal values match the corresponding HubSpot deal records exactly. Confirm the deal stages moved to 'Proposal Sent' and that the activity log entries are present.
Process owner or nominated sales rep
Weekly error-log review (every Monday morning)
Check the Slack channel used for automation alerts for any error notifications, failed runs, or unresolved approval reminders from the previous week. Log any recurring errors and email support@gofullspec.com if the same issue appears more than once.
Process owner
Whenever a team member changes role or leaves
Update the contact table in Section 04 of this runbook. If the departing person is the designated Slack approver, notify FullSpec immediately so the approval routing can be updated in the automation before the next proposal run.
Process owner, with FullSpec updating routing configuration
Quarterly volume review (every three months)
Compare the actual number of proposals run through the automation against the baseline of approximately 20 per month. If volume has grown significantly, review whether the current automation platform subscription tier is appropriate and whether any new deal types or product configurations need to be encoded.
Process owner, with optional review call with the FullSpec team
The single most common maintenance issue for this process is a mismatch between PandaDoc template variable names and the HubSpot field names the automation uses to populate them. Any time the PandaDoc template is edited, even a small rename of a variable, the corresponding field mapping in the automation must be updated at the same time. Always notify FullSpec before the updated template goes live so the mapping can be verified. A missed update will cause blank fields in the next generated proposal.
Process Runbook / SOPPage 4 of 4