コード例 #1
0
def pagarme_notification(request, user_id: int):
    if request.method != 'POST':
        return HttpResponseNotAllowed([request.method])
    try:
        payment_facade.confirm_boleto_payment(
            user_id, request.POST, request.body.decode('utf8'), request.headers['X-Hub-Signature'])
    except PagarmeNotPaidTransaction:
        pass
    else:
        user = user_facade.find_user_by_id(user_id)
        _promote_client_and_remove_tag_boleto(user, request)
    return HttpResponse('')
コード例 #2
0
def subscribe_member_who_paid_boleto(user_id: int,
                                     notification_data: dict,
                                     raw_post: str,
                                     signature: str,
                                     source: str = 'unknow') -> _User:
    try:
        _payment_facade.confirm_membership_boleto_payment(
            user_id, notification_data, raw_post, signature)
    except _PagarmeNotPaidTransaction:
        pass
    else:
        user = _user_facade.find_user_by_id(user_id)
        _user_facade.promote_member(user, source)
        return user