Schedule MacroRIS-SM-2064 – Update Purchase Price Daily

Update Purchase Price Daily (GBP Conversion)

Automatically updates inventory purchase prices using purchase order costs, converts foreign currency values to GBP, calculates unit costs, and prevents duplicate processing through automated purchase order tracking.

Maintaining accurate purchase prices across inventory items is essential for inventory valuation, reporting, profitability analysis, and purchasing decisions. Updating purchase prices manually after every purchase order can be time-consuming and may lead to inconsistencies across inventory records.

The Update Purchase Price Daily (GBP Conversion) macro automates this process by retrieving purchase orders, calculating the correct unit purchase cost, converting foreign currency values into GBP when required, and updating the Linnworks Purchase Price field automatically.

To prevent duplicate processing, the macro marks successfully processed purchase orders with an extended property so they are not processed again during future scheduled executions.

Automatically keep inventory purchase prices aligned with the latest purchase order costs while standardising all values into GBP.

Configure the Macro

Once the app is installed, you need to create a macro configuration and schedule so the system can automatically update inventory purchase prices without manual intervention.

This macro does not require any user-configurable parameters.

Steps to Configure

Go to Apps > Macro Configuration and click + Add new configuration.

How It Works

Step 1

The macro starts execution and retrieves the latest Linnworks currency conversion rates.

Step 2

Purchase orders from the previous 365 days are retrieved.

Step 3

The currency used for each purchase order is identified.

Step 4

The macro checks whether the purchase order has already been processed.

Step 5

Purchase orders containing the IsPurchasePriceUpdated extended property are skipped.

Step 6

Purchase order line items are retrieved.

Step 7

Foreign currency costs are converted to GBP when required.

Step 8

If quantities exceed one, the total cost is converted into a single-unit purchase cost.

Step 9

The Linnworks Purchase Price field is updated for each inventory item.

Step 10

API update activity is monitored to avoid exceeding update limits.

Step 11

If all inventory items are updated successfully, the purchase order is marked as completed.

Step 12

The IsPurchasePriceUpdated extended property is added to the purchase order.

Step 13

Processing information is written to the execution log.

Step 14

The macro completes and records the final execution status.

Usage of App

Purchase Order Processing

Processes purchase orders created within the last 365 days.

GBP Conversion

Automatically converts foreign currency purchase costs into GBP.

Purchase Price Updates

Updates the Linnworks Purchase Price field for inventory items.

Unit Cost Calculation

Calculates individual unit costs when purchase order quantities exceed one.

Extended Property Tracking

Uses IsPurchasePriceUpdated to prevent duplicate processing.

API Protection

Automatically manages API usage during inventory updates.

Extended Property Used

IsPurchasePriceUpdated = True

Once this property has been applied, the purchase order will not be processed again.

Key Points to Remember

  • Processes purchase orders from the previous 365 days

  • Uses GBP as the base currency

  • Automatically converts foreign currency values

  • Updates inventory purchase prices

  • Calculates unit costs automatically

  • Prevents duplicate processing

  • Uses extended properties for tracking

  • Includes API rate limit protection

  • Logs all processing activity

What You Can Expect

Accurate Purchase Prices

Inventory purchase prices remain aligned with the latest purchase order costs.

Automatic Currency Conversion

Foreign currency values are automatically converted into GBP.

Reduced Manual Maintenance

Purchase price updates occur automatically without user intervention.

Improved Inventory Valuation

Inventory cost values remain consistent and up to date.

Duplicate Processing Prevention

Processed purchase orders are tracked automatically.

Overall Impact

This macro helps maintain accurate inventory purchase prices by automatically updating stock items based on purchase order costs. Currency conversion, quantity handling, duplicate processing protection, and scheduled automation ensure inventory costs remain accurate and consistent across the catalogue.

What To Do After the Macro Runs

Step 1

Review the Macro Execution Log.

Step 2

Verify that purchase orders were processed successfully.

Step 3

Confirm that inventory purchase prices were updated.

Step 4

Verify that the IsPurchasePriceUpdated property was added to processed purchase orders.

Step 5

Continue with normal purchasing and inventory management processes.

Why This Matters

Accurate purchase prices are critical for:

  • Inventory valuation

  • Cost reporting

  • Margin analysis

  • Purchasing decisions

  • Financial reporting

  • Profitability tracking

Automating the update process improves consistency while reducing manual effort.

Best Practices

  • Schedule the macro during off-peak hours

  • Review currency conversion rates regularly

  • Monitor execution logs

  • Validate purchase order costs periodically

  • Test before production deployment

  • Maintain consistent purchasing procedures

Troubleshooting

Purchase Price Not Updated

Verify that the purchase order has not already been marked as processed.

Currency Conversion Appears Incorrect

Review the Linnworks currency conversion rates and ensure they are up to date.

Purchase Order Skipped

Check whether the IsPurchasePriceUpdated extended property already exists.

Inventory Item Not Updated

Review the execution log for update-related errors.

Unexpected Purchase Price

Verify purchase order quantities and purchase order cost values.

Summary

The Update Purchase Price Daily (GBP Conversion) macro automatically updates inventory purchase prices using purchase order costs, converts foreign currency values to GBP, calculates unit costs, and prevents duplicate processing through extended property tracking.

This improves inventory accuracy, reduces manual maintenance, and ensures purchase price information remains consistent across the inventory catalogue.