Settings
Connection Status
Square Integration:
Not Configured
API Credentials
Production mode processes real payments. Only enter production credentials when you're ready to go live.
Webhook Configuration
Configure this URL in your Square Developer Dashboard under Webhooks:
https://app.northgeorgia.news/api/v1/square-webhook
Subscribe to these events:
Copy the Webhook Signature Key from Square and paste it into the credentials above.
payment.created, payment.updated, order.updated
Copy the Webhook Signature Key from Square and paste it into the credentials above.
How Classified Payments Work
- Customer submits ad via classified.northgeorgia.news
- Staff reviews inquiry in Classifieds → detail page
- Generate Payment Link button creates a Square checkout link
- Send link to customer (email or copy/paste)
- Customer pays → Square processes securely
- Webhook fires → status auto-advances to "Approved"
Classified Form API Key
This key authenticates the PHP classified form when it sends new submissions to this app.
Both the PHP form (flask-bridge.php) and this app must have the same key.
PHP Form Connection
The classified booking form at classified.northgeorgia.news sends submissions to this endpoint:
POST https://app.northgeorgia.news/api/v1/classified-inquiry
PHP setup: The file
1. The API endpoint URL above
2. The API key from above (set in the
3. Called from
includes/flask-bridge.php in the PHP app needs:
1. The API endpoint URL above
2. The API key from above (set in the
$api_key variable)
3. Called from
submit-form.php after spam checks pass
All Webhook / API URLs
| Classified Inquiry API | POST https://app.northgeorgia.news/api/v1/classified-inquiry |
| Square Webhook | POST https://app.northgeorgia.news/api/v1/square-webhook |
| App URL | https://app.northgeorgia.news |
Run Database Migrations
Run migration SQL files directly from the browser. This is needed after uploading new code that includes database changes.
Each migration is safe to run multiple times (they use CREATE TABLE IF NOT EXISTS and ALTER TABLE ... ADD COLUMN).
Back up your database before running migrations. Download a backup from the Export page first.
-
migration_ad_extra_fields.sql -
migration_ad_section.sql -
migration_advertiser_company_contact.sql -
migration_advertiser_default_custom_price.sql -
migration_advertiser_notes.sql -
migration_advertiser_quotes.sql -
migration_advertiser_rate_overrides.sql -
migration_advertiser_sales_house.sql -
migration_apply_consecutive_discount.sql -
migration_classifieds.sql -
migration_fix_custom_price_zero.sql -
migration_is_no_charge.sql -
migration_manifest_customizations.sql -
migration_manifest_sections.sql -
migration_no_consecutive_discount.sql -
migration_quote_color_charge.sql -
migration_quote_custom_rate_and_discounts.sql -
migration_quote_line_items.sql -
migration_sales_persons.sql -
migration_sales_prospects.sql -
migration_sales_tasks.sql -
migration_section_run_dates.sql -
migration_seed_manifest_sections.sql -
migration_seed_outreach_templates.sql -
migration_seed_section_taxonomy.sql
Database Info
| Database File | database/advertising.db |
| Backup / Export | Go to Export page |
| Import Specials | Go to Import page |