(feat) transactions

This commit is contained in:
Rorik Star Platinum 2025-11-07 19:08:13 +03:00
parent 35adb141ab
commit 779ae4d498
8 changed files with 214 additions and 5 deletions

96
test_multiberry.sh Normal file
View file

@ -0,0 +1,96 @@
#!/bin/bash
# Save as test_multiberry.sh
BASE_URL="http://localhost:3000/api"
echo "=========================================="
echo "1⃣ REGISTER USER"
echo "=========================================="
REGISTER=$(curl -s -X POST $BASE_URL/auth/register \
-H 'Content-Type: application/json' \
-d '{"bank_user_number": 8, "password": "testpass123"}')
echo "$REGISTER" | jq .
TOKEN=$(echo "$REGISTER" | jq -r '.token')
BANK_USER_ID=$(echo "$REGISTER" | jq -r '.bank_user_id')
echo "✅ Token: ${TOKEN:0:50}..."
echo "✅ Bank User ID: $BANK_USER_ID"
echo ""
echo "=========================================="
echo "2⃣ LOGIN (verify token works)"
echo "=========================================="
LOGIN=$(curl -s -X POST $BASE_URL/auth/login \
-H 'Content-Type: application/json' \
-d "{\"bank_user_id\": \"$BANK_USER_ID\", \"password\": \"testpass123\"}")
echo "$LOGIN" | jq .
echo ""
echo "=========================================="
echo "3⃣ GET ME (verify auth middleware)"
echo "=========================================="
curl -s http://localhost:3000/api/auth/me \
-H "Authorization: Bearer $TOKEN" | jq .
echo ""
echo "=========================================="
echo "4⃣ REQUEST CONSENT from VBank"
echo "=========================================="
CONSENT=$(curl -s -X POST $BASE_URL/consent/vbank/$BANK_USER_ID \
-H "Authorization: Bearer $TOKEN")
echo "$CONSENT" | jq .
CONSENT_ID=$(echo "$CONSENT" | jq -r '.consent_id')
echo "✅ Consent ID: $CONSENT_ID"
echo ""
echo "=========================================="
echo "5⃣ GET ACCOUNTS (auto-saved to DB)"
echo "=========================================="
ACCOUNTS=$(curl -s $BASE_URL/accounts/vbank/$BANK_USER_ID \
-H "Authorization: Bearer $TOKEN")
echo "$ACCOUNTS" | jq .
ACCOUNT_ID=$(echo "$ACCOUNTS" | jq -r '.data.account[0].accountId')
echo "✅ Account ID: $ACCOUNT_ID"
echo ""
echo "=========================================="
echo "6⃣ GET BALANCES"
echo "=========================================="
curl -s $BASE_URL/balances/vbank/$BANK_USER_ID \
-H "Authorization: Bearer $TOKEN" | jq .
echo ""
echo "=========================================="
echo "7⃣ GET TRANSACTIONS (page 1, limit 6)"
echo "=========================================="
curl -s "$BASE_URL/transactions/vbank/$BANK_USER_ID/$ACCOUNT_ID?page=1&limit=6" \
-H "Authorization: Bearer $TOKEN" | jq .
echo ""
echo "=========================================="
echo "8⃣ GET TRANSACTIONS (page 2, limit 6)"
echo "=========================================="
curl -s "$BASE_URL/transactions/vbank/$BANK_USER_ID/$ACCOUNT_ID?page=2&limit=6" \
-H "Authorization: Bearer $TOKEN" | jq .
echo ""
echo "=========================================="
echo "9⃣ DELETE CONSENT"
echo "=========================================="
curl -s -X DELETE $BASE_URL/consent/vbank/$BANK_USER_ID \
-H "Authorization: Bearer $TOKEN" | jq .
echo ""
echo "=========================================="
echo "🔟 VERIFY DB (from another terminal)"
echo "=========================================="
echo "just psql-exec"
echo "SELECT * FROM users;"
echo "SELECT * FROM user_consents;"
echo "SELECT * FROM accounts;"
echo "SELECT * FROM transactions;"