Peki – Bokio Integration for WooCommerce

Description

Peki – Bokio Integration for WooCommerce automatically exports your WooCommerce orders to the Bokio accounting platform. When orders are completed the plugin sends structured order data to the secure Peki service, which creates the correct document type (invoice or cash sale), customer, VAT handling, and ledger entries inside Bokio. You keep full control of mapping rules directly in WordPress, while authentication and quotas are managed outside your store for better security.

Visit peki.no/integration/bokio for more information.

How to connect (video)

Watch the step-by-step walkthrough here:
https://youtu.be/tqICtvE3TjA

Key Features

  • Automatic order export to Bokio the moment orders are completed
  • Force export action on each order for manual sync or retries
  • Advanced bank account mapping per payment method, built together with senior accountants
  • Automatic customer creation in Bokio when the WooCommerce customer is new
  • Separate shipping handling with the right VAT codes and rounding protection
  • VAT export rules for goods and services outside Sweden, including multi-currency orders
  • Refund handling with credit notes that match requested gross amounts
  • Optional automatic invoice PDF download to the Media Library (Growth plan)
  • Multi-site support where several stores can share the same Bokio company quota
  • WooCommerce HPOS compatibility and WordPress Multisite awareness
  • GDPR friendly – only the required order fields are transmitted to Peki and Bokio over HTTPS
  • Comprehensive logging with masked secrets plus admin notices when quotas are close to limits

Requirements

Before using this plugin, you need:

  1. An active Bokio account with rights to create invoices or cash sales
  2. At least one invoice or cash sale issued in Bokio so numbering sequences are initialized
  3. WooCommerce installed, activated, and configured with Swedish VAT codes
  4. Outbound HTTPS access from your WordPress host to peki.no and bokio.com

Free Plan

The plugin includes 15 free transfers per month. Multiple WordPress sites connected to the same Bokio company share the monthly quota.

Pricing (monthly, ex. VAT)

  • Free: 15 transfers/month — included
  • Starter: 100 transfers/month — $29
  • Growth: 1,000 transfers/month — $99
  • Pro: 5,000 transfers/month — $249
  • Upgrades require connecting to Bokio first (secure flow in the plugin)

Plan Benefits

The plugin includes a free tier and three paid plans. Here’s what you get with each:

  • Free:
    • 15 transfers/month
    • Core WooCommerce Bokio export
  • Starter:

    • Everything in Free
    • 100 transfers/month
  • Growth:

    • Everything in Starter
    • 1,000 transfers/month
  • Pro:
    • Everything in Growth
    • Highest monthly transfer limit (5,000 transfers/month)

Note: This is an independent third-party plugin. We are not affiliated with Bokio AB or WooCommerce/Automattic.

External Services

This plugin connects to external services to function:

  • Peki export service (peki.no) – Processes and forwards order data to the Bokio API
  • Bokio API (bokio.com) – Creates accounting vouchers from order data

By using this plugin, you agree to data processing on these external servers. Review their respective privacy policies for details.

Installation

  1. Install the plugin through WordPress or upload it to /wp-content/plugins/
  2. Activate the plugin
  3. Issue at least one invoice or cash sale in Bokio to prime numbering, and ensure correct VAT codes exist
  4. Navigate to Peki Bokio in WordPress admin and connect your Bokio account through the secure Peki flow
  5. Configure bank account mapping for your payment methods and review document type overrides
  6. Optionally enable Growth features such as automatic PDF downloads once your plan allows it

FAQ

Where do I find Company ID and API token?

Token: in Bokio go to Settings API Tokens Create token.
Company ID: open the “API Tokens / Private integrations” page and copy the ID from the URL: https://app.bokio.se/<companyId>/settings-r/private-integrations

Do I need a Bokio account?

Yes, an active Bokio account with rights to create invoices or cash sales is required. The plugin relies on Bokio’s API via the Peki service.

Can I connect multiple stores?

Yes, unlimited WordPress sites can connect to the same Bokio company. All sites share the monthly transfer quota tied to that company.

Is the plugin compatible with HPOS?

Yes, the plugin is fully compatible with WooCommerce High-Performance Order Storage.

What data is sent to external services?

The plugin sends order data to peki.no (the export service) and bokio.com (the accounting platform) to create vouchers. Only the data needed to build the accounting document is transmitted. See the privacy policies on both domains for details.

Is my data secure?

Yes. All communication happens over HTTPS, tokens are stored outside your WordPress database, and logs mask sensitive values.

Avis

Il n’y a aucun avis sur cette extension.

Contributeurs & développeurs

« Peki – Bokio Integration for WooCommerce » est un logiciel libre. Les personnes suivantes ont contribué à cette extension.

Contributeurs

Historique des changements

1.0.2

  • Docs: Updated pricing, product link, and added embedded how-to video (nocookie) in readme.
  • UI: Embedded “How to connect Bokio” video in the settings side panel.
  • Notice: Connection banner now trusts cached status/flags to avoid false “not connected” warnings.
  • Meta: Version bump to 1.0.2.

1.0.1

  • Docs: Added clear steps to locate the Bokio Company ID and API token with direct URL pattern.
  • Docs: Pricing section tightened with monthly ex-VAT labels.
  • Meta: Version bump to 1.0.1.

1.0.18

  • Rebrand: UI copy, settings menus, documentation, and notices now refer to Bokio.
  • Maintenance: Version bump and documentation sync.

1.0.17

  • UI: Advanced page grouped into “Export rules” and “Growth features” with larger checkboxes and clearer descriptions.
  • UI: GROWTH badge with hover tooltip on gated settings; portal link shown when not eligible.
  • Enforcement: Per-payment document type overrides are Growth-gated in both UI and saving logic (server continues to enforce PDF feature).
  • Multi-site: Added company_slug to portal/checkout links so upgrades apply across all sites tied to the same Bokio company.
  • Upgrade flow: If a subscription exists, “Choose plan” routes to the portal to upgrade instead of creating a second subscription.
  • CSS: Added styles for Growth badge and larger checkboxes.
  • Change: All plugin endpoints now use Bokio-specific paths for status and portal calls.
  • Added: New Bokio status endpoint mirroring root behavior.
  • Fix: Bokio customer portal include path corrected to load local env.php.
  • Fix: Growth gating now reads the plan via the Bokio status endpoint using the current shop URL (immediate unlock after upgrade).
  • UI/Docs: Plan Benefits section and plan card bullets added; removed “Priority support” mention from Pro.

1.0.16

  • Enforcement: Automatic invoice PDF saving is Growth-only and gated server-side; local code edits cannot bypass the gate.
  • UI: Advanced toggle for “Automatically save invoice PDFs to Media Library” is disabled unless the current plan is Growth (based on cached server status).
  • UI: Order notes now show a “Download PDF” button for saved attachments.
  • Dev: Added binary download helpers and 401 refresh to the legacy client; PDF endpoint added with plan check.
  • Fix: Customer portal link reliability improved (includes shop, shop_url, v=3, connection_id).
  • Fix: Partial credit notes refunded amounts match requested gross by scaling line quantities; fallback derives net from gross using VAT type.

1.0.15

  • Fix: Prevent duplicate customers in Bokio by reusing existing contact by email when available (server-side).
  • Fix: Amount scaling guard — clamp minor unit factor to 100 (SEK) to avoid 1/100 totals if decimals are misreported.
  • Fix: Advanced “Document Type per Payment Method” no longer resets when saving Bank Account Mapping; BACS override persists.
  • Change: Default bank account fallback aligned with UI to 1920:10001 (Operating account). Previously defaulted to 1960.
  • Dev/Compat: Advanced saves keep existing per-gateway overrides when the cash map isn’t posted.
  • Added: Optional automatic invoice PDF download to Media Library with order attachment and “Download PDF” button in order notes. Requires Growth subscription; enforced server-side.
  • Added: Advanced setting toggle for invoice PDF saving (disabled unless on Growth based on server status cache).
  • Fix: Customer portal button reliability — includes shop, shop_url, v=3, and connection_id to ensure correct account routing.
  • Fix: Partial credit notes now match requested refund gross by proportionally scaling line quantity; fallback derives net from gross by VAT type (prevents over-crediting full line).
  • Dev: Backend endpoint to fetch invoice PDF and binary client helpers; token refresh on 401 for binary requests too.

1.0.14

  • Fix: Per-payment “Document Type” override is now always honored (bypasses master toggle). BACS set to Invoice now forces cash=false.
  • Dev: Added filter pekibokio_cash_flag to allow programmatic override of the cash flag.
  • UI: Support tab simplified to direct email link (petter@peki.no), web form removed.
  • Docs: Added Screenshots section; updated links to peki.no/bokio.
  • Compliance: Additional translators comments/escaping for PHPCS.

1.0.13

  • Added: Per-payment “Document Type” control (Invoice vs CashSale) with Advanced-tab master toggle.
  • Added: Live enable/disable of per-gateway dropdowns when master toggle changes.
  • Added: Orders list column shows Bokio export status with Woo dashicons (HPOS + legacy).
  • Added: Admin “Order actions” entry to force export to Bokio (overrides duplicate guard).
  • Improved: Prevent auto-export on status change if already exported (idempotency).
  • Improved: Amount scaling respects WooCommerce price decimals; server normalizes to öre.
  • Fix: Server accepts bankAccountCode for both cash and invoice documents to satisfy the Bokio API.
  • Compliance: PHPCS fixes (translators comments, placeholder ordering, escaping, prefixed globals).

1.0.12

  • Added: Order notes now show export status (success/error) with invoice IDs.
  • Added: Norwegian (Bokmål) translation.
  • Improved: Notifications now fetch quota from Peki server automatically.
  • Improved: Dismiss notifications reset when usage values change.
  • Fix: Removed unsupported API parameters causing 400 errors.

1.0.11

  • Fix: Bank account mapping functionality improved.
  • Fix: Admin notifications dismiss handling.

1.0.10

  • Fix: Free-plan “limit reached (15)” notice now triggers only when remaining == 0 (or used >= limit if remaining is unknown). Prevents premature hard-stop banners.
  • Tweak: Soft warning shows at ~10/15 only when usage can be derived (used or remaining known).
  • Hardening: Safer parsing of quota options (treat empty/false as unset) to avoid misreads.
  • UX: Dismiss keys are period-scoped; notices respect monthly reset.
  • Internals: Prefer fresh server quota; fall back to cached status only when necessary.

1.0.9

  • Added: Support for VAT code 52.
  • Improved: Stability of admin notices (dismiss handling and consistent display).

1.0.8

  • Fix: Refund bugs resolved for better accuracy and compatibility.
  • Fix: Account mapping improvements.

1.0.7

  • Improvement: Refund handling refined for better accuracy and compatibility.
  • Feature: Added setting to disable VAT (MVA) when needed.

1.0.6

  • Fix: PHPCS warnings resolved for OAuth callback handling and webhook signature validation.
  • Improvement: Enhanced installation instructions with mandatory Bokio API activation and first invoice creation.
  • Docs: Clarified that Bokio invoice counter and customer counter must be initialized before the API integration works.
  • Security: Proper sanitization and unslashing of server variables in webhook endpoint.

1.0.5

  • Fix: Duplicate “Connect to Bokio” notice; render guarded to run once per request.
  • Improvement: Quota notices now read from cached server status (shared per company_slug), with webhook/cron refresh.
  • Docs: Added Bokio API requirements and first-invoice note; clarified multi-site behavior and pricing plans.
  • Meta: Bumped “Tested up to” to 6.8; updated Stable tag.

1.0.4

  • Docs: English-only readme per WordPress.org requirements; improved SEO wording for WooCommerce/Bokio integration.
  • Product: Clarified free tier (15 transfers/month) and option to upgrade to unlimited.
  • Docs: Removed references to manual “Send to Bokio” actions and subscription support (not available).
  • Link: Updated to https://peki.no/bokio in the description.

1.0.3

  • Compliance: Neutralized upgrade/plan wording; “Manage Subscription” link only.
  • Security: Reviewed nonce and capability checks in connect/disconnect flows.
  • Prefix: Migrated internal keys to pekibokio_ with legacy fallbacks.
  • API: Plan/limits decided by remote service; plugin surfaces neutral errors.
  • Docs: Expanded “External services.”

1.0.2

  • Documentation updates and refund handling improvements.

1.0.0

  • First public release.