Menu β–Ύ β–΄

Tree [c4b5b6] main /
 History

HTTPS access


File Date Author Commit
 .github 2026-01-14 Yuriy Zaletskyy Yuriy Zaletskyy [fa061d] Add contributing, conduct, security, and issue/...
 AcumaticaInventoryScanner 2026-01-14 Yuriy Zaletskyy Yuriy Zaletskyy [9a48f9] Release edition
 AcumaticaInventoryScanner.Tests 2026-01-13 Yuriy Zaletskyy Yuriy Zaletskyy [c5964d] Initial commit - Acumatica Inventory Scanner ap...
 BarcodeGenerator 2026-01-13 Yuriy Zaletskyy Yuriy Zaletskyy [c5964d] Initial commit - Acumatica Inventory Scanner ap...
 docs 2026-01-13 Yuriy Zaletskyy Yuriy Zaletskyy [c5964d] Initial commit - Acumatica Inventory Scanner ap...
 store-assets 2026-01-14 Yuriy Zaletskyy Yuriy Zaletskyy [39d36c] Add comprehensive international privacy policy ...
 .gitignore 2026-01-14 Yuriy Zaletskyy Yuriy Zaletskyy [9a48f9] Release edition
 ANDROID_EMULATOR_SETUP.md 2026-01-13 Yuriy Zaletskyy Yuriy Zaletskyy [c5964d] Initial commit - Acumatica Inventory Scanner ap...
 AcumaticaInventoryScanner.sln 2026-01-13 Yuriy Zaletskyy Yuriy Zaletskyy [c5964d] Initial commit - Acumatica Inventory Scanner ap...
 BARCODE_GENERATOR_README.md 2026-01-13 Yuriy Zaletskyy Yuriy Zaletskyy [c5964d] Initial commit - Acumatica Inventory Scanner ap...
 CODE_OF_CONDUCT.md 2026-01-14 Yuriy Zaletskyy Yuriy Zaletskyy [a98a74] Tweak code of conduct wording
 CONTRIBUTING.md 2026-01-14 Yuriy Zaletskyy Yuriy Zaletskyy [fa061d] Add contributing, conduct, security, and issue/...
 DEPLOY_TO_ANDROID.md 2026-01-13 Yuriy Zaletskyy Yuriy Zaletskyy [c5964d] Initial commit - Acumatica Inventory Scanner ap...
 LICENSE 2026-01-13 Yuriy Zaletskyy Yuriy Zaletskyy [8fbf9a] Add MIT open source license
 NuGet.config 2026-01-13 Yuriy Zaletskyy Yuriy Zaletskyy [c5964d] Initial commit - Acumatica Inventory Scanner ap...
 PHYSICAL_DEVICE_DEBUGGING.md 2026-01-13 Yuriy Zaletskyy Yuriy Zaletskyy [c5964d] Initial commit - Acumatica Inventory Scanner ap...
 PROJECT_SUMMARY.md 2026-01-13 Yuriy Zaletskyy Yuriy Zaletskyy [c5964d] Initial commit - Acumatica Inventory Scanner ap...
 README.md 2026-01-14 Yuriy Zaletskyy Yuriy Zaletskyy [c4b5b6] Update tagline to reflect current app flow
 SECURITY.md 2026-01-14 Yuriy Zaletskyy Yuriy Zaletskyy [fa061d] Add contributing, conduct, security, and issue/...
 TESTING_GUIDE.md 2026-01-13 Yuriy Zaletskyy Yuriy Zaletskyy [c5964d] Initial commit - Acumatica Inventory Scanner ap...

Read Me

πŸ“¦ Acumatica Inventory Scanner

Scan barcodes, fetch live Acumatica inventory, and see per-warehouse stockβ€”manual setup today, guided onboarding coming soon.

Developed by AcuPower LTD - Acumatica Implementation Experts

✨ Features

  • πŸ“· Real-time Barcode Scanning - Fast camera-based barcode detection
  • πŸ” Inventory Lookup - Instantly search and view stock item details
  • πŸ” OAuth 2.0 Authentication - Secure API access to Acumatica
  • πŸ’Ύ Settings Persistence - Save credentials for quick re-login
  • 🎨 Modern Dark Theme - Industrial-inspired UI design
  • πŸ“± Cross-Platform - Works on Android and iOS

πŸ“‹ Prerequisites

Before using this app, ensure you have:

  1. Acumatica ERP Instance (version 20.2 or later)
  2. User Account with API access permissions
  3. OAuth Connected Application configured in Acumatica

πŸ”§ Acumatica Configuration

Step 1: Create an OAuth Connected Application

The app requires OAuth credentials for secure API access. Follow these steps:

  1. Navigate to Connected Applications
  2. In Acumatica, go to: System β†’ Integration β†’ Connected Applications
  3. Or use the screen ID: SM303010

Navigate to Connected Applications

  1. Create New Application
  2. Click the "+" button to create a new record
  3. Fill in the following fields:
Field Value
Client Name InventoryScanner (or your preferred name)
Active βœ… Checked
Flow Resource Owner Password Credentials
Plug-In No Plug-In

Create OAuth App

  1. Add a Client Secret
  2. Click "Add Shared Secret" in the Secrets tab
  3. Enter a description (e.g., "Mobile App Secret")
  4. ⚠️ IMPORTANT: Copy and save the generated secret value immediately!
    • The secret is only shown once and cannot be retrieved later
  5. Click OK to add the secret

Add Secret

  1. Save and Note Credentials
  2. Press Ctrl+S to save
  3. Note the following values:
    • Client ID (e.g., C6ECE655-8FE3-5C1F-C7C8-3309E724BA61@Company)
    • Client Secret (the value you copied in step 3)

Save Credentials


Step 2: Find Your API Version

The app needs to know which API version your Acumatica instance supports:

  1. Check Available Endpoints
  2. Open your browser and navigate to:
    https://your-instance.acumatica.com/YourSite/entity
  3. This returns a JSON list of available API endpoints

  4. Note the Version

  5. Look for entries with "name": "Default"
  6. Common versions: 24.200.001, 23.200.001, 22.200.001
  7. Use the latest version available for your instance

πŸ“± App Configuration

First Launch Setup

  1. Open the App
  2. Launch the Acumatica Inventory Scanner on your device

  3. Enter Connection Details

Field Description Example
Instance URL Your Acumatica site URL https://mycompany.acumatica.com/MySite
Username Your Acumatica username admin
Password Your Acumatica password ****
Tenant Optional - leave empty for single-tenant
API Version From Step 2 above 24.200.001
Client ID OAuth Client ID from Step 1 GUID@Company
Client Secret OAuth Secret from Step 1 your-secret-key
  1. Test Connection
  2. Tap "Test Connection" to verify settings
  3. A green success message confirms API access

  4. Save Settings

  5. Tap "Save Settings" to persist for future use
  6. Enable "Remember credentials" for auto-fill on next launch

🎯 Using the Scanner

Scanning Barcodes

  1. Point camera at barcode - Position within the scanning frame
  2. Hold steady - The red scanning line indicates detection area
  3. Automatic detection - Barcode is recognized and searched automatically

Search Results

After scanning, the app displays:
- Item ID - Acumatica Inventory ID
- Description - Item description
- Availability - Current stock levels
- Warehouse Location - Where the item is stored


βš™οΈ Settings

Access settings anytime via the Settings tab:

Connection Settings

  • Edit Acumatica URL and credentials
  • Change API version
  • Update OAuth credentials

App Preferences

  • Play sound on scan - Audio feedback
  • Vibrate on scan - Haptic feedback
  • Auto-search after scan - Immediate lookup
  • Remember credentials - Save login info

Reset

  • Reset All Settings - Clear all saved data and start fresh

πŸ”’ Security Notes

  1. OAuth is Required - Cookie-based auth is not supported for REST API
  2. Credentials Storage - Passwords are stored in platform-secure storage
  3. Token Expiration - OAuth tokens expire after 1 hour; re-login if needed
  4. HTTPS Only - Always use secure connections

πŸ› Troubleshooting

"401 Unauthorized" Error

  • OAuth credentials may be incorrect or expired
  • Verify Client ID and Secret in Acumatica
  • Check that the Connected Application is Active

"404 Not Found" Error

  • API version mismatch
  • The endpoint uses StockItem, not InventoryItem
  • Try a different API version from the /entity endpoint

"Connection Failed"

  • Check network connectivity
  • Verify the instance URL is correct
  • Ensure no VPN or firewall is blocking access

Scanner Not Detecting

  • Ensure camera permissions are granted
  • Hold device steady with good lighting
  • Barcode must be within the scanning frame

🏷️ Barcode Generator Utility

This repository includes a Windows desktop application for generating test barcodes. Located in the BarcodeGenerator/ folder.

Features

  • Generate multiple barcode formats
  • Batch generation (semicolon-separated codes)
  • Customizable dimensions
  • Export to PNG, JPEG, BMP, or PDF
  • Real-time preview

Supported Barcode Formats

Format Characters Length Requirements Best For
Code 128 Alphanumeric + special Any length βœ… Inventory IDs (recommended)
QR Code Any text, URLs Any length URLs, long text
Data Matrix Any text Any length Small items, high density
PDF417 Any text Any length Documents, IDs
EAN-13 Digits only 12-13 digits Retail products (worldwide)
EAN-8 Digits only 7-8 digits Small retail products
UPC-A Digits only 11-12 digits Retail products (US/Canada)
UPC-E Digits only 7-8 digits Small packages (US)
ITF Digits only Even number of digits Shipping cartons
Codabar 0-9, A-D, -, $, :, /, ., + Any length Libraries, blood banks

Barcode Format Rules

Alphanumeric Formats (Flexible)

Code 128 - Most versatile, recommended for Acumatica Inventory IDs

βœ… AALEGO500
βœ… ITEM-001-A
βœ… Any alphanumeric string

QR Code / Data Matrix / PDF417 - Can encode any text

βœ… https://acupowererp.com
βœ… Long product descriptions
βœ… Special characters: @#$%^&*

Numeric-Only Formats (Strict Rules)

EAN-13 (European Article Number)

βœ… 5901234123457  (13 digits)
βœ… 590123412345   (12 digits - checksum auto-added)
❌ AALEGO500      (letters not allowed)
❌ 12345          (too short)

EAN-8 (Short EAN)

βœ… 96385074  (8 digits)
βœ… 9638507   (7 digits - checksum auto-added)
❌ 123456789 (too long)

UPC-A (Universal Product Code - North America)

βœ… 012345678905  (12 digits)
βœ… 01234567890   (11 digits - checksum auto-added)
❌ 1234567890    (too short)

UPC-E (Compressed UPC)

βœ… 01234565  (8 digits)
βœ… 0123456   (7 digits - checksum auto-added)
❌ 012345678 (too long)

ITF (Interleaved 2 of 5)

βœ… 1234567890  (10 digits - even count)
βœ… 12345678    (8 digits - even count)
❌ 123456789   (9 digits - odd count not allowed)

Usage

  1. Run the application: Open BarcodeGenerator.exe or build from source
  2. Enter code(s): Type inventory IDs (use ; for multiple)
    AALEGO500; WIDGET001; PART-123
  3. Select format: Choose barcode type from dropdown
  4. Set dimensions: Adjust width/height (default: 300Γ—150)
  5. Generate: Click "Generate Barcode"
  6. Save: Export as image (PNG/JPEG/BMP) or PDF

Integration with Mobile Scanner

Use the Barcode Generator to:
1. Create barcodes with your Acumatica Inventory IDs
2. Print them or display on screen
3. Scan with the mobile app to test the integration
4. Verify API connectivity and item lookup

Building from Source

cd BarcodeGenerator
dotnet build
dotnet run

Requirements: .NET 8.0, Windows


πŸ“ž Support

Created by AcuPower LTD

  • 🌐 Website: acupowererp.com
  • πŸ“§ Email: support@acupowererp.com

πŸ“„ License

This project is licensed under the MIT License - a permissive open source license.

You are free to:
- βœ… Use commercially
- βœ… Modify
- βœ… Distribute
- βœ… Use privately
- βœ… Sublicense

See the LICENSE file for full details.

MIT License
Copyright (c) 2024-2026 AcuPower LTD (https://acupowererp.com)

πŸ”„ Version History

Version Date Changes
1.0.0 2024 Initial release with barcode scanning
1.1.0 2025 Added OAuth support, Settings page
1.2.0 2026 Modern UI redesign, persistent settings