def convertStripeDeclineCode()

in support-models/src/main/scala/com/gu/support/workers/CheckoutFailureReasons.scala [64:107]


  def convertStripeDeclineCode(declineCode: String): Option[CheckoutFailureReason] = condOpt(declineCode) {
    case "approve_with_id" => PaymentMethodTemporarilyDeclined
    case "call_issuer" => PaymentMethodUnacceptable
    case "card_not_supported" => PaymentMethodUnacceptable
    case "card_velocity_exceeded" => PaymentMethodUnacceptable
    case "currency_not_supported" => PaymentMethodUnacceptable
    case "do_not_honor" => PaymentMethodUnacceptable
    case "do_not_try_again" => PaymentMethodUnacceptable
    case "duplicate_transaction" => PaymentRecentlyTaken
    case "expired_card" => PaymentMethodUnacceptable
    case "fraudulent" => PaymentMethodUnacceptable
    case "generic_decline" => PaymentMethodUnacceptable
    case "incorrect_number" => PaymentMethodDetailsIncorrect
    case "incorrect_cvc" => PaymentMethodDetailsIncorrect
    case "incorrect_pin" => PaymentMethodDetailsIncorrect
    case "incorrect_zip" => PaymentMethodDetailsIncorrect
    case "insufficient_funds" => InsufficientFunds
    case "invalid_account" => PaymentMethodUnacceptable
    case "invalid_amount" => PaymentMethodUnacceptable
    case "invalid_cvc" => PaymentMethodDetailsIncorrect
    case "invalid_expiry_year" => PaymentMethodDetailsIncorrect
    case "invalid_number" => PaymentMethodDetailsIncorrect
    case "invalid_pin" => PaymentMethodDetailsIncorrect
    case "issuer_not_available" => PaymentMethodTemporarilyDeclined
    case "lost_card" => PaymentMethodUnacceptable
    case "new_account_information_available" => PaymentMethodUnacceptable
    case "no_action_taken" => PaymentMethodUnacceptable
    case "not_permitted" => PaymentMethodUnacceptable
    case "pickup_card" => PaymentMethodUnacceptable
    case "pin_try_exceeded" => PaymentMethodUnacceptable
    case "processing_error" => PaymentMethodTemporarilyDeclined
    case "reenter_transaction" => PaymentMethodTemporarilyDeclined
    case "restricted_card" => PaymentMethodUnacceptable
    case "revocation_of_all_authorizations" => PaymentMethodUnacceptable
    case "revocation_of_authorization" => PaymentMethodUnacceptable
    case "security_violation" => PaymentMethodUnacceptable
    case "service_not_allowed" => PaymentMethodUnacceptable
    case "stolen_card" => PaymentMethodUnacceptable
    case "stop_payment_order" => PaymentMethodUnacceptable
    case "transaction_not_allowed" => PaymentMethodUnacceptable
    case "try_again_later" => PaymentMethodTemporarilyDeclined
    case "withdrawal_count_limit_exceeded" => PaymentMethodUnacceptable
    case "Stripe payments are currently disabled" => StripePaymentMethodDisabled
  }