Organization Checkout
Start by reviewing Checkout APIs - Best Practices and Security to increase security and reduce duplicate transactions.
Method | Endpoint | Authenticated |
---|---|---|
POST | /v2/b2b/orders/organizations/{organizationId} | Yes |
- To complete an organization checkout, you'll need the ID for the organization to associate the order. This ID should be supplied by the venue. It can be found in the URL after opening an organization in ACME Back Office. Organization IDs are unique per tenant
- If you set only the billing contact, the order contact gets pre-populated with the primary contact from the org. However, if you set only the order contact, the billing contact gets copied from order contact. They can be set independently as well.
Body
An organization checkout object.
Sample Organization Checkout Object
{ "paymentMethod" : "Voucher" , "chargeAmount" : "25.00" , "zipCode" : "12345" , "billingPhoneNumber" : "555.555.5555" , "billingFirstName" : "John" , "billingLastName" : "Johnson" , "reservationId" : 10049, "phoneNumber" : "555.555.5555" , "email" : "mailbox@email.acme" , "billingEmail" : "mailbox@email.acme" , "queuedStatus" : 0, "events" : [{ "eventId" : "5d96453460309f26d082bcc0" , "items" : [{ "eventId" : "5d96453460309f26d082bcc0" , "amount" : "25.00" , "quantity" : 1, "itemType" : "Event" , "personTypeId" : "572a3b7060309f15ea0f3466" }], "verifyEntitlements" : false }], "includesFlexPay" : false , "retryCount" : 0, " organizationId" : 2506, "terminalId" : "1236" , "paymentId" : "VoucherNumber" , "billingZipCode" : "12345" , "saleChannel" : "reseller",
} |
Response
An order object
Sample Order Object
{ "id" : "452966" , "tenantId" : 165, " organizationId" : 2506, "organizationId" : 2506, "email" : "mailbox@email.acme" , "billingEmail" : "mailbox@email.acme" , "contactFirstName" : "John" , "contactLastName" : "Johnson" , "billingFirstName" : "John" , "billingLastName" : "Johnson" , "billingZipCode" : "12345" , "zipCode" : "12345" , "phoneNumber" : "555.555.5555" , "billingPhoneNumber" : "555.555.5555" , "orderNumber" : "100002601" , "discountedTotalAmount" : "25.00" , "totalAmount" : "25.00" , "discountedOriginalTotalAmount" : "25.00" , "originalTotalAmount" : "25.00" , "paidAmount" : "25.00" , "balanceAmount" : "0.00" , "refundAmount" : "0.00" , "saleChannel" : "Reseller" , "checkInStatus" : "NotCheckedIn" , "creationDate" : "2019-11-07T14:11:06-05:00" , "paymentDueDate" : "2019-11-07T14:11:06-05:00" , "orderItems" : [ { "parentItemId" : "490687" , "comboTemplateType" : "fixedPrice" , "eventId" : "5d96453460309f26d082bcc0" , "ticketingTypeId" : "572a3b7060309f15ea0f3466" , "eventName" : "History of Magic" , "eventStartTime" : 1571321700000, "ticketingTypeName" : "Student" , "basicOriginalQuantity" : 1, "originalQuantity" : 1, "basicQuantity" : 1, "quantity" : 1, "unitPrice" : "25.00" , "discountedUnitPrice" : "25.00" , "discountedOriginalAmount" : "25.00" , "originalAmount" : "25.00" , "discountedAmount" : "25.00" , "amount" : "25.00" , "balanceAmount" : "0.00" , "itemType" : "Event" , "conversionStatus" : "NoConversion" , "itemId" : "490687" , "displayName" : "Student" } ], "createdOn" : "2019-11-07T14:11:06-05:00" , "createdBy" : "575" , "updatedOn" : "2019-11-07T14:11:06-05:00" , "updatedBy" : "575" , "legacy" : false , "hideEventDate" : false , "paymentId" : "VoucherNumber" , "invoiceAfter" : false , "customerId" : 2911099, "obfuscated" : false , "organizationName" : "Gryffindor House" , "accountName" : "Gryffindor House" } |
OrganizationOrderInput
Field | Type | Description |
organizationContactId | Long | database id of an org contact to be associated with the order |
organizationId | Long | database id of the org (also organizationId in other places) |
externalOrganizationId | String | |
customerId | Long | |
contactFirstName | String | |
contactLastName | String | |
address1 | String | |
address2 | String | |
country | String | |
city | String | |
state | String | |
zipCode | String | |
phoneNumber | String | |
contactEmail | String | |
notes | String | freeform notes to add to the order |
acmeToken | String | ACME internal use |
expDate | String | mmyyyy Required when paying with CC |
manualEntryCardNumber | String | credit card number Required when paying with CC |
cvc | String | credit card verification number |
paymentMethod | PaymentMethodEnum | |
paymentId | String | Required when paying with Check or Voucher |
paymentDocumentDate | String | ACME internal use |
orderExceptionCodeId | String | ACME internal use |
paymentProcessorToken | String | ACME internal use |
paymentProcessorFingerPrint | String | ACME internal use |
ccLastFourDigits | String | credit card last four digits |
creditCardBrand | CreditCardBrandEnum | ACME internal use |
saleChannel | SaleChannelEnum | Required |
invoice | boolean | |
ticketDelivery | TicketDeliveryEnum | equivalent to Ticket Delivery Method option in backoffice. can be one of the following
|
ticketExpireDays | Integer | |
hideTicketEventTime | boolean | |
couponCode | String | |
chargeAmount | Currency | specify a payment amount if the org supports partial payments |
events | list of AccountOrderInputEvent objects | see below |
membership | list of MembershipOrderItemInput objects | see below |
sendEmailToAll | boolean | send email to billing, order, and organization contacts |
noEmail | boolean | no confirmation email |
noMembershipEmail | boolean | false |
billingFirstName | String | |
billingLastName | String | |
billingEmail | String | |
billingPhoneNumber | String | |
billingAddress1 | String | |
billingAddress2` | String | |
billingCountry | String | |
billingCity | String | |
billingZipCode | String | |
billingState | String | |
addons | list of AccountOrderItemInput objects | use for discrete addons (event addons should go with event items) |
orderRequestId | String | ACME internal use |
reservationId | Long | resolve a reservation if used |
OrganizationOrderInputEvent
Field | Type | Description |
eventId | String | Required |
externalReferenceId | String | ACME internal use |
ticketExpireDays | Integer | equivalent to Ticket Expiration option in backoffice |
hideTicketEventTime | boolean | equivalent to Hide Event Date/Time option in backoffice Required |
items | list of organizationOrderItemInput objects | Required. see below |
AccountOrderItemInput
Field | Type | Description |
itemType | OrderItemTypeEnum | Required. One of the following
|
inventoryId | Long | Required if AddOn |
personTypeId | String | Required if Event |
quantity | int | Required |
addonDetailId | String | |
amount | Currency |
MembershipOrderItemInput
Field | Type | Description |
itemType | OrderItemTypeEnum | |
membershipInfo | MembershipInfo object | see membership docs |