Pump Developer Updates
5.29K subscribers
1 file
14 links
Updates regarding all technical related changes that may affect integrations
Download Telegram
We are in the process of reverting. ETA a few minutes.
Changes have been fully reverted.
Pump Developer Updates
Hello! Effective Monday, September 1st, both Pump and PumpSwap programs will require 2 additional readonly accounts for all buy and sell transactions. Required Changes: Pump program (6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P): - Buy instruction: Add accounts…
Hello. We reverted the program changes from the previous message, but we will re-apply the updates tomorrow at 20:00 UTC.

It's important to note the changes described in the message above still need to be implemented and can be done from now, as they only require appending 2 new accounts on buy / sell instructions in both programs.

The updated programs are already deployed on Devnet. You can check that the same integration code works on Devnet and Mainnet before we re-apply the update from the previous message.

The reason so many integrations had problems with this program update is that they have added unused input accounts to buy / sell instructions at the new indexes. You need to remove those accounts or replace them with the 2 new required ones from the update above. As they are currently not used, they will not break anything.

A common pitfall is that integrations added the accumulator accounts to both buy and sell transactions, even if we have specified adding them ONLY on buy instructions.

The latest IDL for both programs is deployed everywhere (including on chain) and as part of our SDKs:
- https://www.npmjs.com/package/@pump-fun/pump-sdk
- https://www.npmjs.com/package/@pump-fun/pump-swap-sdk
- https://github.com/pump-fun/pump-public-docs/tree/main/idl
Screenshot 2025-08-29 at 3.38.58 PM.png
165.1 KB
Hello. We pushed again the update to both Pump and PumpSwap programs which adds the 2 new additional accounts on buy / sell.

On Monday, September 1, 20:00 UTC, these 2 accounts will become mandatory and the programs fee structure will change from the existing one to a dynamic fee structure depending on the current coin market cap.

The new fee structure code is present in both our Typescript SDKs:
- https://www.npmjs.com/package/@pump-fun/pump-sdk?activeTab=code
- https://www.npmjs.com/package/@pump-fun/pump-swap-sdk?activeTab=code

All technical details about this update can be found here: https://github.com/pump-fun/pump-public-docs/blob/main/docs/FEE_PROGRAM_README.md

We will use the attached fee tiers structure starting from Monday.

In order to avoid possible issues created by the new fee structure, until you make sure it's implemented correctly, you can increase the slippage tolerance on buy / sell instructions as a temporary mitigation.
Pump Developer Updates
Screenshot 2025-08-29 at 3.38.58 PM.png
Hello. We already pushed on Devnet the update which makes the 2 new fee accounts on buy / sell required. This will be pushed to Mainnet on Monday too.
Hi all, today at 20:00 UTC we will deploy a change that makes the two additional accounts for the new fee structure mandatory — these accounts are currently optional. Shortly after verifying that this works we will deploy the fee schedule change outlined above. There will be 1 hour of notice before the fee schedule changes go live.
Pump Developer Updates
Screenshot 2025-08-29 at 3.38.58 PM.png
Hello. The new fee schedule from here has been deployed on Devnet already and can be tested there
The pump bonding curve contract and the pump swap contract were upgraded earlier today at: October 17, 2025 16:47:00 UTC. It was a routine upgrade with no breaking changes.
Hi all, we will be doing a breaking program upgrade on pump swap on Tuesday, 4th November, 14:00 UTC. As part of the change, we require you to mark the pool account at account index 1 in pump swap buys and sells as mutable ( as opposed to readonly ). Please make the changes as soon as possible, your integration will not break if you make it mutable before we do the program upgrade.

IDL change for reference: https://github.com/pump-fun/pump-public-docs/commit/ff9cbf8238b4e459864fed415465cc8163113d1c


SDK version with update: @pump-fun/[email protected]
The pump bonding curve contract and the pump swap contract were upgraded earlier today at: November 5, 5:02pm UTC. The bonding curve upgrade was a routing upgrade with no breaking changes but Pump swap has breaking changes as mentioned earlier.
Hi all, On 11th November at 12:00 UTC, we will enable 2 new breaking features.
1. New token creation standard with token2022 called create_v2
2. Mayhem Mode

Please refer here for the updated IDLs and IDL types: https://github.com/pump-fun/pump-public-docs

Please note:
1. Any coin created with the usual create instruction and owned by the legacy token program can be traded the same way as before. This is not a breaking change for trading or creating such coins, you can continue to use the same accounts and instruction data.
2. Any new coin created after 11th November at 12:00 UTC with create_v2 will be owned by the Token2022 program. Creating and trading such accounts will need changes as described here: https://github.com/pump-fun/pump-public-docs/blob/main/README.md

Program is updated on devnet for testing with both features enabled.

SDKs for both bonding curve and pump swap are updated

https://www.npmjs.com/package/@pump-fun/pump-sdk
https://www.npmjs.com/package/@pump-fun/pump-swap-sdk
Hi all, Mayhem mode and create v2 will now be enabled on 12th November 12:00 UTC instead of 11th November.
Hi all,

We have pushed a non breaking program upgrade on the bonding curve and pump swap program.
Changes as part of this upgrade:

1. The global_volume_accumulator account on the buy instruction of bonding curve and pump swap do not need to be mutable anymore.
2. New fee recipients for mayhem mode: We have introduced 7 new fee recipients that can be used for the buy and sell instruction that can be used when bonding_curve.is_mayhem_mode = true and pool.is_mayhem_mode = true. They can be found in the global and global_config accounts in bonding curve and pump swap respectively.

Any of the following 8 fee recipients can now be used:
[
'GesfTA3X2arioaHp8bbKdjG9vJtskViWACZoYvxp4twS',
'4budycTjhs9fD6xw62VBducVTNgMgJJ5BgtKq7mAZwn6',
'8SBKzEQU4nLSzcwF4a74F2iaUDQyTfjGndn6qUWBnrpR',
'4UQeTP1T39KZ9Sfxzo3WR5skgsaP6NZa87BAkuazLEKH',
'8sNeir4QsLsJdYpc9RZacohhK1Y5FLU3nC5LXgYB4aa6',
'Fh9HmeLNUMVCvejxCtCL2DbYaRyBFVJ5xrWkLnMH6fdk',
'463MEnMeGyJekNZFQSTUABBEbLnvMTALbT6ZmsxAbAdq',
'6AUH3WEHucYZyC61hqpqYUWVto5qA5hjHuNQ32GNnNxA'
]


Updated IDLs can be found here: https://github.com/pump-fun/pump-public-docs
Hi, we will be pushing an update to our programs on Fri Jan 9, afternoon UTC.

This update will make some coins' creator_vault point to new addresses. To ensure buy and sell instructions work seamlessly, always fetch the latest creator on-chain. Do not use cached addresses for bonding_curve.creator or pool.coin_creator.

The derivation logic remains the same, so no code changes are needed if you're already fetching fresh data.

### Pre-Graduation Coins (Bonding Curve)
const bondingCurve = await pumpProgram.account.bondingCurve.fetch(bondingCurvePda);
const creatorVault = PublicKey.findProgramAddressSync(
[Buffer.from("creator-vault"), bondingCurve.creator.toBuffer()],
PUMP_PROGRAM_ID
)[0];

### Graduated Coins (AMM Pool)const pool = await pumpAmmProgram.account.pool.fetch(poolPda);
const coinCreatorVaultAuthority = PublicKey.findProgramAddressSync(
[Buffer.from("creator_vault"), pool.coinCreator.toBuffer()],
PUMP_AMM_PROGRAM_ID
)[0];

If you already fetch the latest bonding_curve.creator and pool.coin_creator from the chain before building your buy and sell instructions, no code changes are needed.
# Creator Rewards Sharing - Developer Update

## Overview

Creator Rewards Sharing allows token creators to split their creator fees with multiple recipients. Instead of all fees going to a single wallet, creators can configure a list of shareholders with custom percentage splits.

## Dynamic creator_vault Address
This update will make some coins' creator_vault point to new addresses. To ensure buy and sell instructions work seamlessly, always fetch the latest creator on-chain. Do not use cached addresses for bonding_curve.creator or pool.coin_creator.

The derivation logic remains the same, so no code changes are needed if you're already fetching fresh data.

### Pre-Graduation Coins (Bonding Curve)

const bondingCurve = await pumpProgram.account.bondingCurve.fetch(bondingCurvePda); const creatorVault = PublicKey.findProgramAddressSync( [Buffer.from("creator-vault"), bondingCurve.creator.toBuffer()], PUMP_PROGRAM_ID )[0];


### Graduated Coins (AMM Pool)

const pool = await pumpAmmProgram.account.pool.fetch(poolPda); const coinCreatorVaultAuthority = PublicKey.findProgramAddressSync( [Buffer.from("creator_vault"), pool.coinCreator.toBuffer()], PUMP_AMM_PROGRAM_ID )[0];


## How Fee Distribution Works
1. Fees accumulate in the creator_vault during buy/sell transactions as before
2. Creator enables sharing by calling create_fee_sharing_config - this changes the coin_creator field to the sharing_config PDA
3. Creator configures shareholders via update_fee_shares with addresses and basis points (must total 10,000 bps = 100%)
4. Fees are distributed by calling distribute_creator_fees on the pump program, which splits the vault balance to shareholders based on their share percentages

## Testing
Here are some examples coins with creator rewards sharing enabled:
- Cmzo3D5XwdzC2jzAbb4x8kJinyHAbHBM9s58kd8Tpump (pump)
- 5x9nfwrY4DywKNANjorjLFEJkXjut1iPSYXDgbTS1PG9Bqa4rKbnZPkJj55UqiHLWLLBn1XGHJZmtd6rAxycwyB7 (pump-amm)
* pump-public-docs has been updated with all the latest IDLs
* SDKs updated at: https://www.npmjs.com/package/@pump-fun/pump-sdk and https://www.npmjs.com/package/@pump-fun/pump-swap-sdk