//native
type Square = {
token: string;
};
/**
* BatchChangeInventory
* Applies adjustments and counts to the provided item quantities.
On success: returns the current calculated counts for all objects
referenced in the request.
On failure: returns a list of related errors.
*/
export async function main(
auth: Square,
body: {
idempotency_key: string;
changes?: {
type?: "PHYSICAL_COUNT" | "ADJUSTMENT" | "TRANSFER";
physical_count?: {
id?: string;
reference_id?: string;
catalog_object_id?: string;
catalog_object_type?: string;
state?:
| "CUSTOM"
| "IN_STOCK"
| "SOLD"
| "RETURNED_BY_CUSTOMER"
| "RESERVED_FOR_SALE"
| "SOLD_ONLINE"
| "ORDERED_FROM_VENDOR"
| "RECEIVED_FROM_VENDOR"
| "IN_TRANSIT_TO"
| "NONE"
| "WASTE"
| "UNLINKED_RETURN"
| "COMPOSED"
| "DECOMPOSED"
| "SUPPORTED_BY_NEWER_VERSION"
| "IN_TRANSIT";
location_id?: string;
quantity?: string;
source?: {
product?:
| "SQUARE_POS"
| "EXTERNAL_API"
| "BILLING"
| "APPOINTMENTS"
| "INVOICES"
| "ONLINE_STORE"
| "PAYROLL"
| "DASHBOARD"
| "ITEM_LIBRARY_IMPORT"
| "OTHER";
application_id?: string;
name?: string;
};
employee_id?: string;
team_member_id?: string;
occurred_at?: string;
created_at?: string;
};
adjustment?: {
id?: string;
reference_id?: string;
from_state?:
| "CUSTOM"
| "IN_STOCK"
| "SOLD"
| "RETURNED_BY_CUSTOMER"
| "RESERVED_FOR_SALE"
| "SOLD_ONLINE"
| "ORDERED_FROM_VENDOR"
| "RECEIVED_FROM_VENDOR"
| "IN_TRANSIT_TO"
| "NONE"
| "WASTE"
| "UNLINKED_RETURN"
| "COMPOSED"
| "DECOMPOSED"
| "SUPPORTED_BY_NEWER_VERSION"
| "IN_TRANSIT";
to_state?:
| "CUSTOM"
| "IN_STOCK"
| "SOLD"
| "RETURNED_BY_CUSTOMER"
| "RESERVED_FOR_SALE"
| "SOLD_ONLINE"
| "ORDERED_FROM_VENDOR"
| "RECEIVED_FROM_VENDOR"
| "IN_TRANSIT_TO"
| "NONE"
| "WASTE"
| "UNLINKED_RETURN"
| "COMPOSED"
| "DECOMPOSED"
| "SUPPORTED_BY_NEWER_VERSION"
| "IN_TRANSIT";
location_id?: string;
catalog_object_id?: string;
catalog_object_type?: string;
quantity?: string;
total_price_money?: {
amount?: number;
currency?:
| "UNKNOWN_CURRENCY"
| "AED"
| "AFN"
| "ALL"
| "AMD"
| "ANG"
| "AOA"
| "ARS"
| "AUD"
| "AWG"
| "AZN"
| "BAM"
| "BBD"
| "BDT"
| "BGN"
| "BHD"
| "BIF"
| "BMD"
| "BND"
| "BOB"
| "BOV"
| "BRL"
| "BSD"
| "BTN"
| "BWP"
| "BYR"
| "BZD"
| "CAD"
| "CDF"
| "CHE"
| "CHF"
| "CHW"
| "CLF"
| "CLP"
| "CNY"
| "COP"
| "COU"
| "CRC"
| "CUC"
| "CUP"
| "CVE"
| "CZK"
| "DJF"
| "DKK"
| "DOP"
| "DZD"
| "EGP"
| "ERN"
| "ETB"
| "EUR"
| "FJD"
| "FKP"
| "GBP"
| "GEL"
| "GHS"
| "GIP"
| "GMD"
| "GNF"
| "GTQ"
| "GYD"
| "HKD"
| "HNL"
| "HRK"
| "HTG"
| "HUF"
| "IDR"
| "ILS"
| "INR"
| "IQD"
| "IRR"
| "ISK"
| "JMD"
| "JOD"
| "JPY"
| "KES"
| "KGS"
| "KHR"
| "KMF"
| "KPW"
| "KRW"
| "KWD"
| "KYD"
| "KZT"
| "LAK"
| "LBP"
| "LKR"
| "LRD"
| "LSL"
| "LTL"
| "LVL"
| "LYD"
| "MAD"
| "MDL"
| "MGA"
| "MKD"
| "MMK"
| "MNT"
| "MOP"
| "MRO"
| "MUR"
| "MVR"
| "MWK"
| "MXN"
| "MXV"
| "MYR"
| "MZN"
| "NAD"
| "NGN"
| "NIO"
| "NOK"
| "NPR"
| "NZD"
| "OMR"
| "PAB"
| "PEN"
| "PGK"
| "PHP"
| "PKR"
| "PLN"
| "PYG"
| "QAR"
| "RON"
| "RSD"
| "RUB"
| "RWF"
| "SAR"
| "SBD"
| "SCR"
| "SDG"
| "SEK"
| "SGD"
| "SHP"
| "SLL"
| "SLE"
| "SOS"
| "SRD"
| "SSP"
| "STD"
| "SVC"
| "SYP"
| "SZL"
| "THB"
| "TJS"
| "TMT"
| "TND"
| "TOP"
| "TRY"
| "TTD"
| "TWD"
| "TZS"
| "UAH"
| "UGX"
| "USD"
| "USN"
| "USS"
| "UYI"
| "UYU"
| "UZS"
| "VEF"
| "VND"
| "VUV"
| "WST"
| "XAF"
| "XAG"
| "XAU"
| "XBA"
| "XBB"
| "XBC"
| "XBD"
| "XCD"
| "XDR"
| "XOF"
| "XPD"
| "XPF"
| "XPT"
| "XTS"
| "XXX"
| "YER"
| "ZAR"
| "ZMK"
| "ZMW"
| "BTC"
| "XUS";
};
occurred_at?: string;
created_at?: string;
source?: {
product?:
| "SQUARE_POS"
| "EXTERNAL_API"
| "BILLING"
| "APPOINTMENTS"
| "INVOICES"
| "ONLINE_STORE"
| "PAYROLL"
| "DASHBOARD"
| "ITEM_LIBRARY_IMPORT"
| "OTHER";
application_id?: string;
name?: string;
};
employee_id?: string;
team_member_id?: string;
transaction_id?: string;
refund_id?: string;
purchase_order_id?: string;
goods_receipt_id?: string;
adjustment_group?: {
id?: string;
root_adjustment_id?: string;
from_state?:
| "CUSTOM"
| "IN_STOCK"
| "SOLD"
| "RETURNED_BY_CUSTOMER"
| "RESERVED_FOR_SALE"
| "SOLD_ONLINE"
| "ORDERED_FROM_VENDOR"
| "RECEIVED_FROM_VENDOR"
| "IN_TRANSIT_TO"
| "NONE"
| "WASTE"
| "UNLINKED_RETURN"
| "COMPOSED"
| "DECOMPOSED"
| "SUPPORTED_BY_NEWER_VERSION"
| "IN_TRANSIT";
to_state?:
| "CUSTOM"
| "IN_STOCK"
| "SOLD"
| "RETURNED_BY_CUSTOMER"
| "RESERVED_FOR_SALE"
| "SOLD_ONLINE"
| "ORDERED_FROM_VENDOR"
| "RECEIVED_FROM_VENDOR"
| "IN_TRANSIT_TO"
| "NONE"
| "WASTE"
| "UNLINKED_RETURN"
| "COMPOSED"
| "DECOMPOSED"
| "SUPPORTED_BY_NEWER_VERSION"
| "IN_TRANSIT";
};
};
transfer?: {
id?: string;
reference_id?: string;
state?:
| "CUSTOM"
| "IN_STOCK"
| "SOLD"
| "RETURNED_BY_CUSTOMER"
| "RESERVED_FOR_SALE"
| "SOLD_ONLINE"
| "ORDERED_FROM_VENDOR"
| "RECEIVED_FROM_VENDOR"
| "IN_TRANSIT_TO"
| "NONE"
| "WASTE"
| "UNLINKED_RETURN"
| "COMPOSED"
| "DECOMPOSED"
| "SUPPORTED_BY_NEWER_VERSION"
| "IN_TRANSIT";
from_location_id?: string;
to_location_id?: string;
catalog_object_id?: string;
catalog_object_type?: string;
quantity?: string;
occurred_at?: string;
created_at?: string;
source?: {
product?:
| "SQUARE_POS"
| "EXTERNAL_API"
| "BILLING"
| "APPOINTMENTS"
| "INVOICES"
| "ONLINE_STORE"
| "PAYROLL"
| "DASHBOARD"
| "ITEM_LIBRARY_IMPORT"
| "OTHER";
application_id?: string;
name?: string;
};
employee_id?: string;
team_member_id?: string;
};
measurement_unit?: {
measurement_unit?: {
custom_unit?: { name: string; abbreviation: string };
area_unit?:
| "IMPERIAL_ACRE"
| "IMPERIAL_SQUARE_INCH"
| "IMPERIAL_SQUARE_FOOT"
| "IMPERIAL_SQUARE_YARD"
| "IMPERIAL_SQUARE_MILE"
| "METRIC_SQUARE_CENTIMETER"
| "METRIC_SQUARE_METER"
| "METRIC_SQUARE_KILOMETER";
length_unit?:
| "IMPERIAL_INCH"
| "IMPERIAL_FOOT"
| "IMPERIAL_YARD"
| "IMPERIAL_MILE"
| "METRIC_MILLIMETER"
| "METRIC_CENTIMETER"
| "METRIC_METER"
| "METRIC_KILOMETER";
volume_unit?:
| "GENERIC_FLUID_OUNCE"
| "GENERIC_SHOT"
| "GENERIC_CUP"
| "GENERIC_PINT"
| "GENERIC_QUART"
| "GENERIC_GALLON"
| "IMPERIAL_CUBIC_INCH"
| "IMPERIAL_CUBIC_FOOT"
| "IMPERIAL_CUBIC_YARD"
| "METRIC_MILLILITER"
| "METRIC_LITER";
weight_unit?:
| "IMPERIAL_WEIGHT_OUNCE"
| "IMPERIAL_POUND"
| "IMPERIAL_STONE"
| "METRIC_MILLIGRAM"
| "METRIC_GRAM"
| "METRIC_KILOGRAM";
generic_unit?: "UNIT";
time_unit?:
| "GENERIC_MILLISECOND"
| "GENERIC_SECOND"
| "GENERIC_MINUTE"
| "GENERIC_HOUR"
| "GENERIC_DAY";
type?:
| "TYPE_CUSTOM"
| "TYPE_AREA"
| "TYPE_LENGTH"
| "TYPE_VOLUME"
| "TYPE_WEIGHT"
| "TYPE_GENERIC";
};
precision?: number;
};
measurement_unit_id?: string;
}[];
ignore_unchanged_counts?: false | true;
},
) {
const url = new URL(
`https://connect.squareup.com/v2/inventory/changes/batch-create`,
);
const response = await fetch(url, {
method: "POST",
headers: {
"Content-Type": "application/json",
Authorization: "Bearer " + auth.token,
},
body: JSON.stringify(body),
});
if (!response.ok) {
const text = await response.text();
throw new Error(`${response.status} ${text}`);
}
return await response.json();
}
Submitted by hugo697 235 days ago