Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
These models are part of Create a transaction request and response:
This model represents the URL of the invoice, the invoice will be presented to the consumer before the payment processing.
This model referenced in "invoice" field of #creating-new-transaction request body.
field | type | description |
---|---|---|
This model represent the full details about the items in the ticket including sub-products.
This model referenced in "products" field of #creating-new-transaction request body
field | type | description |
---|---|---|
This model represents all the required data for receipt handlind once the transaction is approved.
There are 3 possible options available for the POS/E-Commerce platform:
Sensepass generate the receipt using the #receipt-info-entity model, the receipt will be presented to the consumer and to saved in SensePass Merchant dashboard
POS generates the receipt and will send it to SensePass on transaction approved, the receipt will be presented to the consumer and to saved in SensePass Merchant dashboard
No receipt handling is required
Multiple options can be selected in the same location and merchant, these options are in the transaction level.
This model is referenced in "receipt" field of #creating-new-transaction request body
field | type | description |
---|---|---|
Receipt info model is referenced in "receiptInfo" field of #receipt-entity
field | type | description |
---|---|---|
This model represents the recipients that will receive receipt by email and SMS.
Receipt notifications model is referenced in "receiptNotifications" field of #creating-a-new-transaction-object-payment-request request body
This model represents settlement data from the proccessor and SensePass, the entity contains all the required data for accounting reports.
This model is referenced in "confirmations" field of response body.
Note: Multiple confirmations objects can be related to one transaction, for example after a refund or in a split payment scenario.
field | type | description |
---|
field | type | description |
---|---|---|
type
string
File extension name [ pdf, jpg, png ]
url
string
example: http://someDomain.com/invoice1.pdf
name
string
example: Coca-Colla
Name of the product
quantity
number
example: 100
Quantity of products
amount
number
example: 3499
Amount/Cost of a single product
discount
number
example: 3499
Discount amount of a signle product
vat
number
example: 100
VAT (Value Added Tax) / Tax, not percentage-based, of a signle product
posIdentifier
string
example: 1234A
POS Identifier for this product
itemNumber
number
example: 0
Receipt ID - Required for receipt generation
productUrl
string
example: https://your-store.com/products/1234
Product URL
productImageUrl
string
example: https://your-store.com/products/images/main.png
Product Image URL
subProducts
objects
Same as Product Entity: #product-entity
mode
number
1 (GenerateReceipt)
= generates a receipt using the given configuration.
2 (POSProvidesReceipt)
= pos is responsible to send the receipts to the provided endpoint after the transation/'s creation.
3 (NoReceipt)
= does not generate any receipt.
null/undefined
= a null/undefined value will default the receipt configuration from its branch definition.
accountingProvider
number
accounting service provider for the receipts to be processed, required if mode is "1" (GenerateReceipt), "2" (POSProvidesReceipt) or a null value.
1 (Rivhit)
2 (ICount)
3 (QuickBook)
4 (SensePass)
5 (Priority)
receiptInfo
object
See receipt info object entity: #receipt-info-entity
customerId
string
example: 123456789
firstName
string
example: John
lastName
string
example: Doe
address
string
example: 144 Begin Dw
city
string
example: Tel Aviv
zipCode
string
example: 90745
socialID
string
example: 123456789
phoneNumber
string
example: 2124567890
languageCode
string
[ he, en, ru ]
currencyCode
string
[ ILS, USD, EUR, RUB ]
string
example: john@doe.com
discount
number
example: 0
vat
boolean
example: true
array
example:
sms
array
example:
confirmationNumber | string | example: 063-d9j09YsY1 Reference ID of the settlement |
dateApproval | date | example: 2019-12-19T09:47:59.105Z Settlement Date |
paymentMethodName | string | example: PayPal Payment Provider Name |
approvedBy | string | example: PayPal Payment Acquirer |
providerId | string | example: uGfNuwEGiP18SUnTUEo1/atTdesDnhDhZ/8i7G9NAEg= Payment Provider ID |
requestID | string | example: a4dbf66e-d3f1-4a29-baf7-2591424a9a0c Provider's Request ID |
referenceNumber | string | example: 1778298289 Provider's Payment Reference Number |
authNumber | string | example: 123213dsf13111 Provider's Payment Authorization Number (For credit cards only) |
acquirer | string | example: Visa Provider's Payment Acquirer (For credit cards only) |
voucher | string | example: AX09421 Provider's Payment Voucher (For credit cards only) |
lastFourDigits | string | example: 8858 Credit Card Last 4 Digits (For credit cards only) |
cardExpiration | string | example: 01/26 MM/YY Credit card expiration date (For credit cards only) |
installments | number | example: 1 Payment Installments |
sensePassReferenceId | string | example: 34e209ea8b24cc831cf SensePass ReferenceId ID |
settlement | object |
customize credit card texts
This model represents all the required data for customizing the text for the SDK's credit card form field.
Description of the parameters required for various payment options configurations.
Field specific parameters.
This model represents all the required data for displaying data on the SensePass Dashboard backoffice.
You must use this structure:
This model is referenced in "metadata" parameter of #creating-new-transaction request body
This model represents settlement status & final-confrimation value from the proccessor, the entity contains all the required data for accounting reports.
This model is referenced in the "settlement" field of the Confirmation Model object.
Note: One settlement object can be related to each confirmation in a transaction.
Settlements are polled by SensePass, therefore a callback/socket-message will be fired once its asserted as complete (status = 2)
field | type | description |
---|---|---|
This model is referenced in the response of #creating-new-transaction
field | type | description |
---|---|---|
This model represents customer shipping/billing details that the merchant/platform shares with SensePass in order for SensePass to send this information to the payment methods to simplify the payment flows without having the consumer to type this information.
This model is referenced in the "billingAddress" field and "shippingAddress" field of the .
field | type | description |
---|
This model represents subscription method type & its related data for a new transaction creation.
This model is referenced in the "subscription" field of the object.
Note: Subscription will create recurring payments for the transaction sum accornding to its set interval, due date (which increments with each interval) and expiration date (which stops the subscription).
field | type | required | default | example | description |
---|
Payment commit is a mechanisim that allows SensePass to get acknowledgement from the POS or e-commerce website that the settlement event identified and processed by the POS or e-commerce website.
This entity will be included in only for "Approved" status (settlement).
You are required to parse this entity and check whether the flag "isPaymentCommitted" (see below) is "true", in this case call "commitLink" URL with GET method, without any additional headers or query params.
Calling this API will mark the transaction as "Payment Committed".
This model is referenced in "paymentCommit" field of response body
field | type | description |
---|
customize payment method's texts and other UI parameters
This model represents all the required data for displaying data on the SensePass Dashboard backoffice.
You must use this structure:
Description of the parameters required for various payment options configurations.
See
field | type | description |
---|
This model is referenced in "inputs" field of request body
field | type | required | description |
---|
field | type | description |
---|---|---|
field | type | description |
---|---|---|
field | type | description |
---|---|---|
field | type | description |
---|
status
enum
example: 2 1 = approved, 2 = settled Successful state of a settlement polling attempt
confirmation
string
example: 091239831
Final confirmation value from the processor for the transaction
created
date
example: 2019-12-20T09:47:59.105Z
Available on status = 2 (done)
TransactionNumber
string
example: 14a4334a32c852aeb0cfae52cbff1314649da7f175a8e140b35c147c
The transaction number of the new transaction created
date
date
example: 2019-12-19T09:47:59.105Z
Creation date of this transaction entity
amount
string
example: "1234.56"
Amount of this this transaction entity
currency
string
[ USD, CAD, ILS, EUR, RUB ]
status
number
Current transaction Status of this transaction:
* Initialize (0)
- New Transaction
* TapDetected (1)
- At least one user tapped his mobile device
* UserApproved (2)
- A user approved the payment details for this transaction, the transaction not approved yet
* UserDeclined (3)
- A user declined the payment details for this transaction, it's not a final status, waiting for other users to approve
* ProccessingPayment (4)
- SensePass GW proccessing the payment using the providers and waiting for approval
* TransactionApproved (5)
- SensePass GW approved this transaction, confirmation Data will be sent using Web Socket messaging service
* TransactionDeclined (6)
- SensePass GW decline this transaction according to provider decision
* TransactionFailed (7)
- Transaction Failed
* TransactionTimeout (8)
- Transaction Timeout
* TransactionCancel (9)
- Transaction Cancel
* WaitingForTap (10)
- Waiting For Tap
* TransactionRefund (11)
- Transaction Refund
* TransactionProcessingRefund (12)
- Transaction Processing Refund
* TransactionPartiallyRefunded (13)
- Transaction Partially Refunded
* Transaction Setup (14)
- Transaction not ready for Payment (before update)
statusName
string
example: Transaction Approved
Friendly Status Description
pos
string
example: POS 3, Branch Tel Aviv
The terminal name associated for this transaction
posReceiptsEndpoint
string
example: http://pay.sensepass-api.com/api/invoicesReceipts/receipt/save/hofai3478o8o78o4s849j3920ckj
The endpoint for the pos's receipts to be handled by the selected mode in the transaction's creation
posData
objects
Any data (object/array/string/number etc...) received in "posData" field in #creating-new-transaction
businessName
string
example: Coffee Bar
The business name associated for this terminal
businessId
number
example: 144
The business ID associated to this terminal
timeoutDate
date
example: 2019-12-19T09:47:59.105Z Timeout date for this transaction
SMS
string
SMS delivery status, see "clientPhoneNumber" field in #creating-new-transaction
paymentCommit
object
See payment commit object entity: #payment-commit-entity
products
object
See product object entity: #product-entity
productSumMismatch
boolean
Informs if the sum of all products are not equal to the transaction's amount
confirmations
object
See confirmation object entity: #confirmation-model
transactionPage
object
See transaction page entity: #transaction-page-model
confirmation
Deprecated
Deprecated field
paymentMethodData
Deprecated
Deprecated field
subscription
object
see subscription object entity: Subscription Model
parentTransaction
object
parent transaction with method type: Subscription/Authorization/Tokenization. #transaction-model
label
string
label of the field
placeholder
string
placeholder while the field is empty
hint
string | object
hint for the field's use
defaultHint
string
hint to default before user interaction
errors
object
mapping the display-keys of various errors
errors.required
string
required field error message
errors.minlength
string
minimum character length error message
errors.maxlength
string
maximum character length error message
securityCode.hint.amex
string
hint for Amex's 4 digits once the credit card field detects an amex-type-card
securityCode.hint.default
string
hint for every card's 3 digits, that is not detected as Amex
cardNumber.errors.cardTypeLength
object
specific object keys to build an error message to clarify the credit card's length:
expiration.errors.cardExpiration
object
securityCode.errors.securityCodeLength
object
metadata
array
must contain array of key-value pairs
metadata[0].key
string
must be genericDisplay
metadata[0].value
array
must be array or sectionLabel
-values
pairs
metadata[0].value[0].sectionLabel
string
title to display in the SensePass dashboard's transaction information
metadata[0].value[0].values
array
must be array of label
-value
pairs.
example: {"label": "foo", "value": "bar"}
title | string | Customer’s Title |
given_name | string | Customer's given name |
family_name | string | Customer's family name |
string | Customer’s email address |
country | string | Customer’s country |
city | string | Customer’s city |
street_address | string | Customer’s street address |
street_address2 | string | Customer’s street address. Second Line. |
phone | string | Phone number. Preferably a mobile phone number. |
postal_code | string | Customer’s postal code. Validation according to Universal Postal Union addressing systems. |
region | string | Customer’s region or state - Mandatory for US and AU market. Validations according to ISO 3166-2 format, e.g. OH, NJ, etc. |
interval | enum | false | "1month" | "14day", "1month", "1year" | Increment value for the due date of the payment |
dueDate | date | false | null | 2023-01-01T12:00:00Z | Designated date for which a payment attempt be made |
expiration | date | false | null | 2024-01-01T12:00:00Z | Available on status = 2 (done) |
message | string | example: Payment commit is enabled for this transaction Human readable message about the status of the payment commit |
isPaymentCommitted | boolean | example: false Flag indicating whether the commit is performed |
secondsToCommit | number | example: 60 Remaining time in seconds to commit this payment |
commitLink | string | example: https://api.sensepass.com/api/transactions/commitPayment/ec2dc489d161aa27a803f48bcf5ffcf URL of the API to call in GET method in order to mark this transaction as payment committed |
qrURL | string | example: https://pay.sensepass.com/orderSummary/027e4e48d59fdbe83f5a78cab62a53c676b7f111fa9d0ee0a36d1872 SensePass unique Transaction Page - Responsive page for desktop and mobile |
iOSLink | Deprecated | Deprecated |
androidLink | Deprecated | Deprecated |
status | string | settled/voided/expired |
paymentMethod | string | paymentMethod name |
settlementAmount | number | settled transaction amount |
fee | number |
submitDate | date | transaction date |
settlementDate | date | settlement date |
transactionNumber | string | sensepass unique identifier |
pmTransId | string | payment method identifier |
cardType | string |
settlementCurrency | string |
type | string | true | email, shipping_address, first_name, last_name, postal_code, phone, text, boolean |
minimumLength | integer | false | example: 2 |
maximumLength | integer | false | example: 5 |
question | string | true | example: Please input email address |
acceptText | string | false | Relevant for type=boolean, Label of the accept button |
rejectText | string | false | Relevant for type=boolean, Label of the reject button |
creditCard | object | credit card ui-data orientation |
creditCard.animation | enum | options for animating the selected payment method display:w "expand" / "one-line" / "none" |
creditCard.customText | object | credit card's customizable texts |
creditCard.customText.direction | enum | options for the text direction: "ltr" | "rtl". (left-to-right / right-to-left) |
creditCard.customText.fields | object | credit card fields with options to edit their text. keep in mind to handle various languages. |
creditCard.customText.fields[MODEL_FIELD] | model |
field model for editting a credit card form field text .