Skip to main content

Objects Glossary

Subscriptions

Subscriptions Object
{
"id": "96f614f6-745e-47f5-ad68-c0c8e9ba8dc8",
"event": "gofood.order.driver_arrived",
"url": "https://sample-endpoint.com/notifications",
"active": true,
"created_at": "2019-08-24T14:15:22Z"
}

JSON AttributeDescriptionType
idID of the subscription.String(UUID)
eventType of event notification to subscribe.
Note: For the list of available events, refer Events List.
String
urlURL at which notification is received. Please use only :80 and :443 for HTTP port.String(uri)
activeStatus of the subscription.Boolean
created_atThe date and time at which subscription is created. It is in the ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ or YYYY-MM-DDTHH:MM:SS±hh:mm).String

Transaction Details

Transaction Details Object
{
"order_id": "order-1234",
"gross_amount": 3000,
"currency": "IDR"
}

JSON AttributeDescriptionTypeRequired
order_idOrder ID of the transaction.
Note: Allowed symbols are hyphen(-), underscore(_), tilde(~), and dot(.)
StringRequired
gross_amountTotal amount of the transaction in IDR.
Note: Decimal values are not supported.
IntegerRequired
currencyThree-letter alphabetic currency code as per ISO-4217 format. Value: IDRStringRequired

Customer Details

CustomerDetails Object
{
"first_name": "John",
"last_name": "Doe",
"email": "[email protected]",
"phone": "+628111000123"
}
JSON AttributeDescriptionTypeRequired
first_nameFirst name of the customer.StringOptional
last_nameLast name of the customer.StringOptional
emailEmail address of the customer.StringOptional
phonePhone number of the customer.StringOptional

Item Details

Item Details Object
{
"id": "SKU-000123",
"price": 3000,
"quantity": 1,
"name": "Item sample no.1",
"brand": "sample brand",
"category": "others"
}
JSON AttributeDescriptionTypeRequired
idID of the item.StringOptional
pricePrice of the item in IDR.
Note: Decimal values are not supported.
IntegerRequired
quantityQuantity of the item.IntegerRequired
nameName of the item.StringRequired
brandBrand of the item.StringOptional
categoryCategory of the item.StringOptional

Outlet

Outlet Objects
{
"id": "G000012345",
"pop_id": "fa6082ea-06da-4483-9c7e-eeb0447ed53e"
}
JSON AttributeDescriptionTypeRequired
idID of your outlet.StringRequired
pop_idID of the POP machine, given by GoBiz.StringRequired

Transaction - Response

Transaction Response Object
{
"id": "71839e9c-944b-40ce-bd31-8a76db666f36",
"payment_type": "qris",
"status": "pending",
"qris_string": "00020101021226610014COM.GO-JEK.WWW01189360091430438058080210G7641517890303UMI51440014ID.CO.QRIS.WWW0215ID10190450190010303UMI5204581253033605802ID5907Circlek6015Bandung deket r61054025762470703A015036c98a2234-f6d1-46f6-91d3-2597ee7863bc5406122.0063044447",
"order_id": "order-1234",
"gross_amount": 3000,
"currency": "IDR",
"created_at": "2020-03-09T11:33:08Z",
"settlement_at": null
}
JSON AttributeDescriptionType
idID of the transaction.String(UUID)
payment_typeMode of the payment. Value: qrisString
statusStatus of the request. Possible Values: Pending, SettlementString
qris_stringQR data to display the QR image on customer side.String
order_idOrder ID of the transaction.
Note: Allowed symbols are hyphen(-), underscore(_), tilde(~), and dot(.)
String
gross_amountTotal amount of the transaction in IDR.String
currencyThree-letter alphabetic currency code as per ISO-4217 format. Value: IDRString
created_atThe date and time at which transaction is created. It is in the ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ or YYYY-MM-DDTHH:MM:SS±hh:mm).String
settlement_atThe date and time at which transaction is successful. It is in the ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ or YYYY-MM-DDTHH:MM:SS±hh:mm).String

Actions

{
"name": "generate-qr-code",
"method": "GET",
"url": "https://api.partner-sandbox.gobiz.co.id/transactions/71839e9c-944b-40ce-bd31-8a76db666f36/qr-code"
}
JSON AttributeDescriptionType
nameName of the action that can be performed on transaction. Value: generate-qr-codeString
methodHTTP method used to perform the action. Value: GETString
urlURL at which QR image is received.String

Payment Transaction - Failed Response

{
"message_title": "Not found",
"message": "Transaction not found"
}
JSON AttributeDescriptionType
message_titleTitle of the error message.String
messageDescription of the error message.String

Create Promotion Request

{
"start_date": "2020-09-04",
"end_date": "2020-09-04",
"selling_price": 2500,
"percentage_discount": 25,
"external_menu_id": "external-menu-id",
"start_time": "14:25:00",
"end_time": "14:55:00",
"applicable_days": ["monday", "sunday"]
}
JSON AttributeDescriptionTypeRequired
start_dateStart date of the promotion. Format: YYYY-MM-DD.StringRequired
end_dateLast date of the promotion. Format: YYYY-MM-DD.StringRequired
selling_priceSelling price of the item in IDR.
Note: Decimal values are not supported.
IntegerOptional
external_menu_idID of the menu item on the partner side.StringRequired
start_timeStart time of the promotion. Format: HH:mm:ss.StringOptional
percentage_discountDiscount percentage of the item.IntegerOptional
end_timeEnd time of the promotion. Format: HH:mm:ss.StringOptional
applicable_daysList of promotion applicable days. Format: Day name in english.Array(String)Optional

Create Promotion Detail Response

{
"success":
[
{
"id": "promotion_id",
"external_menu_id": "external-menu-id",
"errors": null
}
],
"failure":
[
{
"id": null,
"external_menu_id": "external-menu-id",
"errors": "Item is not active"
}
]
}

JSON AttributeDescriptionType
idID of the promotion.
Note: Value is null if response fails.
String
external_menu_idID of the menu item on the partner side.String
errorsDetails of the error.
Note: Value is null if response is successful.
String

Promotions

{
"start_date": "2020-09-04",
"end_date": "2020-09-04",
"status": "created",
"id": "96f614f6-745e-47f5-ad68-c0c8e9ba8dc8"
}

JSON AttributeDescriptionType
start_dateStart date of the promotion. Format: YYYY-MM-DDString
end_dateLast date of the promotion. Format: YYYY-MM-DD.String
statusCurrent status of the promotion.
Possible values:created, activated, deactivated, deleted, completed
String
idID of the promotion.String(UUID)

SKU Promotion Detail

{
"id": "96f614f6-745e-47f5-ad68-c0c8e9ba8dc8",
"start_date": "2020-09-04",
"end_date": "2020-09-04",
"start_time": "14:25:00",
"end_time": "14:55:00",
"status": "activated",
"promo_type": "sku_promo",
"details":
{
"menu_item":
{
"id": "45ba745f-745e-4568-ad68-c0c8e9ba8dc8",
"external_menu_id": "external-menu-id",
"name": "Kopi",
"price": 4500,
"discounted_price": 2500,

}
},
"applicable_days" : ["sunday", "monday"]
}
JSON AttributeDescriptionType
idID of the promotion.String(UUID)
start_dateStart date of the promotion. Format: YYYY-MM-DD.String
end_dateLast date of the promotion. Format: YYYY-MM-DDString
statusStatus of the promotion.
Possible values:created, activated, deactivated, completed
String
promo_typeType of the promotion. Value: sku_promoString
detailsDetails of the menu item.Object
» menu_itemMenu item object.Object
end_timeEnd time of the promotion. Format: HH:mm:ss.String Optional
applicable_daysList of promotion applicable days. Format: Day name in english.Array(String) Optional
{
"id": "96f614f6-745e-47f5-ad68-c0c8e9ba8dc8",
"external_menu_id": "external-menu-id",
"name": "Kopi",
"price": 4500,
"discounted_price": 2500
}

JSON AttributeDescriptionType
idID of the menu item on GoBiz side.String
external_menu_idID of the menu item on the partner side.String
nameName of the menu item to be displayed.String
pricePrice of the menu item in IDR.
Note: Decimal values are not supported.
Integer
discounted_pricePrice of the menu item after applying a promotion.
Note: Decimal values are not supported.
Integer

Get All Outlets - Response

{
"id": "G000012345",
"external_outlet_id": "sample-abc-12345",
"created_at": "2019-08-24T14:15:22Z",
"updated_at": "2019-08-24T14:15:22Z"
}

JSON AttributeDescriptionType
idID of an outlet on GoBiz side.String
external_outlet_idID of an outlet on the partner side.String
created_atThe date and time at which outlet is registered. It is in the ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ or YYYY-MM-DDTHH:MM:SS±hh:mm).String
updated_atThe date and time at which information about an outlet (external_outlet_id) is last modified. It is in the ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ or YYYY-MM-DDTHH:MM:SS±hh:mm).String

Linked Outlet - Response

{
"id": "G000012345",
"external_outlet_id": "sample-abc-12345",
"created_at": "2019-08-24T14:15:22Z",
"updated_at": "2019-08-24T14:15:22Z",
"linked_at": "2019-08-24T14:15:22Z"
}

JSON AttributeDescriptionType
idID of an outlet on GoBiz side.String
external_outlet_idID of an outlet on the partner side.String
created_atThe date and time at which outlet is linked. It is in the ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ or YYYY-MM-DDTHH:MM:SS±hh:mm).String
updated_atThe date and time at which information about an outlet (external_outlet_id) is last modified. It is in the ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ or YYYY-MM-DDTHH:MM:SS±hh:mm).String
linked_atThe date and time at which outlet is linked. It is in the ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ or YYYY-MM-DDTHH:MM:SS±hh:mm).String

Order Items

{
"quantity": 1,
"price": 1.5e4,
"notes": "pedas",
"name": "Hamburger",
"id": "e44495da-ebc2-493a-913a-b10d3a123456",
"external_id": "1773640",
"variants": [
{
"id": "e44495da-ebc2-493a-913a-b10d3a654321",
"name": "Hamburger keju",
"external_id": "11223344"
}
]
}

JSON AttributeDescriptionTypeRequired
quantityQuantity of the ordered item.IntegerRequired
pricePrice of the item.FloatRequired
notesAdditional information about the order.StringRequired
nameName of the ordered item.StringRequired
idID of the ordered item on GoBiz side.StringRequired
external_idID of the ordered item on partner side.StringOptional
variantsDetails about the variants.Array(Object)Optional
» idID of the variant on GoBiz side.StringRequired
» nameName of the variant.StringRequired
» external_idID of the variant on partner side.StringOptional
{
"description": "string",
"external_id": "string",
"image": "string",
"in_stock": true,
"name": "string",
"operational_hours":
{
"sunday":
[
{
"start": "10:00",
"end": "22:30"
}
],
"monday":
[
{
"start": "10:00",
"end": "22:30"
}
],
"tuesday":
[
{
"start": "10:00",
"end": "22:30"
}
],
"wednesday":
[
{
"start": "10:00",
"end": "22:30"
}
],
"thursday":
[
{
"start": "10:00",
"end": "22:30"
}
],
"friday":
[
{
"start": "10:00",
"end": "22:30"
}
],
"saturday":
[
{
"start": "10:00",
"end": "22:30"
}
]
},
"variant_category_external_ids":
[
"string"
],
"price": 0
}

JSON AttributeDescriptionTypeRequired
descriptionDescription of the menu item. Maximum limit: 250 charactersStringOptional
external_idID of the menu item on the partner side. Maximum limit: 200 charactersStringRequired
imageURL of the image of the menu item. The menu item's image URL needs to be in jpeg or png format, have the correct MIME-type header, and use either the :80 or :443 HTTP port for the GoBiz API to accept it.String(URI)Optional
in_stockStatus indicating whether the menu item is in stock or not. The default value is true.
Note: If the value is false, the menu item is out of stock.
BooleanOptional
nameName of the menu item. Maximum limit: 150 charactersStringRequired
operational_hoursDaily availability hours of the menu item.ObjectOptional
variant_category_external_idsArray of variant category IDs on the partner side.Array(String)Optional
pricePrice of the menu item in IDR.
Note: The minimum value is -2.000.000 IDR and the maximum value is 2.000.000 IDR. Decimal values are not supported.
IntegerRequired

Operational Hours

{
"sunday":
[
{
"start": "10:00",
"end": "22:30"
}
],
"monday":
[
{
"start": "10:00",
"end": "22:30"
}
],
"tuesday":
[
{
"start": "10:00",
"end": "22:30"
}
],
"wednesday": [
{
"start": "10:00",
"end": "22:30"
}
],
"thursday":
[
{
"start": "10:00",
"end": "22:30"
}
],
"friday":
[
{
"start": "10:00",
"end": "22:30"
}
],
"saturday":
[
{
"start": "10:00",
"end": "22:30"
}
]
}

JSON AttributeDescriptionTypeRequired
sundayFirst day of the week.Array(Object)Optional
» startThe time of the day from which the menu item is available.
Format: HH:MM (24-hour)
StringRequired
» endThe time of the day until which the menu item is available.
Format: HH:MM (24-hour)
StringRequired
mondaySecond day of the week.Array(Object)Optional
» startThe time of the day from which the menu item is available.
Format: HH:MM (24-hour)
StringRequired
» endThe time of the day until which the menu item is available.
Format: HH:MM (24-hour)
StringRequired
tuesdayThird day of the week.Array(Object)Optional
» startThe time of the day from which the menu item is available.
Format: HH:MM (24-hour)
StringRequired
» endThe time of the day until which the menu item is available.
Format: HH:MM (24-hour)
StringRequired
wednesdayFourth day of the week.Array(Object)Optional
» startThe time of the day from which the menu item is available.
Format: HH:MM (24-hour)
StringRequired
» endThe time of the day until which the menu item is available.
Format: HH:MM (24-hour)
StringRequired
thursdayFifth day of the week.Array(Object)Optional
» startThe time of the day from which the menu item is available.
Format: HH:MM (24-hour)
StringRequired
» endThe time of the day until which the menu item is available.
Format: HH:MM (24-hour)
StringRequired
fridaySixth day of the week.Array(Object)Optional
» startThe time of the day from which the menu item is available.
Format: HH:MM (24-hour)
StringRequired
» endThe time of the day until which the menu item is available.
Format: HH:MM (24-hour)
StringRequired
saturdayLast day of the week.Array(Object)Optional
» startThe time of the day from which the menu item is available.
Format: HH:MM (24-hour)
StringRequired
» endThe time of the day until which the menu item is available.
Format: HH:MM (24-hour)
StringRequired

Variant Categories

{
"external_id": "external-menu-id",
"internal_name": "string",
"name": "external-menu-id",
"rules":
{
"selection":
{
"max_quantity": 1,
"min_quantity": 0
}
},
"variants":
[
{
"external_id": "external-menu-id",
"in_stock": true,
"name": "string",
"price": -2000000
}
]
}

JSON AttributeDescriTypeRequired
external_idID of the variant category on the partner side. Maximum limit: 200 charactersStringRequired
internal_nameVariant category identifier to be shown in the GoBiz application. Maximum limit: 200 charactersStringOptional
nameName of the variant category to be displayed on the Gojek application. Maximum limit: 50 charactersStringOptional
rulesRules for selection of the variant category.ObjectOptional
» selectionObject to select maximum and minimum quantity of the variant category.ObjectOptional
»» max_quantityMaximum quantity of the variant category.IntegerOptional
»» min_quantityMinimum quantity of the variant category.IntegerOptional
variantsArray of variants object.Array(Object)Optional

Variants

{
"external_id": "external-menu-id",
"in_stock": true,
"name": "string",
"price": -2000000
}

JSON AttributeDescriptionTypeRequired
external_idID of the variant on the partner side. Maximum limit: 200 charactersStringOptional
in_stockStatus indicating whether the variant is in stock or not. The default value is true.
Note: If the value is false, the variant is out of stock.
BooleanOptional
nameName of the variant. Maximum limit: 50 charactersStringOptional
priceThe price of the variant. This price is added to the price of the menu item.
Note: The minimum value is -2.000.000 IDR and the maximum value is 2.000.000 IDR. Decimal values are not supported.
IntegerOptional

Authenticated Outlet

{
"id": "string",
"name": "string",
"address": "string",
"email": "",
"phone": ""
}
note
  • Email and Phone number fields are deprecated. It returns empty string to maintain backward compatibility.
JSON AttributeDescriptionType
idID of the authenticated outlet.String
nameName of the outlet.String
addressLocation of the outlet.String
emailDEPRECATED Registered email address of the outletString
phoneDEPRECATED Contact number of the outlet.String

Outlet Information

{
"id": "G916309315",
"merchant_name": "Name",
"name": "Name",
"status": "active",
"email": "[email protected]",
"payment_settings":
{
"gopay":
{
"active": true
},
"qris":
{
"active": true
}
},
"applications":
{
"midtrans":
{
"active": true
},
"gopay":
{
"active": true
}
}
}

JSON AttributeDescriptionType
idID of the outlet to be linked.String
merchant_nameName of the outlet. Please note, this field is deprecated.String
nameName of the outlet.String
statusStatus of the outlet.String
emailRegistered email address of the outlet.String
payment_settingsModes of payment supported by the outlet.Object
applicationsApplications that the outlet uses for payment.Object

Payment Settings

{
"gopay":
{
"active": true
},
"qris":
{
"active": true
}
}

JSON AttributeDescriptionType
gopayMode of payment.Object
» activeStatus of GoPay.Boolean
qrisMode of payment.Object
» activeStatus of QRIS.Boolean

Applications

{
"midtrans":
{
"active": true
},
"gopay":
{
"active": true
}
}

JSON AttributeDescriptionType
midtransPayment application.Object
» activeStatus of Midtrans.Boolean
gopayPayment application.Object
» activeStatus of GoPay.Boolean

Notifications

{
"entity_id": "F-704173354",
"created_at": "2023-05-03T16:11:50.446+00:00",
"partner_id": "c5fbc785-629a-463f-b6f9-da1106a29fa1",
"event_type": "gofood.order.merchant_accepted",
"delivery_status": "dead",
"endpoint": "https://webhook.site/5b8922ed-b310-456c-8ea2-9d7a0a9ba0f0",
"headers": {
"X-Go-Signature": "1158ebcb7e821406f0b4993a504d6d561177c494662dad890d651f94f3f08216",
"X-Go-Idempotency-Key": "446cb8ae-8fe3-3c2c-9e9f-c677f37c5e5c",
"Content-Type": "application/json",
"Accept": "application/json"
},
"payload": "stringified JSON of notification payload",
"history": [
{
"time": "2023-05-03T16:11:50.446+00:00",
"exception_message": "URL not found",
"delivered": false
},
{
"time": "2023-05-03T16:15:50.446+00:00",
"exception_message": "URL not found",
"delivered": false
},
{
"time": "2023-05-03T16:19:50.446+00:00",
"exception_message": "URL not found",
"delivered": false
},
{
"time": "2023-05-03T16:19:50.446+00:00",
"exception_message": "Failed after automatic attempts.",
"delivered": false
}
]
}

JSON AttributeDescriptionType
entity_idID of the notification's entity.String
created_atThe date and time at which notification is created. It is in the ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ)String
partner_idYour identification number as our partner.String(UUID)
event_typeType of event notification.
Note: For the list of available events, refer Events List.
String
delivery_statusStatus of the notification delivery. Available states are: queue, working, complete, failed, and dead.String
endpointURL at which notification is received.String(URI)
headersContains the API request header metadata of the notification being sent.Object
payloadThe actual payload of the notification being sent.String(JSON)
historyHistorical delivery states of the notification. You can use this to trace each notification's delivery.Array(object)

Errors - 404/406/415

Errors 415/406 Unsupported Accept Type

{
"errors": [
{
"message_title": "UnsupportedAcceptType",
"message": "Invalid Accept header: application/vnd.eim.v0+json"
}
]
}

Errors 404 Unregistered Outlet

{
"errors": [
{
"message_title": "Requested resource not found",
"message": "The outlet is not yet registered for integration. Please contact the support team."
}
]
}

Errors 404 Outlet Not Found

{
"errors": [
{
"message_title": "Not found",
"message": "Outlet with id: de829e5b-72a5-49bc-a5f3-f0d83edb9daf is not found"
}
]
}

JSON AttributeDescriptionType
message_titleTitle of the error message.String
messageDescription of the error message.String

Errors - 401 - Unauthorized

{
"errors": [
{
"code": "HTTP_401",
"message": "Your session is expired. Please login again.",
"message_title": "Session Expired",
"message_severity": "error"
}
]
}

JSON AttributeDescriptionType
codeHTTP error code.String
message_titleTitle of the error message.String
messageDescription of the error message.String
message_severitySeverity of the error.String