Create custom pickup point
You can create your own custom pickup points: these are pickup locations that you, the merchant, operate and control. For example, your own physical stores.
Create the pickup point
To create a custom pickup point, use the createPickupPoint mutation. It requires:
referenceId: A unique ID that identifies the pickup point. You can use an ID generated by your own system.name: A human-readable name that is shown to customers.phone: A phone number.address: The address of the pickup point.location: The exact coordinates of the pickup point.
Part 1: Basic information
First, we set the id, the name, and the phone number as these are simple strings.
mutation {
createPickupPoint(
input: {
referenceId: "123abc",
name: "My Store",
phone: "01 234 5678",
}
)
}
Part 2: The address
To add the address, you need the addressInput type. It requires:
country: See the available country codes.citypostalCodeaddressLine1
So the bare minimum address input looks like this:
mutation {
createPickupPoint(
input: {
referenceId: "123abc",
name: "My Store",
phone: "01 234 5678",
address: {
country: HU,
city: "Budapest",
postalCode: "1061",
addressLine1: "Nyugati tér 1."
}
}
)
}
- You can add a
statefield: it can be used for any type of administrative subdivision of a country, if you need it. - If the address is longer and more complex, you can add
addressLine2. - Add a
noteto include additional information about the address.
mutation {
createPickupPoint(
input: {
referenceId: "123abc",
name: "My Store",
phone: "01 234 5678",
address: {
country: CA,
state: "Ontario"
city: "Ottawa",
postalCode: "K2C 0A6",
addressLine1: "1026 Baseline Rd",
addressLine2: "Building B, 4th floor"
note: "The receptionist is grumpy"
}
}
)
}
Part 3: Exact coordinates
You must specify the exact location of the custom pickup point with a latitude and longitude value:
mutation {
createPickupPoint(
input: {
referenceId: "123abc",
name: "My Store",
phone: "01 234 5678",
address: {
country: HU,
city: "Budapest",
postalCode: "1061",
addressLine1: "Nyugati tér 1."
}
location: {
latitude: 47.50969187518572,
longitude: 19.05571832644608
}
}
)
}
Part 4: Activate the pickup point
To enable the pickup point for customers, you must set the isActive boolean to true.
mutation {
createPickupPoint(
input: {
referenceId: "123abc",
name: "My Store",
phone: "01 234 5678",
address: {
country: HU,
city: "Budapest",
postalCode: "1061",
addressLine1: "Nyugati tér 1."
}
location: {
latitude: 47.50969187518572,
longitude: 19.05571832644608
}
isActive: true
}
)
}
Set opening hours
The opening hours of a pickup point is important information for your customers.
To set it, you need the openingHours field which requires the PickupPointOpeningHoursInput type:
- It requires a
timezonein the format specified in theTimezoneEnum. - An
openingHoursfield which requires theOpeningHourInputtype. Each day is a separate object in an array, withday,start, andendfields. dayfields require theDayEnum.startandendfields both requirehourandminutefields which take integers.
mutation {
createPickupPoint(
input: {
referenceId: "123abc",
name: "My Store",
phone: "01 234 5678",
address: {
country: HU,
city: "Budapest",
postalCode: "1061",
addressLine1: "Nyugati tér 1."
}
location: {
latitude: 47.50969187518572,
longitude: 19.05571832644608
}
isActive: true,
openingHours: {
timezone: EUROPE_BUDAPEST,
openingHours: [
{
day: MONDAY,
start: {
hour: 8,
minute: 0
},
end: {
hour: 17,
minute: 0
}
},
{
day: TUESDAY,
start: {
hour: 9,
minute: 0
},
end: {
hour: 18,
minute: 0
}
}
]
}
}
)
}
Additional information
You can indicate whether your store is wheelchair accessible with the hasWheelChairAccess field.
mutation {
createPickupPoint(
input: {
referenceId: "123abc",
name: "My Store",
phone: "01 234 5678",
address: {
country: HU,
city: "Budapest",
postalCode: "1061",
addressLine1: "Nyugati tér 1."
}
location: {
latitude: 47.50969187518572,
longitude: 19.05571832644608
}
isActive: true,
hasWheelChairAccess: true
}
)
}
You can also configure a "cash on delivery" option, allowing customers to pay for their order in the store. The cashOnDelivery field accepts two payment methods, CASH and CARD. To enable both, include them in an array:
mutation {
createPickupPoint(
input: {
referenceId: "123abc",
name: "My Store",
phone: "01 234 5678",
address: {
country: HU,
city: "Budapest",
postalCode: "1061",
addressLine1: "Nyugati tér 1."
}
location: {
latitude: 47.50969187518572,
longitude: 19.05571832644608
}
isActive: true,
cashOnDelivery: [
CASH,
CARD
]
}
)
}