Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
Math The Almighty Buck The Internet Transportation

Decimal Point Error Causes Etsy To Massively Overcharge For Shipping Labels (pcmag.com) 43

A decimal point error at e-commerce site Etsy briefly caused the company to overcharge for shipping labels by thousands of dollars. PCMag reports: Etsy sellers took to social media on Monday to notify the company about the problem. Apparently, the e-commerce site's accounting system failed to notice the decimal point when charging for the total cost for shipping labels. As a result, one merchant who thought they were paying $11.64 for postage ended up being billed $1,164. In other cases, the glitch caused Etsy to accidentally empty bank accounts.

"I just lost $11k. Emptied my Etsy account, drained my bank account, maxxed out my overdraft protection, and maxxed out my credit card.... all for what should have been $110 in labels," tweeted one seller. "Do not ship through Etsy," wrote another seller. "Right now they are charging you $350 for $3.50 shipping labels, their system is fucking up a decimal." The glitch also caused many merchants to stop sending out packages with labels printed from Etsy, which has over 2.8 million active sellers. Fortunately, the company began fixing the problem last night.
"This issue has now been resolved and we have credited impacted sellers for the incorrect fees," the company said in a customer support ticket. "Accurate charges are now reflected in affected sellers' payment accounts. For the small group of sellers that were autobilled, we have refunded any resulting card charges."
This discussion has been archived. No new comments can be posted.

Decimal Point Error Causes Etsy To Massively Overcharge For Shipping Labels

Comments Filter:
  • by TigerPlish ( 174064 ) on Tuesday July 28, 2020 @07:22PM (#60341039)

    *takes finger off mouse button*

    Was just about to get this, oh well. https://www.etsy.com/listing/6... [etsy.com]

  • by TheReaperD ( 937405 ) on Tuesday July 28, 2020 @07:33PM (#60341075)

    Ok, what about the other charges? Overdraft fees, credit fees, interest fees and loss of credit value? Are they going to cover those?

    • Probably they are well covered by their terms of service. I guess someone would have to sue them to get their other charges covered as well. On the other hand, the amounts may be so small that it may not be worth the effort. Hopefully they will do the right thing and just pay whoever can justify additional charges.

    • Ok, what about the other charges? Overdraft fees, credit fees, interest fees and loss of credit value? Are they going to cover those?

      Lol good one. I mean, uh, probably not.

      • Lol good one. I mean, uh, probably not.

        Being an American company they probably will. It's cheaper than the impending lawsuit.

  • by Solandri ( 704621 ) on Tuesday July 28, 2020 @07:35PM (#60341089)
    I use accounts at two banks to pay bills (one personal, one business). If I have a bill for $123.45, the bill pay system at one bank requires me to type in 123.45. The bill pay system at the other bank requires me to type in 12345 (no decimal point - it ignores them if I type them).

    The problem occurs when there's zero cents. If the bill is for $123.00, at the first bank I type in 123. But at the second bank I have to type in 12300. If I type 123, it pays $1.23.

    On numerous occasions I've caught myself typing 12300 into the first bank and almost paying 100x more than I intended. And on several occasions I've typed in 123 at the second bank, shorting my payment and incurring late fees. The banking industry really needs to standardize this, one way or the other.
    • A good programmer should be able to get both banks to accept the same type of number. Secondly, there should be an error message whenever the package costs 100x or 1% its value yesterday. Shipping prices don't move that fast...

    • I would consider that too great a risk and move the account from the bank that doesn't have a clue about decimal points (and tell them the reason why they are losing your custom).

    • Could you type in 123.45 at both banks?

      What's worse is when it wants you to put your credit card number into 4 separate boxes and after you type in the first 4 digits, it helpfully advances to the next box and so on. So if you use tab on the keyboard to advance, it skips a box and you have to go back.

      And then there was the one where I mistyped a digit, so I did a shift-tab to go to the previous field, but because that field was already full, it advanced back to the next field.

    • by west ( 39918 )

      The banking industry really needs to standardize this, one way or the other.

      On the contrary. It is *so* important to get the amount right, one standard is not enough. We need at least two. And perhaps, just to be safe, three.

    • What I love are those forms which will helpfully 'sanitize' copy and pasted input by removing the decimal point and leaving in everything after it.

  • by nospam007 ( 722110 ) * on Tuesday July 28, 2020 @07:49PM (#60341157)

    Such things make them unique.

  • Etsy programmers: "Unit tests? What are those?"

    • This is probably the sort of thing a unit test isn't going to catch, because the problem probably wasn't within a unit, but the result of mismatched expectations at unit boundaries, ie the sort of thing an integration test might defend against.

      I work in ecommerce and this sort of thing is nightmare fodder. We routinely deal with different interfaces that want currency amounts in different ways (ie decimal or minor unit) and there pretty much isn't an answer to the problem other than having attention to de
      • What are the odds that Etsy doesn't have *any* unit tests at all? Or at least, very few tests? Unfortunately, the odds are surprisingly high. There is a large percentage of professional developers who, according to surveys, simply do not write unit tests at all to ensure their code's robustness.

        Everyone has a reason as to why their code can't be properly tested. But I suspect the root cause is typically that it wasn't properly designed with robust testing in mind. Like, some critical code relies on a r

        • by Jerk2 ( 1153835 )
          The sloppiness of programmers, QA and system analysis in IT systems is at an all time low.
          They are lazy, quick to claim to "solved the problem" without any testing.
          Just look a the likeslikes of Interactive Brokers and Merrill brokers. Merrill morons are still sending me emails of the ex-dividend dates the day AFTER the ex-dividend for stocks that have not been in the account for 4 years and have been CLOSED for 3 years. IB has fields to enter the limit price that can't contain a two digit character and
          • >The sloppiness of programmers, QA and system analysis in IT systems is at an all time low.

            I see YOU don't check what you write either!

            • by Jerk2 ( 1153835 )
              Not exactly sure what your issue is , but brokers are managing trillions of dollars that affect millions of people. My little comment really doesn't impact anyone in any signficant way.
              A sense of perspective might be appropriate.
              • by Briareos ( 21163 )

                If sloppiness really were at an all-time low - like you wrote - we'd be living in the golden age of perfect code.

                I'm pretty sure you meant to say that "sloppiness is at an all-time high"...

        • But you either take the time to write and maintain those tests, or you get egg on your face like Etsy just did.

          My point is that is very easy to create (incorrect) tests that don't successfully defend against this type of issue. If a number is valid but has different (but still valid) real world meaning between two different components unless you have correctly identified that mismatch in meaning then your test isn't going to defend against it. (Of course, once the mistake is evident, it is easy to updat

    • You're giving them too much credit.

  • by alexhs ( 877055 ) on Tuesday July 28, 2020 @07:52PM (#60341169) Homepage Journal

    I must have put a decimal point in the wrong place or something. I always do that. I always mess up some mundane detail.

  • Implied Decimal [3480-3590-...ersion.com]

    Implied decimal simply means there is a decimal point implied at a specified location in a field, but not actually stored in the file. The location of the implied decimal is indicated by a "V" in the PIC. Using implied decimal saves space in the file. Implied decimal can apply to any kind of numeric field, including a packed, or comp-3 field.

    For example,

    05 ACCOUNT-BALANCE PIC 9(6)V99.

    is an implied decimal field. There are 6 digits, then an implied decimal - the V - and 2 more digits, for a total of 8 digits. The field is 8 bytes in size; there is no "." in the file -- the location of the decimal point is implied to be between the 9(6) and the 99. If the field contains "00000123" then the account balance is $1.23, because there is a decimal implied between the dollars and cents.

    • Etsy didn't exist prior to 2005. Their systems are probably Javascript built on Nodes and held together by Rust. You tell them about COBOL you'll probably get an answer "Isn't Tesla working on not using that in their batteries anymore?"

  • Tuttle? Anybody have a Form 27B/6?

  • Wanna bet that Javascript was involved at some point? Maybe with some unexpected localization issues? (Javascript has no sane support for localization)
  • "I must have put a decimal point in the wrong place or something. Shit! I always do that. I always mess up some mundane detail."

    - Michael Bolton (Office Space)
  • I'd recommend threatening to sue them for any incurred bank fees if they wiped out your bank account. Their ToS would be obliterated in court and they know it and they also know it's cheaper to just pay you than to fly a lawyer out to appear in small claims court in your city.
  • That's what you get using that commie decimal system, they should have stayed with the fractional one.

What is wanted is not the will to believe, but the will to find out, which is the exact opposite. -- Bertrand Russell, "Skeptical Essays", 1928

Working...