# Create cashier session Creates cashier session for customer. Endpoint: POST /public/cashier/session Version: 2.0.0 Security: bearerAuth ## Request fields (application/json): - `customer` (object, required) Customer information - `customer.externalUserId` (string, required) Your defined unique identifier for this customer. Example: "123456789" - `customer.firstName` (string, required) Customer first name Example: "John" - `customer.lastName` (string, required) Customer last name Example: "Doe" - `customer.email` (string, required) Customer email Example: "john.doe@example.com" - `customer.phoneNumber` (string, required) Customer phone number Example: "1 1234567890" - `customer.dateOfBirth` (string, required) Customer date of birth Example: "1990-12-01" - `customer.billing` (object, required) Customer billing information - `customer.billing.address` (string, required) Customer billing address Example: "123 Main St" - `customer.billing.city` (string, required) Customer billing city Example: "Atlanta" - `customer.billing.state` (string, required) Customer billing state Example: "GA" - `customer.billing.countryCode` (string, required) Customer billing country code (ISO 3166-1 alpha-2) Example: "US" - `customer.billing.postalCode` (string, required) Customer billing postal code Example: "30308" - `customer.kyc` (object) Customer KYC information - `customer.kyc.idType` (string) - `customer.kyc.idNumber` (string) - `customer.kyc.idCountry` (string) - `customer.kyc.idExpirationDate` (string) - `customer.kyc.nationality` (string) - `customer.kyc.countryOfBirth` (string) - `returnUrls` (object, required) Return URLs after transaction is finished. - `returnUrls.success` (string, required) Url where user will be redirected after successful transaction. Example: "https://example.com/success" - `returnUrls.failure` (string, required) Url where user will be redirected after failed transaction. Example: "https://example.com/failure" - `currency` (string, required) Currency for the cashier session, in which all payin/payout transaction will be created Example: "USD" - `kycVerified` (boolean, required) Whether or not this customer is KYC verified in your system. - `previousTransactionCount` (integer, required) Number of previous transactions in different payment system. - `balance` (number) Current balance of the customer. Balance will be shown on withdrawal widget. Example: 100 ## Response 200 fields (application/json): - `sessionId` (string, required) Session ID Example: "944732c4608c441aa91379478b91f76e" - `checkoutUrl` (string, required) Checkout URL Example: "https://checkout.omno.com/payments/cashier/" ## Response 400 fields (application/json): - `errorKey` (string) - `errorMessage` (string) - `errorCode` (integer) ## Response 401 fields (application/json): - `errorKey` (string) - `errorMessage` (string) - `errorCode` (integer) ## Response 403 fields (application/json): - `errorKey` (string) - `errorMessage` (string) - `errorCode` (integer) ## Response 404 fields (application/json): - `errorKey` (string) - `errorMessage` (string) - `errorCode` (integer) ## Response 409 fields (application/json): - `errorKey` (string) - `errorMessage` (string) - `errorCode` (integer) ## Response 500 fields (application/json): - `errorKey` (string) - `errorMessage` (string) - `errorCode` (integer)