It is now possible to have a point of sale a2c link on an app ask users for payment directly in the app via the Stripe payment service

Firstly against the company that is in use on the POS link make sure the setting ‘Stripe API Secret Key’ has the customers secret key for stripe set in it otherwise it will error when trying to charge the customer and the order will not be created.

Callback / App URL Format

The app and Callback URL must follow the format specified in the Point of Sale (v2) Blog post make sure to use the updated POS callback url which is as follows:

https://oms.custom-gateway.net/v2/order-it/pos-unbranded/callback-v2/?k=...

otherwise follow the format specified in the previously mentioned blog post.

Stripe Callback parameters

Once you have your base POS callback url setup in order for it to use stripe you need to add on the following parameters:

Parameter Values Default Description Required (Y/N)
payment stripe N/A The payment service for the POS to use Y
stripe_key Alpha numeric string N/A Your Stripe API key Y
stripe_logo https link to a logo image https://stripe.com/img/documentation/checkout/marketplace.png Logo to use at the top of the stripe popup N
statement_descriptor 22 characters, cannot use the special characters <, >, ‘, or “, and must not consist solely of numbers N/A The descriptor to appear on customer’s statements N

These parameters must be encoded in the same way describe in the Point of Sale (v2) Blog post using %26 for ampersands or alternatively a tool such as https://meyerweb.com/eric/tools/dencoder/ can be used to encode the entire URL.

Order details

The stripe POS callback will do its own form to collect the customers details so the option for the app to do it is not required as it will just get overwritten by what stripe sets.

The price used in the stripe popup is the RRP price of the product in CPP and the company name at the top of the stripe popup is the name of the company used within the app link

Process

For understanding of what is going on the process that happens when the stripe POS is used is as Follows:

  1. Order is placed via Personalisation App
  2. Product state details and URL parameters are sent to OMS read and if stripe is set as the payment parameter the app is redirected to a page which loads the stripe Payment popup
  3. Once the stripe details are filled in and the pay button is clicked we charge the card and redirect the process back to the regular V2 Callback so any callback function such as the receipt can be displayed

Demonstration

Here is a demonstration of the Stripe setup using our own testing API details: