Shipit — 次世代宅配便
Shipitは旅行者と途中にある小包の送信者を結びつけるモバイルアプリケーションである仲間旅行者のコミュニティです。
Unfortunately, Shipit Token Sale has been cancelled.
All contributions have been refunded. To read more, please, visit our blog

これは、世界中の人々の生活を楽にするネイティブツールとして、スマートコントラクトとブロッキングを使用した最初のアプリケーションです。 ブロックバスターに頼って、プロセスの参加者間の透明性と保護された関係を見たいと思っています。

宅配業者のサービスの価格の上昇に伴い、Shipitは世界中で小包をより安く、より安全に送るチャンスを提供します。 小包を送ることは決して容易ではなく、よりアクセスしやすくなりました。

ホワイトペーパー
download pdf file, 11.7 mb
What is ShipIt?
Shipitは、ユーザーを検証し、送信プロセスを安全にするすべての小包を調整します。 インタラクティブなインターフェイスは、簡単かつ迅速に送信します。 ユーザーは重要な細部の省略について心配することはできません。
送信者の場合
  1. 注文する
  2. 旅行者とのミーティングを計画する
  3. トラッカーでパッケージを追跡する
  4. 配達について学ぶ
  5. 送料の支払い
旅行者用
  1. アプリケーションを選択する
  2. 送信者との会議を計画する
  3. リアルタイムで送信者と通信する
  4. パッケージを提供する
  5. 報酬を得る
宅配業者の市場と小口宅配の問題
  • あまりにも高価な送信
  • 締め切り期限
  • 損害の可能性と小包の損失
なぜパッケージを送るのはとても高価なのですか?
広範な営業経費。 運送会社や宅配会社は何千もの機器や人員を維持しなければならない。
タイトル 世界市場のシェア, % 従業員数 航空輸送(所有および賃貸)単位 自動車輸送(所有および賃貸)、単位。
DHL 38% 508 000 188 76 000
Fedex Corp 24% 400 000 657 58 000
UPS 22% 268 000 657 86 000
TNT 5% 56 000 56 30 000
Other 11%
事実:"モスクワからニューヨークへの紙文書のパッケージを200ドル以上支払わなければならない。同時に、これらの文書の価格は20ドルを超えないだろう"
なぜ納期は遅れるのですか?
Transit hubsDelivery services often cannot ship a parcel directly from one point to another.
BureaucracyParcels are often processed by customs and postal systems.
IntermediariesCourier and delivery companies are sometimes forced to rely on third party services.
15%
实例: “根据Mintel公司计算,快递服务的15%英国客户遇到过逾期和长时间等待包裹派送的问题”。
小包が紛失または破損するのはなぜですか?
TheftCustoms, courier and postal services' employees steal shipments.
Absence of personal responsibility Customs, courier and postal services' employees treat shipments irresponsibly and with negligence.
10/100
实例: “根据Mintel公司的计算,100个快递服务的英国客户有10个遇到过包裹丢失或者损坏”。
経済と群集の輸送を分かち合う未来
"「共同消費の経済は、今後10年間に世界を変える10のアイデアの1つであり、商品やサービスの消費に革命をもたらさなければならない新しい社会経済モデル」"
タイムマガジン
いくつかのカテゴリーでは、すでにAirbnbの旅行や、ZipCarのカーシェアリングでは大手の指導者がいますが、群集の輸送部門では市場が形成され始めています。 毎年、業界を分担する経済を発展させている新興企業はますます資金を調達しています。
Year 2007 2010 2013 2016
投資を受けた企業の数 40 85 271 420
総投資、億ドル 0,04 0,13 1,74 23,4
企業の収入、億ドル 2 5,5 15 41
経済を共有する理由
55% 人口の の都市化
63% のインターネット普及率
48% スマートフォンの普及率
12% 中産階級の の増加
Buy tokens
テクノロジー
  • スマート契約ブロック
  • 暗号ワイヤ
  • 預金
  • ファクタリング
  • メール転送
スマートコントラクトは、システムのユーザを結び付け、仕事をより責任あるものにするでしょう。 ユーザー活動の全履歴は封鎖されて記録され、今後変更されることはありません。
仕組み 結果
プロフィール ブロックすると、ユーザーの履歴が透明になります。 ユーザーの行動がより責任を持つようになります。
オートメーション スマートコントラクトは、プロセスを自動化し、セキュリティで保護します。 データのエラーや改ざんは排除されます。
セキュリティ ユーザーのすべての個人データはハッシュに書き込まれます。 ユーザーのハッシュが削除されても、それを識別することはできません。
既存の財務支払い方法は、一定の障壁を生み出し、アプリケーションのスケーリングを防止します。 いくつかの州の構造物は、アプリケーションが異なる国の住民との支払いを可能にするために、長くて高価で官僚的な手続きを余儀なくされている。 したがって、財布の作成と独自の暗号通貨がこの問題の最良の解決策です。
仕組み 結果
プロフィール ブロックすると、ユーザーの履歴が透明になります。 ユーザーの行動がより責任を持つようになります。
オートメーション スマートコントラクトは、プロセスを自動化し、セキュリティで保護します。 データのエラーや改ざんは排除されま
セキュリティ ユーザーのすべての個人データはハッシュに書き込まれます。 ユーザーのハッシュが削除されても、それを識別することはできません。
預金の導入は、盗難、損失、損害からの送付者の発送を保証することができます。 これは、送信者と旅行者の立場から見た正当な解決策です。 送付者は、不可抗力の場合、適切な報酬を受け取ることを理解しており、違法行為の場合、預金を受け取らず、システムから獲得することができず、システムから除外することができると理解しています。
送信者の場合 預金は、盗難、紛失、損害から送付者の小包を保証することができます。
对于旅行者而言 違法行為の場合、旅行者は保証金を受領しません。 彼らはお金を稼ぐことができず、システムから除外することができます。
ファクタリングは、手荷物の紛失や損害を確実に防ぐために旅行者が支払わなければならない荷物の金銭的価値をカバーするという問題を解決します。 Shipitは、旅行者が自分のリスクを保証するために入金を行います。 旅行者は、サービスをファクタリングするためにのみ支払う。
メール転送 - 仲介業者が海外に商品を購入し、続いて顧客に荷物を送る。 外国のオンラインストアとオフラインストアは、あなたの国のものと異なる場合があります。 価格は低くてもよく、その範囲ははるかに広い。 多くの外国ブランドは、すべてで表現されていないかもしれません。 したがって、あなたはメール転送サービスの助けを借りて、希望の商品を購入することができます。
仕組み:
  1. 顧客は、希望する製品の詳細な説明とともにShipitで注文を作成します。
  2. Shipitはあなたの地域に飛ぶ旅行者を見つけます。
  3. 顧客は預金と旅行者に報酬を寄付する。
  4. 旅行者は商品を購入し、顧客の地域に行く。
  5. 旅行者は商品を顧客に移転する。
  6. Shipitは、商品のためのお金と旅行者への報酬を転送します。
  7. Shipitは手数料を受け取る。
Shipitからのメール転送の利点:
  • 送料は1.5〜3倍低くなります。
  • 世界中のあらゆる商品を購入する能力。
  • あなたのエリアではアクセスできない排他的アクセス。
  • 通常の配送よりも配送速度が速い。
  • 最高レベルのサービス品質と安全性。

セキュリティ

Shipit開発チームは、国際輸送に関連するコンポーネントとプロセスを最適化するために数十時間を費やしました。 このアプリケーションの目的は、荷物を送るための簡単で安全な、迅速で信頼性の高い方法と輸送上の収入の可能性を提供することです。 開発の特別な強調は、ユーザーのセキュリティ問題に集中しました。 私たちは、Shipitを通じて実行されたすべての活動が輸送ルールに違反していないことを確認し、輸送された物品は、必要な国際基準に準拠している必要があります。

ホワイトペーパー

主な特徴

Join now
メリット
旅行者にあなたのパッケージを配達させる
  • Courier services
  • Crowd services
  • Crowdshipping services
  • Crowdsourced logistics
DHL Fedex UPS USPS
価格 $60 $261 $163-$220 $166-$224 $90
納期 5日以内 1-3営業日 5-7営業日 7営業日 21営業日
信頼性と利便性
  • 信頼できる信頼できる通信事業者。
  • 内蔵のチャット、レビューとレビュー、預金とコードセキュリティシステム。
  • 小包は税関で遅れることがあります。
  • ユーザーからユーザーへの国際出荷はありません(P2P)。
  • 小包の種類には制限があります。
  • 小包は税関で遅れることがあります。
  • ユーザーからユーザーへの国際出荷はありません(P2P)。
  • 小包の種類には制限があります。
  • 小包は税関で遅れることがあります。
  • ユーザーからユーザーへの国際出荷はありません(P2P)。
  • 小包の種類には制限があります。
  • ボーダーのリサンプリング後に小包を追跡することができない場合があります。
  • 小包は、税関や郵便局で紛失、破損、盗難されます。
Uber BlaBlaCar Gett Delivery
群集出荷 はい オプション オプション はい
輸送機会 車 オートバイ 列車 飛行機
平均配送距離の制限 500 km 以上 500 km 未満 500 km 未満 500 km 未満
ブロックルームのユーザープロファイル はい いいえ いいえ いいえ
貴重品の預託および保険制度(オプション) はい いいえ いいえ いいえ
PiggyBee AirMule Hitchit
安全な支払い
キャリアの人格の検証
送信者の身元の確認
インタラクティブマップ
コードセキュリティシステム
メール転送
モバイルアプリ
暗号通貨による支払い
デタッチメントのレビュー
モデレーターによる小包の事前検証
スマート契約
Crowdsource Logistics
Courier Logistics
Less Trust
More Trust
今日Shipitを愛する3つの理由
スーパーコミュニティ 私たちはお互いをサポートし、私たちのプラットフォームの参加者が提供するサービスの質を監視します。 すべてのユーザーは、手荷物を提供しているユーザーを確認するために確認されます。
便利に 資源共有と経済共生のモデルは、その関連性、人気、有効性を証明しています。 近い将来、Shipitはすべてのスマートフォンでおなじみのアプリケーションになります。 新しいストーリーの一部になります。
効果的かつ経済的 これまでのところ、あなたはいつでも仲間の旅行者や旅行者を探して、荷物を配達するのを手伝ってくれるでしょう。 世界各地で数千マイルの荷物を簡単に送ることができ、輸送費を節約できます。
Join Our Telegram
Token Distribution
  • 75%Token Sale
  • 15%Team
  • 5%Partners and advisors
  • 5%Bounty campaign
Token Sale Funds Allocation
  • 37%Development, product
    improvement and technical perfecting
  • 55%Marketing and advertising
  • 5%Legal
  • 3%Other
Smart contract
                    
pragma solidity ^0.4.19;
/**
* @title ERC20Basic
* @dev Simpler version of ERC20 interface
* @dev see https://github.com/ethereum/EIPs/issues/179
*/
contract ERC20Basic {
    function totalSupply() public view returns (uint256);
    function balanceOf(address who) public view returns (uint256);
    function transfer(address to, uint256 value) public returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
}
/**
* @title ERC20 interface
* @dev see https://github.com/ethereum/EIPs/issues/20
*/
contract ERC20 is ERC20Basic {
    function allowance(address owner, address spender) public view returns (uint256);
    function transferFrom(address from, address to, uint256 value) public returns (bool);
    function approve(address spender, uint256 value) public returns (bool);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}
/**
* @title SafeMath
* @dev Math operations with safety checks that throw on error
*/
library SafeMath {
    /**
    * @dev Multiplies two numbers, throws on overflow.
    */
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        assert(c / a == b);
        return c;
    }
    /**
    * @dev Integer division of two numbers, truncating the quotient.
    */
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        // assert(b > 0); // Solidity automatically throws when dividing by 0
        // uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold
        return a / b;
    }
    /**
    * @dev Subtracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
    */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        assert(b <= a);
        return a - b;
    }
    /**
    * @dev Adds two numbers, throws on overflow.
    */
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        assert(c >= a);
        return c;
    }
}
/**
* @title Basic token
* @dev Basic version of StandardToken, with no allowances.
*/
contract BasicToken is ERC20Basic {
    using SafeMath for uint256;
    mapping(address => uint256) balances;
    uint256 totalSupply_;
    /**
    * @dev total number of tokens in existence
    */
    function totalSupply() public view returns (uint256) {
        return totalSupply_;
    }
    /**
    * @dev transfer token for a specified address
    * @param _to The address to transfer to.
    * @param _value The amount to be transferred.
    */
    function transfer(address _to, uint256 _value) public returns (bool) {
        require(_to != address(0));
        require(_value <= balances[msg.sender]);
        balances[msg.sender] = balances[msg.sender].sub(_value);
        balances[_to] = balances[_to].add(_value);
        emit Transfer(msg.sender, _to, _value);
        return true;
    }
    /**
    * @dev Gets the balance of the specified address.
    * @param _owner The address to query the the balance of.
    * @return An uint256 representing the amount owned by the passed address.
    */
    function balanceOf(address _owner) public view returns (uint256 balance) {
        return balances[_owner];
    }
}
/**
* @title Standard ERC20 token
*
* @dev Implementation of the basic standard token.
* @dev https://github.com/ethereum/EIPs/issues/20
* @dev Based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol
*/
contract StandardToken is ERC20BasicToken {
    mapping (address => mapping (address => uint256)) internal allowed;
    /**
    * @dev Transfer tokens from one address to another
    * @param _from address The address which you want to send tokens from
    * @param _to address The address which you want to transfer to
    * @param _value uint256 the amount of tokens to be transferred
    */
    function transferFrom(address _from, address _to, uint256 _value) public returns (bool) {
        require(_to != address(0));
        require(_value <= balances[_from]);
        require(_value <= allowed[_from]‌[msg.sender]);
        balances[_from] = balances[_from].sub(_value);
        balances[_to] = balances[_to].add(_value);
        allowed[_from]‌[msg.sender] = allowed[_from]‌[msg.sender].sub(_value);
        emit Transfer(_from, _to, _value);
        return true;
    }
    /**
    * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.
    *
    * Beware that changing an allowance with this method brings the risk that someone may use both the old
    * and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this
    * race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:
    * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
    * @param _spender The address which will spend the funds.
    * @param _value The amount of tokens to be spent.
    */
    function approve(address _spender, uint256 _value) public returns (bool) {
        allowed[msg.sender]‌[_spender] = _value;
        emit Approval(msg.sender, _spender, _value);
        return true;
    }
    /**
    * @dev Function to check the amount of tokens that an owner allowed to a spender.
    * @param _owner address The address which owns the funds.
    * @param _spender address The address which will spend the funds.
    * @return A uint256 specifying the amount of tokens still available for the spender.
    */
    function allowance(address _owner, address _spender) public view returns (uint256) {
        return allowed[_owner]‌[_spender];
    }
    /**
    * @dev Increase the amount of tokens that an owner allowed to a spender.
    *
    * approve should be called when allowed[_spender] == 0. To increment
    * allowed value is better to use this function to avoid 2 calls (and wait until
    * the first transaction is mined)
    * From MonolithDAO Token.sol
    * @param _spender The address which will spend the funds.
    * @param _addedValue The amount of tokens to increase the allowance by.
    */
    function increaseApproval(address _spender, uint _addedValue) public returns (bool) {
        allowed[msg.sender]‌[_spender] = allowed[msg.sender]‌[_spender].add(_addedValue);
        emit Approval(msg.sender, _spender, allowed[msg.sender]‌[_spender]);
        return true;
    }
    /**
    * @dev Decrease the amount of tokens that an owner allowed to a spender.
    *
    * approve should be called when allowed[_spender] == 0. To decrement
    * allowed value is better to use this function to avoid 2 calls (and wait until
    * the first transaction is mined)
    * From MonolithDAO Token.sol
    * @param _spender The address which will spend the funds.
    * @param _subtractedValue The amount of tokens to decrease the allowance by.
    */
    function decreaseApproval(address _spender, uint _subtractedValue) public returns (bool) {
        uint oldValue = allowed[msg.sender]‌[_spender];
        if (_subtractedValue > oldValue) {
            allowed[msg.sender]‌[_spender] = 0;
        } else {
            allowed[msg.sender]‌[_spender] = oldValue.sub(_subtractedValue);
        }
        emit Approval(msg.sender, _spender, allowed[msg.sender]‌[_spender]);
        return true;
    }
}
/**
* @title Ownable
* @dev The Ownable contract has an owner address, and provides basic authorization control
* functions, this simplifies the implementation of "user permissions".
*/
contract Ownable {
    address public owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    /**
    * @dev The Ownable constructor sets the original `owner` of the contract to the sender
    * account.
    */
    function Ownable() public {
        owner = msg.sender;
    }
    /**
    * @dev Throws if called by any account other than the owner.
    */
    modifier onlyOwner() {
        require(msg.sender == owner);
        _;
    }
    /**
    * @dev Allows the current owner to transfer control of the contract to a newOwner.
    * @param newOwner The address to transfer ownership to.
    */
    function transferOwnership(address newOwner) public onlyOwner {
        require(newOwner != address(0));
        emit OwnershipTransferred(owner, newOwner);
        owner = newOwner;
    }
}
contract SHPT is OwnableStandardToken  {
    string public constant name = "Shipit Token";
    string public constant symbol = "SHPT";
    uint8 public constant decimals = 8;
    uint256 public constant INITIAL_SUPPLY = (500 * (10**6)) * (10 ** uint256(decimals));
    constructor() public {
        totalSupply_ = INITIAL_SUPPLY;
        balances[this] = INITIAL_SUPPLY;
        emit Transfer(address(0), this, INITIAL_SUPPLY);
    }
    //отправка токенов, с адреса контракта
    function send(address to, uint amount) public onlyOwner {
        require(to != address(0));
        require(amount > 0);
        // SafeMath.sub will throw if there is not enough balance.
        balances[this] = balances[this].sub(amount);
        balances[to] = balances[to].add(amount);
        emit Transfer(this, to, amount);
    }
    //эмиссия токенов и перевод на указанный адрес
    function mint(address to, uint amount) public onlyOwner {
        require(to != address(0));
        require(amount > 0);
        totalSupply_ = totalSupply_.add(amount);
        balances[to] = balances[to].add(amount);
        emit Transfer(address(0), to, amount);
    }
    //сожжение токенов с указанного адреса
    function burn(address from, uint amount) public onlyOwner {
        require(from != address(0));
        require(amount > 0);
        // SafeMath.sub will throw if there is not enough balance.
        totalSupply_ = totalSupply_.sub(amount);
        balances[from] = balances[from].sub(amount);
        emit Transfer(from, address(0), amount);
    }
    function() public payable {}
    //отправка эфира
    function sendEther(address to, uint amount) public onlyOwner {
        require(to != address(0));
        require(amount > 0);
        to.transfer(amount);
    }
}

Shipitは、迅速な配達の将来に向けた一歩です。
トークン販売に参加する!

55% 割引
Join now