Friendly order number

Hi folks,

I wonder if you can help me. When a customer places an order I’d like to give them a friendly order number back as they need to include this in parcels they send to us. Whilst I understand the submission id is unique (i.e. 5f3bfc56a3f62e0270619072 it’s a bit unwieldy to expect people to write this manually on a package - we’d ideally like a 6 digit number i.e. 123456 which is either sequential or the next entry taken is from a long list and it is therefore random, Also if customers call us we’d like them to have an easy order number they can enter in the phone.

Can this be done with paperform? Happy to use submission id internally this is purely for comms with customer and back to us.

I wonder if you could use the calculation field to populate the first six characters of the submission ID.

There’s good and bad news using Calculation for this. I tried the below which crunched postcode and date/time now to create an order number that was pretty unique (not perfect but unlikely to be duplicated).

The problem is that Paperform reruns the calculation on submission page, generating an email and on integration. Which means the date time taken changes every time (and therefore the order number).

This is a really painful element of Paperform and has cost me days (with no easy answer yet).

{{ epom }} is postcode in this instance

(find(lower(mid({{ epom }},1,1)),"-=+&!.,abcdefghijklmnopqrstuvwxyz 1234567890")*find(lower(mid({{ epom }},2,1)),"-=+&!.,abcdefghijklmnopqrstuvwxyz 1234567890")*find(lower(mid({{ epom }},3,1)),"-=+&!.,abcdefghijklmnopqrstuvwxyz 1234567890")*find(lower(mid({{ epom }},4,1)),"-=+&!.,abcdefghijklmnopqrstuvwxyz 1234567890"))+(dateget(now(),“days”)*dateget(now(),“month”))+(dateget(now(),“hour”)*dateget(now(),“minute”)*dateget(now(),“second”))