"Buy commodity" contract cannot be completed in certain situations

TL;DR completing a “buy” type contract is not possible unless you have a base or warehouse on location.

Setting: player S (seller) has a base on FK-037c where he’s got 100 FEO that player B (buyer), who does not have a base on FK-037c, would like to buy. They choose to do the following:

  1. Player B opens a CONTD buffer and goes: create new → view → select template: “buy commodity”, then enters all the details and sends it to player S.
    The resulting contract consists of two steps:
    #1: payment of xxx by player B
    #2: delivery of 100 FEO to FK-037c by player S
  2. Player S accepts this contract.
  3. Player B flies their ship to FK-037c, lands, and makes the payment. Step #1 is fulfilled.
  4. Player S clicks “fulfill” on their delivery. This does not work. The contract is stuck on “fulfillment attempted” of step #2.

Should player B now rent a warehouse on the planet, then S will be able to complete the contract. But since FK-037c does not have a warehouse, this contract can never be completed.
Of course, if the players decided instead that S will send a “sell commodity” to player B (which creates a different kind of contract, containing “provision” and “pick up” steps), B would be able to pick up the goods directly into their ship cargo.

This definitely feels like a bug.

It is harmful, because intuitively there should be no difference between B sending a buy contract and S sending a sell contract, it should be a convenience thing; yet, if we set it up “the wrong way”, this is going to cost us extra hassle.
This extra mental load is completely unnecessary. There seems to be no reason for the warehouse/base requirement. Couldn’t the game simply check if B has any inventory attached to the target location when S attempts to fulfill the delivery step?

5 Likes