Exemplo n.º 1
0
 def test(self):
     p24 = Privat24Integration()
     order = OrderFactory.create(
         sum=452.22,
     )
     order_json = order2json(order)
     order_crypted = encrypt(get_password(), order_json)
     fields = {
         "amt": order.sum,
         "ccy": "UAH",
         "order": order_crypted,
         "details": "something happens",
     }
     p24.add_fields(fields)
     payment = u'amt={amt}&ccy={ccy}&details={details}&ext_details=&pay_way={pay_way}&order={order}&merchant={merchant}&state=test&date=160114183814&ref=test payment&payCountry=UA'.format(**p24.fields)
     signature = p24.build_signature(payment)
     data = {
         'payment': payment,
         'signature': signature,
     }
     session = self.client.session
     session['ORDER_PK'] = order.pk
     session.save()
     resp = self.client.post(reverse('payments-return'), data=data)
     self.assertRedirects(resp, reverse('payments-thank-you'), status_code=302, target_status_code=200)
Exemplo n.º 2
0
def order_preview(request):
    order_id = request.session.get(ORDER_ID, 0)
    template = "check/order_preview.html"
    order = get_object_or_404(Order, pk=order_id)
    order_json = order2json(order)
    order_crypted = encrypt(get_password(), order_json)
    ctx = {"order": order}
    p24 = Privat24Integration(
        {
            "amt": order.sum,
            "ccy": "UAH",
            "order": order_crypted,
            "details": _("Purchases in the store Minishop"),
            "form_class": PaymentForm,
        }
    )
    ctx["integration"] = p24
    return render(request, template, ctx)