P4 Software
/
cifraHQ EN
When two companies of the same group both run on CifraHQ, one usually buys from the other. Without Intercompany Trading, the buyer keys a purchase order and the seller keys the same lines again as a sales order. With it, the seller's sales order is created for you the moment the buyer releases its purchase order, and it follows the buyer's changes until the seller releases it.
Each company keeps its own books. The seller prices the order with its own price lists, taxes and Bonus Rules. Nothing from the buyer's prices crosses over.
| You need | Why |
|---|---|
| The tenant alias of each company | The alias is the first part of the company's CifraHQ address. For https://acme.CifraHQ.cloud the alias is acme. Each side is linked to the other by alias. |
| The same SKUs in both companies | Lines are matched by SKU. A SKU that exists in the buyer but not in the seller stops the mirror with a message naming the SKU. |
| A matching warehouse code | The seller's order uses the seller warehouse whose code equals the buyer's PO warehouse code, for example 101 on both sides. If there is no match, the seller's default intercompany warehouse is used. |
| An active Administrator with an API key in the seller | The mirror creates the seller's order as this service user, so the change history shows who created it. Most tenants already have one. |
| Administrator rights in both companies | Only administrators can set the fields below. |
Do this in the company that will receive the Sales Orders.
acme. Save. Only one customer can represent a given tenant; CifraHQ refuses a second one.Do this in the company that will issue the Purchase Orders.
CifraHQ checks the alias against the list of tenants when you save. A typo is rejected with the message No CifraHQ tenant with alias [...] exists.
| When the buyer... | The seller's order... |
|---|---|
| Releases a PO | Is created as a Draft with the buyer's lines, ship-to and PO number. |
| Moves the PO back to Draft | Goes on hold. It can still be edited but cannot be released until the buyer releases again. The hold reason is shown on the order. |
| Changes lines and releases again | Is updated line by line: added lines appear, removed lines disappear, changed quantities follow. Lines the seller added by hand are kept. Bonus lines from the seller's own rules are recalculated. |
| Changes the ship-to and releases again | Gets the new ship-to address. |
| Deletes the PO while the seller's order is a Draft | Is put on hold with the reason Buyer PO deleted. It is never deleted for the seller. |
| Tries to delete the PO after the seller released | Is untouched. The delete is blocked in the buyer with Cannot delete PO [...]: partner [...] already released sales order [...]. Ask them to cancel it first. |
| Receives the goods | Nothing changes on the seller side in this version. |
Once the seller releases its sales order, a further release of the buyer's PO no longer updates it. The purchase order shows Conflict and both sides are notified so they can agree the change by phone or email.
| Badge | Meaning |
|---|---|
| Mirroring to partner tenant | The job is queued or running. Normal for a few seconds after release. |
| Synced | The seller's order exists and matches the last release. The seller's order number is shown next to the badge. |
| Mirror to partner tenant failed | Something stopped the mirror. The full message is shown on the purchase order. Fix the cause and release the PO again. |
| Conflict | The seller already released its order and a later change on the PO was not applied. |
A sweep runs every 30 minutes and retries any purchase order that is still pending or failed for a temporary reason, so a short outage on the seller side heals itself.
| Message on the purchase order | Fix |
|---|---|
| Partner [...] has not enabled intercompany orders (Setup > Intercompany). | In the seller, turn on Accept intercompany orders in Settings, then release the PO again. |
| No customer in [...] declares this tenant (...) as its intercompany source. | In the seller, set Intercompany source tenant on the customer that represents the buyer. |
| More than one customer in [...] declares ... as its intercompany source. | In the seller, clear the field on all but one customer. |
| Partner [...] does not carry these SKUs: ... | Create the listed SKUs in the seller, or change the PO lines, then release again. |
| Partner [...] has no warehouse with code [...] and no intercompany default warehouse configured. | Create a seller warehouse with the same code, or set Intercompany default warehouse code in the seller's Settings. |
| Partner [...] has no active administrator API user to act as. | In the seller, make sure an Administrator user is active and has an API key. |
| Partner tenant [...] does not exist. | The alias on the vendor is wrong. Correct it and release again. |
| Sales order cannot be released: it is on intercompany hold | The buyer moved its PO back to Draft or deleted it. Ask the buyer to release again, or clear the hold by handling the order manually. |
Was this page helpful?