0

CreateLocation

by
Published Oct 17, 2025

Creates a [location](https://developer.

Script square Verified

The script

Submitted by hugo697 Bun
Verified 235 days ago
1
//native
2
type Square = {
3
  token: string;
4
};
5
/**
6
 * CreateLocation
7
 * Creates a [location](https://developer.
8
 */
9
export async function main(
10
  auth: Square,
11
  body: {
12
    location?: {
13
      id?: string;
14
      name?: string;
15
      address?: {
16
        address_line_1?: string;
17
        address_line_2?: string;
18
        address_line_3?: string;
19
        locality?: string;
20
        sublocality?: string;
21
        sublocality_2?: string;
22
        sublocality_3?: string;
23
        administrative_district_level_1?: string;
24
        administrative_district_level_2?: string;
25
        administrative_district_level_3?: string;
26
        postal_code?: string;
27
        country?:
28
          | "ZZ"
29
          | "AD"
30
          | "AE"
31
          | "AF"
32
          | "AG"
33
          | "AI"
34
          | "AL"
35
          | "AM"
36
          | "AO"
37
          | "AQ"
38
          | "AR"
39
          | "AS"
40
          | "AT"
41
          | "AU"
42
          | "AW"
43
          | "AX"
44
          | "AZ"
45
          | "BA"
46
          | "BB"
47
          | "BD"
48
          | "BE"
49
          | "BF"
50
          | "BG"
51
          | "BH"
52
          | "BI"
53
          | "BJ"
54
          | "BL"
55
          | "BM"
56
          | "BN"
57
          | "BO"
58
          | "BQ"
59
          | "BR"
60
          | "BS"
61
          | "BT"
62
          | "BV"
63
          | "BW"
64
          | "BY"
65
          | "BZ"
66
          | "CA"
67
          | "CC"
68
          | "CD"
69
          | "CF"
70
          | "CG"
71
          | "CH"
72
          | "CI"
73
          | "CK"
74
          | "CL"
75
          | "CM"
76
          | "CN"
77
          | "CO"
78
          | "CR"
79
          | "CU"
80
          | "CV"
81
          | "CW"
82
          | "CX"
83
          | "CY"
84
          | "CZ"
85
          | "DE"
86
          | "DJ"
87
          | "DK"
88
          | "DM"
89
          | "DO"
90
          | "DZ"
91
          | "EC"
92
          | "EE"
93
          | "EG"
94
          | "EH"
95
          | "ER"
96
          | "ES"
97
          | "ET"
98
          | "FI"
99
          | "FJ"
100
          | "FK"
101
          | "FM"
102
          | "FO"
103
          | "FR"
104
          | "GA"
105
          | "GB"
106
          | "GD"
107
          | "GE"
108
          | "GF"
109
          | "GG"
110
          | "GH"
111
          | "GI"
112
          | "GL"
113
          | "GM"
114
          | "GN"
115
          | "GP"
116
          | "GQ"
117
          | "GR"
118
          | "GS"
119
          | "GT"
120
          | "GU"
121
          | "GW"
122
          | "GY"
123
          | "HK"
124
          | "HM"
125
          | "HN"
126
          | "HR"
127
          | "HT"
128
          | "HU"
129
          | "ID"
130
          | "IE"
131
          | "IL"
132
          | "IM"
133
          | "IN"
134
          | "IO"
135
          | "IQ"
136
          | "IR"
137
          | "IS"
138
          | "IT"
139
          | "JE"
140
          | "JM"
141
          | "JO"
142
          | "JP"
143
          | "KE"
144
          | "KG"
145
          | "KH"
146
          | "KI"
147
          | "KM"
148
          | "KN"
149
          | "KP"
150
          | "KR"
151
          | "KW"
152
          | "KY"
153
          | "KZ"
154
          | "LA"
155
          | "LB"
156
          | "LC"
157
          | "LI"
158
          | "LK"
159
          | "LR"
160
          | "LS"
161
          | "LT"
162
          | "LU"
163
          | "LV"
164
          | "LY"
165
          | "MA"
166
          | "MC"
167
          | "MD"
168
          | "ME"
169
          | "MF"
170
          | "MG"
171
          | "MH"
172
          | "MK"
173
          | "ML"
174
          | "MM"
175
          | "MN"
176
          | "MO"
177
          | "MP"
178
          | "MQ"
179
          | "MR"
180
          | "MS"
181
          | "MT"
182
          | "MU"
183
          | "MV"
184
          | "MW"
185
          | "MX"
186
          | "MY"
187
          | "MZ"
188
          | "NA"
189
          | "NC"
190
          | "NE"
191
          | "NF"
192
          | "NG"
193
          | "NI"
194
          | "NL"
195
          | "NO"
196
          | "NP"
197
          | "NR"
198
          | "NU"
199
          | "NZ"
200
          | "OM"
201
          | "PA"
202
          | "PE"
203
          | "PF"
204
          | "PG"
205
          | "PH"
206
          | "PK"
207
          | "PL"
208
          | "PM"
209
          | "PN"
210
          | "PR"
211
          | "PS"
212
          | "PT"
213
          | "PW"
214
          | "PY"
215
          | "QA"
216
          | "RE"
217
          | "RO"
218
          | "RS"
219
          | "RU"
220
          | "RW"
221
          | "SA"
222
          | "SB"
223
          | "SC"
224
          | "SD"
225
          | "SE"
226
          | "SG"
227
          | "SH"
228
          | "SI"
229
          | "SJ"
230
          | "SK"
231
          | "SL"
232
          | "SM"
233
          | "SN"
234
          | "SO"
235
          | "SR"
236
          | "SS"
237
          | "ST"
238
          | "SV"
239
          | "SX"
240
          | "SY"
241
          | "SZ"
242
          | "TC"
243
          | "TD"
244
          | "TF"
245
          | "TG"
246
          | "TH"
247
          | "TJ"
248
          | "TK"
249
          | "TL"
250
          | "TM"
251
          | "TN"
252
          | "TO"
253
          | "TR"
254
          | "TT"
255
          | "TV"
256
          | "TW"
257
          | "TZ"
258
          | "UA"
259
          | "UG"
260
          | "UM"
261
          | "US"
262
          | "UY"
263
          | "UZ"
264
          | "VA"
265
          | "VC"
266
          | "VE"
267
          | "VG"
268
          | "VI"
269
          | "VN"
270
          | "VU"
271
          | "WF"
272
          | "WS"
273
          | "YE"
274
          | "YT"
275
          | "ZA"
276
          | "ZM"
277
          | "ZW";
278
        first_name?: string;
279
        last_name?: string;
280
      };
281
      timezone?: string;
282
      capabilities?:
283
        | "CREDIT_CARD_PROCESSING"
284
        | "AUTOMATIC_TRANSFERS"
285
        | "UNLINKED_REFUNDS"[];
286
      status?: "ACTIVE" | "INACTIVE";
287
      created_at?: string;
288
      merchant_id?: string;
289
      country?:
290
        | "ZZ"
291
        | "AD"
292
        | "AE"
293
        | "AF"
294
        | "AG"
295
        | "AI"
296
        | "AL"
297
        | "AM"
298
        | "AO"
299
        | "AQ"
300
        | "AR"
301
        | "AS"
302
        | "AT"
303
        | "AU"
304
        | "AW"
305
        | "AX"
306
        | "AZ"
307
        | "BA"
308
        | "BB"
309
        | "BD"
310
        | "BE"
311
        | "BF"
312
        | "BG"
313
        | "BH"
314
        | "BI"
315
        | "BJ"
316
        | "BL"
317
        | "BM"
318
        | "BN"
319
        | "BO"
320
        | "BQ"
321
        | "BR"
322
        | "BS"
323
        | "BT"
324
        | "BV"
325
        | "BW"
326
        | "BY"
327
        | "BZ"
328
        | "CA"
329
        | "CC"
330
        | "CD"
331
        | "CF"
332
        | "CG"
333
        | "CH"
334
        | "CI"
335
        | "CK"
336
        | "CL"
337
        | "CM"
338
        | "CN"
339
        | "CO"
340
        | "CR"
341
        | "CU"
342
        | "CV"
343
        | "CW"
344
        | "CX"
345
        | "CY"
346
        | "CZ"
347
        | "DE"
348
        | "DJ"
349
        | "DK"
350
        | "DM"
351
        | "DO"
352
        | "DZ"
353
        | "EC"
354
        | "EE"
355
        | "EG"
356
        | "EH"
357
        | "ER"
358
        | "ES"
359
        | "ET"
360
        | "FI"
361
        | "FJ"
362
        | "FK"
363
        | "FM"
364
        | "FO"
365
        | "FR"
366
        | "GA"
367
        | "GB"
368
        | "GD"
369
        | "GE"
370
        | "GF"
371
        | "GG"
372
        | "GH"
373
        | "GI"
374
        | "GL"
375
        | "GM"
376
        | "GN"
377
        | "GP"
378
        | "GQ"
379
        | "GR"
380
        | "GS"
381
        | "GT"
382
        | "GU"
383
        | "GW"
384
        | "GY"
385
        | "HK"
386
        | "HM"
387
        | "HN"
388
        | "HR"
389
        | "HT"
390
        | "HU"
391
        | "ID"
392
        | "IE"
393
        | "IL"
394
        | "IM"
395
        | "IN"
396
        | "IO"
397
        | "IQ"
398
        | "IR"
399
        | "IS"
400
        | "IT"
401
        | "JE"
402
        | "JM"
403
        | "JO"
404
        | "JP"
405
        | "KE"
406
        | "KG"
407
        | "KH"
408
        | "KI"
409
        | "KM"
410
        | "KN"
411
        | "KP"
412
        | "KR"
413
        | "KW"
414
        | "KY"
415
        | "KZ"
416
        | "LA"
417
        | "LB"
418
        | "LC"
419
        | "LI"
420
        | "LK"
421
        | "LR"
422
        | "LS"
423
        | "LT"
424
        | "LU"
425
        | "LV"
426
        | "LY"
427
        | "MA"
428
        | "MC"
429
        | "MD"
430
        | "ME"
431
        | "MF"
432
        | "MG"
433
        | "MH"
434
        | "MK"
435
        | "ML"
436
        | "MM"
437
        | "MN"
438
        | "MO"
439
        | "MP"
440
        | "MQ"
441
        | "MR"
442
        | "MS"
443
        | "MT"
444
        | "MU"
445
        | "MV"
446
        | "MW"
447
        | "MX"
448
        | "MY"
449
        | "MZ"
450
        | "NA"
451
        | "NC"
452
        | "NE"
453
        | "NF"
454
        | "NG"
455
        | "NI"
456
        | "NL"
457
        | "NO"
458
        | "NP"
459
        | "NR"
460
        | "NU"
461
        | "NZ"
462
        | "OM"
463
        | "PA"
464
        | "PE"
465
        | "PF"
466
        | "PG"
467
        | "PH"
468
        | "PK"
469
        | "PL"
470
        | "PM"
471
        | "PN"
472
        | "PR"
473
        | "PS"
474
        | "PT"
475
        | "PW"
476
        | "PY"
477
        | "QA"
478
        | "RE"
479
        | "RO"
480
        | "RS"
481
        | "RU"
482
        | "RW"
483
        | "SA"
484
        | "SB"
485
        | "SC"
486
        | "SD"
487
        | "SE"
488
        | "SG"
489
        | "SH"
490
        | "SI"
491
        | "SJ"
492
        | "SK"
493
        | "SL"
494
        | "SM"
495
        | "SN"
496
        | "SO"
497
        | "SR"
498
        | "SS"
499
        | "ST"
500
        | "SV"
501
        | "SX"
502
        | "SY"
503
        | "SZ"
504
        | "TC"
505
        | "TD"
506
        | "TF"
507
        | "TG"
508
        | "TH"
509
        | "TJ"
510
        | "TK"
511
        | "TL"
512
        | "TM"
513
        | "TN"
514
        | "TO"
515
        | "TR"
516
        | "TT"
517
        | "TV"
518
        | "TW"
519
        | "TZ"
520
        | "UA"
521
        | "UG"
522
        | "UM"
523
        | "US"
524
        | "UY"
525
        | "UZ"
526
        | "VA"
527
        | "VC"
528
        | "VE"
529
        | "VG"
530
        | "VI"
531
        | "VN"
532
        | "VU"
533
        | "WF"
534
        | "WS"
535
        | "YE"
536
        | "YT"
537
        | "ZA"
538
        | "ZM"
539
        | "ZW";
540
      language_code?: string;
541
      currency?:
542
        | "UNKNOWN_CURRENCY"
543
        | "AED"
544
        | "AFN"
545
        | "ALL"
546
        | "AMD"
547
        | "ANG"
548
        | "AOA"
549
        | "ARS"
550
        | "AUD"
551
        | "AWG"
552
        | "AZN"
553
        | "BAM"
554
        | "BBD"
555
        | "BDT"
556
        | "BGN"
557
        | "BHD"
558
        | "BIF"
559
        | "BMD"
560
        | "BND"
561
        | "BOB"
562
        | "BOV"
563
        | "BRL"
564
        | "BSD"
565
        | "BTN"
566
        | "BWP"
567
        | "BYR"
568
        | "BZD"
569
        | "CAD"
570
        | "CDF"
571
        | "CHE"
572
        | "CHF"
573
        | "CHW"
574
        | "CLF"
575
        | "CLP"
576
        | "CNY"
577
        | "COP"
578
        | "COU"
579
        | "CRC"
580
        | "CUC"
581
        | "CUP"
582
        | "CVE"
583
        | "CZK"
584
        | "DJF"
585
        | "DKK"
586
        | "DOP"
587
        | "DZD"
588
        | "EGP"
589
        | "ERN"
590
        | "ETB"
591
        | "EUR"
592
        | "FJD"
593
        | "FKP"
594
        | "GBP"
595
        | "GEL"
596
        | "GHS"
597
        | "GIP"
598
        | "GMD"
599
        | "GNF"
600
        | "GTQ"
601
        | "GYD"
602
        | "HKD"
603
        | "HNL"
604
        | "HRK"
605
        | "HTG"
606
        | "HUF"
607
        | "IDR"
608
        | "ILS"
609
        | "INR"
610
        | "IQD"
611
        | "IRR"
612
        | "ISK"
613
        | "JMD"
614
        | "JOD"
615
        | "JPY"
616
        | "KES"
617
        | "KGS"
618
        | "KHR"
619
        | "KMF"
620
        | "KPW"
621
        | "KRW"
622
        | "KWD"
623
        | "KYD"
624
        | "KZT"
625
        | "LAK"
626
        | "LBP"
627
        | "LKR"
628
        | "LRD"
629
        | "LSL"
630
        | "LTL"
631
        | "LVL"
632
        | "LYD"
633
        | "MAD"
634
        | "MDL"
635
        | "MGA"
636
        | "MKD"
637
        | "MMK"
638
        | "MNT"
639
        | "MOP"
640
        | "MRO"
641
        | "MUR"
642
        | "MVR"
643
        | "MWK"
644
        | "MXN"
645
        | "MXV"
646
        | "MYR"
647
        | "MZN"
648
        | "NAD"
649
        | "NGN"
650
        | "NIO"
651
        | "NOK"
652
        | "NPR"
653
        | "NZD"
654
        | "OMR"
655
        | "PAB"
656
        | "PEN"
657
        | "PGK"
658
        | "PHP"
659
        | "PKR"
660
        | "PLN"
661
        | "PYG"
662
        | "QAR"
663
        | "RON"
664
        | "RSD"
665
        | "RUB"
666
        | "RWF"
667
        | "SAR"
668
        | "SBD"
669
        | "SCR"
670
        | "SDG"
671
        | "SEK"
672
        | "SGD"
673
        | "SHP"
674
        | "SLL"
675
        | "SLE"
676
        | "SOS"
677
        | "SRD"
678
        | "SSP"
679
        | "STD"
680
        | "SVC"
681
        | "SYP"
682
        | "SZL"
683
        | "THB"
684
        | "TJS"
685
        | "TMT"
686
        | "TND"
687
        | "TOP"
688
        | "TRY"
689
        | "TTD"
690
        | "TWD"
691
        | "TZS"
692
        | "UAH"
693
        | "UGX"
694
        | "USD"
695
        | "USN"
696
        | "USS"
697
        | "UYI"
698
        | "UYU"
699
        | "UZS"
700
        | "VEF"
701
        | "VND"
702
        | "VUV"
703
        | "WST"
704
        | "XAF"
705
        | "XAG"
706
        | "XAU"
707
        | "XBA"
708
        | "XBB"
709
        | "XBC"
710
        | "XBD"
711
        | "XCD"
712
        | "XDR"
713
        | "XOF"
714
        | "XPD"
715
        | "XPF"
716
        | "XPT"
717
        | "XTS"
718
        | "XXX"
719
        | "YER"
720
        | "ZAR"
721
        | "ZMK"
722
        | "ZMW"
723
        | "BTC"
724
        | "XUS";
725
      phone_number?: string;
726
      business_name?: string;
727
      type?: "PHYSICAL" | "MOBILE";
728
      website_url?: string;
729
      business_hours?: {
730
        periods?: {
731
          day_of_week?: "SUN" | "MON" | "TUE" | "WED" | "THU" | "FRI" | "SAT";
732
          start_local_time?: string;
733
          end_local_time?: string;
734
        }[];
735
      };
736
      business_email?: string;
737
      description?: string;
738
      twitter_username?: string;
739
      instagram_username?: string;
740
      facebook_url?: string;
741
      coordinates?: { latitude?: number; longitude?: number };
742
      logo_url?: string;
743
      pos_background_url?: string;
744
      mcc?: string;
745
      full_format_logo_url?: string;
746
      tax_ids?: {
747
        eu_vat?: string;
748
        fr_siret?: string;
749
        fr_naf?: string;
750
        es_nif?: string;
751
        jp_qii?: string;
752
      };
753
    };
754
  },
755
) {
756
  const url = new URL(`https://connect.squareup.com/v2/locations`);
757

758
  const response = await fetch(url, {
759
    method: "POST",
760
    headers: {
761
      "Content-Type": "application/json",
762
      Authorization: "Bearer " + auth.token,
763
    },
764
    body: JSON.stringify(body),
765
  });
766
  if (!response.ok) {
767
    const text = await response.text();
768
    throw new Error(`${response.status} ${text}`);
769
  }
770
  return await response.json();
771
}
772