#!/bin/bash # This file is part of TALER # Copyright (C) 2014-2021 Taler Systems SA # # TALER is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as # published by the Free Software Foundation; either version 3, or # (at your option) any later version. # # TALER is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public # License along with TALER; see the file COPYING. If not, see # # . initialize_taler_system.sh echo -n "Configuring a merchant instance before configuring the default instance ..." STATUS=$(curl -H "Content-Type: application/json" -X POST \ -H 'Authorization: Bearer secret-token:super_secret' \ http://localhost:9966/management/instances \ -d '{"auth":{"method":"external"},"payto_uris":["payto://x-taler-bank/localhost:8082/43","payto://x-taler-bank/localhost:8082/44"],"id":"default","name":"default","address":{},"jurisdiction":{},"default_max_wire_fee":"TESTKUDOS:1", "default_max_deposit_fee":"TESTKUDOS:1","default_wire_fee_amortization":1,"default_wire_transfer_delay":{"d_us" : 50000000},"default_pay_delay":{"d_us": 60000000}}' \ -w "%{http_code}" -s -o /dev/null) if [ "$STATUS" != "204" ] then echo 'should respond ok, instance created. got:' $STATUS exit 1 fi echo " OK" echo -n "Check the instance exists ..." STATUS=$(curl -H "Content-Type: application/json" -X GET \ http://localhost:9966/instances/default/private/ \ -w "%{http_code}" -s -o /dev/null) if [ "$STATUS" != "200" ] then echo 'should respond ok, instance exists. got:' $STATUS exit 1 fi echo " OK" RANDOM_IMG='data:image/png;base64,abcdefg' # # CREATE AN ORDER WITHOUT TOKEN # echo -n "Creating order without TOKEN..." STATUS=$(curl 'http://localhost:9966/instances/default/private/orders' \ -d '{"create_token":false,"order":{"amount":"TESTKUDOS:7","summary":"3","products":[{"description":"desct","image":"'$RANDOM_IMG'","price":"TESTKUDOS:1","taxes":[],"unit":"u","quantity":1}]}}' \ -w "%{http_code}" -s -o $LAST_RESPONSE) if [ "$STATUS" != "200" ] then echo 'should response ok, order created. got:' $STATUS `cat $LAST_RESPONSE` exit 1 fi ORDER_ID=`jq -r .order_id < $LAST_RESPONSE` TOKEN=`jq -r .token < $LAST_RESPONSE` if [ "$TOKEN" != "null" ] then echo 'token should be null, got:' $TOKEN exit 1 fi echo OK echo -n "Checking created order without TOKEN..." STATUS=$(curl http://localhost:9966/orders/$ORDER_ID \ -w "%{http_code}" -s -o $LAST_RESPONSE) PAY_URI=`jq -r .taler_pay_uri < $LAST_RESPONSE` if [ "$PAY_URI" == "null" ] then echo 'should have a payuri. got:' $PAY_URI `cat $LAST_RESPONSE` exit 1 fi echo OK echo -n "Getting information about kyc ..." STATUS=$(curl -H "Content-Type: application/json" -X GET \ http://localhost:9966/instances/default/private/kyc \ -w "%{http_code}" -s -o /dev/null) if [ "$STATUS" != "204" ] then echo 'should respond ok, instance created. got:' $STATUS exit 1 fi echo " OK" exit 0